intelicoreact 1.3.83 → 1.3.85
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 +144 -51
- 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 +29 -6
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +43 -8
- 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 +46 -16
- 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 +180 -53
- 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 +151 -55
- 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 +19 -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 +31 -5
- package/dist/Atomic/UI/Hint/Hint.scss +1 -3
- 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 +174 -0
- package/dist/Atomic/UI/ModalBackup/Modal.scss +333 -0
- package/dist/Atomic/UI/ModalBackup/ModalHOC.js +51 -0
- package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +24 -0
- package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +41 -0
- 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 +44 -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 +32 -24
- package/dist/Classes/RESTAPI/partials/ApiUtils.js +38 -29
- 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 +13 -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/useMediaQuery.js +9 -3
- 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 +131 -56
- 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,14 +206,18 @@ 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
223
|
return /*#__PURE__*/_react.default.createElement("pre", {
|
|
@@ -187,8 +226,9 @@ const TagsDropdown = _ref => {
|
|
|
187
226
|
className: "search-match bg--yellow"
|
|
188
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))));
|
|
189
228
|
};
|
|
229
|
+
|
|
190
230
|
return /*#__PURE__*/_react.default.createElement("button", {
|
|
191
|
-
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, "_"),
|
|
192
232
|
onClick: e => {
|
|
193
233
|
e.preventDefault();
|
|
194
234
|
e.stopPropagation();
|
|
@@ -222,11 +262,14 @@ const TagsDropdown = _ref => {
|
|
|
222
262
|
}
|
|
223
263
|
}) : "");
|
|
224
264
|
};
|
|
265
|
+
|
|
225
266
|
const prepareOptions = options => {
|
|
226
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();
|
|
227
268
|
};
|
|
269
|
+
|
|
228
270
|
const selectAllItems = () => {
|
|
229
271
|
var _prepareOptions;
|
|
272
|
+
|
|
230
273
|
const preparedOptions = (_prepareOptions = prepareOptions(options)) === null || _prepareOptions === void 0 ? void 0 : _prepareOptions.filter(_ref4 => {
|
|
231
274
|
let {
|
|
232
275
|
isFreezed,
|
|
@@ -250,57 +293,71 @@ const TagsDropdown = _ref => {
|
|
|
250
293
|
})) || [])], "chosenOptions");
|
|
251
294
|
if (isMobile ? closeOnSelectAllMobile : closeOnSelectAll) setIsOpen(false);
|
|
252
295
|
};
|
|
296
|
+
|
|
253
297
|
const unselectAllItems = () => {
|
|
254
298
|
setLocalOptionsStore({});
|
|
255
299
|
onChange(chosenOptions === null || chosenOptions === void 0 ? void 0 : chosenOptions.filter(item => {
|
|
256
|
-
var _prepareOptions2;
|
|
257
|
-
|
|
300
|
+
var _prepareOptions2, _prepareOptions2$find;
|
|
301
|
+
|
|
302
|
+
return (_prepareOptions2 = prepareOptions(options)) === null || _prepareOptions2 === void 0 ? void 0 : (_prepareOptions2$find = _prepareOptions2.find(_ref7 => {
|
|
258
303
|
let {
|
|
259
304
|
value
|
|
260
305
|
} = _ref7;
|
|
261
306
|
return value === item;
|
|
262
|
-
})) === null || _prepareOptions2 === void 0 ? void 0 : _prepareOptions2.isFreezed;
|
|
307
|
+
})) === null || _prepareOptions2$find === void 0 ? void 0 : _prepareOptions2$find.isFreezed;
|
|
263
308
|
}), "chosenOptions");
|
|
264
309
|
if (isMobile ? closeOnRemoveAllMobile : closeOnRemoveAll) setIsOpen(false);
|
|
265
310
|
};
|
|
311
|
+
|
|
266
312
|
const getParentNode = () => {
|
|
267
313
|
var _ref8, _document$querySelect;
|
|
314
|
+
|
|
268
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");
|
|
269
316
|
};
|
|
317
|
+
|
|
270
318
|
const initListContainer = () => {
|
|
271
319
|
const dropdownList = document.createElement("div");
|
|
272
320
|
dropdownList.setAttribute("id", dropdownId);
|
|
273
321
|
dropdownList.classList.add("tags-dropdown__container");
|
|
322
|
+
|
|
274
323
|
if (isMobile) {
|
|
275
324
|
dropdownList.addEventListener("click", e => {
|
|
276
325
|
if (e.target.id === dropdownId) setIsOpen(false);
|
|
277
326
|
});
|
|
278
327
|
}
|
|
328
|
+
|
|
279
329
|
if (isMobile) {
|
|
280
330
|
var _getParentNode;
|
|
331
|
+
|
|
281
332
|
try {
|
|
282
333
|
var _document$getElementB;
|
|
283
|
-
|
|
284
|
-
// 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
|
|
285
336
|
} catch (e) {}
|
|
337
|
+
|
|
286
338
|
const dropdownMobileListWrapper = document.createElement("div");
|
|
287
339
|
dropdownMobileListWrapper.classList.add("tags-dropdown-mobile");
|
|
288
340
|
dropdownMobileListWrapper.setAttribute("id", "mlw-".concat(dropdownId));
|
|
289
|
-
dropdownMobileListWrapper === null || dropdownMobileListWrapper === void 0
|
|
290
|
-
(_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);
|
|
291
343
|
} else {
|
|
292
344
|
var _getParentNode2;
|
|
293
|
-
|
|
345
|
+
|
|
346
|
+
(_getParentNode2 = getParentNode()) === null || _getParentNode2 === void 0 ? void 0 : _getParentNode2.append(dropdownList);
|
|
294
347
|
}
|
|
295
348
|
};
|
|
349
|
+
|
|
296
350
|
const getListContainer = () => {
|
|
297
351
|
return document.getElementById(dropdownId);
|
|
298
352
|
};
|
|
353
|
+
|
|
299
354
|
const getListContainerWrapper = () => {
|
|
300
355
|
return document.getElementById("mlw-".concat(dropdownId));
|
|
301
356
|
};
|
|
357
|
+
|
|
302
358
|
const setListContainerStyles = () => {
|
|
303
|
-
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
|
+
|
|
304
361
|
const lc = getListContainer();
|
|
305
362
|
if (!lc || !isOpen) return false;
|
|
306
363
|
const windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
|
|
@@ -309,75 +366,87 @@ const TagsDropdown = _ref => {
|
|
|
309
366
|
height,
|
|
310
367
|
left,
|
|
311
368
|
top
|
|
312
|
-
} = (_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$ : {};
|
|
313
370
|
const sw = dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 ? void 0 : dropdownListWrapperRef.current;
|
|
314
371
|
const dl = lc.getElementsByClassName("tags-dropdown__list")[0];
|
|
315
372
|
const lh = sw === null || sw === void 0 ? void 0 : sw.getElementsByClassName("tags-dropdown__header")[0];
|
|
316
373
|
const lf = sw === null || sw === void 0 ? void 0 : sw.getElementsByClassName("tags-dropdown__footer")[0];
|
|
317
|
-
const margin = parseInt((_getComputedStyle$mar = (_getComputedStyle = getComputedStyle(sw)) === null || _getComputedStyle === void 0
|
|
318
|
-
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);
|
|
319
376
|
if (initListHeight === null) setInitListHeight(maxHeight);
|
|
320
377
|
const toTop = top - margin;
|
|
321
378
|
const toBottom = windowHeight - top - height - margin * 2;
|
|
322
|
-
const dlHeight = dl === null || dl === void 0
|
|
323
|
-
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;
|
|
324
381
|
const controlsHeight = swHeight - dlHeight;
|
|
325
382
|
if (swHeight > maxHeight) swHeight = maxHeight - 2 * margin;
|
|
326
|
-
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);
|
|
327
384
|
const listPos = toTop < toBottom || toBottom >= swHeight ? "bottom" : "top";
|
|
328
385
|
if (swHeight > (listPos === "top" ? toTop : toBottom)) swHeight = (listPos === "top" ? toTop : toBottom) - 3 * margin;
|
|
329
386
|
lc.style.minWidth = "".concat(width, "px");
|
|
330
387
|
lc.style.left = "".concat(left, "px");
|
|
331
388
|
lc.style.top = "".concat(listPos === "bottom" ? top + height : top - swHeight - 2 * margin, "px");
|
|
389
|
+
|
|
332
390
|
if (isMobile) {
|
|
333
391
|
dl.style.maxHeight = "".concat(maxSwHeight, "px");
|
|
334
392
|
}
|
|
335
393
|
};
|
|
394
|
+
|
|
336
395
|
const renderListContainer = () => {
|
|
337
396
|
const lc = getListContainer();
|
|
338
|
-
if (!lc) return null;
|
|
397
|
+
if (!lc) return null; // eslint-disable-next-line no-use-before-define
|
|
339
398
|
|
|
340
|
-
// eslint-disable-next-line no-use-before-define
|
|
341
399
|
return /*#__PURE__*/(0, _reactDom.createPortal)(getListMarkUp(), lc);
|
|
342
400
|
};
|
|
401
|
+
|
|
343
402
|
const isTargetInParent = target => {
|
|
344
403
|
var _target$className, _target$className$ind, _target$className2, _target$className2$in;
|
|
404
|
+
|
|
345
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;
|
|
346
|
-
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;
|
|
347
407
|
return false;
|
|
348
408
|
};
|
|
409
|
+
|
|
349
410
|
const isItemMatchesSearch = item => {
|
|
350
411
|
const title = item.title || item.label;
|
|
351
412
|
return searchValue.length ? title.toLowerCase().includes((searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase()) || "") : true;
|
|
352
413
|
};
|
|
414
|
+
|
|
353
415
|
const getFilteredOptions = options => options === null || options === void 0 ? void 0 : options.reduce((result, option) => {
|
|
354
416
|
if (option.groupName) {
|
|
355
417
|
var _option$list;
|
|
356
|
-
|
|
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
|
+
|
|
357
421
|
if (filteredGroupItems !== null && filteredGroupItems !== void 0 && filteredGroupItems.length) {
|
|
358
|
-
result.push({
|
|
359
|
-
...option,
|
|
422
|
+
result.push({ ...option,
|
|
360
423
|
list: filteredGroupItems
|
|
361
424
|
});
|
|
362
425
|
}
|
|
363
426
|
} else if (isItemMatchesSearch(option)) {
|
|
364
427
|
result.push(option);
|
|
365
428
|
}
|
|
429
|
+
|
|
366
430
|
return result;
|
|
367
431
|
}, []);
|
|
432
|
+
|
|
368
433
|
const getTotalOptions = (0, _react.useCallback)(() => {
|
|
369
434
|
return options === null || options === void 0 ? void 0 : options.reduce((result, item) => {
|
|
370
435
|
if (item !== null && item !== void 0 && item.list) {
|
|
371
436
|
var _item$list2;
|
|
372
|
-
|
|
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;
|
|
373
439
|
} else {
|
|
374
440
|
++result;
|
|
375
441
|
}
|
|
442
|
+
|
|
376
443
|
return result;
|
|
377
444
|
}, 0);
|
|
378
445
|
}, [options]);
|
|
446
|
+
|
|
379
447
|
const getListMarkUp = () => {
|
|
380
448
|
var _filteredOptions$filt, _filteredOptions$filt2;
|
|
449
|
+
|
|
381
450
|
const filteredOptions = getFilteredOptions(options);
|
|
382
451
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
383
452
|
className: (0, _classnames.default)("".concat(RC, "__container-wrapper")),
|
|
@@ -427,9 +496,10 @@ const TagsDropdown = _ref => {
|
|
|
427
496
|
ref: dropdownListRef,
|
|
428
497
|
className: "".concat(RC, "__list ").concat(headerContent || isMobile ? "".concat(RC, "__list--with-header") : "", " ").concat(footerContent ? "".concat(RC, "__list--with-footer") : "")
|
|
429
498
|
}, filteredOptions === null || filteredOptions === void 0 ? void 0 : filteredOptions.map(option => {
|
|
430
|
-
var _option$groupName, _option$list2;
|
|
499
|
+
var _option$groupName, _option$groupName$toS, _option$list2;
|
|
500
|
+
|
|
431
501
|
return option.groupName ? /*#__PURE__*/_react.default.createElement("div", {
|
|
432
|
-
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()),
|
|
433
503
|
className: (0, _classnames.default)("".concat(RC, "-group"), option.className)
|
|
434
504
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
435
505
|
className: "".concat(RC, "-group__name")
|
|
@@ -455,11 +525,14 @@ const TagsDropdown = _ref => {
|
|
|
455
525
|
onClick: () => setIsOpen(false)
|
|
456
526
|
}, "Apply", chosenOptions !== null && chosenOptions !== void 0 && chosenOptions.length ? "(".concat(chosenOptions === null || chosenOptions === void 0 ? void 0 : chosenOptions.length, ")") : "")) : null));
|
|
457
527
|
};
|
|
528
|
+
|
|
458
529
|
const closeList = e => {
|
|
459
530
|
var _inputRef$current;
|
|
531
|
+
|
|
460
532
|
handleClickOutside(e);
|
|
461
|
-
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();
|
|
462
534
|
};
|
|
535
|
+
|
|
463
536
|
(0, _react.useLayoutEffect)(() => {
|
|
464
537
|
initListContainer();
|
|
465
538
|
}, []);
|
|
@@ -473,6 +546,7 @@ const TagsDropdown = _ref => {
|
|
|
473
546
|
window.removeEventListener("mousewheel", closeList);
|
|
474
547
|
window.removeEventListener("mouseup", handleClickOutside);
|
|
475
548
|
}
|
|
549
|
+
|
|
476
550
|
return () => {
|
|
477
551
|
window.removeEventListener("resize", setListContainerStyles);
|
|
478
552
|
window.removeEventListener("mousewheel", closeList);
|
|
@@ -481,77 +555,94 @@ const TagsDropdown = _ref => {
|
|
|
481
555
|
}, [getListContainer]);
|
|
482
556
|
(0, _react.useLayoutEffect)(() => {
|
|
483
557
|
setListContainerStyles();
|
|
484
|
-
}, [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]);
|
|
485
559
|
(0, _react.useEffect)(() => {
|
|
486
560
|
if (!isMobile) {
|
|
487
561
|
document.addEventListener("click", handleClickOutside, true);
|
|
488
562
|
} else {
|
|
489
563
|
document.removeEventListener("click", handleClickOutside, true);
|
|
490
564
|
}
|
|
565
|
+
|
|
491
566
|
return () => document.removeEventListener("click", handleClickOutside, true);
|
|
492
567
|
}, [isMobile]);
|
|
493
568
|
(0, _react.useEffect)(() => {
|
|
494
569
|
var _selectAllButtonRef$c, _unselectAllButtonRef;
|
|
570
|
+
|
|
495
571
|
const fn = isOpen ? "addEventListener" : "removeEventListener";
|
|
496
|
-
selectAllButtonRef === null || selectAllButtonRef === void 0
|
|
497
|
-
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
|
+
|
|
498
575
|
if (isOpen) {
|
|
499
576
|
var _getListContainer2;
|
|
500
|
-
|
|
577
|
+
|
|
578
|
+
(_getListContainer2 = getListContainer()) === null || _getListContainer2 === void 0 ? void 0 : _getListContainer2.classList.add("tags-dropdown__container--opened");
|
|
501
579
|
} else {
|
|
502
580
|
var _getListContainer3;
|
|
503
|
-
|
|
581
|
+
|
|
582
|
+
(_getListContainer3 = getListContainer()) === null || _getListContainer3 === void 0 ? void 0 : _getListContainer3.classList.remove("tags-dropdown__container--opened");
|
|
504
583
|
}
|
|
505
584
|
}, [isOpen]);
|
|
506
585
|
(0, _react.useEffect)(() => {
|
|
507
586
|
if (isOpen && isMobile, dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
|
|
508
587
|
var _dropdownListRef$curr, _dropdownListRef$curr2;
|
|
509
|
-
|
|
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
|
+
|
|
510
591
|
if (isScrollableList === null) {
|
|
511
592
|
var _dropdownListRef$curr3, _dropdownListRef$curr4;
|
|
512
|
-
|
|
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));
|
|
513
595
|
}
|
|
514
596
|
}
|
|
597
|
+
|
|
515
598
|
if (isOpen && dropdownListRef && dropdownListRef.current) {
|
|
516
599
|
dropdownListRef.current.addEventListener("scroll", doScrollCallback);
|
|
517
600
|
}
|
|
601
|
+
|
|
518
602
|
return () => {
|
|
519
603
|
removeEventListener("scroll", doScrollCallback);
|
|
520
604
|
};
|
|
521
|
-
}, [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]);
|
|
522
606
|
(0, _react.useEffect)(() => {
|
|
523
607
|
const setScrollTopValue = e => {
|
|
524
608
|
setScrollTop(parseInt(e.target.scrollTop, 10));
|
|
525
609
|
};
|
|
610
|
+
|
|
526
611
|
if (isOpen && isMobile && dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
|
|
527
612
|
var _dropdownListRef$curr7;
|
|
528
|
-
|
|
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);
|
|
529
615
|
}
|
|
616
|
+
|
|
530
617
|
return () => {
|
|
531
618
|
var _dropdownListRef$curr8;
|
|
532
|
-
|
|
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);
|
|
533
621
|
};
|
|
534
622
|
}, [isOpen, isMobile, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current]);
|
|
535
623
|
(0, _react.useEffect)(() => {
|
|
536
624
|
if (dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
|
|
537
625
|
var _dropdownListRef$curr9, _dropdownListRef$curr10;
|
|
538
|
-
|
|
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));
|
|
539
628
|
}
|
|
540
629
|
}, [scrollTop, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current]);
|
|
541
630
|
(0, _react.useEffect)(() => {
|
|
542
631
|
return () => {
|
|
543
632
|
var _getListContainer4, _getListContainerWrap;
|
|
544
|
-
|
|
545
|
-
(
|
|
633
|
+
|
|
634
|
+
(_getListContainer4 = getListContainer()) === null || _getListContainer4 === void 0 ? void 0 : _getListContainer4.remove();
|
|
635
|
+
(_getListContainerWrap = getListContainerWrapper()) === null || _getListContainerWrap === void 0 ? void 0 : _getListContainerWrap.remove();
|
|
546
636
|
};
|
|
547
637
|
}, []);
|
|
548
638
|
(0, _react.useEffect)(() => {
|
|
549
639
|
if (isSearchable && useLiveSearch && debouncedSearchTerm || isValueDeleted) {
|
|
550
|
-
doLiveSearchRequest === null || doLiveSearchRequest === void 0
|
|
640
|
+
doLiveSearchRequest === null || doLiveSearchRequest === void 0 ? void 0 : doLiveSearchRequest(debouncedSearchTerm);
|
|
551
641
|
}
|
|
552
642
|
}, [debouncedSearchTerm, isValueDeleted]);
|
|
553
643
|
(0, _react.useLayoutEffect)(() => {
|
|
554
644
|
var _getListContainer5;
|
|
645
|
+
|
|
555
646
|
if (!isMobile) {
|
|
556
647
|
window.addEventListener("resize", setListContainerStyles);
|
|
557
648
|
window.addEventListener("mousewheel", closeList);
|
|
@@ -563,14 +654,16 @@ const TagsDropdown = _ref => {
|
|
|
563
654
|
window.removeEventListener("scroll", closeList);
|
|
564
655
|
window.removeEventListener("touchmove", closeList);
|
|
565
656
|
}
|
|
566
|
-
|
|
657
|
+
|
|
658
|
+
(_getListContainer5 = getListContainer()) === null || _getListContainer5 === void 0 ? void 0 : _getListContainer5.addEventListener("click", closeList);
|
|
567
659
|
return () => {
|
|
568
660
|
var _getListContainer6;
|
|
661
|
+
|
|
569
662
|
window.removeEventListener("resize", setListContainerStyles);
|
|
570
663
|
window.removeEventListener("mousewheel", closeList);
|
|
571
664
|
window.removeEventListener("scroll", closeList);
|
|
572
665
|
window.removeEventListener("touchmove", closeList);
|
|
573
|
-
(_getListContainer6 = getListContainer()) === null || _getListContainer6 === void 0
|
|
666
|
+
(_getListContainer6 = getListContainer()) === null || _getListContainer6 === void 0 ? void 0 : _getListContainer6.removeEventListener("click", closeList);
|
|
574
667
|
};
|
|
575
668
|
}, [getListContainer]);
|
|
576
669
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -624,7 +717,8 @@ const TagsDropdown = _ref => {
|
|
|
624
717
|
onKeyDown: e => onKeyPress(e, searchValue),
|
|
625
718
|
onFocus: e => {
|
|
626
719
|
var _e$target;
|
|
627
|
-
|
|
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();
|
|
628
722
|
}
|
|
629
723
|
}, attributesOfNativeInput)) : "", isOpen && renderListContainer(), /*#__PURE__*/_react.default.createElement("span", {
|
|
630
724
|
className: (0, _classnames.default)("".concat(RC, "__arrow"), {
|
|
@@ -638,4 +732,6 @@ const TagsDropdown = _ref => {
|
|
|
638
732
|
className: "color--text"
|
|
639
733
|
}))));
|
|
640
734
|
};
|
|
641
|
-
|
|
735
|
+
|
|
736
|
+
var _default = TagsDropdown;
|
|
737
|
+
exports.default = _default;
|