@pinuts/bsr-uikit-relaunch 0.0.8 → 0.0.9
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/dist/index.js +1 -1
- package/dist/items/BSRAddressSelector/BSRAddressContext.d.ts.map +1 -1
- package/dist/items/BSRAddressSelector/BSRAddressContext.js +62 -14
- package/dist/items/BSRAddressSelector/BSRAddressResetButton.js +8 -1
- package/dist/items/BSRAddressSelector/BSRAddressSelector.d.ts.map +1 -1
- package/dist/items/BSRAddressSelector/BSRAddressSelector.js +2 -45
- package/dist/items/BSRAddressSelector/BSRAutocompleteField.d.ts.map +1 -1
- package/dist/items/BSRAddressSelector/BSRAutocompleteField.js +15 -3
- package/dist/items/BSRAddressSelector/BSRStreetPlzSelector.d.ts.map +1 -1
- package/dist/items/BSRAddressSelector/BSRStreetPlzSelector.js +30 -10
- package/dist/items/BSRAddressSelector/HouseNumberSelectField.d.ts +2 -0
- package/dist/items/BSRAddressSelector/HouseNumberSelectField.d.ts.map +1 -1
- package/dist/items/BSRAddressSelector/HouseNumberSelectField.js +29 -104
- package/dist/items/BSRAddressSelector/HouseNumberSelectFieldBck.d.ts +1 -0
- package/dist/items/BSRAddressSelector/HouseNumberSelectFieldBck.d.ts.map +1 -0
- package/dist/items/BSRAddressSelector/HouseNumberSelectFieldBck.js +105 -0
- package/dist/items/Button/Button.d.ts.map +1 -1
- package/dist/items/Button/Button.js +6 -3
- package/dist/items/Button/SubmitButton.d.ts.map +1 -1
- package/dist/items/Button/SubmitButton.js +5 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BSRAddressContext.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/BSRAddressContext.js"],"names":[],"mappings":"AAcA,6DAAiD;;AAEjD;;;
|
|
1
|
+
{"version":3,"file":"BSRAddressContext.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/BSRAddressContext.js"],"names":[],"mappings":"AAcA,6DAAiD;;AAEjD;;;gBA2IC"}
|
|
@@ -26,7 +26,8 @@ const BSRAddressContextProvider = _ref => {
|
|
|
26
26
|
children
|
|
27
27
|
} = _ref;
|
|
28
28
|
const {
|
|
29
|
-
setFieldValue
|
|
29
|
+
setFieldValue,
|
|
30
|
+
values
|
|
30
31
|
} = useFormikContext();
|
|
31
32
|
const [addressContext, setAddressContext] = (0, _react.useState)({
|
|
32
33
|
...defaultAdContext,
|
|
@@ -48,25 +49,64 @@ const BSRAddressContextProvider = _ref => {
|
|
|
48
49
|
const [selectedOptionId, setSelectedOptionId] = (0, _react.useState)('');
|
|
49
50
|
const [prevSelection, setPrevSelection] = (0, _react.useState)({});
|
|
50
51
|
const [triggerCancelCombox, setTriggerCancelCombox] = (0, _react.useState)(false);
|
|
51
|
-
|
|
52
|
+
|
|
53
|
+
// used in plz and street selector
|
|
54
|
+
const [showNoResultsError, setShowNoResultsError] = (0, _react.useState)(false);
|
|
55
|
+
const [selectedStreetList, setSelectedStreetList] = (0, _react.useState)(null);
|
|
56
|
+
const fieldKeys = (0, _react.useMemo)(() => {
|
|
57
|
+
const groupKey = addressContext.groupKey;
|
|
58
|
+
return {
|
|
59
|
+
groupKey,
|
|
60
|
+
streetFieldKey: `${groupKey}-streetSelector`,
|
|
61
|
+
streetFieldKeyLabel: `${groupKey}-streetSelectorLabel`,
|
|
62
|
+
houseNumberFieldKey: `${groupKey}-houseNumber`,
|
|
63
|
+
labelKey: `${groupKey}Label`,
|
|
64
|
+
selectedStreetAndNumberKey: `${groupKey}-streedAndNumber`,
|
|
65
|
+
selectedStreetStreetPlz: `${groupKey}-streetPlz`
|
|
66
|
+
};
|
|
67
|
+
}, [addressContext.groupKey]);
|
|
68
|
+
(0, _react.useEffect)(() => {
|
|
69
|
+
const currentStreetAndNumber = values[fieldKeys.selectedStreetAndNumberKey];
|
|
70
|
+
const currentStreet = values[fieldKeys.streetFieldKey];
|
|
71
|
+
const currentHouseNumber = values[fieldKeys.houseNumberFieldKey];
|
|
72
|
+
if (currentStreetAndNumber && currentStreet && currentHouseNumber) {
|
|
73
|
+
if (currentStreetAndNumber !== `${currentStreet}:::${currentHouseNumber}`) {
|
|
74
|
+
setFieldValue(fieldKeys.selectedStreetAndNumberKey, '');
|
|
75
|
+
}
|
|
76
|
+
} else if (currentStreetAndNumber) {
|
|
77
|
+
setFieldValue(fieldKeys.selectedStreetAndNumberKey, '');
|
|
78
|
+
}
|
|
79
|
+
}, [setFieldValue, values, fieldKeys]);
|
|
52
80
|
const resetContextValues = (0, _react.useCallback)(() => {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
setFieldValue(
|
|
57
|
-
setFieldValue(
|
|
58
|
-
setFieldValue(
|
|
81
|
+
setFieldValue(fieldKeys.groupKey, undefined);
|
|
82
|
+
setFieldValue(fieldKeys.labelKey, undefined);
|
|
83
|
+
setFieldValue(fieldKeys.streetFieldKey, '');
|
|
84
|
+
setFieldValue(fieldKeys.streetFieldKeyLabel, '');
|
|
85
|
+
setFieldValue(fieldKeys.houseNumberFieldKey, '');
|
|
86
|
+
setFieldValue(fieldKeys.selectedStreetAndNumberKey, '');
|
|
87
|
+
setFieldValue(fieldKeys.selectedStreetStreetPlz, '');
|
|
59
88
|
|
|
60
89
|
// rest autocomplete input
|
|
61
90
|
setSelectedOptionId(' ');
|
|
62
91
|
setPrevSelection({});
|
|
63
92
|
setTriggerCancelCombox(true);
|
|
64
|
-
|
|
93
|
+
setShowNoResultsError(false);
|
|
94
|
+
setSelectedStreetList(null);
|
|
95
|
+
}, [setFieldValue, setTriggerCancelCombox, fieldKeys, setShowNoResultsError]);
|
|
65
96
|
|
|
66
97
|
// AdressePrüfenBtn anzeigen, wenn Straße und Hausnummer gesetzt sind
|
|
67
|
-
// const showNextBtn = true;
|
|
68
98
|
|
|
69
|
-
const
|
|
99
|
+
const selectedStreetName = values[fieldKeys.streetFieldKey] || '';
|
|
100
|
+
const houseNumber = values[fieldKeys.houseNumberFieldKey] || '';
|
|
101
|
+
const onClickCheckAddressBtn = (0, _react.useCallback)(() => {
|
|
102
|
+
const streetOrHouseNumber = selectedStreetName && houseNumber ? `${selectedStreetName}:::${houseNumber}` : null;
|
|
103
|
+
setFieldValue(fieldKeys.selectedStreetAndNumberKey, streetOrHouseNumber);
|
|
104
|
+
}, [selectedStreetName, houseNumber, setFieldValue, fieldKeys.selectedStreetAndNumberKey]);
|
|
105
|
+
const showNextBtn = values[fieldKeys.streetFieldKey] && values[fieldKeys.houseNumberFieldKey] && !values[fieldKeys.labelKey] && (!selectedStreetList || selectedStreetList.length === 1);
|
|
106
|
+
|
|
107
|
+
// wenn alles ausgefüllt ist, dann nur die Adresse readonly anzeigen
|
|
108
|
+
const dontShowSelector = values[fieldKeys.labelKey] && values[fieldKeys.groupKey];
|
|
109
|
+
const pathThroughValues = (0, _react.useMemo)(() => {
|
|
70
110
|
return {
|
|
71
111
|
addressContext,
|
|
72
112
|
setAdContext,
|
|
@@ -77,11 +117,19 @@ const BSRAddressContextProvider = _ref => {
|
|
|
77
117
|
setPrevSelection,
|
|
78
118
|
triggerCancelCombox,
|
|
79
119
|
setTriggerCancelCombox,
|
|
80
|
-
getControllerPath
|
|
120
|
+
getControllerPath,
|
|
121
|
+
showNextBtn,
|
|
122
|
+
onClickCheckAddressBtn,
|
|
123
|
+
showNoResultsError,
|
|
124
|
+
setShowNoResultsError,
|
|
125
|
+
selectedStreetList,
|
|
126
|
+
setSelectedStreetList,
|
|
127
|
+
dontShowSelector,
|
|
128
|
+
fieldKeys
|
|
81
129
|
};
|
|
82
|
-
}, [addressContext, setAdContext, resetContextValues, selectedOptionId, setSelectedOptionId, prevSelection, setPrevSelection, triggerCancelCombox, setTriggerCancelCombox, getControllerPath]);
|
|
130
|
+
}, [addressContext, setAdContext, resetContextValues, selectedOptionId, setSelectedOptionId, prevSelection, setPrevSelection, triggerCancelCombox, setTriggerCancelCombox, getControllerPath, showNextBtn, onClickCheckAddressBtn, showNoResultsError, setShowNoResultsError, selectedStreetList, setSelectedStreetList, dontShowSelector, fieldKeys]);
|
|
83
131
|
return /*#__PURE__*/_react.default.createElement(BSRAddressContext.Provider, {
|
|
84
|
-
value:
|
|
132
|
+
value: pathThroughValues
|
|
85
133
|
}, children);
|
|
86
134
|
};
|
|
87
135
|
BSRAddressContextProvider.propTypes = {
|
|
@@ -48,6 +48,12 @@ const FormBuilderAddressResetButton = _ref2 => {
|
|
|
48
48
|
config = {},
|
|
49
49
|
...otherProps
|
|
50
50
|
} = _ref2;
|
|
51
|
+
const {
|
|
52
|
+
dontShowSelector
|
|
53
|
+
} = (0, _react.useContext)(_BSRAddressContext.BSRAddressContext);
|
|
54
|
+
if (dontShowSelector) {
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
51
57
|
return /*#__PURE__*/_react.default.createElement(BSRAddressResetButton, _extends({}, otherProps, {
|
|
52
58
|
config: config
|
|
53
59
|
}));
|
|
@@ -55,5 +61,6 @@ const FormBuilderAddressResetButton = _ref2 => {
|
|
|
55
61
|
FormBuilderAddressResetButton.propTypes = {
|
|
56
62
|
config: _propTypes.default.shape(BSRAddressResetButton.propTypes)
|
|
57
63
|
};
|
|
58
|
-
(0, _formBuilder.registerComponent)('BSRAddressResetButton',
|
|
64
|
+
(0, _formBuilder.registerComponent)('BSRAddressResetButton', BSRAddressResetButton);
|
|
65
|
+
(0, _formBuilder.registerComponent)('BSRAddressResetButtonSelector', FormBuilderAddressResetButton);
|
|
59
66
|
var _default = exports.default = BSRAddressResetButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BSRAddressSelector.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/BSRAddressSelector.jsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"BSRAddressSelector.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/BSRAddressSelector.jsx"],"names":[],"mappings":";AAkBA;;gBA4BC"}
|
|
@@ -7,46 +7,30 @@ exports.default = void 0;
|
|
|
7
7
|
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _formBuilder = require("@pinuts/form-builder");
|
|
10
|
-
var _reactI18next = require("react-i18next");
|
|
11
|
-
var _Button = _interopRequireDefault(require("../Button/Button.jsx"));
|
|
12
10
|
var _FormFieldChildPropTypes = _interopRequireDefault(require("../FormFieldWrapper/FormFieldChildPropTypes.jsx"));
|
|
13
11
|
var _BSRAddressContext = _interopRequireDefault(require("./BSRAddressContext.js"));
|
|
14
12
|
require("./BSRAutocompleteField.jsx");
|
|
15
13
|
require("./BSRAddressResetButton.jsx");
|
|
16
14
|
require("./BSRStreetPlzSelector.jsx");
|
|
15
|
+
require("./HouseNumberSelectField.jsx");
|
|
17
16
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
17
|
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
18
|
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
19
|
// form-builder
|
|
23
20
|
|
|
24
21
|
// init sub components
|
|
25
22
|
|
|
26
23
|
const subFormConfigStr = JSON.stringify(require('./BSRAddressSubForm.json'));
|
|
27
|
-
const {
|
|
28
|
-
useFormikContext
|
|
29
|
-
} = _formBuilder.formik;
|
|
30
24
|
const BSRAddressSelector = _ref => {
|
|
31
25
|
let {
|
|
32
26
|
config
|
|
33
27
|
} = _ref;
|
|
34
|
-
const [t] = (0, _reactI18next.useTranslation)();
|
|
35
28
|
const {
|
|
36
29
|
controllerPath,
|
|
37
30
|
restUrl
|
|
38
31
|
} = config;
|
|
39
|
-
const {
|
|
40
|
-
values,
|
|
41
|
-
setFieldValue
|
|
42
|
-
} = useFormikContext();
|
|
43
32
|
const groupKey = config.key;
|
|
44
33
|
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
34
|
const initAddressContext = (0, _react.useMemo)(() => {
|
|
51
35
|
const ad = {
|
|
52
36
|
groupKey,
|
|
@@ -57,39 +41,12 @@ const BSRAddressSelector = _ref => {
|
|
|
57
41
|
}
|
|
58
42
|
return ad;
|
|
59
43
|
}, [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
44
|
return /*#__PURE__*/_react.default.createElement(_BSRAddressContext.default, {
|
|
86
45
|
initAddressContext: initAddressContext
|
|
87
46
|
}, /*#__PURE__*/_react.default.createElement(_formBuilder.ComponentPopulator, {
|
|
88
47
|
formId: `${groupKey}-adselctor-wrapper`,
|
|
89
48
|
components: subFormConfig.components
|
|
90
|
-
})
|
|
91
|
-
onClick: onClickNextBtn
|
|
92
|
-
}, t('bsrAddressSelector.checkAddress')));
|
|
49
|
+
}));
|
|
93
50
|
};
|
|
94
51
|
BSRAddressSelector.propTypes = {
|
|
95
52
|
..._FormFieldChildPropTypes.default,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BSRAutocompleteField.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/BSRAutocompleteField.jsx"],"names":[],"mappings":";AA+CA;;
|
|
1
|
+
{"version":3,"file":"BSRAutocompleteField.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/BSRAutocompleteField.jsx"],"names":[],"mappings":";AA+CA;;QAuQC"}
|
|
@@ -54,7 +54,6 @@ const BSRAutocompleteField = _ref => {
|
|
|
54
54
|
key,
|
|
55
55
|
viewMode,
|
|
56
56
|
labelText,
|
|
57
|
-
groupKey,
|
|
58
57
|
disabled,
|
|
59
58
|
readOnly
|
|
60
59
|
} = config;
|
|
@@ -65,7 +64,9 @@ const BSRAutocompleteField = _ref => {
|
|
|
65
64
|
setSelectedOptionId,
|
|
66
65
|
triggerCancelCombox,
|
|
67
66
|
setTriggerCancelCombox,
|
|
68
|
-
getControllerPath
|
|
67
|
+
getControllerPath,
|
|
68
|
+
dontShowSelector,
|
|
69
|
+
fieldKeys
|
|
69
70
|
} = (0, _react.useContext)(_BSRAddressContext.BSRAddressContext);
|
|
70
71
|
const {
|
|
71
72
|
setFieldValue
|
|
@@ -73,6 +74,7 @@ const BSRAutocompleteField = _ref => {
|
|
|
73
74
|
const [field,, {
|
|
74
75
|
setValue
|
|
75
76
|
}] = useField(key);
|
|
77
|
+
const groupKey = fieldKeys?.groupKey;
|
|
76
78
|
const labelFieldKey = `${key}Label`;
|
|
77
79
|
const [labelField] = useField(labelFieldKey);
|
|
78
80
|
const usedValueLabel = labelField?.value;
|
|
@@ -87,10 +89,11 @@ const BSRAutocompleteField = _ref => {
|
|
|
87
89
|
const isInvalid = false;
|
|
88
90
|
const controllerPath = getControllerPath();
|
|
89
91
|
|
|
90
|
-
//
|
|
92
|
+
// need this to reset the combobox from outside
|
|
91
93
|
(0, _react.useEffect)(() => {
|
|
92
94
|
if (triggerCancelCombox) {
|
|
93
95
|
cancelButtonRef.current?.click();
|
|
96
|
+
setSearchInput('');
|
|
94
97
|
setTriggerCancelCombox(false);
|
|
95
98
|
}
|
|
96
99
|
}, [cancelButtonRef, triggerCancelCombox, setTriggerCancelCombox]);
|
|
@@ -181,6 +184,9 @@ const BSRAutocompleteField = _ref => {
|
|
|
181
184
|
const getPreviousSelectedItem = (0, _react.useCallback)(() => {
|
|
182
185
|
return prevSelection?.value ? prevSelection.value : field.value;
|
|
183
186
|
}, [prevSelection, field.value]);
|
|
187
|
+
if (dontShowSelector) {
|
|
188
|
+
return null;
|
|
189
|
+
}
|
|
184
190
|
if (viewMode) {
|
|
185
191
|
return usedValueLabel?.label || '';
|
|
186
192
|
}
|
|
@@ -255,6 +261,12 @@ BSRAutocompleteField.propTypes = {
|
|
|
255
261
|
};
|
|
256
262
|
const HigherOrderAutocompleteField = (0, _withFieldGroup.default)(BSRAutocompleteField);
|
|
257
263
|
const WrappedAutocompleteField = props => {
|
|
264
|
+
const {
|
|
265
|
+
dontShowSelector
|
|
266
|
+
} = (0, _react.useContext)(_BSRAddressContext.BSRAddressContext);
|
|
267
|
+
if (dontShowSelector) {
|
|
268
|
+
return null;
|
|
269
|
+
}
|
|
258
270
|
return /*#__PURE__*/_react.default.createElement(_FormFieldWrapper.default, props, /*#__PURE__*/_react.default.createElement(HigherOrderAutocompleteField, props));
|
|
259
271
|
};
|
|
260
272
|
(0, _formBuilder.registerComponent)('BSRAutocompleteField', WrappedAutocompleteField);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BSRStreetPlzSelector.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/BSRStreetPlzSelector.jsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"BSRStreetPlzSelector.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/BSRStreetPlzSelector.jsx"],"names":[],"mappings":";AA2JA,2EAA6E"}
|
|
@@ -11,6 +11,7 @@ var _reactI18next = require("react-i18next");
|
|
|
11
11
|
var _GroupInputField = _interopRequireDefault(require("../GroupInputField/GroupInputField.jsx"));
|
|
12
12
|
var _withFieldGroup = _interopRequireDefault(require("../../hooks/withFieldGroup.jsx"));
|
|
13
13
|
var _BSRAddressContext = require("./BSRAddressContext.js");
|
|
14
|
+
var _Button = _interopRequireDefault(require("../Button/Button.jsx"));
|
|
14
15
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
16
|
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); }
|
|
16
17
|
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; }
|
|
@@ -31,18 +32,24 @@ const BSRStreetPlzSelector = props => {
|
|
|
31
32
|
setFieldValue
|
|
32
33
|
} = useFormikContext();
|
|
33
34
|
const {
|
|
34
|
-
getControllerPath
|
|
35
|
+
getControllerPath,
|
|
36
|
+
showNextBtn,
|
|
37
|
+
onClickCheckAddressBtn,
|
|
38
|
+
showNoResultsError,
|
|
39
|
+
setShowNoResultsError,
|
|
40
|
+
selectedStreetList,
|
|
41
|
+
setSelectedStreetList,
|
|
42
|
+
dontShowSelector,
|
|
43
|
+
fieldKeys
|
|
35
44
|
} = (0, _react.useContext)(_BSRAddressContext.BSRAddressContext);
|
|
36
45
|
const {
|
|
37
46
|
config
|
|
38
47
|
} = props;
|
|
39
|
-
const groupKey =
|
|
40
|
-
const labelKey =
|
|
41
|
-
const selectedStreedAndNumberKey =
|
|
48
|
+
const groupKey = fieldKeys?.groupKey;
|
|
49
|
+
const labelKey = fieldKeys?.labelKey;
|
|
50
|
+
const selectedStreedAndNumberKey = fieldKeys?.selectedStreetAndNumberKey;
|
|
42
51
|
const localFieldKey = config.key;
|
|
43
|
-
const [selectedStreetList, setSelectedStreetList] = (0, _react.useState)(null);
|
|
44
52
|
const [selectedStreedAndNumber, setSelectedStreedAndNumber] = (0, _react.useState)(null);
|
|
45
|
-
const [showNoResultsError, setShowNoResultsError] = (0, _react.useState)(false);
|
|
46
53
|
const [showLoading, setShowLoading] = (0, _react.useState)(false);
|
|
47
54
|
(0, _react.useEffect)(() => {
|
|
48
55
|
// set or delete selected street and number, form parent inputs, to state
|
|
@@ -54,7 +61,7 @@ const BSRStreetPlzSelector = props => {
|
|
|
54
61
|
setFieldValue(groupKey, '');
|
|
55
62
|
setFieldValue(`${labelKey}`, '');
|
|
56
63
|
}
|
|
57
|
-
}, [selectedStreedAndNumberKey, values, selectedStreedAndNumber, setSelectedStreedAndNumber, groupKey, labelKey, setFieldValue]);
|
|
64
|
+
}, [selectedStreedAndNumberKey, values, selectedStreedAndNumber, setSelectedStreedAndNumber, groupKey, labelKey, setFieldValue, setSelectedStreetList]);
|
|
58
65
|
(0, _react.useEffect)(() => {
|
|
59
66
|
const mainFieldValue = values[groupKey];
|
|
60
67
|
const selectedRadioValue = values[localFieldKey];
|
|
@@ -81,6 +88,7 @@ const BSRStreetPlzSelector = props => {
|
|
|
81
88
|
if (selectedStreedAndNumber) {
|
|
82
89
|
const url = getControllerPath() + '/plzSet';
|
|
83
90
|
setShowLoading(true);
|
|
91
|
+
setSelectedStreetList(null);
|
|
84
92
|
fetchStreetPLz(url, selectedStreedAndNumber).catch(console.error).then(data => {
|
|
85
93
|
const list = data || [];
|
|
86
94
|
setShowNoResultsError(list.length === 0);
|
|
@@ -90,16 +98,28 @@ const BSRStreetPlzSelector = props => {
|
|
|
90
98
|
const [value, label] = list.length === 1 ? [list[0].value, list[0].label] : ['', ''];
|
|
91
99
|
setFieldValue(groupKey, value);
|
|
92
100
|
setFieldValue(labelKey, label);
|
|
101
|
+
if (list.length > 1) {
|
|
102
|
+
setFieldValue(localFieldKey, value);
|
|
103
|
+
}
|
|
93
104
|
setShowLoading(false);
|
|
94
105
|
});
|
|
95
106
|
}
|
|
96
|
-
}, [selectedStreedAndNumber, groupKey, labelKey, setFieldValue, getControllerPath]);
|
|
97
|
-
|
|
98
|
-
|
|
107
|
+
}, [selectedStreedAndNumber, groupKey, labelKey, setFieldValue, getControllerPath, localFieldKey, setShowNoResultsError, setSelectedStreetList]);
|
|
108
|
+
const noResultsError = showNoResultsError ? /*#__PURE__*/_react.default.createElement("p", null, t('bsrAddressSelector.addressNotFound')) : null;
|
|
109
|
+
if (dontShowSelector) {
|
|
110
|
+
return null;
|
|
99
111
|
}
|
|
100
112
|
if (showLoading) {
|
|
101
113
|
return /*#__PURE__*/_react.default.createElement("p", null, t('bsrAddressSelector.loading'));
|
|
102
114
|
}
|
|
115
|
+
if (showNextBtn) {
|
|
116
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, noResultsError, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
117
|
+
onClick: onClickCheckAddressBtn
|
|
118
|
+
}, t('bsrAddressSelector.checkAddress'))));
|
|
119
|
+
}
|
|
120
|
+
if (showNoResultsError) {
|
|
121
|
+
return noResultsError;
|
|
122
|
+
}
|
|
103
123
|
if (!selectedStreetList || selectedStreetList.length === 0) {
|
|
104
124
|
return null;
|
|
105
125
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HouseNumberSelectField.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/HouseNumberSelectField.jsx"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"HouseNumberSelectField.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/HouseNumberSelectField.jsx"],"names":[],"mappings":";AAYA,wEAYC"}
|
|
@@ -1,105 +1,30 @@
|
|
|
1
|
-
|
|
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 _formBuilder = require("@pinuts/form-builder");
|
|
9
|
+
var _FormFieldWrapper = _interopRequireDefault(require("../FormFieldWrapper/FormFieldWrapper.jsx"));
|
|
10
|
+
var _TextInputField = _interopRequireDefault(require("../TextInputField/TextInputField.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; }
|
|
2
15
|
// import PropTypes from 'prop-types';
|
|
3
|
-
|
|
4
|
-
//
|
|
5
|
-
|
|
6
|
-
//
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
//
|
|
19
|
-
// const fetchHouseNumbers = async (streetId) => {
|
|
20
|
-
// const response = await fetch(`http://localhost:8086/cmsbs/rest/de.bsr.adressen.app/streetNo?streetid=${streetId}`);
|
|
21
|
-
// const data = await response.json();
|
|
22
|
-
//
|
|
23
|
-
// return data;
|
|
24
|
-
// };
|
|
25
|
-
//
|
|
26
|
-
// const HouseNumberSelectField = (config) => {
|
|
27
|
-
//
|
|
28
|
-
// const [selectedStreetId, setSelectedStreetId] = useState(null);
|
|
29
|
-
// const [houseNumberOptions, setHouseNumberOptions] = useState([]);
|
|
30
|
-
// const {
|
|
31
|
-
// streedFieldKey,
|
|
32
|
-
// key,
|
|
33
|
-
// } = config.config;
|
|
34
|
-
// const { values, setFieldValue } = useFormikContext();
|
|
35
|
-
//
|
|
36
|
-
// useEffect(() => {
|
|
37
|
-
// console.log('values: ' + streedFieldKey, config);
|
|
38
|
-
// const streetId = values[streedFieldKey] || '';
|
|
39
|
-
//
|
|
40
|
-
// console.log('values[streedFieldKey]: ', values[streedFieldKey]);
|
|
41
|
-
// setSelectedStreetId(streetId);
|
|
42
|
-
//
|
|
43
|
-
// // set number label
|
|
44
|
-
// if (houseNumberOptions && streetId) {
|
|
45
|
-
// const numberLabelFieldKey = `${key}Label`;
|
|
46
|
-
// const numberSelectKey = values[key];
|
|
47
|
-
// const numberlabel = houseNumberOptions.find(option => option.value === numberSelectKey)?.label;
|
|
48
|
-
// if (values[numberLabelFieldKey] !== numberlabel) {
|
|
49
|
-
// setFieldValue(numberLabelFieldKey, numberlabel);
|
|
50
|
-
// }
|
|
51
|
-
// }
|
|
52
|
-
// }, [values]);
|
|
53
|
-
//
|
|
54
|
-
// useEffect(() => {
|
|
55
|
-
// if (selectedStreetId) {
|
|
56
|
-
// fetchHouseNumbers(selectedStreetId).catch(console.error).then(setHouseNumberOptions);
|
|
57
|
-
// } else {
|
|
58
|
-
// setHouseNumberOptions([]);
|
|
59
|
-
// if (values[key]) {
|
|
60
|
-
// setFieldValue(key, '');
|
|
61
|
-
// }
|
|
62
|
-
// }
|
|
63
|
-
// }, [selectedStreetId]);
|
|
64
|
-
//
|
|
65
|
-
// const newConfig = {
|
|
66
|
-
// ...config,
|
|
67
|
-
// options: houseNumberOptions,
|
|
68
|
-
// };
|
|
69
|
-
//
|
|
70
|
-
// return (
|
|
71
|
-
// <SelectField {...newConfig} />
|
|
72
|
-
// );
|
|
73
|
-
// };
|
|
74
|
-
//
|
|
75
|
-
// HouseNumberSelectField.propTypes = {
|
|
76
|
-
// ...FormFieldChildPropTypes,
|
|
77
|
-
//
|
|
78
|
-
// validation: PropTypes.arrayOf(PropTypes.string),
|
|
79
|
-
// options: PropTypes.arrayOf(
|
|
80
|
-
// PropTypes.oneOfType([
|
|
81
|
-
// PropTypes.shape({
|
|
82
|
-
// value: PropTypes.oneOfType([
|
|
83
|
-
// PropTypes.string,
|
|
84
|
-
// PropTypes.number,
|
|
85
|
-
// ]),
|
|
86
|
-
// label: PropTypes.oneOfType([
|
|
87
|
-
// PropTypes.string,
|
|
88
|
-
// PropTypes.object,
|
|
89
|
-
// ]),
|
|
90
|
-
// }),
|
|
91
|
-
// PropTypes.string]),
|
|
92
|
-
// ).isRequired,
|
|
93
|
-
// emptyOptionLabel: PropTypes.string,
|
|
94
|
-
// skipOptions: PropTypes.oneOfType([
|
|
95
|
-
// PropTypes.arrayOf(PropTypes.string),
|
|
96
|
-
// PropTypes.string,
|
|
97
|
-
// ]),
|
|
98
|
-
// };
|
|
99
|
-
//
|
|
100
|
-
//
|
|
101
|
-
// registerComponent('HouseNumberSelectField', HouseNumberSelectField);
|
|
102
|
-
//
|
|
103
|
-
//
|
|
104
|
-
// export default HouseNumberSelectField;
|
|
105
|
-
"use strict";
|
|
16
|
+
|
|
17
|
+
// form-builder
|
|
18
|
+
|
|
19
|
+
// wrap the field label, error message help text and more
|
|
20
|
+
const WrappedHouseNumberSelectField = props => {
|
|
21
|
+
const {
|
|
22
|
+
dontShowSelector
|
|
23
|
+
} = (0, _react.useContext)(_BSRAddressContext.BSRAddressContext);
|
|
24
|
+
if (dontShowSelector) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
return /*#__PURE__*/_react.default.createElement(_FormFieldWrapper.default, props, /*#__PURE__*/_react.default.createElement(_TextInputField.default, props));
|
|
28
|
+
};
|
|
29
|
+
(0, _formBuilder.registerComponent)('HouseNumberSelectField', WrappedHouseNumberSelectField);
|
|
30
|
+
var _default = exports.default = WrappedHouseNumberSelectField;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=HouseNumberSelectFieldBck.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HouseNumberSelectFieldBck.d.ts","sourceRoot":"","sources":["../../../src/items/BSRAddressSelector/HouseNumberSelectFieldBck.jsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
// import React, { useEffect, useState } from 'react';
|
|
2
|
+
// import PropTypes from 'prop-types';
|
|
3
|
+
// import { useTranslation } from 'react-i18next';
|
|
4
|
+
//
|
|
5
|
+
// // form-builder
|
|
6
|
+
// import { registerComponent, formik } from '@pinuts/form-builder';
|
|
7
|
+
//
|
|
8
|
+
// import useGetOptionList from '../../hooks/useGetOptionList.js';
|
|
9
|
+
// import { getFormControlClassNames } from '../../utils/getUikitClassNames.js';
|
|
10
|
+
// import FormFieldChildPropTypes from '../FormFieldWrapper/FormFieldChildPropTypes.jsx';
|
|
11
|
+
// import FormFieldWrapper from '../FormFieldWrapper/FormFieldWrapper.jsx';
|
|
12
|
+
// import withFieldGroup from '../../hooks/withFieldGroup.jsx';
|
|
13
|
+
// import styles from '../../styles/form.module.scss';
|
|
14
|
+
//
|
|
15
|
+
// import SelectField from '../SelectField/SelectField.jsx';
|
|
16
|
+
//
|
|
17
|
+
// const { useFormikContext } = formik;
|
|
18
|
+
//
|
|
19
|
+
// const fetchHouseNumbers = async (streetId) => {
|
|
20
|
+
// const response = await fetch(`http://localhost:8086/cmsbs/rest/de.bsr.adressen.app/streetNo?streetid=${streetId}`);
|
|
21
|
+
// const data = await response.json();
|
|
22
|
+
//
|
|
23
|
+
// return data;
|
|
24
|
+
// };
|
|
25
|
+
//
|
|
26
|
+
// const HouseNumberSelectField = (config) => {
|
|
27
|
+
//
|
|
28
|
+
// const [selectedStreetId, setSelectedStreetId] = useState(null);
|
|
29
|
+
// const [houseNumberOptions, setHouseNumberOptions] = useState([]);
|
|
30
|
+
// const {
|
|
31
|
+
// streedFieldKey,
|
|
32
|
+
// key,
|
|
33
|
+
// } = config.config;
|
|
34
|
+
// const { values, setFieldValue } = useFormikContext();
|
|
35
|
+
//
|
|
36
|
+
// useEffect(() => {
|
|
37
|
+
// console.log('values: ' + streedFieldKey, config);
|
|
38
|
+
// const streetId = values[streedFieldKey] || '';
|
|
39
|
+
//
|
|
40
|
+
// console.log('values[streedFieldKey]: ', values[streedFieldKey]);
|
|
41
|
+
// setSelectedStreetId(streetId);
|
|
42
|
+
//
|
|
43
|
+
// // set number label
|
|
44
|
+
// if (houseNumberOptions && streetId) {
|
|
45
|
+
// const numberLabelFieldKey = `${key}Label`;
|
|
46
|
+
// const numberSelectKey = values[key];
|
|
47
|
+
// const numberlabel = houseNumberOptions.find(option => option.value === numberSelectKey)?.label;
|
|
48
|
+
// if (values[numberLabelFieldKey] !== numberlabel) {
|
|
49
|
+
// setFieldValue(numberLabelFieldKey, numberlabel);
|
|
50
|
+
// }
|
|
51
|
+
// }
|
|
52
|
+
// }, [values]);
|
|
53
|
+
//
|
|
54
|
+
// useEffect(() => {
|
|
55
|
+
// if (selectedStreetId) {
|
|
56
|
+
// fetchHouseNumbers(selectedStreetId).catch(console.error).then(setHouseNumberOptions);
|
|
57
|
+
// } else {
|
|
58
|
+
// setHouseNumberOptions([]);
|
|
59
|
+
// if (values[key]) {
|
|
60
|
+
// setFieldValue(key, '');
|
|
61
|
+
// }
|
|
62
|
+
// }
|
|
63
|
+
// }, [selectedStreetId]);
|
|
64
|
+
//
|
|
65
|
+
// const newConfig = {
|
|
66
|
+
// ...config,
|
|
67
|
+
// options: houseNumberOptions,
|
|
68
|
+
// };
|
|
69
|
+
//
|
|
70
|
+
// return (
|
|
71
|
+
// <SelectField {...newConfig} />
|
|
72
|
+
// );
|
|
73
|
+
// };
|
|
74
|
+
//
|
|
75
|
+
// HouseNumberSelectField.propTypes = {
|
|
76
|
+
// ...FormFieldChildPropTypes,
|
|
77
|
+
//
|
|
78
|
+
// validation: PropTypes.arrayOf(PropTypes.string),
|
|
79
|
+
// options: PropTypes.arrayOf(
|
|
80
|
+
// PropTypes.oneOfType([
|
|
81
|
+
// PropTypes.shape({
|
|
82
|
+
// value: PropTypes.oneOfType([
|
|
83
|
+
// PropTypes.string,
|
|
84
|
+
// PropTypes.number,
|
|
85
|
+
// ]),
|
|
86
|
+
// label: PropTypes.oneOfType([
|
|
87
|
+
// PropTypes.string,
|
|
88
|
+
// PropTypes.object,
|
|
89
|
+
// ]),
|
|
90
|
+
// }),
|
|
91
|
+
// PropTypes.string]),
|
|
92
|
+
// ).isRequired,
|
|
93
|
+
// emptyOptionLabel: PropTypes.string,
|
|
94
|
+
// skipOptions: PropTypes.oneOfType([
|
|
95
|
+
// PropTypes.arrayOf(PropTypes.string),
|
|
96
|
+
// PropTypes.string,
|
|
97
|
+
// ]),
|
|
98
|
+
// };
|
|
99
|
+
//
|
|
100
|
+
//
|
|
101
|
+
// registerComponent('HouseNumberSelectField', HouseNumberSelectField);
|
|
102
|
+
//
|
|
103
|
+
//
|
|
104
|
+
// export default HouseNumberSelectField;
|
|
105
|
+
"use strict";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/items/Button/Button.jsx"],"names":[],"mappings":";AAKA;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/items/Button/Button.jsx"],"names":[],"mappings":";AAKA;;;;;;;;;;;;gBAkDC"}
|