intelicoreact 1.3.54 → 1.3.56
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.
- package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +9 -1
- package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +10 -1
- package/dist/Atomic/FormElements/Calendar/Calendar.js +24 -4
- package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +10 -1
- package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +14 -2
- package/dist/Atomic/FormElements/Datepicker/Datepicker.js +54 -5
- package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +21 -3
- package/dist/Atomic/FormElements/Dropdown/Dropdown.js +153 -56
- package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +7 -1
- package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +52 -11
- package/dist/Atomic/FormElements/FileLoader/FileLoader.js +15 -3
- package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +29 -15
- package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +15 -5
- package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +26 -6
- package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +35 -19
- package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +38 -9
- package/dist/Atomic/FormElements/Input/Input.js +57 -24
- package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +31 -4
- package/dist/Atomic/FormElements/InputColor/InputColor.js +14 -4
- package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +27 -6
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +42 -7
- package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +21 -3
- package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +81 -58
- package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +41 -6
- package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +8 -1
- package/dist/Atomic/FormElements/InputDateRange/dependencies.js +44 -14
- package/dist/Atomic/FormElements/InputLink/InputLink.js +23 -6
- package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +4 -0
- package/dist/Atomic/FormElements/InputMask/InputMask.js +208 -77
- package/dist/Atomic/FormElements/InputMask/functions.js +28 -2
- package/dist/Atomic/FormElements/InputMask2/InputMask2.js +119 -43
- package/dist/Atomic/FormElements/InputMask2/functions.js +28 -2
- package/dist/Atomic/FormElements/InputMask3/InputMask3.js +137 -44
- package/dist/Atomic/FormElements/InputMask3/functions.js +28 -2
- package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +17 -3
- package/dist/Atomic/FormElements/InputsRow/InputsRow.js +24 -5
- package/dist/Atomic/FormElements/Label/Label.js +9 -1
- package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +73 -35
- package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +15 -3
- package/dist/Atomic/FormElements/NumericInput/NumericInput.js +44 -23
- package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +17 -7
- package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +14 -3
- package/dist/Atomic/FormElements/RadioInput/RadioInput.js +10 -1
- package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +14 -3
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +23 -3
- package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +34 -17
- package/dist/Atomic/FormElements/RangeList/RangeList.js +25 -6
- package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +11 -1
- package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +72 -14
- package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +124 -40
- package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +10 -1
- package/dist/Atomic/FormElements/Switcher/Switcher.js +10 -1
- package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +13 -1
- package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +10 -1
- package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +17 -2
- package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +17 -3
- package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +11 -1
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +29 -6
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +3 -2
- package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +12 -1
- package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +156 -58
- package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.scss +6 -0
- package/dist/Atomic/FormElements/Text/Text.js +16 -10
- package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +9 -1
- package/dist/Atomic/FormElements/Textarea/Textarea.js +16 -3
- package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +35 -6
- package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +13 -4
- package/dist/Atomic/FormElements/TimeRange/TimeRange.js +21 -7
- package/dist/Atomic/FormElements/UserContacts/UserContacts.js +35 -8
- package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +91 -0
- package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +18 -5
- package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +10 -3
- package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +11 -3
- package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +2 -1
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +12 -5
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
- package/dist/Atomic/Layout/Header/Header.js +15 -3
- package/dist/Atomic/Layout/MainMenu/MainMenu.js +20 -3
- package/dist/Atomic/Layout/Spinner/Spinner.js +8 -1
- package/dist/Atomic/UI/Accordion/Accordion.js +19 -3
- package/dist/Atomic/UI/Accordion/AccordionItem.js +23 -9
- package/dist/Atomic/UI/AccordionTable/AccordionTable.js +32 -7
- package/dist/Atomic/UI/AccordionText/AccordionText.js +15 -3
- package/dist/Atomic/UI/AdvancedTag/AdvTag.js +21 -4
- package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +15 -3
- package/dist/Atomic/UI/Alert/Alert.js +16 -3
- package/dist/Atomic/UI/Arrow/Arrow.js +16 -3
- package/dist/Atomic/UI/Box/Box.js +9 -3
- package/dist/Atomic/UI/Button/Button.js +11 -2
- package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +10 -1
- package/dist/Atomic/UI/Chart/Chart.js +29 -4
- package/dist/Atomic/UI/Chart/partial/Chart.constants.js +19 -11
- package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +12 -1
- package/dist/Atomic/UI/Chart/partial/datasetSetters.js +34 -11
- package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +56 -82
- package/dist/Atomic/UI/Chart/partial/optionsSetters.js +19 -15
- package/dist/Atomic/UI/Chart/partial/utils.js +20 -6
- package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +13 -3
- package/dist/Atomic/UI/DateTime/DateTime.js +14 -3
- package/dist/Atomic/UI/DebugContainer/DebugContainer.js +16 -4
- package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +11 -3
- package/dist/Atomic/UI/DoubleString/DoubleString.js +17 -5
- package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +10 -3
- package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +52 -17
- package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +29 -1
- package/dist/Atomic/UI/Hint/Hint.js +30 -5
- package/dist/Atomic/UI/Modal/Modal.js +28 -6
- package/dist/Atomic/UI/Modal/ModalHOC.js +9 -1
- package/dist/Atomic/UI/Modal/partials/ModalFooter.js +7 -1
- package/dist/Atomic/UI/Modal/partials/ModalTitle.js +8 -1
- package/dist/Atomic/UI/Modal/partials/useMobileModal.js +49 -32
- package/dist/Atomic/UI/ModalBackup/Modal.js +90 -65
- package/dist/Atomic/UI/ModalBackup/ModalHOC.js +21 -12
- package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +11 -6
- package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +19 -15
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +21 -6
- package/dist/Atomic/UI/NavLine/NavLine.js +55 -26
- package/dist/Atomic/UI/NavLine/Tabs.js +3 -2
- package/dist/Atomic/UI/PageTitle/PageTitle.js +10 -2
- package/dist/Atomic/UI/PieChart/PieChart.js +10 -1
- package/dist/Atomic/UI/Price/Price.js +8 -3
- package/dist/Atomic/UI/PriceRange/PriceRange.js +7 -1
- package/dist/Atomic/UI/ProgressLine/ProgressLine.js +16 -1
- package/dist/Atomic/UI/Status/Status.js +8 -1
- package/dist/Atomic/UI/Table/Partials/TdCell.js +29 -5
- package/dist/Atomic/UI/Table/Partials/TdHeader.js +11 -1
- package/dist/Atomic/UI/Table/Partials/TdRow.js +17 -5
- package/dist/Atomic/UI/Table/Partials/TdTitle.js +14 -3
- package/dist/Atomic/UI/Table/Table.js +12 -1
- package/dist/Atomic/UI/Table/TdTypes/TdActions.js +18 -2
- package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +9 -1
- package/dist/Atomic/UI/Table/TdTypes/TdRange.js +4 -1
- package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +13 -1
- package/dist/Atomic/UI/Tag/Tag.js +14 -3
- package/dist/Atomic/UI/TagList/TagList.js +35 -19
- package/dist/Atomic/UI/UserBox/UserBox.js +13 -1
- package/dist/Classes/AbortableFetch.js +93 -36
- package/dist/Classes/AnimatedHandler.js +7 -3
- package/dist/Classes/RESTAPI/index.js +43 -39
- package/dist/Classes/RESTAPI/partials/AbortableFetch.js +93 -35
- package/dist/Classes/RESTAPI/partials/ApiBase.js +9 -1
- package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +19 -7
- package/dist/Classes/RESTAPI/partials/ApiUtils.js +35 -28
- package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +44 -21
- package/dist/Classes/RESTAPI/partials/Utils.js +19 -6
- package/dist/Classes/RESTAPI/partials/_outerDependencies.js +6 -2
- package/dist/Classes/RESTAPI/partials/_utils.js +36 -13
- package/dist/Constants/index.constants.js +15 -8
- package/dist/Functions/Portal.js +16 -5
- package/dist/Functions/customEventListener.js +17 -4
- package/dist/Functions/fieldValueFormatters.js +83 -43
- package/dist/Functions/hooks/useFormFieldsChangesManager.js +26 -23
- package/dist/Functions/locale/createTranslator.js +9 -4
- package/dist/Functions/operations.js +22 -12
- package/dist/Functions/presets/inputMaskPresets.js +11 -9
- package/dist/Functions/presets/inputPresets.js +11 -8
- package/dist/Functions/presets/mobileKeyboardTypesPresets.js +9 -7
- package/dist/Functions/schemas.js +13 -6
- package/dist/Functions/useBodyScrollLock.js +6 -1
- package/dist/Functions/useClickOutside.js +4 -0
- package/dist/Functions/useDebounce.js +7 -2
- package/dist/Functions/useFieldFocus.js +18 -6
- package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +9 -0
- package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +23 -12
- package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +15 -6
- package/dist/Functions/useFormTools/functions/General.js +28 -18
- package/dist/Functions/useFormTools/functions/RenderFields.js +11 -2
- package/dist/Functions/useFormTools/functions/usePrevious.js +5 -1
- package/dist/Functions/useFormTools/index.js +144 -85
- package/dist/Functions/useInputHighlightError.js +12 -3
- package/dist/Functions/useIsMobile.js +12 -7
- package/dist/Functions/useKeyPress/useHandleKeyPress.js +7 -1
- package/dist/Functions/useKeyPress/useKeyPress.js +9 -1
- package/dist/Functions/useLocalStorage.js +9 -1
- package/dist/Functions/useLocationParams.js +5 -4
- package/dist/Functions/useMetaInfo.js +10 -3
- package/dist/Functions/useMouseUpOutside.js +3 -0
- package/dist/Functions/useOnlineStatus.js +9 -1
- package/dist/Functions/usePasswordChecker.js +20 -4
- package/dist/Functions/usePrevious.js +5 -1
- package/dist/Functions/useResize.js +10 -2
- package/dist/Functions/useScrollTo.js +7 -2
- package/dist/Functions/useToggle.js +5 -1
- package/dist/Functions/utils.js +128 -49
- package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +9 -2
- package/dist/Molecular/CustomIcons/components/AlertCircle.js +9 -2
- package/dist/Molecular/CustomIcons/components/AppStore.js +9 -2
- package/dist/Molecular/CustomIcons/components/Arrow.js +9 -2
- package/dist/Molecular/CustomIcons/components/ArrowDown.js +9 -2
- package/dist/Molecular/CustomIcons/components/ArrowLeft.js +9 -2
- package/dist/Molecular/CustomIcons/components/ArrowRight.js +9 -2
- package/dist/Molecular/CustomIcons/components/ArrowUp.js +9 -2
- package/dist/Molecular/CustomIcons/components/Bell.js +9 -2
- package/dist/Molecular/CustomIcons/components/Button.js +9 -2
- package/dist/Molecular/CustomIcons/components/Campaigns.js +9 -2
- package/dist/Molecular/CustomIcons/components/Check.js +9 -2
- package/dist/Molecular/CustomIcons/components/Check2.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronDown.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronLeft.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronRight.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronUp.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +9 -2
- package/dist/Molecular/CustomIcons/components/Close.js +9 -2
- package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +9 -2
- package/dist/Molecular/CustomIcons/components/Delete.js +9 -2
- package/dist/Molecular/CustomIcons/components/Edit.js +9 -2
- package/dist/Molecular/CustomIcons/components/Email.js +9 -2
- package/dist/Molecular/CustomIcons/components/FinturfLogo.js +9 -2
- package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +9 -2
- package/dist/Molecular/CustomIcons/components/Flows.js +9 -2
- package/dist/Molecular/CustomIcons/components/Gift.js +9 -2
- package/dist/Molecular/CustomIcons/components/GoogleAuth.js +9 -2
- package/dist/Molecular/CustomIcons/components/GooglePlay.js +9 -2
- package/dist/Molecular/CustomIcons/components/HelpCircle.js +9 -2
- package/dist/Molecular/CustomIcons/components/HelpCircle2.js +9 -2
- package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +9 -2
- package/dist/Molecular/CustomIcons/components/Home.js +9 -2
- package/dist/Molecular/CustomIcons/components/Home2.js +9 -2
- package/dist/Molecular/CustomIcons/components/Key.js +9 -2
- package/dist/Molecular/CustomIcons/components/Landers.js +9 -2
- package/dist/Molecular/CustomIcons/components/Lock.js +9 -2
- package/dist/Molecular/CustomIcons/components/Mail.js +9 -2
- package/dist/Molecular/CustomIcons/components/Mastercard.js +9 -2
- package/dist/Molecular/CustomIcons/components/Minus.js +9 -2
- package/dist/Molecular/CustomIcons/components/Offers.js +9 -2
- package/dist/Molecular/CustomIcons/components/Pause.js +9 -2
- package/dist/Molecular/CustomIcons/components/PayPal.js +9 -2
- package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +9 -2
- package/dist/Molecular/CustomIcons/components/Phone.js +9 -2
- package/dist/Molecular/CustomIcons/components/Play.js +9 -2
- package/dist/Molecular/CustomIcons/components/Plus.js +9 -2
- package/dist/Molecular/CustomIcons/components/Profile.js +9 -2
- package/dist/Molecular/CustomIcons/components/QRCode.js +9 -2
- package/dist/Molecular/CustomIcons/components/Rectangle.js +9 -2
- package/dist/Molecular/CustomIcons/components/Revert.js +9 -2
- package/dist/Molecular/CustomIcons/components/Star.js +9 -2
- package/dist/Molecular/CustomIcons/components/Star2.js +9 -2
- package/dist/Molecular/CustomIcons/components/TrafficSources.js +9 -2
- package/dist/Molecular/CustomIcons/components/Trash.js +9 -2
- package/dist/Molecular/CustomIcons/components/TrashRed.js +9 -2
- package/dist/Molecular/CustomIcons/components/Triggers.js +9 -2
- package/dist/Molecular/CustomIcons/components/User.js +9 -2
- package/dist/Molecular/CustomIcons/components/Visa.js +9 -2
- package/dist/Molecular/CustomIcons/components/X.js +9 -2
- package/dist/Molecular/CustomIcons/index.js +122 -0
- package/dist/Molecular/FormElement/FormElement.js +12 -1
- package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +31 -30
- package/dist/Molecular/FormWithDependOn/partials/_utils.js +12 -9
- package/dist/Molecular/InputAddress/InputAddress.js +114 -65
- package/dist/Molecular/InputPassword/InputPassword.js +19 -5
- package/dist/index.js +2 -0
- 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 _fieldValueFormatters = require("../../../Functions/fieldValueFormatters");
|
|
21
|
+
|
|
14
22
|
var _useDebounce = require("../../../Functions/useDebounce");
|
|
23
|
+
|
|
15
24
|
var _useIsMobile = _interopRequireDefault(require("../../../Functions/useIsMobile"));
|
|
25
|
+
|
|
16
26
|
var _CheckboxInput = _interopRequireDefault(require("../../FormElements/CheckboxInput/CheckboxInput"));
|
|
27
|
+
|
|
17
28
|
var _Input = _interopRequireDefault(require("../../FormElements/Input/Input"));
|
|
29
|
+
|
|
18
30
|
var _Tag = _interopRequireDefault(require("../../UI/Tag/Tag"));
|
|
31
|
+
|
|
19
32
|
var _TagList = _interopRequireDefault(require("../../UI/TagList/TagList"));
|
|
33
|
+
|
|
20
34
|
require("./TagsDropdown.scss");
|
|
21
|
-
|
|
22
|
-
function
|
|
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 = "tags-dropdown";
|
|
24
41
|
const MIN_ITEMS_FOR_SHOW_MOBILE_SEARCH = 10;
|
|
42
|
+
|
|
25
43
|
const TagsDropdown = _ref => {
|
|
26
|
-
var _Object$keys, _dropdownListWrapperR, _dropdownListRef$curr5, _dropdownListRef$curr6;
|
|
44
|
+
var _Object$keys, _dropdownListWrapperR, _dropdownListWrapperR2, _dropdownListRef$curr5, _dropdownListRef$curr6;
|
|
45
|
+
|
|
27
46
|
let {
|
|
28
47
|
options,
|
|
29
48
|
chosenOptions = [],
|
|
@@ -93,28 +112,34 @@ const TagsDropdown = _ref => {
|
|
|
93
112
|
} = _ref2;
|
|
94
113
|
return value === (item === null || item === void 0 ? void 0 : item.value);
|
|
95
114
|
});
|
|
115
|
+
|
|
96
116
|
if (isExist !== -1) {
|
|
97
117
|
acc[isExist] = item;
|
|
98
118
|
} else {
|
|
99
119
|
acc.push(item);
|
|
100
120
|
}
|
|
101
121
|
};
|
|
122
|
+
|
|
102
123
|
if (item.groupName) {
|
|
103
124
|
var _item$list;
|
|
104
|
-
|
|
125
|
+
|
|
126
|
+
(_item$list = item.list) === null || _item$list === void 0 ? void 0 : _item$list.map(item => checkUniqAndPush(acc, item));
|
|
105
127
|
} else {
|
|
106
128
|
checkUniqAndPush(acc, item);
|
|
107
129
|
}
|
|
130
|
+
|
|
108
131
|
return acc;
|
|
109
132
|
}, (_Object$keys = Object.keys(localOptionsStore)) === null || _Object$keys === void 0 ? void 0 : _Object$keys.map(value => ({
|
|
110
133
|
value,
|
|
111
134
|
label: localOptionsStore === null || localOptionsStore === void 0 ? void 0 : localOptionsStore[value]
|
|
112
135
|
})));
|
|
136
|
+
|
|
113
137
|
const setSearchValueInterceptor = value => {
|
|
114
138
|
setSearchValue(value);
|
|
115
139
|
setIsValueDeleted(value === "");
|
|
116
140
|
searchValueRef.current = value;
|
|
117
141
|
};
|
|
142
|
+
|
|
118
143
|
const doScrollCallback = (0, _react.useCallback)(e => {
|
|
119
144
|
if (doLiveSearchRequest && typeof doLiveSearchRequest === "function") {
|
|
120
145
|
if (Math.round(e.target.clientHeight + e.target.scrollTop) == e.target.scrollHeight) {
|
|
@@ -122,48 +147,58 @@ const TagsDropdown = _ref => {
|
|
|
122
147
|
}
|
|
123
148
|
}
|
|
124
149
|
}, [options]);
|
|
150
|
+
|
|
125
151
|
const handleClickOutside = _ref3 => {
|
|
126
152
|
var _getListContainer;
|
|
153
|
+
|
|
127
154
|
let {
|
|
128
155
|
target
|
|
129
156
|
} = _ref3;
|
|
130
|
-
|
|
131
|
-
// eslint-disable-next-line no-use-before-define
|
|
132
|
-
!((_getListContainer = getListContainer()) !== null && _getListContainer !== void 0 && _getListContainer.contains(target))
|
|
157
|
+
|
|
158
|
+
if ( // eslint-disable-next-line no-use-before-define
|
|
159
|
+
!((_getListContainer = getListContainer()) !== null && _getListContainer !== void 0 && _getListContainer.contains(target))
|
|
160
|
+
/* && !isTargetInParent(target) */
|
|
161
|
+
) {
|
|
133
162
|
setIsOpen(false);
|
|
134
163
|
setSearchValueInterceptor("");
|
|
135
164
|
}
|
|
136
165
|
};
|
|
166
|
+
|
|
137
167
|
const deleteChosen = value => {
|
|
138
168
|
if (isMobile ? closeOnRemoveMobile : closeOnRemove) setIsOpen(false);
|
|
139
|
-
setLocalOptionsStore(options => ({
|
|
140
|
-
...options,
|
|
169
|
+
setLocalOptionsStore(options => ({ ...options,
|
|
141
170
|
[value]: undefined
|
|
142
171
|
}));
|
|
143
172
|
onChange(chosenOptions.filter(item => item !== value), "chosenOptions");
|
|
144
173
|
};
|
|
174
|
+
|
|
145
175
|
const onChangeHandler = item => {
|
|
146
176
|
if (item !== null && item !== void 0 && item.isFreezed) return false;
|
|
177
|
+
|
|
147
178
|
if ((item === null || item === void 0 ? void 0 : item.closeOnOptionSelect) !== undefined) {
|
|
148
179
|
if (item.closeOnOptionSelect) setIsOpen(false);
|
|
149
180
|
} else if (isMobile ? closeOnSelectMobile : closeOnSelect) setIsOpen(false);
|
|
181
|
+
|
|
150
182
|
setSearchValueInterceptor("");
|
|
183
|
+
|
|
151
184
|
if (chosenOptions.some(el => el === item.value)) {
|
|
152
185
|
deleteChosen(item.value);
|
|
153
186
|
return null;
|
|
154
187
|
}
|
|
155
|
-
|
|
156
|
-
|
|
188
|
+
|
|
189
|
+
setLocalOptionsStore(options => ({ ...options,
|
|
157
190
|
[item === null || item === void 0 ? void 0 : item.value]: item === null || item === void 0 ? void 0 : item.label
|
|
158
191
|
}));
|
|
159
192
|
onChange([...chosenOptions, item.value], "chosenOptions");
|
|
160
193
|
return null;
|
|
161
194
|
};
|
|
195
|
+
|
|
162
196
|
const onSearchHandler = name => {
|
|
163
197
|
let inputValue = name;
|
|
164
198
|
if (!isNotValidateASCII) inputValue = (0, _fieldValueFormatters.formatToOnlyASCIICodeText)(inputValue);
|
|
165
199
|
setSearchValueInterceptor(inputValue);
|
|
166
200
|
};
|
|
201
|
+
|
|
167
202
|
const onWrapperClick = e => {
|
|
168
203
|
if (e.target === (wrapperRef === null || wrapperRef === void 0 ? void 0 : wrapperRef.current)) {
|
|
169
204
|
e.stopPropagation();
|
|
@@ -171,22 +206,29 @@ const TagsDropdown = _ref => {
|
|
|
171
206
|
setIsOpen(false);
|
|
172
207
|
}
|
|
173
208
|
};
|
|
209
|
+
|
|
174
210
|
const getMarkupForElement = item => {
|
|
175
211
|
var _title$toString, _item$customMobileIco;
|
|
212
|
+
|
|
176
213
|
const {
|
|
177
214
|
description
|
|
178
215
|
} = item;
|
|
179
216
|
const title = item.title || item.label;
|
|
217
|
+
|
|
180
218
|
const hightlightSearchValue = title => {
|
|
181
219
|
var _title$toLowerCase;
|
|
220
|
+
|
|
182
221
|
const index = (_title$toLowerCase = title.toLowerCase()) === null || _title$toLowerCase === void 0 ? void 0 : _title$toLowerCase.indexOf(searchValue.toLowerCase());
|
|
183
222
|
if (index === -1) return title;
|
|
184
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
185
|
-
className: "
|
|
186
|
-
},
|
|
223
|
+
return /*#__PURE__*/_react.default.createElement("pre", {
|
|
224
|
+
className: "inherit-styles"
|
|
225
|
+
}, /*#__PURE__*/_react.default.createElement("span", null, title.substring(0, index)), /*#__PURE__*/_react.default.createElement("span", {
|
|
226
|
+
className: "search-match bg--yellow"
|
|
227
|
+
}, title.substring(index, index + (searchValue === null || searchValue === void 0 ? void 0 : searchValue.length))), /*#__PURE__*/_react.default.createElement("span", null, title.substring(index + (searchValue === null || searchValue === void 0 ? void 0 : searchValue.length))));
|
|
187
228
|
};
|
|
229
|
+
|
|
188
230
|
return /*#__PURE__*/_react.default.createElement("button", {
|
|
189
|
-
key: title === null || title === void 0
|
|
231
|
+
key: title === null || title === void 0 ? void 0 : (_title$toString = title.toString()) === null || _title$toString === void 0 ? void 0 : _title$toString.replace(/ /g, "_"),
|
|
190
232
|
onClick: e => {
|
|
191
233
|
e.preventDefault();
|
|
192
234
|
e.stopPropagation();
|
|
@@ -220,11 +262,14 @@ const TagsDropdown = _ref => {
|
|
|
220
262
|
}
|
|
221
263
|
}) : "");
|
|
222
264
|
};
|
|
265
|
+
|
|
223
266
|
const prepareOptions = options => {
|
|
224
267
|
return options === null || options === void 0 ? void 0 : options.map(option => option !== null && option !== void 0 && option.groupName ? option === null || option === void 0 ? void 0 : option.list : option).flat();
|
|
225
268
|
};
|
|
269
|
+
|
|
226
270
|
const selectAllItems = () => {
|
|
227
271
|
var _prepareOptions;
|
|
272
|
+
|
|
228
273
|
const preparedOptions = (_prepareOptions = prepareOptions(options)) === null || _prepareOptions === void 0 ? void 0 : _prepareOptions.filter(_ref4 => {
|
|
229
274
|
let {
|
|
230
275
|
isFreezed,
|
|
@@ -248,57 +293,71 @@ const TagsDropdown = _ref => {
|
|
|
248
293
|
})) || [])], "chosenOptions");
|
|
249
294
|
if (isMobile ? closeOnSelectAllMobile : closeOnSelectAll) setIsOpen(false);
|
|
250
295
|
};
|
|
296
|
+
|
|
251
297
|
const unselectAllItems = () => {
|
|
252
298
|
setLocalOptionsStore({});
|
|
253
299
|
onChange(chosenOptions === null || chosenOptions === void 0 ? void 0 : chosenOptions.filter(item => {
|
|
254
|
-
var _prepareOptions2;
|
|
255
|
-
|
|
300
|
+
var _prepareOptions2, _prepareOptions2$find;
|
|
301
|
+
|
|
302
|
+
return (_prepareOptions2 = prepareOptions(options)) === null || _prepareOptions2 === void 0 ? void 0 : (_prepareOptions2$find = _prepareOptions2.find(_ref7 => {
|
|
256
303
|
let {
|
|
257
304
|
value
|
|
258
305
|
} = _ref7;
|
|
259
306
|
return value === item;
|
|
260
|
-
})) === null || _prepareOptions2 === void 0 ? void 0 : _prepareOptions2.isFreezed;
|
|
307
|
+
})) === null || _prepareOptions2$find === void 0 ? void 0 : _prepareOptions2$find.isFreezed;
|
|
261
308
|
}), "chosenOptions");
|
|
262
309
|
if (isMobile ? closeOnRemoveAllMobile : closeOnRemoveAll) setIsOpen(false);
|
|
263
310
|
};
|
|
311
|
+
|
|
264
312
|
const getParentNode = () => {
|
|
265
313
|
var _ref8, _document$querySelect;
|
|
314
|
+
|
|
266
315
|
return (_ref8 = (_document$querySelect = document.querySelector("div#root")) !== null && _document$querySelect !== void 0 ? _document$querySelect : document.querySelector("div#app")) !== null && _ref8 !== void 0 ? _ref8 : document.querySelector("div#storybook-root");
|
|
267
316
|
};
|
|
317
|
+
|
|
268
318
|
const initListContainer = () => {
|
|
269
319
|
const dropdownList = document.createElement("div");
|
|
270
320
|
dropdownList.setAttribute("id", dropdownId);
|
|
271
321
|
dropdownList.classList.add("tags-dropdown__container");
|
|
322
|
+
|
|
272
323
|
if (isMobile) {
|
|
273
324
|
dropdownList.addEventListener("click", e => {
|
|
274
325
|
if (e.target.id === dropdownId) setIsOpen(false);
|
|
275
326
|
});
|
|
276
327
|
}
|
|
328
|
+
|
|
277
329
|
if (isMobile) {
|
|
278
330
|
var _getParentNode;
|
|
331
|
+
|
|
279
332
|
try {
|
|
280
333
|
var _document$getElementB;
|
|
281
|
-
|
|
282
|
-
// eslint-disable-next-line no-empty
|
|
334
|
+
|
|
335
|
+
(_document$getElementB = document.getElementById("mlw-".concat(dropdownId))) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.remove(); // eslint-disable-next-line no-empty
|
|
283
336
|
} catch (e) {}
|
|
337
|
+
|
|
284
338
|
const dropdownMobileListWrapper = document.createElement("div");
|
|
285
339
|
dropdownMobileListWrapper.classList.add("tags-dropdown-mobile");
|
|
286
340
|
dropdownMobileListWrapper.setAttribute("id", "mlw-".concat(dropdownId));
|
|
287
|
-
dropdownMobileListWrapper === null || dropdownMobileListWrapper === void 0
|
|
288
|
-
(_getParentNode = getParentNode()) === null || _getParentNode === void 0
|
|
341
|
+
dropdownMobileListWrapper === null || dropdownMobileListWrapper === void 0 ? void 0 : dropdownMobileListWrapper.append(dropdownList);
|
|
342
|
+
(_getParentNode = getParentNode()) === null || _getParentNode === void 0 ? void 0 : _getParentNode.append(dropdownMobileListWrapper);
|
|
289
343
|
} else {
|
|
290
344
|
var _getParentNode2;
|
|
291
|
-
|
|
345
|
+
|
|
346
|
+
(_getParentNode2 = getParentNode()) === null || _getParentNode2 === void 0 ? void 0 : _getParentNode2.append(dropdownList);
|
|
292
347
|
}
|
|
293
348
|
};
|
|
349
|
+
|
|
294
350
|
const getListContainer = () => {
|
|
295
351
|
return document.getElementById(dropdownId);
|
|
296
352
|
};
|
|
353
|
+
|
|
297
354
|
const getListContainerWrapper = () => {
|
|
298
355
|
return document.getElementById("mlw-".concat(dropdownId));
|
|
299
356
|
};
|
|
357
|
+
|
|
300
358
|
const setListContainerStyles = () => {
|
|
301
|
-
var _dropdownRef$current$, _dropdownRef$current, _getComputedStyle$mar, _getComputedStyle, _getComputedStyle$max, _getComputedStyle2, _dl$getBoundingClient, _sw$getBoundingClient, _sw$getBoundingClient2, _lh$getBoundingClient, _lf$getBoundingClient;
|
|
359
|
+
var _dropdownRef$current$, _dropdownRef$current, _getComputedStyle$mar, _getComputedStyle, _getComputedStyle$mar2, _getComputedStyle$max, _getComputedStyle2, _getComputedStyle2$ma, _dl$getBoundingClient, _sw$getBoundingClient, _sw$getBoundingClient2, _lh$getBoundingClient, _lf$getBoundingClient;
|
|
360
|
+
|
|
302
361
|
const lc = getListContainer();
|
|
303
362
|
if (!lc || !isOpen) return false;
|
|
304
363
|
const windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
|
|
@@ -307,75 +366,87 @@ const TagsDropdown = _ref => {
|
|
|
307
366
|
height,
|
|
308
367
|
left,
|
|
309
368
|
top
|
|
310
|
-
} = (_dropdownRef$current$ = dropdownRef === null || dropdownRef === void 0
|
|
369
|
+
} = (_dropdownRef$current$ = dropdownRef === null || dropdownRef === void 0 ? void 0 : (_dropdownRef$current = dropdownRef.current) === null || _dropdownRef$current === void 0 ? void 0 : _dropdownRef$current.getBoundingClientRect()) !== null && _dropdownRef$current$ !== void 0 ? _dropdownRef$current$ : {};
|
|
311
370
|
const sw = dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 ? void 0 : dropdownListWrapperRef.current;
|
|
312
371
|
const dl = lc.getElementsByClassName("tags-dropdown__list")[0];
|
|
313
372
|
const lh = sw === null || sw === void 0 ? void 0 : sw.getElementsByClassName("tags-dropdown__header")[0];
|
|
314
373
|
const lf = sw === null || sw === void 0 ? void 0 : sw.getElementsByClassName("tags-dropdown__footer")[0];
|
|
315
|
-
const margin = parseInt((_getComputedStyle$mar = (_getComputedStyle = getComputedStyle(sw)) === null || _getComputedStyle === void 0
|
|
316
|
-
const maxHeight = initListHeight !== null && initListHeight !== void 0 ? initListHeight : parseInt((_getComputedStyle$max = (_getComputedStyle2 = getComputedStyle(dl)) === null || _getComputedStyle2 === void 0
|
|
374
|
+
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);
|
|
375
|
+
const maxHeight = initListHeight !== null && initListHeight !== void 0 ? initListHeight : parseInt((_getComputedStyle$max = (_getComputedStyle2 = getComputedStyle(dl)) === 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);
|
|
317
376
|
if (initListHeight === null) setInitListHeight(maxHeight);
|
|
318
377
|
const toTop = top - margin;
|
|
319
378
|
const toBottom = windowHeight - top - height - margin * 2;
|
|
320
|
-
const dlHeight = dl === null || dl === void 0
|
|
321
|
-
let swHeight = sw === null || sw === void 0
|
|
379
|
+
const dlHeight = dl === null || dl === void 0 ? void 0 : (_dl$getBoundingClient = dl.getBoundingClientRect()) === null || _dl$getBoundingClient === void 0 ? void 0 : _dl$getBoundingClient.height;
|
|
380
|
+
let swHeight = sw === null || sw === void 0 ? void 0 : (_sw$getBoundingClient = sw.getBoundingClientRect()) === null || _sw$getBoundingClient === void 0 ? void 0 : _sw$getBoundingClient.height;
|
|
322
381
|
const controlsHeight = swHeight - dlHeight;
|
|
323
382
|
if (swHeight > maxHeight) swHeight = maxHeight - 2 * margin;
|
|
324
|
-
const maxSwHeight = (sw === null || sw === void 0
|
|
383
|
+
const maxSwHeight = (sw === null || sw === void 0 ? void 0 : (_sw$getBoundingClient2 = sw.getBoundingClientRect()) === null || _sw$getBoundingClient2 === void 0 ? void 0 : _sw$getBoundingClient2.height) - (lh === null || lh === void 0 ? void 0 : (_lh$getBoundingClient = lh.getBoundingClientRect()) === null || _lh$getBoundingClient === void 0 ? void 0 : _lh$getBoundingClient.height) - (lf === null || lf === void 0 ? void 0 : (_lf$getBoundingClient = lf.getBoundingClientRect()) === null || _lf$getBoundingClient === void 0 ? void 0 : _lf$getBoundingClient.height);
|
|
325
384
|
const listPos = toTop < toBottom || toBottom >= swHeight ? "bottom" : "top";
|
|
326
385
|
if (swHeight > (listPos === "top" ? toTop : toBottom)) swHeight = (listPos === "top" ? toTop : toBottom) - 3 * margin;
|
|
327
386
|
lc.style.minWidth = "".concat(width, "px");
|
|
328
387
|
lc.style.left = "".concat(left, "px");
|
|
329
388
|
lc.style.top = "".concat(listPos === "bottom" ? top + height : top - swHeight - 2 * margin, "px");
|
|
389
|
+
|
|
330
390
|
if (isMobile) {
|
|
331
391
|
dl.style.maxHeight = "".concat(maxSwHeight, "px");
|
|
332
392
|
}
|
|
333
393
|
};
|
|
394
|
+
|
|
334
395
|
const renderListContainer = () => {
|
|
335
396
|
const lc = getListContainer();
|
|
336
|
-
if (!lc) return null;
|
|
397
|
+
if (!lc) return null; // eslint-disable-next-line no-use-before-define
|
|
337
398
|
|
|
338
|
-
// eslint-disable-next-line no-use-before-define
|
|
339
399
|
return /*#__PURE__*/(0, _reactDom.createPortal)(getListMarkUp(), lc);
|
|
340
400
|
};
|
|
401
|
+
|
|
341
402
|
const isTargetInParent = target => {
|
|
342
403
|
var _target$className, _target$className$ind, _target$className2, _target$className2$in;
|
|
404
|
+
|
|
343
405
|
if ((target === null || target === void 0 ? void 0 : target.tagName) === "svg" && (target === null || target === void 0 ? void 0 : target.parentNodclassName) === "tag__button" || (target === null || target === void 0 ? void 0 : target.tagName) === "line") return false;
|
|
344
|
-
if ((target === null || target === void 0 ? void 0 : target.tagName) === "svg" && (target === null || target === void 0 ? void 0 : target.parentNodclassName) !== "tag__button" || (target === null || target === void 0
|
|
406
|
+
if ((target === null || target === void 0 ? void 0 : target.tagName) === "svg" && (target === null || target === void 0 ? void 0 : target.parentNodclassName) !== "tag__button" || (target === null || target === void 0 ? void 0 : (_target$className = target.className) === null || _target$className === void 0 ? void 0 : (_target$className$ind = _target$className.indexOf) === null || _target$className$ind === void 0 ? void 0 : _target$className$ind.call(_target$className, "tag__label")) !== -1 || (target === null || target === void 0 ? void 0 : (_target$className2 = target.className) === null || _target$className2 === void 0 ? void 0 : (_target$className2$in = _target$className2.indexOf) === null || _target$className2$in === void 0 ? void 0 : _target$className2$in.call(_target$className2, "tag-list_wrapper")) !== -1 || (target === null || target === void 0 ? void 0 : target.className) === "".concat(RC, "__trigger") || (target === null || target === void 0 ? void 0 : target.className) === "tags-dropdown__arrow") return true;
|
|
345
407
|
return false;
|
|
346
408
|
};
|
|
409
|
+
|
|
347
410
|
const isItemMatchesSearch = item => {
|
|
348
411
|
const title = item.title || item.label;
|
|
349
412
|
return searchValue.length ? title.toLowerCase().includes((searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase()) || "") : true;
|
|
350
413
|
};
|
|
414
|
+
|
|
351
415
|
const getFilteredOptions = options => options === null || options === void 0 ? void 0 : options.reduce((result, option) => {
|
|
352
416
|
if (option.groupName) {
|
|
353
417
|
var _option$list;
|
|
354
|
-
|
|
418
|
+
|
|
419
|
+
const filteredGroupItems = option === null || option === void 0 ? void 0 : (_option$list = option.list) === null || _option$list === void 0 ? void 0 : _option$list.filter(item => isItemMatchesSearch(item));
|
|
420
|
+
|
|
355
421
|
if (filteredGroupItems !== null && filteredGroupItems !== void 0 && filteredGroupItems.length) {
|
|
356
|
-
result.push({
|
|
357
|
-
...option,
|
|
422
|
+
result.push({ ...option,
|
|
358
423
|
list: filteredGroupItems
|
|
359
424
|
});
|
|
360
425
|
}
|
|
361
426
|
} else if (isItemMatchesSearch(option)) {
|
|
362
427
|
result.push(option);
|
|
363
428
|
}
|
|
429
|
+
|
|
364
430
|
return result;
|
|
365
431
|
}, []);
|
|
432
|
+
|
|
366
433
|
const getTotalOptions = (0, _react.useCallback)(() => {
|
|
367
434
|
return options === null || options === void 0 ? void 0 : options.reduce((result, item) => {
|
|
368
435
|
if (item !== null && item !== void 0 && item.list) {
|
|
369
436
|
var _item$list2;
|
|
370
|
-
|
|
437
|
+
|
|
438
|
+
result += (item === null || item === void 0 ? void 0 : (_item$list2 = item.list) === null || _item$list2 === void 0 ? void 0 : _item$list2.length) || 0;
|
|
371
439
|
} else {
|
|
372
440
|
++result;
|
|
373
441
|
}
|
|
442
|
+
|
|
374
443
|
return result;
|
|
375
444
|
}, 0);
|
|
376
445
|
}, [options]);
|
|
446
|
+
|
|
377
447
|
const getListMarkUp = () => {
|
|
378
448
|
var _filteredOptions$filt, _filteredOptions$filt2;
|
|
449
|
+
|
|
379
450
|
const filteredOptions = getFilteredOptions(options);
|
|
380
451
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
381
452
|
className: (0, _classnames.default)("".concat(RC, "__container-wrapper")),
|
|
@@ -425,9 +496,10 @@ const TagsDropdown = _ref => {
|
|
|
425
496
|
ref: dropdownListRef,
|
|
426
497
|
className: "".concat(RC, "__list ").concat(headerContent || isMobile ? "".concat(RC, "__list--with-header") : "", " ").concat(footerContent ? "".concat(RC, "__list--with-footer") : "")
|
|
427
498
|
}, filteredOptions === null || filteredOptions === void 0 ? void 0 : filteredOptions.map(option => {
|
|
428
|
-
var _option$groupName, _option$list2;
|
|
499
|
+
var _option$groupName, _option$groupName$toS, _option$list2;
|
|
500
|
+
|
|
429
501
|
return option.groupName ? /*#__PURE__*/_react.default.createElement("div", {
|
|
430
|
-
key: (_option$groupName = option.groupName) === null || _option$groupName === void 0
|
|
502
|
+
key: (_option$groupName = option.groupName) === null || _option$groupName === void 0 ? void 0 : (_option$groupName$toS = _option$groupName.toString()) === null || _option$groupName$toS === void 0 ? void 0 : _option$groupName$toS.replace(/ /g, "_").concat(Date.now()),
|
|
431
503
|
className: (0, _classnames.default)("".concat(RC, "-group"), option.className)
|
|
432
504
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
433
505
|
className: "".concat(RC, "-group__name")
|
|
@@ -453,11 +525,14 @@ const TagsDropdown = _ref => {
|
|
|
453
525
|
onClick: () => setIsOpen(false)
|
|
454
526
|
}, "Apply", chosenOptions !== null && chosenOptions !== void 0 && chosenOptions.length ? "(".concat(chosenOptions === null || chosenOptions === void 0 ? void 0 : chosenOptions.length, ")") : "")) : null));
|
|
455
527
|
};
|
|
528
|
+
|
|
456
529
|
const closeList = e => {
|
|
457
530
|
var _inputRef$current;
|
|
531
|
+
|
|
458
532
|
handleClickOutside(e);
|
|
459
|
-
inputRef === null || inputRef === void 0
|
|
533
|
+
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.blur();
|
|
460
534
|
};
|
|
535
|
+
|
|
461
536
|
(0, _react.useLayoutEffect)(() => {
|
|
462
537
|
initListContainer();
|
|
463
538
|
}, []);
|
|
@@ -471,6 +546,7 @@ const TagsDropdown = _ref => {
|
|
|
471
546
|
window.removeEventListener("mousewheel", closeList);
|
|
472
547
|
window.removeEventListener("mouseup", handleClickOutside);
|
|
473
548
|
}
|
|
549
|
+
|
|
474
550
|
return () => {
|
|
475
551
|
window.removeEventListener("resize", setListContainerStyles);
|
|
476
552
|
window.removeEventListener("mousewheel", closeList);
|
|
@@ -479,77 +555,94 @@ const TagsDropdown = _ref => {
|
|
|
479
555
|
}, [getListContainer]);
|
|
480
556
|
(0, _react.useLayoutEffect)(() => {
|
|
481
557
|
setListContainerStyles();
|
|
482
|
-
}, [isOpen, chosenOptions, isMobile, dropdownListWrapperRef === null || dropdownListWrapperRef === void 0
|
|
558
|
+
}, [isOpen, chosenOptions, isMobile, dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 ? void 0 : (_dropdownListWrapperR = dropdownListWrapperRef.current) === null || _dropdownListWrapperR === void 0 ? void 0 : (_dropdownListWrapperR2 = _dropdownListWrapperR.getBoundingClientRect()) === null || _dropdownListWrapperR2 === void 0 ? void 0 : _dropdownListWrapperR2.height]);
|
|
483
559
|
(0, _react.useEffect)(() => {
|
|
484
560
|
if (!isMobile) {
|
|
485
561
|
document.addEventListener("click", handleClickOutside, true);
|
|
486
562
|
} else {
|
|
487
563
|
document.removeEventListener("click", handleClickOutside, true);
|
|
488
564
|
}
|
|
565
|
+
|
|
489
566
|
return () => document.removeEventListener("click", handleClickOutside, true);
|
|
490
567
|
}, [isMobile]);
|
|
491
568
|
(0, _react.useEffect)(() => {
|
|
492
569
|
var _selectAllButtonRef$c, _unselectAllButtonRef;
|
|
570
|
+
|
|
493
571
|
const fn = isOpen ? "addEventListener" : "removeEventListener";
|
|
494
|
-
selectAllButtonRef === null || selectAllButtonRef === void 0
|
|
495
|
-
unselectAllButtonRef === null || unselectAllButtonRef === void 0
|
|
572
|
+
selectAllButtonRef === null || selectAllButtonRef === void 0 ? void 0 : (_selectAllButtonRef$c = selectAllButtonRef.current) === null || _selectAllButtonRef$c === void 0 ? void 0 : _selectAllButtonRef$c[fn]("click", selectAllItems, true);
|
|
573
|
+
unselectAllButtonRef === null || unselectAllButtonRef === void 0 ? void 0 : (_unselectAllButtonRef = unselectAllButtonRef.current) === null || _unselectAllButtonRef === void 0 ? void 0 : _unselectAllButtonRef[fn]("click", unselectAllItems, true);
|
|
574
|
+
|
|
496
575
|
if (isOpen) {
|
|
497
576
|
var _getListContainer2;
|
|
498
|
-
|
|
577
|
+
|
|
578
|
+
(_getListContainer2 = getListContainer()) === null || _getListContainer2 === void 0 ? void 0 : _getListContainer2.classList.add("tags-dropdown__container--opened");
|
|
499
579
|
} else {
|
|
500
580
|
var _getListContainer3;
|
|
501
|
-
|
|
581
|
+
|
|
582
|
+
(_getListContainer3 = getListContainer()) === null || _getListContainer3 === void 0 ? void 0 : _getListContainer3.classList.remove("tags-dropdown__container--opened");
|
|
502
583
|
}
|
|
503
584
|
}, [isOpen]);
|
|
504
585
|
(0, _react.useEffect)(() => {
|
|
505
586
|
if (isOpen && isMobile, dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
|
|
506
587
|
var _dropdownListRef$curr, _dropdownListRef$curr2;
|
|
507
|
-
|
|
588
|
+
|
|
589
|
+
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));
|
|
590
|
+
|
|
508
591
|
if (isScrollableList === null) {
|
|
509
592
|
var _dropdownListRef$curr3, _dropdownListRef$curr4;
|
|
510
|
-
|
|
593
|
+
|
|
594
|
+
setIsFixedMaxHeight((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));
|
|
511
595
|
}
|
|
512
596
|
}
|
|
597
|
+
|
|
513
598
|
if (isOpen && dropdownListRef && dropdownListRef.current) {
|
|
514
599
|
dropdownListRef.current.addEventListener("scroll", doScrollCallback);
|
|
515
600
|
}
|
|
601
|
+
|
|
516
602
|
return () => {
|
|
517
603
|
removeEventListener("scroll", doScrollCallback);
|
|
518
604
|
};
|
|
519
|
-
}, [isOpen, isMobile, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current, dropdownListRef === null || dropdownListRef === void 0
|
|
605
|
+
}, [isOpen, isMobile, 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]);
|
|
520
606
|
(0, _react.useEffect)(() => {
|
|
521
607
|
const setScrollTopValue = e => {
|
|
522
608
|
setScrollTop(parseInt(e.target.scrollTop, 10));
|
|
523
609
|
};
|
|
610
|
+
|
|
524
611
|
if (isOpen && isMobile && dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
|
|
525
612
|
var _dropdownListRef$curr7;
|
|
526
|
-
|
|
613
|
+
|
|
614
|
+
dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr7 = dropdownListRef.current) === null || _dropdownListRef$curr7 === void 0 ? void 0 : _dropdownListRef$curr7.addEventListener("scroll", setScrollTopValue);
|
|
527
615
|
}
|
|
616
|
+
|
|
528
617
|
return () => {
|
|
529
618
|
var _dropdownListRef$curr8;
|
|
530
|
-
|
|
619
|
+
|
|
620
|
+
dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr8 = dropdownListRef.current) === null || _dropdownListRef$curr8 === void 0 ? void 0 : _dropdownListRef$curr8.removeEventListener("scroll", setScrollTopValue);
|
|
531
621
|
};
|
|
532
622
|
}, [isOpen, isMobile, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current]);
|
|
533
623
|
(0, _react.useEffect)(() => {
|
|
534
624
|
if (dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
|
|
535
625
|
var _dropdownListRef$curr9, _dropdownListRef$curr10;
|
|
536
|
-
|
|
626
|
+
|
|
627
|
+
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));
|
|
537
628
|
}
|
|
538
629
|
}, [scrollTop, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current]);
|
|
539
630
|
(0, _react.useEffect)(() => {
|
|
540
631
|
return () => {
|
|
541
632
|
var _getListContainer4, _getListContainerWrap;
|
|
542
|
-
|
|
543
|
-
(
|
|
633
|
+
|
|
634
|
+
(_getListContainer4 = getListContainer()) === null || _getListContainer4 === void 0 ? void 0 : _getListContainer4.remove();
|
|
635
|
+
(_getListContainerWrap = getListContainerWrapper()) === null || _getListContainerWrap === void 0 ? void 0 : _getListContainerWrap.remove();
|
|
544
636
|
};
|
|
545
637
|
}, []);
|
|
546
638
|
(0, _react.useEffect)(() => {
|
|
547
639
|
if (isSearchable && useLiveSearch && debouncedSearchTerm || isValueDeleted) {
|
|
548
|
-
doLiveSearchRequest === null || doLiveSearchRequest === void 0
|
|
640
|
+
doLiveSearchRequest === null || doLiveSearchRequest === void 0 ? void 0 : doLiveSearchRequest(debouncedSearchTerm);
|
|
549
641
|
}
|
|
550
642
|
}, [debouncedSearchTerm, isValueDeleted]);
|
|
551
643
|
(0, _react.useLayoutEffect)(() => {
|
|
552
644
|
var _getListContainer5;
|
|
645
|
+
|
|
553
646
|
if (!isMobile) {
|
|
554
647
|
window.addEventListener("resize", setListContainerStyles);
|
|
555
648
|
window.addEventListener("mousewheel", closeList);
|
|
@@ -561,14 +654,16 @@ const TagsDropdown = _ref => {
|
|
|
561
654
|
window.removeEventListener("scroll", closeList);
|
|
562
655
|
window.removeEventListener("touchmove", closeList);
|
|
563
656
|
}
|
|
564
|
-
|
|
657
|
+
|
|
658
|
+
(_getListContainer5 = getListContainer()) === null || _getListContainer5 === void 0 ? void 0 : _getListContainer5.addEventListener("click", closeList);
|
|
565
659
|
return () => {
|
|
566
660
|
var _getListContainer6;
|
|
661
|
+
|
|
567
662
|
window.removeEventListener("resize", setListContainerStyles);
|
|
568
663
|
window.removeEventListener("mousewheel", closeList);
|
|
569
664
|
window.removeEventListener("scroll", closeList);
|
|
570
665
|
window.removeEventListener("touchmove", closeList);
|
|
571
|
-
(_getListContainer6 = getListContainer()) === null || _getListContainer6 === void 0
|
|
666
|
+
(_getListContainer6 = getListContainer()) === null || _getListContainer6 === void 0 ? void 0 : _getListContainer6.removeEventListener("click", closeList);
|
|
572
667
|
};
|
|
573
668
|
}, [getListContainer]);
|
|
574
669
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -622,7 +717,8 @@ const TagsDropdown = _ref => {
|
|
|
622
717
|
onKeyDown: e => onKeyPress(e, searchValue),
|
|
623
718
|
onFocus: e => {
|
|
624
719
|
var _e$target;
|
|
625
|
-
|
|
720
|
+
|
|
721
|
+
if (isMobile) e === null || e === void 0 ? void 0 : (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.blur();
|
|
626
722
|
}
|
|
627
723
|
}, attributesOfNativeInput)) : "", isOpen && renderListContainer(), /*#__PURE__*/_react.default.createElement("span", {
|
|
628
724
|
className: (0, _classnames.default)("".concat(RC, "__arrow"), {
|
|
@@ -636,4 +732,6 @@ const TagsDropdown = _ref => {
|
|
|
636
732
|
className: "color--text"
|
|
637
733
|
}))));
|
|
638
734
|
};
|
|
639
|
-
|
|
735
|
+
|
|
736
|
+
var _default = TagsDropdown;
|
|
737
|
+
exports.default = _default;
|