@pinuts/bsr-uikit-relaunch 0.4.2 → 0.4.4

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.
Files changed (51) hide show
  1. package/dist/hooks/withFieldGroup.d.ts.map +1 -1
  2. package/dist/hooks/withFieldGroup.js +46 -18
  3. package/dist/index.js +1 -1
  4. package/dist/items/AbholortMaterialienField/AbholortMaterialienField.d.ts.map +1 -1
  5. package/dist/items/AbholortMaterialienField/AbholortMaterialienField.js +7 -3
  6. package/dist/items/BSRAddressSelector/BSRAddressContext.d.ts +1 -0
  7. package/dist/items/BSRAddressSelector/BSRAddressContext.d.ts.map +1 -1
  8. package/dist/items/BSRAddressSelector/BSRAddressContext.js +4 -1
  9. package/dist/items/BSRAddressSelector/BSRAddressSelector.d.ts.map +1 -1
  10. package/dist/items/BSRAddressSelector/BSRAddressSelector.js +41 -2
  11. package/dist/items/BSRAddressSelector/BSRAutocompleteField.d.ts +9 -1
  12. package/dist/items/BSRAddressSelector/BSRAutocompleteField.d.ts.map +1 -1
  13. package/dist/items/BSRAddressSelector/BSRAutocompleteField.js +29 -7
  14. package/dist/items/BSRAddressSelector/BSRStreetPlzSelector.js +6 -1
  15. package/dist/items/BSRAddressSelector/HouseNumberSelectField.d.ts.map +1 -1
  16. package/dist/items/BSRAddressSelector/HouseNumberSelectField.js +7 -3
  17. package/dist/items/BSRAddressSelector/withAddressGroupValidation.d.ts +12 -0
  18. package/dist/items/BSRAddressSelector/withAddressGroupValidation.d.ts.map +1 -0
  19. package/dist/items/BSRAddressSelector/withAddressGroupValidation.js +57 -0
  20. package/dist/items/FieldsetWrapper/FieldsetWrapper.d.ts +1 -0
  21. package/dist/items/FieldsetWrapper/FieldsetWrapper.d.ts.map +1 -1
  22. package/dist/items/FieldsetWrapper/FieldsetWrapper.js +28 -0
  23. package/dist/items/FileUploadField/FileUploadField.d.ts.map +1 -1
  24. package/dist/items/FileUploadField/FileUploadField.js +19 -3
  25. package/dist/items/FileUploadField/uploadedFileStore.d.ts +1 -0
  26. package/dist/items/FileUploadField/uploadedFileStore.d.ts.map +1 -1
  27. package/dist/items/FileUploadField/uploadedFileStore.js +10 -1
  28. package/dist/items/Grid/BSRGridColumn.d.ts.map +1 -1
  29. package/dist/items/Grid/BSRGridColumn.js +15 -1
  30. package/dist/items/Grid/BSRGridRow.d.ts.map +1 -1
  31. package/dist/items/Grid/BSRGridRow.js +15 -1
  32. package/dist/items/ReviewValue/ReviewValueList.d.ts +1 -1
  33. package/dist/items/ReviewValue/ReviewValueList.d.ts.map +1 -1
  34. package/dist/items/ReviewValue/ReviewValueList.js +3 -3
  35. package/dist/locales.d.ts +2 -0
  36. package/dist/locales.js +2 -0
  37. package/dist/shared/ErrorMessagesInfoBox/ErrorMessagesInfoBox.d.ts.map +1 -1
  38. package/dist/shared/ErrorMessagesInfoBox/ErrorMessagesInfoBox.js +3 -1
  39. package/dist/shared/FormWidget/FormWidgetControlPage.d.ts.map +1 -1
  40. package/dist/shared/FormWidget/FormWidgetControlPage.js +14 -5
  41. package/dist/shared/FormWidget/ReviewLayoutContext.d.ts +11 -0
  42. package/dist/shared/FormWidget/ReviewLayoutContext.d.ts.map +1 -0
  43. package/dist/shared/FormWidget/ReviewLayoutContext.js +17 -0
  44. package/dist/shared/KehrenbuergerForm/KehrenbuergerForm.d.ts.map +1 -1
  45. package/dist/shared/KehrenbuergerForm/KehrenbuergerForm.js +29 -2
  46. package/dist/styles/_errorMessagesInfoBox.scss +2 -1
  47. package/dist/styles/_forcedColors.scss +159 -0
  48. package/dist/styles/_form.scss +109 -3
  49. package/dist/styles/_review.scss +52 -3
  50. package/dist/styles/main.scss +1 -0
  51. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"withFieldGroup.d.ts","sourceRoot":"","sources":["../../src/hooks/withFieldGroup.jsx"],"names":[],"mappings":";AAkDA,uDAAyC,UAAK,uBAqR7C;kBAtUwE,OAAO"}
1
+ {"version":3,"file":"withFieldGroup.d.ts","sourceRoot":"","sources":["../../src/hooks/withFieldGroup.jsx"],"names":[],"mappings":";AAmDA,uDAAyC,UAAK,uBAwT7C;kBA1WoF,OAAO"}
@@ -14,6 +14,7 @@ var _Verify = _interopRequireDefault(require("../icons/Verify.jsx"));
14
14
  var _InfoOutline = _interopRequireDefault(require("../icons/InfoOutline.jsx"));
15
15
  var _isWindowAvailable = require("../utils/isWindowAvailable.js");
16
16
  var _reviewValue = require("../utils/reviewValue.js");
17
+ var _ReviewLayoutContext = _interopRequireDefault(require("../shared/FormWidget/ReviewLayoutContext.js"));
17
18
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
19
  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
20
  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; }
@@ -76,8 +77,12 @@ const withFieldGroup = FieldComponent => props => {
76
77
  values,
77
78
  errors,
78
79
  meta,
79
- showToprow = true
80
+ showToprow = true,
81
+ reviewAppendix
80
82
  } = props;
83
+ const {
84
+ inList: isInReviewList
85
+ } = (0, _react.useContext)(_ReviewLayoutContext.default);
81
86
  const hookedFieldIds = useUniqueIds(prefix);
82
87
  const [textLength, setTextLength] = (0, _react.useState)(value?.length || 0);
83
88
  const [isFocused, setIsFocused] = (0, _react.useState)(false);
@@ -95,12 +100,17 @@ const withFieldGroup = FieldComponent => props => {
95
100
  const showIsInvalid = isInvalid && !viewMode && validationMessage;
96
101
  const showIsSuccess = meta?.touched && !isInvalid && (!isRequired || isRequired && value && value.length > 0);
97
102
  const tooltipRef = (0, _react.useRef)(null);
103
+ // Info-Icon direkt hinter dem Label statt rechts neben dem Success-Icon (z.B. FileUploadField)
104
+ const infoNextToLabel = Boolean(FieldComponent.formFieldConfig?.infoNextToLabel);
98
105
  (0, _react.useEffect)(() => {
99
106
  const adjustTooltipPosition = () => {
100
107
  if (tooltipRef.current) {
101
108
  const tooltipElement = tooltipRef.current;
102
109
  const rect = tooltipElement.getBoundingClientRect();
103
- tooltipElement.classList.add('adjustRight' || '');
110
+ // Neben dem Label nach rechts aufklappen, sonst ragt der Tooltip links aus dem Formular
111
+ if (!infoNextToLabel) {
112
+ tooltipElement.classList.add('adjustRight');
113
+ }
104
114
  // Adjust vertical position
105
115
  if (rect.bottom > 200) {
106
116
  tooltipElement.classList.remove('bottom' || '');
@@ -118,15 +128,10 @@ const withFieldGroup = FieldComponent => props => {
118
128
  window.removeEventListener('resize', adjustTooltipPosition);
119
129
  };
120
130
  }
131
+
132
+ // eslint-disable-next-line react-hooks/exhaustive-deps
121
133
  }, []);
122
- const infoRow = (0, _react.useMemo)(() => /*#__PURE__*/_react.default.createElement("div", {
123
- className: 'infoRow'
124
- }, showIsSuccess && /*#__PURE__*/_react.default.createElement("div", {
125
- className: 'success'
126
- }, /*#__PURE__*/_react.default.createElement(_Verify.default, {
127
- width: 18,
128
- height: 18
129
- })), infoText && /*#__PURE__*/_react.default.createElement("div", {
134
+ const infoIcon = (0, _react.useMemo)(() => infoText && /*#__PURE__*/_react.default.createElement("div", {
130
135
  className: 'info'
131
136
  }, /*#__PURE__*/_react.default.createElement(_InfoOutline.default, {
132
137
  width: 18,
@@ -135,7 +140,15 @@ const withFieldGroup = FieldComponent => props => {
135
140
  }), /*#__PURE__*/_react.default.createElement("div", {
136
141
  className: 'tooltip opacity-100',
137
142
  ref: tooltipRef
138
- }, /*#__PURE__*/_react.default.createElement(_HTMLParserSanitized.HTMLParserSanitized, null, translateMessage(infoText))))), [showIsSuccess, infoText, tooltipRef, translateMessage]);
143
+ }, /*#__PURE__*/_react.default.createElement(_HTMLParserSanitized.HTMLParserSanitized, null, translateMessage(infoText)))), [infoText, tooltipRef, translateMessage]);
144
+ const infoRow = (0, _react.useMemo)(() => /*#__PURE__*/_react.default.createElement("div", {
145
+ className: 'infoRow'
146
+ }, showIsSuccess && /*#__PURE__*/_react.default.createElement("div", {
147
+ className: 'success'
148
+ }, /*#__PURE__*/_react.default.createElement(_Verify.default, {
149
+ width: 18,
150
+ height: 18
151
+ })), !infoNextToLabel && infoIcon), [showIsSuccess, infoNextToLabel, infoIcon]);
139
152
  const helpTextDiv = (0, _react.useMemo)(() => /*#__PURE__*/_react.default.createElement("div", {
140
153
  id: fieldIds.helpText,
141
154
  className: getClassNames(['helperText', classNameHelperText])
@@ -154,8 +167,12 @@ const withFieldGroup = FieldComponent => props => {
154
167
  }) : null;
155
168
  return /*#__PURE__*/_react.default.createElement("div", {
156
169
  className: 'topRow'
157
- }, labelComponent, infoRow);
158
- }, [infoRow, fieldIds.label, fieldIds.fieldId, isInvalid, isRequired, isFocused, label, viewMode, stepId]);
170
+ }, infoNextToLabel && infoIcon ? /*#__PURE__*/_react.default.createElement("div", {
171
+ className: 'labelWithInfo'
172
+ }, labelComponent, /*#__PURE__*/_react.default.createElement("div", {
173
+ className: 'infoRow'
174
+ }, infoIcon)) : labelComponent, infoRow);
175
+ }, [infoRow, infoNextToLabel, infoIcon, fieldIds.label, fieldIds.fieldId, isInvalid, isRequired, isFocused, label, viewMode, stepId]);
159
176
  if (viewMode && hideEmptyValues && isHiddenByEmptyValues(value, isInvalid, components, values, errors)) {
160
177
  return null;
161
178
  }
@@ -169,23 +186,34 @@ const withFieldGroup = FieldComponent => props => {
169
186
  ariaAttributes: ariaAttributes
170
187
  }));
171
188
 
189
+ // Im Abschnitts-<dl> sind nur dt/dd-Paare erlaubt; ohne Label gibt es kein Paar
190
+ if (!label && isInReviewList) {
191
+ return null;
192
+ }
193
+
172
194
  // Komponenten ohne Label (z.B. TextBox) bleiben so, wie sie im Formular stehen
173
195
  if (!label) {
174
196
  return /*#__PURE__*/_react.default.createElement("div", {
175
197
  className: getClassNames(['formInput', formGroupClassName])
176
198
  }, reviewValue);
177
199
  }
178
- return /*#__PURE__*/_react.default.createElement("dl", {
179
- className: getClassNames(['pi-review-item', formGroupClassName])
180
- }, /*#__PURE__*/_react.default.createElement("div", {
181
- className: 'pi-review-pair'
200
+ const reviewPair = /*#__PURE__*/_react.default.createElement("div", {
201
+ className: getClassNames(['pi-review-pair', isInReviewList && formGroupClassName])
182
202
  }, /*#__PURE__*/_react.default.createElement("dt", {
183
203
  id: fieldIds.label
184
204
  }, /*#__PURE__*/_react.default.createElement(_HTMLParserSanitized.HTMLParserSanitized, null, translateMessage(label))), /*#__PURE__*/_react.default.createElement("dd", null, isEmptyForReview(FieldComponent, value, props) ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("span", {
185
205
  "aria-hidden": "true"
186
206
  }, '—'), /*#__PURE__*/_react.default.createElement("span", {
187
207
  className: "sr-only"
188
- }, t('bsrItems.review.empty'))) : reviewValue)));
208
+ }, t('bsrItems.review.empty'))) : reviewValue, reviewAppendix && /*#__PURE__*/_react.default.createElement("div", {
209
+ className: "pi-review-appendix"
210
+ }, /*#__PURE__*/_react.default.createElement(_HTMLParserSanitized.HTMLParserSanitized, null, reviewAppendix))));
211
+ if (isInReviewList) {
212
+ return reviewPair;
213
+ }
214
+ return /*#__PURE__*/_react.default.createElement("dl", {
215
+ className: getClassNames(['pi-review-item', formGroupClassName])
216
+ }, reviewPair);
189
217
  }
190
218
  return /*#__PURE__*/_react.default.createElement(OuterComponent, {
191
219
  className: getClassNames([withRowCols && 'row', 'formInput', isInvalid && 'error', formGroupClassName])