intelicoreact 1.3.39 → 1.3.40

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 +9 -1
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +10 -1
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +24 -4
  4. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +10 -1
  5. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +14 -2
  6. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +54 -5
  7. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +21 -3
  8. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +144 -51
  9. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +7 -1
  10. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +47 -9
  11. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +15 -3
  12. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +29 -15
  13. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +15 -5
  14. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +26 -6
  15. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +35 -19
  16. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +38 -9
  17. package/dist/Atomic/FormElements/Input/Input.js +57 -24
  18. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +31 -4
  19. package/dist/Atomic/FormElements/InputColor/InputColor.js +14 -4
  20. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +27 -6
  21. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +42 -7
  22. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +21 -3
  23. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +81 -58
  24. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +41 -6
  25. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +8 -1
  26. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +44 -14
  27. package/dist/Atomic/FormElements/InputLink/InputLink.js +23 -6
  28. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +4 -0
  29. package/dist/Atomic/FormElements/InputMask/InputMask.js +208 -77
  30. package/dist/Atomic/FormElements/InputMask/functions.js +28 -2
  31. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +119 -43
  32. package/dist/Atomic/FormElements/InputMask2/functions.js +28 -2
  33. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +137 -44
  34. package/dist/Atomic/FormElements/InputMask3/functions.js +28 -2
  35. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +17 -3
  36. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +24 -5
  37. package/dist/Atomic/FormElements/Label/Label.js +9 -1
  38. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +73 -35
  39. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +15 -3
  40. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +44 -23
  41. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +17 -7
  42. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +14 -3
  43. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +10 -1
  44. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +14 -3
  45. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +23 -3
  46. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +34 -17
  47. package/dist/Atomic/FormElements/RangeList/RangeList.js +25 -6
  48. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +11 -1
  49. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +72 -14
  50. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +124 -40
  51. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +10 -1
  52. package/dist/Atomic/FormElements/Switcher/Switcher.js +10 -1
  53. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +13 -1
  54. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +10 -1
  55. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +17 -2
  56. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +17 -3
  57. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +11 -1
  58. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +29 -6
  59. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +3 -2
  60. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +12 -1
  61. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +146 -54
  62. package/dist/Atomic/FormElements/Text/Text.js +16 -10
  63. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +9 -1
  64. package/dist/Atomic/FormElements/Textarea/Textarea.js +12 -1
  65. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +35 -6
  66. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +13 -4
  67. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +21 -7
  68. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +35 -8
  69. package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +91 -0
  70. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +18 -5
  71. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +10 -3
  72. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +11 -3
  73. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +2 -1
  74. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +12 -5
  75. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
  76. package/dist/Atomic/Layout/Header/Header.js +15 -3
  77. package/dist/Atomic/Layout/MainMenu/MainMenu.js +20 -3
  78. package/dist/Atomic/Layout/Spinner/Spinner.js +8 -1
  79. package/dist/Atomic/UI/Accordion/Accordion.js +19 -3
  80. package/dist/Atomic/UI/Accordion/AccordionItem.js +23 -9
  81. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +32 -7
  82. package/dist/Atomic/UI/AccordionText/AccordionText.js +15 -3
  83. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +21 -4
  84. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +15 -3
  85. package/dist/Atomic/UI/Alert/Alert.js +16 -3
  86. package/dist/Atomic/UI/Arrow/Arrow.js +16 -3
  87. package/dist/Atomic/UI/Box/Box.js +9 -3
  88. package/dist/Atomic/UI/Button/Button.js +11 -2
  89. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +10 -1
  90. package/dist/Atomic/UI/Chart/Chart.js +29 -4
  91. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +19 -11
  92. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +12 -1
  93. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +34 -11
  94. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +56 -82
  95. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +19 -15
  96. package/dist/Atomic/UI/Chart/partial/utils.js +20 -6
  97. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +13 -3
  98. package/dist/Atomic/UI/DateTime/DateTime.js +14 -3
  99. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +16 -4
  100. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +11 -3
  101. package/dist/Atomic/UI/DoubleString/DoubleString.js +17 -5
  102. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +10 -3
  103. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +52 -17
  104. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +29 -1
  105. package/dist/Atomic/UI/Hint/Hint.js +30 -5
  106. package/dist/Atomic/UI/Modal/Modal.js +29 -6
  107. package/dist/Atomic/UI/Modal/ModalHOC.js +10 -1
  108. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +7 -1
  109. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +8 -1
  110. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +49 -32
  111. package/dist/Atomic/UI/ModalBackup/Modal.js +90 -65
  112. package/dist/Atomic/UI/ModalBackup/ModalHOC.js +21 -12
  113. package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +11 -6
  114. package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +19 -15
  115. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +21 -6
  116. package/dist/Atomic/UI/NavLine/NavLine.js +55 -26
  117. package/dist/Atomic/UI/NavLine/Tabs.js +3 -2
  118. package/dist/Atomic/UI/PageTitle/PageTitle.js +10 -2
  119. package/dist/Atomic/UI/PieChart/PieChart.js +10 -1
  120. package/dist/Atomic/UI/Price/Price.js +8 -3
  121. package/dist/Atomic/UI/PriceRange/PriceRange.js +7 -1
  122. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +16 -1
  123. package/dist/Atomic/UI/Status/Status.js +8 -1
  124. package/dist/Atomic/UI/Table/Partials/TdCell.js +29 -5
  125. package/dist/Atomic/UI/Table/Partials/TdHeader.js +11 -1
  126. package/dist/Atomic/UI/Table/Partials/TdRow.js +17 -5
  127. package/dist/Atomic/UI/Table/Partials/TdTitle.js +14 -3
  128. package/dist/Atomic/UI/Table/Table.js +12 -1
  129. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +18 -2
  130. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +9 -1
  131. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +4 -1
  132. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +13 -1
  133. package/dist/Atomic/UI/Tag/Tag.js +14 -3
  134. package/dist/Atomic/UI/TagList/TagList.js +35 -19
  135. package/dist/Atomic/UI/UserBox/UserBox.js +13 -1
  136. package/dist/Classes/AbortableFetch.js +93 -36
  137. package/dist/Classes/AnimatedHandler.js +7 -3
  138. package/dist/Classes/RESTAPI/index.js +43 -39
  139. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +93 -35
  140. package/dist/Classes/RESTAPI/partials/ApiBase.js +9 -1
  141. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +19 -7
  142. package/dist/Classes/RESTAPI/partials/ApiUtils.js +35 -28
  143. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +44 -21
  144. package/dist/Classes/RESTAPI/partials/Utils.js +19 -6
  145. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +6 -2
  146. package/dist/Classes/RESTAPI/partials/_utils.js +36 -13
  147. package/dist/Constants/index.constants.js +15 -8
  148. package/dist/Functions/Portal.js +16 -5
  149. package/dist/Functions/customEventListener.js +17 -4
  150. package/dist/Functions/fieldValueFormatters.js +83 -43
  151. package/dist/Functions/hooks/useFormFieldsChangesManager.js +26 -23
  152. package/dist/Functions/locale/createTranslator.js +9 -4
  153. package/dist/Functions/operations.js +22 -12
  154. package/dist/Functions/presets/inputMaskPresets.js +11 -9
  155. package/dist/Functions/presets/inputPresets.js +11 -8
  156. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +9 -7
  157. package/dist/Functions/schemas.js +13 -6
  158. package/dist/Functions/useBodyScrollLock.js +6 -1
  159. package/dist/Functions/useClickOutside.js +4 -0
  160. package/dist/Functions/useDebounce.js +7 -2
  161. package/dist/Functions/useFieldFocus.js +18 -6
  162. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +9 -0
  163. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +23 -12
  164. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +15 -6
  165. package/dist/Functions/useFormTools/functions/General.js +28 -18
  166. package/dist/Functions/useFormTools/functions/RenderFields.js +11 -2
  167. package/dist/Functions/useFormTools/functions/usePrevious.js +5 -1
  168. package/dist/Functions/useFormTools/index.js +144 -85
  169. package/dist/Functions/useInputHighlightError.js +12 -3
  170. package/dist/Functions/useIsMobile.js +12 -7
  171. package/dist/Functions/useKeyPress/useHandleKeyPress.js +7 -1
  172. package/dist/Functions/useKeyPress/useKeyPress.js +9 -1
  173. package/dist/Functions/useLocalStorage.js +9 -1
  174. package/dist/Functions/useLocationParams.js +5 -4
  175. package/dist/Functions/useMetaInfo.js +10 -3
  176. package/dist/Functions/useMouseUpOutside.js +3 -0
  177. package/dist/Functions/useOnlineStatus.js +9 -1
  178. package/dist/Functions/usePasswordChecker.js +20 -4
  179. package/dist/Functions/usePrevious.js +5 -1
  180. package/dist/Functions/useResize.js +10 -2
  181. package/dist/Functions/useScrollTo.js +7 -2
  182. package/dist/Functions/useToggle.js +5 -1
  183. package/dist/Functions/utils.js +127 -49
  184. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +9 -2
  185. package/dist/Molecular/CustomIcons/components/AlertCircle.js +9 -2
  186. package/dist/Molecular/CustomIcons/components/AppStore.js +9 -2
  187. package/dist/Molecular/CustomIcons/components/Arrow.js +9 -2
  188. package/dist/Molecular/CustomIcons/components/ArrowDown.js +9 -2
  189. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +9 -2
  190. package/dist/Molecular/CustomIcons/components/ArrowRight.js +9 -2
  191. package/dist/Molecular/CustomIcons/components/ArrowUp.js +9 -2
  192. package/dist/Molecular/CustomIcons/components/Bell.js +9 -2
  193. package/dist/Molecular/CustomIcons/components/Button.js +9 -2
  194. package/dist/Molecular/CustomIcons/components/Campaigns.js +9 -2
  195. package/dist/Molecular/CustomIcons/components/Check.js +9 -2
  196. package/dist/Molecular/CustomIcons/components/Check2.js +9 -2
  197. package/dist/Molecular/CustomIcons/components/ChevronDown.js +9 -2
  198. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +9 -2
  199. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +9 -2
  200. package/dist/Molecular/CustomIcons/components/ChevronRight.js +9 -2
  201. package/dist/Molecular/CustomIcons/components/ChevronUp.js +9 -2
  202. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +9 -2
  203. package/dist/Molecular/CustomIcons/components/Close.js +9 -2
  204. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +9 -2
  205. package/dist/Molecular/CustomIcons/components/Delete.js +9 -2
  206. package/dist/Molecular/CustomIcons/components/Edit.js +9 -2
  207. package/dist/Molecular/CustomIcons/components/Email.js +9 -2
  208. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +9 -2
  209. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +9 -2
  210. package/dist/Molecular/CustomIcons/components/Flows.js +9 -2
  211. package/dist/Molecular/CustomIcons/components/Gift.js +9 -2
  212. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +9 -2
  213. package/dist/Molecular/CustomIcons/components/GooglePlay.js +9 -2
  214. package/dist/Molecular/CustomIcons/components/HelpCircle.js +9 -2
  215. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +9 -2
  216. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +9 -2
  217. package/dist/Molecular/CustomIcons/components/Home.js +9 -2
  218. package/dist/Molecular/CustomIcons/components/Home2.js +9 -2
  219. package/dist/Molecular/CustomIcons/components/Key.js +9 -2
  220. package/dist/Molecular/CustomIcons/components/Landers.js +9 -2
  221. package/dist/Molecular/CustomIcons/components/Lock.js +9 -2
  222. package/dist/Molecular/CustomIcons/components/Mail.js +9 -2
  223. package/dist/Molecular/CustomIcons/components/Mastercard.js +9 -2
  224. package/dist/Molecular/CustomIcons/components/Minus.js +9 -2
  225. package/dist/Molecular/CustomIcons/components/Offers.js +9 -2
  226. package/dist/Molecular/CustomIcons/components/Pause.js +9 -2
  227. package/dist/Molecular/CustomIcons/components/PayPal.js +9 -2
  228. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +9 -2
  229. package/dist/Molecular/CustomIcons/components/Phone.js +9 -2
  230. package/dist/Molecular/CustomIcons/components/Play.js +9 -2
  231. package/dist/Molecular/CustomIcons/components/Plus.js +9 -2
  232. package/dist/Molecular/CustomIcons/components/Profile.js +9 -2
  233. package/dist/Molecular/CustomIcons/components/QRCode.js +9 -2
  234. package/dist/Molecular/CustomIcons/components/Rectangle.js +9 -2
  235. package/dist/Molecular/CustomIcons/components/Revert.js +9 -2
  236. package/dist/Molecular/CustomIcons/components/Star.js +9 -2
  237. package/dist/Molecular/CustomIcons/components/Star2.js +9 -2
  238. package/dist/Molecular/CustomIcons/components/TrafficSources.js +9 -2
  239. package/dist/Molecular/CustomIcons/components/Trash.js +9 -2
  240. package/dist/Molecular/CustomIcons/components/TrashRed.js +9 -2
  241. package/dist/Molecular/CustomIcons/components/Triggers.js +9 -2
  242. package/dist/Molecular/CustomIcons/components/User.js +9 -2
  243. package/dist/Molecular/CustomIcons/components/Visa.js +9 -2
  244. package/dist/Molecular/CustomIcons/components/X.js +9 -2
  245. package/dist/Molecular/CustomIcons/index.js +122 -0
  246. package/dist/Molecular/FormElement/FormElement.js +12 -1
  247. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +31 -30
  248. package/dist/Molecular/FormWithDependOn/partials/_utils.js +12 -9
  249. package/dist/Molecular/InputAddress/InputAddress.js +114 -65
  250. package/dist/Molecular/InputPassword/InputPassword.js +19 -5
  251. package/dist/index.js +2 -0
  252. package/package.json +1 -1
@@ -1,29 +1,48 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+
8
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
9
12
  var _react = _interopRequireWildcard(require("react"));
13
+
10
14
  var _classnames = _interopRequireDefault(require("classnames"));
15
+
11
16
  var _reactDom = require("react-dom");
17
+
12
18
  var _reactFeather = require("react-feather");
19
+
13
20
  var _Input = _interopRequireDefault(require("../../../Atomic/FormElements/Input/Input"));
21
+
14
22
  var _RadioInput = _interopRequireDefault(require("../../../Atomic/FormElements/RadioInput/RadioInput"));
23
+
15
24
  var _fieldValueFormatters = require("../../../Functions/fieldValueFormatters");
25
+
16
26
  var _useBodyScrollLock = _interopRequireDefault(require("../../../Functions/useBodyScrollLock"));
27
+
17
28
  var _useIsMobile = _interopRequireDefault(require("../../../Functions/useIsMobile"));
29
+
18
30
  var _utils = require("../../../Functions/utils");
31
+
19
32
  var _DropdownLoader = _interopRequireDefault(require("./components/DropdownLoader"));
33
+
20
34
  require("./Dropdown.scss");
21
- 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); }
22
- 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; }
35
+
36
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
+
38
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
+
23
40
  const RC = "dropdown";
24
41
  const MIN_ITEMS_FOR_SHOW_MOBILE_SEARCH = 10;
42
+
25
43
  const Dropdown = _ref => {
26
- var _options$find, _dropdownListWrapperR3, _dropdownListRef$curr5, _dropdownListRef$curr6, _filteredOptions$find, _tabIndex$toString;
44
+ var _options$find, _dropdownListWrapperR4, _dropdownListWrapperR5, _dropdownListRef$curr5, _dropdownListRef$curr6, _filteredOptions$find, _tabIndex$toString;
45
+
27
46
  let {
28
47
  label,
29
48
  options = [],
@@ -53,7 +72,7 @@ const Dropdown = _ref => {
53
72
  const {
54
73
  isMobile: isMobileProp
55
74
  } = (0, _useIsMobile.default)();
56
- const isMobile = isMobileProp && withMobileLogic;
75
+ const isMobile = isMobileProp && withMobileLogic && window.screen.width < 768;
57
76
  const [dropdownId, setDropdownId] = (0, _react.useState)(id || fieldKey || Math.random().toString(16).slice(2));
58
77
  const [isOpen, setIsOpen] = (0, _react.useState)(false);
59
78
  const [searchValue, setSearchValue] = (0, _react.useState)();
@@ -75,22 +94,28 @@ const Dropdown = _ref => {
75
94
  return options === null || options === void 0 ? void 0 : options.reduce((result, item) => {
76
95
  if (item !== null && item !== void 0 && item.list || item !== null && item !== void 0 && item.items) {
77
96
  var _item$list, _item$items;
78
- result += (item === null || item === void 0 || (_item$list = item.list) === null || _item$list === void 0 ? void 0 : _item$list.length) || (item === null || item === void 0 || (_item$items = item.items) === null || _item$items === void 0 ? void 0 : _item$items.length) || 0;
97
+
98
+ result += (item === null || item === void 0 ? void 0 : (_item$list = item.list) === null || _item$list === void 0 ? void 0 : _item$list.length) || (item === null || item === void 0 ? void 0 : (_item$items = item.items) === null || _item$items === void 0 ? void 0 : _item$items.length) || 0;
79
99
  } else {
80
100
  ++result;
81
101
  }
102
+
82
103
  return result;
83
104
  }, 0);
84
105
  }, [options]);
85
106
  if (isMobile) isSearchable = getTotalOptions() > (minItemsForShowMobileSearch || MIN_ITEMS_FOR_SHOW_MOBILE_SEARCH);
107
+
86
108
  const moveOtherToEnd = options => {
87
109
  const otherIndex = options === null || options === void 0 ? void 0 : options.findIndex(option => (option === null || option === void 0 ? void 0 : option.value) === "other");
110
+
88
111
  if (otherIndex > -1) {
89
112
  const other = options === null || options === void 0 ? void 0 : options.splice(otherIndex, 1);
90
113
  options.push(...other);
91
114
  }
115
+
92
116
  return options;
93
117
  };
118
+
94
119
  const optionsWithOtherAtTheEnd = moveOtherToEnd(options);
95
120
  options.map(option => {
96
121
  if (option.items) {
@@ -99,40 +124,48 @@ const Dropdown = _ref => {
99
124
  });
100
125
  const filteredGroups = optionsWithOtherAtTheEnd.map(item => {
101
126
  var _item$items2;
102
- return {
103
- ...item,
127
+
128
+ return { ...item,
104
129
  items: !isSearchable || !isSearchChanged ? item === null || item === void 0 ? void 0 : item.items : (_item$items2 = item.items) === null || _item$items2 === void 0 ? void 0 : _item$items2.slice().filter(el => {
105
130
  var _el$label;
106
- return (el === null || el === void 0 || (_el$label = el.label) === null || _el$label === void 0 ? void 0 : _el$label.toLowerCase().includes((searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase()) || "")) || !(el !== null && el !== void 0 && el.value) || (el === null || el === void 0 ? void 0 : el.value) === "";
131
+
132
+ return (el === null || el === void 0 ? void 0 : (_el$label = el.label) === null || _el$label === void 0 ? void 0 : _el$label.toLowerCase().includes((searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase()) || "")) || !(el !== null && el !== void 0 && el.value) || (el === null || el === void 0 ? void 0 : el.value) === "";
107
133
  })
108
134
  };
109
135
  }).filter(item => {
110
136
  var _item$items3;
137
+
111
138
  return ((_item$items3 = item.items) === null || _item$items3 === void 0 ? void 0 : _item$items3.length) > 0;
112
139
  });
113
140
  const filteredItems = optionsWithOtherAtTheEnd.filter(item => {
114
141
  var _item$items4;
142
+
115
143
  return !((_item$items4 = item.items) !== null && _item$items4 !== void 0 && _item$items4.length);
116
144
  }).filter(item => {
117
145
  var _item$label;
146
+
118
147
  if (!isSearchable || !isSearchChanged) return true;
119
- return (item === null || item === void 0 || (_item$label = item.label) === null || _item$label === void 0 ? void 0 : _item$label.toLowerCase().includes((searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase()) || "")) || !(item !== null && item !== void 0 && item.value) || (item === null || item === void 0 ? void 0 : item.value) === "";
148
+ return (item === null || item === void 0 ? void 0 : (_item$label = item.label) === null || _item$label === void 0 ? void 0 : _item$label.toLowerCase().includes((searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase()) || "")) || !(item !== null && item !== void 0 && item.value) || (item === null || item === void 0 ? void 0 : item.value) === "";
120
149
  });
121
150
  const filteredOptions = [...filteredItems, ...filteredGroups];
122
151
  const modalBtnTrigger = entity && entity !== "" && typeof entity === "string";
152
+
123
153
  const onChangeHandler = item => {
124
154
  setIsOpen(false);
125
155
  onChange(item.value);
126
156
  };
157
+
127
158
  const onKeyDown = e => {
128
159
  if (![9, 13].includes(e.keyCode)) return false;
129
160
  setIsOpen(false);
130
161
  };
162
+
131
163
  const onKeyUp = e => {
132
164
  if (![9, 13].includes(e.keyCode)) return false;
133
165
  setIsOpen(true);
134
- };
135
- // decorator
166
+ }; // decorator
167
+
168
+
136
169
  const getDepends = getDependsTrigger => {
137
170
  const newOnChange = e => {
138
171
  if (e.value === "open_modal") {
@@ -140,9 +173,9 @@ const Dropdown = _ref => {
140
173
  } else {
141
174
  onChangeHandler(e);
142
175
  }
143
- };
176
+ }; // add pseudo option
177
+
144
178
 
145
- // add pseudo option
146
179
  const newOptions = [{
147
180
  label: "New ".concat(entity),
148
181
  value: "open_modal",
@@ -155,18 +188,22 @@ const Dropdown = _ref => {
155
188
  options: getDependsTrigger ? newOptions : options
156
189
  };
157
190
  };
191
+
158
192
  const handleClickOutside = event => {
159
193
  var _getListContainer;
194
+
160
195
  if (!((_getListContainer = getListContainer()) !== null && _getListContainer !== void 0 && _getListContainer.contains(event === null || event === void 0 ? void 0 : event.target)) && !(dropdownRef !== null && dropdownRef !== void 0 && dropdownRef.current.contains(event === null || event === void 0 ? void 0 : event.target))) {
161
196
  setIsOpen(false);
162
197
  }
163
198
  };
199
+
164
200
  const onSearchHandler = name => {
165
201
  let inputValue = name;
166
202
  if (!isNotValidateASCII) inputValue = (0, _fieldValueFormatters.formatToOnlyASCIICodeText)(inputValue);
167
203
  setIsSearchChanged(true);
168
204
  setSearchValue(inputValue);
169
205
  };
206
+
170
207
  const onWrapperClick = e => {
171
208
  if (e.target === (wrapperRef === null || wrapperRef === void 0 ? void 0 : wrapperRef.current)) {
172
209
  e.stopPropagation();
@@ -174,9 +211,12 @@ const Dropdown = _ref => {
174
211
  setIsOpen(false);
175
212
  }
176
213
  };
214
+
177
215
  const hightlightedText = (text, postfix, description) => {
178
216
  var _text;
217
+
179
218
  const prepare = text => text === null || text === void 0 ? void 0 : text.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&");
219
+
180
220
  text = text.replace(/["&<>]/g, function (a) {
181
221
  return {
182
222
  '"': "&quot;",
@@ -190,12 +230,15 @@ const Dropdown = _ref => {
190
230
  const descriptionPart = description ? "<span class=\"dropdown__list-item-description\">".concat(description, "</span>") : "";
191
231
  return main + postfixPart + descriptionPart;
192
232
  };
233
+
193
234
  const depend = getDepends(modalBtnTrigger);
235
+
194
236
  const getMarkupForElement = (item, index, optTestId) => {
195
- var _item$value, _item$value2, _item$customMobileIco;
237
+ var _item$value, _item$value$toString, _item$value2, _item$value2$toString, _item$customMobileIco;
238
+
196
239
  return /*#__PURE__*/_react.default.createElement("button", {
197
- "data-testid": "dropdown--button--key-".concat(optTestId || (item === null || item === void 0 || (_item$value = item.value) === null || _item$value === void 0 || (_item$value = _item$value.toString()) === null || _item$value === void 0 ? void 0 : _item$value.replace(/\s/, "-")) || (item === null || item === void 0 ? void 0 : item.key) || "item", "--option"),
198
- key: (_item$value2 = item.value) === null || _item$value2 === void 0 || (_item$value2 = _item$value2.toString()) === null || _item$value2 === void 0 ? void 0 : _item$value2.replace(/ /g, "_"),
240
+ "data-testid": "dropdown--button--key-".concat(optTestId || (item === null || item === void 0 ? void 0 : (_item$value = item.value) === null || _item$value === void 0 ? void 0 : (_item$value$toString = _item$value.toString()) === null || _item$value$toString === void 0 ? void 0 : _item$value$toString.replace(/\s/, "-")) || (item === null || item === void 0 ? void 0 : item.key) || "item", "--option"),
241
+ key: (_item$value2 = item.value) === null || _item$value2 === void 0 ? void 0 : (_item$value2$toString = _item$value2.toString()) === null || _item$value2$toString === void 0 ? void 0 : _item$value2$toString.replace(/ /g, "_"),
199
242
  onMouseDown: () => depend.onChange(item),
200
243
  className: (0, _classnames.default)("".concat(RC, "__list-item"), {
201
244
  ["".concat(RC, "__list-item_active")]: item.value === value,
@@ -215,18 +258,22 @@ const Dropdown = _ref => {
215
258
  checked: value
216
259
  }) : "");
217
260
  };
261
+
218
262
  const filteredOptionList = filteredOption => {
219
- var _filteredOption$items, _filteredOption$label;
263
+ var _filteredOption$items, _filteredOption$label, _filteredOption$label2;
264
+
220
265
  return ((_filteredOption$items = filteredOption.items) === null || _filteredOption$items === void 0 ? void 0 : _filteredOption$items.length) > 0 ? /*#__PURE__*/_react.default.createElement("div", {
221
- key: (_filteredOption$label = filteredOption.label) === null || _filteredOption$label === void 0 || (_filteredOption$label = _filteredOption$label.toString()) === null || _filteredOption$label === void 0 ? void 0 : _filteredOption$label.replace(/ /g, "_").concat(Date.now()),
266
+ key: (_filteredOption$label = filteredOption.label) === null || _filteredOption$label === void 0 ? void 0 : (_filteredOption$label2 = _filteredOption$label.toString()) === null || _filteredOption$label2 === void 0 ? void 0 : _filteredOption$label2.replace(/ /g, "_").concat(Date.now()),
222
267
  className: (0, _classnames.default)("".concat(RC, "-group"), filteredOption.className)
223
268
  }, /*#__PURE__*/_react.default.createElement("div", {
224
269
  className: "".concat(RC, "-group__name")
225
270
  }, filteredOption.label), filteredOption.items.map((el, index) => getMarkupForElement(el, index, el === null || el === void 0 ? void 0 : el.testId))) : null;
226
271
  };
272
+
227
273
  const selectedLabel = ((_options$find = options.find(el => el.value === value)) === null || _options$find === void 0 ? void 0 : _options$find.label) || options.reduce((acc, item) => {
228
- var _item$items5;
229
- return acc || ((_item$items5 = item.items) === null || _item$items5 === void 0 || (_item$items5 = _item$items5.find(el => el.value === value)) === null || _item$items5 === void 0 ? void 0 : _item$items5.label);
274
+ var _item$items5, _item$items5$find;
275
+
276
+ return acc || ((_item$items5 = item.items) === null || _item$items5 === void 0 ? void 0 : (_item$items5$find = _item$items5.find(el => el.value === value)) === null || _item$items5$find === void 0 ? void 0 : _item$items5$find.label);
230
277
  }, null);
231
278
  const doScrollCallback = (0, _react.useCallback)(e => {
232
279
  const {
@@ -234,53 +281,68 @@ const Dropdown = _ref => {
234
281
  isWithAnyScrolling,
235
282
  scrollingInaccuracy = 0
236
283
  } = scrollReactionObj || {};
284
+
237
285
  if (callback && typeof callback === "function") {
238
286
  if (isWithAnyScrolling) callback(e);else if (Math.round(e.target.clientHeight + e.target.scrollTop + scrollingInaccuracy) >= e.target.scrollHeight) callback(e);
239
287
  }
240
288
  }, [filteredOptions]);
289
+
241
290
  const getParentNode = () => {
242
291
  var _ref2, _document$querySelect;
292
+
243
293
  if (isDoNotPullOutListOfMainContainer) return dropdownRef.current;
244
294
  return (_ref2 = (_document$querySelect = document.querySelector("div#root")) !== null && _document$querySelect !== void 0 ? _document$querySelect : document.querySelector("div#app")) !== null && _ref2 !== void 0 ? _ref2 : document.querySelector("div#storybook-root");
245
295
  };
296
+
246
297
  const initListContainer = () => {
247
298
  const dropdownList = document.createElement("div");
248
299
  dropdownList.setAttribute("id", dropdownId);
249
300
  dropdownList.classList.add("dropdown__container");
301
+
250
302
  if (isMobile) {
251
303
  dropdownList.addEventListener("click", e => {
252
304
  if (e.target.id === dropdownId) setIsOpen(false);
253
305
  });
254
306
  }
307
+
255
308
  try {
256
309
  var _getListContainer2;
257
- (_getListContainer2 = getListContainer()) === null || _getListContainer2 === void 0 || _getListContainer2.remove();
310
+
311
+ (_getListContainer2 = getListContainer()) === null || _getListContainer2 === void 0 ? void 0 : _getListContainer2.remove();
258
312
  } finally {
259
313
  if (isMobile) {
260
314
  var _getParentNode;
315
+
261
316
  try {
262
317
  var _document$getElementB;
263
- (_document$getElementB = document.getElementById("mlw-".concat(dropdownId))) === null || _document$getElementB === void 0 || _document$getElementB.remove();
318
+
319
+ (_document$getElementB = document.getElementById("mlw-".concat(dropdownId))) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.remove();
264
320
  } catch (e) {}
321
+
265
322
  const dropdownMobileListWrapper = document.createElement("div");
266
323
  dropdownMobileListWrapper.classList.add("dropdown-mobile");
267
324
  dropdownMobileListWrapper.setAttribute("id", "mlw-".concat(dropdownId));
268
- dropdownMobileListWrapper === null || dropdownMobileListWrapper === void 0 || dropdownMobileListWrapper.append(dropdownList);
269
- (_getParentNode = getParentNode()) === null || _getParentNode === void 0 || _getParentNode.append(dropdownMobileListWrapper);
325
+ dropdownMobileListWrapper === null || dropdownMobileListWrapper === void 0 ? void 0 : dropdownMobileListWrapper.append(dropdownList);
326
+ (_getParentNode = getParentNode()) === null || _getParentNode === void 0 ? void 0 : _getParentNode.append(dropdownMobileListWrapper);
270
327
  } else {
271
328
  var _getParentNode2;
272
- (_getParentNode2 = getParentNode()) === null || _getParentNode2 === void 0 || _getParentNode2.append(dropdownList);
329
+
330
+ (_getParentNode2 = getParentNode()) === null || _getParentNode2 === void 0 ? void 0 : _getParentNode2.append(dropdownList);
273
331
  }
274
332
  }
275
333
  };
334
+
276
335
  const getListContainer = () => {
277
336
  return document.getElementById(dropdownId);
278
337
  };
338
+
279
339
  const getListContainerWrapper = () => {
280
340
  return document.getElementById("mlw-".concat(dropdownId));
281
341
  };
342
+
282
343
  const setListContainerStyles = () => {
283
- var _dropdownRef$current$, _dropdownListWrapperR, _getComputedStyle$mar, _getComputedStyle, _getComputedStyle$max, _getComputedStyle2, _sw$getBoundingClient, _dropdownListWrapperR2, _lh$getBoundingClient;
344
+ var _dropdownRef$current$, _dropdownListWrapperR, _getComputedStyle$mar, _getComputedStyle, _getComputedStyle$mar2, _getComputedStyle$max, _getComputedStyle2, _getComputedStyle2$ma, _sw$getBoundingClient, _dropdownListWrapperR2, _dropdownListWrapperR3, _lh$getBoundingClient;
345
+
284
346
  const lc = getListContainer();
285
347
  if (!lc || !isOpen) return false;
286
348
  const windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
@@ -291,27 +353,30 @@ const Dropdown = _ref => {
291
353
  top
292
354
  } = (_dropdownRef$current$ = dropdownRef === null || dropdownRef === void 0 ? void 0 : dropdownRef.current.getBoundingClientRect()) !== null && _dropdownRef$current$ !== void 0 ? _dropdownRef$current$ : {};
293
355
  const sw = lc.getElementsByClassName("dropdown__list")[0];
294
- const lh = dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 || (_dropdownListWrapperR = dropdownListWrapperRef.current) === null || _dropdownListWrapperR === void 0 ? void 0 : _dropdownListWrapperR.getElementsByClassName("dropdown__list-header")[0];
295
- const margin = parseInt((_getComputedStyle$mar = (_getComputedStyle = getComputedStyle(sw)) === null || _getComputedStyle === void 0 || (_getComputedStyle = _getComputedStyle.marginTop) === null || _getComputedStyle === void 0 ? void 0 : _getComputedStyle.replace("px", "")) !== null && _getComputedStyle$mar !== void 0 ? _getComputedStyle$mar : 0, 10);
296
- const maxHeight = initListHeight !== null && initListHeight !== void 0 ? initListHeight : parseInt((_getComputedStyle$max = (_getComputedStyle2 = getComputedStyle(sw)) === null || _getComputedStyle2 === void 0 || (_getComputedStyle2 = _getComputedStyle2.maxHeight) === null || _getComputedStyle2 === void 0 ? void 0 : _getComputedStyle2.replace("px", "")) !== null && _getComputedStyle$max !== void 0 ? _getComputedStyle$max : 0, 10);
356
+ const lh = dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 ? void 0 : (_dropdownListWrapperR = dropdownListWrapperRef.current) === null || _dropdownListWrapperR === void 0 ? void 0 : _dropdownListWrapperR.getElementsByClassName("dropdown__list-header")[0];
357
+ const margin = parseInt((_getComputedStyle$mar = (_getComputedStyle = getComputedStyle(sw)) === null || _getComputedStyle === void 0 ? void 0 : (_getComputedStyle$mar2 = _getComputedStyle.marginTop) === null || _getComputedStyle$mar2 === void 0 ? void 0 : _getComputedStyle$mar2.replace("px", "")) !== null && _getComputedStyle$mar !== void 0 ? _getComputedStyle$mar : 0, 10);
358
+ const maxHeight = initListHeight !== null && initListHeight !== void 0 ? initListHeight : parseInt((_getComputedStyle$max = (_getComputedStyle2 = getComputedStyle(sw)) === null || _getComputedStyle2 === void 0 ? void 0 : (_getComputedStyle2$ma = _getComputedStyle2.maxHeight) === null || _getComputedStyle2$ma === void 0 ? void 0 : _getComputedStyle2$ma.replace("px", "")) !== null && _getComputedStyle$max !== void 0 ? _getComputedStyle$max : 0, 10);
297
359
  if (initListHeight === null) setInitListHeight(maxHeight);
298
360
  const toTop = top - margin;
299
361
  const toBottom = windowHeight - top - height - margin * 2;
300
- const swHeight = sw === null || sw === void 0 || (_sw$getBoundingClient = sw.getBoundingClientRect()) === null || _sw$getBoundingClient === void 0 ? void 0 : _sw$getBoundingClient.height;
301
- const maxSwHeight = isMobile ? (dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 || (_dropdownListWrapperR2 = dropdownListWrapperRef.current) === null || _dropdownListWrapperR2 === void 0 || (_dropdownListWrapperR2 = _dropdownListWrapperR2.getBoundingClientRect()) === null || _dropdownListWrapperR2 === void 0 ? void 0 : _dropdownListWrapperR2.height) - (lh === null || lh === void 0 || (_lh$getBoundingClient = lh.getBoundingClientRect()) === null || _lh$getBoundingClient === void 0 ? void 0 : _lh$getBoundingClient.height) : toTop >= maxHeight || toBottom >= maxHeight ? maxHeight - 3 * margin : toTop > toBottom ? toTop - 3 * margin : toBottom - 4 * margin;
362
+ const swHeight = sw === null || sw === void 0 ? void 0 : (_sw$getBoundingClient = sw.getBoundingClientRect()) === null || _sw$getBoundingClient === void 0 ? void 0 : _sw$getBoundingClient.height;
363
+ const maxSwHeight = isMobile ? (dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 ? void 0 : (_dropdownListWrapperR2 = dropdownListWrapperRef.current) === null || _dropdownListWrapperR2 === void 0 ? void 0 : (_dropdownListWrapperR3 = _dropdownListWrapperR2.getBoundingClientRect()) === null || _dropdownListWrapperR3 === void 0 ? void 0 : _dropdownListWrapperR3.height) - (lh === null || lh === void 0 ? void 0 : (_lh$getBoundingClient = lh.getBoundingClientRect()) === null || _lh$getBoundingClient === void 0 ? void 0 : _lh$getBoundingClient.height) : toTop >= maxHeight || toBottom >= maxHeight ? maxHeight - 3 * margin : toTop > toBottom ? toTop - 3 * margin : toBottom - 4 * margin;
302
364
  const listPos = toTop < toBottom || toBottom >= swHeight ? "bottom" : "top";
303
365
  lc.style.minWidth = "".concat(width, "px");
304
366
  lc.style.left = "".concat(left, "px");
305
367
  lc.style.top = "".concat(listPos === "bottom" ? top + height : top - swHeight - 3 * margin, "px");
306
368
  sw.style.maxHeight = "".concat(maxSwHeight, "px");
307
369
  };
370
+
308
371
  const renderListContainer = () => {
309
372
  const lc = getListContainer();
310
373
  if (!lc) return null;
311
374
  return /*#__PURE__*/(0, _reactDom.createPortal)(getListMarkUp(), lc);
312
375
  };
376
+
313
377
  const getSortedOptions = data => {
314
378
  let newData = [...data];
379
+
315
380
  if (sortAlphabetical) {
316
381
  const openModalOption = newData.filter(_ref3 => {
317
382
  let {
@@ -335,13 +400,17 @@ const Dropdown = _ref => {
335
400
  if (item !== null && item !== void 0 && item.items) {
336
401
  item.items = [...item.items].sort(_utils.compareAlphabetical);
337
402
  }
403
+
338
404
  return item;
339
405
  });
340
406
  }
407
+
341
408
  return newData;
342
409
  };
410
+
343
411
  const getListMarkUp = () => {
344
412
  var _getSortedOptions;
413
+
345
414
  return /*#__PURE__*/_react.default.createElement("div", {
346
415
  className: (0, _classnames.default)("".concat(RC, "__container-wrapper")),
347
416
  ref: wrapperRef,
@@ -391,17 +460,19 @@ const Dropdown = _ref => {
391
460
  ref: dropdownListRef
392
461
  }, (_getSortedOptions = getSortedOptions(depend.options)) === null || _getSortedOptions === void 0 ? void 0 : _getSortedOptions.map(option => {
393
462
  var _option$items, _option$label;
463
+
394
464
  if (option !== null && option !== void 0 && (_option$items = option.items) !== null && _option$items !== void 0 && _option$items.length) {
395
465
  if (!isSearchable || !isSearchChanged) {
396
466
  return filteredOptionList(option);
397
467
  } else {
398
468
  var _option$items2;
469
+
399
470
  const items = (_option$items2 = option.items) === null || _option$items2 === void 0 ? void 0 : _option$items2.slice().filter(el => {
400
471
  var _el$label2;
401
- return (el === null || el === void 0 || (_el$label2 = el.label) === null || _el$label2 === void 0 ? void 0 : _el$label2.toLowerCase().includes((searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase()) || "")) || !(el !== null && el !== void 0 && el.value) || (el === null || el === void 0 ? void 0 : el.value) === "";
472
+
473
+ return (el === null || el === void 0 ? void 0 : (_el$label2 = el.label) === null || _el$label2 === void 0 ? void 0 : _el$label2.toLowerCase().includes((searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase()) || "")) || !(el !== null && el !== void 0 && el.value) || (el === null || el === void 0 ? void 0 : el.value) === "";
402
474
  });
403
- if (items !== null && items !== void 0 && items.length) return filteredOptionList({
404
- ...option,
475
+ if (items !== null && items !== void 0 && items.length) return filteredOptionList({ ...option,
405
476
  items
406
477
  });
407
478
  return null;
@@ -413,12 +484,14 @@ const Dropdown = _ref => {
413
484
  className: "".concat(RC, "__list-item ").concat(RC, "__list-item--no-options")
414
485
  }, noOptionsText), disabled && isOpen && /*#__PURE__*/_react.default.createElement(_DropdownLoader.default, null))));
415
486
  };
487
+
416
488
  const toggleList = e => {
417
- e === null || e === void 0 || e.stopPropagation();
489
+ e === null || e === void 0 ? void 0 : e.stopPropagation();
418
490
  setIsOpen(isOpen => {
419
491
  return !isOpen;
420
492
  });
421
493
  };
494
+
422
495
  const closeList = isOpen ? handleClickOutside : () => {};
423
496
  (0, _react.useEffect)(() => {
424
497
  if (!isDoNotPullOutListOfMainContainer || dropdownRef.current) {
@@ -427,6 +500,7 @@ const Dropdown = _ref => {
427
500
  }, [isDoNotPullOutListOfMainContainer, dropdownRef.current]);
428
501
  (0, _react.useLayoutEffect)(() => {
429
502
  var _getListContainer3;
503
+
430
504
  if (!isMobile) {
431
505
  window.addEventListener("resize", setListContainerStyles);
432
506
  window.addEventListener("mousewheel", closeList);
@@ -438,19 +512,21 @@ const Dropdown = _ref => {
438
512
  window.removeEventListener("scroll", closeList);
439
513
  window.removeEventListener("touchmove", closeList);
440
514
  }
441
- (_getListContainer3 = getListContainer()) === null || _getListContainer3 === void 0 || _getListContainer3.addEventListener("click", closeList);
515
+
516
+ (_getListContainer3 = getListContainer()) === null || _getListContainer3 === void 0 ? void 0 : _getListContainer3.addEventListener("click", closeList);
442
517
  return () => {
443
518
  var _getListContainer4;
519
+
444
520
  window.removeEventListener("resize", setListContainerStyles);
445
521
  window.removeEventListener("mousewheel", closeList);
446
522
  window.removeEventListener("scroll", closeList);
447
523
  window.removeEventListener("touchmove", closeList);
448
- (_getListContainer4 = getListContainer()) === null || _getListContainer4 === void 0 || _getListContainer4.removeEventListener("click", closeList);
524
+ (_getListContainer4 = getListContainer()) === null || _getListContainer4 === void 0 ? void 0 : _getListContainer4.removeEventListener("click", closeList);
449
525
  };
450
526
  }, [getListContainer]);
451
527
  (0, _react.useLayoutEffect)(() => {
452
528
  setListContainerStyles();
453
- }, [isOpen, searchValue, isMobile, options, dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 || (_dropdownListWrapperR3 = dropdownListWrapperRef.current) === null || _dropdownListWrapperR3 === void 0 || (_dropdownListWrapperR3 = _dropdownListWrapperR3.getBoundingClientRect()) === null || _dropdownListWrapperR3 === void 0 ? void 0 : _dropdownListWrapperR3.height]);
529
+ }, [isOpen, searchValue, isMobile, options, dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 ? void 0 : (_dropdownListWrapperR4 = dropdownListWrapperRef.current) === null || _dropdownListWrapperR4 === void 0 ? void 0 : (_dropdownListWrapperR5 = _dropdownListWrapperR4.getBoundingClientRect()) === null || _dropdownListWrapperR5 === void 0 ? void 0 : _dropdownListWrapperR5.height]);
454
530
  (0, _react.useEffect)(() => {
455
531
  document.addEventListener("click", handleClickOutside, true);
456
532
  return () => document.removeEventListener("click", handleClickOutside, true);
@@ -459,9 +535,11 @@ const Dropdown = _ref => {
459
535
  if (!isOpen) {
460
536
  setIsSearchChanged(false);
461
537
  }
538
+
462
539
  if (scrollReactionObj && typeof scrollReactionObj === "object" && isOpen && dropdownListRef && dropdownListRef.current) {
463
540
  dropdownListRef.current.addEventListener("scroll", doScrollCallback);
464
541
  }
542
+
465
543
  return () => {
466
544
  if (scrollReactionObj && typeof scrollReactionObj === "object") removeEventListener("scroll", doScrollCallback);
467
545
  };
@@ -471,20 +549,26 @@ const Dropdown = _ref => {
471
549
  setSearchValue(selectedLabel);
472
550
  setTimeout(() => searchInputRef.current.select(), 1);
473
551
  }
552
+
474
553
  if (!isSearchInputFocused && !isOpen) {
475
554
  setSearchValue(null);
476
555
  }
477
556
  }, [isSearchInputFocused]);
478
557
  (0, _react.useEffect)(() => {
479
558
  var _searchInputRef$curre;
480
- if (isOpen && !isSearchInputFocused && searchInputRef !== null && searchInputRef !== void 0 && searchInputRef.current && !isMobile) searchInputRef === null || searchInputRef === void 0 || (_searchInputRef$curre = searchInputRef.current) === null || _searchInputRef$curre === void 0 || _searchInputRef$curre.focus();
559
+
560
+ if (isOpen && !isSearchInputFocused && searchInputRef !== null && searchInputRef !== void 0 && searchInputRef.current && !isMobile) searchInputRef === null || searchInputRef === void 0 ? void 0 : (_searchInputRef$curre = searchInputRef.current) === null || _searchInputRef$curre === void 0 ? void 0 : _searchInputRef$curre.focus();
561
+
481
562
  if (isOpen) {
482
563
  var _getListContainer5;
483
- (_getListContainer5 = getListContainer()) === null || _getListContainer5 === void 0 || _getListContainer5.classList.add("dropdown__container--opened");
564
+
565
+ (_getListContainer5 = getListContainer()) === null || _getListContainer5 === void 0 ? void 0 : _getListContainer5.classList.add("dropdown__container--opened");
484
566
  } else {
485
567
  var _getListContainer6;
486
- (_getListContainer6 = getListContainer()) === null || _getListContainer6 === void 0 || _getListContainer6.classList.remove("dropdown__container--opened");
568
+
569
+ (_getListContainer6 = getListContainer()) === null || _getListContainer6 === void 0 ? void 0 : _getListContainer6.classList.remove("dropdown__container--opened");
487
570
  }
571
+
488
572
  if (!isOpen && isMobile) {
489
573
  setSearchValue(null);
490
574
  }
@@ -492,34 +576,41 @@ const Dropdown = _ref => {
492
576
  (0, _react.useEffect)(() => {
493
577
  if (isOpen && isMobile && dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current && !searchValue) {
494
578
  var _dropdownListRef$curr, _dropdownListRef$curr2, _dropdownListRef$curr3, _dropdownListRef$curr4;
495
- setIsScrollableList((dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr = dropdownListRef.current) === null || _dropdownListRef$curr === void 0 ? void 0 : _dropdownListRef$curr.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr2 = dropdownListRef.current) === null || _dropdownListRef$curr2 === void 0 ? void 0 : _dropdownListRef$curr2.clientHeight));
496
- setIsFixedMaxHeight(isScrollableList || (dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr3 = dropdownListRef.current) === null || _dropdownListRef$curr3 === void 0 ? void 0 : _dropdownListRef$curr3.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr4 = dropdownListRef.current) === null || _dropdownListRef$curr4 === void 0 ? void 0 : _dropdownListRef$curr4.clientHeight));
579
+
580
+ setIsScrollableList((dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr = dropdownListRef.current) === null || _dropdownListRef$curr === void 0 ? void 0 : _dropdownListRef$curr.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr2 = dropdownListRef.current) === null || _dropdownListRef$curr2 === void 0 ? void 0 : _dropdownListRef$curr2.clientHeight));
581
+ setIsFixedMaxHeight(isScrollableList || (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr3 = dropdownListRef.current) === null || _dropdownListRef$curr3 === void 0 ? void 0 : _dropdownListRef$curr3.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr4 = dropdownListRef.current) === null || _dropdownListRef$curr4 === void 0 ? void 0 : _dropdownListRef$curr4.clientHeight));
497
582
  }
498
- }, [isOpen, isMobile, isScrollableList, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current, dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr5 = dropdownListRef.current) === null || _dropdownListRef$curr5 === void 0 ? void 0 : _dropdownListRef$curr5.scrollHeight, dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr6 = dropdownListRef.current) === null || _dropdownListRef$curr6 === void 0 ? void 0 : _dropdownListRef$curr6.clientHeight]);
583
+ }, [isOpen, isMobile, isScrollableList, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr5 = dropdownListRef.current) === null || _dropdownListRef$curr5 === void 0 ? void 0 : _dropdownListRef$curr5.scrollHeight, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr6 = dropdownListRef.current) === null || _dropdownListRef$curr6 === void 0 ? void 0 : _dropdownListRef$curr6.clientHeight]);
499
584
  (0, _react.useEffect)(() => {
500
585
  const setScrollTopValue = e => {
501
586
  setScrollTop(parseInt(e.target.scrollTop, 10));
502
587
  };
588
+
503
589
  if (isOpen && isMobile && dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
504
590
  var _dropdownListRef$curr7;
505
- dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr7 = dropdownListRef.current) === null || _dropdownListRef$curr7 === void 0 || _dropdownListRef$curr7.addEventListener("scroll", setScrollTopValue);
591
+
592
+ dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr7 = dropdownListRef.current) === null || _dropdownListRef$curr7 === void 0 ? void 0 : _dropdownListRef$curr7.addEventListener("scroll", setScrollTopValue);
506
593
  }
594
+
507
595
  return () => {
508
596
  var _dropdownListRef$curr8;
509
- dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr8 = dropdownListRef.current) === null || _dropdownListRef$curr8 === void 0 || _dropdownListRef$curr8.removeEventListener("scroll", setScrollTopValue);
597
+
598
+ dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr8 = dropdownListRef.current) === null || _dropdownListRef$curr8 === void 0 ? void 0 : _dropdownListRef$curr8.removeEventListener("scroll", setScrollTopValue);
510
599
  };
511
600
  }, [isOpen, isMobile, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current]);
512
601
  (0, _react.useEffect)(() => {
513
602
  if (dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
514
603
  var _dropdownListRef$curr9, _dropdownListRef$curr10;
515
- setScrollHeight(parseInt((dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr9 = dropdownListRef.current) === null || _dropdownListRef$curr9 === void 0 ? void 0 : _dropdownListRef$curr9.scrollHeight) - (dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr10 = dropdownListRef.current) === null || _dropdownListRef$curr10 === void 0 ? void 0 : _dropdownListRef$curr10.clientHeight), 10));
604
+
605
+ setScrollHeight(parseInt((dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr9 = dropdownListRef.current) === null || _dropdownListRef$curr9 === void 0 ? void 0 : _dropdownListRef$curr9.scrollHeight) - (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr10 = dropdownListRef.current) === null || _dropdownListRef$curr10 === void 0 ? void 0 : _dropdownListRef$curr10.clientHeight), 10));
516
606
  }
517
607
  }, [scrollTop, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current]);
518
608
  (0, _react.useEffect)(() => {
519
609
  return () => {
520
610
  var _getListContainer7, _getListContainerWrap;
521
- (_getListContainer7 = getListContainer()) === null || _getListContainer7 === void 0 || _getListContainer7.remove();
522
- (_getListContainerWrap = getListContainerWrapper()) === null || _getListContainerWrap === void 0 || _getListContainerWrap.remove();
611
+
612
+ (_getListContainer7 = getListContainer()) === null || _getListContainer7 === void 0 ? void 0 : _getListContainer7.remove();
613
+ (_getListContainerWrap = getListContainerWrapper()) === null || _getListContainerWrap === void 0 ? void 0 : _getListContainerWrap.remove();
523
614
  };
524
615
  }, []);
525
616
  const postfixText = selectedLabel && ((_filteredOptions$find = filteredOptions.find(option => option.value === value)) === null || _filteredOptions$find === void 0 ? void 0 : _filteredOptions$find.postfix) || null;
@@ -537,7 +628,7 @@ const Dropdown = _ref => {
537
628
  onClick: toggleList,
538
629
  onKeyDown: onKeyDown,
539
630
  onKeyUp: onKeyUp,
540
- tabIndex: tabIndex === null || tabIndex === void 0 || (_tabIndex$toString = tabIndex.toString) === null || _tabIndex$toString === void 0 ? void 0 : _tabIndex$toString.call(tabIndex)
631
+ tabIndex: tabIndex === null || tabIndex === void 0 ? void 0 : (_tabIndex$toString = tabIndex.toString) === null || _tabIndex$toString === void 0 ? void 0 : _tabIndex$toString.call(tabIndex)
541
632
  }, customTrigger || /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isSearchable && !isMobile ? /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({
542
633
  ref: searchInputRef,
543
634
  className: "".concat(RC, "__input"),
@@ -567,4 +658,6 @@ const Dropdown = _ref => {
567
658
  className: "mobile-icon"
568
659
  }) : isOpen ? /*#__PURE__*/_react.default.createElement(_reactFeather.ChevronUp, null) : /*#__PURE__*/_react.default.createElement(_reactFeather.ChevronDown, null)))), isOpen && renderListContainer());
569
660
  };
570
- var _default = exports.default = Dropdown;
661
+
662
+ var _default = Dropdown;
663
+ exports.default = _default;
@@ -1,12 +1,16 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+
8
10
  var _react = _interopRequireDefault(require("react"));
11
+
9
12
  require("./DropdownLoader.scss");
13
+
10
14
  const DropdownLoader = function (_ref) {
11
15
  let {
12
16
  variant
@@ -17,4 +21,6 @@ const DropdownLoader = function (_ref) {
17
21
  className: "lds-ring".concat(variant === "little" ? " lds-ring_little" : "")
18
22
  }, /*#__PURE__*/_react.default.createElement("div", null), /*#__PURE__*/_react.default.createElement("div", null), /*#__PURE__*/_react.default.createElement("div", null), /*#__PURE__*/_react.default.createElement("div", null)));
19
23
  };
20
- var _default = exports.default = DropdownLoader;
24
+
25
+ var _default = DropdownLoader;
26
+ exports.default = _default;