intelicoreact 1.5.41 → 1.6.0

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