intelicoreact 1.3.19 → 1.3.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (252) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +23 -15
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +23 -15
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +124 -69
  4. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +36 -27
  5. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +39 -23
  6. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +246 -110
  7. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +85 -44
  8. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +414 -246
  9. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +9 -5
  10. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +165 -93
  11. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +64 -39
  12. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +132 -51
  13. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +73 -34
  14. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +75 -54
  15. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +110 -67
  16. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +83 -33
  17. package/dist/Atomic/FormElements/Input/Input.js +253 -161
  18. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +102 -48
  19. package/dist/Atomic/FormElements/InputColor/InputColor.js +40 -27
  20. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +58 -28
  21. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +176 -108
  22. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +57 -32
  23. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +302 -184
  24. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +157 -85
  25. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +16 -11
  26. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +193 -76
  27. package/dist/Atomic/FormElements/InputLink/InputLink.js +58 -34
  28. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +12 -8
  29. package/dist/Atomic/FormElements/InputMask/InputMask.js +964 -554
  30. package/dist/Atomic/FormElements/InputMask/config.js +1 -1
  31. package/dist/Atomic/FormElements/InputMask/functions.js +43 -17
  32. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +404 -268
  33. package/dist/Atomic/FormElements/InputMask2/config.js +1 -1
  34. package/dist/Atomic/FormElements/InputMask2/functions.js +43 -17
  35. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +459 -299
  36. package/dist/Atomic/FormElements/InputMask3/config.js +1 -1
  37. package/dist/Atomic/FormElements/InputMask3/functions.js +43 -17
  38. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +113 -53
  39. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +118 -64
  40. package/dist/Atomic/FormElements/Label/Label.js +23 -13
  41. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +349 -217
  42. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +47 -25
  43. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +207 -133
  44. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +61 -29
  45. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +42 -20
  46. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +33 -22
  47. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +43 -20
  48. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +101 -54
  49. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +102 -59
  50. package/dist/Atomic/FormElements/RangeList/RangeList.js +150 -89
  51. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +29 -23
  52. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +300 -135
  53. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +571 -381
  54. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +24 -14
  55. package/dist/Atomic/FormElements/Switcher/Switcher.js +29 -24
  56. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +47 -25
  57. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +32 -20
  58. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +55 -32
  59. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +42 -22
  60. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +33 -23
  61. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +120 -51
  62. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +3 -2
  63. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +46 -23
  64. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +417 -253
  65. package/dist/Atomic/FormElements/Text/Text.js +53 -47
  66. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +31 -21
  67. package/dist/Atomic/FormElements/Textarea/Textarea.js +27 -16
  68. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +128 -68
  69. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +36 -25
  70. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +70 -33
  71. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +124 -58
  72. package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +91 -0
  73. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +80 -48
  74. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +42 -32
  75. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +60 -40
  76. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +3 -2
  77. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +69 -50
  78. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
  79. package/dist/Atomic/Layout/Header/Header.js +48 -21
  80. package/dist/Atomic/Layout/MainMenu/MainMenu.js +79 -36
  81. package/dist/Atomic/Layout/Spinner/Spinner.js +14 -8
  82. package/dist/Atomic/UI/Accordion/Accordion.js +48 -18
  83. package/dist/Atomic/UI/Accordion/AccordionItem.js +60 -35
  84. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +106 -49
  85. package/dist/Atomic/UI/AccordionText/AccordionText.js +37 -13
  86. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +94 -48
  87. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +50 -22
  88. package/dist/Atomic/UI/Alert/Alert.js +44 -20
  89. package/dist/Atomic/UI/Arrow/Arrow.js +35 -15
  90. package/dist/Atomic/UI/Box/Box.js +21 -14
  91. package/dist/Atomic/UI/Button/Button.js +35 -26
  92. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +31 -22
  93. package/dist/Atomic/UI/Chart/Chart.js +86 -45
  94. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +24 -14
  95. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +22 -13
  96. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +113 -68
  97. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +140 -158
  98. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +42 -26
  99. package/dist/Atomic/UI/Chart/partial/utils.js +48 -20
  100. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +42 -22
  101. package/dist/Atomic/UI/DateTime/DateTime.js +38 -23
  102. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +36 -12
  103. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +21 -5
  104. package/dist/Atomic/UI/DoubleString/DoubleString.js +50 -27
  105. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +63 -15
  106. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +157 -62
  107. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +110 -47
  108. package/dist/Atomic/UI/Hint/Hint.js +94 -49
  109. package/dist/Atomic/UI/Modal/Modal.js +179 -149
  110. package/dist/Atomic/UI/Modal/ModalHOC.js +21 -12
  111. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +12 -7
  112. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +21 -17
  113. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +167 -94
  114. package/dist/Atomic/UI/ModalBackup/Modal.js +90 -65
  115. package/dist/Atomic/UI/ModalBackup/ModalHOC.js +21 -12
  116. package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +11 -6
  117. package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +19 -15
  118. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +62 -32
  119. package/dist/Atomic/UI/NavLine/NavLine.js +211 -120
  120. package/dist/Atomic/UI/NavLine/Tabs.js +3 -2
  121. package/dist/Atomic/UI/PageTitle/PageTitle.js +17 -13
  122. package/dist/Atomic/UI/PieChart/PieChart.js +21 -11
  123. package/dist/Atomic/UI/Price/Price.js +13 -10
  124. package/dist/Atomic/UI/PriceRange/PriceRange.js +11 -7
  125. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +56 -27
  126. package/dist/Atomic/UI/Status/Status.js +30 -19
  127. package/dist/Atomic/UI/Table/Partials/TdCell.js +71 -28
  128. package/dist/Atomic/UI/Table/Partials/TdHeader.js +16 -7
  129. package/dist/Atomic/UI/Table/Partials/TdRow.js +65 -29
  130. package/dist/Atomic/UI/Table/Partials/TdTitle.js +40 -16
  131. package/dist/Atomic/UI/Table/Table.js +47 -27
  132. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +48 -18
  133. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +19 -9
  134. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +8 -5
  135. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +47 -25
  136. package/dist/Atomic/UI/Tag/Tag.js +48 -20
  137. package/dist/Atomic/UI/TagList/TagList.js +150 -80
  138. package/dist/Atomic/UI/UserBox/UserBox.js +26 -14
  139. package/dist/Classes/AbortableFetch.js +422 -283
  140. package/dist/Classes/AnimatedHandler.js +56 -44
  141. package/dist/Classes/RESTAPI/index.js +433 -154
  142. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +428 -290
  143. package/dist/Classes/RESTAPI/partials/ApiBase.js +67 -24
  144. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +275 -57
  145. package/dist/Classes/RESTAPI/partials/ApiUtils.js +377 -146
  146. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +403 -155
  147. package/dist/Classes/RESTAPI/partials/Utils.js +135 -81
  148. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +6 -2
  149. package/dist/Classes/RESTAPI/partials/_utils.js +395 -101
  150. package/dist/Constants/index.constants.js +15 -8
  151. package/dist/Functions/Portal.js +33 -14
  152. package/dist/Functions/customEventListener.js +20 -5
  153. package/dist/Functions/fieldValueFormatters.js +211 -148
  154. package/dist/Functions/hooks/useFormFieldsChangesManager.js +137 -75
  155. package/dist/Functions/locale/createTranslator.js +27 -13
  156. package/dist/Functions/operations.js +49 -35
  157. package/dist/Functions/presets/inputMaskPresets.js +27 -25
  158. package/dist/Functions/presets/inputPresets.js +22 -19
  159. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +9 -7
  160. package/dist/Functions/schemas.js +15 -6
  161. package/dist/Functions/useClickOutside.js +7 -3
  162. package/dist/Functions/useDebounce.js +25 -11
  163. package/dist/Functions/useFieldFocus.js +67 -42
  164. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +54 -35
  165. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +95 -74
  166. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +91 -55
  167. package/dist/Functions/useFormTools/functions/General.js +99 -80
  168. package/dist/Functions/useFormTools/functions/RenderFields.js +72 -45
  169. package/dist/Functions/useFormTools/functions/usePrevious.js +7 -3
  170. package/dist/Functions/useFormTools/index.js +598 -382
  171. package/dist/Functions/useInputHighlightError.js +52 -27
  172. package/dist/Functions/useIsMobile.js +36 -13
  173. package/dist/Functions/useLocalStorage.js +22 -7
  174. package/dist/Functions/useLocationParams.js +27 -16
  175. package/dist/Functions/useMetaInfo.js +50 -19
  176. package/dist/Functions/useMouseUpOutside.js +5 -2
  177. package/dist/Functions/useOnlineStatus.js +26 -7
  178. package/dist/Functions/usePasswordChecker.js +77 -42
  179. package/dist/Functions/usePrevious.js +7 -3
  180. package/dist/Functions/useResize.js +32 -12
  181. package/dist/Functions/useScrollTo.js +20 -6
  182. package/dist/Functions/useToggle.js +30 -10
  183. package/dist/Functions/utils.js +366 -186
  184. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +32 -21
  185. package/dist/Molecular/CustomIcons/components/AlertCircle.js +32 -21
  186. package/dist/Molecular/CustomIcons/components/AppStore.js +36 -25
  187. package/dist/Molecular/CustomIcons/components/Arrow.js +42 -31
  188. package/dist/Molecular/CustomIcons/components/ArrowDown.js +24 -13
  189. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +27 -16
  190. package/dist/Molecular/CustomIcons/components/ArrowRight.js +27 -16
  191. package/dist/Molecular/CustomIcons/components/ArrowUp.js +24 -13
  192. package/dist/Molecular/CustomIcons/components/Bell.js +22 -11
  193. package/dist/Molecular/CustomIcons/components/Button.js +22 -11
  194. package/dist/Molecular/CustomIcons/components/Campaigns.js +23 -12
  195. package/dist/Molecular/CustomIcons/components/Check.js +23 -12
  196. package/dist/Molecular/CustomIcons/components/Check2.js +22 -11
  197. package/dist/Molecular/CustomIcons/components/ChevronDown.js +22 -11
  198. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +22 -11
  199. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +22 -11
  200. package/dist/Molecular/CustomIcons/components/ChevronRight.js +22 -11
  201. package/dist/Molecular/CustomIcons/components/ChevronUp.js +22 -11
  202. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +37 -26
  203. package/dist/Molecular/CustomIcons/components/Close.js +24 -13
  204. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +49 -38
  205. package/dist/Molecular/CustomIcons/components/Delete.js +23 -12
  206. package/dist/Molecular/CustomIcons/components/Edit.js +22 -11
  207. package/dist/Molecular/CustomIcons/components/Email.js +40 -29
  208. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +30 -19
  209. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +38 -27
  210. package/dist/Molecular/CustomIcons/components/Flows.js +22 -11
  211. package/dist/Molecular/CustomIcons/components/Gift.js +27 -16
  212. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +36 -25
  213. package/dist/Molecular/CustomIcons/components/GooglePlay.js +36 -25
  214. package/dist/Molecular/CustomIcons/components/HelpCircle.js +25 -14
  215. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +26 -15
  216. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +25 -14
  217. package/dist/Molecular/CustomIcons/components/Home.js +25 -14
  218. package/dist/Molecular/CustomIcons/components/Home2.js +28 -17
  219. package/dist/Molecular/CustomIcons/components/Key.js +30 -19
  220. package/dist/Molecular/CustomIcons/components/Landers.js +26 -15
  221. package/dist/Molecular/CustomIcons/components/Lock.js +22 -11
  222. package/dist/Molecular/CustomIcons/components/Mail.js +30 -19
  223. package/dist/Molecular/CustomIcons/components/Mastercard.js +72 -61
  224. package/dist/Molecular/CustomIcons/components/Minus.js +35 -24
  225. package/dist/Molecular/CustomIcons/components/Offers.js +23 -12
  226. package/dist/Molecular/CustomIcons/components/Pause.js +35 -24
  227. package/dist/Molecular/CustomIcons/components/PayPal.js +49 -38
  228. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +36 -25
  229. package/dist/Molecular/CustomIcons/components/Phone.js +37 -26
  230. package/dist/Molecular/CustomIcons/components/Play.js +35 -24
  231. package/dist/Molecular/CustomIcons/components/Plus.js +35 -24
  232. package/dist/Molecular/CustomIcons/components/Profile.js +27 -16
  233. package/dist/Molecular/CustomIcons/components/QRCode.js +37 -26
  234. package/dist/Molecular/CustomIcons/components/Rectangle.js +22 -11
  235. package/dist/Molecular/CustomIcons/components/Revert.js +25 -14
  236. package/dist/Molecular/CustomIcons/components/Star.js +21 -10
  237. package/dist/Molecular/CustomIcons/components/Star2.js +23 -12
  238. package/dist/Molecular/CustomIcons/components/TrafficSources.js +25 -14
  239. package/dist/Molecular/CustomIcons/components/Trash.js +22 -11
  240. package/dist/Molecular/CustomIcons/components/TrashRed.js +22 -11
  241. package/dist/Molecular/CustomIcons/components/Triggers.js +22 -11
  242. package/dist/Molecular/CustomIcons/components/User.js +27 -16
  243. package/dist/Molecular/CustomIcons/components/Visa.js +38 -27
  244. package/dist/Molecular/CustomIcons/components/X.js +22 -11
  245. package/dist/Molecular/CustomIcons/index.js +183 -61
  246. package/dist/Molecular/FormElement/FormElement.js +27 -18
  247. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +108 -86
  248. package/dist/Molecular/FormWithDependOn/partials/_utils.js +34 -29
  249. package/dist/Molecular/InputAddress/InputAddress.js +312 -176
  250. package/dist/Molecular/InputPassword/InputPassword.js +39 -15
  251. package/dist/index.js +3 -1
  252. package/package.json +1 -1
@@ -1,154 +1,252 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof3 = require("@babel/runtime/helpers/typeof");
6
+
4
7
  Object.defineProperty(exports, "__esModule", {
5
8
  value: true
6
9
  });
7
10
  exports.default = void 0;
11
+
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
17
+
8
18
  var _react = _interopRequireWildcard(require("react"));
19
+
9
20
  var _reactFeather = require("react-feather");
21
+
10
22
  var _classnames = _interopRequireDefault(require("classnames"));
23
+
11
24
  var _utils = require("../../Functions/utils");
12
- var _useIsMobile = _interopRequireDefault(require("../../Functions/useIsMobile"));
25
+
26
+ var _useIsMobile2 = _interopRequireDefault(require("../../Functions/useIsMobile"));
27
+
13
28
  var _Input = _interopRequireDefault(require("../../Atomic/FormElements/Input/Input"));
29
+
14
30
  var _Hint = _interopRequireDefault(require("../../Atomic/UI/Hint/Hint"));
31
+
15
32
  var _Spinner = _interopRequireDefault(require("../../Atomic/Layout/Spinner/Spinner"));
33
+
16
34
  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; }
19
- 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";
21
-
22
- // ? Если равны - true
23
- const compareValues = (val1, val2) => {
24
- return typeof val1 === typeof val2 && ((0, _utils.getIsOnlyAnObject)(val1) ? (0, _utils.compare)(val1, val2) : val1 === val2);
35
+
36
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
+
38
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
+
40
+ var DEFAULT_HINT_MESSAGE = 'Select the correct address from the list of suggestions (must contains house number and street name)';
41
+ var RC = "input-address"; // ? Если равны - true
42
+
43
+ var compareValues = function compareValues(val1, val2) {
44
+ return (0, _typeof2.default)(val1) === (0, _typeof2.default)(val2) && ((0, _utils.getIsOnlyAnObject)(val1) ? (0, _utils.compare)(val1, val2) : val1 === val2);
25
45
  };
26
- const throttle = (fn, ms) => {
27
- let id = null;
46
+
47
+ var throttle = function throttle(fn, ms) {
48
+ var id = null;
28
49
  return function () {
29
50
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
30
51
  args[_key] = arguments[_key];
31
52
  }
53
+
32
54
  if (id) clearTimeout(id);
33
- id = setTimeout(() => {
34
- fn(...args);
55
+ id = setTimeout(function () {
56
+ fn.apply(void 0, args);
35
57
  }, ms);
36
58
  };
59
+ }; // Отдает true если value валидное НЕ нулевое число
60
+
61
+
62
+ var getIsValidNumber = function getIsValidNumber(value) {
63
+ return !!value && typeof value === 'number' && !Number.isNaN(value);
37
64
  };
38
65
 
39
- // Отдает true если value валидное НЕ нулевое число
40
- const getIsValidNumber = value => !!value && typeof value === 'number' && !Number.isNaN(value);
41
- const InputAddress = _ref => {
42
- let {
43
- label,
44
- className = '',
45
- isClearable = true,
46
- isKeyboardControlled = true,
47
- fieldKey = '',
48
- testId = '',
49
- throttle: throttleTime = 500,
50
- // ms
51
- additionalThrottleTimeForListingRequest = 0,
52
- // ms
53
- loader = '',
54
- noItemsMessage = '',
55
- error,
56
- value = '',
57
- onChange = () => {},
58
- onChangeValueTransformer,
59
- disabled,
60
- getListItems = () => {},
61
- clarifyAddressInfo,
62
- // ! Не делать дефолтного значения! Это и метод и флаг
63
-
64
- noValidate = false,
65
- renderSelectedItem,
66
- renderListItem,
67
- renderHintMessage,
68
- attributesOfNativeInput
69
- } = _ref;
70
- const {
71
- isMobile
72
- } = (0, _useIsMobile.default)();
73
- const inputRef = (0, _react.useRef)(null);
74
- const listRef = (0, _react.useRef)(null);
75
- const listOverlayRef = (0, _react.useRef)(null);
76
- const listWrapperRef = (0, _react.useRef)(null);
77
- const listHeaderRef = (0, _react.useRef)(null);
78
- const previousValueRef = (0, _react.useRef)(value);
79
- const [isValueInited, setIsValueInited] = (0, _react.useState)(false);
80
- const [isScrollableList, setIsScrollableList] = (0, _react.useState)(null);
81
- const [scrollTop, setScrollTop] = (0, _react.useState)(0);
82
- const [scrollHeight, setScrollHeight] = (0, _react.useState)(1);
83
- const [innerValue, setInnerValue] = (0, _react.useState)(value);
84
- const [tempInnerValue, setTempInnerValue] = (0, _react.useState)(null);
85
- const [tempValue, setTempValue] = (0, _react.useState)(null);
86
- const [listItems, setListItems] = (0, _react.useState)([]);
87
- const [isLoading, setIsLoading] = (0, _react.useState)(false);
88
- const [isListLoading, setIsListLoading] = (0, _react.useState)(false);
89
- const [hightlightedIndex, setHightlightedIndex] = (0, _react.useState)(null);
90
- const [isFocused, setIsFocused] = (0, _react.useState)(false);
91
- const [isListVisible, setIsListVisible] = (0, _react.useState)(false);
92
- const isWrongAddress = (0, _react.useMemo)(() => {
66
+ var InputAddress = function InputAddress(_ref) {
67
+ var label = _ref.label,
68
+ _ref$className = _ref.className,
69
+ className = _ref$className === void 0 ? '' : _ref$className,
70
+ _ref$isClearable = _ref.isClearable,
71
+ isClearable = _ref$isClearable === void 0 ? true : _ref$isClearable,
72
+ _ref$isKeyboardContro = _ref.isKeyboardControlled,
73
+ isKeyboardControlled = _ref$isKeyboardContro === void 0 ? true : _ref$isKeyboardContro,
74
+ _ref$fieldKey = _ref.fieldKey,
75
+ fieldKey = _ref$fieldKey === void 0 ? '' : _ref$fieldKey,
76
+ _ref$testId = _ref.testId,
77
+ testId = _ref$testId === void 0 ? '' : _ref$testId,
78
+ _ref$throttle = _ref.throttle,
79
+ throttleTime = _ref$throttle === void 0 ? 500 : _ref$throttle,
80
+ _ref$additionalThrott = _ref.additionalThrottleTimeForListingRequest,
81
+ additionalThrottleTimeForListingRequest = _ref$additionalThrott === void 0 ? 0 : _ref$additionalThrott,
82
+ _ref$loader = _ref.loader,
83
+ loader = _ref$loader === void 0 ? '' : _ref$loader,
84
+ _ref$noItemsMessage = _ref.noItemsMessage,
85
+ noItemsMessage = _ref$noItemsMessage === void 0 ? '' : _ref$noItemsMessage,
86
+ error = _ref.error,
87
+ _ref$value = _ref.value,
88
+ value = _ref$value === void 0 ? '' : _ref$value,
89
+ _ref$onChange = _ref.onChange,
90
+ onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
91
+ onChangeValueTransformer = _ref.onChangeValueTransformer,
92
+ disabled = _ref.disabled,
93
+ _ref$getListItems = _ref.getListItems,
94
+ getListItems = _ref$getListItems === void 0 ? function () {} : _ref$getListItems,
95
+ clarifyAddressInfo = _ref.clarifyAddressInfo,
96
+ _ref$noValidate = _ref.noValidate,
97
+ noValidate = _ref$noValidate === void 0 ? false : _ref$noValidate,
98
+ renderSelectedItem = _ref.renderSelectedItem,
99
+ renderListItem = _ref.renderListItem,
100
+ renderHintMessage = _ref.renderHintMessage,
101
+ attributesOfNativeInput = _ref.attributesOfNativeInput;
102
+
103
+ var _useIsMobile = (0, _useIsMobile2.default)(),
104
+ isMobile = _useIsMobile.isMobile;
105
+
106
+ var inputRef = (0, _react.useRef)(null);
107
+ var listRef = (0, _react.useRef)(null);
108
+ var listOverlayRef = (0, _react.useRef)(null);
109
+ var listWrapperRef = (0, _react.useRef)(null);
110
+ var listHeaderRef = (0, _react.useRef)(null);
111
+ var previousValueRef = (0, _react.useRef)(value);
112
+
113
+ var _useState = (0, _react.useState)(false),
114
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
115
+ isValueInited = _useState2[0],
116
+ setIsValueInited = _useState2[1];
117
+
118
+ var _useState3 = (0, _react.useState)(null),
119
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
120
+ isScrollableList = _useState4[0],
121
+ setIsScrollableList = _useState4[1];
122
+
123
+ var _useState5 = (0, _react.useState)(0),
124
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
125
+ scrollTop = _useState6[0],
126
+ setScrollTop = _useState6[1];
127
+
128
+ var _useState7 = (0, _react.useState)(1),
129
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
130
+ scrollHeight = _useState8[0],
131
+ setScrollHeight = _useState8[1];
132
+
133
+ var _useState9 = (0, _react.useState)(value),
134
+ _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
135
+ innerValue = _useState10[0],
136
+ setInnerValue = _useState10[1];
137
+
138
+ var _useState11 = (0, _react.useState)(null),
139
+ _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
140
+ tempInnerValue = _useState12[0],
141
+ setTempInnerValue = _useState12[1];
142
+
143
+ var _useState13 = (0, _react.useState)(null),
144
+ _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
145
+ tempValue = _useState14[0],
146
+ setTempValue = _useState14[1];
147
+
148
+ var _useState15 = (0, _react.useState)([]),
149
+ _useState16 = (0, _slicedToArray2.default)(_useState15, 2),
150
+ listItems = _useState16[0],
151
+ setListItems = _useState16[1];
152
+
153
+ var _useState17 = (0, _react.useState)(false),
154
+ _useState18 = (0, _slicedToArray2.default)(_useState17, 2),
155
+ isLoading = _useState18[0],
156
+ setIsLoading = _useState18[1];
157
+
158
+ var _useState19 = (0, _react.useState)(false),
159
+ _useState20 = (0, _slicedToArray2.default)(_useState19, 2),
160
+ isListLoading = _useState20[0],
161
+ setIsListLoading = _useState20[1];
162
+
163
+ var _useState21 = (0, _react.useState)(null),
164
+ _useState22 = (0, _slicedToArray2.default)(_useState21, 2),
165
+ hightlightedIndex = _useState22[0],
166
+ setHightlightedIndex = _useState22[1];
167
+
168
+ var _useState23 = (0, _react.useState)(false),
169
+ _useState24 = (0, _slicedToArray2.default)(_useState23, 2),
170
+ isFocused = _useState24[0],
171
+ setIsFocused = _useState24[1];
172
+
173
+ var _useState25 = (0, _react.useState)(false),
174
+ _useState26 = (0, _slicedToArray2.default)(_useState25, 2),
175
+ isListVisible = _useState26[0],
176
+ setIsListVisible = _useState26[1];
177
+
178
+ var isWrongAddress = (0, _react.useMemo)(function () {
93
179
  var _innerValue$street;
180
+
94
181
  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;
182
+ if (innerValue === '') return false; // eslint-disable-next-line no-prototype-builtins
183
+
184
+ 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
185
 
99
- // eslint-disable-next-line no-prototype-builtins
100
186
  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
187
  return false;
102
188
  }, [innerValue]);
103
- const setItemAsInnerValue = (e, item) => {
189
+
190
+ var setItemAsInnerValue = function setItemAsInnerValue(e, item) {
104
191
  if (e instanceof Event) {
105
192
  e.preventDefault();
106
193
  e.stopPropagation();
107
194
  }
108
- setTimeout(() => {
195
+
196
+ setTimeout(function () {
109
197
  setInnerValue(item);
198
+
110
199
  if (isMobile) {
111
200
  setIsListVisible(false);
112
201
  }
113
202
  }, 0);
114
- };
203
+ }; // ? Базовый метод получения списка вариантов адреса
115
204
 
116
- // ? Базовый метод получения списка вариантов адреса
117
- const getAddressVariants = (0, _react.useMemo)(() => innerValue => {
118
- var _getListItems;
119
- return (_getListItems = getListItems(innerValue)) === null || _getListItems === void 0 ? void 0 : _getListItems.then(setListItems).finally(() => setIsListLoading(false));
120
- }, [getListItems]);
121
205
 
122
- // ? Метод получения списка вариантов адреса с тротлингом (основным и, если нужно, дополнительным)
206
+ var getAddressVariants = (0, _react.useMemo)(function () {
207
+ return function (innerValue) {
208
+ var _getListItems;
209
+
210
+ return (_getListItems = getListItems(innerValue)) === null || _getListItems === void 0 ? void 0 : _getListItems.then(setListItems).finally(function () {
211
+ return setIsListLoading(false);
212
+ });
213
+ };
214
+ }, [getListItems]); // ? Метод получения списка вариантов адреса с тротлингом (основным и, если нужно, дополнительным)
123
215
  // ? Без useMemo работать НЕ будет (т.к. на каждом перерендере будет создаваться новая ф-я и будет теряться замкнутая переменная id из throttle)
124
- const getAddressVariantsWithThrottling = (0, _react.useMemo)(() => {
125
- const execute = getIsValidNumber(additionalThrottleTimeForListingRequest) ? throttle(getAddressVariants, additionalThrottleTimeForListingRequest) : getAddressVariants;
126
- return getIsValidNumber(throttleTime) ? throttle(execute, throttleTime) : execute;
127
- }, [getAddressVariants, additionalThrottleTimeForListingRequest, throttleTime]);
128
216
 
129
- // ? Итоговый "получатель" списка вариантов адресов
130
- const getAddressVariantsList = () => {
131
- if (!(innerValue !== null && innerValue !== void 0 && innerValue.length)) return null;
217
+ var getAddressVariantsWithThrottling = (0, _react.useMemo)(function () {
218
+ var execute = getIsValidNumber(additionalThrottleTimeForListingRequest) ? throttle(getAddressVariants, additionalThrottleTimeForListingRequest) : getAddressVariants;
219
+ return getIsValidNumber(throttleTime) ? throttle(execute, throttleTime) : execute;
220
+ }, [getAddressVariants, additionalThrottleTimeForListingRequest, throttleTime]); // ? Итоговый "получатель" списка вариантов адресов
132
221
 
133
- // ? Вообще с учетом надпись "Loading" в списке вариантов включается в этом месте (т.е. сразу при начале набора),
222
+ var getAddressVariantsList = function getAddressVariantsList() {
223
+ if (!(innerValue !== null && innerValue !== void 0 && innerValue.length)) return null; // ? Вообще с учетом надпись "Loading" в списке вариантов включается в этом месте (т.е. сразу при начале набора),
134
224
  // ? то, наверное, можно было НЕ мутить с дополнительным тротлингом )).
135
225
  // ? Наверное, можно было увеличить время первичного тротлинга и, наверное, работало бы так же ))
136
226
  // ? НО, раз уже сделал )) оставлю, может будет в будущем полезно )
227
+
137
228
  setIsListLoading(true);
138
229
  getAddressVariantsWithThrottling(innerValue);
139
230
  };
140
- const onClearClick = e => {
231
+
232
+ var onClearClick = function onClearClick(e) {
141
233
  var _inputRef$current;
234
+
142
235
  e.preventDefault();
143
236
  e.stopPropagation();
237
+
144
238
  if (!isMobile) {
145
239
  setIsListVisible(false);
146
240
  }
241
+
147
242
  setInnerValue('');
148
- inputRef === null || inputRef === void 0 || (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();
149
- setTimeout(() => setIsFocused(true), 0);
243
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.focus();
244
+ setTimeout(function () {
245
+ return setIsFocused(true);
246
+ }, 0);
150
247
  };
151
- const onOverlayClick = e => {
248
+
249
+ var onOverlayClick = function onOverlayClick(e) {
152
250
  if (e.target === (listOverlayRef === null || listOverlayRef === void 0 ? void 0 : listOverlayRef.current)) {
153
251
  e.stopPropagation();
154
252
  e.preventDefault();
@@ -157,23 +255,27 @@ const InputAddress = _ref => {
157
255
  onChange(typeof innerValue === 'string' || !onChangeValueTransformer || typeof onChangeValueTransformer !== 'function' ? innerValue : onChangeValueTransformer(innerValue));
158
256
  }
159
257
  };
160
- const onKeyDown = keyCode => {
258
+
259
+ var onKeyDown = function onKeyDown(keyCode) {
161
260
  if (!isListVisible || !isKeyboardControlled) return false;
261
+
162
262
  if (keyCode === 13) {
163
263
  var _inputRef$current2;
264
+
164
265
  // Enter Controller
165
266
  setItemAsInnerValue(null, listItems[hightlightedIndex]);
166
267
  setHightlightedIndex(null);
167
- inputRef === null || inputRef === void 0 || (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 || _inputRef$current2.blur();
268
+ inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.blur();
168
269
  } else {
169
- var _listRef$current, _listRef$current2, _newHightlightedEleme;
170
- let newHightlightedIndex = null;
171
- const listItemsElements = document.getElementsByClassName('input-address__list--item');
172
- 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;
173
- const listScrollTop = (listRef === null || listRef === void 0 || (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 ? void 0 : _listRef$current2.scrollTop) || 0;
174
- const lastItemIndex = parseInt(listItems === null || listItems === void 0 ? void 0 : listItems.length) - 1;
270
+ var _listRef$current, _listRef$current$getB, _listRef$current2, _newHightlightedEleme;
175
271
 
272
+ var newHightlightedIndex = null;
273
+ var listItemsElements = document.getElementsByClassName('input-address__list--item');
274
+ var 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;
275
+ var listScrollTop = (listRef === null || listRef === void 0 ? void 0 : (_listRef$current2 = listRef.current) === null || _listRef$current2 === void 0 ? void 0 : _listRef$current2.scrollTop) || 0;
276
+ var lastItemIndex = parseInt(listItems === null || listItems === void 0 ? void 0 : listItems.length) - 1;
176
277
  /** Arrows Controllers **/
278
+
177
279
  if (keyCode === 40) {
178
280
  // Down Key Controller
179
281
  if (hightlightedIndex === null || hightlightedIndex === lastItemIndex) {
@@ -188,98 +290,110 @@ const InputAddress = _ref => {
188
290
  } else if (hightlightedIndex - 1 >= 0) {
189
291
  newHightlightedIndex = hightlightedIndex - 1;
190
292
  }
191
- }
293
+ } // Scroll to Element
294
+
295
+
296
+ var newHightlightedElement = listItemsElements[newHightlightedIndex];
297
+ var newHightlightedElementHeight = newHightlightedElement === null || newHightlightedElement === void 0 ? void 0 : (_newHightlightedEleme = newHightlightedElement.getBoundingClientRect()) === null || _newHightlightedEleme === void 0 ? void 0 : _newHightlightedEleme.height;
298
+ var newHightlightedElementTopInList = newHightlightedElement === null || newHightlightedElement === void 0 ? void 0 : newHightlightedElement.offsetTop;
192
299
 
193
- // Scroll to Element
194
- const newHightlightedElement = listItemsElements[newHightlightedIndex];
195
- const newHightlightedElementHeight = newHightlightedElement === null || newHightlightedElement === void 0 || (_newHightlightedEleme = newHightlightedElement.getBoundingClientRect()) === null || _newHightlightedEleme === void 0 ? void 0 : _newHightlightedEleme.height;
196
- const newHightlightedElementTopInList = newHightlightedElement === null || newHightlightedElement === void 0 ? void 0 : newHightlightedElement.offsetTop;
197
300
  if (newHightlightedElementTopInList + newHightlightedElementHeight > listScrollTop + listHeight) {
198
301
  if (Math.abs(newHightlightedElementTopInList + newHightlightedElementHeight - (listScrollTop + listHeight)) <= newHightlightedElementHeight) {
199
302
  var _listRef$current3;
200
- listRef === null || listRef === void 0 || (_listRef$current3 = listRef.current) === null || _listRef$current3 === void 0 || _listRef$current3.scrollTo(0, listScrollTop + newHightlightedElementHeight);
303
+
304
+ listRef === null || listRef === void 0 ? void 0 : (_listRef$current3 = listRef.current) === null || _listRef$current3 === void 0 ? void 0 : _listRef$current3.scrollTo(0, listScrollTop + newHightlightedElementHeight);
201
305
  } else {
202
306
  var _listRef$current4;
203
- listRef === null || listRef === void 0 || (_listRef$current4 = listRef.current) === null || _listRef$current4 === void 0 || _listRef$current4.scrollTo(0, newHightlightedElementTopInList);
307
+
308
+ listRef === null || listRef === void 0 ? void 0 : (_listRef$current4 = listRef.current) === null || _listRef$current4 === void 0 ? void 0 : _listRef$current4.scrollTo(0, newHightlightedElementTopInList);
204
309
  }
205
310
  } else if (newHightlightedElementTopInList < listScrollTop) {
206
311
  if (Math.abs(newHightlightedElementTopInList - listScrollTop) < newHightlightedElementHeight) {
207
312
  var _listRef$current5;
208
- listRef === null || listRef === void 0 || (_listRef$current5 = listRef.current) === null || _listRef$current5 === void 0 || _listRef$current5.scrollTo(0, listScrollTop - newHightlightedElementHeight);
313
+
314
+ listRef === null || listRef === void 0 ? void 0 : (_listRef$current5 = listRef.current) === null || _listRef$current5 === void 0 ? void 0 : _listRef$current5.scrollTo(0, listScrollTop - newHightlightedElementHeight);
209
315
  } else {
210
316
  var _listRef$current6;
211
- listRef === null || listRef === void 0 || (_listRef$current6 = listRef.current) === null || _listRef$current6 === void 0 || _listRef$current6.scrollTo(0, newHightlightedElementTopInList);
317
+
318
+ listRef === null || listRef === void 0 ? void 0 : (_listRef$current6 = listRef.current) === null || _listRef$current6 === void 0 ? void 0 : _listRef$current6.scrollTo(0, newHightlightedElementTopInList);
212
319
  }
213
320
  }
321
+
214
322
  if (!isMobile) setHightlightedIndex(newHightlightedIndex);
215
323
  }
216
324
  };
217
- const getHintMessage = () => {
325
+
326
+ var getHintMessage = function getHintMessage() {
218
327
  if (!renderHintMessage || typeof renderHintMessage !== 'function') return DEFAULT_HINT_MESSAGE;
219
328
  return renderHintMessage(innerValue);
220
329
  };
221
- const getSelectedItemLabel = function () {
330
+
331
+ var getSelectedItemLabel = function getSelectedItemLabel() {
222
332
  var _value$street;
223
- let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : innerValue;
333
+
334
+ var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : innerValue;
224
335
  if (!value) return '';
225
336
  if (typeof value === 'string') return value;
226
337
  if (typeof renderSelectedItem === 'function') renderSelectedItem(value);
227
- 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();
338
+ var 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();
228
339
  return !label && isLoading ? previousValueRef.current : label;
229
340
  };
230
- const getListItemLabel = item => {
341
+
342
+ var getListItemLabel = function getListItemLabel(item) {
231
343
  if (typeof item === 'string') return item;
232
344
  if (!renderListItem || typeof renderListItem !== 'function') return item === null || item === void 0 ? void 0 : item.fullPrediction;
233
345
  return renderListItem(item);
234
346
  };
235
- const setListHeight = () => {
347
+
348
+ var setListHeight = function setListHeight() {
236
349
  if (listWrapperRef !== null && listWrapperRef !== void 0 && listWrapperRef.current && listHeaderRef !== null && listHeaderRef !== void 0 && listHeaderRef.current && listRef.current) {
237
- var _listWrapperRef$curre, _listHeaderRef$curren;
238
- 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;
239
- const listWrapperStyles = getComputedStyle(listWrapperRef === null || listWrapperRef === void 0 ? void 0 : listWrapperRef.current);
240
- 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;
241
- const listHeight = listWrapperHeight - listHeaderHeight - parseInt(listWrapperStyles.paddingBottom);
350
+ var _listWrapperRef$curre, _listWrapperRef$curre2, _listHeaderRef$curren, _listHeaderRef$curren2;
351
+
352
+ var 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;
353
+ var listWrapperStyles = getComputedStyle(listWrapperRef === null || listWrapperRef === void 0 ? void 0 : listWrapperRef.current);
354
+ var 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;
355
+ var listHeight = listWrapperHeight - listHeaderHeight - parseInt(listWrapperStyles.paddingBottom);
242
356
  listRef.current.style.maxHeight = "".concat(listHeight, "px");
243
357
  }
244
358
  };
245
- const resetListHeight = () => {
359
+
360
+ var resetListHeight = function resetListHeight() {
246
361
  if (listRef.current) {
247
362
  listRef.current.style.maxHeight = "initial";
248
363
  }
249
- };
250
-
251
- // ? Основной блок работы со значениями адреса
364
+ }; // ? Основной блок работы со значениями адреса
252
365
  // ? Не меняйте вызовы setInnerValue и onChange не разобравшись в логике вызовов
253
- (0, _react.useEffect)(() => {
366
+
367
+
368
+ (0, _react.useEffect)(function () {
254
369
  // ? Исключение инициализации - равны только при первом рендере компонента,
255
370
  // ? т.к. рефка и стейт инициализируются верхним value
256
371
  if (!compareValues(innerValue, previousValueRef.current)) {
257
- const isObject = (0, _utils.getIsOnlyAnObject)(innerValue);
258
-
259
- // ? innerValue меняется либо от ручного ввода, либо от выбора из списка
372
+ var isObject = (0, _utils.getIsOnlyAnObject)(innerValue); // ? innerValue меняется либо от ручного ввода, либо от выбора из списка
260
373
  // ? Полная информация или нет - напрямую зависит от ответа getListItems
261
- const isFullInfo = isObject && 'streetNumber' in innerValue && 'street' in innerValue && 'city' in innerValue && 'state' in innerValue && 'country' in innerValue && 'zipCode' in innerValue;
262
374
 
263
- // ? Для старого эндпоинта возвращается список с полной информацией, поэтому на проектах ничего не поменяется,
375
+ var isFullInfo = isObject && 'streetNumber' in innerValue && 'street' in innerValue && 'city' in innerValue && 'state' in innerValue && 'country' in innerValue && 'zipCode' in innerValue; // ? Для старого эндпоинта возвращается список с полной информацией, поэтому на проектах ничего не поменяется,
264
376
  // ? если не менять запросник (getListItems), все будет проходить по этой if-ке или по 3-й (для строчных значений)
377
+
265
378
  if (isFullInfo) {
266
379
  onChange(innerValue);
267
380
  setIsLoading(false);
268
- }
269
-
270
- // ? Неполная информация может быть только в том случае, когда метод getListItems использует уже новый эндпоинт гугл-апи.
381
+ } // ? Неполная информация может быть только в том случае, когда метод getListItems использует уже новый эндпоинт гугл-апи.
271
382
  // ? Предполагается, что при этом в компонент будет прокинута ф-я "уточнятель" (clarifyAddressInfo)
383
+
384
+
272
385
  if (isObject && !isFullInfo) {
273
386
  if (typeof clarifyAddressInfo === 'function') {
274
387
  var _clarifyAddressInfo, _clarifyAddressInfo$t;
275
- setIsLoading(true);
276
- // ? Предполагается, что clarifyAddressInfo - асинхронная ф-я, запросник уточнения опции
388
+
389
+ setIsLoading(true); // ? Предполагается, что clarifyAddressInfo - асинхронная ф-я, запросник уточнения опции
277
390
  // ? Никаких await-ов НЕ нужно (тем более что в useEffect и нельзя для нового React),
278
391
  // ? промис "выплюнется в пустоту", но НЕ будет отчищен до резолва, а useEffect (и итерация рендера в целом) при этом будет закончен(а)
279
- (_clarifyAddressInfo = clarifyAddressInfo(innerValue)) === null || _clarifyAddressInfo === void 0 || (_clarifyAddressInfo$t = _clarifyAddressInfo.then) === null || _clarifyAddressInfo$t === void 0 || _clarifyAddressInfo$t.call(_clarifyAddressInfo, res => {
392
+
393
+ (_clarifyAddressInfo = clarifyAddressInfo(innerValue)) === null || _clarifyAddressInfo === void 0 ? void 0 : (_clarifyAddressInfo$t = _clarifyAddressInfo.then) === null || _clarifyAddressInfo$t === void 0 ? void 0 : _clarifyAddressInfo$t.call(_clarifyAddressInfo, function (res) {
280
394
  if (res) setInnerValue(res);else {
281
395
  setInnerValue(previousValueRef.current);
282
- setTimeout(() => {
396
+ setTimeout(function () {
283
397
  inputRef.current.focus();
284
398
  inputRef.current.setSelectionRange(previousValueRef.current.length, previousValueRef.current.length);
285
399
  }, 0);
@@ -287,49 +401,49 @@ const InputAddress = _ref => {
287
401
  setIsLoading(false);
288
402
  return res;
289
403
  });
290
- }
291
- // ! Если сверху поменяли эндпоинт и он выдает "облегченный листинг" (айтемы с неполной инфой),
404
+ } // ! Если сверху поменяли эндпоинт и он выдает "облегченный листинг" (айтемы с неполной инфой),
292
405
  // ! и НЕ пробросили clarifyAddressInfo, то на этом кейсе велью инпута будет просто зануляться
293
406
  // ! (getSelectedItemLabel вернет пустую строку если вкинуть innerValue без всей инфы)
294
407
  else setInnerValue(getSelectedItemLabel(innerValue));
295
- }
408
+ } // ? Кейс для строчных значений
409
+
296
410
 
297
- // ? Кейс для строчных значений
298
411
  if (!isObject) {
299
412
  // ? Вызываем верхний onChange если innerValue есть или если нету, но это не после логики уточнения
300
- if (innerValue || !isLoading) onChange(innerValue);
301
- // ? Если innerValue есть и еще не открыт листинг - открываем
302
- if (innerValue && !isListVisible) setIsListVisible(true);
303
- // ? Если инпут сфокусирован и значение есть - запрашиваем список вариантов
413
+ if (innerValue || !isLoading) onChange(innerValue); // ? Если innerValue есть и еще не открыт листинг - открываем
414
+
415
+ if (innerValue && !isListVisible) setIsListVisible(true); // ? Если инпут сфокусирован и значение есть - запрашиваем список вариантов
416
+
304
417
  if (isFocused && !!innerValue) getAddressVariantsList();
305
418
  }
306
419
  }
307
420
  }, [innerValue]);
308
- (0, _react.useEffect)(() => {
421
+ (0, _react.useEffect)(function () {
309
422
  if (!isFocused && !isMobile) {
310
423
  setIsListVisible(false);
311
424
  setHightlightedIndex(null);
312
425
  }
313
426
  }, [isFocused]);
314
- (0, _react.useEffect)(() => {
427
+ (0, _react.useEffect)(function () {
315
428
  if (!isListVisible) {
316
429
  setListItems([]);
317
430
  resetListHeight();
318
431
  }
432
+
319
433
  if (isMobile && isListVisible) {
320
434
  setTempInnerValue(innerValue);
321
435
  setListHeight();
322
436
  }
323
437
  }, [isListVisible]);
324
- (0, _react.useEffect)(() => {
438
+ (0, _react.useEffect)(function () {
325
439
  // ? учет изменения value сверху (верхние переназначения велью)
326
- if (!compareValues(value, innerValue)) setInnerValue(value);
440
+ if (!compareValues(value, innerValue)) setInnerValue(value); // ? useEffect должен быть последним, т.к. рефка меняется в рамках текущей итерации
327
441
 
328
- // ? useEffect должен быть последним, т.к. рефка меняется в рамках текущей итерации
329
442
  previousValueRef.current = value;
330
443
  }, [value]);
331
- const renderSearchableInput = () => {
332
- const inputValue = getSelectedItemLabel();
444
+
445
+ var renderSearchableInput = function renderSearchableInput() {
446
+ var inputValue = getSelectedItemLabel();
333
447
  return /*#__PURE__*/_react.default.createElement("div", {
334
448
  className: (0, _classnames.default)('input-address__input-wrapper')
335
449
  }, /*#__PURE__*/_react.default.createElement(_Input.default, {
@@ -338,10 +452,12 @@ const InputAddress = _ref => {
338
452
  className: (0, _classnames.default)('input-address__input', className),
339
453
  value: inputValue,
340
454
  onChange: setInnerValue,
341
- onFocus: e => {
455
+ onFocus: function onFocus(e) {
342
456
  setIsFocused(true);
343
457
  },
344
- onBlur: () => setIsFocused(false),
458
+ onBlur: function onBlur() {
459
+ return setIsFocused(false);
460
+ },
345
461
  onKeyDown: onKeyDown,
346
462
  attributesOfNativeInput: attributesOfNativeInput
347
463
  }), isWrongAddress && /*#__PURE__*/_react.default.createElement("div", {
@@ -361,8 +477,9 @@ const InputAddress = _ref => {
361
477
  onClick: onClearClick
362
478
  })));
363
479
  };
364
- const renderInput = () => {
365
- const inputValue = getSelectedItemLabel(isListVisible ? tempInnerValue : innerValue);
480
+
481
+ var renderInput = function renderInput() {
482
+ var inputValue = getSelectedItemLabel(isListVisible ? tempInnerValue : innerValue);
366
483
  return /*#__PURE__*/_react.default.createElement("div", {
367
484
  className: (0, _classnames.default)('input-address__input-wrapper')
368
485
  }, /*#__PURE__*/_react.default.createElement(_Input.default, {
@@ -370,45 +487,56 @@ const InputAddress = _ref => {
370
487
  className: (0, _classnames.default)('input-address__input', className),
371
488
  value: inputValue,
372
489
  onChange: setInnerValue,
373
- onFocus: e => {
490
+ onFocus: function onFocus(e) {
374
491
  var _e$target;
492
+
375
493
  setIsListVisible(true);
376
- e === null || e === void 0 || (_e$target = e.target) === null || _e$target === void 0 || _e$target.blur();
377
- setTimeout(() => {
494
+ e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.blur();
495
+ setTimeout(function () {
378
496
  var _inputRef$current3;
379
- return inputRef === null || inputRef === void 0 || (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.focus();
497
+
498
+ return inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.focus();
380
499
  }, 200);
381
500
  }
382
501
  }));
383
502
  };
384
- const renderLoader = () => {
503
+
504
+ var renderLoader = function renderLoader() {
385
505
  return /*#__PURE__*/_react.default.createElement("div", {
386
506
  className: "input-address__list--loader"
387
507
  }, loader || 'Loading...');
388
508
  };
389
- const renderList = () => {
390
- const renderListItem = (item, i) => {
509
+
510
+ var renderList = function renderList() {
511
+ var renderListItem = function renderListItem(item, i) {
391
512
  return /*#__PURE__*/_react.default.createElement("div", {
392
513
  key: "input-address__list-item".concat(i),
393
514
  className: (0, _classnames.default)('input-address__list--item', {
394
515
  'input-address__list--item-hightlighted': i === hightlightedIndex
395
516
  }),
396
- onMouseDown: e => setItemAsInnerValue(e, item)
517
+ onMouseDown: function onMouseDown(e) {
518
+ return setItemAsInnerValue(e, item);
519
+ }
397
520
  }, getListItemLabel(item));
398
521
  };
399
- const renderListItemCustom = () => {
522
+
523
+ var renderListItemCustom = function renderListItemCustom() {
400
524
  return /*#__PURE__*/_react.default.createElement("div", {
401
525
  key: "input-address__list-item--custom",
402
526
  className: (0, _classnames.default)('input-address__list--item', 'input-address__list--item-custom'),
403
- onMouseDown: e => setItemAsInnerValue(e, getSelectedItemLabel())
527
+ onMouseDown: function onMouseDown(e) {
528
+ return setItemAsInnerValue(e, getSelectedItemLabel());
529
+ }
404
530
  }, getSelectedItemLabel(), /*#__PURE__*/_react.default.createElement(_reactFeather.AlertTriangle, null), /*#__PURE__*/_react.default.createElement("span", null, "Choose this only if your address is not listed below"));
405
531
  };
406
- const renderNoItems = () => {
532
+
533
+ var renderNoItems = function renderNoItems() {
407
534
  return /*#__PURE__*/_react.default.createElement("div", {
408
535
  className: "input-address__list--no-items"
409
536
  }, isMobile && !(innerValue !== null && innerValue !== void 0 && innerValue.length) ? 'Please begin entering your address' : noItemsMessage || 'No Items');
410
537
  };
411
- const renderListDesktop = () => {
538
+
539
+ var renderListDesktop = function renderListDesktop() {
412
540
  return /*#__PURE__*/_react.default.createElement("div", {
413
541
  className: "input-address__list-wrapper",
414
542
  ref: listWrapperRef
@@ -417,7 +545,10 @@ const InputAddress = _ref => {
417
545
  ref: listRef
418
546
  }, isListLoading ? renderLoader() : listItems !== null && listItems !== void 0 && listItems.length ? listItems === null || listItems === void 0 ? void 0 : listItems.map(renderListItem) : renderNoItems()));
419
547
  };
420
- const renderListMobile = () => {
548
+
549
+ var renderListMobile = function renderListMobile() {
550
+ var _cn;
551
+
421
552
  return /*#__PURE__*/_react.default.createElement("div", {
422
553
  className: "input-address__list-overlay",
423
554
  ref: listOverlayRef,
@@ -427,19 +558,20 @@ const InputAddress = _ref => {
427
558
  ref: listWrapperRef
428
559
  }, isMobile && /*#__PURE__*/_react.default.createElement("div", {
429
560
  ref: listHeaderRef,
430
- className: (0, _classnames.default)("".concat(RC, "__list-header"), {
431
- ["".concat(RC, "__list-header-with-shadow")]: isScrollableList && isMobile,
432
- ["".concat(RC, "__list-header-with-shadow-hidden")]: scrollTop === 0
433
- })
561
+ className: (0, _classnames.default)("".concat(RC, "__list-header"), (_cn = {}, (0, _defineProperty2.default)(_cn, "".concat(RC, "__list-header-with-shadow"), isScrollableList && isMobile), (0, _defineProperty2.default)(_cn, "".concat(RC, "__list-header-with-shadow-hidden"), scrollTop === 0), _cn))
434
562
  }, /*#__PURE__*/_react.default.createElement("div", {
435
563
  className: (0, _classnames.default)("".concat(RC, "__list-header-row"))
436
564
  }, /*#__PURE__*/_react.default.createElement("div", {
437
565
  className: (0, _classnames.default)("".concat(RC, "__list-label"))
438
566
  }, label || 'Address'), /*#__PURE__*/_react.default.createElement("div", {
439
567
  className: (0, _classnames.default)("".concat(RC, "__list-close-icon")),
440
- onClick: () => setIsListVisible(false)
568
+ onClick: function onClick() {
569
+ return setIsListVisible(false);
570
+ }
441
571
  }, /*#__PURE__*/_react.default.createElement(_reactFeather.X, {
442
- onClick: () => setIsListVisible(false)
572
+ onClick: function onClick() {
573
+ return setIsListVisible(false);
574
+ }
443
575
  }))), /*#__PURE__*/_react.default.createElement("div", {
444
576
  className: (0, _classnames.default)("".concat(RC, "__list-header-row"))
445
577
  }, renderSearchableInput())), /*#__PURE__*/_react.default.createElement("div", {
@@ -447,8 +579,10 @@ const InputAddress = _ref => {
447
579
  ref: listRef
448
580
  }, 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()))));
449
581
  };
582
+
450
583
  return isMobile ? renderListMobile() : renderListDesktop();
451
584
  };
585
+
452
586
  return /*#__PURE__*/_react.default.createElement("div", {
453
587
  className: (0, _classnames.default)('input-address', {
454
588
  'input-address--error': error || isWrongAddress && !isFocused
@@ -457,4 +591,6 @@ const InputAddress = _ref => {
457
591
  size: "small"
458
592
  }), isMobile ? renderInput() : renderSearchableInput(), isListVisible && renderList());
459
593
  };
460
- var _default = exports.default = InputAddress;
594
+
595
+ var _default = InputAddress;
596
+ exports.default = _default;