@onehat/ui 0.3.110 → 0.3.111

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onehat/ui",
3
- "version": "0.3.110",
3
+ "version": "0.3.111",
4
4
  "description": "Base UI for OneHat apps",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -75,6 +75,7 @@ function Form(props) {
75
75
  disableDirtyIcon = false,
76
76
  onBack,
77
77
  onReset,
78
+ onInit,
78
79
  onViewMode,
79
80
  submitBtnLabel,
80
81
  onSubmit,
@@ -614,19 +615,25 @@ function Form(props) {
614
615
  alert(errors.message);
615
616
  }
616
617
  },
618
+ doReset = (values) => {
619
+ reset(values);
620
+ if (onReset) {
621
+ onReset(values, formSetValue, formGetValues);
622
+ }
623
+ },
617
624
  onSaveDecorated = async (data, e) => {
618
625
  // reset the form after a save
619
626
  const result = await onSave(data, e);
620
627
  if (result) {
621
628
  const values = record.submitValues;
622
- reset(values);
629
+ doReset(values);
623
630
  }
624
631
  },
625
632
  onSubmitDecorated = async (data, e) => {
626
633
  const result = await onSubmit(data, e);
627
634
  if (result) {
628
635
  const values = record.submitValues;
629
- reset(values);
636
+ doReset(values);
630
637
  }
631
638
  },
632
639
  onLayoutDecorated = (e) => {
@@ -638,9 +645,13 @@ function Form(props) {
638
645
  };
639
646
 
640
647
  useEffect(() => {
641
- if (record !== previousRecord) {
648
+ if (record === previousRecord) {
649
+ if (onInit) {
650
+ onInit(initialValues, formSetValue, formGetValues);
651
+ }
652
+ } else {
642
653
  setPreviousRecord(record);
643
- reset(defaultValues);
654
+ doReset(defaultValues);
644
655
  }
645
656
  if (formSetup) {
646
657
  formSetup(formSetValue, formGetValues, formState)
@@ -849,12 +860,7 @@ function Form(props) {
849
860
  {showResetBtn &&
850
861
  <IconButton
851
862
  key="resetBtn"
852
- onPress={() => {
853
- if (onReset) {
854
- onReset();
855
- }
856
- reset();
857
- }}
863
+ onPress={() => doReset()}
858
864
  icon={Rotate}
859
865
  _icon={{
860
866
  color: !formState.isDirty ? 'trueGray.400' : '#000',