@maif/react-forms 1.0.46 → 1.0.49

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 (3) hide show
  1. package/lib/esm/index.js +184 -93
  2. package/lib/index.js +184 -93
  3. package/package.json +1 -1
package/lib/esm/index.js CHANGED
@@ -452,6 +452,42 @@ function _extends() {
452
452
  return _extends.apply(this, arguments);
453
453
  }
454
454
 
455
+ function _objectWithoutPropertiesLoose(source, excluded) {
456
+ if (source == null) return {};
457
+ var target = {};
458
+ var sourceKeys = Object.keys(source);
459
+ var key, i;
460
+
461
+ for (i = 0; i < sourceKeys.length; i++) {
462
+ key = sourceKeys[i];
463
+ if (excluded.indexOf(key) >= 0) continue;
464
+ target[key] = source[key];
465
+ }
466
+
467
+ return target;
468
+ }
469
+
470
+ function _objectWithoutProperties(source, excluded) {
471
+ if (source == null) return {};
472
+
473
+ var target = _objectWithoutPropertiesLoose(source, excluded);
474
+
475
+ var key, i;
476
+
477
+ if (Object.getOwnPropertySymbols) {
478
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
479
+
480
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
481
+ key = sourceSymbolKeys[i];
482
+ if (excluded.indexOf(key) >= 0) continue;
483
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
484
+ target[key] = source[key];
485
+ }
486
+ }
487
+
488
+ return target;
489
+ }
490
+
455
491
  function _readOnlyError(name) {
456
492
  throw new TypeError("\"" + name + "\" is read-only");
457
493
  }
@@ -838,20 +874,34 @@ var BooleanInput = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
838
874
  });
839
875
 
840
876
  var Collapse = function Collapse(props) {
841
- var _classNames4;
877
+ var _classNames5;
842
878
 
843
879
  var _useState = useState(props.initCollapsed || props.collapsed),
844
880
  _useState2 = _slicedToArray(_useState, 2),
845
881
  collapsed = _useState2[0],
846
882
  setCollapsed = _useState2[1];
847
883
 
884
+ var _useState3 = useState(false),
885
+ _useState4 = _slicedToArray(_useState3, 2),
886
+ expandedAll = _useState4[0],
887
+ setExpandedAll = _useState4[1];
888
+
848
889
  var classes = useCustomStyle();
849
890
 
850
891
  var toggle = function toggle(e) {
851
- if (e && e.preventDefault) e.preventDefault();
892
+ if (e && e.preventDefault) e.stopPropagation();
852
893
  setCollapsed(!collapsed);
853
894
  };
854
895
 
896
+ var childrenWithProps = React.Children.map(props.children, function (child) {
897
+ if ( /*#__PURE__*/React.isValidElement(child)) {
898
+ return /*#__PURE__*/React.cloneElement(child, {
899
+ collapsed: expandedAll
900
+ });
901
+ }
902
+
903
+ return child;
904
+ });
855
905
  return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("hr", {
856
906
  className: classNames(_defineProperty$1({}, classes.collapse_error, props.errored))
857
907
  }), /*#__PURE__*/React.createElement("div", {
@@ -859,17 +909,29 @@ var Collapse = function Collapse(props) {
859
909
  onClick: toggle
860
910
  }, /*#__PURE__*/React.createElement("span", {
861
911
  className: classNames(classes.collapse_label, _defineProperty$1({}, classes.collapse_error, props.errored))
862
- }, props.label), /*#__PURE__*/React.createElement("button", {
912
+ }, props.label), /*#__PURE__*/React.createElement("div", {
913
+ style: {
914
+ marginLeft: 'auto'
915
+ },
916
+ className: classNames(classes.flex)
917
+ }, /*#__PURE__*/React.createElement("button", {
863
918
  type: "button",
864
919
  className: classNames(classes.btn, classes.btn_sm, _defineProperty$1({}, classes.collapse_error, props.errored)),
920
+ onClick: function onClick(e) {
921
+ if (e) e.stopPropagation();
922
+ setExpandedAll(!expandedAll);
923
+ }
924
+ }, expandedAll ? 'Expand all' : 'Collapse all'), /*#__PURE__*/React.createElement("button", {
925
+ type: "button",
926
+ className: classNames(classes.btn, classes.btn_sm, classes.ml_5, _defineProperty$1({}, classes.collapse_error, props.errored)),
865
927
  onClick: toggle
866
928
  }, !!collapsed && /*#__PURE__*/React.createElement(Eye, {
867
929
  size: 16
868
930
  }), !collapsed && /*#__PURE__*/React.createElement(EyeOff, {
869
931
  size: 16
870
- }))), /*#__PURE__*/React.createElement("div", {
871
- className: classNames("".concat(classes.ml_10), (_classNames4 = {}, _defineProperty$1(_classNames4, classes.display__none, !!collapsed), _defineProperty$1(_classNames4, classes.flex, !!props.inline), _defineProperty$1(_classNames4, classes.collapse__inline, !!props.inline), _classNames4))
872
- }, props.children), props.lineEnd && /*#__PURE__*/React.createElement("hr", null));
932
+ })))), /*#__PURE__*/React.createElement("div", {
933
+ className: classNames("".concat(classes.ml_10), (_classNames5 = {}, _defineProperty$1(_classNames5, classes.display__none, !!collapsed), _defineProperty$1(_classNames5, classes.flex, !!props.inline), _defineProperty$1(_classNames5, classes.collapse__inline, !!props.inline), _classNames5))
934
+ }, childrenWithProps), props.lineEnd && /*#__PURE__*/React.createElement("hr", null));
873
935
  };
874
936
 
875
937
  var option = function option(x) {
@@ -28504,6 +28566,13 @@ function CodeInput(_ref) {
28504
28566
  e.stopImmediatePropagation();
28505
28567
  });
28506
28568
  if (setRef) setRef(e);
28569
+ e.dispatch({
28570
+ changes: {
28571
+ from: 0,
28572
+ to: e.state.doc.length,
28573
+ insert: value === null || value === undefined ? '' : _typeof$1(value) === 'object' ? JSON.stringify(value, null, 2) : value
28574
+ }
28575
+ });
28507
28576
  setEditor(e);
28508
28577
  }, []);
28509
28578
  useEffect(function () {
@@ -29002,6 +29071,8 @@ var ControlledInput = function ControlledInput(_ref) {
29002
29071
  }, component ? component(field, props) : /*#__PURE__*/React.cloneElement(children, _objectSpread2$1({}, props)));
29003
29072
  };
29004
29073
 
29074
+ var _excluded = ["schema", "flow", "parent", "inputWrapper", "maybeCustomHttpClient", "errorDisplayed", "value", "step", "functionalProperty", "index"];
29075
+
29005
29076
  var usePrevious = function usePrevious(value) {
29006
29077
  // The ref object is a generic container whose current property is mutable ...
29007
29078
  // ... and can hold any value, similar to an instance property on a class
@@ -29021,7 +29092,8 @@ var BasicWrapper = function BasicWrapper(_ref) {
29021
29092
  label = _ref.label,
29022
29093
  help = _ref.help,
29023
29094
  children = _ref.children,
29024
- render = _ref.render;
29095
+ render = _ref.render,
29096
+ collapsed = _ref.collapsed;
29025
29097
 
29026
29098
  if (_typeof$1(entry) === 'object') {
29027
29099
  return children;
@@ -29050,10 +29122,20 @@ var BasicWrapper = function BasicWrapper(_ref) {
29050
29122
  label: label,
29051
29123
  error: error,
29052
29124
  help: help,
29053
- children: children
29125
+ children: children,
29126
+ collapsed: collapsed
29054
29127
  });
29055
29128
  }
29056
29129
 
29130
+ var childrenWithProps = React.Children.map(children, function (child) {
29131
+ if ( /*#__PURE__*/React.isValidElement(child)) {
29132
+ return /*#__PURE__*/React.cloneElement(child, {
29133
+ collapsed: collapsed
29134
+ });
29135
+ }
29136
+
29137
+ return child;
29138
+ });
29057
29139
  return /*#__PURE__*/React.createElement("div", {
29058
29140
  className: "".concat(classes.mt_10, " ").concat(className),
29059
29141
  style: {
@@ -29078,7 +29160,7 @@ var BasicWrapper = function BasicWrapper(_ref) {
29078
29160
  marginLeft: '.5rem',
29079
29161
  cursor: 'help'
29080
29162
  }
29081
- })))), children, error && /*#__PURE__*/React.createElement("div", {
29163
+ })))), childrenWithProps, error && /*#__PURE__*/React.createElement("div", {
29082
29164
  className: classNames(classes.feedback, _defineProperty$1({}, classes.txt_red, errorDisplayed))
29083
29165
  }, error.message));
29084
29166
  };
@@ -29137,14 +29219,16 @@ var cleanInputArray = function cleanInputArray(obj, defaultValues, flow, subSche
29137
29219
 
29138
29220
  if (step.array && !step.render) {
29139
29221
  return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, (v || []).map(function (value) {
29222
+ var _subSchema$key, _subSchema$key2;
29223
+
29140
29224
  return {
29141
- value: value
29225
+ value: _typeof$1(value) === 'object' && !(value instanceof Date) && !Array.isArray(value) ? cleanInputArray(value, defaultValues, (_subSchema$key = subSchema[key]) === null || _subSchema$key === void 0 ? void 0 : _subSchema$key.flow, ((_subSchema$key2 = subSchema[key]) === null || _subSchema$key2 === void 0 ? void 0 : _subSchema$key2.schema) || {}) : value
29142
29226
  };
29143
29227
  })));
29144
29228
  } else if (_typeof$1(v) === 'object' && !(v instanceof Date) && !Array.isArray(v)) {
29145
- var _subSchema$key, _subSchema$key2;
29229
+ var _subSchema$key3, _subSchema$key4;
29146
29230
 
29147
- return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, cleanInputArray(v, defaultValues, (_subSchema$key = subSchema[key]) === null || _subSchema$key === void 0 ? void 0 : _subSchema$key.flow, ((_subSchema$key2 = subSchema[key]) === null || _subSchema$key2 === void 0 ? void 0 : _subSchema$key2.schema) || {})));
29231
+ return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, cleanInputArray(v, defaultValues, (_subSchema$key3 = subSchema[key]) === null || _subSchema$key3 === void 0 ? void 0 : _subSchema$key3.flow, ((_subSchema$key4 = subSchema[key]) === null || _subSchema$key4 === void 0 ? void 0 : _subSchema$key4.schema) || {})));
29148
29232
  } else {
29149
29233
  return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, v === undefined ? Array.isArray(v) ? [] : step.type === type.object ? {} : null : v));
29150
29234
  }
@@ -29166,25 +29250,23 @@ var cleanOutputArray = function cleanOutputArray(obj, subSchema) {
29166
29250
  }).getOrElse(false);
29167
29251
 
29168
29252
  if (isArray) {
29169
- return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, v.map(function (_ref6) {
29170
- var _subSchema$key3;
29253
+ return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, v.map(function (step) {
29254
+ var _subSchema$key5;
29171
29255
 
29172
- var value = _ref6.value;
29173
- if (!!value && _typeof$1(value) === 'object' && !(value instanceof Date && !Array.isArray(value))) return cleanOutputArray(value, ((_subSchema$key3 = subSchema[key]) === null || _subSchema$key3 === void 0 ? void 0 : _subSchema$key3.schema) || {});
29174
- return value;
29256
+ if (!!step.value && _typeof$1(step.value) === 'object' && !(step.value instanceof Date && !Array.isArray(step.value))) return cleanOutputArray(step.value, ((_subSchema$key5 = subSchema[key]) === null || _subSchema$key5 === void 0 ? void 0 : _subSchema$key5.schema) || {});
29257
+ return step.value;
29175
29258
  })));
29176
29259
  }
29177
29260
 
29178
- console.log('Not array', key);
29179
29261
  return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, v));
29180
29262
  } else if (!!v && _typeof$1(v) === 'object' && !(v instanceof Date && !Array.isArray(v))) {
29181
- var _subSchema$key4;
29263
+ var _subSchema$key6;
29182
29264
 
29183
- return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, cleanOutputArray(v, ((_subSchema$key4 = subSchema[key]) === null || _subSchema$key4 === void 0 ? void 0 : _subSchema$key4.schema) || {})));
29265
+ return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, cleanOutputArray(v, ((_subSchema$key6 = subSchema[key]) === null || _subSchema$key6 === void 0 ? void 0 : _subSchema$key6.schema) || {})));
29184
29266
  } else {
29185
- var _subSchema$key5;
29267
+ var _subSchema$key7;
29186
29268
 
29187
- if (((_subSchema$key5 = subSchema[key]) === null || _subSchema$key5 === void 0 ? void 0 : _subSchema$key5.type) === 'json') {
29269
+ if (((_subSchema$key7 = subSchema[key]) === null || _subSchema$key7 === void 0 ? void 0 : _subSchema$key7.type) === 'json') {
29188
29270
  try {
29189
29271
  return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, JSON.parse(v)));
29190
29272
  } catch (err) {
@@ -29209,14 +29291,14 @@ var validate = function validate(flow, schema, value) {
29209
29291
  });
29210
29292
  };
29211
29293
 
29212
- var Watcher = function Watcher(_ref7) {
29213
- var options = _ref7.options,
29214
- control = _ref7.control,
29215
- schema = _ref7.schema,
29216
- onSubmit = _ref7.onSubmit,
29217
- handleSubmit = _ref7.handleSubmit;
29218
- _ref7.getValues;
29219
- _ref7.watch;
29294
+ var Watcher = function Watcher(_ref6) {
29295
+ var options = _ref6.options,
29296
+ control = _ref6.control,
29297
+ schema = _ref6.schema,
29298
+ onSubmit = _ref6.onSubmit,
29299
+ handleSubmit = _ref6.handleSubmit;
29300
+ _ref6.getValues;
29301
+ _ref6.watch;
29220
29302
  var data = useWatch({
29221
29303
  control: control
29222
29304
  });
@@ -29242,20 +29324,20 @@ var Watcher = function Watcher(_ref7) {
29242
29324
  return null;
29243
29325
  };
29244
29326
 
29245
- var Form = /*#__PURE__*/React.forwardRef(function (_ref8, ref) {
29246
- var schema = _ref8.schema,
29247
- flow = _ref8.flow,
29248
- value = _ref8.value,
29249
- inputWrapper = _ref8.inputWrapper,
29250
- onSubmit = _ref8.onSubmit,
29251
- _ref8$onError = _ref8.onError,
29252
- onError = _ref8$onError === void 0 ? function () {} : _ref8$onError,
29253
- footer = _ref8.footer,
29254
- _ref8$style = _ref8.style,
29255
- style = _ref8$style === void 0 ? {} : _ref8$style,
29256
- className = _ref8.className,
29257
- _ref8$options = _ref8.options,
29258
- options = _ref8$options === void 0 ? {} : _ref8$options;
29327
+ var Form = /*#__PURE__*/React.forwardRef(function (_ref7, ref) {
29328
+ var schema = _ref7.schema,
29329
+ flow = _ref7.flow,
29330
+ value = _ref7.value,
29331
+ inputWrapper = _ref7.inputWrapper,
29332
+ onSubmit = _ref7.onSubmit,
29333
+ _ref7$onError = _ref7.onError,
29334
+ onError = _ref7$onError === void 0 ? function () {} : _ref7$onError,
29335
+ footer = _ref7.footer,
29336
+ _ref7$style = _ref7.style,
29337
+ style = _ref7$style === void 0 ? {} : _ref7$style,
29338
+ className = _ref7.className,
29339
+ _ref7$options = _ref7.options,
29340
+ options = _ref7$options === void 0 ? {} : _ref7$options;
29259
29341
  var classes = useCustomStyle(style);
29260
29342
  var formFlow = flow || Object.keys(schema);
29261
29343
 
@@ -29342,7 +29424,11 @@ var Form = /*#__PURE__*/React.forwardRef(function (_ref8, ref) {
29342
29424
  }, onError)();
29343
29425
  },
29344
29426
  trigger: trigger,
29345
- methods: methods
29427
+ methods: _objectSpread2$1(_objectSpread2$1({}, methods), {}, {
29428
+ data: function data() {
29429
+ return cleanOutputArray(getValues(), schema);
29430
+ }
29431
+ })
29346
29432
  };
29347
29433
  });
29348
29434
  return /*#__PURE__*/React.createElement(FormProvider, methods, /*#__PURE__*/React.createElement(Watcher, {
@@ -29453,18 +29539,19 @@ var Footer = function Footer(props) {
29453
29539
  }, ((_props$actions8 = props.actions) === null || _props$actions8 === void 0 ? void 0 : (_props$actions8$submi = _props$actions8.submit) === null || _props$actions8$submi === void 0 ? void 0 : _props$actions8$submi.label) || 'Save'));
29454
29540
  };
29455
29541
 
29456
- var Step = function Step(_ref9) {
29457
- var entry = _ref9.entry,
29458
- realEntry = _ref9.realEntry,
29459
- step = _ref9.step,
29460
- schema = _ref9.schema,
29461
- inputWrapper = _ref9.inputWrapper,
29462
- httpClient = _ref9.httpClient,
29463
- defaultValue = _ref9.defaultValue,
29464
- index = _ref9.index,
29465
- functionalProperty = _ref9.functionalProperty,
29466
- parent = _ref9.parent,
29467
- onAfterChange = _ref9.onAfterChange;
29542
+ var Step = function Step(_ref8) {
29543
+ var entry = _ref8.entry,
29544
+ realEntry = _ref8.realEntry,
29545
+ step = _ref8.step,
29546
+ schema = _ref8.schema,
29547
+ inputWrapper = _ref8.inputWrapper,
29548
+ httpClient = _ref8.httpClient,
29549
+ defaultValue = _ref8.defaultValue,
29550
+ index = _ref8.index,
29551
+ functionalProperty = _ref8.functionalProperty,
29552
+ parent = _ref8.parent,
29553
+ onAfterChange = _ref8.onAfterChange,
29554
+ collapsed = _ref8.collapsed;
29468
29555
  var classes = useCustomStyle();
29469
29556
 
29470
29557
  var _useFormContext2 = useFormContext(),
@@ -29485,7 +29572,8 @@ var Step = function Step(_ref9) {
29485
29572
  return !!errors[step] && (dirtyFields[step] || touchedFields[step]);
29486
29573
  });
29487
29574
  return /*#__PURE__*/React.createElement(Collapse, _extends({}, entry, {
29488
- errored: errored
29575
+ errored: errored,
29576
+ collapsed: collapsed
29489
29577
  }), entry.flow.map(function (en, entryIdx) {
29490
29578
  var stp = schema[en];
29491
29579
  _typeof$1(en) === 'object' ? undefined : en.split('.').reduce(function (object, key) {
@@ -29524,11 +29612,13 @@ var Step = function Step(_ref9) {
29524
29612
  entry: en,
29525
29613
  label: functionalProperty(en, (stp === null || stp === void 0 ? void 0 : stp.label) === null ? null : (stp === null || stp === void 0 ? void 0 : stp.label) || en),
29526
29614
  help: stp === null || stp === void 0 ? void 0 : stp.help,
29527
- render: inputWrapper
29615
+ render: inputWrapper,
29616
+ collapsed: collapsed
29528
29617
  }, /*#__PURE__*/React.createElement(Step, {
29529
29618
  entry: en,
29530
29619
  step: stp,
29531
29620
  schema: schema,
29621
+ collapsed: collapsed,
29532
29622
  inputWrapper: inputWrapper,
29533
29623
  httpClient: httpClient,
29534
29624
  defaultValue: stp === null || stp === void 0 ? void 0 : stp.defaultValue,
@@ -29558,12 +29648,12 @@ var Step = function Step(_ref9) {
29558
29648
  var newData = cleanOutputArray(d, schema);
29559
29649
  if (!deepEqual(newData, currentData) || newData !== undefined && currentData === undefined) onAfterChangeFunc({
29560
29650
  entry: entry,
29561
- previousValue: currentData,
29562
29651
  value: getValues(entry),
29652
+ rawValues: newData,
29653
+ previousValue: currentData,
29563
29654
  getValue: function getValue(e) {
29564
29655
  return getValues(e);
29565
29656
  },
29566
- rawValues: newData,
29567
29657
  setValue: _setValue,
29568
29658
  onChange: function onChange(v) {
29569
29659
  return _setValue(entry, v);
@@ -29606,7 +29696,8 @@ var Step = function Step(_ref9) {
29606
29696
  defaultValue: (_props$defaultValue = props.defaultValue) === null || _props$defaultValue === void 0 ? void 0 : _props$defaultValue.value,
29607
29697
  value: props.value,
29608
29698
  index: idx,
29609
- functionalProperty: functionalProperty
29699
+ functionalProperty: functionalProperty,
29700
+ collapsed: collapsed
29610
29701
  });
29611
29702
  }
29612
29703
  }));
@@ -29767,6 +29858,7 @@ var Step = function Step(_ref9) {
29767
29858
  flow: flow,
29768
29859
  step: step,
29769
29860
  parent: entry,
29861
+ collapsed: collapsed,
29770
29862
  inputWrapper: inputWrapper,
29771
29863
  maybeCustomHttpClient: httpClient,
29772
29864
  value: getValues(entry) || defaultValue,
@@ -29835,11 +29927,11 @@ var Step = function Step(_ref9) {
29835
29927
  return /*#__PURE__*/React.createElement(Controller, {
29836
29928
  name: entry,
29837
29929
  control: control,
29838
- render: function render(_ref10) {
29839
- var field = _ref10.field;
29930
+ render: function render(_ref9) {
29931
+ var field = _ref9.field;
29840
29932
 
29841
- var FileInput = function FileInput(_ref11) {
29842
- var onChange = _ref11.onChange;
29933
+ var FileInput = function FileInput(_ref10) {
29934
+ var onChange = _ref10.onChange;
29843
29935
 
29844
29936
  var _useState3 = useState(false),
29845
29937
  _useState4 = _slicedToArray(_useState3, 2),
@@ -29924,11 +30016,11 @@ var Step = function Step(_ref9) {
29924
30016
  }
29925
30017
  };
29926
30018
 
29927
- var ArrayStep = function ArrayStep(_ref12) {
29928
- var entry = _ref12.entry,
29929
- step = _ref12.step,
29930
- component = _ref12.component,
29931
- disabled = _ref12.disabled;
30019
+ var ArrayStep = function ArrayStep(_ref11) {
30020
+ var entry = _ref11.entry,
30021
+ step = _ref11.step,
30022
+ component = _ref11.component,
30023
+ disabled = _ref11.disabled;
29932
30024
  var classes = useCustomStyle();
29933
30025
 
29934
30026
  var _useFormContext3 = useFormContext(),
@@ -30015,19 +30107,20 @@ var ArrayStep = function ArrayStep(_ref12) {
30015
30107
  }, error.message)));
30016
30108
  };
30017
30109
 
30018
- var NestedForm = function NestedForm(_ref13) {
30110
+ var NestedForm = function NestedForm(_ref12) {
30019
30111
  var _classNames17;
30020
30112
 
30021
- var schema = _ref13.schema,
30022
- flow = _ref13.flow,
30023
- parent = _ref13.parent,
30024
- inputWrapper = _ref13.inputWrapper,
30025
- maybeCustomHttpClient = _ref13.maybeCustomHttpClient,
30026
- errorDisplayed = _ref13.errorDisplayed,
30027
- value = _ref13.value,
30028
- step = _ref13.step,
30029
- functionalProperty = _ref13.functionalProperty,
30030
- index = _ref13.index;
30113
+ var schema = _ref12.schema,
30114
+ flow = _ref12.flow,
30115
+ parent = _ref12.parent,
30116
+ inputWrapper = _ref12.inputWrapper,
30117
+ maybeCustomHttpClient = _ref12.maybeCustomHttpClient,
30118
+ errorDisplayed = _ref12.errorDisplayed,
30119
+ value = _ref12.value,
30120
+ step = _ref12.step,
30121
+ functionalProperty = _ref12.functionalProperty,
30122
+ index = _ref12.index,
30123
+ props = _objectWithoutProperties(_ref12, _excluded);
30031
30124
 
30032
30125
  var _useFormContext4 = useFormContext(),
30033
30126
  getValues = _useFormContext4.getValues,
@@ -30036,17 +30129,15 @@ var NestedForm = function NestedForm(_ref13) {
30036
30129
  _useFormContext4.trigger;
30037
30130
  _useFormContext4.formState;
30038
30131
 
30039
- var _useState7 = useState(!!step.collapsed),
30132
+ var _useState7 = useState(!!step.collapsed || props.collapsed),
30040
30133
  _useState8 = _slicedToArray(_useState7, 2),
30041
30134
  collapsed = _useState8[0],
30042
30135
  setCollapsed = _useState8[1];
30043
30136
 
30044
- var classes = useCustomStyle(); // TODO - voir ce qui se passe et à quoi ça sert
30045
- // const v = getValues(parent);
30046
- // useEffect(() => {
30047
- // trigger(parent)
30048
- // }, [JSON.stringify(v)])
30049
-
30137
+ useEffect(function () {
30138
+ setCollapsed(props.collapsed);
30139
+ }, [props.collapsed]);
30140
+ var classes = useCustomStyle();
30050
30141
  var schemaAndFlow = option(step.conditionalSchema).map(function (condiSchema) {
30051
30142
  var ref = option(condiSchema.ref).map(function (ref) {
30052
30143
  return getValues(ref);
@@ -30138,10 +30229,10 @@ var NestedForm = function NestedForm(_ref13) {
30138
30229
  onClick: function onClick() {
30139
30230
  return setCollapsed(!collapsed);
30140
30231
  }
30141
- }), computedSandF.map(function (_ref14, idx) {
30142
- var step = _ref14.step,
30143
- visibleStep = _ref14.visibleStep,
30144
- entry = _ref14.entry;
30232
+ }), computedSandF.map(function (_ref13, idx) {
30233
+ var step = _ref13.step,
30234
+ visibleStep = _ref13.visibleStep,
30235
+ entry = _ref13.entry;
30145
30236
 
30146
30237
  if (!step && typeof entry === 'string') {
30147
30238
  console.error("no step found for the entry \"".concat(entry, "\" in the given schema. Your form might not work properly. Please fix it"));
package/lib/index.js CHANGED
@@ -486,6 +486,42 @@ function _extends() {
486
486
  return _extends.apply(this, arguments);
487
487
  }
488
488
 
489
+ function _objectWithoutPropertiesLoose(source, excluded) {
490
+ if (source == null) return {};
491
+ var target = {};
492
+ var sourceKeys = Object.keys(source);
493
+ var key, i;
494
+
495
+ for (i = 0; i < sourceKeys.length; i++) {
496
+ key = sourceKeys[i];
497
+ if (excluded.indexOf(key) >= 0) continue;
498
+ target[key] = source[key];
499
+ }
500
+
501
+ return target;
502
+ }
503
+
504
+ function _objectWithoutProperties(source, excluded) {
505
+ if (source == null) return {};
506
+
507
+ var target = _objectWithoutPropertiesLoose(source, excluded);
508
+
509
+ var key, i;
510
+
511
+ if (Object.getOwnPropertySymbols) {
512
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
513
+
514
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
515
+ key = sourceSymbolKeys[i];
516
+ if (excluded.indexOf(key) >= 0) continue;
517
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
518
+ target[key] = source[key];
519
+ }
520
+ }
521
+
522
+ return target;
523
+ }
524
+
489
525
  function _readOnlyError(name) {
490
526
  throw new TypeError("\"" + name + "\" is read-only");
491
527
  }
@@ -872,20 +908,34 @@ var BooleanInput = /*#__PURE__*/React__default["default"].forwardRef(function (_
872
908
  });
873
909
 
874
910
  var Collapse = function Collapse(props) {
875
- var _classNames4;
911
+ var _classNames5;
876
912
 
877
913
  var _useState = React.useState(props.initCollapsed || props.collapsed),
878
914
  _useState2 = _slicedToArray(_useState, 2),
879
915
  collapsed = _useState2[0],
880
916
  setCollapsed = _useState2[1];
881
917
 
918
+ var _useState3 = React.useState(false),
919
+ _useState4 = _slicedToArray(_useState3, 2),
920
+ expandedAll = _useState4[0],
921
+ setExpandedAll = _useState4[1];
922
+
882
923
  var classes = useCustomStyle();
883
924
 
884
925
  var toggle = function toggle(e) {
885
- if (e && e.preventDefault) e.preventDefault();
926
+ if (e && e.preventDefault) e.stopPropagation();
886
927
  setCollapsed(!collapsed);
887
928
  };
888
929
 
930
+ var childrenWithProps = React__default["default"].Children.map(props.children, function (child) {
931
+ if ( /*#__PURE__*/React__default["default"].isValidElement(child)) {
932
+ return /*#__PURE__*/React__default["default"].cloneElement(child, {
933
+ collapsed: expandedAll
934
+ });
935
+ }
936
+
937
+ return child;
938
+ });
889
939
  return /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement("hr", {
890
940
  className: classNames__default["default"](_defineProperty$1({}, classes.collapse_error, props.errored))
891
941
  }), /*#__PURE__*/React__default["default"].createElement("div", {
@@ -893,17 +943,29 @@ var Collapse = function Collapse(props) {
893
943
  onClick: toggle
894
944
  }, /*#__PURE__*/React__default["default"].createElement("span", {
895
945
  className: classNames__default["default"](classes.collapse_label, _defineProperty$1({}, classes.collapse_error, props.errored))
896
- }, props.label), /*#__PURE__*/React__default["default"].createElement("button", {
946
+ }, props.label), /*#__PURE__*/React__default["default"].createElement("div", {
947
+ style: {
948
+ marginLeft: 'auto'
949
+ },
950
+ className: classNames__default["default"](classes.flex)
951
+ }, /*#__PURE__*/React__default["default"].createElement("button", {
897
952
  type: "button",
898
953
  className: classNames__default["default"](classes.btn, classes.btn_sm, _defineProperty$1({}, classes.collapse_error, props.errored)),
954
+ onClick: function onClick(e) {
955
+ if (e) e.stopPropagation();
956
+ setExpandedAll(!expandedAll);
957
+ }
958
+ }, expandedAll ? 'Expand all' : 'Collapse all'), /*#__PURE__*/React__default["default"].createElement("button", {
959
+ type: "button",
960
+ className: classNames__default["default"](classes.btn, classes.btn_sm, classes.ml_5, _defineProperty$1({}, classes.collapse_error, props.errored)),
899
961
  onClick: toggle
900
962
  }, !!collapsed && /*#__PURE__*/React__default["default"].createElement(reactFeather.Eye, {
901
963
  size: 16
902
964
  }), !collapsed && /*#__PURE__*/React__default["default"].createElement(reactFeather.EyeOff, {
903
965
  size: 16
904
- }))), /*#__PURE__*/React__default["default"].createElement("div", {
905
- className: classNames__default["default"]("".concat(classes.ml_10), (_classNames4 = {}, _defineProperty$1(_classNames4, classes.display__none, !!collapsed), _defineProperty$1(_classNames4, classes.flex, !!props.inline), _defineProperty$1(_classNames4, classes.collapse__inline, !!props.inline), _classNames4))
906
- }, props.children), props.lineEnd && /*#__PURE__*/React__default["default"].createElement("hr", null));
966
+ })))), /*#__PURE__*/React__default["default"].createElement("div", {
967
+ className: classNames__default["default"]("".concat(classes.ml_10), (_classNames5 = {}, _defineProperty$1(_classNames5, classes.display__none, !!collapsed), _defineProperty$1(_classNames5, classes.flex, !!props.inline), _defineProperty$1(_classNames5, classes.collapse__inline, !!props.inline), _classNames5))
968
+ }, childrenWithProps), props.lineEnd && /*#__PURE__*/React__default["default"].createElement("hr", null));
907
969
  };
908
970
 
909
971
  var option = function option(x) {
@@ -28538,6 +28600,13 @@ function CodeInput(_ref) {
28538
28600
  e.stopImmediatePropagation();
28539
28601
  });
28540
28602
  if (setRef) setRef(e);
28603
+ e.dispatch({
28604
+ changes: {
28605
+ from: 0,
28606
+ to: e.state.doc.length,
28607
+ insert: value === null || value === undefined ? '' : _typeof$1(value) === 'object' ? JSON.stringify(value, null, 2) : value
28608
+ }
28609
+ });
28541
28610
  setEditor(e);
28542
28611
  }, []);
28543
28612
  React.useEffect(function () {
@@ -29036,6 +29105,8 @@ var ControlledInput = function ControlledInput(_ref) {
29036
29105
  }, component ? component(field, props) : /*#__PURE__*/React__default["default"].cloneElement(children, _objectSpread2$1({}, props)));
29037
29106
  };
29038
29107
 
29108
+ var _excluded = ["schema", "flow", "parent", "inputWrapper", "maybeCustomHttpClient", "errorDisplayed", "value", "step", "functionalProperty", "index"];
29109
+
29039
29110
  var usePrevious = function usePrevious(value) {
29040
29111
  // The ref object is a generic container whose current property is mutable ...
29041
29112
  // ... and can hold any value, similar to an instance property on a class
@@ -29055,7 +29126,8 @@ var BasicWrapper = function BasicWrapper(_ref) {
29055
29126
  label = _ref.label,
29056
29127
  help = _ref.help,
29057
29128
  children = _ref.children,
29058
- render = _ref.render;
29129
+ render = _ref.render,
29130
+ collapsed = _ref.collapsed;
29059
29131
 
29060
29132
  if (_typeof$1(entry) === 'object') {
29061
29133
  return children;
@@ -29084,10 +29156,20 @@ var BasicWrapper = function BasicWrapper(_ref) {
29084
29156
  label: label,
29085
29157
  error: error,
29086
29158
  help: help,
29087
- children: children
29159
+ children: children,
29160
+ collapsed: collapsed
29088
29161
  });
29089
29162
  }
29090
29163
 
29164
+ var childrenWithProps = React__default["default"].Children.map(children, function (child) {
29165
+ if ( /*#__PURE__*/React__default["default"].isValidElement(child)) {
29166
+ return /*#__PURE__*/React__default["default"].cloneElement(child, {
29167
+ collapsed: collapsed
29168
+ });
29169
+ }
29170
+
29171
+ return child;
29172
+ });
29091
29173
  return /*#__PURE__*/React__default["default"].createElement("div", {
29092
29174
  className: "".concat(classes.mt_10, " ").concat(className),
29093
29175
  style: {
@@ -29112,7 +29194,7 @@ var BasicWrapper = function BasicWrapper(_ref) {
29112
29194
  marginLeft: '.5rem',
29113
29195
  cursor: 'help'
29114
29196
  }
29115
- })))), children, error && /*#__PURE__*/React__default["default"].createElement("div", {
29197
+ })))), childrenWithProps, error && /*#__PURE__*/React__default["default"].createElement("div", {
29116
29198
  className: classNames__default["default"](classes.feedback, _defineProperty$1({}, classes.txt_red, errorDisplayed))
29117
29199
  }, error.message));
29118
29200
  };
@@ -29171,14 +29253,16 @@ var cleanInputArray = function cleanInputArray(obj, defaultValues, flow, subSche
29171
29253
 
29172
29254
  if (step.array && !step.render) {
29173
29255
  return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, (v || []).map(function (value) {
29256
+ var _subSchema$key, _subSchema$key2;
29257
+
29174
29258
  return {
29175
- value: value
29259
+ value: _typeof$1(value) === 'object' && !(value instanceof Date) && !Array.isArray(value) ? cleanInputArray(value, defaultValues, (_subSchema$key = subSchema[key]) === null || _subSchema$key === void 0 ? void 0 : _subSchema$key.flow, ((_subSchema$key2 = subSchema[key]) === null || _subSchema$key2 === void 0 ? void 0 : _subSchema$key2.schema) || {}) : value
29176
29260
  };
29177
29261
  })));
29178
29262
  } else if (_typeof$1(v) === 'object' && !(v instanceof Date) && !Array.isArray(v)) {
29179
- var _subSchema$key, _subSchema$key2;
29263
+ var _subSchema$key3, _subSchema$key4;
29180
29264
 
29181
- return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, cleanInputArray(v, defaultValues, (_subSchema$key = subSchema[key]) === null || _subSchema$key === void 0 ? void 0 : _subSchema$key.flow, ((_subSchema$key2 = subSchema[key]) === null || _subSchema$key2 === void 0 ? void 0 : _subSchema$key2.schema) || {})));
29265
+ return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, cleanInputArray(v, defaultValues, (_subSchema$key3 = subSchema[key]) === null || _subSchema$key3 === void 0 ? void 0 : _subSchema$key3.flow, ((_subSchema$key4 = subSchema[key]) === null || _subSchema$key4 === void 0 ? void 0 : _subSchema$key4.schema) || {})));
29182
29266
  } else {
29183
29267
  return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, v === undefined ? Array.isArray(v) ? [] : step.type === type.object ? {} : null : v));
29184
29268
  }
@@ -29200,25 +29284,23 @@ var cleanOutputArray = function cleanOutputArray(obj, subSchema) {
29200
29284
  }).getOrElse(false);
29201
29285
 
29202
29286
  if (isArray) {
29203
- return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, v.map(function (_ref6) {
29204
- var _subSchema$key3;
29287
+ return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, v.map(function (step) {
29288
+ var _subSchema$key5;
29205
29289
 
29206
- var value = _ref6.value;
29207
- if (!!value && _typeof$1(value) === 'object' && !(value instanceof Date && !Array.isArray(value))) return cleanOutputArray(value, ((_subSchema$key3 = subSchema[key]) === null || _subSchema$key3 === void 0 ? void 0 : _subSchema$key3.schema) || {});
29208
- return value;
29290
+ if (!!step.value && _typeof$1(step.value) === 'object' && !(step.value instanceof Date && !Array.isArray(step.value))) return cleanOutputArray(step.value, ((_subSchema$key5 = subSchema[key]) === null || _subSchema$key5 === void 0 ? void 0 : _subSchema$key5.schema) || {});
29291
+ return step.value;
29209
29292
  })));
29210
29293
  }
29211
29294
 
29212
- console.log('Not array', key);
29213
29295
  return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, v));
29214
29296
  } else if (!!v && _typeof$1(v) === 'object' && !(v instanceof Date && !Array.isArray(v))) {
29215
- var _subSchema$key4;
29297
+ var _subSchema$key6;
29216
29298
 
29217
- return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, cleanOutputArray(v, ((_subSchema$key4 = subSchema[key]) === null || _subSchema$key4 === void 0 ? void 0 : _subSchema$key4.schema) || {})));
29299
+ return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, cleanOutputArray(v, ((_subSchema$key6 = subSchema[key]) === null || _subSchema$key6 === void 0 ? void 0 : _subSchema$key6.schema) || {})));
29218
29300
  } else {
29219
- var _subSchema$key5;
29301
+ var _subSchema$key7;
29220
29302
 
29221
- if (((_subSchema$key5 = subSchema[key]) === null || _subSchema$key5 === void 0 ? void 0 : _subSchema$key5.type) === 'json') {
29303
+ if (((_subSchema$key7 = subSchema[key]) === null || _subSchema$key7 === void 0 ? void 0 : _subSchema$key7.type) === 'json') {
29222
29304
  try {
29223
29305
  return _objectSpread2$1(_objectSpread2$1({}, acc), {}, _defineProperty$1({}, key, JSON.parse(v)));
29224
29306
  } catch (err) {
@@ -29243,14 +29325,14 @@ var validate = function validate(flow, schema, value) {
29243
29325
  });
29244
29326
  };
29245
29327
 
29246
- var Watcher = function Watcher(_ref7) {
29247
- var options = _ref7.options,
29248
- control = _ref7.control,
29249
- schema = _ref7.schema,
29250
- onSubmit = _ref7.onSubmit,
29251
- handleSubmit = _ref7.handleSubmit;
29252
- _ref7.getValues;
29253
- _ref7.watch;
29328
+ var Watcher = function Watcher(_ref6) {
29329
+ var options = _ref6.options,
29330
+ control = _ref6.control,
29331
+ schema = _ref6.schema,
29332
+ onSubmit = _ref6.onSubmit,
29333
+ handleSubmit = _ref6.handleSubmit;
29334
+ _ref6.getValues;
29335
+ _ref6.watch;
29254
29336
  var data = reactHookForm.useWatch({
29255
29337
  control: control
29256
29338
  });
@@ -29276,20 +29358,20 @@ var Watcher = function Watcher(_ref7) {
29276
29358
  return null;
29277
29359
  };
29278
29360
 
29279
- var Form = /*#__PURE__*/React__default["default"].forwardRef(function (_ref8, ref) {
29280
- var schema = _ref8.schema,
29281
- flow = _ref8.flow,
29282
- value = _ref8.value,
29283
- inputWrapper = _ref8.inputWrapper,
29284
- onSubmit = _ref8.onSubmit,
29285
- _ref8$onError = _ref8.onError,
29286
- onError = _ref8$onError === void 0 ? function () {} : _ref8$onError,
29287
- footer = _ref8.footer,
29288
- _ref8$style = _ref8.style,
29289
- style = _ref8$style === void 0 ? {} : _ref8$style,
29290
- className = _ref8.className,
29291
- _ref8$options = _ref8.options,
29292
- options = _ref8$options === void 0 ? {} : _ref8$options;
29361
+ var Form = /*#__PURE__*/React__default["default"].forwardRef(function (_ref7, ref) {
29362
+ var schema = _ref7.schema,
29363
+ flow = _ref7.flow,
29364
+ value = _ref7.value,
29365
+ inputWrapper = _ref7.inputWrapper,
29366
+ onSubmit = _ref7.onSubmit,
29367
+ _ref7$onError = _ref7.onError,
29368
+ onError = _ref7$onError === void 0 ? function () {} : _ref7$onError,
29369
+ footer = _ref7.footer,
29370
+ _ref7$style = _ref7.style,
29371
+ style = _ref7$style === void 0 ? {} : _ref7$style,
29372
+ className = _ref7.className,
29373
+ _ref7$options = _ref7.options,
29374
+ options = _ref7$options === void 0 ? {} : _ref7$options;
29293
29375
  var classes = useCustomStyle(style);
29294
29376
  var formFlow = flow || Object.keys(schema);
29295
29377
 
@@ -29376,7 +29458,11 @@ var Form = /*#__PURE__*/React__default["default"].forwardRef(function (_ref8, re
29376
29458
  }, onError)();
29377
29459
  },
29378
29460
  trigger: trigger,
29379
- methods: methods
29461
+ methods: _objectSpread2$1(_objectSpread2$1({}, methods), {}, {
29462
+ data: function data() {
29463
+ return cleanOutputArray(getValues(), schema);
29464
+ }
29465
+ })
29380
29466
  };
29381
29467
  });
29382
29468
  return /*#__PURE__*/React__default["default"].createElement(reactHookForm.FormProvider, methods, /*#__PURE__*/React__default["default"].createElement(Watcher, {
@@ -29487,18 +29573,19 @@ var Footer = function Footer(props) {
29487
29573
  }, ((_props$actions8 = props.actions) === null || _props$actions8 === void 0 ? void 0 : (_props$actions8$submi = _props$actions8.submit) === null || _props$actions8$submi === void 0 ? void 0 : _props$actions8$submi.label) || 'Save'));
29488
29574
  };
29489
29575
 
29490
- var Step = function Step(_ref9) {
29491
- var entry = _ref9.entry,
29492
- realEntry = _ref9.realEntry,
29493
- step = _ref9.step,
29494
- schema = _ref9.schema,
29495
- inputWrapper = _ref9.inputWrapper,
29496
- httpClient = _ref9.httpClient,
29497
- defaultValue = _ref9.defaultValue,
29498
- index = _ref9.index,
29499
- functionalProperty = _ref9.functionalProperty,
29500
- parent = _ref9.parent,
29501
- onAfterChange = _ref9.onAfterChange;
29576
+ var Step = function Step(_ref8) {
29577
+ var entry = _ref8.entry,
29578
+ realEntry = _ref8.realEntry,
29579
+ step = _ref8.step,
29580
+ schema = _ref8.schema,
29581
+ inputWrapper = _ref8.inputWrapper,
29582
+ httpClient = _ref8.httpClient,
29583
+ defaultValue = _ref8.defaultValue,
29584
+ index = _ref8.index,
29585
+ functionalProperty = _ref8.functionalProperty,
29586
+ parent = _ref8.parent,
29587
+ onAfterChange = _ref8.onAfterChange,
29588
+ collapsed = _ref8.collapsed;
29502
29589
  var classes = useCustomStyle();
29503
29590
 
29504
29591
  var _useFormContext2 = reactHookForm.useFormContext(),
@@ -29519,7 +29606,8 @@ var Step = function Step(_ref9) {
29519
29606
  return !!errors[step] && (dirtyFields[step] || touchedFields[step]);
29520
29607
  });
29521
29608
  return /*#__PURE__*/React__default["default"].createElement(Collapse, _extends({}, entry, {
29522
- errored: errored
29609
+ errored: errored,
29610
+ collapsed: collapsed
29523
29611
  }), entry.flow.map(function (en, entryIdx) {
29524
29612
  var stp = schema[en];
29525
29613
  _typeof$1(en) === 'object' ? undefined : en.split('.').reduce(function (object, key) {
@@ -29558,11 +29646,13 @@ var Step = function Step(_ref9) {
29558
29646
  entry: en,
29559
29647
  label: functionalProperty(en, (stp === null || stp === void 0 ? void 0 : stp.label) === null ? null : (stp === null || stp === void 0 ? void 0 : stp.label) || en),
29560
29648
  help: stp === null || stp === void 0 ? void 0 : stp.help,
29561
- render: inputWrapper
29649
+ render: inputWrapper,
29650
+ collapsed: collapsed
29562
29651
  }, /*#__PURE__*/React__default["default"].createElement(Step, {
29563
29652
  entry: en,
29564
29653
  step: stp,
29565
29654
  schema: schema,
29655
+ collapsed: collapsed,
29566
29656
  inputWrapper: inputWrapper,
29567
29657
  httpClient: httpClient,
29568
29658
  defaultValue: stp === null || stp === void 0 ? void 0 : stp.defaultValue,
@@ -29592,12 +29682,12 @@ var Step = function Step(_ref9) {
29592
29682
  var newData = cleanOutputArray(d, schema);
29593
29683
  if (!deepEqual__default["default"](newData, currentData) || newData !== undefined && currentData === undefined) onAfterChangeFunc({
29594
29684
  entry: entry,
29595
- previousValue: currentData,
29596
29685
  value: getValues(entry),
29686
+ rawValues: newData,
29687
+ previousValue: currentData,
29597
29688
  getValue: function getValue(e) {
29598
29689
  return getValues(e);
29599
29690
  },
29600
- rawValues: newData,
29601
29691
  setValue: _setValue,
29602
29692
  onChange: function onChange(v) {
29603
29693
  return _setValue(entry, v);
@@ -29640,7 +29730,8 @@ var Step = function Step(_ref9) {
29640
29730
  defaultValue: (_props$defaultValue = props.defaultValue) === null || _props$defaultValue === void 0 ? void 0 : _props$defaultValue.value,
29641
29731
  value: props.value,
29642
29732
  index: idx,
29643
- functionalProperty: functionalProperty
29733
+ functionalProperty: functionalProperty,
29734
+ collapsed: collapsed
29644
29735
  });
29645
29736
  }
29646
29737
  }));
@@ -29801,6 +29892,7 @@ var Step = function Step(_ref9) {
29801
29892
  flow: flow,
29802
29893
  step: step,
29803
29894
  parent: entry,
29895
+ collapsed: collapsed,
29804
29896
  inputWrapper: inputWrapper,
29805
29897
  maybeCustomHttpClient: httpClient,
29806
29898
  value: getValues(entry) || defaultValue,
@@ -29869,11 +29961,11 @@ var Step = function Step(_ref9) {
29869
29961
  return /*#__PURE__*/React__default["default"].createElement(reactHookForm.Controller, {
29870
29962
  name: entry,
29871
29963
  control: control,
29872
- render: function render(_ref10) {
29873
- var field = _ref10.field;
29964
+ render: function render(_ref9) {
29965
+ var field = _ref9.field;
29874
29966
 
29875
- var FileInput = function FileInput(_ref11) {
29876
- var onChange = _ref11.onChange;
29967
+ var FileInput = function FileInput(_ref10) {
29968
+ var onChange = _ref10.onChange;
29877
29969
 
29878
29970
  var _useState3 = React.useState(false),
29879
29971
  _useState4 = _slicedToArray(_useState3, 2),
@@ -29958,11 +30050,11 @@ var Step = function Step(_ref9) {
29958
30050
  }
29959
30051
  };
29960
30052
 
29961
- var ArrayStep = function ArrayStep(_ref12) {
29962
- var entry = _ref12.entry,
29963
- step = _ref12.step,
29964
- component = _ref12.component,
29965
- disabled = _ref12.disabled;
30053
+ var ArrayStep = function ArrayStep(_ref11) {
30054
+ var entry = _ref11.entry,
30055
+ step = _ref11.step,
30056
+ component = _ref11.component,
30057
+ disabled = _ref11.disabled;
29966
30058
  var classes = useCustomStyle();
29967
30059
 
29968
30060
  var _useFormContext3 = reactHookForm.useFormContext(),
@@ -30049,19 +30141,20 @@ var ArrayStep = function ArrayStep(_ref12) {
30049
30141
  }, error.message)));
30050
30142
  };
30051
30143
 
30052
- var NestedForm = function NestedForm(_ref13) {
30144
+ var NestedForm = function NestedForm(_ref12) {
30053
30145
  var _classNames17;
30054
30146
 
30055
- var schema = _ref13.schema,
30056
- flow = _ref13.flow,
30057
- parent = _ref13.parent,
30058
- inputWrapper = _ref13.inputWrapper,
30059
- maybeCustomHttpClient = _ref13.maybeCustomHttpClient,
30060
- errorDisplayed = _ref13.errorDisplayed,
30061
- value = _ref13.value,
30062
- step = _ref13.step,
30063
- functionalProperty = _ref13.functionalProperty,
30064
- index = _ref13.index;
30147
+ var schema = _ref12.schema,
30148
+ flow = _ref12.flow,
30149
+ parent = _ref12.parent,
30150
+ inputWrapper = _ref12.inputWrapper,
30151
+ maybeCustomHttpClient = _ref12.maybeCustomHttpClient,
30152
+ errorDisplayed = _ref12.errorDisplayed,
30153
+ value = _ref12.value,
30154
+ step = _ref12.step,
30155
+ functionalProperty = _ref12.functionalProperty,
30156
+ index = _ref12.index,
30157
+ props = _objectWithoutProperties(_ref12, _excluded);
30065
30158
 
30066
30159
  var _useFormContext4 = reactHookForm.useFormContext(),
30067
30160
  getValues = _useFormContext4.getValues,
@@ -30070,17 +30163,15 @@ var NestedForm = function NestedForm(_ref13) {
30070
30163
  _useFormContext4.trigger;
30071
30164
  _useFormContext4.formState;
30072
30165
 
30073
- var _useState7 = React.useState(!!step.collapsed),
30166
+ var _useState7 = React.useState(!!step.collapsed || props.collapsed),
30074
30167
  _useState8 = _slicedToArray(_useState7, 2),
30075
30168
  collapsed = _useState8[0],
30076
30169
  setCollapsed = _useState8[1];
30077
30170
 
30078
- var classes = useCustomStyle(); // TODO - voir ce qui se passe et à quoi ça sert
30079
- // const v = getValues(parent);
30080
- // useEffect(() => {
30081
- // trigger(parent)
30082
- // }, [JSON.stringify(v)])
30083
-
30171
+ React.useEffect(function () {
30172
+ setCollapsed(props.collapsed);
30173
+ }, [props.collapsed]);
30174
+ var classes = useCustomStyle();
30084
30175
  var schemaAndFlow = option(step.conditionalSchema).map(function (condiSchema) {
30085
30176
  var ref = option(condiSchema.ref).map(function (ref) {
30086
30177
  return getValues(ref);
@@ -30172,10 +30263,10 @@ var NestedForm = function NestedForm(_ref13) {
30172
30263
  onClick: function onClick() {
30173
30264
  return setCollapsed(!collapsed);
30174
30265
  }
30175
- }), computedSandF.map(function (_ref14, idx) {
30176
- var step = _ref14.step,
30177
- visibleStep = _ref14.visibleStep,
30178
- entry = _ref14.entry;
30266
+ }), computedSandF.map(function (_ref13, idx) {
30267
+ var step = _ref13.step,
30268
+ visibleStep = _ref13.visibleStep,
30269
+ entry = _ref13.entry;
30179
30270
 
30180
30271
  if (!step && typeof entry === 'string') {
30181
30272
  console.error("no step found for the entry \"".concat(entry, "\" in the given schema. Your form might not work properly. Please fix it"));
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@maif/react-forms",
3
3
  "description": "Build react safe forms as fast as possible",
4
- "version": "1.0.46",
4
+ "version": "1.0.49",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib/esm/index.js",
7
7
  "types": "lib/index.js",