intelicoreact 1.6.19 → 1.6.20

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 +102 -1
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +89 -1
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +232 -1
  4. package/dist/Atomic/FormElements/Calendar/Calendar.props.js +3 -1
  5. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +101 -1
  6. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +70 -1
  7. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +350 -1
  8. package/dist/Atomic/FormElements/Datepicker/Datepicker.props.js +3 -1
  9. package/dist/Atomic/FormElements/Datepicker/components/DatepickerCalendar.js +177 -1
  10. package/dist/Atomic/FormElements/Datepicker/components/DatepickerCalendar.props.js +3 -1
  11. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +561 -1
  12. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +20 -1
  13. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +405 -1
  14. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +94 -1
  15. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +105 -1
  16. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +67 -1
  17. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +247 -1
  18. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +160 -1
  19. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +193 -1
  20. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +135 -1
  21. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.js +116 -1
  22. package/dist/Atomic/FormElements/Input/Input.js +467 -1
  23. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +161 -1
  24. package/dist/Atomic/FormElements/InputColor/InputColor.js +64 -1
  25. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +166 -1
  26. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +354 -1
  27. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +71 -1
  28. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +693 -1
  29. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +254 -1
  30. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +32 -1
  31. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +200 -1
  32. package/dist/Atomic/FormElements/InputLink/InputLink.js +99 -1
  33. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +37 -1
  34. package/dist/Atomic/FormElements/InputMask/InputMask.js +1214 -1
  35. package/dist/Atomic/FormElements/InputMask/config.js +15 -1
  36. package/dist/Atomic/FormElements/InputMask/functions.js +58 -1
  37. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +674 -1
  38. package/dist/Atomic/FormElements/InputMask2/config.js +15 -1
  39. package/dist/Atomic/FormElements/InputMask2/functions.js +58 -1
  40. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +766 -1
  41. package/dist/Atomic/FormElements/InputMask3/config.js +15 -1
  42. package/dist/Atomic/FormElements/InputMask3/functions.js +58 -1
  43. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +114 -1
  44. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +140 -1
  45. package/dist/Atomic/FormElements/Label/Label.js +82 -1
  46. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +506 -1
  47. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +45 -1
  48. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +331 -1
  49. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +66 -1
  50. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +80 -1
  51. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +64 -1
  52. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +54 -1
  53. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +183 -1
  54. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +209 -1
  55. package/dist/Atomic/FormElements/RangeList/RangeList.js +175 -1
  56. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +43 -1
  57. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +443 -1
  58. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +858 -1
  59. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +39 -1
  60. package/dist/Atomic/FormElements/Switcher/Switcher.js +59 -1
  61. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +50 -1
  62. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +47 -1
  63. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +96 -1
  64. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +40 -1
  65. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +64 -1
  66. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +170 -1
  67. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +202 -1
  68. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +67 -1
  69. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +115 -1
  70. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +826 -1
  71. package/dist/Atomic/FormElements/Text/Text.js +125 -1
  72. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +45 -1
  73. package/dist/Atomic/FormElements/Textarea/Textarea.js +80 -1
  74. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +176 -1
  75. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +62 -1
  76. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +127 -1
  77. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +220 -1
  78. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +83 -1
  79. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +82 -1
  80. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +101 -1
  81. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +29 -1
  82. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +113 -1
  83. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +30 -1
  84. package/dist/Atomic/Layout/Header/Header.js +85 -1
  85. package/dist/Atomic/Layout/Spinner/Spinner.js +39 -1
  86. package/dist/Atomic/UI/Accordion/Accordion.js +118 -1
  87. package/dist/Atomic/UI/Accordion/AccordionItem.js +181 -1
  88. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +238 -1
  89. package/dist/Atomic/UI/AccordionText/AccordionText.js +69 -1
  90. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +207 -1
  91. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +56 -1
  92. package/dist/Atomic/UI/Alert/Alert.js +72 -1
  93. package/dist/Atomic/UI/Arrow/Arrow.js +132 -1
  94. package/dist/Atomic/UI/Box/Box.js +52 -1
  95. package/dist/Atomic/UI/Button/Button.js +89 -1
  96. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +72 -1
  97. package/dist/Atomic/UI/Chart/Chart.js +172 -1
  98. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +95 -1
  99. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +80 -1
  100. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +188 -1
  101. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +335 -1
  102. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +43 -1
  103. package/dist/Atomic/UI/Chart/partial/utils.js +60 -1
  104. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +109 -1
  105. package/dist/Atomic/UI/DateTime/DateTime.js +57 -1
  106. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +44 -1
  107. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +15 -1
  108. package/dist/Atomic/UI/DoubleString/DoubleString.js +102 -1
  109. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +226 -1
  110. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +221 -1
  111. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +106 -1
  112. package/dist/Atomic/UI/Hint/Hint.js +193 -1
  113. package/dist/Atomic/UI/Hint/partials/_utils.js +51 -1
  114. package/dist/Atomic/UI/Modal/Modal.js +188 -1
  115. package/dist/Atomic/UI/Modal/ModalHOC.js +72 -1
  116. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +46 -1
  117. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +83 -1
  118. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +200 -1
  119. package/dist/Atomic/UI/MonoAccordion/MonoAccordion._test.js +75 -1
  120. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +80 -1
  121. package/dist/Atomic/UI/NavLine/NavLine.js +293 -1
  122. package/dist/Atomic/UI/PageTitle/PageTitle.js +75 -1
  123. package/dist/Atomic/UI/PieChart/PieChart.js +42 -1
  124. package/dist/Atomic/UI/Price/Price.js +22 -1
  125. package/dist/Atomic/UI/PriceRange/PriceRange.js +36 -1
  126. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +71 -1
  127. package/dist/Atomic/UI/Status/Status.js +59 -1
  128. package/dist/Atomic/UI/Table/Partials/TdCell.js +87 -1
  129. package/dist/Atomic/UI/Table/Partials/TdHeader.js +38 -1
  130. package/dist/Atomic/UI/Table/Partials/TdRow.js +99 -1
  131. package/dist/Atomic/UI/Table/Partials/TdTitle.js +52 -1
  132. package/dist/Atomic/UI/Table/Table.js +63 -1
  133. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +80 -1
  134. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +28 -1
  135. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +13 -1
  136. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +53 -1
  137. package/dist/Atomic/UI/Tag/Tag.js +160 -1
  138. package/dist/Atomic/UI/TagList/TagList.js +251 -1
  139. package/dist/Atomic/UI/UserBox/UserBox.js +73 -1
  140. package/dist/Atomic/UI/WizardStepper/constructor.js +84 -1
  141. package/dist/Atomic/UI/WizardStepper/index.js +3 -1
  142. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +37 -1
  143. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +3 -1
  144. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +61 -1
  145. package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +3 -1
  146. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +39 -1
  147. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +3 -1
  148. package/dist/Atomic/UI/WizardStepper/ui/icons.js +49 -1
  149. package/dist/Atomic/UI/WizardStepper/ui/index.js +3 -1
  150. package/dist/Classes/AbortableFetch.js +454 -1
  151. package/dist/Classes/AnimatedHandler.js +47 -1
  152. package/dist/Classes/RESTAPI/index.js +228 -1
  153. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +457 -1
  154. package/dist/Classes/RESTAPI/partials/ApiBase.js +48 -1
  155. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +112 -1
  156. package/dist/Classes/RESTAPI/partials/ApiUtils.js +189 -1
  157. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +252 -1
  158. package/dist/Classes/RESTAPI/partials/Utils.js +92 -1
  159. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +3 -1
  160. package/dist/Classes/RESTAPI/partials/_utils.js +197 -1
  161. package/dist/Constants/index.constants.js +78 -1
  162. package/dist/Functions/Portal.js +22 -1
  163. package/dist/Functions/customEventListener.js +96 -1
  164. package/dist/Functions/dateTime.js +149 -1
  165. package/dist/Functions/fieldValueFormatters.js +405 -1
  166. package/dist/Functions/guards/assertions.js +66 -1
  167. package/dist/Functions/guards/safeValue.js +30 -1
  168. package/dist/Functions/guards/typeGuards.js +116 -1
  169. package/dist/Functions/hooks/useFormFieldsChangesManager.js +95 -1
  170. package/dist/Functions/locale/createTranslator.js +32 -1
  171. package/dist/Functions/operations.js +130 -1
  172. package/dist/Functions/presets/inputMaskPresets.js +170 -1
  173. package/dist/Functions/presets/inputPresets.js +60 -1
  174. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +45 -1
  175. package/dist/Functions/schemas.js +31 -1
  176. package/dist/Functions/useBodyScrollLock.js +17 -1
  177. package/dist/Functions/useClickOutside.js +15 -1
  178. package/dist/Functions/useDebounce.js +17 -1
  179. package/dist/Functions/useFieldFocus.js +84 -1
  180. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +39 -1
  181. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +159 -1
  182. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +78 -1
  183. package/dist/Functions/useFormTools/functions/General.js +134 -1
  184. package/dist/Functions/useFormTools/functions/RenderFields.js +111 -1
  185. package/dist/Functions/useFormTools/functions/usePrevious.js +12 -1
  186. package/dist/Functions/useFormTools/index.js +778 -1
  187. package/dist/Functions/useInputHighlightError.js +67 -1
  188. package/dist/Functions/useIsMobile/useIsMobile.js +53 -1
  189. package/dist/Functions/useKeyPress/useHandleKeyPress.js +21 -1
  190. package/dist/Functions/useKeyPress/useKeyPress.js +75 -1
  191. package/dist/Functions/useLocalStorage.js +34 -1
  192. package/dist/Functions/useLocationParams.js +27 -1
  193. package/dist/Functions/useMediaQuery.js +17 -1
  194. package/dist/Functions/useMetaInfo.js +43 -1
  195. package/dist/Functions/useMouseUpOutside.js +16 -1
  196. package/dist/Functions/useOnlineStatus.js +29 -1
  197. package/dist/Functions/usePasswordChecker.js +110 -1
  198. package/dist/Functions/usePrevious.js +12 -1
  199. package/dist/Functions/useResize.js +31 -1
  200. package/dist/Functions/useScrollTo.js +17 -1
  201. package/dist/Functions/useToggle.js +17 -1
  202. package/dist/Functions/utils.js +522 -1
  203. package/dist/Langs.js +168 -1
  204. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +21 -1
  205. package/dist/Molecular/CustomIcons/components/AlertCircle.js +23 -1
  206. package/dist/Molecular/CustomIcons/components/AppStore.js +29 -1
  207. package/dist/Molecular/CustomIcons/components/Arrow.js +32 -1
  208. package/dist/Molecular/CustomIcons/components/ArrowDown.js +17 -1
  209. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +22 -1
  210. package/dist/Molecular/CustomIcons/components/ArrowRight.js +22 -1
  211. package/dist/Molecular/CustomIcons/components/ArrowUp.js +17 -1
  212. package/dist/Molecular/CustomIcons/components/Bell.js +15 -1
  213. package/dist/Molecular/CustomIcons/components/Button.js +12 -1
  214. package/dist/Molecular/CustomIcons/components/Campaigns.js +16 -1
  215. package/dist/Molecular/CustomIcons/components/Check.js +14 -1
  216. package/dist/Molecular/CustomIcons/components/Check2.js +12 -1
  217. package/dist/Molecular/CustomIcons/components/ChevronDown.js +12 -1
  218. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +11 -1
  219. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +11 -1
  220. package/dist/Molecular/CustomIcons/components/ChevronRight.js +11 -1
  221. package/dist/Molecular/CustomIcons/components/ChevronUp.js +11 -1
  222. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +27 -1
  223. package/dist/Molecular/CustomIcons/components/Close.js +14 -1
  224. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +17 -1
  225. package/dist/Molecular/CustomIcons/components/Delete.js +16 -1
  226. package/dist/Molecular/CustomIcons/components/Edit.js +15 -1
  227. package/dist/Molecular/CustomIcons/components/Email.js +31 -1
  228. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +18 -1
  229. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +35 -1
  230. package/dist/Molecular/CustomIcons/components/Flows.js +15 -1
  231. package/dist/Molecular/CustomIcons/components/Gift.js +25 -1
  232. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +29 -1
  233. package/dist/Molecular/CustomIcons/components/GooglePlay.js +29 -1
  234. package/dist/Molecular/CustomIcons/components/HelpCircle.js +19 -1
  235. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +20 -1
  236. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +19 -1
  237. package/dist/Molecular/CustomIcons/components/Home.js +16 -1
  238. package/dist/Molecular/CustomIcons/components/Home2.js +22 -1
  239. package/dist/Molecular/CustomIcons/components/Key.js +23 -1
  240. package/dist/Molecular/CustomIcons/components/Landers.js +20 -1
  241. package/dist/Molecular/CustomIcons/components/Lock.js +15 -1
  242. package/dist/Molecular/CustomIcons/components/Mail.js +26 -1
  243. package/dist/Molecular/CustomIcons/components/Mastercard.js +73 -1
  244. package/dist/Molecular/CustomIcons/components/Minus.js +25 -1
  245. package/dist/Molecular/CustomIcons/components/Offers.js +16 -1
  246. package/dist/Molecular/CustomIcons/components/Pause.js +28 -1
  247. package/dist/Molecular/CustomIcons/components/PayPal.js +41 -1
  248. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +28 -1
  249. package/dist/Molecular/CustomIcons/components/Phone.js +30 -1
  250. package/dist/Molecular/CustomIcons/components/Play.js +25 -1
  251. package/dist/Molecular/CustomIcons/components/Plus.js +25 -1
  252. package/dist/Molecular/CustomIcons/components/Profile.js +16 -1
  253. package/dist/Molecular/CustomIcons/components/QRCode.js +29 -1
  254. package/dist/Molecular/CustomIcons/components/Rectangle.js +12 -1
  255. package/dist/Molecular/CustomIcons/components/Revert.js +13 -1
  256. package/dist/Molecular/CustomIcons/components/Star.js +14 -1
  257. package/dist/Molecular/CustomIcons/components/Star2.js +16 -1
  258. package/dist/Molecular/CustomIcons/components/TrafficSources.js +14 -1
  259. package/dist/Molecular/CustomIcons/components/Trash.js +15 -1
  260. package/dist/Molecular/CustomIcons/components/TrashRed.js +15 -1
  261. package/dist/Molecular/CustomIcons/components/Triggers.js +15 -1
  262. package/dist/Molecular/CustomIcons/components/User.js +25 -1
  263. package/dist/Molecular/CustomIcons/components/Visa.js +31 -1
  264. package/dist/Molecular/CustomIcons/components/X.js +12 -1
  265. package/dist/Molecular/CustomIcons/index.js +61 -1
  266. package/dist/Molecular/FormElement/FormElement.js +54 -1
  267. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +184 -1
  268. package/dist/Molecular/FormWithDependOn/partials/_utils.js +53 -1
  269. package/dist/Molecular/InputAddress/InputAddress.js +620 -1
  270. package/dist/Molecular/InputPassword/InputPassword.js +48 -1
  271. package/dist/index.js +1 -1
  272. package/package.json +1 -1
@@ -1 +1,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
+ 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 +1,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
+ 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 +1,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
+ 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 +1,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
+ 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 +1,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
+ 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 +1,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
+ 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 +1,12 @@
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}
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;