intelicoreact 1.3.19 → 1.3.21

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