@pinuts/bsr-uikit-relaunch 0.0.3
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/.eslintrc.js +80 -0
- package/.idea/.name +1 -0
- package/.idea/misc.xml +6 -0
- package/.idea/modules.xml +8 -0
- package/.idea/vcs.xml +6 -0
- package/CHANGELOG.md +3 -0
- package/README.md +75 -0
- package/bsr-uikit-relaunch.iml +9 -0
- package/config-overrides.js +32 -0
- package/dist/assets/Icon.js +64 -0
- package/dist/assets/IconComponents/getIconAdditionalCostsLarge.js +31 -0
- package/dist/assets/IconComponents/getIconAlertCircle.js +31 -0
- package/dist/assets/IconComponents/getIconAlertTriangle.js +27 -0
- package/dist/assets/IconComponents/getIconArchive.js +31 -0
- package/dist/assets/IconComponents/getIconArrowCornerUpLeft.js +25 -0
- package/dist/assets/IconComponents/getIconArrowDown.js +36 -0
- package/dist/assets/IconComponents/getIconArrowDownNoCircle.js +25 -0
- package/dist/assets/IconComponents/getIconArrowLeftNoCircle.js +25 -0
- package/dist/assets/IconComponents/getIconArrowRightDown.js +28 -0
- package/dist/assets/IconComponents/getIconArrowRightNoCircle.js +19 -0
- package/dist/assets/IconComponents/getIconArrowRightUp.js +28 -0
- package/dist/assets/IconComponents/getIconArrowUpNoCircle.js +25 -0
- package/dist/assets/IconComponents/getIconBarChart.js +40 -0
- package/dist/assets/IconComponents/getIconBell.js +25 -0
- package/dist/assets/IconComponents/getIconBriefCaseLarge.js +29 -0
- package/dist/assets/IconComponents/getIconCalendar.js +40 -0
- package/dist/assets/IconComponents/getIconChairman.js +19 -0
- package/dist/assets/IconComponents/getIconCheck.js +19 -0
- package/dist/assets/IconComponents/getIconCheckCircle.js +23 -0
- package/dist/assets/IconComponents/getIconCheckCircleOpen.js +31 -0
- package/dist/assets/IconComponents/getIconChevronDown.js +19 -0
- package/dist/assets/IconComponents/getIconChevronLeft.js +19 -0
- package/dist/assets/IconComponents/getIconChevronRight.js +19 -0
- package/dist/assets/IconComponents/getIconChevronUp.js +19 -0
- package/dist/assets/IconComponents/getIconCircle.js +21 -0
- package/dist/assets/IconComponents/getIconCircleMinus.js +26 -0
- package/dist/assets/IconComponents/getIconCirclePause.js +19 -0
- package/dist/assets/IconComponents/getIconCirclePlus.js +31 -0
- package/dist/assets/IconComponents/getIconCircleX.js +31 -0
- package/dist/assets/IconComponents/getIconCity.js +23 -0
- package/dist/assets/IconComponents/getIconCross.js +27 -0
- package/dist/assets/IconComponents/getIconDocumentLarge.js +28 -0
- package/dist/assets/IconComponents/getIconDoubleChevronLeft.js +21 -0
- package/dist/assets/IconComponents/getIconDoubleChevronRight.js +21 -0
- package/dist/assets/IconComponents/getIconDownload.js +37 -0
- package/dist/assets/IconComponents/getIconEdit.js +25 -0
- package/dist/assets/IconComponents/getIconEditPen.js +25 -0
- package/dist/assets/IconComponents/getIconEuro.js +21 -0
- package/dist/assets/IconComponents/getIconExclamationMark.js +21 -0
- package/dist/assets/IconComponents/getIconExternalLink.js +26 -0
- package/dist/assets/IconComponents/getIconEye.js +31 -0
- package/dist/assets/IconComponents/getIconEyeOff.js +34 -0
- package/dist/assets/IconComponents/getIconFile.js +25 -0
- package/dist/assets/IconComponents/getIconFileAddLarge.js +29 -0
- package/dist/assets/IconComponents/getIconFileReport.js +37 -0
- package/dist/assets/IconComponents/getIconFileText.js +43 -0
- package/dist/assets/IconComponents/getIconFilter.js +35 -0
- package/dist/assets/IconComponents/getIconFolder.js +37 -0
- package/dist/assets/IconComponents/getIconFolderLarge.js +32 -0
- package/dist/assets/IconComponents/getIconFunnel.js +19 -0
- package/dist/assets/IconComponents/getIconGraduateCapLarge.js +31 -0
- package/dist/assets/IconComponents/getIconInbox.js +25 -0
- package/dist/assets/IconComponents/getIconInfo.js +28 -0
- package/dist/assets/IconComponents/getIconInfoCircle.js +25 -0
- package/dist/assets/IconComponents/getIconInternshipLarge.js +49 -0
- package/dist/assets/IconComponents/getIconLeaf.js +21 -0
- package/dist/assets/IconComponents/getIconLeftChevron.js +21 -0
- package/dist/assets/IconComponents/getIconLineChart.js +24 -0
- package/dist/assets/IconComponents/getIconLineChartWithAxis.js +37 -0
- package/dist/assets/IconComponents/getIconLineDotChart.js +61 -0
- package/dist/assets/IconComponents/getIconLink.js +31 -0
- package/dist/assets/IconComponents/getIconList.js +49 -0
- package/dist/assets/IconComponents/getIconLock.js +25 -0
- package/dist/assets/IconComponents/getIconLogin.js +31 -0
- package/dist/assets/IconComponents/getIconLogout.js +19 -0
- package/dist/assets/IconComponents/getIconMail.js +25 -0
- package/dist/assets/IconComponents/getIconMan.js +36 -0
- package/dist/assets/IconComponents/getIconManagement.js +59 -0
- package/dist/assets/IconComponents/getIconMap.js +29 -0
- package/dist/assets/IconComponents/getIconMapPin.js +19 -0
- package/dist/assets/IconComponents/getIconMenu.js +31 -0
- package/dist/assets/IconComponents/getIconMessageCircle.js +25 -0
- package/dist/assets/IconComponents/getIconMessageSquare.js +39 -0
- package/dist/assets/IconComponents/getIconMinus.js +22 -0
- package/dist/assets/IconComponents/getIconMinusVertical.js +22 -0
- package/dist/assets/IconComponents/getIconMoreHorizontal.js +31 -0
- package/dist/assets/IconComponents/getIconNumbers.js +25 -0
- package/dist/assets/IconComponents/getIconPauseCircle.js +31 -0
- package/dist/assets/IconComponents/getIconPlus.js +31 -0
- package/dist/assets/IconComponents/getIconPresentation.js +36 -0
- package/dist/assets/IconComponents/getIconRect.js +24 -0
- package/dist/assets/IconComponents/getIconRefresh.js +31 -0
- package/dist/assets/IconComponents/getIconRefreshRepeatLarge.js +25 -0
- package/dist/assets/IconComponents/getIconReportAnalytics.js +31 -0
- package/dist/assets/IconComponents/getIconReportMoney.js +29 -0
- package/dist/assets/IconComponents/getIconReportOff.js +23 -0
- package/dist/assets/IconComponents/getIconReqWizAdditionalFundingLarge.js +28 -0
- package/dist/assets/IconComponents/getIconReqWizExtendFundingLarge.js +28 -0
- package/dist/assets/IconComponents/getIconReqWizJobLarge.js +32 -0
- package/dist/assets/IconComponents/getIconReqWizPauseFundingLarge.js +60 -0
- package/dist/assets/IconComponents/getIconReqWizScientificNetworkLarge.js +35 -0
- package/dist/assets/IconComponents/getIconReqWizStayAbroadLarge.js +31 -0
- package/dist/assets/IconComponents/getIconReqWizStudyDataLarge.js +31 -0
- package/dist/assets/IconComponents/getIconReqWizSubsequentFundingLarge.js +26 -0
- package/dist/assets/IconComponents/getIconReqWizWorldGraduateCapLarge copy.js +31 -0
- package/dist/assets/IconComponents/getIconReqWizWorldGraduateCapLarge.js +31 -0
- package/dist/assets/IconComponents/getIconRequestLarge.js +28 -0
- package/dist/assets/IconComponents/getIconRingChart.js +25 -0
- package/dist/assets/IconComponents/getIconRotate.js +17 -0
- package/dist/assets/IconComponents/getIconSearch.js +26 -0
- package/dist/assets/IconComponents/getIconSearchLarger.js +25 -0
- package/dist/assets/IconComponents/getIconSearchReverse.js +25 -0
- package/dist/assets/IconComponents/getIconSetting.js +33 -0
- package/dist/assets/IconComponents/getIconSortAscending.js +39 -0
- package/dist/assets/IconComponents/getIconSortDescending.js +39 -0
- package/dist/assets/IconComponents/getIconStar.js +22 -0
- package/dist/assets/IconComponents/getIconSum.js +19 -0
- package/dist/assets/IconComponents/getIconSupervisory.js +51 -0
- package/dist/assets/IconComponents/getIconThumbDown.js +19 -0
- package/dist/assets/IconComponents/getIconThumbUp.js +19 -0
- package/dist/assets/IconComponents/getIconTrash.js +37 -0
- package/dist/assets/IconComponents/getIconTriangle.js +19 -0
- package/dist/assets/IconComponents/getIconTriangleInverted.js +19 -0
- package/dist/assets/IconComponents/getIconUpload.js +31 -0
- package/dist/assets/IconComponents/getIconUploadCloud.js +37 -0
- package/dist/assets/IconComponents/getIconUploadLarge.js +26 -0
- package/dist/assets/IconComponents/getIconUser.js +19 -0
- package/dist/assets/IconComponents/getIconUserCheck.js +25 -0
- package/dist/assets/IconComponents/getIconUserCircle.js +31 -0
- package/dist/assets/IconComponents/getIconUserLarge.js +26 -0
- package/dist/assets/IconComponents/getIconUserOff.js +26 -0
- package/dist/assets/IconComponents/getIconWoman.js +33 -0
- package/dist/assets/IconComponents/getIconWriteNote.js +31 -0
- package/dist/assets/IconComponents/getIconWriteNoteLarge.js +27 -0
- package/dist/assets/IconComponents/getIconX.js +27 -0
- package/dist/assets/IconComponents/getIconZoomMoney.js +45 -0
- package/dist/assets/IconMapping.js +241 -0
- package/dist/hooks/ValidateComponents.js +31 -0
- package/dist/hooks/index.js +27 -0
- package/dist/hooks/infoPopUp.js +1 -0
- package/dist/hooks/useDebounceFunc.js +25 -0
- package/dist/hooks/useGetOptionList.js +41 -0
- package/dist/hooks/useValidationMessage.js +68 -0
- package/dist/hooks/withFieldGroup.js +206 -0
- package/dist/icons/AlertTriangle.js +42 -0
- package/dist/icons/InfoOutline.js +57 -0
- package/dist/icons/Verify.js +40 -0
- package/dist/index.js +2 -0
- package/dist/index.js.LICENSE.txt +32 -0
- package/dist/items/ArrayFieldset/ArrayFieldset.js +178 -0
- package/dist/items/BSRAddressSelector/BSRAddressContext.js +95 -0
- package/dist/items/BSRAddressSelector/BSRAddressResetButton.js +59 -0
- package/dist/items/BSRAddressSelector/BSRAddressSelector.js +100 -0
- package/dist/items/BSRAddressSelector/BSRAutocompleteField.js +262 -0
- package/dist/items/BSRAddressSelector/BSRStreetPlzSelector.js +127 -0
- package/dist/items/BSRAddressSelector/HouseNumberSelectField.js +105 -0
- package/dist/items/Badge/Badge.js +33 -0
- package/dist/items/BootstrapInputGroupField/BootstrapInputGroupField.js +68 -0
- package/dist/items/Button/Button.js +70 -0
- package/dist/items/Button/SubmitButton.js +39 -0
- package/dist/items/DateInputField/DateInputField.js +105 -0
- package/dist/items/DropDownButton/DropDownButton.js +101 -0
- package/dist/items/DropzoneUploadField/DropzoneUploadField.js +188 -0
- package/dist/items/DropzoneUploadField/acceptedUploadTypeMapping.js +55 -0
- package/dist/items/FieldLabel/FieldLabel.js +75 -0
- package/dist/items/FieldsetWrapper/FieldsetWrapper.js +51 -0
- package/dist/items/FormFieldWrapper/FormFieldChildPropTypes.js +64 -0
- package/dist/items/FormFieldWrapper/FormFieldWrapper.js +101 -0
- package/dist/items/FormFieldWrapper/FormFieldWrapperComponent.js +6 -0
- package/dist/items/Grid/BSRGridColumn.js +34 -0
- package/dist/items/Grid/BSRGridRow.js +28 -0
- package/dist/items/Grid/BSRGridRowCols.js +36 -0
- package/dist/items/GroupInputField/GroupInputField.js +122 -0
- package/dist/items/HTMLParserSanitized/HTMLParserSanitized.js +45 -0
- package/dist/items/Icon/Icon.js +24 -0
- package/dist/items/Modal/FormModal.js +98 -0
- package/dist/items/Modal/Modal.js +109 -0
- package/dist/items/NumberInputField/NumberInputField.js +142 -0
- package/dist/items/PictureUploadRowField/PictureUploadRowField.js +280 -0
- package/dist/items/PictureUploadRowField/acceptedUploadTypeMapping.js +55 -0
- package/dist/items/SectionSpinner/SectionSpinner.js +49 -0
- package/dist/items/SelectField/SelectField.js +67 -0
- package/dist/items/StaticAlert/StaticAlert.js +39 -0
- package/dist/items/TextAreaField/TextAreaField.js +70 -0
- package/dist/items/TextBox/TextBox.js +43 -0
- package/dist/items/TextInputField/TextInputField.js +55 -0
- package/dist/items/Toast/Toast.js +55 -0
- package/dist/items/ToggleSwitchField/ToggleSwitchField.js +84 -0
- package/dist/items/index.js +196 -0
- package/dist/styles/_ariakit_combobox.scss +279 -0
- package/dist/styles/_colors.scss +165 -0
- package/dist/styles/bootstrap-customized.scss +815 -0
- package/dist/styles/fonts/hbs-fonts/hbs-fonts.css +67 -0
- package/dist/styles/fonts/hbs-fonts/simple-bold/SimpleHBSTT-Bold.eot +0 -0
- package/dist/styles/fonts/hbs-fonts/simple-bold/SimpleHBSTT-Bold.svg +264 -0
- package/dist/styles/fonts/hbs-fonts/simple-bold/SimpleHBSTT-Bold.ttf +0 -0
- package/dist/styles/fonts/hbs-fonts/simple-bold/SimpleHBSTT-Bold.woff +0 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449347/1f2c3faa-231e-4e71-aba4-b1adb03e0322.svg +4846 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449347/51a2e8ba-97c4-47a9-af92-e8b379eeddbd.eot +0 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449347/77019bfb-2faa-487f-97aa-b498678dc990.ttf +0 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449347/89420d17-2c68-4bb3-b4d4-373b0d0f016b.woff2 +0 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449347/e79b121c-bda4-4092-a565-1c29b272ef18.woff +0 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449355/6baa7b6e-6971-4b5f-8129-8630113d8cb7.eot +0 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449355/aab88c6b-6b75-42f0-aec5-74a5c4ed199d.woff2 +0 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449355/ac6c8f47-2d16-43de-96c6-4526ab446296.woff +0 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449355/cc2006cf-463d-41db-88b0-24bf58fdf832.ttf +0 -0
- package/dist/styles/fonts/hbs-fonts/univers/1449355/f6946e91-a2c4-4793-bcb2-b617d23b3b80.svg +5216 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449383/1df6de95-3b72-4134-8e0f-f250931b1cb1.woff +0 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449383/27bd8c18-1ca0-4a74-a175-108571bab2fc.eot +0 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449383/5667db2e-a3c3-408f-ad82-3ca721a0e2e7.svg +4807 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449383/8282dfe6-2f66-4a8e-bc65-669a3066eee8.ttf +0 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449383/a92a459a-dc32-498f-b2dc-b761713792f4.woff2 +0 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449391/14cd37b6-7bde-488e-bbba-17c5046ee4c3.svg +4666 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449391/308dd9a4-aea8-4532-8c6d-a415a35f0015.woff2 +0 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449391/4414ced7-592d-4fdc-8521-8bf095659b6e.eot +0 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449391/9e1c34e4-257a-478b-9d35-84e680e8d373.ttf +0 -0
- package/dist/styles/fonts/hbs-fonts/univers-condensed/1449391/9f5abf71-fdd9-408f-b075-7a8a1b7c9a6e.woff +0 -0
- package/dist/styles/form.module.scss +252 -0
- package/dist/styles/main.scss +18 -0
- package/dist/styles/module-variables.scss +13 -0
- package/dist/styles/variables/_borders.scss +26 -0
- package/dist/styles/variables/_buttons.scss +147 -0
- package/dist/styles/variables/_colors.scss +109 -0
- package/dist/styles/variables/_focus.scss +9 -0
- package/dist/styles/variables/_fonts.scss +101 -0
- package/dist/styles/variables/_gaps.scss +26 -0
- package/dist/styles/variables/_images.scss +18 -0
- package/dist/styles/variables/_responsive.scss +23 -0
- package/dist/styles/variables/_shadows.scss +5 -0
- package/dist/styles/variables/_variables.scss +14 -0
- package/dist/styles/variables.scss +75 -0
- package/dist/utils/getUikitClassNames.js +19 -0
- package/dist/utils/index.js +16 -0
- package/dist/utils/isWindowAvailable.js +9 -0
- package/dist/utils/objectHelpers.js +43 -0
- package/notes.txt +5 -0
- package/package.json +111 -0
- package/webpack.config.js +99 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
Copyright (c) 2018 Jed Watson.
|
|
3
|
+
Licensed under the MIT License (MIT), see
|
|
4
|
+
http://jedwatson.github.io/classnames
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/*!
|
|
8
|
+
* is-plain-object <https://github.com/jonschlinkert/is-plain-object>
|
|
9
|
+
*
|
|
10
|
+
* Copyright (c) 2014-2017, Jon Schlinkert.
|
|
11
|
+
* Released under the MIT License.
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* @license React
|
|
16
|
+
* react-jsx-runtime.production.min.js
|
|
17
|
+
*
|
|
18
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
19
|
+
*
|
|
20
|
+
* This source code is licensed under the MIT license found in the
|
|
21
|
+
* LICENSE file in the root directory of this source tree.
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @license React
|
|
26
|
+
* use-sync-external-store-shim.production.min.js
|
|
27
|
+
*
|
|
28
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
29
|
+
*
|
|
30
|
+
* This source code is licensed under the MIT license found in the
|
|
31
|
+
* LICENSE file in the root directory of this source tree.
|
|
32
|
+
*/
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
var _formBuilder = require("@pinuts/form-builder");
|
|
10
|
+
var _reactI18next = require("react-i18next");
|
|
11
|
+
var _Button = _interopRequireDefault(require("../Button/Button.jsx"));
|
|
12
|
+
var _Icon = _interopRequireDefault(require("../Icon/Icon.jsx"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } // FormBuilder
|
|
17
|
+
const {
|
|
18
|
+
useFormikContext,
|
|
19
|
+
FieldArray
|
|
20
|
+
} = _formBuilder.formik;
|
|
21
|
+
|
|
22
|
+
// ArrayFieldset Conventions
|
|
23
|
+
// obligatory:
|
|
24
|
+
// * defaultValue of empty Array
|
|
25
|
+
// * children des ArrayFieldsets müssen einen key beginnend mit 'fidx.' haben
|
|
26
|
+
// example:
|
|
27
|
+
// {
|
|
28
|
+
// "component": "ArrayFieldset",
|
|
29
|
+
// "config": {
|
|
30
|
+
// "key": "nameData", -> WICHTIG: der key muss mit dem prefix der componenten keys übereinstimmen -> nameData.afidx.firstName
|
|
31
|
+
// "defaultValue": [],
|
|
32
|
+
// "label": "Kindernamen",
|
|
33
|
+
// "showItemTitle": true,
|
|
34
|
+
// "singularItemForList": "Kind",
|
|
35
|
+
// "addButtonLabel": "Kind hinzufügen",
|
|
36
|
+
// "addAnotherButtonLabel": "Weiteres Kind hinzufügen",
|
|
37
|
+
// "removeButtonLabel": "Kindereintrag entfernen",
|
|
38
|
+
// "helpText": "Hier ist der HelpText der erklärt, dass Sie hier weitere Felder ein und aus blenden bzw hinzufügen und entfernen können.",
|
|
39
|
+
// "minElements": 1,
|
|
40
|
+
// "maxElements": 3
|
|
41
|
+
// },
|
|
42
|
+
// "components": [
|
|
43
|
+
// {
|
|
44
|
+
// "component": "TextInputField",
|
|
45
|
+
// "wrapperComponent": "FormFieldWrapper",
|
|
46
|
+
// "config": {
|
|
47
|
+
// "key": "nameData.afidx.firstName" -> WICHTIG: Prefix "nameData" muss mit dem key des ArrayFieldsets übereinstimmen
|
|
48
|
+
// "label": "Vorname",
|
|
49
|
+
// "helpText": "Vorname bitte hier eingeben",
|
|
50
|
+
// "validation": ["required"]
|
|
51
|
+
// }
|
|
52
|
+
// }, <---
|
|
53
|
+
// ...
|
|
54
|
+
|
|
55
|
+
// FIXME required logik - bzw ungültig machen wenn required und mindestanzahl nicht erfüllt
|
|
56
|
+
|
|
57
|
+
const ArrayFieldset = _ref => {
|
|
58
|
+
let {
|
|
59
|
+
config,
|
|
60
|
+
components
|
|
61
|
+
} = _ref;
|
|
62
|
+
const {
|
|
63
|
+
values
|
|
64
|
+
} = useFormikContext();
|
|
65
|
+
const [arrayValues, valuesWereFilled] = (0, _react.useMemo)(() => {
|
|
66
|
+
const valueFromForm = values[config.key];
|
|
67
|
+
if (valueFromForm?.length < config.minElements) {
|
|
68
|
+
return [[...valueFromForm, ...Array(config.minElements - (valueFromForm?.length || 0)).fill({})], true];
|
|
69
|
+
}
|
|
70
|
+
return [valueFromForm || [], false];
|
|
71
|
+
}, [values, config.key, config.minElements]);
|
|
72
|
+
const arrayLength = arrayValues.length;
|
|
73
|
+
const stringifiedComponents = (0, _react.useMemo)(() => JSON.stringify(components) || [], [components]);
|
|
74
|
+
const showDeleteButton = (0, _react.useMemo)(() => arrayLength > (config.minElements || 0), [arrayLength, config.minElements]);
|
|
75
|
+
const showAddButton = (!config.maxElements || arrayLength < config.maxElements) && !valuesWereFilled;
|
|
76
|
+
const [t] = (0, _reactI18next.useTranslation)();
|
|
77
|
+
const usedAddButtonLabel = config.addButtonLabel ?? t('bsrItems.arrayFieldset.addButtonLabel');
|
|
78
|
+
const usedAddAnotherButtonLabel = config.addAnotherButtonLabel ?? t('bsrItems.arrayFieldset.addAnotherButtonLabel');
|
|
79
|
+
const usedRemoveButtonLabel = config.removeButtonLabel ?? t('bsrItems.arrayFieldset.removeButtonLabel');
|
|
80
|
+
const usedSingularItemForList = config.singularItemForList ?? t('bsrItems.arrayFieldset.singularItemForList');
|
|
81
|
+
const labelTemplate = config.labelTemplate;
|
|
82
|
+
const AddElementButton = (0, _react.useCallback)(_ref2 => {
|
|
83
|
+
let {
|
|
84
|
+
arrayHelpers
|
|
85
|
+
} = _ref2;
|
|
86
|
+
return /*#__PURE__*/_react.default.createElement("li", {
|
|
87
|
+
className: "d-flex justify-content-end"
|
|
88
|
+
}, arrayLength > 0 && /*#__PURE__*/_react.default.createElement("hr", {
|
|
89
|
+
className: "tuerkis-20"
|
|
90
|
+
}), /*#__PURE__*/_react.default.createElement(_Button.default, _extends({
|
|
91
|
+
onClick: () => arrayHelpers.push({}),
|
|
92
|
+
ariaLabel: arrayLength === 0 ? usedAddButtonLabel : usedAddAnotherButtonLabel,
|
|
93
|
+
rounded: true,
|
|
94
|
+
color: "tuerkis-20"
|
|
95
|
+
}, config.addButtonProps || {}), /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
96
|
+
icon: "circlePlus",
|
|
97
|
+
className: "me-2"
|
|
98
|
+
}), arrayLength === 0 ? usedAddButtonLabel : usedAddAnotherButtonLabel));
|
|
99
|
+
}, [arrayLength, usedAddButtonLabel, usedAddAnotherButtonLabel, config.addButtonProps]);
|
|
100
|
+
const renderFields = arrayHelpers => arrayValues.map((item, index) => {
|
|
101
|
+
const componentsAsString = stringifiedComponents.replace(/afidx/g, index.toString());
|
|
102
|
+
const modifiedComponents = JSON.parse(componentsAsString).map(element => ({
|
|
103
|
+
...element,
|
|
104
|
+
config: {
|
|
105
|
+
...element.config,
|
|
106
|
+
parentKey: config.key,
|
|
107
|
+
readOnly: config.readOnly || config.disabled,
|
|
108
|
+
disabled: config.readOnly || config.disabled
|
|
109
|
+
}
|
|
110
|
+
}));
|
|
111
|
+
const itemTitleId = `${config.key}-${index}-heading`;
|
|
112
|
+
const ariaLablelledbyAttr = config.showItemTitle ? {
|
|
113
|
+
'aria-labelledby': itemTitleId
|
|
114
|
+
} : {};
|
|
115
|
+
const itemTitleFromLabelTemplate = labelTemplate?.replace(/(?:{)(.*?)(?:})/g, (_, key) => item[key] || '');
|
|
116
|
+
const itemTitle = labelTemplate && itemTitleFromLabelTemplate.trim() ? itemTitleFromLabelTemplate : `${index + 1}. ${usedSingularItemForList}`;
|
|
117
|
+
return /*#__PURE__*/_react.default.createElement("li", _extends({
|
|
118
|
+
key: itemTitleId
|
|
119
|
+
}, ariaLablelledbyAttr, {
|
|
120
|
+
className: "p-4"
|
|
121
|
+
}), config.showItemTitle && itemTitle && /*#__PURE__*/_react.default.createElement("h4", {
|
|
122
|
+
className: "h5",
|
|
123
|
+
id: itemTitleId
|
|
124
|
+
}, itemTitle), /*#__PURE__*/_react.default.createElement(_formBuilder.ComponentPopulator, {
|
|
125
|
+
formId: `${config.key}-${index}-array-fieldset-formId`,
|
|
126
|
+
components: modifiedComponents
|
|
127
|
+
}), showDeleteButton && /*#__PURE__*/_react.default.createElement(_Button.default, _extends({
|
|
128
|
+
onClick: () => arrayHelpers.remove(index),
|
|
129
|
+
ariaLabel: usedRemoveButtonLabel,
|
|
130
|
+
rounded: true,
|
|
131
|
+
color: "tuerkis-20"
|
|
132
|
+
}, config.removeButtonProps || {}), /*#__PURE__*/_react.default.createElement(_Icon.default, {
|
|
133
|
+
icon: "trash",
|
|
134
|
+
className: "me-2"
|
|
135
|
+
}), usedRemoveButtonLabel));
|
|
136
|
+
});
|
|
137
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
138
|
+
className: "arrayFieldSet"
|
|
139
|
+
}, /*#__PURE__*/_react.default.createElement("fieldset", {
|
|
140
|
+
className: ""
|
|
141
|
+
}, /*#__PURE__*/_react.default.createElement("legend", null, /*#__PURE__*/_react.default.createElement("h3", {
|
|
142
|
+
className: "h5"
|
|
143
|
+
}, config.label)), config.helpText && /*#__PURE__*/_react.default.createElement("p", {
|
|
144
|
+
className: "helper-text"
|
|
145
|
+
}, config.helpText), /*#__PURE__*/_react.default.createElement("ul", {
|
|
146
|
+
className: "list-unstyled"
|
|
147
|
+
}, /*#__PURE__*/_react.default.createElement(FieldArray, {
|
|
148
|
+
name: config.key,
|
|
149
|
+
render: arrayHelpers => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderFields(arrayHelpers), showAddButton && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(AddElementButton, {
|
|
150
|
+
key: "add-button",
|
|
151
|
+
arrayHelpers: arrayHelpers
|
|
152
|
+
})))
|
|
153
|
+
}))));
|
|
154
|
+
};
|
|
155
|
+
ArrayFieldset.propTypes = {
|
|
156
|
+
components: _propTypes.default.instanceOf(Array).isRequired,
|
|
157
|
+
config: _propTypes.default.shape({
|
|
158
|
+
key: _propTypes.default.string,
|
|
159
|
+
minElements: _propTypes.default.number,
|
|
160
|
+
maxElements: _propTypes.default.number,
|
|
161
|
+
addButtonLabel: _propTypes.default.string,
|
|
162
|
+
addAnotherButtonLabel: _propTypes.default.string,
|
|
163
|
+
addButtonAria: _propTypes.default.string,
|
|
164
|
+
addButtonProps: _propTypes.default.object,
|
|
165
|
+
removeButtonLabel: _propTypes.default.string,
|
|
166
|
+
removeButtonAria: _propTypes.default.string,
|
|
167
|
+
removeButtonProps: _propTypes.default.object,
|
|
168
|
+
singularItemForList: _propTypes.default.string,
|
|
169
|
+
labelTemplate: _propTypes.default.string,
|
|
170
|
+
showItemTitle: _propTypes.default.bool,
|
|
171
|
+
label: _propTypes.default.string,
|
|
172
|
+
helpText: _propTypes.default.string,
|
|
173
|
+
readOnly: _propTypes.default.bool,
|
|
174
|
+
disabled: _propTypes.default.bool
|
|
175
|
+
}).isRequired
|
|
176
|
+
};
|
|
177
|
+
(0, _formBuilder.registerComponent)('ArrayFieldset', ArrayFieldset);
|
|
178
|
+
var _default = exports.default = ArrayFieldset;
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.BSRAddressContext = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
var _formBuilder = require("@pinuts/form-builder");
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
12
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
13
|
+
const defaultControllerPath = 'de.bsr.adressen.app/';
|
|
14
|
+
const {
|
|
15
|
+
useFormikContext
|
|
16
|
+
} = _formBuilder.formik;
|
|
17
|
+
const defaultAdContext = {
|
|
18
|
+
groupKey: 'addressSelector',
|
|
19
|
+
restUrl: '',
|
|
20
|
+
controllerPath: defaultControllerPath
|
|
21
|
+
};
|
|
22
|
+
const BSRAddressContext = exports.BSRAddressContext = /*#__PURE__*/(0, _react.createContext)();
|
|
23
|
+
const BSRAddressContextProvider = _ref => {
|
|
24
|
+
let {
|
|
25
|
+
initAddressContext,
|
|
26
|
+
children
|
|
27
|
+
} = _ref;
|
|
28
|
+
const {
|
|
29
|
+
setFieldValue
|
|
30
|
+
} = useFormikContext();
|
|
31
|
+
const [addressContext, setAddressContext] = (0, _react.useState)({
|
|
32
|
+
...defaultAdContext,
|
|
33
|
+
...initAddressContext
|
|
34
|
+
});
|
|
35
|
+
const getControllerPath = (0, _react.useCallback)(() => {
|
|
36
|
+
return addressContext.restUrl + addressContext.controllerPath;
|
|
37
|
+
}, [addressContext]);
|
|
38
|
+
const setAdContext = (0, _react.useCallback)(newAdContext => {
|
|
39
|
+
setAddressContext(oldAdContext => {
|
|
40
|
+
return {
|
|
41
|
+
...oldAdContext,
|
|
42
|
+
...newAdContext
|
|
43
|
+
};
|
|
44
|
+
});
|
|
45
|
+
}, [setAddressContext]);
|
|
46
|
+
|
|
47
|
+
//used in autocomplete
|
|
48
|
+
const [selectedOptionId, setSelectedOptionId] = (0, _react.useState)('');
|
|
49
|
+
const [prevSelection, setPrevSelection] = (0, _react.useState)({});
|
|
50
|
+
const [triggerCancelCombox, setTriggerCancelCombox] = (0, _react.useState)(false);
|
|
51
|
+
const groupKey = addressContext.groupKey;
|
|
52
|
+
const resetContextValues = (0, _react.useCallback)(() => {
|
|
53
|
+
const labelKey = `${groupKey}Label`;
|
|
54
|
+
const streetFieldKey = `${groupKey}-streetSelector`;
|
|
55
|
+
const houseNumberFieldKey = `${groupKey}-houseNumber`;
|
|
56
|
+
setFieldValue(labelKey, undefined);
|
|
57
|
+
setFieldValue(streetFieldKey, '');
|
|
58
|
+
setFieldValue(houseNumberFieldKey, '');
|
|
59
|
+
|
|
60
|
+
// rest autocomplete input
|
|
61
|
+
setSelectedOptionId(' ');
|
|
62
|
+
setPrevSelection({});
|
|
63
|
+
setTriggerCancelCombox(true);
|
|
64
|
+
}, [groupKey, setFieldValue, setTriggerCancelCombox]);
|
|
65
|
+
|
|
66
|
+
// AdressePrüfenBtn anzeigen, wenn Straße und Hausnummer gesetzt sind
|
|
67
|
+
// const showNextBtn = true;
|
|
68
|
+
|
|
69
|
+
const paththroughValues = (0, _react.useMemo)(() => {
|
|
70
|
+
return {
|
|
71
|
+
addressContext,
|
|
72
|
+
setAdContext,
|
|
73
|
+
resetContextValues,
|
|
74
|
+
selectedOptionId,
|
|
75
|
+
setSelectedOptionId,
|
|
76
|
+
prevSelection,
|
|
77
|
+
setPrevSelection,
|
|
78
|
+
triggerCancelCombox,
|
|
79
|
+
setTriggerCancelCombox,
|
|
80
|
+
getControllerPath
|
|
81
|
+
};
|
|
82
|
+
}, [addressContext, setAdContext, resetContextValues, selectedOptionId, setSelectedOptionId, prevSelection, setPrevSelection, triggerCancelCombox, setTriggerCancelCombox, getControllerPath]);
|
|
83
|
+
return /*#__PURE__*/_react.default.createElement(BSRAddressContext.Provider, {
|
|
84
|
+
value: paththroughValues
|
|
85
|
+
}, children);
|
|
86
|
+
};
|
|
87
|
+
BSRAddressContextProvider.propTypes = {
|
|
88
|
+
initAddressContext: _propTypes.default.shape({
|
|
89
|
+
groupKey: _propTypes.default.string,
|
|
90
|
+
restUrl: _propTypes.default.string,
|
|
91
|
+
controllerPath: _propTypes.default.string
|
|
92
|
+
}),
|
|
93
|
+
children: _propTypes.default.node.isRequired
|
|
94
|
+
};
|
|
95
|
+
var _default = exports.default = BSRAddressContextProvider;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
var _formBuilder = require("@pinuts/form-builder");
|
|
10
|
+
var _Button = _interopRequireDefault(require("../Button/Button.jsx"));
|
|
11
|
+
var _BSRAddressContext = require("./BSRAddressContext.js");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
16
|
+
const BSRAddressResetButton = _ref => {
|
|
17
|
+
let {
|
|
18
|
+
inputProps = {},
|
|
19
|
+
config = {},
|
|
20
|
+
...otherProps
|
|
21
|
+
} = _ref;
|
|
22
|
+
const {
|
|
23
|
+
resetContextValues
|
|
24
|
+
} = (0, _react.useContext)(_BSRAddressContext.BSRAddressContext);
|
|
25
|
+
const c = {
|
|
26
|
+
...config
|
|
27
|
+
};
|
|
28
|
+
delete c.key;
|
|
29
|
+
const onClick = () => {
|
|
30
|
+
resetContextValues();
|
|
31
|
+
};
|
|
32
|
+
return /*#__PURE__*/_react.default.createElement(_Button.default, _extends({
|
|
33
|
+
key: config.key
|
|
34
|
+
}, c, otherProps, {
|
|
35
|
+
onClick: onClick,
|
|
36
|
+
inputProps: {
|
|
37
|
+
...inputProps,
|
|
38
|
+
type: 'button'
|
|
39
|
+
}
|
|
40
|
+
}));
|
|
41
|
+
};
|
|
42
|
+
BSRAddressResetButton.propTypes = {
|
|
43
|
+
config: _propTypes.default.object,
|
|
44
|
+
inputProps: _propTypes.default.object
|
|
45
|
+
};
|
|
46
|
+
const FormBuilderAddressResetButton = _ref2 => {
|
|
47
|
+
let {
|
|
48
|
+
config = {},
|
|
49
|
+
...otherProps
|
|
50
|
+
} = _ref2;
|
|
51
|
+
return /*#__PURE__*/_react.default.createElement(BSRAddressResetButton, _extends({}, otherProps, {
|
|
52
|
+
config: config
|
|
53
|
+
}));
|
|
54
|
+
};
|
|
55
|
+
FormBuilderAddressResetButton.propTypes = {
|
|
56
|
+
config: _propTypes.default.shape(BSRAddressResetButton.propTypes)
|
|
57
|
+
};
|
|
58
|
+
(0, _formBuilder.registerComponent)('BSRAddressResetButton', FormBuilderAddressResetButton);
|
|
59
|
+
var _default = exports.default = BSRAddressResetButton;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
var _formBuilder = require("@pinuts/form-builder");
|
|
10
|
+
var _reactI18next = require("react-i18next");
|
|
11
|
+
var _Button = _interopRequireDefault(require("../Button/Button.jsx"));
|
|
12
|
+
var _FormFieldChildPropTypes = _interopRequireDefault(require("../FormFieldWrapper/FormFieldChildPropTypes.jsx"));
|
|
13
|
+
var _BSRAddressContext = _interopRequireDefault(require("./BSRAddressContext.js"));
|
|
14
|
+
require("./BSRAutocompleteField.jsx");
|
|
15
|
+
require("./BSRAddressResetButton.jsx");
|
|
16
|
+
require("./BSRStreetPlzSelector.jsx");
|
|
17
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
19
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
20
|
+
// import { useTranslation } from 'react-i18next';
|
|
21
|
+
|
|
22
|
+
// form-builder
|
|
23
|
+
|
|
24
|
+
// init sub components
|
|
25
|
+
|
|
26
|
+
const subFormConfigStr = JSON.stringify(require('./BSRAddressSubForm.json'));
|
|
27
|
+
const {
|
|
28
|
+
useFormikContext
|
|
29
|
+
} = _formBuilder.formik;
|
|
30
|
+
const BSRAddressSelector = _ref => {
|
|
31
|
+
let {
|
|
32
|
+
config
|
|
33
|
+
} = _ref;
|
|
34
|
+
const [t] = (0, _reactI18next.useTranslation)();
|
|
35
|
+
const {
|
|
36
|
+
controllerPath,
|
|
37
|
+
restUrl
|
|
38
|
+
} = config;
|
|
39
|
+
const {
|
|
40
|
+
values,
|
|
41
|
+
setFieldValue
|
|
42
|
+
} = useFormikContext();
|
|
43
|
+
const groupKey = config.key;
|
|
44
|
+
const subFormConfig = JSON.parse(subFormConfigStr.replaceAll('{SELID}', groupKey));
|
|
45
|
+
const streetFieldKey = `${groupKey}-streetSelector`;
|
|
46
|
+
const houseNumberFieldKey = `${groupKey}-houseNumber`;
|
|
47
|
+
const selectedStreedAndNumberKey = `${groupKey}-streedAndNumber`;
|
|
48
|
+
const [selectedStreetName, setSelectedStreetName] = (0, _react.useState)(null);
|
|
49
|
+
const [houseNumber, setHouseNumber] = (0, _react.useState)(null);
|
|
50
|
+
const initAddressContext = (0, _react.useMemo)(() => {
|
|
51
|
+
const ad = {
|
|
52
|
+
groupKey,
|
|
53
|
+
restUrl
|
|
54
|
+
};
|
|
55
|
+
if (controllerPath) {
|
|
56
|
+
ad.controllerPath = controllerPath;
|
|
57
|
+
}
|
|
58
|
+
return ad;
|
|
59
|
+
}, [groupKey, controllerPath, restUrl]);
|
|
60
|
+
(0, _react.useEffect)(() => {
|
|
61
|
+
const newSelectedStreetName = values[streetFieldKey] || '';
|
|
62
|
+
const newHouseNumber = values[houseNumberFieldKey] || '';
|
|
63
|
+
if (newSelectedStreetName && newHouseNumber) {
|
|
64
|
+
if (values[streetFieldKey] !== selectedStreetName) {
|
|
65
|
+
setSelectedStreetName((values[streetFieldKey] || '').trim());
|
|
66
|
+
}
|
|
67
|
+
if (values[houseNumberFieldKey] !== houseNumberFieldKey) {
|
|
68
|
+
setHouseNumber((values[houseNumberFieldKey] || '').trim());
|
|
69
|
+
}
|
|
70
|
+
} else if (values[selectedStreedAndNumberKey]) {
|
|
71
|
+
setFieldValue(selectedStreedAndNumberKey, '');
|
|
72
|
+
setFieldValue(groupKey, '');
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
//cleanup
|
|
76
|
+
return () => {
|
|
77
|
+
setHouseNumber(null);
|
|
78
|
+
};
|
|
79
|
+
}, [streetFieldKey, houseNumberFieldKey, values, selectedStreedAndNumberKey, selectedStreetName, setFieldValue, groupKey]);
|
|
80
|
+
const onClickNextBtn = () => {
|
|
81
|
+
const streetOrHouseNumber = selectedStreetName && houseNumber ? `${selectedStreetName}:::${houseNumber}` : null;
|
|
82
|
+
setFieldValue(selectedStreedAndNumberKey, streetOrHouseNumber);
|
|
83
|
+
};
|
|
84
|
+
const showNextBtn = selectedStreetName && houseNumber;
|
|
85
|
+
return /*#__PURE__*/_react.default.createElement(_BSRAddressContext.default, {
|
|
86
|
+
initAddressContext: initAddressContext
|
|
87
|
+
}, /*#__PURE__*/_react.default.createElement(_formBuilder.ComponentPopulator, {
|
|
88
|
+
formId: `${groupKey}-adselctor-wrapper`,
|
|
89
|
+
components: subFormConfig.components
|
|
90
|
+
}), showNextBtn && /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
91
|
+
onClick: onClickNextBtn
|
|
92
|
+
}, t('bsrAddressSelector.checkAddress')));
|
|
93
|
+
};
|
|
94
|
+
BSRAddressSelector.propTypes = {
|
|
95
|
+
..._FormFieldChildPropTypes.default,
|
|
96
|
+
restUrl: _propTypes.default.string,
|
|
97
|
+
controllerPath: _propTypes.default.string
|
|
98
|
+
};
|
|
99
|
+
(0, _formBuilder.registerComponent)('BSRAddressSelector', BSRAddressSelector);
|
|
100
|
+
var _default = exports.default = BSRAddressSelector;
|