intelicoreact 1.3.21 → 1.3.22

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 (252) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +15 -23
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +15 -23
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +69 -124
  4. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +27 -36
  5. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +23 -39
  6. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +110 -246
  7. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +44 -85
  8. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +246 -414
  9. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +5 -9
  10. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +93 -165
  11. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +39 -64
  12. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +51 -132
  13. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +34 -73
  14. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +54 -75
  15. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +67 -110
  16. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +33 -83
  17. package/dist/Atomic/FormElements/Input/Input.js +161 -253
  18. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +48 -102
  19. package/dist/Atomic/FormElements/InputColor/InputColor.js +27 -40
  20. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +28 -58
  21. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +108 -176
  22. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +32 -57
  23. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +184 -302
  24. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +85 -157
  25. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +11 -16
  26. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +76 -193
  27. package/dist/Atomic/FormElements/InputLink/InputLink.js +34 -58
  28. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +8 -12
  29. package/dist/Atomic/FormElements/InputMask/InputMask.js +554 -964
  30. package/dist/Atomic/FormElements/InputMask/config.js +1 -1
  31. package/dist/Atomic/FormElements/InputMask/functions.js +17 -43
  32. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +268 -404
  33. package/dist/Atomic/FormElements/InputMask2/config.js +1 -1
  34. package/dist/Atomic/FormElements/InputMask2/functions.js +17 -43
  35. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +300 -460
  36. package/dist/Atomic/FormElements/InputMask3/config.js +1 -1
  37. package/dist/Atomic/FormElements/InputMask3/functions.js +17 -43
  38. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +53 -113
  39. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +64 -118
  40. package/dist/Atomic/FormElements/Label/Label.js +13 -23
  41. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +217 -349
  42. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +25 -47
  43. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +133 -207
  44. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +29 -61
  45. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +20 -42
  46. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +22 -33
  47. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +20 -43
  48. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +54 -101
  49. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +59 -102
  50. package/dist/Atomic/FormElements/RangeList/RangeList.js +89 -150
  51. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +23 -29
  52. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +135 -300
  53. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +381 -571
  54. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +14 -24
  55. package/dist/Atomic/FormElements/Switcher/Switcher.js +24 -29
  56. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +25 -47
  57. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +20 -32
  58. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +32 -55
  59. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +22 -42
  60. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +23 -33
  61. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +51 -120
  62. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +2 -3
  63. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +23 -46
  64. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +260 -413
  65. package/dist/Atomic/FormElements/Text/Text.js +47 -53
  66. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +21 -31
  67. package/dist/Atomic/FormElements/Textarea/Textarea.js +16 -27
  68. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +68 -128
  69. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +25 -36
  70. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +33 -70
  71. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +58 -124
  72. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +48 -80
  73. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +32 -42
  74. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +40 -60
  75. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +2 -3
  76. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +50 -69
  77. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
  78. package/dist/Atomic/Layout/Header/Header.js +21 -48
  79. package/dist/Atomic/Layout/MainMenu/MainMenu.js +36 -79
  80. package/dist/Atomic/Layout/Spinner/Spinner.js +8 -14
  81. package/dist/Atomic/UI/Accordion/Accordion.js +18 -48
  82. package/dist/Atomic/UI/Accordion/AccordionItem.js +35 -60
  83. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +49 -106
  84. package/dist/Atomic/UI/AccordionText/AccordionText.js +13 -37
  85. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +48 -94
  86. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +22 -50
  87. package/dist/Atomic/UI/Alert/Alert.js +20 -44
  88. package/dist/Atomic/UI/Arrow/Arrow.js +15 -35
  89. package/dist/Atomic/UI/Box/Box.js +14 -21
  90. package/dist/Atomic/UI/Button/Button.js +26 -35
  91. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +22 -31
  92. package/dist/Atomic/UI/Chart/Chart.js +45 -86
  93. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +14 -24
  94. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +13 -22
  95. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +68 -113
  96. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +158 -140
  97. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +26 -42
  98. package/dist/Atomic/UI/Chart/partial/utils.js +20 -48
  99. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +22 -42
  100. package/dist/Atomic/UI/DateTime/DateTime.js +23 -38
  101. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +12 -36
  102. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +5 -21
  103. package/dist/Atomic/UI/DoubleString/DoubleString.js +27 -50
  104. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +15 -63
  105. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +62 -157
  106. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +47 -110
  107. package/dist/Atomic/UI/Hint/Hint.js +49 -94
  108. package/dist/Atomic/UI/Modal/Modal.js +149 -179
  109. package/dist/Atomic/UI/Modal/ModalHOC.js +12 -21
  110. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +7 -12
  111. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +17 -21
  112. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +98 -160
  113. package/dist/Atomic/UI/ModalBackup/Modal.js +65 -90
  114. package/dist/Atomic/UI/ModalBackup/ModalHOC.js +12 -21
  115. package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +6 -11
  116. package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +15 -19
  117. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +32 -62
  118. package/dist/Atomic/UI/NavLine/NavLine.js +120 -211
  119. package/dist/Atomic/UI/NavLine/Tabs.js +2 -3
  120. package/dist/Atomic/UI/PageTitle/PageTitle.js +13 -17
  121. package/dist/Atomic/UI/PieChart/PieChart.js +11 -21
  122. package/dist/Atomic/UI/Price/Price.js +10 -13
  123. package/dist/Atomic/UI/PriceRange/PriceRange.js +7 -11
  124. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +27 -56
  125. package/dist/Atomic/UI/Status/Status.js +19 -30
  126. package/dist/Atomic/UI/Table/Partials/TdCell.js +28 -71
  127. package/dist/Atomic/UI/Table/Partials/TdHeader.js +7 -16
  128. package/dist/Atomic/UI/Table/Partials/TdRow.js +29 -65
  129. package/dist/Atomic/UI/Table/Partials/TdTitle.js +16 -40
  130. package/dist/Atomic/UI/Table/Table.js +27 -47
  131. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +18 -48
  132. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +9 -19
  133. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +5 -8
  134. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +25 -47
  135. package/dist/Atomic/UI/Tag/Tag.js +20 -48
  136. package/dist/Atomic/UI/TagList/TagList.js +80 -150
  137. package/dist/Atomic/UI/UserBox/UserBox.js +14 -26
  138. package/dist/Classes/AbortableFetch.js +283 -422
  139. package/dist/Classes/AnimatedHandler.js +44 -56
  140. package/dist/Classes/RESTAPI/index.js +154 -433
  141. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +290 -428
  142. package/dist/Classes/RESTAPI/partials/ApiBase.js +24 -67
  143. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +57 -275
  144. package/dist/Classes/RESTAPI/partials/ApiUtils.js +146 -377
  145. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +155 -403
  146. package/dist/Classes/RESTAPI/partials/Utils.js +81 -135
  147. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +2 -6
  148. package/dist/Classes/RESTAPI/partials/_utils.js +101 -395
  149. package/dist/Constants/index.constants.js +8 -15
  150. package/dist/Functions/Portal.js +14 -33
  151. package/dist/Functions/customEventListener.js +5 -20
  152. package/dist/Functions/fieldValueFormatters.js +148 -211
  153. package/dist/Functions/hooks/useFormFieldsChangesManager.js +75 -137
  154. package/dist/Functions/locale/createTranslator.js +13 -27
  155. package/dist/Functions/operations.js +35 -49
  156. package/dist/Functions/presets/inputMaskPresets.js +25 -27
  157. package/dist/Functions/presets/inputPresets.js +19 -22
  158. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +7 -9
  159. package/dist/Functions/schemas.js +6 -15
  160. package/dist/Functions/useClickOutside.js +3 -7
  161. package/dist/Functions/useDebounce.js +11 -25
  162. package/dist/Functions/useFieldFocus.js +42 -67
  163. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +35 -54
  164. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +74 -95
  165. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +55 -91
  166. package/dist/Functions/useFormTools/functions/General.js +80 -99
  167. package/dist/Functions/useFormTools/functions/RenderFields.js +45 -72
  168. package/dist/Functions/useFormTools/functions/usePrevious.js +3 -7
  169. package/dist/Functions/useFormTools/index.js +382 -598
  170. package/dist/Functions/useInputHighlightError.js +27 -52
  171. package/dist/Functions/useIsMobile.js +13 -36
  172. package/dist/Functions/useLocalStorage.js +7 -22
  173. package/dist/Functions/useLocationParams.js +16 -27
  174. package/dist/Functions/useMetaInfo.js +19 -50
  175. package/dist/Functions/useMouseUpOutside.js +2 -5
  176. package/dist/Functions/useOnlineStatus.js +7 -26
  177. package/dist/Functions/usePasswordChecker.js +42 -77
  178. package/dist/Functions/usePrevious.js +3 -7
  179. package/dist/Functions/useResize.js +12 -32
  180. package/dist/Functions/useScrollTo.js +6 -20
  181. package/dist/Functions/useToggle.js +10 -30
  182. package/dist/Functions/utils.js +186 -366
  183. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +21 -32
  184. package/dist/Molecular/CustomIcons/components/AlertCircle.js +21 -32
  185. package/dist/Molecular/CustomIcons/components/AppStore.js +25 -36
  186. package/dist/Molecular/CustomIcons/components/Arrow.js +31 -42
  187. package/dist/Molecular/CustomIcons/components/ArrowDown.js +13 -24
  188. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +16 -27
  189. package/dist/Molecular/CustomIcons/components/ArrowRight.js +16 -27
  190. package/dist/Molecular/CustomIcons/components/ArrowUp.js +13 -24
  191. package/dist/Molecular/CustomIcons/components/Bell.js +11 -22
  192. package/dist/Molecular/CustomIcons/components/Button.js +11 -22
  193. package/dist/Molecular/CustomIcons/components/Campaigns.js +12 -23
  194. package/dist/Molecular/CustomIcons/components/Check.js +12 -23
  195. package/dist/Molecular/CustomIcons/components/Check2.js +11 -22
  196. package/dist/Molecular/CustomIcons/components/ChevronDown.js +11 -22
  197. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +11 -22
  198. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +11 -22
  199. package/dist/Molecular/CustomIcons/components/ChevronRight.js +11 -22
  200. package/dist/Molecular/CustomIcons/components/ChevronUp.js +11 -22
  201. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +26 -37
  202. package/dist/Molecular/CustomIcons/components/Close.js +13 -24
  203. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +38 -49
  204. package/dist/Molecular/CustomIcons/components/Delete.js +12 -23
  205. package/dist/Molecular/CustomIcons/components/Edit.js +11 -22
  206. package/dist/Molecular/CustomIcons/components/Email.js +29 -40
  207. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +19 -30
  208. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +27 -38
  209. package/dist/Molecular/CustomIcons/components/Flows.js +11 -22
  210. package/dist/Molecular/CustomIcons/components/Gift.js +16 -27
  211. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +25 -36
  212. package/dist/Molecular/CustomIcons/components/GooglePlay.js +25 -36
  213. package/dist/Molecular/CustomIcons/components/HelpCircle.js +14 -25
  214. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +15 -26
  215. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +14 -25
  216. package/dist/Molecular/CustomIcons/components/Home.js +14 -25
  217. package/dist/Molecular/CustomIcons/components/Home2.js +17 -28
  218. package/dist/Molecular/CustomIcons/components/Key.js +19 -30
  219. package/dist/Molecular/CustomIcons/components/Landers.js +15 -26
  220. package/dist/Molecular/CustomIcons/components/Lock.js +11 -22
  221. package/dist/Molecular/CustomIcons/components/Mail.js +19 -30
  222. package/dist/Molecular/CustomIcons/components/Mastercard.js +61 -72
  223. package/dist/Molecular/CustomIcons/components/Minus.js +24 -35
  224. package/dist/Molecular/CustomIcons/components/Offers.js +12 -23
  225. package/dist/Molecular/CustomIcons/components/Pause.js +24 -35
  226. package/dist/Molecular/CustomIcons/components/PayPal.js +38 -49
  227. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +25 -36
  228. package/dist/Molecular/CustomIcons/components/Phone.js +26 -37
  229. package/dist/Molecular/CustomIcons/components/Play.js +24 -35
  230. package/dist/Molecular/CustomIcons/components/Plus.js +24 -35
  231. package/dist/Molecular/CustomIcons/components/Profile.js +16 -27
  232. package/dist/Molecular/CustomIcons/components/QRCode.js +26 -37
  233. package/dist/Molecular/CustomIcons/components/Rectangle.js +11 -22
  234. package/dist/Molecular/CustomIcons/components/Revert.js +14 -25
  235. package/dist/Molecular/CustomIcons/components/Star.js +10 -21
  236. package/dist/Molecular/CustomIcons/components/Star2.js +12 -23
  237. package/dist/Molecular/CustomIcons/components/TrafficSources.js +14 -25
  238. package/dist/Molecular/CustomIcons/components/Trash.js +11 -22
  239. package/dist/Molecular/CustomIcons/components/TrashRed.js +11 -22
  240. package/dist/Molecular/CustomIcons/components/Triggers.js +11 -22
  241. package/dist/Molecular/CustomIcons/components/User.js +16 -27
  242. package/dist/Molecular/CustomIcons/components/Visa.js +27 -38
  243. package/dist/Molecular/CustomIcons/components/X.js +11 -22
  244. package/dist/Molecular/CustomIcons/index.js +61 -183
  245. package/dist/Molecular/FormElement/FormElement.js +18 -27
  246. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +95 -112
  247. package/dist/Molecular/FormWithDependOn/partials/_utils.js +35 -34
  248. package/dist/Molecular/InputAddress/InputAddress.js +176 -312
  249. package/dist/Molecular/InputPassword/InputPassword.js +15 -39
  250. package/dist/index.js +1 -3
  251. package/package.json +1 -1
  252. package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +0 -91
@@ -1,68 +1,40 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof3 = require("@babel/runtime/helpers/typeof");
6
-
7
4
  Object.defineProperty(exports, "__esModule", {
8
5
  value: true
9
6
  });
10
7
  exports.default = useFormTools;
11
-
12
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
-
14
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
-
16
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
17
-
18
- var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
19
-
20
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
21
-
22
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
8
  var _react = _interopRequireWildcard(require("react"));
25
-
26
- var _General2 = _interopRequireDefault(require("./functions/General"));
27
-
9
+ var _General = _interopRequireDefault(require("./functions/General"));
28
10
  var _ArrayWithObjects = _interopRequireDefault(require("./form-drivers/ArrayWithObjects"));
29
-
30
11
  var _ObjectWithIterableObjects = _interopRequireDefault(require("./form-drivers/ObjectWithIterableObjects"));
31
-
32
12
  var _ObjectWithNamedKeyObjects = _interopRequireDefault(require("./form-drivers/ObjectWithNamedKeyObjects"));
33
-
34
13
  var _RenderFields = _interopRequireDefault(require("./functions/RenderFields"));
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
+ // eslint-disable-next-line no-unused-vars
35
17
 
36
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
-
38
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
-
40
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
41
-
42
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
43
-
44
- var DefaultFocusControllerProps = {
18
+ const DefaultFocusControllerProps = {
45
19
  setAutoFocus: true,
46
20
  onlyEmptyFieldAutoFocus: false
47
21
  };
48
-
49
22
  function useFormTools() {
50
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
51
- form = _ref.form,
52
- setForm = _ref.setForm,
53
- FormType = _ref.FormType,
54
- FormFields = _ref.FormFields,
55
- _ref$FormDataDriverNa = _ref.FormDataDriverName,
56
- FormDataDriverName = _ref$FormDataDriverNa === void 0 ? 'ArrayWithObjects' || 'ObjectWithIterableObjects' || 'ObjectWithNamedKeyObjects' : _ref$FormDataDriverNa,
57
- _ref$FormDataDriver = _ref.FormDataDriver,
58
- FormDataDriver = _ref$FormDataDriver === void 0 ? null : _ref$FormDataDriver,
59
- _ref$FocusControllerP = _ref.FocusControllerProps,
60
- FocusControllerProps = _ref$FocusControllerP === void 0 ? DefaultFocusControllerProps : _ref$FocusControllerP,
61
- _ref$goToNextFieldOnE = _ref.goToNextFieldOnEnterPressed,
62
- goToNextFieldOnEnterPressed = _ref$goToNextFieldOnE === void 0 ? true : _ref$goToNextFieldOnE;
63
-
64
- FocusControllerProps = _objectSpread(_objectSpread({}, DefaultFocusControllerProps), FocusControllerProps);
65
- var FormDataDrivers = {
23
+ let {
24
+ form,
25
+ setForm,
26
+ FormType,
27
+ FormFields,
28
+ FormDataDriverName = 'ArrayWithObjects' || 'ObjectWithIterableObjects' || 'ObjectWithNamedKeyObjects',
29
+ FormDataDriver = null,
30
+ FocusControllerProps = DefaultFocusControllerProps,
31
+ goToNextFieldOnEnterPressed = true
32
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
33
+ FocusControllerProps = {
34
+ ...DefaultFocusControllerProps,
35
+ ...FocusControllerProps
36
+ };
37
+ const FormDataDrivers = {
66
38
  ArrayWithObjects: {
67
39
  handlers: _ArrayWithObjects.default,
68
40
  default: true
@@ -74,54 +46,42 @@ function useFormTools() {
74
46
  handlers: _ObjectWithNamedKeyObjects.default
75
47
  }
76
48
  };
77
-
78
- var getFormDataDriver = function getFormDataDriver(name) {
49
+ const getFormDataDriver = name => {
79
50
  var _FormDataDrivers$name, _Object$values$find;
80
-
81
- return FormDataDriver || ((_FormDataDrivers$name = FormDataDrivers[name]) === null || _FormDataDrivers$name === void 0 ? void 0 : _FormDataDrivers$name.handlers) || ((_Object$values$find = Object.values(FormDataDrivers).find(function (df) {
82
- return df.default === true;
83
- })) === null || _Object$values$find === void 0 ? void 0 : _Object$values$find.handlers) || function () {
84
- return {};
85
- };
51
+ 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) || (() => ({}));
86
52
  };
87
-
88
- var getFormDataDriverInstance = function getFormDataDriverInstance(name) {
53
+ const getFormDataDriverInstance = function (name) {
89
54
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
90
55
  args[_key - 1] = arguments[_key];
91
56
  }
57
+ return getFormDataDriver(name)(...args);
58
+ };
59
+ const {
60
+ getFieldClassName,
61
+ updateFormField
62
+ } = (0, _General.default)();
63
+ const {
64
+ getFieldData,
65
+ getFormField,
66
+ setFormFields,
67
+ setFormField,
68
+ getFormFieldsAsArray,
69
+ getFormFieldsKeys,
70
+ removeAllFormFields,
71
+ removeFormField,
72
+ removeFormFields
73
+ } = getFormDataDriverInstance(FormDataDriverName, {
74
+ form,
75
+ setForm,
76
+ FormFields
77
+ });
92
78
 
93
- return getFormDataDriver(name).apply(void 0, args);
94
- };
95
-
96
- var _General = (0, _General2.default)(),
97
- getFieldClassName = _General.getFieldClassName,
98
- updateFormField = _General.updateFormField;
99
-
100
- var _getFormDataDriverIns = getFormDataDriverInstance(FormDataDriverName, {
101
- form: form,
102
- setForm: setForm,
103
- FormFields: FormFields
104
- }),
105
- getFieldData = _getFormDataDriverIns.getFieldData,
106
- getFormField = _getFormDataDriverIns.getFormField,
107
- setFormFields = _getFormDataDriverIns.setFormFields,
108
- _setFormField = _getFormDataDriverIns.setFormField,
109
- getFormFieldsAsArray = _getFormDataDriverIns.getFormFieldsAsArray,
110
- getFormFieldsKeys = _getFormDataDriverIns.getFormFieldsKeys,
111
- removeAllFormFields = _getFormDataDriverIns.removeAllFormFields,
112
- removeFormField = _getFormDataDriverIns.removeFormField,
113
- removeFormFields = _getFormDataDriverIns.removeFormFields; ///////////////////////////////////////////////////////////////
79
+ ///////////////////////////////////////////////////////////////
114
80
  //--- OnChange Observer ---//--- START ---//
115
-
116
-
117
- var _useState = (0, _react.useState)({}),
118
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
119
- onChangeObservers = _useState2[0],
120
- setOnChangeObservers = _useState2[1];
121
-
122
- var addOnChangeObserver = function addOnChangeObserver(key, cb) {
123
- var observerId = null;
124
- setOnChangeObservers(function (state) {
81
+ const [onChangeObservers, setOnChangeObservers] = (0, _react.useState)({});
82
+ const addOnChangeObserver = (key, cb) => {
83
+ let observerId = null;
84
+ setOnChangeObservers(state => {
125
85
  //Set Default Value
126
86
  if (!state[key]) state[key] = {};
127
87
  observerId = state[key].length;
@@ -130,261 +90,161 @@ function useFormTools() {
130
90
  });
131
91
  return observerId;
132
92
  };
133
-
134
- var removeOnChangeObserver = function removeOnChangeObserver(key, id) {
135
- setOnChangeObservers(function (state) {
93
+ const removeOnChangeObserver = (key, id) => {
94
+ setOnChangeObservers(state => {
136
95
  //Set Default Value
137
96
  if (!state[key]) return state;
138
- state[key] = Object.keys(state).filter(function (cbId) {
139
- return cbId !== id;
140
- }).map(function (cbId) {
141
- return state[key][cbId];
142
- });
97
+ state[key] = Object.keys(state).filter(cbId => cbId !== id).map(cbId => state[key][cbId]);
143
98
  return state;
144
99
  });
145
100
  };
146
-
147
- var onChangeObserver = function onChangeObserver(key, value) {
148
- if (!onChangeObservers[key] || (0, _typeof2.default)(onChangeObservers[key]) !== 'object') return;
149
- var Observers = onChangeObservers[key];
150
- Object.values(Observers).map(function (cb) {
101
+ const onChangeObserver = (key, value) => {
102
+ if (!onChangeObservers[key] || typeof onChangeObservers[key] !== 'object') return;
103
+ const Observers = onChangeObservers[key];
104
+ Object.values(Observers).map(cb => {
151
105
  cb({
152
- value: value,
153
- form: form
106
+ value,
107
+ form
154
108
  });
155
109
  return null;
156
110
  });
157
111
  };
158
-
159
- var onFieldChange = function onFieldChange(key, value) {
112
+ const onFieldChange = (key, value) => {
160
113
  var _getFormField;
161
-
162
114
  if (value === ((_getFormField = getFormField(key)) === null || _getFormField === void 0 ? void 0 : _getFormField.value)) return false;
163
115
  onChangeObserver(key, value);
116
+ setFormField(field => ({
117
+ ...field,
118
+ error: '',
119
+ value
120
+ }), key);
121
+ };
122
+ //--- OnChange Observer ---//--- END ---//
164
123
 
165
- _setFormField(function (field) {
166
- return _objectSpread(_objectSpread({}, field), {}, {
167
- error: '',
168
- value: value
169
- });
170
- }, key);
171
- }; //--- OnChange Observer ---//--- END ---//
172
124
  ///////////////////////////////////////////////////////////////
173
125
  ///////////////////////////////////////////////////////////////
174
- //--- Form Submit Blocker ---//--- START ---//
175
126
 
176
-
177
- var _useState3 = (0, _react.useState)([]),
178
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
179
- formSubmitBlockers = _useState4[0],
180
- setFormSubmitBlockers = _useState4[1];
181
-
182
- var toggleFormSubmitBlock = function toggleFormSubmitBlock(key, value) {
183
- setFormSubmitBlockers(function (state) {
184
- return state.includes(key) || !value ? (0, _toConsumableArray2.default)(state.filter(function (k) {
185
- return k !== key;
186
- })) : [].concat((0, _toConsumableArray2.default)(state), [key]);
187
- });
127
+ //--- Form Submit Blocker ---//--- START ---//
128
+ const [formSubmitBlockers, setFormSubmitBlockers] = (0, _react.useState)([]);
129
+ const toggleFormSubmitBlock = (key, value) => {
130
+ setFormSubmitBlockers(state => state.includes(key) || !value ? [...state.filter(k => k !== key)] : [...state, key]);
188
131
  };
132
+ const clearFormSubmitBlockers = () => setFormSubmitBlockers([]);
133
+ //--- Form Submit Blocker ---//--- END ---//
189
134
 
190
- var clearFormSubmitBlockers = function clearFormSubmitBlockers() {
191
- return setFormSubmitBlockers([]);
192
- }; //--- Form Submit Blocker ---//--- END ---//
193
135
  ///////////////////////////////////////////////////////////////
194
136
  ///////////////////////////////////////////////////////////////
137
+
195
138
  //--- Property Observer Blocker ---//--- START ---//
196
139
  // const [propertyObservers, setPropertyObservers] = useState({});
197
140
  // function addPropertyObserver () {
198
141
  // };
199
142
  //--- Property Observer Blocker ---//--- END ---//
143
+
200
144
  ///////////////////////////////////////////////////////////////
201
145
  ///////////////////////////////////////////////////////////////
202
- //--- Render Fields Controller ---//--- START ---//
203
-
204
-
205
- var _useState5 = (0, _react.useState)(false),
206
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
207
- isFormFieldsAdded = _useState6[0],
208
- setIsFormFieldsAdded = _useState6[1];
209
-
210
- var _useState7 = (0, _react.useState)([]),
211
- _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
212
- renderFormFields = _useState8[0],
213
- setRenderFormFieldsState = _useState8[1];
214
-
215
- var setRenderFormFields = function setRenderFormFields(data) {
216
- setIsFormFieldsAdded(true); // eslint-disable-next-line no-use-before-define
217
-
218
- removeRenderFields(renderFormFields); // eslint-disable-next-line no-use-before-define
219
146
 
147
+ //--- Render Fields Controller ---//--- START ---//
148
+ const [isFormFieldsAdded, setIsFormFieldsAdded] = (0, _react.useState)(false);
149
+ const [renderFormFields, setRenderFormFieldsState] = (0, _react.useState)([]);
150
+ const setRenderFormFields = data => {
151
+ setIsFormFieldsAdded(true);
152
+ // eslint-disable-next-line no-use-before-define
153
+ removeRenderFields(renderFormFields);
154
+ // eslint-disable-next-line no-use-before-define
220
155
  resetIsInitFocused();
221
156
  setRenderFormFieldsState(data);
222
157
  };
223
-
224
- var addRenderFields = function addRenderFields(fields) {
225
- setRenderFormFieldsState(function (state) {
226
- return [].concat((0, _toConsumableArray2.default)(state), (0, _toConsumableArray2.default)(fields));
227
- });
228
- };
229
-
230
- var removeRenderFields = function removeRenderFields(fields) {
231
- setRenderFormFieldsState(function (state) {
232
- return state.filter(function (field) {
233
- return !fields.includes(field);
158
+ const addRenderFields = fields => {
159
+ setRenderFormFieldsState(state => [...state, ...fields]);
160
+ };
161
+ const removeRenderFields = fields => {
162
+ setRenderFormFieldsState(state => state.filter(field => !fields.includes(field)));
163
+ };
164
+ const [isFormRendered, setIsFormRendered] = (0, _react.useState)(false);
165
+ const submitIsFormRendered = () => setIsFormRendered(true);
166
+ const resetIsFormRendered = () => setIsFormRendered(false);
167
+ const onEnterDown = async e => {
168
+ if (!goToNextFieldOnEnterPressed) return false;
169
+ const focusable = document.querySelectorAll('a, button, input, [tabindex]:not([tabindex="-1"])');
170
+ const currentIndex = await new Promise(resolve => {
171
+ focusable.forEach((node, i) => {
172
+ if (node === e.target) resolve(i);
234
173
  });
235
174
  });
175
+ if (!currentIndex) return false;
176
+ const nextIndex = currentIndex + 1;
177
+ if (nextIndex >= focusable.length) return false;
178
+ const nextItem = focusable[nextIndex];
179
+ nextItem.focus();
236
180
  };
237
-
238
- var _useState9 = (0, _react.useState)(false),
239
- _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
240
- isFormRendered = _useState10[0],
241
- setIsFormRendered = _useState10[1];
242
-
243
- var submitIsFormRendered = function submitIsFormRendered() {
244
- return setIsFormRendered(true);
245
- };
246
-
247
- var resetIsFormRendered = function resetIsFormRendered() {
248
- return setIsFormRendered(false);
249
- };
250
-
251
- var onEnterDown = /*#__PURE__*/function () {
252
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(e) {
253
- var focusable, currentIndex, nextIndex, nextItem;
254
- return _regenerator.default.wrap(function _callee$(_context) {
255
- while (1) {
256
- switch (_context.prev = _context.next) {
257
- case 0:
258
- if (goToNextFieldOnEnterPressed) {
259
- _context.next = 2;
260
- break;
261
- }
262
-
263
- return _context.abrupt("return", false);
264
-
265
- case 2:
266
- focusable = document.querySelectorAll('a, button, input, [tabindex]:not([tabindex="-1"])');
267
- _context.next = 5;
268
- return new Promise(function (resolve) {
269
- focusable.forEach(function (node, i) {
270
- if (node === e.target) resolve(i);
271
- });
272
- });
273
-
274
- case 5:
275
- currentIndex = _context.sent;
276
-
277
- if (currentIndex) {
278
- _context.next = 8;
279
- break;
280
- }
281
-
282
- return _context.abrupt("return", false);
283
-
284
- case 8:
285
- nextIndex = currentIndex + 1;
286
-
287
- if (!(nextIndex >= focusable.length)) {
288
- _context.next = 11;
289
- break;
290
- }
291
-
292
- return _context.abrupt("return", false);
293
-
294
- case 11:
295
- nextItem = focusable[nextIndex];
296
- nextItem.focus();
297
-
298
- case 13:
299
- case "end":
300
- return _context.stop();
301
- }
302
- }
303
- }, _callee);
304
- }));
305
-
306
- return function onEnterDown(_x) {
307
- return _ref2.apply(this, arguments);
308
- };
309
- }();
310
-
311
- var onKeyDown = function onKeyDown() {
181
+ const onKeyDown = function () {
312
182
  for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
313
183
  args[_key2] = arguments[_key2];
314
184
  }
315
-
316
- var event = args.reduce(function (e, item) {
185
+ const event = args.reduce((e, item) => {
317
186
  if ((item === null || item === void 0 ? void 0 : item.nativeEvent) instanceof KeyboardEvent) return item;
318
187
  return e;
319
188
  }, null);
320
189
  if (!event) return false;
321
- var keyCode = event.keyCode;
322
-
190
+ const {
191
+ keyCode
192
+ } = event;
323
193
  switch (keyCode) {
324
194
  //OnEnterDown
325
195
  case 13:
326
196
  onEnterDown(event);
327
197
  break;
328
-
329
198
  default:
330
199
  break;
331
200
  }
332
- }; //On Type Change
333
-
201
+ };
334
202
 
335
- (0, _react.useEffect)(function () {
203
+ //On Type Change
204
+ (0, _react.useEffect)(() => {
336
205
  resetIsFormRendered();
337
- }, [FormType]); //On Render Fields Change
206
+ }, [FormType]);
338
207
 
339
- (0, _react.useEffect)(function () {
340
- if (isFormFieldsAdded) resetIsFormRendered(false); //Add Form Fields
208
+ //On Render Fields Change
209
+ (0, _react.useEffect)(() => {
210
+ if (isFormFieldsAdded) resetIsFormRendered(false);
341
211
 
212
+ //Add Form Fields
342
213
  if (renderFormFields.length !== 0) {
343
- setFormFields(function (fields) {
344
- return renderFormFields.reduce(function (result, key) {
214
+ setFormFields(fields => {
215
+ return renderFormFields.reduce((result, key) => {
345
216
  var _field$className;
346
-
347
- var fieldData = getFieldData(key);
348
- var field = !getFormField(key) ? fieldData : getFormField(key);
349
-
350
- 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
+ const fieldData = getFieldData(key);
218
+ let field = !getFormField(key) ? fieldData : getFormField(key);
219
+ 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) {
351
220
  field.className = "".concat(field === null || field === void 0 ? void 0 : field.className, " ").concat(getFieldClassName(key, FormType));
352
221
  }
353
-
354
- if ((0, _typeof2.default)(fieldData === null || fieldData === void 0 ? void 0 : fieldData.label) === 'object') {
222
+ if (typeof (fieldData === null || fieldData === void 0 ? void 0 : fieldData.label) === 'object') {
355
223
  field.label = fieldData.label[FormType] || fieldData.label.default;
356
224
  }
357
-
358
225
  field.ref = /*#__PURE__*/(0, _react.createRef)();
359
226
  field.wrapperRef = /*#__PURE__*/(0, _react.createRef)();
360
227
  field.isValueChangedByUser = false;
361
-
362
228
  if (goToNextFieldOnEnterPressed) {
363
- var onKeyDownProp = field.onKeyDown || function () {};
364
-
229
+ const onKeyDownProp = field.onKeyDown || (() => {});
365
230
  field.onKeyDown = function () {
366
- onKeyDown.apply(void 0, arguments);
367
- onKeyDownProp.apply(void 0, arguments);
368
- };
369
- } //Is Field Value Changed By USER
370
- // eslint-disable-next-line no-use-before-define
371
-
372
-
373
- addOnFieldRenderedObserver(key, function () {
374
- var _getFormField2, _getFormField2$ref, _getFormField2$ref$cu;
375
-
376
- var 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');
377
-
378
- var handler = function handler() {
379
- return _setFormField({
380
- isValueChangedByUser: true
381
- }, key);
231
+ onKeyDown(...arguments);
232
+ onKeyDownProp(...arguments);
382
233
  };
234
+ }
383
235
 
384
- element === null || element === void 0 ? void 0 : element.addEventListener('paste', handler, {
236
+ //Is Field Value Changed By USER
237
+ // eslint-disable-next-line no-use-before-define
238
+ addOnFieldRenderedObserver(key, () => {
239
+ var _getFormField2;
240
+ 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');
241
+ const handler = () => setFormField({
242
+ isValueChangedByUser: true
243
+ }, key);
244
+ element === null || element === void 0 || element.addEventListener('paste', handler, {
385
245
  once: true
386
246
  });
387
- element === null || element === void 0 ? void 0 : element.addEventListener('keypress', handler, {
247
+ element === null || element === void 0 || element.addEventListener('keypress', handler, {
388
248
  once: true
389
249
  });
390
250
  }, true);
@@ -393,53 +253,40 @@ function useFormTools() {
393
253
  });
394
254
  }
395
255
  }, [renderFormFields]);
396
-
397
- var _useState11 = (0, _react.useState)([]),
398
- _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
399
- onFormRenderObservers = _useState12[0],
400
- setOnFormRenderObservers = _useState12[1];
401
-
402
- var addOnFormRenderObserver = function addOnFormRenderObserver(cb) {
403
- var _ref3 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
404
- _ref3$once = _ref3.once,
405
- once = _ref3$once === void 0 ? false : _ref3$once;
406
-
407
- setOnFormRenderObservers(function (state) {
408
- return [].concat((0, _toConsumableArray2.default)(state), [{
409
- cb: cb,
410
- once: once,
411
- isWorkedOut: false
412
- }]);
413
- });
414
- }; // eslint-disable-next-line no-unused-vars
415
-
416
-
417
- var updateOnFormRenderObserver = function updateOnFormRenderObserver(key, data) {
418
- setOnFormRenderObservers(function (state) {
419
- var copy = (0, _toConsumableArray2.default)(state);
420
- copy[key] = _objectSpread(_objectSpread({}, state[key]), data);
256
+ const [onFormRenderObservers, setOnFormRenderObservers] = (0, _react.useState)([]);
257
+ const addOnFormRenderObserver = function (cb) {
258
+ let {
259
+ once = false
260
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
261
+ setOnFormRenderObservers(state => [...state, {
262
+ cb,
263
+ once,
264
+ isWorkedOut: false
265
+ }]);
266
+ };
267
+ // eslint-disable-next-line no-unused-vars
268
+ const updateOnFormRenderObserver = (key, data) => {
269
+ setOnFormRenderObservers(state => {
270
+ const copy = [...state];
271
+ copy[key] = {
272
+ ...state[key],
273
+ ...data
274
+ };
421
275
  return copy;
422
276
  });
423
277
  };
424
-
425
- var removeOnFormRenderObserver = function removeOnFormRenderObserver(key) {
426
- setOnFormRenderObservers(function (state) {
427
- return state.slice().filter(function (v, i) {
428
- return i !== key;
429
- });
430
- });
278
+ const removeOnFormRenderObserver = key => {
279
+ setOnFormRenderObservers(state => state.slice().filter((v, i) => i !== key));
431
280
  };
432
-
433
- var onFormRenderWorker = function onFormRenderWorker() {
281
+ const onFormRenderWorker = () => {
434
282
  // eslint-disable-next-line default-param-last
435
283
  onFormRenderObservers.map(function () {
436
- var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
437
- once = _ref4.once,
438
- isWorkedOut = _ref4.isWorkedOut,
439
- _ref4$cb = _ref4.cb,
440
- cb = _ref4$cb === void 0 ? function () {} : _ref4$cb;
441
-
442
- var key = arguments.length > 1 ? arguments[1] : undefined;
284
+ let {
285
+ once,
286
+ isWorkedOut,
287
+ cb = () => {}
288
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
289
+ let key = arguments.length > 1 ? arguments[1] : undefined;
443
290
  if (once && isWorkedOut) return null;
444
291
  cb(form);
445
292
  if (once) removeOnFormRenderObserver(key);else updateOnFormRenderObserver(key, {
@@ -447,330 +294,265 @@ function useFormTools() {
447
294
  });
448
295
  return null;
449
296
  });
450
- }; //On Form Rendered
451
-
297
+ };
452
298
 
453
- (0, _react.useEffect)(function () {
299
+ //On Form Rendered
300
+ (0, _react.useEffect)(() => {
454
301
  if (!isFormRendered && onFormRenderObservers.length) {
455
- var formFieldsKeys = getFormFieldsKeys(form);
456
- var isAllFieldsRendered = renderFormFields.reduce(function (result, key) {
302
+ const formFieldsKeys = getFormFieldsKeys(form);
303
+ const isAllFieldsRendered = renderFormFields.reduce((result, key) => {
457
304
  if (!formFieldsKeys.includes(key)) result = false;
458
305
  return result;
459
306
  }, true);
460
-
461
307
  if (isAllFieldsRendered) {
462
308
  submitIsFormRendered(true);
463
309
  onFormRenderWorker();
464
310
  }
465
311
  }
466
- }, [form, renderFormFields, onFormRenderObservers]); //--- Render Fields Controller ---//--- END ---//
312
+ }, [form, renderFormFields, onFormRenderObservers]);
313
+ //--- Render Fields Controller ---//--- END ---//
314
+
467
315
  ///////////////////////////////////////////////////////////////
468
316
  ///////////////////////////////////////////////////////////////
469
- //--- HIGHTLIGHT LABELS IF FIELD WITH ERROR ---//--- START ---//
470
317
 
471
- var hightliteErrorLabels = function hightliteErrorLabels() {
472
- var fields = getFormFieldsAsArray();
473
- var filtered = fields === null || fields === void 0 ? void 0 : fields.reduce(function (result, field) {
318
+ //--- HIGHTLIGHT LABELS IF FIELD WITH ERROR ---//--- START ---//
319
+ const hightliteErrorLabels = () => {
320
+ const fields = getFormFieldsAsArray();
321
+ const filtered = fields === null || fields === void 0 ? void 0 : fields.reduce((result, field) => {
474
322
  if (field !== null && field !== void 0 && field.errorLabelHightlite) {
475
323
  // eslint-disable-next-line no-use-before-define
476
- result.push(_objectSpread(_objectSpread({}, field), {}, {
324
+ result.push({
325
+ ...field,
477
326
  className: getFieldClassName(field === null || field === void 0 ? void 0 : field.key, FormType)
478
- }));
327
+ });
479
328
  }
480
-
481
329
  return result;
482
330
  }, []);
483
- filtered === null || filtered === void 0 ? void 0 : filtered.map(function (field) {
484
- var formField = document.querySelector(".".concat(field === null || field === void 0 ? void 0 : field.className));
331
+ filtered === null || filtered === void 0 || filtered.map(field => {
332
+ const formField = document.querySelector(".".concat(field === null || field === void 0 ? void 0 : field.className));
485
333
  if (!formField) return null;
486
334
  formField.classList.remove('errorLabelHightlite');
487
-
488
335
  if (field !== null && field !== void 0 && field.error) {
489
336
  formField.classList.add('errorLabelHightlite');
490
337
  }
491
-
492
338
  return null;
493
339
  });
494
340
  };
495
-
496
- (0, _react.useEffect)(function () {
341
+ (0, _react.useEffect)(() => {
497
342
  hightliteErrorLabels();
498
- }, [form]); //--- HIGHTLIGHT LABELS IF FIELD WITH ERROR ---//--- END ---//
343
+ }, [form]);
344
+ //--- HIGHTLIGHT LABELS IF FIELD WITH ERROR ---//--- END ---//
345
+
499
346
  ///////////////////////////////////////////////////////////////
500
347
  ///////////////////////////////////////////////////////////////
501
- //--- Fields Focus Controller ---//--- START ---//
502
-
503
- var _useState13 = (0, _react.useState)(false),
504
- _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
505
- isInitFocused = _useState14[0],
506
- setIsInitFocused = _useState14[1];
507
-
508
- var _useState15 = (0, _react.useState)(null),
509
- _useState16 = (0, _slicedToArray2.default)(_useState15, 2),
510
- autoFocusedField = _useState16[0],
511
- setAutoFocusedField = _useState16[1];
512
-
513
- var setFirstFieldInitFocused = function setFirstFieldInitFocused() {
514
- return setIsInitFocused(true);
515
- };
516
348
 
517
- var resetIsInitFocused = function resetIsInitFocused() {
518
- return setIsInitFocused(false);
519
- };
520
-
521
- var toggleFieldFocus = function toggleFieldFocus(_ref5) {
522
- var key = _ref5.key,
523
- _ref5$cb = _ref5.cb,
524
- cb = _ref5$cb === void 0 ? function () {} : _ref5$cb,
525
- argForm = _ref5.form,
526
- field = _ref5.field;
527
- var action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'focus';
349
+ //--- Fields Focus Controller ---//--- START ---//
350
+ const [isInitFocused, setIsInitFocused] = (0, _react.useState)(false);
351
+ const [autoFocusedField, setAutoFocusedField] = (0, _react.useState)(null);
352
+ const setFirstFieldInitFocused = () => setIsInitFocused(true);
353
+ const resetIsInitFocused = () => setIsInitFocused(false);
354
+ const toggleFieldFocus = function (_ref) {
355
+ let {
356
+ key,
357
+ cb = () => {},
358
+ form: argForm,
359
+ field
360
+ } = _ref;
361
+ let action = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'focus';
528
362
  if (!key && !field) return null;
529
363
  if (!argForm) argForm = form;
530
- var formField = field || getFormField(key, argForm);
531
-
364
+ const formField = field || getFormField(key, argForm);
532
365
  if (!formField || !formField.ref) {
533
366
  return false;
534
367
  }
535
-
536
368
  if (action === 'focus' && FocusControllerProps.onlyEmptyFieldAutoFocus && Boolean(formField === null || formField === void 0 ? void 0 : formField.value)) return null;
537
- setTimeout(function () {
538
- var _formField$ref$curren, _formField$ref$curren2;
539
-
540
- (_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]();
369
+ setTimeout(() => {
370
+ var _formField$ref$curren;
371
+ (_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]();
541
372
  cb();
542
373
  }, 50);
543
374
  };
544
-
545
- var setFieldFocus = function setFieldFocus(_ref6) {
546
- var key = _ref6.key,
547
- _ref6$cb = _ref6.cb,
548
- cb = _ref6$cb === void 0 ? function () {} : _ref6$cb,
549
- argForm = _ref6.form,
550
- field = _ref6.field;
375
+ const setFieldFocus = _ref2 => {
376
+ let {
377
+ key,
378
+ cb = () => {},
379
+ form: argForm,
380
+ field
381
+ } = _ref2;
551
382
  return toggleFieldFocus({
552
- key: key,
553
- cb: cb,
383
+ key,
384
+ cb,
554
385
  form: argForm,
555
- field: field
386
+ field
556
387
  }, 'focus');
557
388
  };
558
-
559
- var setFieldBlur = function setFieldBlur(_ref7) {
560
- var key = _ref7.key,
561
- _ref7$cb = _ref7.cb,
562
- cb = _ref7$cb === void 0 ? function () {} : _ref7$cb,
563
- argForm = _ref7.form,
564
- field = _ref7.field;
389
+ const setFieldBlur = _ref3 => {
390
+ let {
391
+ key,
392
+ cb = () => {},
393
+ form: argForm,
394
+ field
395
+ } = _ref3;
565
396
  return toggleFieldFocus({
566
- key: key,
567
- cb: cb,
397
+ key,
398
+ cb,
568
399
  form: argForm,
569
- field: field
400
+ field
570
401
  }, 'blur');
571
402
  };
572
-
573
- var setFirstFieldFocus = function setFirstFieldFocus() {
403
+ const setFirstFieldFocus = () => {
574
404
  var _field;
575
-
576
- var field = null;
577
-
578
- for (var i = 0; i < renderFormFields.length && !field; ++i) {
579
- var key = renderFormFields[i];
580
- var tmpField = getFormField(key);
405
+ let field = null;
406
+ for (let i = 0; i < renderFormFields.length && !field; ++i) {
407
+ const key = renderFormFields[i];
408
+ const tmpField = getFormField(key);
581
409
  if (tmpField && !(tmpField !== null && tmpField !== void 0 && tmpField.disabled)) field = tmpField;
582
410
  }
583
-
584
411
  if (!field) return false;
585
-
586
412
  if (FocusControllerProps.onlyEmptyFieldAutoFocus && Boolean((_field = field) === null || _field === void 0 ? void 0 : _field.value)) {
587
413
  setFirstFieldInitFocused();
588
414
  return false;
589
415
  }
590
-
591
416
  setAutoFocusedField(field.key);
592
-
593
- var callback = function callback() {
594
- _setFormField({
417
+ const callback = () => {
418
+ setFormField({
595
419
  value: field.value
596
420
  }, field.key);
597
-
598
421
  setFirstFieldInitFocused();
599
422
  };
600
-
601
- setTimeout(function () {
602
- return setFieldFocus({
603
- key: field.key,
604
- cb: callback,
605
- form: form
606
- });
607
- }, 50);
608
- };
609
-
610
- var _useState17 = (0, _react.useState)({}),
611
- _useState18 = (0, _slicedToArray2.default)(_useState17, 2),
612
- onFieldFocusCallbacks = _useState18[0],
613
- setOnFieldFocusCallbacks = _useState18[1];
614
-
615
- var addOnFieldFocusCallback = function addOnFieldFocusCallback(key, cb) {
616
- setOnFieldFocusCallbacks(function (state) {
617
- var stateCopy = _objectSpread({}, state);
618
-
423
+ setTimeout(() => setFieldFocus({
424
+ key: field.key,
425
+ cb: callback,
426
+ form
427
+ }), 50);
428
+ };
429
+ const [onFieldFocusCallbacks, setOnFieldFocusCallbacks] = (0, _react.useState)({});
430
+ const addOnFieldFocusCallback = (key, cb) => {
431
+ setOnFieldFocusCallbacks(state => {
432
+ const stateCopy = {
433
+ ...state
434
+ };
619
435
  if (!state[key]) stateCopy[key] = [];
620
436
  stateCopy[key].push(cb);
621
437
  return stateCopy;
622
438
  });
623
439
  };
624
-
625
- var callOnFieldFocusCallbacks = function callOnFieldFocusCallbacks(key) {
440
+ const callOnFieldFocusCallbacks = key => {
626
441
  var _onFieldFocusCallback;
627
-
628
442
  if (!Array.isArray(onFieldFocusCallbacks[key])) return null;
629
- (_onFieldFocusCallback = onFieldFocusCallbacks[key]) === null || _onFieldFocusCallback === void 0 ? void 0 : _onFieldFocusCallback.map(function (cb) {
630
- return cb();
631
- });
443
+ (_onFieldFocusCallback = onFieldFocusCallbacks[key]) === null || _onFieldFocusCallback === void 0 || _onFieldFocusCallback.map(cb => cb());
632
444
  };
633
-
634
- var _useState19 = (0, _react.useState)([]),
635
- _useState20 = (0, _slicedToArray2.default)(_useState19, 2),
636
- focusOnRenderFields = _useState20[0],
637
- setFocusOnRenderFields = _useState20[1];
638
-
639
- var addFocusFieldOnRender = function addFocusFieldOnRender(key, cb) {
640
- setFocusOnRenderFields(function (state) {
641
- return [].concat((0, _toConsumableArray2.default)(state), [key]);
642
- });
445
+ const [focusOnRenderFields, setFocusOnRenderFields] = (0, _react.useState)([]);
446
+ const addFocusFieldOnRender = (key, cb) => {
447
+ setFocusOnRenderFields(state => [...state, key]);
643
448
  if (cb) addOnFieldFocusCallback(key, cb);
644
449
  };
645
-
646
- var removeFocusFieldOnRender = function removeFocusFieldOnRender(key) {
647
- setFocusOnRenderFields(function (state) {
648
- return state.filter(function (field) {
649
- return field !== key;
650
- });
651
- });
450
+ const removeFocusFieldOnRender = key => {
451
+ setFocusOnRenderFields(state => state.filter(field => field !== key));
652
452
  };
653
-
654
- (0, _react.useEffect)(function () {
453
+ (0, _react.useEffect)(() => {
655
454
  if (FocusControllerProps.setAutoFocus && !isInitFocused && !autoFocusedField && isFormRendered) setFirstFieldFocus();
656
-
657
455
  if (focusOnRenderFields.length) {
658
456
  var _getFormFieldsKeys;
659
-
660
- (_getFormFieldsKeys = getFormFieldsKeys(form)) === null || _getFormFieldsKeys === void 0 ? void 0 : _getFormFieldsKeys.map(function (key) {
661
- var _getFormField3, _getFormField3$value;
662
-
663
- 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) {
664
- var cb = function cb() {
457
+ (_getFormFieldsKeys = getFormFieldsKeys(form)) === null || _getFormFieldsKeys === void 0 || _getFormFieldsKeys.map(key => {
458
+ var _getFormField3;
459
+ if (focusOnRenderFields.includes(key) && ((_getFormField3 = getFormField(key)) === null || _getFormField3 === void 0 || (_getFormField3 = _getFormField3.value) === null || _getFormField3 === void 0 ? void 0 : _getFormField3.length) === 0) {
460
+ const cb = () => {
665
461
  removeFocusFieldOnRender(key);
666
462
  callOnFieldFocusCallbacks(key);
667
463
  };
668
-
669
464
  setFieldFocus({
670
- key: key,
671
- form: form,
672
- cb: cb
465
+ key,
466
+ form,
467
+ cb
673
468
  });
674
469
  }
675
-
676
470
  return null;
677
471
  });
678
472
  }
679
473
  }, [form, focusOnRenderFields, isInitFocused, isFormRendered]);
680
- (0, _react.useEffect)(function () {
474
+ (0, _react.useEffect)(() => {
681
475
  setAutoFocusedField(null);
682
476
  }, [isInitFocused]);
683
- (0, _react.useEffect)(function () {
477
+ (0, _react.useEffect)(() => {
684
478
  resetIsInitFocused();
685
- }, [FormType]); //Remove Focus From Autocomplete field !!! TODO
479
+ }, [FormType]);
480
+
481
+ //Remove Focus From Autocomplete field !!! TODO
686
482
  // useEffect(() => {
687
483
  // if (!autoFocusedField) return null;
688
484
  // const field = getFormField(autoFocusedField);
485
+
689
486
  // if (field?.value !== '' && !field?.isValueChangedByUser) {
690
487
  // setFieldBlur({key: autoFocusedField, form});
691
488
  // }
692
489
  // }, [autoFocusedField, form]);
693
490
  //--- Fields Focus Controller ---//--- END ---//
491
+
694
492
  ///////////////////////////////////////////////////////////////
695
493
  ///////////////////////////////////////////////////////////////
696
- //--- OnFieldRendered Observer ---//--- START ---//
697
-
698
- var _useState21 = (0, _react.useState)({}),
699
- _useState22 = (0, _slicedToArray2.default)(_useState21, 2),
700
- onFieldRenderedObservers = _useState22[0],
701
- setOnFieldRenderedObservers = _useState22[1];
702
-
703
- var _useState23 = (0, _react.useState)(false),
704
- _useState24 = (0, _slicedToArray2.default)(_useState23, 2),
705
- isFieldObserversReset = _useState24[0],
706
- setIsFieldObserversReset = _useState24[1];
707
494
 
708
- var resetOnFieldRenderObserversWorkedOut = function resetOnFieldRenderObserversWorkedOut() {
495
+ //--- OnFieldRendered Observer ---//--- START ---//
496
+ const [onFieldRenderedObservers, setOnFieldRenderedObservers] = (0, _react.useState)({});
497
+ const [isFieldObserversReset, setIsFieldObserversReset] = (0, _react.useState)(false);
498
+ const resetOnFieldRenderObserversWorkedOut = () => {
709
499
  if (!isFieldObserversReset && renderFormFields.length) {
710
- renderFormFields.map(function (key) {
711
- _setFormField({
500
+ renderFormFields.map(key => {
501
+ setFormField({
712
502
  isOnRenderObserversWorkedOut: false
713
503
  }, key);
714
-
715
504
  return key;
716
505
  });
717
506
  setIsFieldObserversReset(true);
718
507
  }
719
508
  };
720
-
721
- var addOnFieldRenderedObserver = function addOnFieldRenderedObserver(key, cb) {
722
- var isOnceCallable = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
723
- var observerId = null;
724
- setOnFieldRenderedObservers(function (state) {
509
+ const addOnFieldRenderedObserver = function (key, cb) {
510
+ let isOnceCallable = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
511
+ let observerId = null;
512
+ setOnFieldRenderedObservers(state => {
725
513
  //Set Default Value
726
514
  if (!state[key]) state[key] = {};
727
515
  observerId = Object.keys(state[key]).length || 0;
728
516
  state[key][observerId] = {
729
517
  f: cb,
730
- isOnceCallable: isOnceCallable
518
+ isOnceCallable
731
519
  };
732
520
  return state;
733
521
  });
734
522
  return observerId;
735
523
  };
736
-
737
- var updateOnFieldRenderedObserver = function updateOnFieldRenderedObserver(key, id, data) {
738
- setOnFieldRenderedObservers(function (state) {
524
+ const updateOnFieldRenderedObserver = (key, id, data) => {
525
+ setOnFieldRenderedObservers(state => {
739
526
  //Set Default Value
740
527
  if (!state[key]) return state;
741
- state[key][id] = _objectSpread(_objectSpread({}, state[key][id]), data);
528
+ state[key][id] = {
529
+ ...state[key][id],
530
+ ...data
531
+ };
742
532
  return state;
743
533
  });
744
534
  };
745
-
746
- var removeOnFieldRenderedObserver = function removeOnFieldRenderedObserver(key, id) {
747
- setOnFieldRenderedObservers(function (state) {
535
+ const removeOnFieldRenderedObserver = (key, id) => {
536
+ setOnFieldRenderedObservers(state => {
748
537
  //Set Default Value
749
538
  if (!state[key]) return state;
750
- state[key] = Object.keys(state).filter(function (cbId) {
751
- return cbId !== id;
752
- }).map(function (cbId) {
753
- return state[key][cbId];
754
- });
539
+ state[key] = Object.keys(state).filter(cbId => cbId !== id).map(cbId => state[key][cbId]);
755
540
  return state;
756
541
  });
757
542
  };
758
-
759
- var onFieldRenderedObserver = function onFieldRenderedObserver(key, data) {
760
- if (!onFieldRenderedObservers[key] || (0, _typeof2.default)(onFieldRenderedObservers[key]) !== 'object') return;
761
- var Observers = onFieldRenderedObservers[key];
762
- var FilteredObservers = Object.values(Observers).filter(function (observer) {
763
- return !(observer !== null && observer !== void 0 && observer.isObserverWorkedOut);
764
- });
543
+ const onFieldRenderedObserver = (key, data) => {
544
+ if (!onFieldRenderedObservers[key] || typeof onFieldRenderedObservers[key] !== 'object') return;
545
+ const Observers = onFieldRenderedObservers[key];
546
+ const FilteredObservers = Object.values(Observers).filter(observer => !(observer !== null && observer !== void 0 && observer.isObserverWorkedOut));
765
547
  if (FilteredObservers.length === 0) return null;
766
-
767
- _setFormField({
548
+ setFormField({
768
549
  isOnRenderObserversWorkedOut: true
769
550
  }, key);
770
-
771
- FilteredObservers.map(function (_ref8, id) {
772
- var f = _ref8.f,
773
- isOnceCallable = _ref8.isOnceCallable;
551
+ FilteredObservers.map((_ref4, id) => {
552
+ let {
553
+ f,
554
+ isOnceCallable
555
+ } = _ref4;
774
556
  f(data);
775
557
  if (isOnceCallable) updateOnFieldRenderedObserver(key, id, {
776
558
  isObserverWorkedOut: true
@@ -778,41 +560,40 @@ function useFormTools() {
778
560
  return null;
779
561
  });
780
562
  };
781
-
782
- var onRenderObserverWorker = function onRenderObserverWorker() {
563
+ const onRenderObserverWorker = () => {
783
564
  var _getFormFieldsKeys2;
784
-
785
- return (_getFormFieldsKeys2 = getFormFieldsKeys(form)) === null || _getFormFieldsKeys2 === void 0 ? void 0 : _getFormFieldsKeys2.map(function (key) {
565
+ return (_getFormFieldsKeys2 = getFormFieldsKeys(form)) === null || _getFormFieldsKeys2 === void 0 ? void 0 : _getFormFieldsKeys2.map(key => {
786
566
  //OnFieldRendered
787
- var fieldData = getFormField(key);
788
-
567
+ const fieldData = getFormField(key);
789
568
  if (!(fieldData !== null && fieldData !== void 0 && fieldData.isOnRenderObserversWorkedOut)) {
790
569
  onFieldRenderedObserver(key, fieldData);
791
570
  return {
792
- key: key,
571
+ key,
793
572
  isWorkedOut: true
794
573
  };
795
574
  }
796
-
797
575
  return {
798
- key: key,
576
+ key,
799
577
  isWorkedOut: false
800
578
  };
801
579
  });
802
580
  };
803
-
804
- (0, _react.useEffect)(function () {
581
+ (0, _react.useEffect)(() => {
805
582
  resetOnFieldRenderObserversWorkedOut();
806
583
  onRenderObserverWorker();
807
584
  }, [form]);
808
- (0, _react.useEffect)(function () {
585
+ (0, _react.useEffect)(() => {
809
586
  setIsFieldObserversReset(false);
810
- }, [FormType]); //--- OnFieldRendered Observer ---//--- END ---//
587
+ }, [FormType]);
588
+ //--- OnFieldRendered Observer ---//--- END ---//
589
+
811
590
  ///////////////////////////////////////////////////////////////
812
591
  ///////////////////////////////////////////////////////////////
592
+
813
593
  //Detect What Changed || TRY TO DO
814
594
  // const compare = async (prev, current) => {
815
595
  // if (!prev) return current;
596
+
816
597
  // return new Promise((resolve) => {
817
598
  // Object.keys(current).reduce((result, key, i, arr) => {
818
599
  // //If PROPERTY is NOT EXISTS BEFORE
@@ -830,123 +611,126 @@ function useFormTools() {
830
611
  // else if (prev[key] !== current[key]) {
831
612
  // result[key] = current[key];
832
613
  // }
614
+
833
615
  // if (i === arr.length-1) {
834
616
  // resolve(result);
835
617
  // }
618
+
836
619
  // return result;
837
620
  // }, {});
838
621
  // });
839
622
  // };
623
+
840
624
  ///////////////////////////////////////////////////////////////
841
625
  ///////////////////////////////////////////////////////////////
842
- //--- WindowScrollController ---//--- START ---//
843
626
 
844
- var scrollToField = function scrollToField(_ref9) {
627
+ //--- WindowScrollController ---//--- START ---//
628
+ const scrollToField = _ref5 => {
845
629
  var _field2, _field3, _wrapperRef$current;
846
-
847
- var _ref9$key = _ref9.key,
848
- key = _ref9$key === void 0 ? null : _ref9$key,
849
- _ref9$field = _ref9.field,
850
- field = _ref9$field === void 0 ? null : _ref9$field,
851
- argForm = _ref9.form;
630
+ let {
631
+ key = null,
632
+ field = null,
633
+ form: argForm
634
+ } = _ref5;
852
635
  if (!key && !field) return false;
853
636
  if (!argForm) argForm = form;
854
637
  if (!field) field = getFormField(key, argForm);
855
- var 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
856
-
857
- var _wrapperRef$current$g = wrapperRef === null || wrapperRef === void 0 ? void 0 : (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.getBoundingClientRect(),
858
- topOffset = _wrapperRef$current$g.top;
859
-
860
- var scrollTop = Math.abs(Math.abs(topOffset) - Math.abs(window.scrollY)) - 16;
638
+ const wrapperRef = ((_field2 = field) === null || _field2 === void 0 ? void 0 : _field2.wrapperRef) || ((_field3 = field) === null || _field3 === void 0 ? void 0 : _field3.ref);
639
+ // eslint-disable-next-line no-unsafe-optional-chaining
640
+ const {
641
+ top: topOffset
642
+ } = wrapperRef === null || wrapperRef === void 0 || (_wrapperRef$current = wrapperRef.current) === null || _wrapperRef$current === void 0 ? void 0 : _wrapperRef$current.getBoundingClientRect();
643
+ const scrollTop = Math.abs(Math.abs(topOffset) - Math.abs(window.scrollY)) - 16;
861
644
  window.scrollTo({
862
645
  top: scrollTop
863
646
  });
864
- }; //--- WindowScrollController ---//--- END ---//
647
+ };
648
+
649
+ //--- WindowScrollController ---//--- END ---//
650
+
865
651
  ///////////////////////////////////////////////////////////////
866
652
  ///////////////////////////////////////////////////////////////
867
653
 
868
-
869
- var addErrorsToForm = function addErrorsToForm(errors) {
870
- var argForm = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : form;
654
+ const addErrorsToForm = function (errors) {
655
+ let argForm = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : form;
871
656
  if (!argForm) argForm = form;
872
- setFormFields(function (fields) {
873
- return errors.reduce(function (fields, _ref10) {
874
- var error = _ref10.message,
875
- errKey = _ref10.propertyPath;
657
+ setFormFields(fields => {
658
+ return errors.reduce((fields, _ref6) => {
659
+ let {
660
+ message: error,
661
+ propertyPath: errKey
662
+ } = _ref6;
876
663
  return updateFormField(fields, {
877
- error: error
664
+ error
878
665
  }, errKey);
879
666
  }, fields);
880
667
  });
881
668
  };
882
-
883
669
  return {
884
- FormDataDrivers: FormDataDrivers,
670
+ FormDataDrivers,
885
671
  //OnChangeObserver
886
- addOnChangeObserver: addOnChangeObserver,
887
- removeOnChangeObserver: removeOnChangeObserver,
888
- onChangeObservers: onChangeObservers,
672
+ addOnChangeObserver,
673
+ removeOnChangeObserver,
674
+ onChangeObservers,
889
675
  //OnChangeHandler
890
- onFieldChange: onFieldChange,
676
+ onFieldChange,
891
677
  //Form Submit Blocker
892
- toggleFormSubmitBlock: toggleFormSubmitBlock,
893
- clearFormSubmitBlockers: clearFormSubmitBlockers,
678
+ toggleFormSubmitBlock,
679
+ clearFormSubmitBlockers,
894
680
  isFormSubmitBlocked: Boolean(formSubmitBlockers.length),
895
681
  //Property Observers
896
682
  // addPropertyObserver,
683
+
897
684
  //Render Fields
898
- renderFormFields: renderFormFields,
899
- setRenderFormFields: setRenderFormFields,
900
- addRenderFields: addRenderFields,
901
- removeRenderFields: removeRenderFields,
902
- getFieldClassName: getFieldClassName,
685
+ renderFormFields,
686
+ setRenderFormFields,
687
+ addRenderFields,
688
+ removeRenderFields,
689
+ getFieldClassName,
903
690
  //Field Focus Controller
904
- isInitFocused: isInitFocused,
905
- setFirstFieldInitFocused: setFirstFieldInitFocused,
906
- resetIsInitFocused: resetIsInitFocused,
907
- setFieldFocus: setFieldFocus,
908
- setFieldBlur: setFieldBlur,
909
- setFirstFieldFocus: setFirstFieldFocus,
910
- autoFocusedField: autoFocusedField,
911
- addFocusFieldOnRender: addFocusFieldOnRender,
912
- removeFocusFieldOnRender: removeFocusFieldOnRender,
691
+ isInitFocused,
692
+ setFirstFieldInitFocused,
693
+ resetIsInitFocused,
694
+ setFieldFocus,
695
+ setFieldBlur,
696
+ setFirstFieldFocus,
697
+ autoFocusedField,
698
+ addFocusFieldOnRender,
699
+ removeFocusFieldOnRender,
913
700
  //Field Render Controller
914
- addOnFieldRenderedObserver: addOnFieldRenderedObserver,
915
- removeOnFieldRenderedObserver: removeOnFieldRenderedObserver,
916
- onFieldRenderedObservers: onFieldRenderedObservers,
917
- updateFormField: updateFormField,
918
- addOnFormRenderObserver: addOnFormRenderObserver,
919
- submitIsFormRendered: submitIsFormRendered,
920
- resetIsFormRendered: resetIsFormRendered,
921
- renderFields: function renderFields(_ref11) {
922
- var _ref11$form = _ref11.form,
923
- argForm = _ref11$form === void 0 ? form : _ref11$form,
924
- _ref11$fields = _ref11.fields,
925
- argFields = _ref11$fields === void 0 ? renderFormFields : _ref11$fields,
926
- _ref11$cols = _ref11.cols,
927
- argCols = _ref11$cols === void 0 ? 1 : _ref11$cols,
928
- RenderFieldComponent = _ref11.RenderFieldComponent;
701
+ addOnFieldRenderedObserver,
702
+ removeOnFieldRenderedObserver,
703
+ onFieldRenderedObservers,
704
+ updateFormField,
705
+ addOnFormRenderObserver,
706
+ submitIsFormRendered,
707
+ resetIsFormRendered,
708
+ renderFields: _ref7 => {
709
+ let {
710
+ form: argForm = form,
711
+ fields: argFields = renderFormFields,
712
+ cols: argCols = 1,
713
+ RenderFieldComponent
714
+ } = _ref7;
929
715
  return (0, _RenderFields.default)({
930
716
  form: argForm,
931
717
  fields: argFields,
932
718
  cols: argCols,
933
- RenderFieldComponent: RenderFieldComponent,
934
- onFieldChange: onFieldChange,
719
+ RenderFieldComponent,
720
+ onFieldChange,
935
721
  FormDataDriver: getFormDataDriver(FormDataDriverName)
936
722
  });
937
723
  },
938
- scrollToField: scrollToField,
939
- getFieldData: getFieldData,
940
- getFormField: getFormField,
941
- setFormFields: setFormFields,
942
- setFormField: function setFormField(data, key) {
943
- return _setFormField(data, key);
944
- },
945
- getFormFieldsAsArray: getFormFieldsAsArray,
946
- getFormFieldsKeys: getFormFieldsKeys,
947
- removeAllFormFields: removeAllFormFields,
948
- removeFormField: removeFormField,
949
- removeFormFields: removeFormFields,
950
- addErrorsToForm: addErrorsToForm
724
+ scrollToField,
725
+ getFieldData,
726
+ getFormField,
727
+ setFormFields,
728
+ setFormField: (data, key) => setFormField(data, key),
729
+ getFormFieldsAsArray,
730
+ getFormFieldsKeys,
731
+ removeAllFormFields,
732
+ removeFormField,
733
+ removeFormFields,
734
+ addErrorsToForm
951
735
  };
952
736
  }