@scenid/react-formulator 0.1.10 → 0.1.12

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.cjs.js CHANGED
@@ -9,6 +9,7 @@ var cx = require('classnames');
9
9
  var styles$n = require('@material-ui/styles');
10
10
  var AutorenewIcon = require('@material-ui/icons/Autorenew');
11
11
  var icons = require('@material-ui/icons');
12
+ var luxon = require('luxon');
12
13
  var path$3 = require('path');
13
14
  var proc = require('process');
14
15
  var url = require('url');
@@ -29170,7 +29171,6 @@ var useStyles = styles$n.makeStyles(function (theme) {
29170
29171
  var FormControlField$1 = function FormControlField(_ref) {
29171
29172
  var variant = _ref.variant,
29172
29173
  type = _ref.type,
29173
- isRender = _ref.isRender,
29174
29174
  name = _ref.name,
29175
29175
  label = _ref.label,
29176
29176
  component = _ref.component,
@@ -29199,6 +29199,8 @@ var FormControlField$1 = function FormControlField(_ref) {
29199
29199
  onChange: onChange
29200
29200
  });
29201
29201
 
29202
+ var isRender = type === 'render';
29203
+
29202
29204
  if (validating) {
29203
29205
  finalProps.endAdornment = [/*#__PURE__*/React__default["default"].createElement(core$1.InputAdornment, {
29204
29206
  position: "end"
@@ -29248,7 +29250,6 @@ var FormControlField$1 = function FormControlField(_ref) {
29248
29250
 
29249
29251
  FormControlField$1.propTypes = {
29250
29252
  variant: PropTypes__default["default"].oneOf(['standard', 'filled', 'outlined']),
29251
- isRender: PropTypes__default["default"].bool,
29252
29253
  component: PropTypes__default["default"].any.isRequired,
29253
29254
  componentProps: PropTypes__default["default"].object,
29254
29255
  type: PropTypes__default["default"].string.isRequired,
@@ -29292,7 +29293,6 @@ var FormField = function FormField(_ref2) {
29292
29293
 
29293
29294
  FormField.propTypes = {
29294
29295
  variant: PropTypes__default["default"].oneOf(['standard', 'filled', 'outlined']),
29295
- isRender: PropTypes__default["default"].bool,
29296
29296
  component: PropTypes__default["default"].any.isRequired,
29297
29297
  componentProps: PropTypes__default["default"].object,
29298
29298
  type: PropTypes__default["default"].string.isRequired,
@@ -29399,11 +29399,12 @@ FormNumber.propTypes = {
29399
29399
  onChange: PropTypes__default["default"].func.isRequired
29400
29400
  };
29401
29401
 
29402
- var _excluded$3 = ["options", "required"];
29402
+ var _excluded$3 = ["options", "required", "value"];
29403
29403
 
29404
29404
  var FormSelect = function FormSelect(_ref) {
29405
29405
  var options = _ref.options,
29406
29406
  required = _ref.required,
29407
+ value = _ref.value,
29407
29408
  props = _objectWithoutProperties(_ref, _excluded$3);
29408
29409
 
29409
29410
  var unselectOption = [];
@@ -29420,7 +29421,8 @@ var FormSelect = function FormSelect(_ref) {
29420
29421
  })));
29421
29422
  return /*#__PURE__*/React__default["default"].createElement(core$1.TextField, _extends({
29422
29423
  select: true,
29423
- required: required
29424
+ required: required,
29425
+ value: value === undefined ? '' : value
29424
29426
  }, props), allOptions.map(function (_ref2) {
29425
29427
  var itemLabel = _ref2.label,
29426
29428
  itemValue = _ref2.value;
@@ -29702,7 +29704,7 @@ function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if
29702
29704
  function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
29703
29705
 
29704
29706
  var FormControlField = function FormControlField(_ref) {
29705
- var isRender = _ref.isRender,
29707
+ var type = _ref.type,
29706
29708
  name = _ref.name,
29707
29709
  label = _ref.label,
29708
29710
  component = _ref.component,
@@ -29725,7 +29727,7 @@ var FormControlField = function FormControlField(_ref) {
29725
29727
  }
29726
29728
 
29727
29729
  var control;
29728
- if (isRender) control = /*#__PURE__*/React__default["default"].cloneElement(component, finalProps);else control = /*#__PURE__*/React__default["default"].createElement(component, finalProps);
29730
+ if (type === 'render') control = /*#__PURE__*/React__default["default"].cloneElement(component, finalProps);else control = /*#__PURE__*/React__default["default"].createElement(component, finalProps);
29729
29731
  return /*#__PURE__*/React__default["default"].createElement(core$1.Box, {
29730
29732
  width: "100%",
29731
29733
  display: "flex",
@@ -29738,10 +29740,10 @@ var FormControlField = function FormControlField(_ref) {
29738
29740
  };
29739
29741
 
29740
29742
  FormControlField.propTypes = {
29741
- isRender: PropTypes__default["default"].bool,
29742
29743
  component: PropTypes__default["default"].any.isRequired,
29743
29744
  componentProps: PropTypes__default["default"].object,
29744
29745
  name: PropTypes__default["default"].string.isRequired,
29746
+ type: PropTypes__default["default"].string.isRequired,
29745
29747
  label: PropTypes__default["default"].string.isRequired,
29746
29748
  value: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number, PropTypes__default["default"].bool, PropTypes__default["default"].array]),
29747
29749
  options: PropTypes__default["default"].arrayOf(PropTypes__default["default"].shape({
@@ -29800,14 +29802,21 @@ FormReadOnlyField.propTypes = {
29800
29802
  };
29801
29803
  var FormReadOnlyField$1 = /*#__PURE__*/React__default["default"].memo(FormReadOnlyField);
29802
29804
 
29803
- var ReadOnlyText = function ReadOnlyText(_ref) {
29804
- var value = _ref.value;
29805
+ var FormReadOnlyText = function FormReadOnlyText(_ref) {
29806
+ var value = _ref.value,
29807
+ type = _ref.type;
29808
+ var finalValue = value;
29809
+
29810
+ if (type === 'date' || type === 'datetime-local') {
29811
+ finalValue = luxon.DateTime.fromISO(value).toLocaleString(luxon.DateTime.DATE_MED_WITH_WEEKDAY);
29812
+ }
29813
+
29805
29814
  return /*#__PURE__*/React__default["default"].createElement(core$1.Typography, {
29806
29815
  variant: "body1"
29807
- }, value);
29816
+ }, finalValue);
29808
29817
  };
29809
29818
 
29810
- ReadOnlyText.propTypes = {
29819
+ FormReadOnlyText.propTypes = {
29811
29820
  value: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string])
29812
29821
  };
29813
29822
 
@@ -68022,7 +68031,7 @@ FormReadOnlyMarkdown.propTypes = {
68022
68031
 
68023
68032
  var FormReadOnlyNumber = function FormReadOnlyNumber(_ref) {
68024
68033
  var value = _ref.value;
68025
- return /*#__PURE__*/React__default["default"].createElement(ReadOnlyText, {
68034
+ return /*#__PURE__*/React__default["default"].createElement(FormReadOnlyText, {
68026
68035
  value: castToNumber(value)
68027
68036
  });
68028
68037
  };
@@ -68036,7 +68045,7 @@ var FormReadOnlySelect = function FormReadOnlySelect(_ref) {
68036
68045
 
68037
68046
  var value = _ref.value,
68038
68047
  options = _ref.options;
68039
- return /*#__PURE__*/React__default["default"].createElement(ReadOnlyText, {
68048
+ return /*#__PURE__*/React__default["default"].createElement(FormReadOnlyText, {
68040
68049
  value: (_options$find = options.find(function (o) {
68041
68050
  return o.value === value;
68042
68051
  })) === null || _options$find === void 0 ? void 0 : _options$find.label
@@ -75448,9 +75457,9 @@ function _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeRefl
75448
75457
 
75449
75458
  function _isNativeReflectConstruct$1() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
75450
75459
  var formReadOnlyComponentMap = {
75451
- "default": ReadOnlyText,
75460
+ "default": FormReadOnlyText,
75452
75461
  markdown: FormReadOnlyMarkdown,
75453
- string: ReadOnlyText,
75462
+ string: FormReadOnlyText,
75454
75463
  number: FormReadOnlyNumber,
75455
75464
  select: FormReadOnlySelect,
75456
75465
  "boolean": FormReadOnlyBoolean,
@@ -75492,17 +75501,23 @@ var FormulatorFormSection = /*#__PURE__*/function (_React$Component) {
75492
75501
  errorMessages = _this$props.errorMessages,
75493
75502
  results = _this$props.results,
75494
75503
  data = _this$props.data,
75495
- fieldStates = _this$props.fieldStates;
75504
+ fieldStates = _this$props.fieldStates,
75505
+ renderComponentMap = _this$props.renderComponentMap;
75496
75506
  var field = fieldEntry,
75497
75507
  specialProps = {};
75498
75508
 
75499
75509
  if (Array.isArray(fieldEntry)) {
75500
75510
  if (fieldEntry[0] === '@@render') {
75501
75511
  field = fieldEntry[1];
75502
- specialProps = _objectSpread$1({
75503
- isRender: true
75504
- }, fieldEntry[2] || {});
75505
- } else if (fieldEntry[0] === '@@markdown') {
75512
+ return {
75513
+ type: 'render',
75514
+ name: field,
75515
+ component: renderComponentMap[field],
75516
+ componentProps: fieldEntry[2] || {}
75517
+ };
75518
+ }
75519
+
75520
+ if (fieldEntry[0] === '@@markdown') {
75506
75521
  return {
75507
75522
  type: 'markdown',
75508
75523
  name: fieldEntry[1],
@@ -75511,11 +75526,11 @@ var FormulatorFormSection = /*#__PURE__*/function (_React$Component) {
75511
75526
  content: fieldEntry[2]
75512
75527
  }
75513
75528
  };
75514
- } else {
75515
- field = fieldEntry[0];
75516
- if (!fieldEntry[1]) throw new Error("field \"".concat(field, "\" is defined in an array, but has no props definition"));
75517
- specialProps = fieldEntry[1];
75518
75529
  }
75530
+
75531
+ field = fieldEntry[0];
75532
+ if (!fieldEntry[1]) throw new Error("field \"".concat(field, "\" is defined in an array, but has no props definition"));
75533
+ specialProps = fieldEntry[1];
75519
75534
  }
75520
75535
 
75521
75536
  var _specialProps = specialProps,
@@ -75536,8 +75551,8 @@ var FormulatorFormSection = /*#__PURE__*/function (_React$Component) {
75536
75551
  type = _schema$properties$fi.type,
75537
75552
  defaultValue = _schema$properties$fi["default"];
75538
75553
  var mapKey;
75539
- if (specialProps.isRender) mapKey = type;else if (componentMap[field] !== undefined) mapKey = field;else if (typeof type === 'string' && componentMap[type] !== undefined) mapKey = type;else if (Array.isArray(type)) mapKey = 'select';else if (componentMap["default"] !== undefined) mapKey = 'default';else throw new Error("Could not find a Component to render for \"".concat(field, "\""));
75540
- var mapEntry = specialProps.isRender ? '@@render' : componentMap[mapKey];
75554
+ if (componentMap[field] !== undefined) mapKey = field;else if (typeof type === 'string' && componentMap[type] !== undefined) mapKey = type;else if (Array.isArray(type)) mapKey = 'select';else if (componentMap["default"] !== undefined) mapKey = 'default';else throw new Error("Could not find a Component to render for \"".concat(field, "\""));
75555
+ var mapEntry = componentMap[mapKey];
75541
75556
  var component = mapEntry,
75542
75557
  props = {};
75543
75558
 
@@ -75597,7 +75612,7 @@ var FormulatorFormSection = /*#__PURE__*/function (_React$Component) {
75597
75612
  nested = _this$props2$nested === void 0 ? 0 : _this$props2$nested,
75598
75613
  schema = _this$props2.schema,
75599
75614
  fields = _this$props2.fields,
75600
- hideSensitiveData = _this$props2.hideSensitiveData,
75615
+ obscuredFields = _this$props2.obscuredFields,
75601
75616
  results = _this$props2.results,
75602
75617
  data = _this$props2.data,
75603
75618
  fieldStates = _this$props2.fieldStates,
@@ -75633,7 +75648,18 @@ var FormulatorFormSection = /*#__PURE__*/function (_React$Component) {
75633
75648
  _errors = _fieldProps.errors,
75634
75649
  _validating = _fieldProps.validating,
75635
75650
  _dirty = _fieldProps.dirty;
75636
- if (readOnly && !_value) return false;
75651
+
75652
+ if (readOnly) {
75653
+ if (!_value) return false;
75654
+
75655
+ if (Array.isArray(obscuredFields) && obscuredFields.includes(_name)) {
75656
+ return /*#__PURE__*/React__default["default"].createElement(HiddenData, {
75657
+ subject: "Das Feld",
75658
+ label: _label
75659
+ });
75660
+ }
75661
+ }
75662
+
75637
75663
  return /*#__PURE__*/React__default["default"].createElement(readOnly ? FormReadOnlyField$1 : FormField$1, {
75638
75664
  key: "form-render-component-".concat(cKey),
75639
75665
  variant: inputVariant,
@@ -75641,7 +75667,6 @@ var FormulatorFormSection = /*#__PURE__*/function (_React$Component) {
75641
75667
  type: _type,
75642
75668
  label: _label,
75643
75669
  value: _value,
75644
- isRender: true,
75645
75670
  required: _required,
75646
75671
  hasErrors: _hasErrors,
75647
75672
  errors: _errors,
@@ -75671,9 +75696,9 @@ var FormulatorFormSection = /*#__PURE__*/function (_React$Component) {
75671
75696
  schema: schema,
75672
75697
  label: fieldEntry.label,
75673
75698
  fields: fieldEntry.fields,
75674
- hideSensitiveData: hideSensitiveData,
75675
75699
  results: results,
75676
75700
  data: data,
75701
+ obscuredFields: obscuredFields,
75677
75702
  fieldStates: fieldStates,
75678
75703
  translations: translations,
75679
75704
  errorMessages: errorMessages,
@@ -75699,7 +75724,18 @@ var FormulatorFormSection = /*#__PURE__*/function (_React$Component) {
75699
75724
  errors = fieldProps.errors,
75700
75725
  validating = fieldProps.validating,
75701
75726
  dirty = fieldProps.dirty;
75702
- if (readOnly && !value) return false;
75727
+
75728
+ if (readOnly) {
75729
+ if (!value) return false;
75730
+
75731
+ if (Array.isArray(obscuredFields) && obscuredFields.includes(name)) {
75732
+ return /*#__PURE__*/React__default["default"].createElement(HiddenData, {
75733
+ subject: "Das Feld",
75734
+ label: label
75735
+ });
75736
+ }
75737
+ }
75738
+
75703
75739
  var apProps = {};
75704
75740
 
75705
75741
  for (var i = 0; i < fields.length; i++) {
@@ -75733,14 +75769,6 @@ var FormulatorFormSection = /*#__PURE__*/function (_React$Component) {
75733
75769
  }
75734
75770
 
75735
75771
  var FormFieldComponent = readOnly ? FormReadOnlyField$1 : FormField$1;
75736
-
75737
- if (hideSensitiveData && (name === 'reportingPin' || name === 'reportingAuthCode')) {
75738
- return /*#__PURE__*/React__default["default"].createElement(HiddenData, {
75739
- subject: "Das Feld",
75740
- label: label
75741
- });
75742
- }
75743
-
75744
75772
  return /*#__PURE__*/React__default["default"].createElement(FormFieldComponent, {
75745
75773
  key: "form-".concat(id, "-").concat(name),
75746
75774
  variant: inputVariant,
@@ -75837,7 +75865,7 @@ FormulatorFormSection.propTypes = {
75837
75865
  nested: PropTypes__default["default"].number,
75838
75866
  sectionId: PropTypes__default["default"].string.isRequired,
75839
75867
  fields: PropTypes__default["default"].array.isRequired,
75840
- hideSensitiveData: PropTypes__default["default"].bool,
75868
+ obscuredFields: PropTypes__default["default"].array,
75841
75869
  schema: PropTypes__default["default"].object.isRequired,
75842
75870
  results: PropTypes__default["default"].object.isRequired,
75843
75871
  data: PropTypes__default["default"].object.isRequired,
@@ -76307,12 +76335,13 @@ var FormulatorForm = /*#__PURE__*/function (_React$Component) {
76307
76335
  readOnly = _this$props7.readOnly,
76308
76336
  listErrors = _this$props7.listErrors,
76309
76337
  schema = _this$props7.schema,
76310
- hideSensitiveData = _this$props7.hideSensitiveData,
76311
76338
  renderSchema = _this$props7.renderSchema,
76312
76339
  propDisabled = _this$props7.disabled,
76313
76340
  translations = _this$props7.translations,
76314
76341
  componentMap = _this$props7.componentMap,
76315
76342
  renderComponentMap = _this$props7.renderComponentMap,
76343
+ obscuredFields = _this$props7.obscuredFields,
76344
+ obscuredGroups = _this$props7.obscuredGroups,
76316
76345
  errorMessages = _this$props7.errorMessages,
76317
76346
  _onReset = _this$props7.onReset;
76318
76347
  var _this$state6 = this.state,
@@ -76344,7 +76373,7 @@ var FormulatorForm = /*#__PURE__*/function (_React$Component) {
76344
76373
  description = _ref12.description,
76345
76374
  fields = _ref12.fields;
76346
76375
 
76347
- if (hideSensitiveData && sectionId === 'bankData') {
76376
+ if (readOnly && Array.isArray(obscuredGroups) && obscuredGroups.includes(sectionId)) {
76348
76377
  return /*#__PURE__*/React__default["default"].createElement(HiddenData, {
76349
76378
  subject: "Der Bereich",
76350
76379
  label: label
@@ -76366,10 +76395,10 @@ var FormulatorForm = /*#__PURE__*/function (_React$Component) {
76366
76395
  label: label,
76367
76396
  desc: description,
76368
76397
  fields: fields,
76369
- hideSensitiveData: hideSensitiveData,
76370
76398
  results: results,
76371
76399
  data: data,
76372
76400
  fieldStates: fieldStates,
76401
+ obscuredFields: obscuredFields,
76373
76402
  translations: translations,
76374
76403
  errorMessages: errorMessages,
76375
76404
  componentMap: componentMap,
@@ -76412,7 +76441,6 @@ FormulatorForm.propTypes = {
76412
76441
  listErrors: PropTypes__default["default"].bool,
76413
76442
  schema: PropTypes__default["default"].object.isRequired,
76414
76443
  data: PropTypes__default["default"].object.isRequired,
76415
- hideSensitiveData: PropTypes__default["default"].bool,
76416
76444
  transientData: PropTypes__default["default"].object,
76417
76445
  fieldStates: PropTypes__default["default"].object,
76418
76446
  renderSchema: PropTypes__default["default"].object.isRequired,
@@ -76421,6 +76449,8 @@ FormulatorForm.propTypes = {
76421
76449
  errorMessages: PropTypes__default["default"].object,
76422
76450
  componentMap: PropTypes__default["default"].object,
76423
76451
  renderComponentMap: PropTypes__default["default"].object,
76452
+ obscuredFields: PropTypes__default["default"].array,
76453
+ obscuredGroups: PropTypes__default["default"].array,
76424
76454
  onSubmit: PropTypes__default["default"].func,
76425
76455
  onReset: PropTypes__default["default"].func,
76426
76456
  onStatusUpdate: PropTypes__default["default"].func,
@@ -76441,7 +76471,7 @@ exports.FormReadOnlyMarkdown = FormReadOnlyMarkdown;
76441
76471
  exports.FormReadOnlyNumber = FormReadOnlyNumber;
76442
76472
  exports.FormReadOnlyRepeater = FormReadOnlyRepeater;
76443
76473
  exports.FormReadOnlySelect = FormReadOnlySelect;
76444
- exports.FormReadOnlyText = ReadOnlyText;
76474
+ exports.FormReadOnlyText = FormReadOnlyText;
76445
76475
  exports.FormRepeater = FormRepeater;
76446
76476
  exports.FormSelect = FormSelect;
76447
76477
  exports.FormText = FormText;