intelicoreact 1.4.13 → 1.4.14

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 (255) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +1 -9
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +1 -10
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +4 -24
  4. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +1 -10
  5. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +2 -14
  6. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +5 -54
  7. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +3 -21
  8. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +51 -144
  9. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +1 -7
  10. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +25 -91
  11. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +3 -15
  12. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +15 -29
  13. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +5 -15
  14. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +6 -26
  15. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +19 -35
  16. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +9 -38
  17. package/dist/Atomic/FormElements/Input/Input.js +25 -60
  18. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +4 -31
  19. package/dist/Atomic/FormElements/InputColor/InputColor.js +4 -14
  20. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +6 -29
  21. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +8 -43
  22. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +3 -21
  23. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +58 -81
  24. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +6 -41
  25. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +1 -8
  26. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +21 -51
  27. package/dist/Atomic/FormElements/InputLink/InputLink.js +6 -23
  28. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +0 -4
  29. package/dist/Atomic/FormElements/InputMask/InputMask.js +77 -208
  30. package/dist/Atomic/FormElements/InputMask/functions.js +2 -28
  31. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +43 -119
  32. package/dist/Atomic/FormElements/InputMask2/functions.js +2 -28
  33. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +44 -137
  34. package/dist/Atomic/FormElements/InputMask3/functions.js +2 -28
  35. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +3 -17
  36. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +5 -24
  37. package/dist/Atomic/FormElements/Label/Label.js +1 -9
  38. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +35 -73
  39. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +3 -15
  40. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +23 -44
  41. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +7 -17
  42. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +3 -14
  43. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +1 -10
  44. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +3 -14
  45. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +3 -23
  46. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +17 -34
  47. package/dist/Atomic/FormElements/RangeList/RangeList.js +6 -25
  48. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +1 -11
  49. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +14 -85
  50. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +43 -132
  51. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +1 -10
  52. package/dist/Atomic/FormElements/Switcher/Switcher.js +1 -10
  53. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +1 -13
  54. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +1 -10
  55. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +2 -17
  56. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +3 -17
  57. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +1 -11
  58. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +6 -29
  59. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +2 -3
  60. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +1 -12
  61. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +8 -30
  62. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +96 -187
  63. package/dist/Atomic/FormElements/Text/Text.js +10 -16
  64. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +1 -9
  65. package/dist/Atomic/FormElements/Textarea/Textarea.js +3 -17
  66. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +6 -35
  67. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +4 -13
  68. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +7 -21
  69. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +8 -35
  70. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +5 -18
  71. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +3 -10
  72. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +3 -11
  73. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +1 -2
  74. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +5 -12
  75. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
  76. package/dist/Atomic/Layout/Header/Header.js +3 -15
  77. package/dist/Atomic/Layout/MainMenu/MainMenu.js +3 -20
  78. package/dist/Atomic/Layout/Spinner/Spinner.js +1 -8
  79. package/dist/Atomic/UI/Accordion/Accordion.js +3 -19
  80. package/dist/Atomic/UI/Accordion/AccordionItem.js +9 -23
  81. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +7 -32
  82. package/dist/Atomic/UI/AccordionText/AccordionText.js +3 -15
  83. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +4 -21
  84. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +3 -15
  85. package/dist/Atomic/UI/Alert/Alert.js +3 -19
  86. package/dist/Atomic/UI/Arrow/Arrow.js +3 -16
  87. package/dist/Atomic/UI/Box/Box.js +3 -9
  88. package/dist/Atomic/UI/Button/Button.js +2 -11
  89. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +1 -10
  90. package/dist/Atomic/UI/Chart/Chart.js +4 -29
  91. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +11 -19
  92. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +1 -12
  93. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +11 -34
  94. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +82 -56
  95. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +15 -19
  96. package/dist/Atomic/UI/Chart/partial/utils.js +6 -20
  97. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +3 -13
  98. package/dist/Atomic/UI/DateTime/DateTime.js +3 -14
  99. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +4 -16
  100. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +3 -11
  101. package/dist/Atomic/UI/DoubleString/DoubleString.js +5 -17
  102. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +3 -10
  103. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +17 -52
  104. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +1 -29
  105. package/dist/Atomic/UI/Hint/Hint.js +5 -31
  106. package/dist/Atomic/UI/Modal/Modal.js +6 -28
  107. package/dist/Atomic/UI/Modal/ModalHOC.js +1 -9
  108. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +1 -7
  109. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +1 -8
  110. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +32 -49
  111. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +6 -21
  112. package/dist/Atomic/UI/NavLine/NavLine.js +26 -55
  113. package/dist/Atomic/UI/NavLine/Tabs.js +2 -3
  114. package/dist/Atomic/UI/PageTitle/PageTitle.js +2 -10
  115. package/dist/Atomic/UI/PieChart/PieChart.js +1 -10
  116. package/dist/Atomic/UI/Price/Price.js +3 -8
  117. package/dist/Atomic/UI/PriceRange/PriceRange.js +1 -7
  118. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +1 -16
  119. package/dist/Atomic/UI/Status/Status.js +1 -8
  120. package/dist/Atomic/UI/Table/Partials/TdCell.js +5 -29
  121. package/dist/Atomic/UI/Table/Partials/TdHeader.js +1 -11
  122. package/dist/Atomic/UI/Table/Partials/TdRow.js +5 -17
  123. package/dist/Atomic/UI/Table/Partials/TdTitle.js +3 -14
  124. package/dist/Atomic/UI/Table/Table.js +1 -12
  125. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +2 -18
  126. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +1 -9
  127. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +1 -4
  128. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +1 -13
  129. package/dist/Atomic/UI/Tag/Tag.js +7 -19
  130. package/dist/Atomic/UI/TagList/TagList.js +20 -38
  131. package/dist/Atomic/UI/UserBox/UserBox.js +1 -13
  132. package/dist/Classes/AbortableFetch.js +36 -93
  133. package/dist/Classes/AnimatedHandler.js +3 -7
  134. package/dist/Classes/RESTAPI/index.js +39 -44
  135. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +35 -93
  136. package/dist/Classes/RESTAPI/partials/ApiBase.js +1 -9
  137. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +24 -32
  138. package/dist/Classes/RESTAPI/partials/ApiUtils.js +34 -41
  139. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +21 -44
  140. package/dist/Classes/RESTAPI/partials/Utils.js +6 -19
  141. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +2 -6
  142. package/dist/Classes/RESTAPI/partials/_utils.js +13 -36
  143. package/dist/Constants/index.constants.js +8 -15
  144. package/dist/Functions/Portal.js +5 -16
  145. package/dist/Functions/customEventListener.js +4 -17
  146. package/dist/Functions/fieldValueFormatters.js +43 -83
  147. package/dist/Functions/hooks/useFormFieldsChangesManager.js +23 -26
  148. package/dist/Functions/locale/createTranslator.js +4 -9
  149. package/dist/Functions/operations.js +12 -22
  150. package/dist/Functions/presets/inputMaskPresets.js +9 -11
  151. package/dist/Functions/presets/inputPresets.js +8 -11
  152. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +7 -9
  153. package/dist/Functions/schemas.js +6 -13
  154. package/dist/Functions/useBodyScrollLock.js +1 -6
  155. package/dist/Functions/useClickOutside.js +0 -4
  156. package/dist/Functions/useDebounce.js +2 -7
  157. package/dist/Functions/useFieldFocus.js +6 -18
  158. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +0 -9
  159. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +12 -23
  160. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +6 -15
  161. package/dist/Functions/useFormTools/functions/General.js +18 -28
  162. package/dist/Functions/useFormTools/functions/RenderFields.js +2 -11
  163. package/dist/Functions/useFormTools/functions/usePrevious.js +1 -5
  164. package/dist/Functions/useFormTools/index.js +85 -144
  165. package/dist/Functions/useInputHighlightError.js +3 -12
  166. package/dist/Functions/useIsMobile.js +7 -13
  167. package/dist/Functions/useKeyPress/useHandleKeyPress.js +1 -7
  168. package/dist/Functions/useKeyPress/useKeyPress.js +1 -9
  169. package/dist/Functions/useLocalStorage.js +1 -9
  170. package/dist/Functions/useLocationParams.js +4 -5
  171. package/dist/Functions/useMediaQuery.js +3 -9
  172. package/dist/Functions/useMetaInfo.js +3 -10
  173. package/dist/Functions/useMouseUpOutside.js +0 -3
  174. package/dist/Functions/useOnlineStatus.js +1 -9
  175. package/dist/Functions/usePasswordChecker.js +4 -20
  176. package/dist/Functions/usePrevious.js +1 -5
  177. package/dist/Functions/useResize.js +2 -10
  178. package/dist/Functions/useScrollTo.js +2 -7
  179. package/dist/Functions/useToggle.js +1 -5
  180. package/dist/Functions/utils.js +56 -131
  181. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +2 -9
  182. package/dist/Molecular/CustomIcons/components/AlertCircle.js +2 -9
  183. package/dist/Molecular/CustomIcons/components/AppStore.js +2 -9
  184. package/dist/Molecular/CustomIcons/components/Arrow.js +2 -9
  185. package/dist/Molecular/CustomIcons/components/ArrowDown.js +2 -9
  186. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +2 -9
  187. package/dist/Molecular/CustomIcons/components/ArrowRight.js +2 -9
  188. package/dist/Molecular/CustomIcons/components/ArrowUp.js +2 -9
  189. package/dist/Molecular/CustomIcons/components/Bell.js +2 -9
  190. package/dist/Molecular/CustomIcons/components/Button.js +2 -9
  191. package/dist/Molecular/CustomIcons/components/Campaigns.js +2 -9
  192. package/dist/Molecular/CustomIcons/components/Check.js +2 -9
  193. package/dist/Molecular/CustomIcons/components/Check2.js +2 -9
  194. package/dist/Molecular/CustomIcons/components/ChevronDown.js +2 -9
  195. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +2 -9
  196. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +2 -9
  197. package/dist/Molecular/CustomIcons/components/ChevronRight.js +2 -9
  198. package/dist/Molecular/CustomIcons/components/ChevronUp.js +2 -9
  199. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +2 -9
  200. package/dist/Molecular/CustomIcons/components/Close.js +2 -9
  201. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +2 -9
  202. package/dist/Molecular/CustomIcons/components/Delete.js +2 -9
  203. package/dist/Molecular/CustomIcons/components/Edit.js +2 -9
  204. package/dist/Molecular/CustomIcons/components/Email.js +2 -9
  205. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +2 -9
  206. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +2 -9
  207. package/dist/Molecular/CustomIcons/components/Flows.js +2 -9
  208. package/dist/Molecular/CustomIcons/components/Gift.js +2 -9
  209. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +2 -9
  210. package/dist/Molecular/CustomIcons/components/GooglePlay.js +2 -9
  211. package/dist/Molecular/CustomIcons/components/HelpCircle.js +2 -9
  212. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +2 -9
  213. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +2 -9
  214. package/dist/Molecular/CustomIcons/components/Home.js +2 -9
  215. package/dist/Molecular/CustomIcons/components/Home2.js +2 -9
  216. package/dist/Molecular/CustomIcons/components/Key.js +2 -9
  217. package/dist/Molecular/CustomIcons/components/Landers.js +2 -9
  218. package/dist/Molecular/CustomIcons/components/Lock.js +2 -9
  219. package/dist/Molecular/CustomIcons/components/Mail.js +2 -9
  220. package/dist/Molecular/CustomIcons/components/Mastercard.js +2 -9
  221. package/dist/Molecular/CustomIcons/components/Minus.js +2 -9
  222. package/dist/Molecular/CustomIcons/components/Offers.js +2 -9
  223. package/dist/Molecular/CustomIcons/components/Pause.js +2 -9
  224. package/dist/Molecular/CustomIcons/components/PayPal.js +2 -9
  225. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +2 -9
  226. package/dist/Molecular/CustomIcons/components/Phone.js +2 -9
  227. package/dist/Molecular/CustomIcons/components/Play.js +2 -9
  228. package/dist/Molecular/CustomIcons/components/Plus.js +2 -9
  229. package/dist/Molecular/CustomIcons/components/Profile.js +2 -9
  230. package/dist/Molecular/CustomIcons/components/QRCode.js +2 -9
  231. package/dist/Molecular/CustomIcons/components/Rectangle.js +2 -9
  232. package/dist/Molecular/CustomIcons/components/Revert.js +2 -9
  233. package/dist/Molecular/CustomIcons/components/Star.js +2 -9
  234. package/dist/Molecular/CustomIcons/components/Star2.js +2 -9
  235. package/dist/Molecular/CustomIcons/components/TrafficSources.js +2 -9
  236. package/dist/Molecular/CustomIcons/components/Trash.js +2 -9
  237. package/dist/Molecular/CustomIcons/components/TrashRed.js +2 -9
  238. package/dist/Molecular/CustomIcons/components/Triggers.js +2 -9
  239. package/dist/Molecular/CustomIcons/components/User.js +2 -9
  240. package/dist/Molecular/CustomIcons/components/Visa.js +2 -9
  241. package/dist/Molecular/CustomIcons/components/X.js +2 -9
  242. package/dist/Molecular/CustomIcons/index.js +0 -122
  243. package/dist/Molecular/FormElement/FormElement.js +1 -12
  244. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +30 -31
  245. package/dist/Molecular/FormWithDependOn/partials/_utils.js +9 -12
  246. package/dist/Molecular/InputAddress/InputAddress.js +65 -114
  247. package/dist/Molecular/InputPassword/InputPassword.js +5 -19
  248. package/dist/index.js +0 -2
  249. package/package.json +1 -1
  250. package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +0 -91
  251. package/dist/Atomic/UI/ModalBackup/Modal.js +0 -174
  252. package/dist/Atomic/UI/ModalBackup/Modal.scss +0 -333
  253. package/dist/Atomic/UI/ModalBackup/ModalHOC.js +0 -51
  254. package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +0 -24
  255. package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +0 -41
@@ -1,30 +1,22 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = useFormTools;
9
-
10
8
  var _react = require("react");
11
-
12
9
  var _ArrayWithObjects = _interopRequireDefault(require("./form-drivers/ArrayWithObjects"));
13
-
14
10
  var _ObjectWithIterableObjects = _interopRequireDefault(require("./form-drivers/ObjectWithIterableObjects"));
15
-
16
11
  var _ObjectWithNamedKeyObjects = _interopRequireDefault(require("./form-drivers/ObjectWithNamedKeyObjects"));
17
-
18
12
  var _General = _interopRequireDefault(require("./functions/General"));
19
-
20
13
  var _RenderFields = _interopRequireDefault(require("./functions/RenderFields"));
21
-
22
14
  // eslint-disable-next-line no-unused-vars
15
+
23
16
  const DefaultFocusControllerProps = {
24
17
  setAutoFocus: true,
25
18
  onlyEmptyFieldAutoFocus: false
26
19
  };
27
-
28
20
  function useFormTools() {
29
21
  let {
30
22
  form,
@@ -36,7 +28,8 @@ function useFormTools() {
36
28
  FocusControllerProps = DefaultFocusControllerProps,
37
29
  goToNextFieldOnEnterPressed = true
38
30
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
39
- FocusControllerProps = { ...DefaultFocusControllerProps,
31
+ FocusControllerProps = {
32
+ ...DefaultFocusControllerProps,
40
33
  ...FocusControllerProps
41
34
  };
42
35
  const FormDataDrivers = {
@@ -51,21 +44,16 @@ function useFormTools() {
51
44
  handlers: _ObjectWithNamedKeyObjects.default
52
45
  }
53
46
  };
54
-
55
47
  const getFormDataDriver = name => {
56
48
  var _FormDataDrivers$name, _Object$values$find;
57
-
58
49
  return FormDataDriver || ((_FormDataDrivers$name = FormDataDrivers[name]) === null || _FormDataDrivers$name === void 0 ? void 0 : _FormDataDrivers$name.handlers) || ((_Object$values$find = Object.values(FormDataDrivers).find(df => df.default === true)) === null || _Object$values$find === void 0 ? void 0 : _Object$values$find.handlers) || (() => ({}));
59
50
  };
60
-
61
51
  const getFormDataDriverInstance = function (name) {
62
52
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
63
53
  args[_key - 1] = arguments[_key];
64
54
  }
65
-
66
55
  return getFormDataDriver(name)(...args);
67
56
  };
68
-
69
57
  const {
70
58
  getFieldClassName,
71
59
  updateFormField
@@ -84,11 +72,11 @@ function useFormTools() {
84
72
  form,
85
73
  setForm,
86
74
  FormFields
87
- }); ///////////////////////////////////////////////////////////////
88
- //--- OnChange Observer ---//--- START ---//
75
+ });
89
76
 
77
+ ///////////////////////////////////////////////////////////////
78
+ //--- OnChange Observer ---//--- START ---//
90
79
  const [onChangeObservers, setOnChangeObservers] = (0, _react.useState)({});
91
-
92
80
  const addOnChangeObserver = (key, cb) => {
93
81
  let observerId = null;
94
82
  setOnChangeObservers(state => {
@@ -100,7 +88,6 @@ function useFormTools() {
100
88
  });
101
89
  return observerId;
102
90
  };
103
-
104
91
  const removeOnChangeObserver = (key, id) => {
105
92
  setOnChangeObservers(state => {
106
93
  //Set Default Value
@@ -109,7 +96,6 @@ function useFormTools() {
109
96
  return state;
110
97
  });
111
98
  };
112
-
113
99
  const onChangeObserver = (key, value) => {
114
100
  if (!onChangeObservers[key] || typeof onChangeObservers[key] !== "object") return;
115
101
  const Observers = onChangeObservers[key];
@@ -121,67 +107,61 @@ function useFormTools() {
121
107
  return null;
122
108
  });
123
109
  };
124
-
125
110
  const onFieldChange = (key, value) => {
126
111
  var _getFormField;
127
-
128
112
  if (value === ((_getFormField = getFormField(key)) === null || _getFormField === void 0 ? void 0 : _getFormField.value)) return false;
129
113
  onChangeObserver(key, value);
130
- setFormField(field => ({ ...field,
114
+ setFormField(field => ({
115
+ ...field,
131
116
  error: "",
132
117
  value
133
118
  }), key);
134
- }; //--- OnChange Observer ---//--- END ---//
119
+ };
120
+ //--- OnChange Observer ---//--- END ---//
121
+
135
122
  ///////////////////////////////////////////////////////////////
136
123
  ///////////////////////////////////////////////////////////////
137
- //--- Form Submit Blocker ---//--- START ---//
138
-
139
124
 
125
+ //--- Form Submit Blocker ---//--- START ---//
140
126
  const [formSubmitBlockers, setFormSubmitBlockers] = (0, _react.useState)([]);
141
-
142
127
  const toggleFormSubmitBlock = (key, value) => {
143
128
  setFormSubmitBlockers(state => state.includes(key) || !value ? [...state.filter(k => k !== key)] : [...state, key]);
144
129
  };
130
+ const clearFormSubmitBlockers = () => setFormSubmitBlockers([]);
131
+ //--- Form Submit Blocker ---//--- END ---//
145
132
 
146
- const clearFormSubmitBlockers = () => setFormSubmitBlockers([]); //--- Form Submit Blocker ---//--- END ---//
147
133
  ///////////////////////////////////////////////////////////////
148
134
  ///////////////////////////////////////////////////////////////
135
+
149
136
  //--- Property Observer Blocker ---//--- START ---//
150
137
  // const [propertyObservers, setPropertyObservers] = useState({});
151
138
  // function addPropertyObserver () {
152
139
  // };
153
140
  //--- Property Observer Blocker ---//--- END ---//
141
+
154
142
  ///////////////////////////////////////////////////////////////
155
143
  ///////////////////////////////////////////////////////////////
156
- //--- Render Fields Controller ---//--- START ---//
157
-
158
144
 
145
+ //--- Render Fields Controller ---//--- START ---//
159
146
  const [isFormFieldsAdded, setIsFormFieldsAdded] = (0, _react.useState)(false);
160
147
  const [renderFormFields, setRenderFormFieldsState] = (0, _react.useState)([]);
161
-
162
148
  const setRenderFormFields = data => {
163
- setIsFormFieldsAdded(true); // eslint-disable-next-line no-use-before-define
164
-
165
- removeRenderFields(renderFormFields); // eslint-disable-next-line no-use-before-define
166
-
149
+ setIsFormFieldsAdded(true);
150
+ // eslint-disable-next-line no-use-before-define
151
+ removeRenderFields(renderFormFields);
152
+ // eslint-disable-next-line no-use-before-define
167
153
  resetIsInitFocused();
168
154
  setRenderFormFieldsState(data);
169
155
  };
170
-
171
156
  const addRenderFields = fields => {
172
157
  setRenderFormFieldsState(state => [...state, ...fields]);
173
158
  };
174
-
175
159
  const removeRenderFields = fields => {
176
160
  setRenderFormFieldsState(state => state.filter(field => !fields.includes(field)));
177
161
  };
178
-
179
162
  const [isFormRendered, setIsFormRendered] = (0, _react.useState)(false);
180
-
181
163
  const submitIsFormRendered = () => setIsFormRendered(true);
182
-
183
164
  const resetIsFormRendered = () => setIsFormRendered(false);
184
-
185
165
  const onEnterDown = async e => {
186
166
  if (!goToNextFieldOnEnterPressed) return false;
187
167
  const focusable = document.querySelectorAll('a, button, input, [tabindex]:not([tabindex="-1"])');
@@ -196,12 +176,10 @@ function useFormTools() {
196
176
  const nextItem = focusable[nextIndex];
197
177
  nextItem.focus();
198
178
  };
199
-
200
179
  const onKeyDown = function () {
201
180
  for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
202
181
  args[_key2] = arguments[_key2];
203
182
  }
204
-
205
183
  const event = args.reduce((e, item) => {
206
184
  if ((item === null || item === void 0 ? void 0 : item.nativeEvent) instanceof KeyboardEvent) return item;
207
185
  return e;
@@ -210,70 +188,61 @@ function useFormTools() {
210
188
  const {
211
189
  keyCode
212
190
  } = event;
213
-
214
191
  switch (keyCode) {
215
192
  //OnEnterDown
216
193
  case 13:
217
194
  onEnterDown(event);
218
195
  break;
219
-
220
196
  default:
221
197
  break;
222
198
  }
223
- }; //On Type Change
224
-
199
+ };
225
200
 
201
+ //On Type Change
226
202
  (0, _react.useEffect)(() => {
227
203
  resetIsFormRendered();
228
- }, [FormType]); //On Render Fields Change
204
+ }, [FormType]);
229
205
 
206
+ //On Render Fields Change
230
207
  (0, _react.useEffect)(() => {
231
- if (isFormFieldsAdded) resetIsFormRendered(false); //Add Form Fields
208
+ if (isFormFieldsAdded) resetIsFormRendered(false);
232
209
 
210
+ //Add Form Fields
233
211
  if (renderFormFields.length !== 0) {
234
212
  setFormFields(fields => {
235
213
  return renderFormFields.reduce((result, key) => {
236
214
  var _field$className;
237
-
238
215
  const fieldData = getFieldData(key);
239
216
  const field = getFormField(key) ? getFormField(key) : fieldData;
240
-
241
- if (!(field !== null && field !== void 0 && field.className) || (field === null || field === void 0 ? void 0 : (_field$className = field.className) === null || _field$className === void 0 ? void 0 : _field$className.indexOf(getFieldClassName(key, FormType))) === -1) {
217
+ if (!(field !== null && field !== void 0 && field.className) || (field === null || field === void 0 || (_field$className = field.className) === null || _field$className === void 0 ? void 0 : _field$className.indexOf(getFieldClassName(key, FormType))) === -1) {
242
218
  field.className = "".concat(field === null || field === void 0 ? void 0 : field.className, " ").concat(getFieldClassName(key, FormType));
243
219
  }
244
-
245
220
  if (typeof (fieldData === null || fieldData === void 0 ? void 0 : fieldData.label) === "object") {
246
221
  field.label = fieldData.label[FormType] || fieldData.label.default;
247
222
  }
248
-
249
223
  field.ref = /*#__PURE__*/(0, _react.createRef)();
250
224
  field.wrapperRef = /*#__PURE__*/(0, _react.createRef)();
251
225
  field.isValueChangedByUser = false;
252
-
253
226
  if (goToNextFieldOnEnterPressed) {
254
227
  const onKeyDownProp = field.onKeyDown || (() => {});
255
-
256
228
  field.onKeyDown = function () {
257
229
  onKeyDown(...arguments);
258
230
  onKeyDownProp(...arguments);
259
231
  };
260
- } //Is Field Value Changed By USER
261
- // eslint-disable-next-line no-use-before-define
262
-
232
+ }
263
233
 
234
+ //Is Field Value Changed By USER
235
+ // eslint-disable-next-line no-use-before-define
264
236
  addOnFieldRenderedObserver(key, () => {
265
- var _getFormField2, _getFormField2$ref, _getFormField2$ref$cu;
266
-
267
- const element = (_getFormField2 = getFormField(key)) === null || _getFormField2 === void 0 ? void 0 : (_getFormField2$ref = _getFormField2.ref) === null || _getFormField2$ref === void 0 ? void 0 : (_getFormField2$ref$cu = _getFormField2$ref.current) === null || _getFormField2$ref$cu === void 0 ? void 0 : _getFormField2$ref$cu.querySelector((field === null || field === void 0 ? void 0 : field.focusSelector) || "input");
268
-
237
+ var _getFormField2;
238
+ const element = (_getFormField2 = getFormField(key)) === null || _getFormField2 === void 0 || (_getFormField2 = _getFormField2.ref) === null || _getFormField2 === void 0 || (_getFormField2 = _getFormField2.current) === null || _getFormField2 === void 0 ? void 0 : _getFormField2.querySelector((field === null || field === void 0 ? void 0 : field.focusSelector) || "input");
269
239
  const handler = () => setFormField({
270
240
  isValueChangedByUser: true
271
241
  }, key);
272
-
273
- element === null || element === void 0 ? void 0 : element.addEventListener("paste", handler, {
242
+ element === null || element === void 0 || element.addEventListener("paste", handler, {
274
243
  once: true
275
244
  });
276
- element === null || element === void 0 ? void 0 : element.addEventListener("keypress", handler, {
245
+ element === null || element === void 0 || element.addEventListener("keypress", handler, {
277
246
  once: true
278
247
  });
279
248
  }, true);
@@ -283,7 +252,6 @@ function useFormTools() {
283
252
  }
284
253
  }, [renderFormFields]);
285
254
  const [onFormRenderObservers, setOnFormRenderObservers] = (0, _react.useState)([]);
286
-
287
255
  const addOnFormRenderObserver = function (cb) {
288
256
  let {
289
257
  once = false
@@ -293,23 +261,21 @@ function useFormTools() {
293
261
  once,
294
262
  isWorkedOut: false
295
263
  }]);
296
- }; // eslint-disable-next-line no-unused-vars
297
-
298
-
264
+ };
265
+ // eslint-disable-next-line no-unused-vars
299
266
  const updateOnFormRenderObserver = (key, data) => {
300
267
  setOnFormRenderObservers(state => {
301
268
  const copy = [...state];
302
- copy[key] = { ...state[key],
269
+ copy[key] = {
270
+ ...state[key],
303
271
  ...data
304
272
  };
305
273
  return copy;
306
274
  });
307
275
  };
308
-
309
276
  const removeOnFormRenderObserver = key => {
310
277
  setOnFormRenderObservers(state => state.slice().filter((v, i) => i !== key));
311
278
  };
312
-
313
279
  const onFormRenderWorker = () => {
314
280
  // eslint-disable-next-line default-param-last
315
281
  onFormRenderObservers.map(function () {
@@ -326,9 +292,9 @@ function useFormTools() {
326
292
  });
327
293
  return null;
328
294
  });
329
- }; //On Form Rendered
330
-
295
+ };
331
296
 
297
+ //On Form Rendered
332
298
  (0, _react.useEffect)(() => {
333
299
  if (!isFormRendered && onFormRenderObservers.length) {
334
300
  const formFieldsKeys = getFormFieldsKeys(form);
@@ -336,56 +302,53 @@ function useFormTools() {
336
302
  if (!formFieldsKeys.includes(key)) result = false;
337
303
  return result;
338
304
  }, true);
339
-
340
305
  if (isAllFieldsRendered) {
341
306
  submitIsFormRendered(true);
342
307
  onFormRenderWorker();
343
308
  }
344
309
  }
345
- }, [form, renderFormFields, onFormRenderObservers]); //--- Render Fields Controller ---//--- END ---//
310
+ }, [form, renderFormFields, onFormRenderObservers]);
311
+ //--- Render Fields Controller ---//--- END ---//
312
+
346
313
  ///////////////////////////////////////////////////////////////
347
314
  ///////////////////////////////////////////////////////////////
348
- //--- HIGHTLIGHT LABELS IF FIELD WITH ERROR ---//--- START ---//
349
315
 
316
+ //--- HIGHTLIGHT LABELS IF FIELD WITH ERROR ---//--- START ---//
350
317
  const hightliteErrorLabels = () => {
351
318
  const fields = getFormFieldsAsArray();
352
319
  const filtered = fields === null || fields === void 0 ? void 0 : fields.reduce((result, field) => {
353
320
  if (field !== null && field !== void 0 && field.errorLabelHightlite) {
354
321
  // eslint-disable-next-line no-use-before-define
355
- result.push({ ...field,
322
+ result.push({
323
+ ...field,
356
324
  className: getFieldClassName(field === null || field === void 0 ? void 0 : field.key, FormType)
357
325
  });
358
326
  }
359
-
360
327
  return result;
361
328
  }, []);
362
- filtered === null || filtered === void 0 ? void 0 : filtered.map(field => {
329
+ filtered === null || filtered === void 0 || filtered.map(field => {
363
330
  const formField = document.querySelector(".".concat(field === null || field === void 0 ? void 0 : field.className));
364
331
  if (!formField) return null;
365
332
  formField.classList.remove("errorLabelHightlite");
366
-
367
333
  if (field !== null && field !== void 0 && field.error) {
368
334
  formField.classList.add("errorLabelHightlite");
369
335
  }
370
-
371
336
  return null;
372
337
  });
373
338
  };
374
-
375
339
  (0, _react.useEffect)(() => {
376
340
  hightliteErrorLabels();
377
- }, [form]); //--- HIGHTLIGHT LABELS IF FIELD WITH ERROR ---//--- END ---//
341
+ }, [form]);
342
+ //--- HIGHTLIGHT LABELS IF FIELD WITH ERROR ---//--- END ---//
343
+
378
344
  ///////////////////////////////////////////////////////////////
379
345
  ///////////////////////////////////////////////////////////////
380
- //--- Fields Focus Controller ---//--- START ---//
381
346
 
347
+ //--- Fields Focus Controller ---//--- START ---//
382
348
  const [isInitFocused, setIsInitFocused] = (0, _react.useState)(false);
383
349
  const [autoFocusedField, setAutoFocusedField] = (0, _react.useState)(null);
384
-
385
350
  const setFirstFieldInitFocused = () => setIsInitFocused(true);
386
-
387
351
  const resetIsInitFocused = () => setIsInitFocused(false);
388
-
389
352
  const toggleFieldFocus = function (_ref) {
390
353
  let {
391
354
  key,
@@ -397,20 +360,16 @@ function useFormTools() {
397
360
  if (!key && !field) return null;
398
361
  if (!argForm) argForm = form;
399
362
  const formField = field || getFormField(key, argForm);
400
-
401
363
  if (!formField || !formField.ref) {
402
364
  return false;
403
365
  }
404
-
405
366
  if (action === "focus" && FocusControllerProps.onlyEmptyFieldAutoFocus && Boolean(formField === null || formField === void 0 ? void 0 : formField.value)) return null;
406
367
  setTimeout(() => {
407
- var _formField$ref$curren, _formField$ref$curren2;
408
-
409
- (_formField$ref$curren = formField.ref.current) === null || _formField$ref$curren === void 0 ? void 0 : (_formField$ref$curren2 = _formField$ref$curren.querySelector((formField === null || formField === void 0 ? void 0 : formField.focusSelector) || "input")) === null || _formField$ref$curren2 === void 0 ? void 0 : _formField$ref$curren2[action]();
368
+ var _formField$ref$curren;
369
+ (_formField$ref$curren = formField.ref.current) === null || _formField$ref$curren === void 0 || (_formField$ref$curren = _formField$ref$curren.querySelector((formField === null || formField === void 0 ? void 0 : formField.focusSelector) || "input")) === null || _formField$ref$curren === void 0 || _formField$ref$curren[action]();
410
370
  cb();
411
371
  }, 50);
412
372
  };
413
-
414
373
  const setFieldFocus = _ref2 => {
415
374
  let {
416
375
  key,
@@ -425,7 +384,6 @@ function useFormTools() {
425
384
  field
426
385
  }, "focus");
427
386
  };
428
-
429
387
  const setFieldBlur = _ref3 => {
430
388
  let {
431
389
  key,
@@ -440,93 +398,73 @@ function useFormTools() {
440
398
  field
441
399
  }, "blur");
442
400
  };
443
-
444
401
  const setFirstFieldFocus = () => {
445
402
  var _field;
446
-
447
403
  let field = null;
448
-
449
404
  for (let i = 0; i < renderFormFields.length && !field; ++i) {
450
405
  const key = renderFormFields[i];
451
406
  const tmpField = getFormField(key);
452
407
  if (tmpField && !(tmpField !== null && tmpField !== void 0 && tmpField.disabled)) field = tmpField;
453
408
  }
454
-
455
409
  if (!field) return false;
456
-
457
410
  if (FocusControllerProps.onlyEmptyFieldAutoFocus && Boolean((_field = field) === null || _field === void 0 ? void 0 : _field.value)) {
458
411
  setFirstFieldInitFocused();
459
412
  return false;
460
413
  }
461
-
462
414
  setAutoFocusedField(field.key);
463
-
464
415
  const callback = () => {
465
416
  setFormField({
466
417
  value: field.value
467
418
  }, field.key);
468
419
  setFirstFieldInitFocused();
469
420
  };
470
-
471
421
  setTimeout(() => setFieldFocus({
472
422
  key: field.key,
473
423
  cb: callback,
474
424
  form
475
425
  }), 50);
476
426
  };
477
-
478
427
  const [onFieldFocusCallbacks, setOnFieldFocusCallbacks] = (0, _react.useState)({});
479
-
480
428
  const addOnFieldFocusCallback = (key, cb) => {
481
429
  setOnFieldFocusCallbacks(state => {
482
- const stateCopy = { ...state
430
+ const stateCopy = {
431
+ ...state
483
432
  };
484
433
  if (!state[key]) stateCopy[key] = [];
485
434
  stateCopy[key].push(cb);
486
435
  return stateCopy;
487
436
  });
488
437
  };
489
-
490
438
  const callOnFieldFocusCallbacks = key => {
491
439
  var _onFieldFocusCallback;
492
-
493
440
  if (!Array.isArray(onFieldFocusCallbacks[key])) return null;
494
- (_onFieldFocusCallback = onFieldFocusCallbacks[key]) === null || _onFieldFocusCallback === void 0 ? void 0 : _onFieldFocusCallback.map(cb => cb());
441
+ (_onFieldFocusCallback = onFieldFocusCallbacks[key]) === null || _onFieldFocusCallback === void 0 || _onFieldFocusCallback.map(cb => cb());
495
442
  };
496
-
497
443
  const [focusOnRenderFields, setFocusOnRenderFields] = (0, _react.useState)([]);
498
-
499
444
  const addFocusFieldOnRender = (key, cb) => {
500
445
  setFocusOnRenderFields(state => [...state, key]);
501
446
  if (cb) addOnFieldFocusCallback(key, cb);
502
447
  };
503
-
504
448
  const removeFocusFieldOnRender = key => {
505
449
  setFocusOnRenderFields(state => state.filter(field => field !== key));
506
450
  };
507
-
508
451
  (0, _react.useEffect)(() => {
509
452
  if (FocusControllerProps.setAutoFocus && !isInitFocused && !autoFocusedField && isFormRendered) setFirstFieldFocus();
510
-
511
453
  if (focusOnRenderFields.length) {
512
454
  var _getFormFieldsKeys;
513
-
514
- (_getFormFieldsKeys = getFormFieldsKeys(form)) === null || _getFormFieldsKeys === void 0 ? void 0 : _getFormFieldsKeys.map(key => {
515
- var _getFormField3, _getFormField3$value;
516
-
517
- if (focusOnRenderFields.includes(key) && ((_getFormField3 = getFormField(key)) === null || _getFormField3 === void 0 ? void 0 : (_getFormField3$value = _getFormField3.value) === null || _getFormField3$value === void 0 ? void 0 : _getFormField3$value.length) === 0) {
455
+ (_getFormFieldsKeys = getFormFieldsKeys(form)) === null || _getFormFieldsKeys === void 0 || _getFormFieldsKeys.map(key => {
456
+ var _getFormField3;
457
+ if (focusOnRenderFields.includes(key) && ((_getFormField3 = getFormField(key)) === null || _getFormField3 === void 0 || (_getFormField3 = _getFormField3.value) === null || _getFormField3 === void 0 ? void 0 : _getFormField3.length) === 0) {
518
458
  const cb = () => {
519
459
  removeFocusFieldOnRender(key);
520
460
  callOnFieldFocusCallbacks(key);
521
461
  };
522
-
523
462
  setFieldFocus({
524
463
  key,
525
464
  form,
526
465
  cb
527
466
  });
528
467
  }
529
-
530
468
  return null;
531
469
  });
532
470
  }
@@ -536,22 +474,25 @@ function useFormTools() {
536
474
  }, [isInitFocused]);
537
475
  (0, _react.useEffect)(() => {
538
476
  resetIsInitFocused();
539
- }, [FormType]); //Remove Focus From Autocomplete field !!! TODO
477
+ }, [FormType]);
478
+
479
+ //Remove Focus From Autocomplete field !!! TODO
540
480
  // useEffect(() => {
541
481
  // if (!autoFocusedField) return null;
542
482
  // const field = getFormField(autoFocusedField);
483
+
543
484
  // if (field?.value !== '' && !field?.isValueChangedByUser) {
544
485
  // setFieldBlur({key: autoFocusedField, form});
545
486
  // }
546
487
  // }, [autoFocusedField, form]);
547
488
  //--- Fields Focus Controller ---//--- END ---//
489
+
548
490
  ///////////////////////////////////////////////////////////////
549
491
  ///////////////////////////////////////////////////////////////
550
- //--- OnFieldRendered Observer ---//--- START ---//
551
492
 
493
+ //--- OnFieldRendered Observer ---//--- START ---//
552
494
  const [onFieldRenderedObservers, setOnFieldRenderedObservers] = (0, _react.useState)({});
553
495
  const [isFieldObserversReset, setIsFieldObserversReset] = (0, _react.useState)(false);
554
-
555
496
  const resetOnFieldRenderObserversWorkedOut = () => {
556
497
  if (!isFieldObserversReset && renderFormFields.length) {
557
498
  renderFormFields.map(key => {
@@ -563,7 +504,6 @@ function useFormTools() {
563
504
  setIsFieldObserversReset(true);
564
505
  }
565
506
  };
566
-
567
507
  const addOnFieldRenderedObserver = function (key, cb) {
568
508
  let isOnceCallable = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
569
509
  let observerId = null;
@@ -579,18 +519,17 @@ function useFormTools() {
579
519
  });
580
520
  return observerId;
581
521
  };
582
-
583
522
  const updateOnFieldRenderedObserver = (key, id, data) => {
584
523
  setOnFieldRenderedObservers(state => {
585
524
  //Set Default Value
586
525
  if (!state[key]) return state;
587
- state[key][id] = { ...state[key][id],
526
+ state[key][id] = {
527
+ ...state[key][id],
588
528
  ...data
589
529
  };
590
530
  return state;
591
531
  });
592
532
  };
593
-
594
533
  const removeOnFieldRenderedObserver = (key, id) => {
595
534
  setOnFieldRenderedObservers(state => {
596
535
  //Set Default Value
@@ -599,7 +538,6 @@ function useFormTools() {
599
538
  return state;
600
539
  });
601
540
  };
602
-
603
541
  const onFieldRenderedObserver = (key, data) => {
604
542
  if (!onFieldRenderedObservers[key] || typeof onFieldRenderedObservers[key] !== "object") return;
605
543
  const Observers = onFieldRenderedObservers[key];
@@ -620,14 +558,11 @@ function useFormTools() {
620
558
  return null;
621
559
  });
622
560
  };
623
-
624
561
  const onRenderObserverWorker = () => {
625
562
  var _getFormFieldsKeys2;
626
-
627
563
  return (_getFormFieldsKeys2 = getFormFieldsKeys(form)) === null || _getFormFieldsKeys2 === void 0 ? void 0 : _getFormFieldsKeys2.map(key => {
628
564
  //OnFieldRendered
629
565
  const fieldData = getFormField(key);
630
-
631
566
  if (!(fieldData !== null && fieldData !== void 0 && fieldData.isOnRenderObserversWorkedOut)) {
632
567
  onFieldRenderedObserver(key, fieldData);
633
568
  return {
@@ -635,26 +570,28 @@ function useFormTools() {
635
570
  isWorkedOut: true
636
571
  };
637
572
  }
638
-
639
573
  return {
640
574
  key,
641
575
  isWorkedOut: false
642
576
  };
643
577
  });
644
578
  };
645
-
646
579
  (0, _react.useEffect)(() => {
647
580
  resetOnFieldRenderObserversWorkedOut();
648
581
  onRenderObserverWorker();
649
582
  }, [form]);
650
583
  (0, _react.useEffect)(() => {
651
584
  setIsFieldObserversReset(false);
652
- }, [FormType]); //--- OnFieldRendered Observer ---//--- END ---//
585
+ }, [FormType]);
586
+ //--- OnFieldRendered Observer ---//--- END ---//
587
+
653
588
  ///////////////////////////////////////////////////////////////
654
589
  ///////////////////////////////////////////////////////////////
590
+
655
591
  //Detect What Changed || TRY TO DO
656
592
  // const compare = async (prev, current) => {
657
593
  // if (!prev) return current;
594
+
658
595
  // return new Promise((resolve) => {
659
596
  // Object.keys(current).reduce((result, key, i, arr) => {
660
597
  // //If PROPERTY is NOT EXISTS BEFORE
@@ -672,20 +609,22 @@ function useFormTools() {
672
609
  // else if (prev[key] !== current[key]) {
673
610
  // result[key] = current[key];
674
611
  // }
612
+
675
613
  // if (i === arr.length-1) {
676
614
  // resolve(result);
677
615
  // }
616
+
678
617
  // return result;
679
618
  // }, {});
680
619
  // });
681
620
  // };
621
+
682
622
  ///////////////////////////////////////////////////////////////
683
623
  ///////////////////////////////////////////////////////////////
684
- //--- WindowScrollController ---//--- START ---//
685
624
 
625
+ //--- WindowScrollController ---//--- START ---//
686
626
  const scrollToField = _ref5 => {
687
627
  var _field2, _field3, _wrapperRef$current;
688
-
689
628
  let {
690
629
  key = null,
691
630
  field = null,
@@ -694,20 +633,22 @@ function useFormTools() {
694
633
  if (!key && !field) return false;
695
634
  if (!argForm) argForm = form;
696
635
  if (!field) field = getFormField(key, argForm);
697
- const wrapperRef = ((_field2 = field) === null || _field2 === void 0 ? void 0 : _field2.wrapperRef) || ((_field3 = field) === null || _field3 === void 0 ? void 0 : _field3.ref); // eslint-disable-next-line no-unsafe-optional-chaining
698
-
636
+ const wrapperRef = ((_field2 = field) === null || _field2 === void 0 ? void 0 : _field2.wrapperRef) || ((_field3 = field) === null || _field3 === void 0 ? void 0 : _field3.ref);
637
+ // eslint-disable-next-line no-unsafe-optional-chaining
699
638
  const {
700
639
  top: topOffset
701
- } = wrapperRef === null || wrapperRef === void 0 ? void 0 : (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.getBoundingClientRect();
640
+ } = wrapperRef === null || wrapperRef === void 0 || (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.getBoundingClientRect();
702
641
  const scrollTop = Math.abs(Math.abs(topOffset) - Math.abs(window.scrollY)) - 16;
703
642
  window.scrollTo({
704
643
  top: scrollTop
705
644
  });
706
- }; //--- WindowScrollController ---//--- END ---//
645
+ };
646
+
647
+ //--- WindowScrollController ---//--- END ---//
648
+
707
649
  ///////////////////////////////////////////////////////////////
708
650
  ///////////////////////////////////////////////////////////////
709
651
 
710
-
711
652
  const addErrorsToForm = function (errors) {
712
653
  let argForm = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : form;
713
654
  if (!argForm) argForm = form;
@@ -723,7 +664,6 @@ function useFormTools() {
723
664
  }, fields);
724
665
  });
725
666
  };
726
-
727
667
  return {
728
668
  FormDataDrivers,
729
669
  //OnChangeObserver
@@ -738,6 +678,7 @@ function useFormTools() {
738
678
  isFormSubmitBlocked: Boolean(formSubmitBlockers.length),
739
679
  //Property Observers
740
680
  // addPropertyObserver,
681
+
741
682
  //Render Fields
742
683
  renderFormFields,
743
684
  setRenderFormFields,