intelicoreact 1.4.76 → 1.4.78

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 (269) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +9 -1
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +10 -1
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +24 -4
  4. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +10 -1
  5. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +14 -2
  6. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +54 -5
  7. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +21 -3
  8. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +145 -52
  9. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +7 -1
  10. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +91 -25
  11. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +15 -3
  12. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +29 -15
  13. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +15 -5
  14. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +23 -4
  15. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +26 -6
  16. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +38 -19
  17. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +38 -9
  18. package/dist/Atomic/FormElements/Input/Input.js +60 -25
  19. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +31 -4
  20. package/dist/Atomic/FormElements/InputColor/InputColor.js +14 -4
  21. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +29 -6
  22. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +43 -8
  23. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +21 -3
  24. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +81 -58
  25. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +41 -6
  26. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +8 -1
  27. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +46 -16
  28. package/dist/Atomic/FormElements/InputLink/InputLink.js +23 -6
  29. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +4 -0
  30. package/dist/Atomic/FormElements/InputMask/InputMask.js +208 -77
  31. package/dist/Atomic/FormElements/InputMask/functions.js +28 -2
  32. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +119 -43
  33. package/dist/Atomic/FormElements/InputMask2/functions.js +28 -2
  34. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +137 -44
  35. package/dist/Atomic/FormElements/InputMask3/functions.js +28 -2
  36. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +17 -3
  37. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +24 -5
  38. package/dist/Atomic/FormElements/Label/Label.js +9 -1
  39. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +73 -35
  40. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +15 -3
  41. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +44 -23
  42. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +17 -7
  43. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +14 -3
  44. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +10 -1
  45. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +14 -3
  46. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +23 -3
  47. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +34 -17
  48. package/dist/Atomic/FormElements/RangeList/RangeList.js +25 -6
  49. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +11 -1
  50. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +85 -14
  51. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +132 -43
  52. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +10 -1
  53. package/dist/Atomic/FormElements/Switcher/Switcher.js +10 -1
  54. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +13 -1
  55. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +10 -1
  56. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +17 -2
  57. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +17 -3
  58. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +11 -1
  59. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +29 -6
  60. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +3 -2
  61. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +12 -1
  62. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +23 -6
  63. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +223 -105
  64. package/dist/Atomic/FormElements/Text/Text.js +16 -10
  65. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +9 -1
  66. package/dist/Atomic/FormElements/Textarea/Textarea.js +16 -5
  67. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +35 -6
  68. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +13 -4
  69. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +21 -7
  70. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +35 -8
  71. package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +91 -0
  72. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +18 -5
  73. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +10 -3
  74. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +11 -3
  75. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +2 -1
  76. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +12 -5
  77. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
  78. package/dist/Atomic/Layout/Header/Header.js +15 -3
  79. package/dist/Atomic/Layout/MainMenu/MainMenu.js +20 -3
  80. package/dist/Atomic/Layout/Spinner/Spinner.js +8 -1
  81. package/dist/Atomic/UI/Accordion/Accordion.js +19 -3
  82. package/dist/Atomic/UI/Accordion/AccordionItem.js +23 -9
  83. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +32 -7
  84. package/dist/Atomic/UI/AccordionText/AccordionText.js +17 -3
  85. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +21 -4
  86. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +15 -3
  87. package/dist/Atomic/UI/Alert/Alert.js +19 -3
  88. package/dist/Atomic/UI/Arrow/Arrow.js +16 -3
  89. package/dist/Atomic/UI/Box/Box.js +9 -3
  90. package/dist/Atomic/UI/Button/Button.js +11 -2
  91. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +10 -1
  92. package/dist/Atomic/UI/Chart/Chart.js +29 -4
  93. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +19 -11
  94. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +12 -1
  95. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +34 -11
  96. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +56 -82
  97. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +19 -15
  98. package/dist/Atomic/UI/Chart/partial/utils.js +20 -6
  99. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +13 -3
  100. package/dist/Atomic/UI/DateTime/DateTime.js +14 -3
  101. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +16 -4
  102. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +11 -3
  103. package/dist/Atomic/UI/DoubleString/DoubleString.js +17 -5
  104. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +10 -3
  105. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +52 -17
  106. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +29 -1
  107. package/dist/Atomic/UI/Hint/Hint.js +39 -13
  108. package/dist/Atomic/UI/Hint/partials/_utils.js +19 -4
  109. package/dist/Atomic/UI/Modal/Modal.js +28 -6
  110. package/dist/Atomic/UI/Modal/ModalHOC.js +9 -1
  111. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +7 -1
  112. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +8 -1
  113. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +49 -32
  114. package/dist/Atomic/UI/ModalBackup/Modal.js +174 -0
  115. package/dist/Atomic/UI/ModalBackup/Modal.scss +333 -0
  116. package/dist/Atomic/UI/ModalBackup/ModalHOC.js +51 -0
  117. package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +24 -0
  118. package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +41 -0
  119. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +21 -6
  120. package/dist/Atomic/UI/NavLine/NavLine.js +55 -26
  121. package/dist/Atomic/UI/NavLine/Tabs.js +3 -2
  122. package/dist/Atomic/UI/PageTitle/PageTitle.js +10 -2
  123. package/dist/Atomic/UI/PieChart/PieChart.js +10 -1
  124. package/dist/Atomic/UI/Price/Price.js +8 -3
  125. package/dist/Atomic/UI/PriceRange/PriceRange.js +7 -1
  126. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +16 -1
  127. package/dist/Atomic/UI/Status/Status.js +8 -1
  128. package/dist/Atomic/UI/Table/Partials/TdCell.js +29 -5
  129. package/dist/Atomic/UI/Table/Partials/TdHeader.js +11 -1
  130. package/dist/Atomic/UI/Table/Partials/TdRow.js +17 -5
  131. package/dist/Atomic/UI/Table/Partials/TdTitle.js +14 -3
  132. package/dist/Atomic/UI/Table/Table.js +12 -1
  133. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +18 -2
  134. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +9 -1
  135. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +4 -1
  136. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +13 -1
  137. package/dist/Atomic/UI/Tag/Tag.js +26 -11
  138. package/dist/Atomic/UI/TagList/TagList.js +52 -21
  139. package/dist/Atomic/UI/TagList/TagList.scss +3 -2
  140. package/dist/Atomic/UI/UserBox/UserBox.js +13 -1
  141. package/dist/Atomic/UI/WizardStepper/constructor.js +11 -3
  142. package/dist/Atomic/UI/WizardStepper/index.js +5 -1
  143. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +10 -0
  144. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +4 -1
  145. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +17 -2
  146. package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +5 -1
  147. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +15 -1
  148. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +5 -1
  149. package/dist/Atomic/UI/WizardStepper/ui/icons.js +9 -2
  150. package/dist/Atomic/UI/WizardStepper/ui/index.js +5 -1
  151. package/dist/Classes/AbortableFetch.js +93 -36
  152. package/dist/Classes/AnimatedHandler.js +7 -3
  153. package/dist/Classes/RESTAPI/index.js +43 -39
  154. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +93 -35
  155. package/dist/Classes/RESTAPI/partials/ApiBase.js +9 -1
  156. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +32 -24
  157. package/dist/Classes/RESTAPI/partials/ApiUtils.js +41 -34
  158. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +46 -21
  159. package/dist/Classes/RESTAPI/partials/Utils.js +19 -6
  160. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +6 -2
  161. package/dist/Classes/RESTAPI/partials/_utils.js +39 -16
  162. package/dist/Constants/index.constants.js +15 -8
  163. package/dist/Functions/Portal.js +16 -5
  164. package/dist/Functions/customEventListener.js +17 -4
  165. package/dist/Functions/fieldValueFormatters.js +83 -43
  166. package/dist/Functions/hooks/useFormFieldsChangesManager.js +26 -23
  167. package/dist/Functions/locale/createTranslator.js +9 -4
  168. package/dist/Functions/operations.js +22 -12
  169. package/dist/Functions/presets/inputMaskPresets.js +11 -9
  170. package/dist/Functions/presets/inputPresets.js +11 -8
  171. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +9 -7
  172. package/dist/Functions/schemas.js +13 -6
  173. package/dist/Functions/useBodyScrollLock.js +6 -1
  174. package/dist/Functions/useClickOutside.js +4 -0
  175. package/dist/Functions/useDebounce.js +7 -2
  176. package/dist/Functions/useFieldFocus.js +18 -6
  177. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +9 -0
  178. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +23 -12
  179. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +15 -6
  180. package/dist/Functions/useFormTools/functions/General.js +28 -18
  181. package/dist/Functions/useFormTools/functions/RenderFields.js +11 -2
  182. package/dist/Functions/useFormTools/functions/usePrevious.js +5 -1
  183. package/dist/Functions/useFormTools/index.js +144 -85
  184. package/dist/Functions/useInputHighlightError.js +12 -3
  185. package/dist/Functions/useIsMobile.js +13 -7
  186. package/dist/Functions/useKeyPress/useHandleKeyPress.js +7 -1
  187. package/dist/Functions/useKeyPress/useKeyPress.js +9 -1
  188. package/dist/Functions/useLocalStorage.js +9 -1
  189. package/dist/Functions/useLocationParams.js +5 -4
  190. package/dist/Functions/useMediaQuery.js +9 -3
  191. package/dist/Functions/useMetaInfo.js +10 -3
  192. package/dist/Functions/useMouseUpOutside.js +3 -0
  193. package/dist/Functions/useOnlineStatus.js +9 -1
  194. package/dist/Functions/usePasswordChecker.js +20 -4
  195. package/dist/Functions/usePrevious.js +5 -1
  196. package/dist/Functions/useResize.js +10 -2
  197. package/dist/Functions/useScrollTo.js +7 -2
  198. package/dist/Functions/useToggle.js +5 -1
  199. package/dist/Functions/utils.js +131 -56
  200. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +9 -2
  201. package/dist/Molecular/CustomIcons/components/AlertCircle.js +9 -2
  202. package/dist/Molecular/CustomIcons/components/AppStore.js +9 -2
  203. package/dist/Molecular/CustomIcons/components/Arrow.js +9 -2
  204. package/dist/Molecular/CustomIcons/components/ArrowDown.js +9 -2
  205. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +9 -2
  206. package/dist/Molecular/CustomIcons/components/ArrowRight.js +9 -2
  207. package/dist/Molecular/CustomIcons/components/ArrowUp.js +9 -2
  208. package/dist/Molecular/CustomIcons/components/Bell.js +9 -2
  209. package/dist/Molecular/CustomIcons/components/Button.js +9 -2
  210. package/dist/Molecular/CustomIcons/components/Campaigns.js +9 -2
  211. package/dist/Molecular/CustomIcons/components/Check.js +9 -2
  212. package/dist/Molecular/CustomIcons/components/Check2.js +9 -2
  213. package/dist/Molecular/CustomIcons/components/ChevronDown.js +9 -2
  214. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +9 -2
  215. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +9 -2
  216. package/dist/Molecular/CustomIcons/components/ChevronRight.js +9 -2
  217. package/dist/Molecular/CustomIcons/components/ChevronUp.js +9 -2
  218. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +9 -2
  219. package/dist/Molecular/CustomIcons/components/Close.js +9 -2
  220. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +9 -2
  221. package/dist/Molecular/CustomIcons/components/Delete.js +9 -2
  222. package/dist/Molecular/CustomIcons/components/Edit.js +9 -2
  223. package/dist/Molecular/CustomIcons/components/Email.js +9 -2
  224. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +9 -2
  225. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +9 -2
  226. package/dist/Molecular/CustomIcons/components/Flows.js +9 -2
  227. package/dist/Molecular/CustomIcons/components/Gift.js +9 -2
  228. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +9 -2
  229. package/dist/Molecular/CustomIcons/components/GooglePlay.js +9 -2
  230. package/dist/Molecular/CustomIcons/components/HelpCircle.js +9 -2
  231. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +9 -2
  232. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +9 -2
  233. package/dist/Molecular/CustomIcons/components/Home.js +9 -2
  234. package/dist/Molecular/CustomIcons/components/Home2.js +9 -2
  235. package/dist/Molecular/CustomIcons/components/Key.js +9 -2
  236. package/dist/Molecular/CustomIcons/components/Landers.js +9 -2
  237. package/dist/Molecular/CustomIcons/components/Lock.js +9 -2
  238. package/dist/Molecular/CustomIcons/components/Mail.js +9 -2
  239. package/dist/Molecular/CustomIcons/components/Mastercard.js +9 -2
  240. package/dist/Molecular/CustomIcons/components/Minus.js +9 -2
  241. package/dist/Molecular/CustomIcons/components/Offers.js +9 -2
  242. package/dist/Molecular/CustomIcons/components/Pause.js +9 -2
  243. package/dist/Molecular/CustomIcons/components/PayPal.js +9 -2
  244. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +9 -2
  245. package/dist/Molecular/CustomIcons/components/Phone.js +9 -2
  246. package/dist/Molecular/CustomIcons/components/Play.js +9 -2
  247. package/dist/Molecular/CustomIcons/components/Plus.js +9 -2
  248. package/dist/Molecular/CustomIcons/components/Profile.js +9 -2
  249. package/dist/Molecular/CustomIcons/components/QRCode.js +9 -2
  250. package/dist/Molecular/CustomIcons/components/Rectangle.js +9 -2
  251. package/dist/Molecular/CustomIcons/components/Revert.js +9 -2
  252. package/dist/Molecular/CustomIcons/components/Star.js +9 -2
  253. package/dist/Molecular/CustomIcons/components/Star2.js +9 -2
  254. package/dist/Molecular/CustomIcons/components/TrafficSources.js +9 -2
  255. package/dist/Molecular/CustomIcons/components/Trash.js +9 -2
  256. package/dist/Molecular/CustomIcons/components/TrashRed.js +9 -2
  257. package/dist/Molecular/CustomIcons/components/Triggers.js +9 -2
  258. package/dist/Molecular/CustomIcons/components/User.js +9 -2
  259. package/dist/Molecular/CustomIcons/components/Visa.js +9 -2
  260. package/dist/Molecular/CustomIcons/components/X.js +9 -2
  261. package/dist/Molecular/CustomIcons/index.js +122 -0
  262. package/dist/Molecular/FormElement/FormElement.js +12 -1
  263. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +31 -30
  264. package/dist/Molecular/FormWithDependOn/partials/_utils.js +12 -9
  265. package/dist/Molecular/InputAddress/InputAddress.js +114 -65
  266. package/dist/Molecular/InputPassword/InputPassword.js +19 -5
  267. package/dist/index.js +2 -0
  268. package/package.json +1 -1
  269. package/dist/Atomic/UI/Hint/partial/_utils.js +0 -52
@@ -1,43 +1,58 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+
8
10
  var _react = _interopRequireWildcard(require("react"));
11
+
9
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
+
10
14
  var _reactFeather = require("react-feather");
15
+
11
16
  var _Input = _interopRequireDefault(require("../../Atomic/FormElements/Input/Input"));
17
+
12
18
  var _Spinner = _interopRequireDefault(require("../../Atomic/Layout/Spinner/Spinner"));
19
+
13
20
  var _Hint = _interopRequireDefault(require("../../Atomic/UI/Hint/Hint"));
21
+
14
22
  var _useIsMobile = _interopRequireDefault(require("../../Functions/useIsMobile"));
23
+
15
24
  var _utils = require("../../Functions/utils");
25
+
16
26
  require("./InputAddress.scss");
17
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
18
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
27
+
28
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
+
30
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
+
19
32
  const DEFAULT_HINT_MESSAGE = "Select the correct address from the list of suggestions (must contains house number and street name)";
20
- const RC = "input-address";
33
+ const RC = "input-address"; // ? Если равны - true
21
34
 
22
- // ? Если равны - true
23
35
  const compareValues = (val1, val2) => {
24
36
  return typeof val1 === typeof val2 && ((0, _utils.getIsOnlyAnObject)(val1) ? (0, _utils.compare)(val1, val2) : val1 === val2);
25
37
  };
38
+
26
39
  const throttle = (fn, ms) => {
27
40
  let id = null;
28
41
  return function () {
29
42
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
30
43
  args[_key] = arguments[_key];
31
44
  }
45
+
32
46
  if (id) clearTimeout(id);
33
47
  id = setTimeout(() => {
34
48
  fn(...args);
35
49
  }, ms);
36
50
  };
37
- };
51
+ }; // Отдает true если value валидное НЕ нулевое число
52
+
38
53
 
39
- // Отдает true если value валидное НЕ нулевое число
40
54
  const getIsValidNumber = value => Boolean(value) && typeof value === "number" && !Number.isNaN(value);
55
+
41
56
  const InputAddress = _ref => {
42
57
  let {
43
58
  label,
@@ -60,7 +75,6 @@ const InputAddress = _ref => {
60
75
  getListItems = () => {},
61
76
  clarifyAddressInfo,
62
77
  // ! Не делать дефолтного значения! Это и метод и флаг
63
-
64
78
  noValidate = false,
65
79
  renderSelectedItem,
66
80
  renderListItem,
@@ -91,64 +105,70 @@ const InputAddress = _ref => {
91
105
  const [isListVisible, setIsListVisible] = (0, _react.useState)(false);
92
106
  const isWrongAddress = (0, _react.useMemo)(() => {
93
107
  var _innerValue$street;
108
+
94
109
  if (noValidate) return false;
95
- if (innerValue === "") return false;
96
- // eslint-disable-next-line no-prototype-builtins
97
- if (!(innerValue !== null && innerValue !== void 0 && innerValue.hasOwnProperty("streetNumber")) || !(innerValue !== null && innerValue !== void 0 && innerValue.streetNumber)) return true;
110
+ if (innerValue === "") return false; // eslint-disable-next-line no-prototype-builtins
111
+
112
+ if (!(innerValue !== null && innerValue !== void 0 && innerValue.hasOwnProperty("streetNumber")) || !(innerValue !== null && innerValue !== void 0 && innerValue.streetNumber)) return true; // eslint-disable-next-line no-prototype-builtins
98
113
 
99
- // eslint-disable-next-line no-prototype-builtins
100
114
  if (!(innerValue !== null && innerValue !== void 0 && innerValue.hasOwnProperty("street")) || !(innerValue !== null && innerValue !== void 0 && (_innerValue$street = innerValue.street) !== null && _innerValue$street !== void 0 && _innerValue$street.fullName)) return true;
101
115
  return false;
102
116
  }, [innerValue]);
117
+
103
118
  const setItemAsInnerValue = (e, item) => {
104
119
  if (e instanceof Event) {
105
120
  e.preventDefault();
106
121
  e.stopPropagation();
107
122
  }
123
+
108
124
  setTimeout(() => {
109
125
  setInnerValue(item);
126
+
110
127
  if (isMobile) {
111
128
  setIsListVisible(false);
112
129
  }
113
130
  }, 0);
114
- };
131
+ }; // ? Базовый метод получения списка вариантов адреса
132
+
115
133
 
116
- // ? Базовый метод получения списка вариантов адреса
117
134
  const getAddressVariants = (0, _react.useMemo)(() => innerValue => {
118
135
  var _getListItems;
119
- return (_getListItems = getListItems(innerValue)) === null || _getListItems === void 0 ? void 0 : _getListItems.then(setListItems).finally(() => setIsListLoading(false));
120
- }, [getListItems]);
121
136
 
122
- // ? Метод получения списка вариантов адреса с тротлингом (основным и, если нужно, дополнительным)
137
+ return (_getListItems = getListItems(innerValue)) === null || _getListItems === void 0 ? void 0 : _getListItems.then(setListItems).finally(() => setIsListLoading(false));
138
+ }, [getListItems]); // ? Метод получения списка вариантов адреса с тротлингом (основным и, если нужно, дополнительным)
123
139
  // ? Без useMemo работать НЕ будет (т.к. на каждом перерендере будет создаваться новая ф-я и будет теряться замкнутая переменная id из throttle)
140
+
124
141
  const getAddressVariantsWithThrottling = (0, _react.useMemo)(() => {
125
142
  const execute = getIsValidNumber(additionalThrottleTimeForListingRequest) ? throttle(getAddressVariants, additionalThrottleTimeForListingRequest) : getAddressVariants;
126
143
  return getIsValidNumber(throttleTime) ? throttle(execute, throttleTime) : execute;
127
- }, [getAddressVariants, additionalThrottleTimeForListingRequest, throttleTime]);
144
+ }, [getAddressVariants, additionalThrottleTimeForListingRequest, throttleTime]); // ? Итоговый "получатель" списка вариантов адресов
128
145
 
129
- // ? Итоговый "получатель" списка вариантов адресов
130
146
  const getAddressVariantsList = () => {
131
- if (!(innerValue !== null && innerValue !== void 0 && innerValue.length)) return null;
132
-
133
- // ? Вообще с учетом надпись "Loading" в списке вариантов включается в этом месте (т.е. сразу при начале набора),
147
+ if (!(innerValue !== null && innerValue !== void 0 && innerValue.length)) return null; // ? Вообще с учетом надпись "Loading" в списке вариантов включается в этом месте (т.е. сразу при начале набора),
134
148
  // ? то, наверное, можно было НЕ мутить с дополнительным тротлингом )).
135
149
  // ? Наверное, можно было увеличить время первичного тротлинга и, наверное, работало бы так же ))
136
150
  // ? НО, раз уже сделал )) оставлю, может будет в будущем полезно )
151
+
137
152
  setIsListLoading(true);
138
153
  getAddressVariantsWithThrottling(innerValue);
139
154
  return null;
140
155
  };
156
+
141
157
  const onClearClick = e => {
142
158
  var _inputRef$current;
159
+
143
160
  e.preventDefault();
144
161
  e.stopPropagation();
162
+
145
163
  if (!isMobile) {
146
164
  setIsListVisible(false);
147
165
  }
166
+
148
167
  setInnerValue("");
149
- inputRef === null || inputRef === void 0 || (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();
168
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
150
169
  setTimeout(() => setIsFocused(true), 0);
151
170
  };
171
+
152
172
  const onOverlayClick = e => {
153
173
  if (e.target === (listOverlayRef === null || listOverlayRef === void 0 ? void 0 : listOverlayRef.current)) {
154
174
  e.stopPropagation();
@@ -158,23 +178,27 @@ const InputAddress = _ref => {
158
178
  onChange(typeof innerValue === "string" || !onChangeValueTransformer || typeof onChangeValueTransformer !== "function" ? innerValue : onChangeValueTransformer(innerValue));
159
179
  }
160
180
  };
181
+
161
182
  const onKeyDown = keyCode => {
162
183
  if (!isListVisible || !isKeyboardControlled) return false;
184
+
163
185
  if (keyCode === 13) {
164
186
  var _inputRef$current2;
187
+
165
188
  // Enter Controller
166
189
  setItemAsInnerValue(null, listItems[hightlightedIndex]);
167
190
  setHightlightedIndex(null);
168
- inputRef === null || inputRef === void 0 || (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 || _inputRef$current2.blur();
191
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.blur();
169
192
  } else {
170
- var _listRef$current, _listRef$current2, _newHightlightedEleme;
193
+ var _listRef$current, _listRef$current$getB, _listRef$current2, _newHightlightedEleme;
194
+
171
195
  let newHightlightedIndex = null;
172
196
  const listItemsElements = document.getElementsByClassName("input-address__list--item");
173
- const listHeight = listRef === null || listRef === void 0 || (_listRef$current = listRef.current) === null || _listRef$current === void 0 || (_listRef$current = _listRef$current.getBoundingClientRect()) === null || _listRef$current === void 0 ? void 0 : _listRef$current.height;
174
- const listScrollTop = (listRef === null || listRef === void 0 || (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 ? void 0 : _listRef$current2.scrollTop) || 0;
197
+ const listHeight = listRef === null || listRef === void 0 ? void 0 : (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : (_listRef$current$getB = _listRef$current.getBoundingClientRect()) === null || _listRef$current$getB === void 0 ? void 0 : _listRef$current$getB.height;
198
+ const listScrollTop = (listRef === null || listRef === void 0 ? void 0 : (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 ? void 0 : _listRef$current2.scrollTop) || 0;
175
199
  const lastItemIndex = parseInt(listItems === null || listItems === void 0 ? void 0 : listItems.length, 10) - 1;
176
-
177
200
  /** Arrows Controllers **/
201
+
178
202
  if (keyCode === 40) {
179
203
  // Down Key Controller
180
204
  if (hightlightedIndex === null || hightlightedIndex === lastItemIndex) {
@@ -189,95 +213,107 @@ const InputAddress = _ref => {
189
213
  } else if (hightlightedIndex - 1 >= 0) {
190
214
  newHightlightedIndex = hightlightedIndex - 1;
191
215
  }
192
- }
216
+ } // Scroll to Element
217
+
193
218
 
194
- // Scroll to Element
195
219
  const newHightlightedElement = listItemsElements[newHightlightedIndex];
196
- const newHightlightedElementHeight = newHightlightedElement === null || newHightlightedElement === void 0 || (_newHightlightedEleme = newHightlightedElement.getBoundingClientRect()) === null || _newHightlightedEleme === void 0 ? void 0 : _newHightlightedEleme.height;
220
+ const newHightlightedElementHeight = newHightlightedElement === null || newHightlightedElement === void 0 ? void 0 : (_newHightlightedEleme = newHightlightedElement.getBoundingClientRect()) === null || _newHightlightedEleme === void 0 ? void 0 : _newHightlightedEleme.height;
197
221
  const newHightlightedElementTopInList = newHightlightedElement === null || newHightlightedElement === void 0 ? void 0 : newHightlightedElement.offsetTop;
222
+
198
223
  if (newHightlightedElementTopInList + newHightlightedElementHeight > listScrollTop + listHeight) {
199
224
  if (Math.abs(newHightlightedElementTopInList + newHightlightedElementHeight - (listScrollTop + listHeight)) <= newHightlightedElementHeight) {
200
225
  var _listRef$current3;
201
- listRef === null || listRef === void 0 || (_listRef$current3 = listRef.current) === null || _listRef$current3 === void 0 || _listRef$current3.scrollTo(0, listScrollTop + newHightlightedElementHeight);
226
+
227
+ listRef === null || listRef === void 0 ? void 0 : (_listRef$current3 = listRef.current) === null || _listRef$current3 === void 0 ? void 0 : _listRef$current3.scrollTo(0, listScrollTop + newHightlightedElementHeight);
202
228
  } else {
203
229
  var _listRef$current4;
204
- listRef === null || listRef === void 0 || (_listRef$current4 = listRef.current) === null || _listRef$current4 === void 0 || _listRef$current4.scrollTo(0, newHightlightedElementTopInList);
230
+
231
+ listRef === null || listRef === void 0 ? void 0 : (_listRef$current4 = listRef.current) === null || _listRef$current4 === void 0 ? void 0 : _listRef$current4.scrollTo(0, newHightlightedElementTopInList);
205
232
  }
206
233
  } else if (newHightlightedElementTopInList < listScrollTop) {
207
234
  if (Math.abs(newHightlightedElementTopInList - listScrollTop) < newHightlightedElementHeight) {
208
235
  var _listRef$current5;
209
- listRef === null || listRef === void 0 || (_listRef$current5 = listRef.current) === null || _listRef$current5 === void 0 || _listRef$current5.scrollTo(0, listScrollTop - newHightlightedElementHeight);
236
+
237
+ listRef === null || listRef === void 0 ? void 0 : (_listRef$current5 = listRef.current) === null || _listRef$current5 === void 0 ? void 0 : _listRef$current5.scrollTo(0, listScrollTop - newHightlightedElementHeight);
210
238
  } else {
211
239
  var _listRef$current6;
212
- listRef === null || listRef === void 0 || (_listRef$current6 = listRef.current) === null || _listRef$current6 === void 0 || _listRef$current6.scrollTo(0, newHightlightedElementTopInList);
240
+
241
+ listRef === null || listRef === void 0 ? void 0 : (_listRef$current6 = listRef.current) === null || _listRef$current6 === void 0 ? void 0 : _listRef$current6.scrollTo(0, newHightlightedElementTopInList);
213
242
  }
214
243
  }
244
+
215
245
  if (!isMobile) setHightlightedIndex(newHightlightedIndex);
216
246
  }
217
247
  };
248
+
218
249
  const getHintMessage = () => {
219
250
  if (!renderHintMessage || typeof renderHintMessage !== "function") return DEFAULT_HINT_MESSAGE;
220
251
  return renderHintMessage(innerValue);
221
252
  };
253
+
222
254
  const getSelectedItemLabel = function () {
223
255
  var _value$street;
256
+
224
257
  let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : innerValue;
225
258
  if (!value) return "";
226
259
  if (typeof value === "string") return value;
227
260
  if (typeof renderSelectedItem === "function") renderSelectedItem(value);
228
- const label = "".concat((value === null || value === void 0 ? void 0 : value.streetNumber) || "", " ").concat((value === null || value === void 0 || (_value$street = value.street) === null || _value$street === void 0 ? void 0 : _value$street.fullName) || "").trim();
261
+ const label = "".concat((value === null || value === void 0 ? void 0 : value.streetNumber) || "", " ").concat((value === null || value === void 0 ? void 0 : (_value$street = value.street) === null || _value$street === void 0 ? void 0 : _value$street.fullName) || "").trim();
229
262
  return !label && isLoading ? previousValueRef.current : label;
230
263
  };
264
+
231
265
  const getListItemLabel = item => {
232
266
  if (typeof item === "string") return item;
233
267
  if (!renderListItem || typeof renderListItem !== "function") return item === null || item === void 0 ? void 0 : item.fullPrediction;
234
268
  return renderListItem(item);
235
269
  };
270
+
236
271
  const setListHeight = () => {
237
272
  if (listWrapperRef !== null && listWrapperRef !== void 0 && listWrapperRef.current && listHeaderRef !== null && listHeaderRef !== void 0 && listHeaderRef.current && listRef.current) {
238
- var _listWrapperRef$curre, _listHeaderRef$curren;
239
- const listWrapperHeight = listWrapperRef === null || listWrapperRef === void 0 || (_listWrapperRef$curre = listWrapperRef.current) === null || _listWrapperRef$curre === void 0 || (_listWrapperRef$curre = _listWrapperRef$curre.getBoundingClientRect()) === null || _listWrapperRef$curre === void 0 ? void 0 : _listWrapperRef$curre.height;
273
+ var _listWrapperRef$curre, _listWrapperRef$curre2, _listHeaderRef$curren, _listHeaderRef$curren2;
274
+
275
+ const listWrapperHeight = listWrapperRef === null || listWrapperRef === void 0 ? void 0 : (_listWrapperRef$curre = listWrapperRef.current) === null || _listWrapperRef$curre === void 0 ? void 0 : (_listWrapperRef$curre2 = _listWrapperRef$curre.getBoundingClientRect()) === null || _listWrapperRef$curre2 === void 0 ? void 0 : _listWrapperRef$curre2.height;
240
276
  const listWrapperStyles = getComputedStyle(listWrapperRef === null || listWrapperRef === void 0 ? void 0 : listWrapperRef.current);
241
- const listHeaderHeight = listHeaderRef === null || listHeaderRef === void 0 || (_listHeaderRef$curren = listHeaderRef.current) === null || _listHeaderRef$curren === void 0 || (_listHeaderRef$curren = _listHeaderRef$curren.getBoundingClientRect()) === null || _listHeaderRef$curren === void 0 ? void 0 : _listHeaderRef$curren.height;
277
+ const listHeaderHeight = listHeaderRef === null || listHeaderRef === void 0 ? void 0 : (_listHeaderRef$curren = listHeaderRef.current) === null || _listHeaderRef$curren === void 0 ? void 0 : (_listHeaderRef$curren2 = _listHeaderRef$curren.getBoundingClientRect()) === null || _listHeaderRef$curren2 === void 0 ? void 0 : _listHeaderRef$curren2.height;
242
278
  const listHeight = listWrapperHeight - listHeaderHeight - parseInt(listWrapperStyles.paddingBottom, 10);
243
279
  listRef.current.style.maxHeight = "".concat(listHeight, "px");
244
280
  }
245
281
  };
282
+
246
283
  const resetListHeight = () => {
247
284
  if (listRef.current) {
248
285
  listRef.current.style.maxHeight = "initial";
249
286
  }
250
- };
251
-
252
- // ? Основной блок работы со значениями адреса
287
+ }; // ? Основной блок работы со значениями адреса
253
288
  // ? Не меняйте вызовы setInnerValue и onChange не разобравшись в логике вызовов
289
+
290
+
254
291
  (0, _react.useEffect)(() => {
255
292
  // ? Исключение инициализации - равны только при первом рендере компонента,
256
293
  // ? т.к. рефка и стейт инициализируются верхним value
257
294
  if (!compareValues(innerValue, previousValueRef.current)) {
258
- const isObject = (0, _utils.getIsOnlyAnObject)(innerValue);
259
-
260
- // ? innerValue меняется либо от ручного ввода, либо от выбора из списка
295
+ const isObject = (0, _utils.getIsOnlyAnObject)(innerValue); // ? innerValue меняется либо от ручного ввода, либо от выбора из списка
261
296
  // ? Полная информация или нет - напрямую зависит от ответа getListItems
262
- const isFullInfo = isObject && "streetNumber" in innerValue && "street" in innerValue && "city" in innerValue && "state" in innerValue && "country" in innerValue && "zipCode" in innerValue;
263
297
 
264
- // ? Для старого эндпоинта возвращается список с полной информацией, поэтому на проектах ничего не поменяется,
298
+ const isFullInfo = isObject && "streetNumber" in innerValue && "street" in innerValue && "city" in innerValue && "state" in innerValue && "country" in innerValue && "zipCode" in innerValue; // ? Для старого эндпоинта возвращается список с полной информацией, поэтому на проектах ничего не поменяется,
265
299
  // ? если не менять запросник (getListItems), все будет проходить по этой if-ке или по 3-й (для строчных значений)
300
+
266
301
  if (isFullInfo) {
267
302
  onChange(innerValue);
268
303
  setIsLoading(false);
269
- }
270
-
271
- // ? Неполная информация может быть только в том случае, когда метод getListItems использует уже новый эндпоинт гугл-апи.
304
+ } // ? Неполная информация может быть только в том случае, когда метод getListItems использует уже новый эндпоинт гугл-апи.
272
305
  // ? Предполагается, что при этом в компонент будет прокинута ф-я "уточнятель" (clarifyAddressInfo)
306
+
307
+
273
308
  if (isObject && !isFullInfo) {
274
309
  if (typeof clarifyAddressInfo === "function") {
275
310
  var _clarifyAddressInfo, _clarifyAddressInfo$t;
276
- setIsLoading(true);
277
- // ? Предполагается, что clarifyAddressInfo - асинхронная ф-я, запросник уточнения опции
311
+
312
+ setIsLoading(true); // ? Предполагается, что clarifyAddressInfo - асинхронная ф-я, запросник уточнения опции
278
313
  // ? Никаких await-ов НЕ нужно (тем более что в useEffect и нельзя для нового React),
279
314
  // ? промис "выплюнется в пустоту", но НЕ будет отчищен до резолва, а useEffect (и итерация рендера в целом) при этом будет закончен(а)
280
- (_clarifyAddressInfo = clarifyAddressInfo(innerValue)) === null || _clarifyAddressInfo === void 0 || (_clarifyAddressInfo$t = _clarifyAddressInfo.then) === null || _clarifyAddressInfo$t === void 0 || _clarifyAddressInfo$t.call(_clarifyAddressInfo, res => {
315
+
316
+ (_clarifyAddressInfo = clarifyAddressInfo(innerValue)) === null || _clarifyAddressInfo === void 0 ? void 0 : (_clarifyAddressInfo$t = _clarifyAddressInfo.then) === null || _clarifyAddressInfo$t === void 0 ? void 0 : _clarifyAddressInfo$t.call(_clarifyAddressInfo, res => {
281
317
  if (res) setInnerValue(res);else {
282
318
  setInnerValue(previousValueRef.current);
283
319
  setTimeout(() => {
@@ -288,20 +324,19 @@ const InputAddress = _ref => {
288
324
  setIsLoading(false);
289
325
  return res;
290
326
  });
291
- }
292
- // ! Если сверху поменяли эндпоинт и он выдает "облегченный листинг" (айтемы с неполной инфой),
327
+ } // ! Если сверху поменяли эндпоинт и он выдает "облегченный листинг" (айтемы с неполной инфой),
293
328
  // ! и НЕ пробросили clarifyAddressInfo, то на этом кейсе велью инпута будет просто зануляться
294
329
  // ! (getSelectedItemLabel вернет пустую строку если вкинуть innerValue без всей инфы)
295
330
  else setInnerValue(getSelectedItemLabel(innerValue));
296
- }
331
+ } // ? Кейс для строчных значений
332
+
297
333
 
298
- // ? Кейс для строчных значений
299
334
  if (!isObject) {
300
335
  // ? Вызываем верхний onChange если innerValue есть или если нету, но это не после логики уточнения
301
- if (innerValue || !isLoading) onChange(innerValue);
302
- // ? Если innerValue есть и еще не открыт листинг - открываем
303
- if (innerValue && !isListVisible) setIsListVisible(true);
304
- // ? Если инпут сфокусирован и значение есть - запрашиваем список вариантов
336
+ if (innerValue || !isLoading) onChange(innerValue); // ? Если innerValue есть и еще не открыт листинг - открываем
337
+
338
+ if (innerValue && !isListVisible) setIsListVisible(true); // ? Если инпут сфокусирован и значение есть - запрашиваем список вариантов
339
+
305
340
  if (isFocused && Boolean(innerValue)) getAddressVariantsList();
306
341
  }
307
342
  }
@@ -317,6 +352,7 @@ const InputAddress = _ref => {
317
352
  setListItems([]);
318
353
  resetListHeight();
319
354
  }
355
+
320
356
  if (isMobile && isListVisible) {
321
357
  setTempInnerValue(innerValue);
322
358
  setListHeight();
@@ -324,11 +360,11 @@ const InputAddress = _ref => {
324
360
  }, [isListVisible]);
325
361
  (0, _react.useEffect)(() => {
326
362
  // ? учет изменения value сверху (верхние переназначения велью)
327
- if (!compareValues(value, innerValue)) setInnerValue(value);
363
+ if (!compareValues(value, innerValue)) setInnerValue(value); // ? useEffect должен быть последним, т.к. рефка меняется в рамках текущей итерации
328
364
 
329
- // ? useEffect должен быть последним, т.к. рефка меняется в рамках текущей итерации
330
365
  previousValueRef.current = value;
331
366
  }, [value]);
367
+
332
368
  const renderSearchableInput = () => {
333
369
  const inputValue = getSelectedItemLabel();
334
370
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -362,6 +398,7 @@ const InputAddress = _ref => {
362
398
  onClick: onClearClick
363
399
  })));
364
400
  };
401
+
365
402
  const renderInput = () => {
366
403
  const inputValue = getSelectedItemLabel(isListVisible ? tempInnerValue : innerValue);
367
404
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -373,20 +410,24 @@ const InputAddress = _ref => {
373
410
  onChange: setInnerValue,
374
411
  onFocus: e => {
375
412
  var _e$target;
413
+
376
414
  setIsListVisible(true);
377
- e === null || e === void 0 || (_e$target = e.target) === null || _e$target === void 0 || _e$target.blur();
415
+ e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.blur();
378
416
  setTimeout(() => {
379
417
  var _inputRef$current3;
380
- return inputRef === null || inputRef === void 0 || (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.focus();
418
+
419
+ return inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.focus();
381
420
  }, 200);
382
421
  }
383
422
  }));
384
423
  };
424
+
385
425
  const renderLoader = () => {
386
426
  return /*#__PURE__*/_react.default.createElement("div", {
387
427
  className: "input-address__list--loader"
388
428
  }, loader || "Loading...");
389
429
  };
430
+
390
431
  const renderList = () => {
391
432
  const renderListItem = (item, i) => {
392
433
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -397,6 +438,7 @@ const InputAddress = _ref => {
397
438
  onMouseDown: e => setItemAsInnerValue(e, item)
398
439
  }, getListItemLabel(item));
399
440
  };
441
+
400
442
  const renderListItemCustom = () => {
401
443
  return /*#__PURE__*/_react.default.createElement("div", {
402
444
  key: "input-address__list-item--custom",
@@ -404,11 +446,13 @@ const InputAddress = _ref => {
404
446
  onMouseDown: e => setItemAsInnerValue(e, getSelectedItemLabel())
405
447
  }, getSelectedItemLabel(), /*#__PURE__*/_react.default.createElement(_reactFeather.AlertTriangle, null), /*#__PURE__*/_react.default.createElement("span", null, "Choose this only if your address is not listed below"));
406
448
  };
449
+
407
450
  const renderNoItems = () => {
408
451
  return /*#__PURE__*/_react.default.createElement("div", {
409
452
  className: "input-address__list--no-items"
410
453
  }, isMobile && !(innerValue !== null && innerValue !== void 0 && innerValue.length) ? "Please begin entering your address" : noItemsMessage || "No Items");
411
454
  };
455
+
412
456
  const renderListDesktop = () => {
413
457
  return /*#__PURE__*/_react.default.createElement("div", {
414
458
  className: "input-address__list-wrapper",
@@ -418,6 +462,7 @@ const InputAddress = _ref => {
418
462
  ref: listRef
419
463
  }, isListLoading ? renderLoader() : listItems !== null && listItems !== void 0 && listItems.length ? listItems === null || listItems === void 0 ? void 0 : listItems.map(renderListItem) : renderNoItems()));
420
464
  };
465
+
421
466
  const renderListMobile = () => {
422
467
  return /*#__PURE__*/_react.default.createElement("div", {
423
468
  className: "input-address__list-overlay",
@@ -448,8 +493,10 @@ const InputAddress = _ref => {
448
493
  ref: listRef
449
494
  }, isListLoading ? renderLoader() : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, getSelectedItemLabel() && renderListItemCustom(), listItems === null || listItems === void 0 ? void 0 : listItems.map(renderListItem), !(listItems !== null && listItems !== void 0 && listItems.length) && !getSelectedItemLabel() && renderNoItems()))));
450
495
  };
496
+
451
497
  return isMobile ? renderListMobile() : renderListDesktop();
452
498
  };
499
+
453
500
  return /*#__PURE__*/_react.default.createElement("div", {
454
501
  className: (0, _classnames.default)("input-address", {
455
502
  "input-address--error": error || isWrongAddress && !isFocused
@@ -458,4 +505,6 @@ const InputAddress = _ref => {
458
505
  size: "small"
459
506
  }), isMobile ? renderInput() : renderSearchableInput(), isListVisible && renderList());
460
507
  };
461
- var _default = exports.default = InputAddress;
508
+
509
+ var _default = InputAddress;
510
+ exports.default = _default;
@@ -1,19 +1,30 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+
8
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
9
12
  var _react = _interopRequireWildcard(require("react"));
13
+
10
14
  var _classnames = _interopRequireDefault(require("classnames"));
15
+
11
16
  var _reactFeather = require("react-feather");
17
+
12
18
  var _Input = _interopRequireDefault(require("../../Atomic/FormElements/Input/Input"));
19
+
13
20
  var _utils = require("../../Functions/utils");
21
+
14
22
  require("./InputPassword.scss");
15
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
16
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
23
+
24
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
+
26
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
+
17
28
  const InputPassword = _ref => {
18
29
  let {
19
30
  field = {},
@@ -25,8 +36,9 @@ const InputPassword = _ref => {
25
36
  const handle = {
26
37
  changeView: () => {
27
38
  var _inputWrapper$current;
28
- const input = inputWrapper === null || inputWrapper === void 0 || (_inputWrapper$current = inputWrapper.current) === null || _inputWrapper$current === void 0 ? void 0 : _inputWrapper$current.querySelector("input");
29
- input === null || input === void 0 || input.focus();
39
+
40
+ const input = inputWrapper === null || inputWrapper === void 0 ? void 0 : (_inputWrapper$current = inputWrapper.current) === null || _inputWrapper$current === void 0 ? void 0 : _inputWrapper$current.querySelector("input");
41
+ input === null || input === void 0 ? void 0 : input.focus();
30
42
  (0, _utils.setCarretToEnd)(input);
31
43
  setSP(!showPassword);
32
44
  }
@@ -51,4 +63,6 @@ const InputPassword = _ref => {
51
63
  className: "password-icon"
52
64
  })));
53
65
  };
54
- var _default = exports.default = InputPassword;
66
+
67
+ var _default = InputPassword;
68
+ exports.default = _default;
package/dist/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
@@ -10,4 +11,5 @@ Object.defineProperty(exports, "Button", {
10
11
  return _Button.default;
11
12
  }
12
13
  });
14
+
13
15
  var _Button = _interopRequireDefault(require("./Atomic/UI/Button/Button"));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "intelicoreact",
3
- "version": "1.4.76",
3
+ "version": "1.4.78",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -1,52 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.initHintContainer = exports.getParentNode = exports.getHintContainerId = exports.getHintContainer = exports.HandleScrollObj = exports.HandleClickOutsideObj = void 0;
7
- const getHintContainerId = hintId => "hint-container-for-hint--id-".concat(hintId);
8
- exports.getHintContainerId = getHintContainerId;
9
- const getHintContainer = hintId => {
10
- return document.getElementById(getHintContainerId(hintId));
11
- };
12
- exports.getHintContainer = getHintContainer;
13
- const getParentNode = () => {
14
- var _ref, _document$querySelect;
15
- return (_ref = (_document$querySelect = document.querySelector("div#root")) !== null && _document$querySelect !== void 0 ? _document$querySelect : document.querySelector("div#app")) !== null && _ref !== void 0 ? _ref : document.body;
16
- };
17
- exports.getParentNode = getParentNode;
18
- const initHintContainer = (hintId, hintContainerSettings) => {
19
- var _getParentNode;
20
- const {
21
- className
22
- } = hintContainerSettings;
23
- const hintContainer = document.createElement("div");
24
- hintContainer.setAttribute("id", getHintContainerId(hintId));
25
- hintContainer.classList.add("hint__container");
26
- if (className) hintContainer.classList.add(className);
27
- (_getParentNode = getParentNode()) === null || _getParentNode === void 0 || _getParentNode.append(hintContainer);
28
- };
29
-
30
- //? addEventListener можно инициализировать двумя способами
31
- //? - передать прямой колбэк (ф-ю)
32
- //? - передать объект в котором есть метод handleEvent (помимо handleEvent можно записать в this прочие полезные значения)
33
- //? Пользуемся вторым способом, чтобы записать входные данные (вообще можно не писать, работает и просто от замыкания, но делаем по "дзену")
34
- //! Метод написан с расчетом на то, что будет вызываться ТОЛЬКО открытым тултипом
35
- exports.initHintContainer = initHintContainer;
36
- const HandleScrollObj = function (setIsOpen) {
37
- this.setIsOpen = setIsOpen;
38
- this.handleEvent = function () {
39
- this.setIsOpen(false);
40
- };
41
- };
42
- exports.HandleScrollObj = HandleScrollObj;
43
- const HandleClickOutsideObj = function (id, setIsOpen) {
44
- this.id = id;
45
- this.setIsOpen = setIsOpen;
46
- this.handleEvent = function (event) {
47
- if (!getHintContainer(this.id).contains(event === null || event === void 0 ? void 0 : event.target)) {
48
- this.setIsOpen(false);
49
- }
50
- };
51
- };
52
- exports.HandleClickOutsideObj = HandleClickOutsideObj;