intelicoreact 1.6.24 → 1.6.26

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 (277) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +1 -98
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +1 -48
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +1 -249
  4. package/dist/Atomic/FormElements/Calendar/Calendar.props.js +1 -4
  5. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +1 -65
  6. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +1 -52
  7. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +1 -424
  8. package/dist/Atomic/FormElements/Datepicker/Datepicker.props.js +1 -4
  9. package/dist/Atomic/FormElements/Datepicker/components/DatepickerCalendar.js +1 -173
  10. package/dist/Atomic/FormElements/Datepicker/components/DatepickerCalendar.props.js +1 -4
  11. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +1 -735
  12. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +1 -20
  13. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +1 -529
  14. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +1 -94
  15. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +1 -105
  16. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +1 -67
  17. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +1 -247
  18. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +1 -160
  19. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +1 -193
  20. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +1 -135
  21. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.js +1 -116
  22. package/dist/Atomic/FormElements/Input/Input.js +1 -467
  23. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +1 -161
  24. package/dist/Atomic/FormElements/InputColor/InputColor.js +1 -64
  25. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +1 -200
  26. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +1 -354
  27. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +1 -71
  28. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.d.ts +2 -0
  29. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +1 -693
  30. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js.map +1 -0
  31. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +1 -254
  32. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +1 -32
  33. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +1 -200
  34. package/dist/Atomic/FormElements/InputLink/InputLink.js +1 -99
  35. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +1 -37
  36. package/dist/Atomic/FormElements/InputMask/InputMask.js +1 -1214
  37. package/dist/Atomic/FormElements/InputMask/config.js +1 -15
  38. package/dist/Atomic/FormElements/InputMask/functions.js +1 -58
  39. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +1 -674
  40. package/dist/Atomic/FormElements/InputMask2/config.js +1 -15
  41. package/dist/Atomic/FormElements/InputMask2/functions.js +1 -58
  42. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +1 -766
  43. package/dist/Atomic/FormElements/InputMask3/config.js +1 -15
  44. package/dist/Atomic/FormElements/InputMask3/functions.js +1 -58
  45. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +1 -114
  46. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +1 -140
  47. package/dist/Atomic/FormElements/Label/Label.js +1 -87
  48. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +1 -506
  49. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +1 -45
  50. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +1 -331
  51. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +1 -66
  52. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +1 -80
  53. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +1 -57
  54. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +1 -54
  55. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +1 -183
  56. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +1 -222
  57. package/dist/Atomic/FormElements/RangeList/RangeList.js +1 -175
  58. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +1 -43
  59. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +1 -443
  60. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +1 -858
  61. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +1 -39
  62. package/dist/Atomic/FormElements/Switcher/Switcher.js +1 -59
  63. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +1 -50
  64. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +1 -44
  65. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +1 -100
  66. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +1 -52
  67. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +1 -64
  68. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +1 -170
  69. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +1 -202
  70. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +1 -67
  71. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +1 -115
  72. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +1 -1110
  73. package/dist/Atomic/FormElements/Text/Text.js +1 -125
  74. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +1 -49
  75. package/dist/Atomic/FormElements/Textarea/Textarea.js +1 -80
  76. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +1 -176
  77. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +1 -62
  78. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +1 -119
  79. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +1 -188
  80. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +1 -83
  81. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +1 -82
  82. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +1 -101
  83. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +1 -29
  84. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +1 -113
  85. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +1 -30
  86. package/dist/Atomic/Layout/Header/Header.js +1 -85
  87. package/dist/Atomic/Layout/Spinner/Spinner.js +1 -44
  88. package/dist/Atomic/UI/Accordion/Accordion.js +1 -108
  89. package/dist/Atomic/UI/Accordion/AccordionItem.js +1 -176
  90. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +1 -238
  91. package/dist/Atomic/UI/AccordionText/AccordionText.js +1 -69
  92. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +1 -207
  93. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +1 -56
  94. package/dist/Atomic/UI/Alert/Alert.js +1 -72
  95. package/dist/Atomic/UI/Arrow/Arrow.js +1 -132
  96. package/dist/Atomic/UI/Box/Box.js +1 -52
  97. package/dist/Atomic/UI/Button/Button.js +1 -47
  98. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +1 -72
  99. package/dist/Atomic/UI/Chart/Chart.js +1 -172
  100. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +1 -95
  101. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +1 -80
  102. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +1 -188
  103. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +1 -335
  104. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +1 -43
  105. package/dist/Atomic/UI/Chart/partial/utils.js +1 -60
  106. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +1 -109
  107. package/dist/Atomic/UI/DateTime/DateTime.js +1 -57
  108. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +1 -44
  109. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +1 -15
  110. package/dist/Atomic/UI/DoubleString/DoubleString.d.ts +19 -0
  111. package/dist/Atomic/UI/DoubleString/DoubleString.js +1 -102
  112. package/dist/Atomic/UI/DoubleString/DoubleString.js.map +1 -0
  113. package/dist/Atomic/UI/DoubleString/DoubleString.scss +8 -1
  114. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +1 -70
  115. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +1 -221
  116. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +1 -106
  117. package/dist/Atomic/UI/Hint/Hint.js +1 -256
  118. package/dist/Atomic/UI/Hint/partials/_utils.js +1 -64
  119. package/dist/Atomic/UI/Modal/Modal.js +1 -179
  120. package/dist/Atomic/UI/Modal/ModalHOC.js +1 -97
  121. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +1 -71
  122. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +1 -110
  123. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +1 -192
  124. package/dist/Atomic/UI/MonoAccordion/MonoAccordion._test.js +1 -75
  125. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +1 -80
  126. package/dist/Atomic/UI/NavLine/NavLine.js +1 -317
  127. package/dist/Atomic/UI/PageTitle/PageTitle.js +1 -77
  128. package/dist/Atomic/UI/PieChart/PieChart.js +1 -42
  129. package/dist/Atomic/UI/Price/Price.js +1 -31
  130. package/dist/Atomic/UI/PriceRange/PriceRange.js +1 -44
  131. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +1 -98
  132. package/dist/Atomic/UI/Status/Status.js +1 -67
  133. package/dist/Atomic/UI/Table/Partials/TdCell.js +1 -87
  134. package/dist/Atomic/UI/Table/Partials/TdHeader.js +1 -38
  135. package/dist/Atomic/UI/Table/Partials/TdRow.js +1 -99
  136. package/dist/Atomic/UI/Table/Partials/TdTitle.js +1 -52
  137. package/dist/Atomic/UI/Table/Table.js +1 -63
  138. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +1 -80
  139. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +1 -28
  140. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +1 -13
  141. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +1 -53
  142. package/dist/Atomic/UI/Tag/Tag.js +1 -167
  143. package/dist/Atomic/UI/TagList/TagList.js +1 -251
  144. package/dist/Atomic/UI/UserBox/UserBox.js +1 -86
  145. package/dist/Atomic/UI/WizardStepper/constructor.js +1 -84
  146. package/dist/Atomic/UI/WizardStepper/index.js +1 -3
  147. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +1 -37
  148. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +1 -3
  149. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +1 -61
  150. package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +1 -3
  151. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +1 -39
  152. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +1 -3
  153. package/dist/Atomic/UI/WizardStepper/ui/icons.js +1 -49
  154. package/dist/Atomic/UI/WizardStepper/ui/index.js +1 -3
  155. package/dist/Classes/AbortableFetch.js +1 -454
  156. package/dist/Classes/AnimatedHandler.js +1 -47
  157. package/dist/Classes/RESTAPI/index.js +1 -228
  158. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +1 -457
  159. package/dist/Classes/RESTAPI/partials/ApiBase.js +1 -48
  160. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +1 -112
  161. package/dist/Classes/RESTAPI/partials/ApiUtils.js +1 -189
  162. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +1 -252
  163. package/dist/Classes/RESTAPI/partials/Utils.js +1 -92
  164. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +1 -3
  165. package/dist/Classes/RESTAPI/partials/_utils.js +1 -197
  166. package/dist/Constants/index.constants.js +1 -78
  167. package/dist/Functions/Portal.js +1 -22
  168. package/dist/Functions/customEventListener.js +1 -96
  169. package/dist/Functions/dateTime.js +1 -149
  170. package/dist/Functions/fieldValueFormatters.js +1 -405
  171. package/dist/Functions/guards/assertions.js +1 -294
  172. package/dist/Functions/guards/safeValue.js +1 -75
  173. package/dist/Functions/guards/typeGuards.js +1 -373
  174. package/dist/Functions/hooks/useFormFieldsChangesManager.js +1 -95
  175. package/dist/Functions/locale/createTranslator.js +1 -32
  176. package/dist/Functions/operations.js +1 -130
  177. package/dist/Functions/presets/inputMaskPresets.js +1 -170
  178. package/dist/Functions/presets/inputPresets.js +1 -60
  179. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +1 -45
  180. package/dist/Functions/schemas.js +1 -31
  181. package/dist/Functions/useBodyScrollLock.js +1 -17
  182. package/dist/Functions/useClickOutside.js +1 -15
  183. package/dist/Functions/useDebounce.js +1 -17
  184. package/dist/Functions/useFieldFocus.js +1 -84
  185. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +1 -39
  186. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +1 -159
  187. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +1 -78
  188. package/dist/Functions/useFormTools/functions/General.js +1 -134
  189. package/dist/Functions/useFormTools/functions/RenderFields.js +1 -111
  190. package/dist/Functions/useFormTools/functions/usePrevious.js +1 -12
  191. package/dist/Functions/useFormTools/index.js +1 -778
  192. package/dist/Functions/useInputHighlightError.js +1 -67
  193. package/dist/Functions/useIsMobile/useIsMobile.js +1 -33
  194. package/dist/Functions/useKeyPress/useHandleKeyPress.js +1 -52
  195. package/dist/Functions/useKeyPress/useKeyPress.js +1 -52
  196. package/dist/Functions/useLocalStorage.js +1 -34
  197. package/dist/Functions/useLocationParams.js +1 -27
  198. package/dist/Functions/useMediaQuery.js +1 -17
  199. package/dist/Functions/useMetaInfo.js +1 -43
  200. package/dist/Functions/useMouseUpOutside.js +1 -16
  201. package/dist/Functions/useOnlineStatus.js +1 -29
  202. package/dist/Functions/usePasswordChecker.js +1 -110
  203. package/dist/Functions/usePrevious.js +1 -12
  204. package/dist/Functions/useResize.js +1 -31
  205. package/dist/Functions/useScrollTo.js +1 -17
  206. package/dist/Functions/useToggle.js +1 -17
  207. package/dist/Functions/utils.js +1 -522
  208. package/dist/Langs.js +1 -168
  209. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +1 -21
  210. package/dist/Molecular/CustomIcons/components/AlertCircle.js +1 -23
  211. package/dist/Molecular/CustomIcons/components/AppStore.js +1 -29
  212. package/dist/Molecular/CustomIcons/components/Arrow.js +1 -32
  213. package/dist/Molecular/CustomIcons/components/ArrowDown.js +1 -17
  214. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +1 -22
  215. package/dist/Molecular/CustomIcons/components/ArrowRight.js +1 -22
  216. package/dist/Molecular/CustomIcons/components/ArrowUp.js +1 -17
  217. package/dist/Molecular/CustomIcons/components/Bell.js +1 -15
  218. package/dist/Molecular/CustomIcons/components/Button.js +1 -12
  219. package/dist/Molecular/CustomIcons/components/Campaigns.js +1 -16
  220. package/dist/Molecular/CustomIcons/components/Check.js +1 -14
  221. package/dist/Molecular/CustomIcons/components/Check2.js +1 -12
  222. package/dist/Molecular/CustomIcons/components/ChevronDown.js +1 -12
  223. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +1 -11
  224. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +1 -11
  225. package/dist/Molecular/CustomIcons/components/ChevronRight.js +1 -11
  226. package/dist/Molecular/CustomIcons/components/ChevronUp.js +1 -11
  227. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +1 -27
  228. package/dist/Molecular/CustomIcons/components/Close.js +1 -14
  229. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +1 -17
  230. package/dist/Molecular/CustomIcons/components/Delete.js +1 -16
  231. package/dist/Molecular/CustomIcons/components/Edit.js +1 -15
  232. package/dist/Molecular/CustomIcons/components/Email.js +1 -31
  233. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +1 -18
  234. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +1 -35
  235. package/dist/Molecular/CustomIcons/components/Flows.js +1 -15
  236. package/dist/Molecular/CustomIcons/components/Gift.js +1 -25
  237. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +1 -29
  238. package/dist/Molecular/CustomIcons/components/GooglePlay.js +1 -29
  239. package/dist/Molecular/CustomIcons/components/HelpCircle.js +1 -19
  240. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +1 -20
  241. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +1 -19
  242. package/dist/Molecular/CustomIcons/components/Home.js +1 -16
  243. package/dist/Molecular/CustomIcons/components/Home2.js +1 -22
  244. package/dist/Molecular/CustomIcons/components/Key.js +1 -23
  245. package/dist/Molecular/CustomIcons/components/Landers.js +1 -20
  246. package/dist/Molecular/CustomIcons/components/Lock.js +1 -15
  247. package/dist/Molecular/CustomIcons/components/Mail.js +1 -26
  248. package/dist/Molecular/CustomIcons/components/Mastercard.js +1 -73
  249. package/dist/Molecular/CustomIcons/components/Minus.js +1 -25
  250. package/dist/Molecular/CustomIcons/components/Offers.js +1 -16
  251. package/dist/Molecular/CustomIcons/components/Pause.js +1 -28
  252. package/dist/Molecular/CustomIcons/components/PayPal.js +1 -41
  253. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +1 -28
  254. package/dist/Molecular/CustomIcons/components/Phone.js +1 -30
  255. package/dist/Molecular/CustomIcons/components/Play.js +1 -25
  256. package/dist/Molecular/CustomIcons/components/Plus.js +1 -25
  257. package/dist/Molecular/CustomIcons/components/Profile.js +1 -16
  258. package/dist/Molecular/CustomIcons/components/QRCode.js +1 -29
  259. package/dist/Molecular/CustomIcons/components/Rectangle.js +1 -12
  260. package/dist/Molecular/CustomIcons/components/Revert.js +1 -13
  261. package/dist/Molecular/CustomIcons/components/Star.js +1 -14
  262. package/dist/Molecular/CustomIcons/components/Star2.js +1 -16
  263. package/dist/Molecular/CustomIcons/components/TrafficSources.js +1 -14
  264. package/dist/Molecular/CustomIcons/components/Trash.js +1 -15
  265. package/dist/Molecular/CustomIcons/components/TrashRed.js +1 -15
  266. package/dist/Molecular/CustomIcons/components/Triggers.js +1 -15
  267. package/dist/Molecular/CustomIcons/components/User.js +1 -25
  268. package/dist/Molecular/CustomIcons/components/Visa.js +1 -31
  269. package/dist/Molecular/CustomIcons/components/X.js +1 -12
  270. package/dist/Molecular/CustomIcons/index.js +1 -61
  271. package/dist/Molecular/FormElement/FormElement.js +1 -54
  272. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +1 -184
  273. package/dist/Molecular/FormWithDependOn/partials/_utils.js +1 -53
  274. package/dist/Molecular/InputAddress/InputAddress.js +1 -626
  275. package/dist/Molecular/InputPassword/InputPassword.js +1 -48
  276. package/dist/index.js +1 -104
  277. package/package.json +1 -1
@@ -1,20 +1 @@
1
- import React from "react";
2
-
3
- import "./DropdownLoader.scss";
4
-
5
- const DropdownLoader = function ({ variant = '' }) {
6
- return (
7
- <div className="dropdown-loader-box j5">
8
- <div
9
- className={`lds-ring${variant === "little" ? " lds-ring_little" : ""}`}
10
- >
11
- <div />
12
- <div />
13
- <div />
14
- <div />
15
- </div>
16
- </div>
17
- );
18
- };
19
-
20
- export default DropdownLoader;
1
+ import{jsx as r,jsxs as i}from"react/jsx-runtime";import"react";import"./DropdownLoader.scss";export default function(d){var t=d.variant;return r("div",{className:"dropdown-loader-box j5",children:i("div",{className:"lds-ring".concat("little"===(void 0===t?"":t)?" lds-ring_little":""),children:[r("div",{}),r("div",{}),r("div",{}),r("div",{})]})})}
@@ -1,529 +1 @@
1
- /* eslint-disable react-web-api/no-leaked-event-listener */ /* eslint-disable react-web-api/no-leaked-timeout */ /* eslint-disable react-dom/no-dangerously-set-innerhtml */ "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
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 _classnames = /*#__PURE__*/ _interop_require_default(require("classnames"));
13
- const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
14
- const _reactdom = require("react-dom");
15
- const _reactfeather = require("react-feather");
16
- const _fieldValueFormatters = require("../../../Functions/fieldValueFormatters");
17
- const _useDebounce = require("../../../Functions/useDebounce");
18
- const _useIsMobile = /*#__PURE__*/ _interop_require_default(require("../../../Functions/useIsMobile/useIsMobile"));
19
- const _Spinner = /*#__PURE__*/ _interop_require_default(require("../../Layout/Spinner/Spinner"));
20
- const _RadioInput = /*#__PURE__*/ _interop_require_default(require("../RadioInput/RadioInput"));
21
- require("./DropdownLiveSearch.scss");
22
- function _interop_require_default(obj) {
23
- return obj && obj.__esModule ? obj : {
24
- default: obj
25
- };
26
- }
27
- function _getRequireWildcardCache(nodeInterop) {
28
- if (typeof WeakMap !== "function") return null;
29
- var cacheBabelInterop = new WeakMap();
30
- var cacheNodeInterop = new WeakMap();
31
- return (_getRequireWildcardCache = function(nodeInterop) {
32
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
33
- })(nodeInterop);
34
- }
35
- function _interop_require_wildcard(obj, nodeInterop) {
36
- if (!nodeInterop && obj && obj.__esModule) {
37
- return obj;
38
- }
39
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
40
- return {
41
- default: obj
42
- };
43
- }
44
- var cache = _getRequireWildcardCache(nodeInterop);
45
- if (cache && cache.has(obj)) {
46
- return cache.get(obj);
47
- }
48
- var newObj = {
49
- __proto__: null
50
- };
51
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
52
- for(var key in obj){
53
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
54
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
55
- if (desc && (desc.get || desc.set)) {
56
- Object.defineProperty(newObj, key, desc);
57
- } else {
58
- newObj[key] = obj[key];
59
- }
60
- }
61
- }
62
- newObj.default = obj;
63
- if (cache) {
64
- cache.set(obj, newObj);
65
- }
66
- return newObj;
67
- }
68
- const RC = 'dropdown-live-search';
69
- const DropdownLiveSearch = ({ label, value, error, disabled, onChange, placeholder, className, isSearchable, doRequest, isLoading, options, fieldKey, id, isListTop, attributesOfNativeInput, withMobileLogic, tabIndex, isNotValidateASCII = false, noOptionsText = 'No options available', testId = 'dropdown-live-search' })=>{
70
- var _dropdownListRef_current, _dropdownListRef_current1;
71
- const [dropdownId] = (0, _react.useState)(id || fieldKey || Math.random().toString(16).slice(2));
72
- const [isOpen, setIsOpenState] = (0, _react.useState)(false);
73
- const [isValueDeleted, setIsValueDeleted] = (0, _react.useState)(false);
74
- const { isMobile: isMobileProp } = (0, _useIsMobile.default)();
75
- const isMobile = isMobileProp && withMobileLogic && window.screen.width <= 768;
76
- const labelByValue = (0, _react.useMemo)(()=>{
77
- var _options_find;
78
- var _options_find_label;
79
- return (_options_find_label = options === null || options === void 0 ? void 0 : (_options_find = options.find((item)=>item.value === value)) === null || _options_find === void 0 ? void 0 : _options_find.label) !== null && _options_find_label !== void 0 ? _options_find_label : '';
80
- }, [
81
- value,
82
- options
83
- ]);
84
- const [searchValue, setSV] = (0, _react.useState)('');
85
- const [isSearchValueChangedAfterOpen, setIsSearchValueChangedAfterOpen] = (0, _react.useState)(false);
86
- const dropdownLiveSearchRef = (0, _react.useRef)(null);
87
- const dropdownListBoxRef = (0, _react.useRef)(null);
88
- const dropdownListRef = (0, _react.useRef)(null);
89
- const dropdownListHeaderRef = (0, _react.useRef)(null);
90
- const searchInputRef = (0, _react.useRef)(null);
91
- const searchInputModalRef = (0, _react.useRef)(null);
92
- const searchValueRef = (0, _react.useRef)(null);
93
- const wrapperRef = (0, _react.useRef)(null);
94
- const [isFocusedByClick, setIsFocusedByClick] = (0, _react.useState)(false);
95
- const [isScrollableList, setIsScrollableList] = (0, _react.useState)(null);
96
- const [isFixedMaxHeight, setIsFixedMaxHeight] = (0, _react.useState)(false);
97
- const [scrollTop, setScrollTop] = (0, _react.useState)(0);
98
- const [scrollHeight, setScrollHeight] = (0, _react.useState)(1);
99
- const debouncedSearchTerm = (0, _useDebounce.useDebounce)({
100
- searchValue,
101
- delay: 600
102
- });
103
- const doScrollCallback = (0, _react.useCallback)((e)=>{
104
- if (doRequest && typeof doRequest === 'function') {
105
- const target = e === null || e === void 0 ? void 0 : e.target;
106
- if (Math.round(target.clientHeight + target.scrollTop) === target.scrollHeight) {
107
- var _searchValueRef_current;
108
- doRequest((_searchValueRef_current = searchValueRef.current) !== null && _searchValueRef_current !== void 0 ? _searchValueRef_current : '', true);
109
- }
110
- }
111
- }, [
112
- options
113
- ]);
114
- const setSearchValue = (val, isChanged = true)=>{
115
- if (isChanged) setIsSearchValueChangedAfterOpen(true);
116
- setSV(val);
117
- searchValueRef.current = val;
118
- };
119
- const setIsOpen = (v)=>{
120
- setIsOpenState(v);
121
- setSearchValue('', false);
122
- if (!v) setIsSearchValueChangedAfterOpen(false);
123
- };
124
- const getParentNode = ()=>{
125
- var _document_querySelector, _ref;
126
- return (_ref = (_document_querySelector = document.querySelector('div#root')) !== null && _document_querySelector !== void 0 ? _document_querySelector : document.querySelector('div#app')) !== null && _ref !== void 0 ? _ref : document.querySelector('div#storybook-root');
127
- };
128
- const getListContainer = ()=>{
129
- return document.getElementById(dropdownId === null || dropdownId === void 0 ? void 0 : dropdownId.toString());
130
- };
131
- const onWrapperClick = (e)=>{
132
- if (e.target === (wrapperRef === null || wrapperRef === void 0 ? void 0 : wrapperRef.current)) {
133
- e.stopPropagation();
134
- e.preventDefault();
135
- setIsOpen(false);
136
- }
137
- };
138
- const onSearchableInputFocus = (e)=>{
139
- if (!isOpen) {
140
- e.preventDefault();
141
- e.stopPropagation();
142
- }
143
- };
144
- const handleClickOutside = (event)=>{
145
- var _getListContainer;
146
- if (dropdownLiveSearchRef.current && !dropdownLiveSearchRef.current.contains(event.target) && (!getListContainer() || !((_getListContainer = getListContainer()) === null || _getListContainer === void 0 ? void 0 : _getListContainer.contains(event.target)))) {
147
- setIsOpen(false);
148
- }
149
- };
150
- const closeListViaEsc = (e)=>{
151
- if ([
152
- 27
153
- ].includes(e.keyCode)) setIsOpen(false);
154
- };
155
- const closeList = isOpen ? handleClickOutside : ()=>{};
156
- const onInputClick = (e)=>{
157
- if (!isOpen) setIsOpen(true);
158
- if (isMobile && withMobileLogic) {
159
- var _e_target;
160
- e.preventDefault();
161
- e.stopPropagation();
162
- if (e.target) (_e_target = e.target) === null || _e_target === void 0 ? void 0 : _e_target.blur();
163
- } else {
164
- var _e_target1;
165
- if (e.target) (_e_target1 = e.target) === null || _e_target1 === void 0 ? void 0 : _e_target1.select();
166
- }
167
- };
168
- const onInputChange = (e)=>{
169
- var _e_target;
170
- let inputValue = (_e_target = e.target) === null || _e_target === void 0 ? void 0 : _e_target.value;
171
- if (!isNotValidateASCII) inputValue = (0, _fieldValueFormatters.formatToOnlyASCIICodeText)(inputValue);
172
- setSearchValue(inputValue);
173
- if ((searchValue || !isSearchValueChangedAfterOpen) && !e.target.value) {
174
- onChange === null || onChange === void 0 ? void 0 : onChange('');
175
- setSearchValue('');
176
- setIsValueDeleted(true);
177
- } else {
178
- setIsValueDeleted(false);
179
- }
180
- };
181
- const highlightedText = (text, postfix)=>{
182
- if (!isSearchable) {
183
- return text;
184
- } else {
185
- const preparedSearchValue = isSearchValueChangedAfterOpen || isMobile && withMobileLogic ? searchValue : labelByValue;
186
- const prepare = (text)=>text === null || text === void 0 ? void 0 : text.replace(/[|\\{}()[\]^$+*?.]/g, '\\$&');
187
- text = text.replace(/["&<>]/g, (a)=>{
188
- var _a;
189
- return (_a = ({
190
- '"': '&quot;',
191
- '&': '&amp;',
192
- '<': '&lt;',
193
- '>': '&gt;'
194
- })[a]) !== null && _a !== void 0 ? _a : '';
195
- });
196
- const main = preparedSearchValue ? text === null || text === void 0 ? void 0 : text.replace(// eslint-disable-next-line security/detect-non-literal-regexp
197
- new RegExp(prepare(preparedSearchValue), 'i'), (match)=>`<span class="bg--yellow">${match}</span>`) : text;
198
- const postfixPart = postfix ? `<span class="dropdown__list-item-postfix">${postfix}</span>` : '';
199
- return main + postfixPart;
200
- }
201
- };
202
- const getMarkupForElement = (item, index, optTestId)=>{
203
- var _item_value_toString, _item_value;
204
- const lowerLabel = item.label.toLowerCase();
205
- const lowerSearchValue = searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase();
206
- var _item_customMobileIcon;
207
- return /*#__PURE__*/ (0, _jsxruntime.jsxs)("button", {
208
- type: "button",
209
- "data-testid": `${testId}-${optTestId || index}-option`,
210
- onClick: ()=>{
211
- onChange === null || onChange === void 0 ? void 0 : onChange(item.value);
212
- setIsOpen(false);
213
- },
214
- className: (0, _classnames.default)(`${RC}__list-item`, {
215
- [`${RC}__list-item_active`]: item.value === value,
216
- [`${RC}__list-item_disabled`]: item.disabled
217
- }, item.className),
218
- children: [
219
- !isMobile || isMobile && !withMobileLogic && /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
220
- className: (0, _classnames.default)(`${RC}__active-icon`, {
221
- [`${RC}__active-icon_active`]: lowerLabel === lowerSearchValue
222
- }),
223
- children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_reactfeather.Check, {})
224
- }),
225
- /*#__PURE__*/ (0, _jsxruntime.jsx)("p", {
226
- title: item.label,
227
- className: item.labelClassName || '',
228
- dangerouslySetInnerHTML: {
229
- __html: highlightedText(item.label, item.postfix)
230
- }
231
- }),
232
- isMobile ? (_item_customMobileIcon = item === null || item === void 0 ? void 0 : item.customMobileIcon) !== null && _item_customMobileIcon !== void 0 ? _item_customMobileIcon : /*#__PURE__*/ (0, _jsxruntime.jsx)(_RadioInput.default, {
233
- value: item.value,
234
- checked: value === null || value === void 0 ? void 0 : value.toString()
235
- }) : ''
236
- ]
237
- }, (_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(/ /g, '_'));
238
- };
239
- const getListMarkUp = ()=>{
240
- var _options_length;
241
- return /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
242
- className: (0, _classnames.default)(`${RC}__container-wrapper`),
243
- ref: wrapperRef,
244
- onClick: isMobile ? onWrapperClick : ()=>{},
245
- children: /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
246
- className: (0, _classnames.default)(`${RC}__list-wrapper`, {
247
- [`${RC}__list-wrapper--fixed-height`]: isFixedMaxHeight,
248
- [`${RC}__list-wrapper--with-bottom-shadow`]: isScrollableList && isMobile,
249
- [`${RC}__list-wrapper--with-bottom-shadow-hidden`]: scrollTop === scrollHeight
250
- }),
251
- children: /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
252
- id: "dropdown-live-search-list",
253
- className: (0, _classnames.default)(`${RC}__container`, {
254
- [`${RC}__list-top`]: isListTop
255
- }),
256
- ref: dropdownListBoxRef,
257
- children: [
258
- isMobile && /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
259
- ref: dropdownListHeaderRef,
260
- className: (0, _classnames.default)(`${RC}__list-header`, {
261
- [`${RC}__list-header-with-shadow`]: isScrollableList && isMobile,
262
- [`${RC}__list-header-with-shadow-hidden`]: scrollTop === 0
263
- }),
264
- children: [
265
- /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
266
- className: (0, _classnames.default)(`${RC}__list-header-row`),
267
- children: [
268
- /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
269
- className: (0, _classnames.default)(`${RC}__list-label`),
270
- children: label
271
- }),
272
- /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
273
- className: (0, _classnames.default)(`${RC}__list-close-icon`),
274
- onClick: ()=>setIsOpen(false),
275
- children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_reactfeather.X, {
276
- onClick: ()=>setIsOpen(false)
277
- })
278
- })
279
- ]
280
- }),
281
- isSearchable && /*#__PURE__*/ (0, _jsxruntime.jsx)("input", {
282
- ref: searchInputModalRef,
283
- className: `${RC}__input`,
284
- value: isOpen ? searchValue : labelByValue,
285
- onChange: onInputChange,
286
- placeholder: placeholder,
287
- onFocus: onSearchableInputFocus,
288
- tabIndex: -1,
289
- ...attributesOfNativeInput
290
- })
291
- ]
292
- }),
293
- /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
294
- className: (0, _classnames.default)(`${RC}__list`, {
295
- disabled: isLoading
296
- }),
297
- ref: dropdownListRef,
298
- children: [
299
- options === null || options === void 0 ? void 0 : options.map((option)=>getMarkupForElement(option)),
300
- !(options === null || options === void 0 ? void 0 : options.length) && /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
301
- className: `${RC}__list-item ${RC}__list-item--no-options`,
302
- children: noOptionsText
303
- })
304
- ]
305
- }),
306
- isLoading && isOpen && /*#__PURE__*/ (0, _jsxruntime.jsx)(_Spinner.default, {
307
- size: ((_options_length = options === null || options === void 0 ? void 0 : options.length) !== null && _options_length !== void 0 ? _options_length : 0) <= 3 ? 'small' : null
308
- })
309
- ]
310
- })
311
- })
312
- });
313
- };
314
- const initListContainer = ()=>{
315
- const dropdownList = document.createElement('div');
316
- dropdownList.setAttribute('id', dropdownId === null || dropdownId === void 0 ? void 0 : dropdownId.toString());
317
- dropdownList.classList.add('dropdown__container');
318
- if (isMobile) {
319
- dropdownList.addEventListener('click', (e)=>{
320
- if (e.target.id === dropdownId) setIsOpen(false);
321
- });
322
- }
323
- try {
324
- var _getListContainer;
325
- (_getListContainer = getListContainer()) === null || _getListContainer === void 0 ? void 0 : _getListContainer.remove();
326
- } finally{
327
- if (isMobile) {
328
- var _getParentNode;
329
- try {
330
- var _document_getElementById;
331
- (_document_getElementById = document.getElementById(`mlw-${dropdownId}`)) === null || _document_getElementById === void 0 ? void 0 : _document_getElementById.remove();
332
- } catch (e) {}
333
- const dropdownMobileListWrapper = document.createElement('div');
334
- dropdownMobileListWrapper.classList.add('dropdown-live-search-mobile');
335
- dropdownMobileListWrapper.setAttribute('id', `mlw-${dropdownId}`);
336
- dropdownMobileListWrapper === null || dropdownMobileListWrapper === void 0 ? void 0 : dropdownMobileListWrapper.append(dropdownList);
337
- (_getParentNode = getParentNode()) === null || _getParentNode === void 0 ? void 0 : _getParentNode.append(dropdownMobileListWrapper);
338
- } else {
339
- var _getParentNode1;
340
- (_getParentNode1 = getParentNode()) === null || _getParentNode1 === void 0 ? void 0 : _getParentNode1.append(dropdownList);
341
- }
342
- }
343
- };
344
- const renderListContainer = ()=>{
345
- const lc = getListContainer();
346
- if (!lc) return null;
347
- return /*#__PURE__*/ (0, _reactdom.createPortal)(getListMarkUp(), lc);
348
- };
349
- (0, _react.useEffect)(()=>{
350
- document.addEventListener('click', handleClickOutside, true);
351
- return ()=>document.removeEventListener('click', handleClickOutside, true);
352
- }, []);
353
- (0, _react.useEffect)(()=>{
354
- if ((options === null || options === void 0 ? void 0 : options.length) === 1 && searchValue === options[0].label) {
355
- setSearchValue(options[0].label);
356
- onChange === null || onChange === void 0 ? void 0 : onChange(options[0].value);
357
- }
358
- }, [
359
- options
360
- ]);
361
- (0, _react.useEffect)(()=>{
362
- if (isSearchable && (debouncedSearchTerm || isValueDeleted)) {
363
- doRequest === null || doRequest === void 0 ? void 0 : doRequest(debouncedSearchTerm);
364
- if (isValueDeleted) setIsValueDeleted(false);
365
- }
366
- }, [
367
- debouncedSearchTerm,
368
- isValueDeleted
369
- ]);
370
- (0, _react.useEffect)(()=>{
371
- if (isMobile && withMobileLogic) {
372
- initListContainer();
373
- }
374
- }, [
375
- isMobile,
376
- withMobileLogic
377
- ]);
378
- (0, _react.useEffect)(()=>{
379
- if (isOpen && isMobile && (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current) && !searchValue) {
380
- var _dropdownListRef_current, _dropdownListRef_current1, _dropdownListRef_current2, _dropdownListRef_current3;
381
- setIsScrollableList((dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current = dropdownListRef.current) === null || _dropdownListRef_current === void 0 ? void 0 : _dropdownListRef_current.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current1 = dropdownListRef.current) === null || _dropdownListRef_current1 === void 0 ? void 0 : _dropdownListRef_current1.clientHeight));
382
- setIsFixedMaxHeight(isScrollableList || (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current2 = dropdownListRef.current) === null || _dropdownListRef_current2 === void 0 ? void 0 : _dropdownListRef_current2.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current3 = dropdownListRef.current) === null || _dropdownListRef_current3 === void 0 ? void 0 : _dropdownListRef_current3.clientHeight));
383
- }
384
- }, [
385
- isOpen,
386
- isMobile,
387
- isScrollableList,
388
- dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current,
389
- dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current = dropdownListRef.current) === null || _dropdownListRef_current === void 0 ? void 0 : _dropdownListRef_current.scrollHeight,
390
- dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current1 = dropdownListRef.current) === null || _dropdownListRef_current1 === void 0 ? void 0 : _dropdownListRef_current1.clientHeight
391
- ]);
392
- (0, _react.useLayoutEffect)(()=>{
393
- const list = document.getElementById('dropdown-live-search-list');
394
- if ((list || isOpen) && (!withMobileLogic || !isMobile)) {
395
- var _dropdownLiveSearchRef_current;
396
- const dropdownWidth = dropdownLiveSearchRef === null || dropdownLiveSearchRef === void 0 ? void 0 : (_dropdownLiveSearchRef_current = dropdownLiveSearchRef.current) === null || _dropdownLiveSearchRef_current === void 0 ? void 0 : _dropdownLiveSearchRef_current.clientWidth;
397
- if (list) list.style.minWidth = `${dropdownWidth}px`;
398
- }
399
- }, [
400
- dropdownLiveSearchRef,
401
- isOpen,
402
- withMobileLogic
403
- ]);
404
- (0, _react.useEffect)(()=>{
405
- if (!isOpen) {
406
- setIsFocusedByClick(false);
407
- if (withMobileLogic && isMobile) setSearchValue('');
408
- }
409
- if (isOpen && dropdownListRef && dropdownListRef.current) {
410
- if (isMobile && withMobileLogic) {
411
- var _searchInputModalRef_current;
412
- doRequest === null || doRequest === void 0 ? void 0 : doRequest('').then(()=>{
413
- setTimeout(()=>{
414
- if (dropdownListRef.current && (dropdownListBoxRef === null || dropdownListBoxRef === void 0 ? void 0 : dropdownListBoxRef.current) && (dropdownListHeaderRef === null || dropdownListHeaderRef === void 0 ? void 0 : dropdownListHeaderRef.current)) {
415
- var _dropdownListBoxRef_current_getBoundingClientRect, _dropdownListBoxRef_current, _dropdownListHeaderRef_current_getBoundingClientRect, _dropdownListHeaderRef_current;
416
- dropdownListRef.current.style.maxHeight = `${(dropdownListBoxRef === null || dropdownListBoxRef === void 0 ? void 0 : (_dropdownListBoxRef_current = dropdownListBoxRef.current) === null || _dropdownListBoxRef_current === void 0 ? void 0 : (_dropdownListBoxRef_current_getBoundingClientRect = _dropdownListBoxRef_current.getBoundingClientRect()) === null || _dropdownListBoxRef_current_getBoundingClientRect === void 0 ? void 0 : _dropdownListBoxRef_current_getBoundingClientRect.height) - (dropdownListHeaderRef === null || dropdownListHeaderRef === void 0 ? void 0 : (_dropdownListHeaderRef_current = dropdownListHeaderRef.current) === null || _dropdownListHeaderRef_current === void 0 ? void 0 : (_dropdownListHeaderRef_current_getBoundingClientRect = _dropdownListHeaderRef_current.getBoundingClientRect()) === null || _dropdownListHeaderRef_current_getBoundingClientRect === void 0 ? void 0 : _dropdownListHeaderRef_current_getBoundingClientRect.height)}px`;
417
- }
418
- }, 1);
419
- });
420
- searchInputModalRef === null || searchInputModalRef === void 0 ? void 0 : (_searchInputModalRef_current = searchInputModalRef.current) === null || _searchInputModalRef_current === void 0 ? void 0 : _searchInputModalRef_current.focus();
421
- }
422
- dropdownListRef.current.addEventListener('scroll', doScrollCallback);
423
- }
424
- return ()=>{
425
- removeEventListener('scroll', doScrollCallback);
426
- };
427
- }, [
428
- isOpen,
429
- dropdownListRef
430
- ]);
431
- (0, _react.useLayoutEffect)(()=>{
432
- var _getListContainer;
433
- if (!isMobile) {
434
- window.addEventListener('mousewheel', closeList);
435
- window.addEventListener('scroll', closeList);
436
- window.addEventListener('touchmove', closeList);
437
- } else {
438
- window.removeEventListener('mousewheel', closeList);
439
- window.removeEventListener('scroll', closeList);
440
- window.removeEventListener('touchmove', closeList);
441
- }
442
- (_getListContainer = getListContainer()) === null || _getListContainer === void 0 ? void 0 : _getListContainer.addEventListener('click', closeList);
443
- window.addEventListener('keyup', closeListViaEsc);
444
- return ()=>{
445
- var _getListContainer;
446
- window.removeEventListener('mousewheel', closeList);
447
- window.removeEventListener('scroll', closeList);
448
- window.removeEventListener('touchmove', closeList);
449
- window.removeEventListener('keyup', closeListViaEsc);
450
- (_getListContainer = getListContainer()) === null || _getListContainer === void 0 ? void 0 : _getListContainer.removeEventListener('click', closeList);
451
- };
452
- }, [
453
- getListContainer
454
- ]);
455
- (0, _react.useEffect)(()=>{
456
- const setScrollTopValue = (e)=>{
457
- var _e_target_scrollTop, _e_target;
458
- setScrollTop(Number.parseInt((_e_target = e.target) === null || _e_target === void 0 ? void 0 : (_e_target_scrollTop = _e_target.scrollTop) === null || _e_target_scrollTop === void 0 ? void 0 : _e_target_scrollTop.toString(), 10));
459
- };
460
- if (isOpen && isMobile && (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current)) {
461
- var _dropdownListRef_current;
462
- dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current = dropdownListRef.current) === null || _dropdownListRef_current === void 0 ? void 0 : _dropdownListRef_current.addEventListener('scroll', setScrollTopValue);
463
- }
464
- return ()=>{
465
- var _dropdownListRef_current;
466
- dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current = dropdownListRef.current) === null || _dropdownListRef_current === void 0 ? void 0 : _dropdownListRef_current.removeEventListener('scroll', setScrollTopValue);
467
- };
468
- }, [
469
- isOpen,
470
- isMobile,
471
- dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current
472
- ]);
473
- (0, _react.useEffect)(()=>{
474
- if (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current) {
475
- var _this, _dropdownListRef_current, _dropdownListRef_current1;
476
- setScrollHeight(Number.parseInt((_this = (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current = dropdownListRef.current) === null || _dropdownListRef_current === void 0 ? void 0 : _dropdownListRef_current.scrollHeight) - (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef_current1 = dropdownListRef.current) === null || _dropdownListRef_current1 === void 0 ? void 0 : _dropdownListRef_current1.clientHeight)) === null || _this === void 0 ? void 0 : _this.toString(), 10));
477
- }
478
- }, [
479
- scrollTop,
480
- dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current
481
- ]);
482
- if (!options) return null;
483
- return /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
484
- className: (0, _classnames.default)(RC, className, {
485
- disabled,
486
- [`${RC}-mobile`]: isMobile,
487
- [`${RC}--focused`]: isOpen
488
- }),
489
- ref: dropdownLiveSearchRef,
490
- children: [
491
- /*#__PURE__*/ (0, _jsxruntime.jsxs)("button", {
492
- type: "button",
493
- "data-testid": testId,
494
- className: `${RC}__trigger input__wrap ${isOpen ? 'input__wrap--focus' : ''} ${!value ? 'placeholder' : ''} ${error ? 'error' : ''}`,
495
- onClick: ()=>!isSearchable ? setIsOpen(!isOpen) : null,
496
- onMouseDown: ()=>setIsFocusedByClick(true),
497
- onFocus: ()=>!isFocusedByClick ? setIsOpen(true) : null,
498
- tabIndex: tabIndex,
499
- children: [
500
- isSearchable ? /*#__PURE__*/ (0, _jsxruntime.jsx)("input", {
501
- ref: searchInputRef,
502
- className: `${RC}__input`,
503
- value: isOpen ? isMobile && withMobileLogic || !isSearchValueChangedAfterOpen ? labelByValue : searchValue : labelByValue,
504
- onChange: onInputChange,
505
- placeholder: placeholder,
506
- onFocus: onSearchableInputFocus,
507
- onClick: onInputClick,
508
- tabIndex: -1,
509
- ...attributesOfNativeInput
510
- }) : /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
511
- className: "text",
512
- children: labelByValue || placeholder
513
- }),
514
- /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
515
- className: (0, _classnames.default)(`${RC}__arrow`, {
516
- [`${RC}__arrow_active`]: isOpen
517
- }),
518
- onClick: ()=>setIsOpen(!isOpen),
519
- children: isMobile ? /*#__PURE__*/ (0, _jsxruntime.jsx)(_reactfeather.Code, {
520
- className: "mobile-icon"
521
- }) : isOpen ? /*#__PURE__*/ (0, _jsxruntime.jsx)(_reactfeather.ChevronUp, {}) : /*#__PURE__*/ (0, _jsxruntime.jsx)(_reactfeather.ChevronDown, {})
522
- })
523
- ]
524
- }),
525
- isOpen && (isMobile && withMobileLogic ? renderListContainer() : getListMarkUp())
526
- ]
527
- });
528
- };
529
- const _default = DropdownLiveSearch;
1
+ function e(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,l=Array(t);n<t;n++)l[n]=e[n];return l}function t(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function n(e){for(var n=1;n<arguments.length;n++){var l=null!=arguments[n]?arguments[n]:{},r=Object.keys(l);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(l).filter(function(e){return Object.getOwnPropertyDescriptor(l,e).enumerable}))),r.forEach(function(n){t(e,n,l[n])})}return e}function l(t,n){return function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n,l,r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var o=[],u=!0,i=!1;try{for(r=r.call(e);!(u=(n=r.next()).done)&&(o.push(n.value),!t||o.length!==t);u=!0);}catch(e){i=!0,l=e}finally{try{u||null==r.return||r.return()}finally{if(i)throw l}}return o}}(t,n)||function(t,n){if(t){if("string"==typeof t)return e(t,n);var l=Object.prototype.toString.call(t).slice(8,-1);if("Object"===l&&t.constructor&&(l=t.constructor.name),"Map"===l||"Set"===l)return Array.from(l);if("Arguments"===l||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(l))return e(t,n)}}(t,n)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return b}});var r=require("react/jsx-runtime"),o=p(require("classnames")),u=function(e,t){if(e&&e.__esModule)return e;if(null===e||(void 0===e?"undefined":e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)!="object"&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var l={__proto__:null},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var u=r?Object.getOwnPropertyDescriptor(e,o):null;u&&(u.get||u.set)?Object.defineProperty(l,o,u):l[o]=e[o]}return l.default=e,n&&n.set(e,l),l}(require("react")),i=require("react-dom"),c=require("react-feather"),a=require("../../../Functions/fieldValueFormatters"),s=require("../../../Functions/useDebounce"),d=p(require("../../../Functions/useIsMobile/useIsMobile")),f=p(require("../../Layout/Spinner/Spinner")),v=p(require("../RadioInput/RadioInput"));function p(e){return e&&e.__esModule?e:{default:e}}function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}require("./DropdownLiveSearch.scss");var h="dropdown-live-search",b=function(e){var p,m,b,g,_=e.label,w=e.value,y=e.error,x=e.disabled,j=e.onChange,E=e.placeholder,S=e.className,L=e.isSearchable,N=e.doRequest,C=e.isLoading,I=e.options,k=e.fieldKey,O=e.id,M=e.isListTop,q=e.attributesOfNativeInput,P=e.withMobileLogic,R=e.tabIndex,H=e.isNotValidateASCII,D=void 0!==H&&H,A=e.noOptionsText,T=void 0===A?"No options available":A,F=e.testId,B=void 0===F?"dropdown-live-search":F,W=l((0,u.useState)(O||k||Math.random().toString(16).slice(2)),1)[0],V=l((0,u.useState)(!1),2),$=V[0],U=V[1],z=l((0,u.useState)(!1),2),K=z[0],X=z[1],G=(0,d.default)().isMobile&&P&&window.screen.width<=768,J=(0,u.useMemo)(function(){var e,t;return null!=(t=null==I||null==(e=I.find(function(e){return e.value===w}))?void 0:e.label)?t:""},[w,I]),Q=l((0,u.useState)(""),2),Y=Q[0],Z=Q[1],ee=l((0,u.useState)(!1),2),et=ee[0],en=ee[1],el=(0,u.useRef)(null),er=(0,u.useRef)(null),eo=(0,u.useRef)(null),eu=(0,u.useRef)(null),ei=(0,u.useRef)(null),ec=(0,u.useRef)(null),ea=(0,u.useRef)(null),es=(0,u.useRef)(null),ed=l((0,u.useState)(!1),2),ef=ed[0],ev=ed[1],ep=l((0,u.useState)(null),2),em=ep[0],eh=ep[1],eb=l((0,u.useState)(!1),2),eg=eb[0],e_=eb[1],ew=l((0,u.useState)(0),2),ey=ew[0],ex=ew[1],ej=l((0,u.useState)(1),2),eE=ej[0],eS=ej[1],eL=(0,s.useDebounce)({searchValue:Y,delay:600}),eN=(0,u.useCallback)(function(e){if(N&&"function"==typeof N){var t,n=null==e?void 0:e.target;Math.round(n.clientHeight+n.scrollTop)===n.scrollHeight&&N(null!=(t=ea.current)?t:"",!0)}},[I]),eC=function(e){var t=!(arguments.length>1)||void 0===arguments[1]||arguments[1];t&&en(!0),Z(e),ea.current=e},eI=function(e){U(e),eC("",!1),e||en(!1)},ek=function(){var e,t;return null!=(t=null!=(e=document.querySelector("div#root"))?e:document.querySelector("div#app"))?t:document.querySelector("div#storybook-root")},eO=function(){return document.getElementById(null==W?void 0:W.toString())},eM=function(e){e.target===(null==es?void 0:es.current)&&(e.stopPropagation(),e.preventDefault(),eI(!1))},eq=function(e){$||(e.preventDefault(),e.stopPropagation())},eP=function(e){var t;!el.current||el.current.contains(e.target)||eO()&&(null==(t=eO())?void 0:t.contains(e.target))||eI(!1)},eR=function(e){[27].includes(e.keyCode)&&eI(!1)},eH=$?eP:function(){},eD=function(e){var t,n=null==(t=e.target)?void 0:t.value;D||(n=(0,a.formatToOnlyASCIICodeText)(n)),eC(n),!Y&&et||e.target.value?X(!1):(null==j||j(""),eC(""),X(!0))},eA=function(e,t){if(!L)return e;var n=et||G&&P?Y:J;return e=e.replace(/["&<>]/g,function(e){var t;return null!=(t=({'"':"&quot;","&":"&amp;","<":"&lt;",">":"&gt;"})[e])?t:""}),(n?null==e?void 0:e.replace(RegExp(null==n?void 0:n.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&"),"i"),function(e){return'<span class="bg--yellow">'.concat(e,"</span>")}):e)+(t?'<span class="dropdown__list-item-postfix">'.concat(t,"</span>"):"")},eT=function(e,n,l){var u,i,a,s,d=e.label.toLowerCase(),f=null==Y?void 0:Y.toLowerCase();return(0,r.jsxs)("button",{type:"button","data-testid":"".concat(B,"-").concat(l||n,"-option"),onClick:function(){null==j||j(e.value),eI(!1)},className:(0,o.default)("".concat(h,"__list-item"),(t(s={},"".concat(h,"__list-item_active"),e.value===w),t(s,"".concat(h,"__list-item_disabled"),e.disabled),s),e.className),children:[!G||G&&!P&&(0,r.jsx)("span",{className:(0,o.default)("".concat(h,"__active-icon"),t({},"".concat(h,"__active-icon_active"),d===f)),children:(0,r.jsx)(c.Check,{})}),(0,r.jsx)("p",{title:e.label,className:e.labelClassName||"",dangerouslySetInnerHTML:{__html:eA(e.label,e.postfix)}}),G?null!=(a=null==e?void 0:e.customMobileIcon)?a:(0,r.jsx)(v.default,{value:e.value,checked:null==w?void 0:w.toString()}):""]},null==(i=e.value)||null==(u=i.toString())?void 0:u.replace(/ /g,"_"))},eF=function(){var e,l,u;return(0,r.jsx)("div",{className:(0,o.default)("".concat(h,"__container-wrapper")),ref:es,onClick:G?eM:function(){},children:(0,r.jsx)("div",{className:(0,o.default)("".concat(h,"__list-wrapper"),(t(l={},"".concat(h,"__list-wrapper--fixed-height"),eg),t(l,"".concat(h,"__list-wrapper--with-bottom-shadow"),em&&G),t(l,"".concat(h,"__list-wrapper--with-bottom-shadow-hidden"),ey===eE),l)),children:(0,r.jsxs)("div",{id:"dropdown-live-search-list",className:(0,o.default)("".concat(h,"__container"),t({},"".concat(h,"__list-top"),M)),ref:er,children:[G&&(0,r.jsxs)("div",{ref:eu,className:(0,o.default)("".concat(h,"__list-header"),(t(u={},"".concat(h,"__list-header-with-shadow"),em&&G),t(u,"".concat(h,"__list-header-with-shadow-hidden"),0===ey),u)),children:[(0,r.jsxs)("div",{className:(0,o.default)("".concat(h,"__list-header-row")),children:[(0,r.jsx)("div",{className:(0,o.default)("".concat(h,"__list-label")),children:_}),(0,r.jsx)("div",{className:(0,o.default)("".concat(h,"__list-close-icon")),onClick:function(){return eI(!1)},children:(0,r.jsx)(c.X,{onClick:function(){return eI(!1)}})})]}),L&&(0,r.jsx)("input",n({ref:ec,className:"".concat(h,"__input"),value:$?Y:J,onChange:eD,placeholder:E,onFocus:eq,tabIndex:-1},q))]}),(0,r.jsxs)("div",{className:(0,o.default)("".concat(h,"__list"),{disabled:C}),ref:eo,children:[null==I?void 0:I.map(function(e){return eT(e)}),!(null==I?void 0:I.length)&&(0,r.jsx)("div",{className:"".concat(h,"__list-item ").concat(h,"__list-item--no-options"),children:T})]}),C&&$&&(0,r.jsx)(f.default,{size:(null!=(e=null==I?void 0:I.length)?e:0)<=3?"small":null})]})})})},eB=function(){var e=document.createElement("div");e.setAttribute("id",null==W?void 0:W.toString()),e.classList.add("dropdown__container"),G&&e.addEventListener("click",function(e){e.target.id===W&&eI(!1)});try{null==(t=eO())||t.remove()}finally{if(G){try{null==(r=document.getElementById("mlw-".concat(W)))||r.remove()}catch(e){}var t,n,l,r,o=document.createElement("div");o.classList.add("dropdown-live-search-mobile"),o.setAttribute("id","mlw-".concat(W)),null==o||o.append(e),null==(l=ek())||l.append(o)}else null==(n=ek())||n.append(e)}};return((0,u.useEffect)(function(){return document.addEventListener("click",eP,!0),function(){return document.removeEventListener("click",eP,!0)}},[]),(0,u.useEffect)(function(){(null==I?void 0:I.length)===1&&Y===I[0].label&&(eC(I[0].label),null==j||j(I[0].value))},[I]),(0,u.useEffect)(function(){L&&(eL||K)&&(null==N||N(eL),K&&X(!1))},[eL,K]),(0,u.useEffect)(function(){G&&P&&eB()},[G,P]),(0,u.useEffect)(function(){if($&&G&&(null==eo?void 0:eo.current)&&!Y){var e,t,n,l;eh((null==eo||null==(e=eo.current)?void 0:e.scrollHeight)>(null==eo||null==(t=eo.current)?void 0:t.clientHeight)),e_(em||(null==eo||null==(n=eo.current)?void 0:n.scrollHeight)>(null==eo||null==(l=eo.current)?void 0:l.clientHeight))}},[$,G,em,null==eo?void 0:eo.current,null==eo||null==(m=eo.current)?void 0:m.scrollHeight,null==eo||null==(b=eo.current)?void 0:b.clientHeight]),(0,u.useLayoutEffect)(function(){var e=document.getElementById("dropdown-live-search-list");if((e||$)&&(!P||!G)){var t,n=null==el||null==(t=el.current)?void 0:t.clientWidth;e&&(e.style.minWidth="".concat(n,"px"))}},[el,$,P]),(0,u.useEffect)(function(){if(!$&&(ev(!1),P&&G&&eC("")),$&&eo&&eo.current){if(G&&P){var e;null==N||N("").then(function(){setTimeout(function(){if(eo.current&&(null==er?void 0:er.current)&&(null==eu?void 0:eu.current)){var e,t,n,l;eo.current.style.maxHeight="".concat((null==er||null==(t=er.current)||null==(e=t.getBoundingClientRect())?void 0:e.height)-(null==eu||null==(l=eu.current)||null==(n=l.getBoundingClientRect())?void 0:n.height),"px")}},1)}),null==ec||null==(e=ec.current)||e.focus()}eo.current.addEventListener("scroll",eN)}return function(){removeEventListener("scroll",eN)}},[$,eo]),(0,u.useLayoutEffect)(function(){var e;return G?(window.removeEventListener("mousewheel",eH),window.removeEventListener("scroll",eH),window.removeEventListener("touchmove",eH)):(window.addEventListener("mousewheel",eH),window.addEventListener("scroll",eH),window.addEventListener("touchmove",eH)),null==(e=eO())||e.addEventListener("click",eH),window.addEventListener("keyup",eR),function(){var e;window.removeEventListener("mousewheel",eH),window.removeEventListener("scroll",eH),window.removeEventListener("touchmove",eH),window.removeEventListener("keyup",eR),null==(e=eO())||e.removeEventListener("click",eH)}},[eO]),(0,u.useEffect)(function(){var e,t=function(e){var t,n;ex(Number.parseInt(null==(n=e.target)||null==(t=n.scrollTop)?void 0:t.toString(),10))};return $&&G&&(null==eo?void 0:eo.current)&&(null==eo||null==(e=eo.current)||e.addEventListener("scroll",t)),function(){var e;null==eo||null==(e=eo.current)||e.removeEventListener("scroll",t)}},[$,G,null==eo?void 0:eo.current]),(0,u.useEffect)(function(){if(null==eo?void 0:eo.current){var e,t,n;eS(Number.parseInt((e=(null==eo||null==(t=eo.current)?void 0:t.scrollHeight)-(null==eo||null==(n=eo.current)?void 0:n.clientHeight),e.toString()),10))}},[ey,null==eo?void 0:eo.current]),I)?(0,r.jsxs)("div",{className:(0,o.default)(h,S,(t(g={disabled:x},"".concat(h,"-mobile"),G),t(g,"".concat(h,"--focused"),$),g)),ref:el,children:[(0,r.jsxs)("button",{type:"button","data-testid":B,className:"".concat(h,"__trigger input__wrap ").concat($?"input__wrap--focus":""," ").concat(!w?"placeholder":""," ").concat(y?"error":""),onClick:function(){return L?null:eI(!$)},onMouseDown:function(){return ev(!0)},onFocus:function(){return ef?null:eI(!0)},tabIndex:R,children:[L?(0,r.jsx)("input",n({ref:ei,className:"".concat(h,"__input"),value:$?G&&P||!et?J:Y:J,onChange:eD,placeholder:E,onFocus:eq,onClick:function(e){var t,n;$||eI(!0),G&&P?(e.preventDefault(),e.stopPropagation(),e.target&&(null==(t=e.target)||t.blur())):e.target&&(null==(n=e.target)||n.select())},tabIndex:-1},q)):(0,r.jsx)("span",{className:"text",children:J||E}),(0,r.jsx)("span",{className:(0,o.default)("".concat(h,"__arrow"),t({},"".concat(h,"__arrow_active"),$)),onClick:function(){return eI(!$)},children:G?(0,r.jsx)(c.Code,{className:"mobile-icon"}):$?(0,r.jsx)(c.ChevronUp,{}):(0,r.jsx)(c.ChevronDown,{})})]}),$&&(G&&P?(p=eO())?(0,i.createPortal)(eF(),p):null:eF())]}):null};