intelicoreact 1.6.20 → 1.6.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 (272) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +1 -102
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +1 -89
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +1 -232
  4. package/dist/Atomic/FormElements/Calendar/Calendar.props.js +1 -3
  5. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +1 -101
  6. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +1 -70
  7. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +1 -350
  8. package/dist/Atomic/FormElements/Datepicker/Datepicker.props.js +1 -3
  9. package/dist/Atomic/FormElements/Datepicker/components/DatepickerCalendar.js +1 -177
  10. package/dist/Atomic/FormElements/Datepicker/components/DatepickerCalendar.props.js +1 -3
  11. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +1 -561
  12. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +1 -20
  13. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +1 -405
  14. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +1 -94
  15. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +1 -105
  16. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +1 -67
  17. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +1 -247
  18. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +1 -160
  19. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +1 -193
  20. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +1 -135
  21. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.js +1 -116
  22. package/dist/Atomic/FormElements/Input/Input.js +1 -467
  23. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +1 -161
  24. package/dist/Atomic/FormElements/InputColor/InputColor.js +1 -64
  25. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +1 -166
  26. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +1 -354
  27. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +1 -71
  28. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +1 -693
  29. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +1 -254
  30. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +1 -32
  31. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +1 -200
  32. package/dist/Atomic/FormElements/InputLink/InputLink.js +1 -99
  33. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +1 -37
  34. package/dist/Atomic/FormElements/InputMask/InputMask.js +1 -1214
  35. package/dist/Atomic/FormElements/InputMask/config.js +1 -15
  36. package/dist/Atomic/FormElements/InputMask/functions.js +1 -58
  37. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +1 -674
  38. package/dist/Atomic/FormElements/InputMask2/config.js +1 -15
  39. package/dist/Atomic/FormElements/InputMask2/functions.js +1 -58
  40. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +1 -766
  41. package/dist/Atomic/FormElements/InputMask3/config.js +1 -15
  42. package/dist/Atomic/FormElements/InputMask3/functions.js +1 -58
  43. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +1 -114
  44. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +1 -140
  45. package/dist/Atomic/FormElements/Label/Label.js +1 -82
  46. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +1 -506
  47. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +1 -45
  48. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +1 -331
  49. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +1 -66
  50. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +1 -80
  51. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +1 -64
  52. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +1 -54
  53. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +1 -183
  54. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +1 -209
  55. package/dist/Atomic/FormElements/RangeList/RangeList.js +1 -175
  56. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +1 -43
  57. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +1 -443
  58. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +1 -858
  59. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +1 -39
  60. package/dist/Atomic/FormElements/Switcher/Switcher.js +1 -59
  61. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +1 -50
  62. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +1 -47
  63. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +1 -96
  64. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +1 -40
  65. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +1 -64
  66. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +1 -170
  67. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +1 -202
  68. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +1 -67
  69. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +1 -115
  70. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +1 -826
  71. package/dist/Atomic/FormElements/Text/Text.js +1 -125
  72. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +1 -45
  73. package/dist/Atomic/FormElements/Textarea/Textarea.js +1 -80
  74. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +1 -176
  75. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +1 -62
  76. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +1 -127
  77. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +1 -220
  78. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +1 -83
  79. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +1 -82
  80. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +1 -101
  81. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +1 -29
  82. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +1 -113
  83. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +1 -30
  84. package/dist/Atomic/Layout/Header/Header.js +1 -85
  85. package/dist/Atomic/Layout/Spinner/Spinner.js +1 -39
  86. package/dist/Atomic/UI/Accordion/Accordion.js +1 -118
  87. package/dist/Atomic/UI/Accordion/AccordionItem.js +1 -181
  88. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +1 -238
  89. package/dist/Atomic/UI/AccordionText/AccordionText.js +1 -69
  90. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +1 -207
  91. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +1 -56
  92. package/dist/Atomic/UI/Alert/Alert.js +1 -72
  93. package/dist/Atomic/UI/Arrow/Arrow.js +1 -132
  94. package/dist/Atomic/UI/Box/Box.js +1 -52
  95. package/dist/Atomic/UI/Button/Button.js +1 -89
  96. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +1 -72
  97. package/dist/Atomic/UI/Chart/Chart.js +1 -172
  98. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +1 -95
  99. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +1 -80
  100. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +1 -188
  101. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +1 -335
  102. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +1 -43
  103. package/dist/Atomic/UI/Chart/partial/utils.js +1 -60
  104. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +1 -109
  105. package/dist/Atomic/UI/DateTime/DateTime.js +1 -57
  106. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +1 -44
  107. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +1 -15
  108. package/dist/Atomic/UI/DoubleString/DoubleString.js +1 -102
  109. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +1 -226
  110. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +1 -221
  111. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +1 -106
  112. package/dist/Atomic/UI/Hint/Hint.js +1 -193
  113. package/dist/Atomic/UI/Hint/partials/_utils.js +1 -51
  114. package/dist/Atomic/UI/Modal/Modal.js +1 -188
  115. package/dist/Atomic/UI/Modal/ModalHOC.js +1 -72
  116. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +1 -46
  117. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +1 -83
  118. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +1 -200
  119. package/dist/Atomic/UI/MonoAccordion/MonoAccordion._test.js +1 -75
  120. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +1 -80
  121. package/dist/Atomic/UI/NavLine/NavLine.js +1 -293
  122. package/dist/Atomic/UI/PageTitle/PageTitle.js +1 -75
  123. package/dist/Atomic/UI/PieChart/PieChart.js +1 -42
  124. package/dist/Atomic/UI/Price/Price.js +1 -22
  125. package/dist/Atomic/UI/PriceRange/PriceRange.js +1 -36
  126. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +1 -71
  127. package/dist/Atomic/UI/Status/Status.js +1 -59
  128. package/dist/Atomic/UI/Table/Partials/TdCell.js +1 -87
  129. package/dist/Atomic/UI/Table/Partials/TdHeader.js +1 -38
  130. package/dist/Atomic/UI/Table/Partials/TdRow.js +1 -99
  131. package/dist/Atomic/UI/Table/Partials/TdTitle.js +1 -52
  132. package/dist/Atomic/UI/Table/Table.js +1 -63
  133. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +1 -80
  134. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +1 -28
  135. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +1 -13
  136. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +1 -53
  137. package/dist/Atomic/UI/Tag/Tag.js +1 -160
  138. package/dist/Atomic/UI/TagList/TagList.js +1 -251
  139. package/dist/Atomic/UI/UserBox/UserBox.js +1 -73
  140. package/dist/Atomic/UI/WizardStepper/constructor.js +1 -84
  141. package/dist/Atomic/UI/WizardStepper/index.js +1 -3
  142. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +1 -37
  143. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +1 -3
  144. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +1 -61
  145. package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +1 -3
  146. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +1 -39
  147. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +1 -3
  148. package/dist/Atomic/UI/WizardStepper/ui/icons.js +1 -49
  149. package/dist/Atomic/UI/WizardStepper/ui/index.js +1 -3
  150. package/dist/Classes/AbortableFetch.js +1 -454
  151. package/dist/Classes/AnimatedHandler.js +1 -47
  152. package/dist/Classes/RESTAPI/index.js +1 -228
  153. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +1 -457
  154. package/dist/Classes/RESTAPI/partials/ApiBase.js +1 -48
  155. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +1 -112
  156. package/dist/Classes/RESTAPI/partials/ApiUtils.js +1 -189
  157. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +1 -252
  158. package/dist/Classes/RESTAPI/partials/Utils.js +1 -92
  159. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +1 -3
  160. package/dist/Classes/RESTAPI/partials/_utils.js +1 -197
  161. package/dist/Constants/index.constants.js +1 -78
  162. package/dist/Functions/Portal.js +1 -22
  163. package/dist/Functions/customEventListener.js +1 -96
  164. package/dist/Functions/dateTime.js +1 -149
  165. package/dist/Functions/fieldValueFormatters.js +1 -405
  166. package/dist/Functions/guards/assertions.js +1 -66
  167. package/dist/Functions/guards/safeValue.js +1 -30
  168. package/dist/Functions/guards/typeGuards.js +1 -116
  169. package/dist/Functions/hooks/useFormFieldsChangesManager.js +1 -95
  170. package/dist/Functions/locale/createTranslator.js +1 -32
  171. package/dist/Functions/operations.js +1 -130
  172. package/dist/Functions/presets/inputMaskPresets.js +1 -170
  173. package/dist/Functions/presets/inputPresets.js +1 -60
  174. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +1 -45
  175. package/dist/Functions/schemas.js +1 -31
  176. package/dist/Functions/useBodyScrollLock.js +1 -17
  177. package/dist/Functions/useClickOutside.js +1 -15
  178. package/dist/Functions/useDebounce.js +1 -17
  179. package/dist/Functions/useFieldFocus.js +1 -84
  180. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +1 -39
  181. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +1 -159
  182. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +1 -78
  183. package/dist/Functions/useFormTools/functions/General.js +1 -134
  184. package/dist/Functions/useFormTools/functions/RenderFields.js +1 -111
  185. package/dist/Functions/useFormTools/functions/usePrevious.js +1 -12
  186. package/dist/Functions/useFormTools/index.js +1 -778
  187. package/dist/Functions/useInputHighlightError.js +1 -67
  188. package/dist/Functions/useIsMobile/useIsMobile.js +1 -53
  189. package/dist/Functions/useKeyPress/useHandleKeyPress.js +1 -21
  190. package/dist/Functions/useKeyPress/useKeyPress.js +1 -75
  191. package/dist/Functions/useLocalStorage.js +1 -34
  192. package/dist/Functions/useLocationParams.js +1 -27
  193. package/dist/Functions/useMediaQuery.js +1 -17
  194. package/dist/Functions/useMetaInfo.js +1 -43
  195. package/dist/Functions/useMouseUpOutside.js +1 -16
  196. package/dist/Functions/useOnlineStatus.js +1 -29
  197. package/dist/Functions/usePasswordChecker.js +1 -110
  198. package/dist/Functions/usePrevious.js +1 -12
  199. package/dist/Functions/useResize.js +1 -31
  200. package/dist/Functions/useScrollTo.js +1 -17
  201. package/dist/Functions/useToggle.js +1 -17
  202. package/dist/Functions/utils.js +1 -522
  203. package/dist/Langs.js +1 -168
  204. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +1 -21
  205. package/dist/Molecular/CustomIcons/components/AlertCircle.js +1 -23
  206. package/dist/Molecular/CustomIcons/components/AppStore.js +1 -29
  207. package/dist/Molecular/CustomIcons/components/Arrow.js +1 -32
  208. package/dist/Molecular/CustomIcons/components/ArrowDown.js +1 -17
  209. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +1 -22
  210. package/dist/Molecular/CustomIcons/components/ArrowRight.js +1 -22
  211. package/dist/Molecular/CustomIcons/components/ArrowUp.js +1 -17
  212. package/dist/Molecular/CustomIcons/components/Bell.js +1 -15
  213. package/dist/Molecular/CustomIcons/components/Button.js +1 -12
  214. package/dist/Molecular/CustomIcons/components/Campaigns.js +1 -16
  215. package/dist/Molecular/CustomIcons/components/Check.js +1 -14
  216. package/dist/Molecular/CustomIcons/components/Check2.js +1 -12
  217. package/dist/Molecular/CustomIcons/components/ChevronDown.js +1 -12
  218. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +1 -11
  219. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +1 -11
  220. package/dist/Molecular/CustomIcons/components/ChevronRight.js +1 -11
  221. package/dist/Molecular/CustomIcons/components/ChevronUp.js +1 -11
  222. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +1 -27
  223. package/dist/Molecular/CustomIcons/components/Close.js +1 -14
  224. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +1 -17
  225. package/dist/Molecular/CustomIcons/components/Delete.js +1 -16
  226. package/dist/Molecular/CustomIcons/components/Edit.js +1 -15
  227. package/dist/Molecular/CustomIcons/components/Email.js +1 -31
  228. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +1 -18
  229. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +1 -35
  230. package/dist/Molecular/CustomIcons/components/Flows.js +1 -15
  231. package/dist/Molecular/CustomIcons/components/Gift.js +1 -25
  232. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +1 -29
  233. package/dist/Molecular/CustomIcons/components/GooglePlay.js +1 -29
  234. package/dist/Molecular/CustomIcons/components/HelpCircle.js +1 -19
  235. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +1 -20
  236. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +1 -19
  237. package/dist/Molecular/CustomIcons/components/Home.js +1 -16
  238. package/dist/Molecular/CustomIcons/components/Home2.js +1 -22
  239. package/dist/Molecular/CustomIcons/components/Key.js +1 -23
  240. package/dist/Molecular/CustomIcons/components/Landers.js +1 -20
  241. package/dist/Molecular/CustomIcons/components/Lock.js +1 -15
  242. package/dist/Molecular/CustomIcons/components/Mail.js +1 -26
  243. package/dist/Molecular/CustomIcons/components/Mastercard.js +1 -73
  244. package/dist/Molecular/CustomIcons/components/Minus.js +1 -25
  245. package/dist/Molecular/CustomIcons/components/Offers.js +1 -16
  246. package/dist/Molecular/CustomIcons/components/Pause.js +1 -28
  247. package/dist/Molecular/CustomIcons/components/PayPal.js +1 -41
  248. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +1 -28
  249. package/dist/Molecular/CustomIcons/components/Phone.js +1 -30
  250. package/dist/Molecular/CustomIcons/components/Play.js +1 -25
  251. package/dist/Molecular/CustomIcons/components/Plus.js +1 -25
  252. package/dist/Molecular/CustomIcons/components/Profile.js +1 -16
  253. package/dist/Molecular/CustomIcons/components/QRCode.js +1 -29
  254. package/dist/Molecular/CustomIcons/components/Rectangle.js +1 -12
  255. package/dist/Molecular/CustomIcons/components/Revert.js +1 -13
  256. package/dist/Molecular/CustomIcons/components/Star.js +1 -14
  257. package/dist/Molecular/CustomIcons/components/Star2.js +1 -16
  258. package/dist/Molecular/CustomIcons/components/TrafficSources.js +1 -14
  259. package/dist/Molecular/CustomIcons/components/Trash.js +1 -15
  260. package/dist/Molecular/CustomIcons/components/TrashRed.js +1 -15
  261. package/dist/Molecular/CustomIcons/components/Triggers.js +1 -15
  262. package/dist/Molecular/CustomIcons/components/User.js +1 -25
  263. package/dist/Molecular/CustomIcons/components/Visa.js +1 -31
  264. package/dist/Molecular/CustomIcons/components/X.js +1 -12
  265. package/dist/Molecular/CustomIcons/index.js +1 -61
  266. package/dist/Molecular/FormElement/FormElement.js +1 -54
  267. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +1 -184
  268. package/dist/Molecular/FormWithDependOn/partials/_utils.js +1 -53
  269. package/dist/Molecular/InputAddress/InputAddress.js +1 -620
  270. package/dist/Molecular/InputPassword/InputPassword.js +1 -48
  271. package/dist/index.js +1 -1
  272. package/package.json +1 -1
@@ -1,84 +1 @@
1
- import { createRef, useEffect } from "react";
2
-
3
- export default function useFieldsFocus({ form, setForm }) {
4
- const isFormAsObject = Boolean(
5
- typeof form === "object" && !Array.isArray(form),
6
- );
7
-
8
- const getField = (key) => {
9
- if (isFormAsObject) {
10
- return (
11
- form?.[key] ?? Object.values(form)?.find((field) => field.key === key)
12
- );
13
- } else {
14
- return form?.find((field) => field.key === key);
15
- }
16
- };
17
-
18
- const getErroredFields = () => {
19
- if (isFormAsObject) {
20
- return Object.values(form)?.filter((field) => field.error);
21
- } else {
22
- return form?.filter((f) => f?.error);
23
- }
24
- };
25
-
26
- const addRefsToFields = () => {
27
- if (isFormAsObject) {
28
- setForm((form) => {
29
- return Object.keys(form)?.reduce((result, key) => {
30
- const field = form[key];
31
- return {
32
- ...result,
33
- [key]: {
34
- ...field,
35
- ref: createRef(),
36
- wrapperRef: createRef(),
37
- },
38
- };
39
- }, {});
40
- });
41
- } else {
42
- setForm((form) => {
43
- return form?.map((field) => {
44
- field.ref = createRef();
45
- field.wrapperRef = createRef();
46
-
47
- return field;
48
- });
49
- });
50
- }
51
- };
52
-
53
- const toggleFieldFocus = ({ field, action = "focus" }) => {
54
- if (!field || !field?.ref) return null;
55
-
56
- setTimeout(() => {
57
- field.ref.current
58
- ?.querySelector(field?.focusSelector || "input")
59
- ?.[action]();
60
- }, 50);
61
- };
62
-
63
- const setFocusTo = (key) => {
64
- const field = getField(key);
65
- if (!field) return false;
66
-
67
- toggleFieldFocus({ field });
68
- };
69
- const setFocusToErroredField = () => {
70
- const field = getErroredFields()?.[0];
71
- if (!field) return false;
72
-
73
- toggleFieldFocus({ field });
74
- };
75
-
76
- useEffect(() => {
77
- addRefsToFields();
78
- }, [form?.length]);
79
-
80
- return {
81
- setFocusTo,
82
- setFocusToErroredField,
83
- };
84
- }
1
+ function e(e,r,n){return r in e?Object.defineProperty(e,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n,e}function r(r){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{},o=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),o.forEach(function(n){e(r,n,t[n])})}return r}function n(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):(function(e,r){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);n.push.apply(n,t)}return n})(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))}),e}import{createRef as t,useEffect as o}from"react";export default function u(u){var i=u.form,c=u.setForm,l=!!((void 0===i?"undefined":i&&"undefined"!=typeof Symbol&&i.constructor===Symbol?"symbol":typeof i)=="object"&&!Array.isArray(i)),f=function(e){var r,n;return l?null!=(n=null==i?void 0:i[e])?n:null==(r=Object.values(i))?void 0:r.find(function(r){return r.key===e}):null==i?void 0:i.find(function(r){return r.key===e})},a=function(){var e;return l?null==(e=Object.values(i))?void 0:e.filter(function(e){return e.error}):null==i?void 0:i.filter(function(e){return null==e?void 0:e.error})},d=function(){l?c(function(o){var u;return null==(u=Object.keys(o))?void 0:u.reduce(function(u,i){var c=o[i];return n(r({},u),e({},i,n(r({},c),{ref:t(),wrapperRef:t()})))},{})}):c(function(e){return null==e?void 0:e.map(function(e){return e.ref=t(),e.wrapperRef=t(),e})})},v=function(e){var r=e.field,n=e.action,t=void 0===n?"focus":n;if(!r||!(null==r?void 0:r.ref))return null;setTimeout(function(){var e,n;null==(n=r.ref.current)||null==(e=n.querySelector((null==r?void 0:r.focusSelector)||"input"))||e[t]()},50)};return o(function(){d()},[null==i?void 0:i.length]),{setFocusTo:function(e){var r=f(e);if(!r)return!1;v({field:r})},setFocusToErroredField:function(){var e,r=null==(e=a())?void 0:e[0];if(!r)return!1;v({field:r})}}}
@@ -1,39 +1 @@
1
- import General from "../functions/General";
2
-
3
- export default function ArrayWithObjects({ form, setForm, FormFields }) {
4
- const {
5
- joinData,
6
- getFieldData,
7
- updateFormField,
8
- getFormFields,
9
- getFormFieldsAsArray,
10
- getFormFieldsKeys,
11
- } = General({
12
- FormFields,
13
- });
14
-
15
- const getFormField = (key, argForm = form) => {
16
- return getFormFields(argForm)?.find((f) => f.key === key);
17
- };
18
- const setFormFields = (data) => {
19
- const isFunction = typeof data === "function";
20
- setForm((state) => (isFunction ? data(state) : data));
21
- };
22
- const setFormField = (data, key = null) =>
23
- setFormFields((fields) => updateFormField(fields, data, key));
24
-
25
- const removeAllFormFields = () => setFormFields([]);
26
-
27
- return {
28
- joinData,
29
- getFieldData,
30
- getFormFields,
31
- getFormField,
32
- setFormFields,
33
- setFormField,
34
- getFormFieldsAsArray: (fields) =>
35
- getFormFieldsAsArray(fields || getFormFields()),
36
- getFormFieldsKeys: (fields) => getFormFieldsKeys(fields || getFormFields()),
37
- removeAllFormFields,
38
- };
39
- }
1
+ import e from"../functions/General";export default function r(r){var t=r.form,n=r.setForm,o=e({FormFields:r.FormFields}),i=o.joinData,F=o.getFieldData,l=o.updateFormField,u=o.getFormFields,d=o.getFormFieldsAsArray,m=o.getFormFieldsKeys,s=function(e){var r="function"==typeof e;n(function(t){return r?e(t):e})};return{joinData:i,getFieldData:F,getFormFields:u,getFormField:function(e){var r,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t;return null==(r=u(n))?void 0:r.find(function(r){return r.key===e})},setFormFields:s,setFormField:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return s(function(t){return l(t,e,r)})},getFormFieldsAsArray:function(e){return d(e||u())},getFormFieldsKeys:function(e){return m(e||u())},removeAllFormFields:function(){return s([])}}}
@@ -1,159 +1 @@
1
- export default function ObjectWithIterableObjects({
2
- form,
3
- setForm,
4
- FormFields,
5
- }) {
6
- const joinData = (...args) => {
7
- const [mainArg] = args;
8
- const MainArgProto = Array.isArray(mainArg)
9
- ? "Array"
10
- : typeof mainArg === "object"
11
- ? "Object"
12
- : undefined;
13
- const template = Array.isArray(mainArg)
14
- ? []
15
- : typeof mainArg === "object"
16
- ? {}
17
- : null;
18
-
19
- if (!template) return undefined;
20
-
21
- return args.reduce((result, item) => {
22
- if (MainArgProto === "Array") {
23
- if (Array.isArray(item)) {
24
- return [...result, ...item];
25
- } else {
26
- return [...result, item];
27
- }
28
- } else if (MainArgProto === "Object") {
29
- return { ...result, ...item };
30
- } else {
31
- return template;
32
- }
33
- }, template);
34
- };
35
-
36
- const getFieldData = (key) => {
37
- if (Array.isArray(FormFields)) {
38
- return FormFields[key] || FormFields.find((f) => f.key === key);
39
- } else if (typeof FormFields === "object") {
40
- return (
41
- FormFields[key] || Object.values(FormFields).find((f) => f.key === key)
42
- );
43
- } else {
44
- return undefined;
45
- }
46
- };
47
- const getFormFields = () => {
48
- return form.fields || form;
49
- };
50
- const getFormField = (key) => {
51
- // eslint-disable-next-line no-undef
52
- if (FormProto === "Array") {
53
- return getFormFields().find((field) => field.key === key);
54
- // eslint-disable-next-line no-undef
55
- } else if (FormProto === "Object") {
56
- return (
57
- Object.values(getFormFields()).find((field) => field.key === key) ||
58
- Object.keys(getFormFields()).reduce((result, field) => {
59
- if (field === key) result = getFormFields()[field];
60
- return result;
61
- }, {})
62
- );
63
- } else {
64
- return undefined;
65
- }
66
- };
67
- const setFormFields = (data) => {
68
- const isFunction = typeof data === "function";
69
-
70
- setForm((state) => {
71
- if (state.fields) {
72
- return {
73
- ...state,
74
- fields: isFunction ? data(state.fields) : data,
75
- };
76
- } else {
77
- return isFunction ? data(state) : data;
78
- }
79
- });
80
- };
81
- const setFormField = (data, key = null) => {
82
- const isFunction = typeof data === "function";
83
-
84
- setFormFields((fields) => {
85
- const pop = (fields, key) => {
86
- const result = { fields, item: undefined };
87
-
88
- result.item = fields[key] || fields.find((f) => f.key === key);
89
-
90
- if (!result.item) return result;
91
-
92
- if (Array.isArray(fields)) {
93
- const index = parseInt(key, 10);
94
- if (!isNaN(index)) {
95
- result.fields.splice(key, 1);
96
- } else {
97
- result.fields = result.fields.filter((f) => f.key !== key);
98
- }
99
- } else if (typeof fields === "object") {
100
- result.fields = Object.values(fields).reduce(
101
- (object, { key: fKey }) => {
102
- if (key !== fKey) {
103
- object[key] = fields[key];
104
- }
105
- return object;
106
- },
107
- {},
108
- );
109
- }
110
-
111
- return result;
112
- };
113
- const update = (fields) => {
114
- //KEY is NULLable
115
- if (!key) {
116
- return data.key
117
- ? Object.values(fields).reduce((result, field, i) => {
118
- const index = fields[field.key] ? field.key : i;
119
-
120
- return {
121
- ...result,
122
- [index]:
123
- data.key === field.key
124
- ? isFunction
125
- ? data(field)
126
- : data
127
- : field,
128
- };
129
- }, {})
130
- : {
131
- ...fields,
132
- [fields.length || 0]: isFunction ? data({}) : data,
133
- };
134
- }
135
-
136
- const { fields: filtered, item: field } = pop(fields, key);
137
-
138
- const updatedField = isFunction
139
- ? data(field || {})
140
- : { ...field, ...data };
141
- return joinData(
142
- filtered,
143
- fields[key] ? { [key]: updatedField } : updatedField,
144
- );
145
- };
146
-
147
- return update(fields);
148
- });
149
- };
150
-
151
- return {
152
- joinData,
153
- getFieldData,
154
- getFormFields,
155
- getFormField,
156
- setFormFields,
157
- setFormField,
158
- };
159
- }
1
+ function r(r,e){(null==e||e>r.length)&&(e=r.length);for(var t=0,n=Array(e);t<e;t++)n[t]=r[t];return n}function e(r,e,t){return e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function t(r){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(r){return Object.getOwnPropertyDescriptor(n,r).enumerable}))),o.forEach(function(t){e(r,t,n[t])})}return r}function n(r,e){return e=null!=e?e:{},Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(e)):(function(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);t.push.apply(t,n)}return t})(Object(e)).forEach(function(t){Object.defineProperty(r,t,Object.getOwnPropertyDescriptor(e,t))}),r}function o(e){return function(e){if(Array.isArray(e))return r(e)}(e)||function(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}(e)||u(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(r){return r&&"undefined"!=typeof Symbol&&r.constructor===Symbol?"symbol":typeof r}function u(e,t){if(e){if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}}export default function c(r){var c=r.form,f=r.setForm,a=r.FormFields,l=function(){for(var r=arguments.length,e=Array(r),n=0;n<r;n++)e[n]=arguments[n];var c=(function(r){if(Array.isArray(r))return r}(e)||function(r,e){var t,n,o=null==r?null:"undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(null!=o){var i=[],u=!0,c=!1;try{for(o=o.call(r);!(u=(t=o.next()).done)&&(i.push(t.value),i.length!==e);u=!0);}catch(r){c=!0,n=r}finally{try{u||null==o.return||o.return()}finally{if(c)throw n}}return i}}(e,1)||u(e,1)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0],f=Array.isArray(c)?"Array":(void 0===c?"undefined":i(c))==="object"?"Object":void 0,a=Array.isArray(c)?[]:(void 0===c?"undefined":i(c))==="object"?{}:null;if(a)return e.reduce(function(r,e){if("Array"===f)if(Array.isArray(e))return o(r).concat(o(e));else return o(r).concat([e]);return"Object"===f?t({},r,e):a},a)},y=function(){return c.fields||c},s=function(r){var e="function"==typeof r;f(function(o){return o.fields?n(t({},o),{fields:e?r(o.fields):r}):e?r(o):r})};return{joinData:l,getFieldData:function(r){return Array.isArray(a)?a[r]||a.find(function(e){return e.key===r}):(void 0===a?"undefined":i(a))==="object"?a[r]||Object.values(a).find(function(e){return e.key===r}):void 0},getFormFields:y,getFormField:function(r){return"Array"===FormProto?y().find(function(e){return e.key===r}):"Object"===FormProto?Object.values(y()).find(function(e){return e.key===r})||Object.keys(y()).reduce(function(e,t){return t===r&&(e=y()[t]),e},{}):void 0},setFormFields:s,setFormField:function(r){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,u="function"==typeof r;s(function(c){if(!o)return r.key?Object.values(c).reduce(function(o,i,f){var a=c[i.key]?i.key:f;return n(t({},o),e({},a,r.key===i.key?u?r(i):r:i))},{}):n(t({},c),e({},c.length||0,u?r({}):r));var f,a,y,s=(f=c,a=o,(y={fields:f,item:void 0}).item=f[a]||f.find(function(r){return r.key===a}),y.item&&(Array.isArray(f)?isNaN(parseInt(a,10))?y.fields=y.fields.filter(function(r){return r.key!==a}):y.fields.splice(a,1):(void 0===f?"undefined":i(f))==="object"&&(y.fields=Object.values(f).reduce(function(r,e){return a!==e.key&&(r[a]=f[a]),r},{}))),y),d=s.fields,b=s.item,m=u?r(b||{}):t({},b,r);return l(d,c[o]?e({},o,m):m)})}}}
@@ -1,78 +1 @@
1
- import General from "../functions/General";
2
-
3
- const noop = () => {};
4
-
5
- export default function ObjectWithNamedKeyObjects({
6
- form,
7
- setForm = noop,
8
- FormFields,
9
- } = {}) {
10
- const {
11
- joinData,
12
- getFieldData,
13
- updateFormField,
14
- getFormFields,
15
- getFormFieldsAsArray,
16
- getFormFieldsKeys,
17
- } = General({
18
- FormFields,
19
- });
20
-
21
- const getFormField = (key, argForm = form) => {
22
- return (
23
- Object.values(getFormFields(argForm))?.find(
24
- (field) => field?.key === key,
25
- ) ||
26
- Object.keys(getFormFields(argForm))?.reduce((result, field) => {
27
- if (field === key) result = getFormFields(argForm)[field];
28
- return result;
29
- }, null)
30
- );
31
- };
32
- const setFormFields = (data) => {
33
- const isFunction = typeof data === "function";
34
-
35
- setForm((state) => {
36
- if (state.fields) {
37
- return {
38
- ...state,
39
- fields: isFunction ? data(state.fields) : data,
40
- };
41
- } else {
42
- return isFunction ? data(state) : data;
43
- }
44
- });
45
- };
46
- const setFormField = (data, key = null) =>
47
- setFormFields((fields) => updateFormField(fields, data, key));
48
-
49
- const removeAllFormFields = () => setFormFields({});
50
- const removeFormField = (key) =>
51
- setFormFields((state) =>
52
- Object.keys(state)
53
- .filter((fKey) => fKey !== key)
54
- .reduce((obj, key) => ({ ...obj, [key]: state[key] }), {}),
55
- );
56
- const removeFormFields = ([...keys]) =>
57
- setFormFields((state) =>
58
- Object.keys(state)
59
- .filter((fKey) => !keys.includes(fKey))
60
- .reduce((obj, key) => ({ ...obj, [key]: state[key] }), {}),
61
- );
62
-
63
- return {
64
- joinData,
65
- getFieldData,
66
- getFormFields,
67
- getFormField,
68
- setFormFields,
69
- setFormField,
70
- // eslint-disable-next-line no-dupe-keys
71
- getFormFields: () => getFormFields(form),
72
- getFormFieldsAsArray: () => getFormFieldsAsArray(getFormFields(form)),
73
- getFormFieldsKeys: () => getFormFieldsKeys(getFormFields(form)),
74
- removeAllFormFields,
75
- removeFormField,
76
- removeFormFields,
77
- };
78
- }
1
+ function e(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}function r(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function t(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),o.forEach(function(t){r(e,t,n[t])})}return e}function n(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):(function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}),e}import o from"../functions/General";var i=function(){};export default function u(){var u,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},l=c.form,f=c.setForm,a=void 0===f?i:f,s=o({FormFields:c.FormFields}),d=s.joinData,y=s.getFieldData,m=s.updateFormField,b=s.getFormFields,F=s.getFormFieldsAsArray,p=s.getFormFieldsKeys,g=function(e){var r="function"==typeof e;a(function(o){return o.fields?n(t({},o),{fields:r?e(o.fields):e}):r?e(o):e})};return r(u={joinData:d,getFieldData:y,getFormFields:b,getFormField:function(e){var r,t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l;return(null==(r=Object.values(b(n)))?void 0:r.find(function(r){return(null==r?void 0:r.key)===e}))||(null==(t=Object.keys(b(n)))?void 0:t.reduce(function(r,t){return t===e&&(r=b(n)[t]),r},null))},setFormFields:g,setFormField:function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return g(function(t){return m(t,e,r)})}},"getFormFields",function(){return b(l)}),r(u,"getFormFieldsAsArray",function(){return F(b(l))}),r(u,"getFormFieldsKeys",function(){return p(b(l))}),r(u,"removeAllFormFields",function(){return g({})}),r(u,"removeFormField",function(e){return g(function(o){return Object.keys(o).filter(function(r){return r!==e}).reduce(function(e,i){return n(t({},e),r({},i,o[i]))},{})})}),r(u,"removeFormFields",function(o){var i=((function(e){if(Array.isArray(e))return e})(o)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(o)||function(r,t){if(r){if("string"==typeof r)return e(r,void 0);var n=Object.prototype.toString.call(r).slice(8,-1);if("Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(r,t)}}(o)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).slice(0);return g(function(e){return Object.keys(e).filter(function(e){return!i.includes(e)}).reduce(function(o,i){return n(t({},o),r({},i,e[i]))},{})})}),u}
@@ -1,134 +1 @@
1
- export default function General({ form, FormFields = [] } = {}) {
2
- const joinData = (...args) => {
3
- const [mainArg] = args;
4
- const MainArgProto = Array.isArray(mainArg)
5
- ? "Array"
6
- : typeof mainArg === "object"
7
- ? "Object"
8
- : undefined;
9
- const template = Array.isArray(mainArg)
10
- ? []
11
- : typeof mainArg === "object"
12
- ? {}
13
- : null;
14
-
15
- if (!template) return undefined;
16
-
17
- return args.reduce((result, item) => {
18
- if (MainArgProto === "Array") {
19
- if (Array.isArray(item)) {
20
- return [...result, ...item];
21
- } else {
22
- return [...result, item];
23
- }
24
- } else if (MainArgProto === "Object") {
25
- return { ...result, ...item };
26
- } else {
27
- return template;
28
- }
29
- }, template);
30
- };
31
- const getFieldData = (key) => {
32
- if (Array.isArray(FormFields)) {
33
- if (FormFields[key]) {
34
- return { ...FormFields[key] };
35
- } else {
36
- return { ...FormFields.find((f) => f.key === key) };
37
- }
38
- } else if (typeof FormFields === "object") {
39
- return (
40
- { ...FormFields[key] } || {
41
- ...Object.values(FormFields).find((f) => f.key === key),
42
- }
43
- );
44
- } else {
45
- return undefined;
46
- }
47
- };
48
- const getFormFields = (argForm = form) => {
49
- return argForm?.fields || argForm;
50
- };
51
- const getFormFieldsAsArray = (fields) => {
52
- if (Array.isArray(fields)) return fields;
53
-
54
- if (typeof fields === "object") {
55
- return Object.values(fields);
56
- }
57
-
58
- return fields;
59
- };
60
- const getFormFieldsKeys = (fields = getFormFields()) => {
61
- if (Array.isArray(fields)) return fields.map(({ key }) => key);
62
-
63
- if (typeof fields === "object") {
64
- return Object.values(fields).map(({ key }) => key);
65
- }
66
-
67
- return fields;
68
- };
69
- const popFormField = (fields, key) => {
70
- const result = { item: undefined, itemIndex: undefined };
71
-
72
- if (Array.isArray(fields)) {
73
- result.item = fields?.find((f) => f.key === key);
74
- result.itemIndex = result.item
75
- ? fields.findIndex((f) => f.key === key)
76
- : fields.length;
77
- } else if (typeof fields === "object") {
78
- result.item =
79
- fields[key] || Object.values(fields).find((f) => f.key === key);
80
- result.itemIndex = result.item
81
- ? fields[key]
82
- ? key
83
- : Object.values(fields).findIndex((f) => f.key === key)
84
- : key;
85
- }
86
-
87
- return result;
88
- };
89
- const updateFormField = (fields, data, key) => {
90
- const isFunction = typeof data === "function";
91
- //KEY is NULLable
92
- if (!key) {
93
- return data.key
94
- ? Object.values(fields).reduce((result, field, i) => {
95
- const index = fields[field.key] ? field.key : i;
96
-
97
- return {
98
- ...result,
99
- [index]:
100
- data.key === field.key
101
- ? isFunction
102
- ? data(field)
103
- : data
104
- : field,
105
- };
106
- }, {})
107
- : {
108
- ...fields,
109
- [fields.length || 0]: isFunction ? data({}) : data,
110
- };
111
- }
112
-
113
- const { item: field = data, itemIndex } = popFormField(fields, key);
114
-
115
- fields[itemIndex] = isFunction ? data(field || {}) : { ...field, ...data };
116
-
117
- return fields;
118
- };
119
-
120
- const getFieldClassName = (key, type) => {
121
- return `form-${type}_field-${key}`;
122
- };
123
-
124
- return {
125
- joinData,
126
- getFieldData,
127
- popFormField,
128
- updateFormField,
129
- getFormFields,
130
- getFormFieldsAsArray,
131
- getFieldClassName,
132
- getFormFieldsKeys,
133
- };
134
- }
1
+ function e(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}function r(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function t(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),o.forEach(function(t){r(e,t,n[t])})}return e}function n(e,r){return r=null!=r?r:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):(function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}),e}function o(r){return function(r){if(Array.isArray(r))return e(r)}(r)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(r)||u(r)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function u(r,t){if(r){if("string"==typeof r)return e(r,t);var n=Object.prototype.toString.call(r).slice(8,-1);if("Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(r,t)}}export default function a(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=e.form,c=e.FormFields,f=void 0===c?[]:c,l=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a;return(null==e?void 0:e.fields)||e},y=function(e,r){var t={item:void 0,itemIndex:void 0};return Array.isArray(e)?(t.item=null==e?void 0:e.find(function(e){return e.key===r}),t.itemIndex=t.item?e.findIndex(function(e){return e.key===r}):e.length):(void 0===e?"undefined":i(e))==="object"&&(t.item=e[r]||Object.values(e).find(function(e){return e.key===r}),t.itemIndex=t.item?e[r]?r:Object.values(e).findIndex(function(e){return e.key===r}):r),t};return{joinData:function(){for(var e=arguments.length,r=Array(e),n=0;n<e;n++)r[n]=arguments[n];var a=(function(e){if(Array.isArray(e))return e}(r)||function(e,r){var t,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],u=!0,a=!1;try{for(o=o.call(e);!(u=(t=o.next()).done)&&(i.push(t.value),i.length!==r);u=!0);}catch(e){a=!0,n=e}finally{try{u||null==o.return||o.return()}finally{if(a)throw n}}return i}}(r,1)||u(r,1)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0],c=Array.isArray(a)?"Array":(void 0===a?"undefined":i(a))==="object"?"Object":void 0,f=Array.isArray(a)?[]:(void 0===a?"undefined":i(a))==="object"?{}:null;if(f)return r.reduce(function(e,r){if("Array"===c)if(Array.isArray(r))return o(e).concat(o(r));else return o(e).concat([r]);return"Object"===c?t({},e,r):f},f)},getFieldData:function(e){if(Array.isArray(f))if(f[e])return t({},f[e]);else return t({},f.find(function(r){return r.key===e}));if((void 0===f?"undefined":i(f))==="object")return t({},f[e])||t({},Object.values(f).find(function(r){return r.key===e}))},popFormField:y,updateFormField:function(e,o,i){var u="function"==typeof o;if(!i)return o.key?Object.values(e).reduce(function(i,a,c){var f=e[a.key]?a.key:c;return n(t({},i),r({},f,o.key===a.key?u?o(a):o:a))},{}):n(t({},e),r({},e.length||0,u?o({}):o));var a=y(e,i),c=a.item,f=void 0===c?o:c;return e[a.itemIndex]=u?o(f||{}):t({},f,o),e},getFormFields:l,getFormFieldsAsArray:function(e){return Array.isArray(e)?e:(void 0===e?"undefined":i(e))==="object"?Object.values(e):e},getFieldClassName:function(e,r){return"form-".concat(r,"_field-").concat(e)},getFormFieldsKeys:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l();return Array.isArray(e)?e.map(function(e){return e.key}):(void 0===e?"undefined":i(e))==="object"?Object.values(e).map(function(e){return e.key}):e}}}
@@ -1,111 +1 @@
1
- const defaultRenderFieldComponent = () => {
2
- // eslint-disable-next-line no-console
3
- console.error("RenderFields: RenderFieldComponent Property is not recieved!");
4
- return null;
5
- };
6
-
7
- const defaultFormDataDriver = () => {
8
- // eslint-disable-next-line no-console
9
- console.error("RenderFields: FormDataDriver Property is not recieved!");
10
- return null;
11
- };
12
-
13
- const defaultOnFieldChange = () => {
14
- // eslint-disable-next-line no-console
15
- console.warn(
16
- "RenderFields: Be careful, onFieldChange handler is not recieved!",
17
- );
18
- return null;
19
- };
20
-
21
- const defaultOnFieldBlur = () => {
22
- // eslint-disable-next-line no-console
23
- console.warn(
24
- "RenderFields: Be careful, defaultOnFieldBlur handler is not recieved!",
25
- );
26
- return null;
27
- };
28
-
29
- export default function RenderFields({
30
- form,
31
- fields,
32
- cols = 1,
33
- FormDataDriver = defaultFormDataDriver,
34
- RenderFieldComponent = defaultRenderFieldComponent,
35
- onFieldChange = defaultOnFieldChange,
36
- onFieldBlur = defaultOnFieldBlur,
37
- } = {}) {
38
- const maxColumns = 6;
39
- const maxWidth = 12;
40
-
41
- const { getFormField } = FormDataDriver({ form });
42
-
43
- const getColumnsQty = () => {
44
- return cols > maxColumns ? maxColumns : cols;
45
- };
46
-
47
- const renderFormField = (key) => {
48
- try {
49
- const field = { ...getFormField(key), key };
50
- const { wrapperRef } = field;
51
-
52
- return (
53
- <div
54
- key={`render-field-wrapper-${key}`}
55
- id={`render-field-wrapper-${key}`}
56
- ref={
57
- wrapperRef
58
- ? typeof wrapperRef === "function"
59
- ? (node) => wrapperRef(node, key)
60
- : wrapperRef
61
- : null
62
- }
63
- >
64
- <RenderFieldComponent
65
- key={key}
66
- field={field}
67
- onChange={(value) => onFieldChange(key, value)}
68
- onBlur={(...args) => onFieldBlur(...args)}
69
- />
70
- </div>
71
- );
72
- } catch (e) {
73
- return null;
74
- }
75
- };
76
-
77
- const renderSingleColumn = () => {
78
- return fields.map(renderFormField);
79
- };
80
- const renderSplitColumns = () => {
81
- const fieldsLen = fields?.length || 0;
82
- const columnsQty =
83
- getColumnsQty() > fieldsLen ? fieldsLen : getColumnsQty();
84
-
85
- if (!columnsQty) return null;
86
-
87
- const parts = new Array(columnsQty).fill([]).map((v, i) => {
88
- const startIndex = (fieldsLen / columnsQty) * i;
89
- const endIndex = startIndex + fieldsLen / columnsQty;
90
-
91
- return fields.slice(startIndex, endIndex);
92
- });
93
-
94
- return (
95
- <div className="row">
96
- {parts.map((part, i) => (
97
- <div
98
- key={`render-fields-row-${i}`}
99
- className={`col-12 col-lg-${parseInt(maxWidth / columnsQty, 10)}`}
100
- >
101
- {part.map(renderFormField)}
102
- </div>
103
- ))}
104
- </div>
105
- );
106
- };
107
-
108
- const render = cols === 1 ? renderSingleColumn : renderSplitColumns;
109
-
110
- return render();
111
- }
1
+ function r(r,e){(null==e||e>r.length)&&(e=r.length);for(var n=0,t=Array(e);n<e;n++)t[n]=r[n];return t}import{jsx as e}from"react/jsx-runtime";var n=function(){return null},t=function(){return null},o=function(){return null};export default function i(){var i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},c=i.form,l=i.fields,u=i.cols,a=void 0===u?1:u,f=i.FormDataDriver,p=i.RenderFieldComponent,d=void 0===p?n:p,y=i.onFieldChange,s=void 0===y?t:y,b=i.onFieldBlur,m=void 0===b?o:b,v=(void 0===f?function(){return null}:f)({form:c}).getFormField,O=function(){return a>6?6:a},g=function(n){try{var t,o,i=(t=function(r){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{},t=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(t=t.concat(Object.getOwnPropertySymbols(n).filter(function(r){return Object.getOwnPropertyDescriptor(n,r).enumerable}))),t.forEach(function(e){var t;t=n[e],e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t})}return r}({},v(n)),o={key:n},o=null!=o?o:{},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(o)):(function(r,e){var n=Object.keys(r);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(r);n.push.apply(n,t)}return n})(Object(o)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(o,r))}),t),c=i.wrapperRef;return e("div",{id:"render-field-wrapper-".concat(n),ref:c?"function"==typeof c?function(r){return c(r,n)}:c:null,children:e(d,{field:i,onChange:function(r){return s(n,r)},onBlur:function(){for(var e=arguments.length,n=Array(e),t=0;t<e;t++)n[t]=arguments[t];return m.apply(void 0,function(e){if(Array.isArray(e))return r(e)}(n)||function(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}(n)||function(e,n){if(e){if("string"==typeof e)return r(e,void 0);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return r(e,n)}}(n)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())}},n)},"render-field-wrapper-".concat(n))}catch(r){return null}};return(1===a?function(){return l.map(g)}:function(){var r=(null==l?void 0:l.length)||0,n=O()>r?r:O();return n?e("div",{className:"row",children:Array(n).fill([]).map(function(e,t){var o=r/n*t;return l.slice(o,o+r/n)}).map(function(r,t){return e("div",{className:"col-12 col-lg-".concat(parseInt(12/n,10)),children:r.map(g)},"render-fields-row-".concat(t))})}):null})()}
@@ -1,12 +1 @@
1
- import { useEffect, useRef } from "react";
2
-
3
- function usePrevious(value) {
4
- const ref = useRef();
5
-
6
- useEffect(() => {
7
- ref.current = value;
8
- }, [value]);
9
- return ref.current;
10
- }
11
-
12
- export default usePrevious;
1
+ import{useEffect as r,useRef as t}from"react";export default function(n){var e=t();return r(function(){e.current=n},[n]),e.current}