intelicoreact 1.4.45 → 1.4.46
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 +1 -9
- package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +1 -10
- package/dist/Atomic/FormElements/Calendar/Calendar.js +4 -24
- package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +1 -10
- package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +2 -14
- package/dist/Atomic/FormElements/Datepicker/Datepicker.js +5 -54
- package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +3 -21
- package/dist/Atomic/FormElements/Dropdown/Dropdown.js +52 -145
- package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +1 -7
- package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +25 -91
- package/dist/Atomic/FormElements/FileLoader/FileLoader.js +3 -15
- package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +15 -29
- package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +5 -15
- package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +6 -26
- package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +19 -35
- package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +9 -38
- package/dist/Atomic/FormElements/Input/Input.js +25 -60
- package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +4 -31
- package/dist/Atomic/FormElements/InputColor/InputColor.js +4 -14
- package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +6 -29
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +8 -43
- package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +3 -21
- package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +58 -81
- package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +6 -41
- package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +1 -8
- package/dist/Atomic/FormElements/InputDateRange/dependencies.js +16 -46
- package/dist/Atomic/FormElements/InputLink/InputLink.js +6 -23
- package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +0 -4
- package/dist/Atomic/FormElements/InputMask/InputMask.js +77 -208
- package/dist/Atomic/FormElements/InputMask/functions.js +2 -28
- package/dist/Atomic/FormElements/InputMask2/InputMask2.js +43 -119
- package/dist/Atomic/FormElements/InputMask2/functions.js +2 -28
- package/dist/Atomic/FormElements/InputMask3/InputMask3.js +44 -137
- package/dist/Atomic/FormElements/InputMask3/functions.js +2 -28
- package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +3 -17
- package/dist/Atomic/FormElements/InputsRow/InputsRow.js +5 -24
- package/dist/Atomic/FormElements/Label/Label.js +1 -9
- package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +35 -73
- package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +3 -15
- package/dist/Atomic/FormElements/NumericInput/NumericInput.js +23 -44
- package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +7 -17
- package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +3 -14
- package/dist/Atomic/FormElements/RadioInput/RadioInput.js +1 -10
- package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +3 -14
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +3 -23
- package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +17 -34
- package/dist/Atomic/FormElements/RangeList/RangeList.js +6 -25
- package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +1 -11
- package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +14 -85
- package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +43 -132
- package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +1 -10
- package/dist/Atomic/FormElements/Switcher/Switcher.js +1 -10
- package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +1 -13
- package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +1 -10
- package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +2 -17
- package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +3 -17
- package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +1 -11
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +6 -29
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +2 -3
- package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +1 -12
- package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +6 -23
- package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +104 -217
- package/dist/Atomic/FormElements/Text/Text.js +10 -16
- package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +1 -9
- package/dist/Atomic/FormElements/Textarea/Textarea.js +5 -16
- package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +6 -35
- package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +4 -13
- package/dist/Atomic/FormElements/TimeRange/TimeRange.js +7 -21
- package/dist/Atomic/FormElements/UserContacts/UserContacts.js +8 -35
- package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +5 -18
- package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +3 -10
- package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +3 -11
- package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +1 -2
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +5 -12
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
- package/dist/Atomic/Layout/Header/Header.js +3 -15
- package/dist/Atomic/Layout/MainMenu/MainMenu.js +3 -20
- package/dist/Atomic/Layout/Spinner/Spinner.js +1 -8
- package/dist/Atomic/UI/Accordion/Accordion.js +3 -19
- package/dist/Atomic/UI/Accordion/AccordionItem.js +9 -23
- package/dist/Atomic/UI/AccordionTable/AccordionTable.js +7 -32
- package/dist/Atomic/UI/AccordionText/AccordionText.js +3 -15
- package/dist/Atomic/UI/AdvancedTag/AdvTag.js +4 -21
- package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +3 -15
- package/dist/Atomic/UI/Alert/Alert.js +3 -19
- package/dist/Atomic/UI/Arrow/Arrow.js +3 -16
- package/dist/Atomic/UI/Box/Box.js +3 -9
- package/dist/Atomic/UI/Button/Button.js +2 -11
- package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +1 -10
- package/dist/Atomic/UI/Chart/Chart.js +4 -29
- package/dist/Atomic/UI/Chart/partial/Chart.constants.js +11 -19
- package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +1 -12
- package/dist/Atomic/UI/Chart/partial/datasetSetters.js +11 -34
- package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +82 -56
- package/dist/Atomic/UI/Chart/partial/optionsSetters.js +15 -19
- package/dist/Atomic/UI/Chart/partial/utils.js +6 -20
- package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +3 -13
- package/dist/Atomic/UI/DateTime/DateTime.js +3 -14
- package/dist/Atomic/UI/DebugContainer/DebugContainer.js +4 -16
- package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +3 -11
- package/dist/Atomic/UI/DoubleString/DoubleString.js +5 -17
- package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +3 -10
- package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +17 -52
- package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +1 -29
- package/dist/Atomic/UI/Hint/Hint.js +5 -31
- package/dist/Atomic/UI/Modal/Modal.js +6 -28
- package/dist/Atomic/UI/Modal/ModalHOC.js +1 -9
- package/dist/Atomic/UI/Modal/partials/ModalFooter.js +1 -7
- package/dist/Atomic/UI/Modal/partials/ModalTitle.js +1 -8
- package/dist/Atomic/UI/Modal/partials/useMobileModal.js +32 -49
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +6 -21
- package/dist/Atomic/UI/NavLine/NavLine.js +26 -55
- package/dist/Atomic/UI/NavLine/Tabs.js +2 -3
- package/dist/Atomic/UI/PageTitle/PageTitle.js +2 -10
- package/dist/Atomic/UI/PieChart/PieChart.js +1 -10
- package/dist/Atomic/UI/Price/Price.js +3 -8
- package/dist/Atomic/UI/PriceRange/PriceRange.js +1 -7
- package/dist/Atomic/UI/ProgressLine/ProgressLine.js +1 -16
- package/dist/Atomic/UI/Status/Status.js +1 -8
- package/dist/Atomic/UI/Table/Partials/TdCell.js +5 -29
- package/dist/Atomic/UI/Table/Partials/TdHeader.js +1 -11
- package/dist/Atomic/UI/Table/Partials/TdRow.js +5 -17
- package/dist/Atomic/UI/Table/Partials/TdTitle.js +3 -14
- package/dist/Atomic/UI/Table/Table.js +1 -12
- package/dist/Atomic/UI/Table/TdTypes/TdActions.js +2 -18
- package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +1 -9
- package/dist/Atomic/UI/Table/TdTypes/TdRange.js +1 -4
- package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +1 -13
- package/dist/Atomic/UI/Tag/Tag.js +11 -26
- package/dist/Atomic/UI/TagList/TagList.js +18 -41
- package/dist/Atomic/UI/UserBox/UserBox.js +1 -13
- package/dist/Classes/AbortableFetch.js +36 -93
- package/dist/Classes/AnimatedHandler.js +3 -7
- package/dist/Classes/RESTAPI/index.js +39 -42
- package/dist/Classes/RESTAPI/partials/AbortableFetch.js +35 -93
- package/dist/Classes/RESTAPI/partials/ApiBase.js +1 -9
- package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +24 -32
- package/dist/Classes/RESTAPI/partials/ApiUtils.js +34 -41
- package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +21 -44
- package/dist/Classes/RESTAPI/partials/Utils.js +6 -19
- package/dist/Classes/RESTAPI/partials/_outerDependencies.js +2 -6
- package/dist/Classes/RESTAPI/partials/_utils.js +13 -36
- package/dist/Constants/index.constants.js +8 -15
- package/dist/Functions/Portal.js +5 -16
- package/dist/Functions/customEventListener.js +4 -17
- package/dist/Functions/fieldValueFormatters.js +43 -83
- package/dist/Functions/hooks/useFormFieldsChangesManager.js +23 -26
- package/dist/Functions/locale/createTranslator.js +4 -9
- package/dist/Functions/operations.js +12 -22
- package/dist/Functions/presets/inputMaskPresets.js +9 -11
- package/dist/Functions/presets/inputPresets.js +8 -11
- package/dist/Functions/presets/mobileKeyboardTypesPresets.js +7 -9
- package/dist/Functions/schemas.js +6 -13
- package/dist/Functions/useBodyScrollLock.js +1 -6
- package/dist/Functions/useClickOutside.js +0 -4
- package/dist/Functions/useDebounce.js +2 -7
- package/dist/Functions/useFieldFocus.js +6 -18
- package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +0 -9
- package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +12 -23
- package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +6 -15
- package/dist/Functions/useFormTools/functions/General.js +18 -28
- package/dist/Functions/useFormTools/functions/RenderFields.js +2 -11
- package/dist/Functions/useFormTools/functions/usePrevious.js +1 -5
- package/dist/Functions/useFormTools/index.js +85 -144
- package/dist/Functions/useInputHighlightError.js +3 -12
- package/dist/Functions/useIsMobile.js +7 -13
- package/dist/Functions/useKeyPress/useHandleKeyPress.js +1 -7
- package/dist/Functions/useKeyPress/useKeyPress.js +1 -9
- package/dist/Functions/useLocalStorage.js +1 -9
- package/dist/Functions/useLocationParams.js +4 -5
- package/dist/Functions/useMediaQuery.js +3 -9
- package/dist/Functions/useMetaInfo.js +3 -10
- package/dist/Functions/useMouseUpOutside.js +0 -3
- package/dist/Functions/useOnlineStatus.js +1 -9
- package/dist/Functions/usePasswordChecker.js +4 -20
- package/dist/Functions/usePrevious.js +1 -5
- package/dist/Functions/useResize.js +2 -10
- package/dist/Functions/useScrollTo.js +2 -7
- package/dist/Functions/useToggle.js +1 -5
- package/dist/Functions/utils.js +56 -131
- package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +2 -9
- package/dist/Molecular/CustomIcons/components/AlertCircle.js +2 -9
- package/dist/Molecular/CustomIcons/components/AppStore.js +2 -9
- package/dist/Molecular/CustomIcons/components/Arrow.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowDown.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowLeft.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowRight.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowUp.js +2 -9
- package/dist/Molecular/CustomIcons/components/Bell.js +2 -9
- package/dist/Molecular/CustomIcons/components/Button.js +2 -9
- package/dist/Molecular/CustomIcons/components/Campaigns.js +2 -9
- package/dist/Molecular/CustomIcons/components/Check.js +2 -9
- package/dist/Molecular/CustomIcons/components/Check2.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronDown.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronLeft.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronRight.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronUp.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +2 -9
- package/dist/Molecular/CustomIcons/components/Close.js +2 -9
- package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +2 -9
- package/dist/Molecular/CustomIcons/components/Delete.js +2 -9
- package/dist/Molecular/CustomIcons/components/Edit.js +2 -9
- package/dist/Molecular/CustomIcons/components/Email.js +2 -9
- package/dist/Molecular/CustomIcons/components/FinturfLogo.js +2 -9
- package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +2 -9
- package/dist/Molecular/CustomIcons/components/Flows.js +2 -9
- package/dist/Molecular/CustomIcons/components/Gift.js +2 -9
- package/dist/Molecular/CustomIcons/components/GoogleAuth.js +2 -9
- package/dist/Molecular/CustomIcons/components/GooglePlay.js +2 -9
- package/dist/Molecular/CustomIcons/components/HelpCircle.js +2 -9
- package/dist/Molecular/CustomIcons/components/HelpCircle2.js +2 -9
- package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +2 -9
- package/dist/Molecular/CustomIcons/components/Home.js +2 -9
- package/dist/Molecular/CustomIcons/components/Home2.js +2 -9
- package/dist/Molecular/CustomIcons/components/Key.js +2 -9
- package/dist/Molecular/CustomIcons/components/Landers.js +2 -9
- package/dist/Molecular/CustomIcons/components/Lock.js +2 -9
- package/dist/Molecular/CustomIcons/components/Mail.js +2 -9
- package/dist/Molecular/CustomIcons/components/Mastercard.js +2 -9
- package/dist/Molecular/CustomIcons/components/Minus.js +2 -9
- package/dist/Molecular/CustomIcons/components/Offers.js +2 -9
- package/dist/Molecular/CustomIcons/components/Pause.js +2 -9
- package/dist/Molecular/CustomIcons/components/PayPal.js +2 -9
- package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +2 -9
- package/dist/Molecular/CustomIcons/components/Phone.js +2 -9
- package/dist/Molecular/CustomIcons/components/Play.js +2 -9
- package/dist/Molecular/CustomIcons/components/Plus.js +2 -9
- package/dist/Molecular/CustomIcons/components/Profile.js +2 -9
- package/dist/Molecular/CustomIcons/components/QRCode.js +2 -9
- package/dist/Molecular/CustomIcons/components/Rectangle.js +2 -9
- package/dist/Molecular/CustomIcons/components/Revert.js +2 -9
- package/dist/Molecular/CustomIcons/components/Star.js +2 -9
- package/dist/Molecular/CustomIcons/components/Star2.js +2 -9
- package/dist/Molecular/CustomIcons/components/TrafficSources.js +2 -9
- package/dist/Molecular/CustomIcons/components/Trash.js +2 -9
- package/dist/Molecular/CustomIcons/components/TrashRed.js +2 -9
- package/dist/Molecular/CustomIcons/components/Triggers.js +2 -9
- package/dist/Molecular/CustomIcons/components/User.js +2 -9
- package/dist/Molecular/CustomIcons/components/Visa.js +2 -9
- package/dist/Molecular/CustomIcons/components/X.js +2 -9
- package/dist/Molecular/CustomIcons/index.js +0 -122
- package/dist/Molecular/FormElement/FormElement.js +1 -12
- package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +30 -31
- package/dist/Molecular/FormWithDependOn/partials/_utils.js +9 -12
- package/dist/Molecular/InputAddress/InputAddress.js +65 -114
- package/dist/Molecular/InputPassword/InputPassword.js +5 -19
- package/dist/index.js +0 -2
- package/package.json +1 -1
- package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +0 -91
- package/dist/Atomic/UI/ModalBackup/Modal.js +0 -174
- package/dist/Atomic/UI/ModalBackup/Modal.scss +0 -333
- package/dist/Atomic/UI/ModalBackup/ModalHOC.js +0 -51
- package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +0 -24
- package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +0 -41
|
@@ -1,51 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
-
|
|
12
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
-
|
|
14
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
|
-
|
|
16
11
|
var _reactDom = require("react-dom");
|
|
17
|
-
|
|
18
12
|
var _reactFeather = require("react-feather");
|
|
19
|
-
|
|
20
13
|
var _fieldValueFormatters = require("../../../Functions/fieldValueFormatters");
|
|
21
|
-
|
|
22
14
|
var _useDebounce = require("../../../Functions/useDebounce");
|
|
23
|
-
|
|
24
15
|
var _useIsMobile = _interopRequireDefault(require("../../../Functions/useIsMobile"));
|
|
25
|
-
|
|
26
16
|
var _CheckboxInput = _interopRequireDefault(require("../../FormElements/CheckboxInput/CheckboxInput"));
|
|
27
|
-
|
|
28
17
|
var _Input = _interopRequireDefault(require("../../FormElements/Input/Input"));
|
|
29
|
-
|
|
30
18
|
var _Button = _interopRequireDefault(require("../../UI/Button/Button"));
|
|
31
|
-
|
|
32
19
|
var _Tag = _interopRequireDefault(require("../../UI/Tag/Tag"));
|
|
33
|
-
|
|
34
20
|
var _TagList = _interopRequireDefault(require("../../UI/TagList/TagList"));
|
|
35
|
-
|
|
36
21
|
require("./TagsDropdown.scss");
|
|
37
|
-
|
|
38
|
-
function
|
|
39
|
-
|
|
40
|
-
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; }
|
|
41
|
-
|
|
22
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
23
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
42
24
|
const RC = "tags-dropdown";
|
|
43
25
|
const MIN_ITEMS_FOR_SHOW_MOBILE_SEARCH = 10;
|
|
44
26
|
const COLORS = ["#F1F0F0", "#E3E2E0", "#EEDFDA", "#F9DEC9", "#FDECC8", "#DBECDB", "#D3E4EF", "#E8DEEE", "#F4E0E9", "#FFE2DD", "#D3EFED", "#ECEEDE"];
|
|
45
|
-
|
|
46
27
|
const TagsDropdown = _ref => {
|
|
47
|
-
var _Object$keys, _dropdownListWrapperR2,
|
|
48
|
-
|
|
28
|
+
var _Object$keys, _dropdownListWrapperR2, _dropdownListRef$curr7, _dropdownListRef$curr8;
|
|
49
29
|
let {
|
|
50
30
|
options: optionsProp,
|
|
51
31
|
chosenOptions = [],
|
|
@@ -123,24 +103,21 @@ const TagsDropdown = _ref => {
|
|
|
123
103
|
delay: 600
|
|
124
104
|
});
|
|
125
105
|
const [isValueDeleted, setIsValueDeleted] = (0, _react.useState)(false);
|
|
126
|
-
|
|
127
106
|
const setSearchValueInterceptor = value => {
|
|
128
107
|
setSearchValue(value);
|
|
129
108
|
setIsValueDeleted(searchValue !== value && value === "");
|
|
130
109
|
searchValueRef.current = value;
|
|
131
110
|
};
|
|
132
|
-
|
|
133
111
|
const editingOptionInputRef = (0, _react.useRef)(null);
|
|
134
112
|
const [options, setOptions] = (0, _react.useState)([]);
|
|
135
113
|
const [editingOption, setEditingOptionState] = (0, _react.useState)(null);
|
|
136
|
-
|
|
137
114
|
const setEditingOption = data => {
|
|
138
|
-
setEditingOptionState(editingOption => !data ? data : {
|
|
115
|
+
setEditingOptionState(editingOption => !data ? data : {
|
|
116
|
+
...(editingOption !== null && editingOption !== void 0 ? editingOption : {}),
|
|
139
117
|
...(typeof data === "function" ? data === null || data === void 0 ? void 0 : data(editingOption) : data),
|
|
140
118
|
isChanged: Boolean(editingOption)
|
|
141
119
|
});
|
|
142
120
|
};
|
|
143
|
-
|
|
144
121
|
const isEditingOptionError = (0, _react.useMemo)(() => {
|
|
145
122
|
if (!editingOption) return false;
|
|
146
123
|
return options.filter(_ref2 => {
|
|
@@ -160,9 +137,9 @@ const TagsDropdown = _ref => {
|
|
|
160
137
|
const getRandomIndex = (min, max) => {
|
|
161
138
|
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
162
139
|
};
|
|
163
|
-
|
|
164
140
|
const randomIndex = getRandomIndex(0, COLORS.length - 1);
|
|
165
|
-
return COLORS[randomIndex];
|
|
141
|
+
return COLORS[randomIndex];
|
|
142
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
166
143
|
}, [options.length]);
|
|
167
144
|
const singleLevelOptions = options === null || options === void 0 ? void 0 : options.reduce((acc, item) => {
|
|
168
145
|
const checkUniqAndPush = (acc, item) => {
|
|
@@ -172,90 +149,73 @@ const TagsDropdown = _ref => {
|
|
|
172
149
|
} = _ref4;
|
|
173
150
|
return value === (item === null || item === void 0 ? void 0 : item.value);
|
|
174
151
|
});
|
|
175
|
-
|
|
176
152
|
if (isExist !== -1) {
|
|
177
153
|
acc[isExist] = item;
|
|
178
154
|
} else {
|
|
179
155
|
acc.push(item);
|
|
180
156
|
}
|
|
181
157
|
};
|
|
182
|
-
|
|
183
158
|
if (item.groupName) {
|
|
184
159
|
var _item$list;
|
|
185
|
-
|
|
186
|
-
(_item$list = item.list) === null || _item$list === void 0 ? void 0 : _item$list.map(item => checkUniqAndPush(acc, item));
|
|
160
|
+
(_item$list = item.list) === null || _item$list === void 0 || _item$list.map(item => checkUniqAndPush(acc, item));
|
|
187
161
|
} else {
|
|
188
162
|
checkUniqAndPush(acc, item);
|
|
189
163
|
}
|
|
190
|
-
|
|
191
164
|
return acc;
|
|
192
165
|
}, isUseLocalOptionsStore ? (_Object$keys = Object.keys(localOptionsStore)) === null || _Object$keys === void 0 ? void 0 : _Object$keys.map(value => ({
|
|
193
166
|
value,
|
|
194
167
|
label: localOptionsStore === null || localOptionsStore === void 0 ? void 0 : localOptionsStore[value]
|
|
195
168
|
})) : []);
|
|
196
|
-
|
|
197
169
|
const deleteChosen = value => {
|
|
198
170
|
if (isMobile ? closeOnRemoveMobile : closeOnRemove) setIsOpen(false);
|
|
199
|
-
|
|
200
171
|
if (isUseLocalOptionsStore) {
|
|
201
|
-
setLocalOptionsStore(options => ({
|
|
172
|
+
setLocalOptionsStore(options => ({
|
|
173
|
+
...options,
|
|
202
174
|
[value]: undefined
|
|
203
175
|
}));
|
|
204
176
|
}
|
|
205
|
-
|
|
206
177
|
onChange(chosenOptions.filter(item => item !== value), "chosenOptions");
|
|
207
|
-
};
|
|
208
|
-
|
|
178
|
+
};
|
|
209
179
|
|
|
180
|
+
// --- LIST CONTAINER FUNCTIONS BEGIN --- //
|
|
210
181
|
const getParentNode = () => {
|
|
211
182
|
var _ref5, _document$querySelect;
|
|
212
|
-
|
|
213
183
|
return (_ref5 = (_document$querySelect = document.querySelector("div#root")) !== null && _document$querySelect !== void 0 ? _document$querySelect : document.querySelector("div#app")) !== null && _ref5 !== void 0 ? _ref5 : document.querySelector("div#storybook-root");
|
|
214
184
|
};
|
|
215
|
-
|
|
216
185
|
const initListContainer = () => {
|
|
217
186
|
const dropdownList = document.createElement("div");
|
|
218
187
|
dropdownList.setAttribute("id", dropdownId);
|
|
219
188
|
dropdownList.classList.add("tags-dropdown__container");
|
|
220
|
-
|
|
221
189
|
if (isMobile) {
|
|
222
190
|
dropdownList.addEventListener("click", e => {
|
|
223
191
|
if (e.target.id === dropdownId) setIsOpen(false);
|
|
224
192
|
});
|
|
225
193
|
}
|
|
226
|
-
|
|
227
194
|
if (isMobile) {
|
|
228
195
|
var _getParentNode;
|
|
229
|
-
|
|
230
196
|
try {
|
|
231
197
|
var _document$getElementB;
|
|
232
|
-
|
|
233
|
-
|
|
198
|
+
(_document$getElementB = document.getElementById("mlw-".concat(dropdownId))) === null || _document$getElementB === void 0 || _document$getElementB.remove();
|
|
199
|
+
// eslint-disable-next-line no-empty
|
|
234
200
|
} catch (e) {}
|
|
235
|
-
|
|
236
201
|
const dropdownMobileListWrapper = document.createElement("div");
|
|
237
202
|
dropdownMobileListWrapper.classList.add("tags-dropdown-mobile");
|
|
238
203
|
dropdownMobileListWrapper.setAttribute("id", "mlw-".concat(dropdownId));
|
|
239
|
-
dropdownMobileListWrapper === null || dropdownMobileListWrapper === void 0
|
|
240
|
-
(_getParentNode = getParentNode()) === null || _getParentNode === void 0
|
|
204
|
+
dropdownMobileListWrapper === null || dropdownMobileListWrapper === void 0 || dropdownMobileListWrapper.append(dropdownList);
|
|
205
|
+
(_getParentNode = getParentNode()) === null || _getParentNode === void 0 || _getParentNode.append(dropdownMobileListWrapper);
|
|
241
206
|
} else {
|
|
242
207
|
var _getParentNode2;
|
|
243
|
-
|
|
244
|
-
(_getParentNode2 = getParentNode()) === null || _getParentNode2 === void 0 ? void 0 : _getParentNode2.append(dropdownList);
|
|
208
|
+
(_getParentNode2 = getParentNode()) === null || _getParentNode2 === void 0 || _getParentNode2.append(dropdownList);
|
|
245
209
|
}
|
|
246
210
|
};
|
|
247
|
-
|
|
248
211
|
const getListContainer = () => {
|
|
249
212
|
return document.getElementById(dropdownId);
|
|
250
213
|
};
|
|
251
|
-
|
|
252
214
|
const getListContainerWrapper = () => {
|
|
253
215
|
return document.getElementById("mlw-".concat(dropdownId));
|
|
254
216
|
};
|
|
255
|
-
|
|
256
217
|
const setListContainerStyles = () => {
|
|
257
|
-
var _dropdownRef$current$, _dropdownRef$current, _getComputedStyle$mar, _getComputedStyle,
|
|
258
|
-
|
|
218
|
+
var _dropdownRef$current$, _dropdownRef$current, _getComputedStyle$mar, _getComputedStyle, _selectorWrapper$getB, _listHeader$getBoundi, _listHeader$getBoundi2, _listFooter$getBoundi, _listFooter$getBoundi2;
|
|
259
219
|
const listContainer = getListContainer();
|
|
260
220
|
if (!listContainer || !isOpen) return false;
|
|
261
221
|
const windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
|
|
@@ -264,41 +224,34 @@ const TagsDropdown = _ref => {
|
|
|
264
224
|
height,
|
|
265
225
|
left,
|
|
266
226
|
top
|
|
267
|
-
} = (_dropdownRef$current$ = dropdownRef === null || dropdownRef === void 0
|
|
227
|
+
} = (_dropdownRef$current$ = dropdownRef === null || dropdownRef === void 0 || (_dropdownRef$current = dropdownRef.current) === null || _dropdownRef$current === void 0 ? void 0 : _dropdownRef$current.getBoundingClientRect()) !== null && _dropdownRef$current$ !== void 0 ? _dropdownRef$current$ : {};
|
|
268
228
|
const selectorWrapper = dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 ? void 0 : dropdownListWrapperRef.current;
|
|
269
229
|
const dropdownList = listContainer.getElementsByClassName("tags-dropdown__list")[0];
|
|
270
230
|
const listHeader = selectorWrapper === null || selectorWrapper === void 0 ? void 0 : selectorWrapper.getElementsByClassName("tags-dropdown__header")[0];
|
|
271
231
|
const listFooter = selectorWrapper === null || selectorWrapper === void 0 ? void 0 : selectorWrapper.getElementsByClassName("tags-dropdown__footer")[0];
|
|
272
|
-
const margin = parseInt((_getComputedStyle$mar = (_getComputedStyle = getComputedStyle(selectorWrapper)) === null || _getComputedStyle === void 0
|
|
273
|
-
let selectorWrapperHeight = selectorWrapper === null || selectorWrapper === void 0
|
|
274
|
-
const maxSelectorWrapperHeight = 500 - ((_listHeader$getBoundi = listHeader === null || listHeader === void 0
|
|
275
|
-
|
|
232
|
+
const margin = parseInt((_getComputedStyle$mar = (_getComputedStyle = getComputedStyle(selectorWrapper)) === null || _getComputedStyle === void 0 || (_getComputedStyle = _getComputedStyle.marginTop) === null || _getComputedStyle === void 0 ? void 0 : _getComputedStyle.replace("px", "")) !== null && _getComputedStyle$mar !== void 0 ? _getComputedStyle$mar : 0, 10);
|
|
233
|
+
let selectorWrapperHeight = selectorWrapper === null || selectorWrapper === void 0 || (_selectorWrapper$getB = selectorWrapper.getBoundingClientRect()) === null || _selectorWrapper$getB === void 0 ? void 0 : _selectorWrapper$getB.height;
|
|
234
|
+
const maxSelectorWrapperHeight = 500 - ((_listHeader$getBoundi = listHeader === null || listHeader === void 0 || (_listHeader$getBoundi2 = listHeader.getBoundingClientRect()) === null || _listHeader$getBoundi2 === void 0 ? void 0 : _listHeader$getBoundi2.height) !== null && _listHeader$getBoundi !== void 0 ? _listHeader$getBoundi : 0) - ((_listFooter$getBoundi = listFooter === null || listFooter === void 0 || (_listFooter$getBoundi2 = listFooter.getBoundingClientRect()) === null || _listFooter$getBoundi2 === void 0 ? void 0 : _listFooter$getBoundi2.height) !== null && _listFooter$getBoundi !== void 0 ? _listFooter$getBoundi : 0);
|
|
276
235
|
if (!isMobile || !withMobileLogic) {
|
|
277
|
-
var _getComputedStyle2, _dropdownListMaxHeigh, _customTriggerRef$cur, _customTriggerRef$cur2
|
|
278
|
-
|
|
236
|
+
var _getComputedStyle2, _dropdownListMaxHeigh, _customTriggerRef$cur, _customTriggerRef$cur2;
|
|
279
237
|
const dropdownListMaxHeightInPx = (_getComputedStyle2 = getComputedStyle(dropdownList)) === null || _getComputedStyle2 === void 0 ? void 0 : _getComputedStyle2.maxHeight;
|
|
280
238
|
const maxHeight = initListHeight !== null && initListHeight !== void 0 ? initListHeight : parseInt((_dropdownListMaxHeigh = dropdownListMaxHeightInPx === null || dropdownListMaxHeightInPx === void 0 ? void 0 : dropdownListMaxHeightInPx.replace("px", "")) !== null && _dropdownListMaxHeigh !== void 0 ? _dropdownListMaxHeigh : 0, 10);
|
|
281
239
|
if (initListHeight === null && !isNaN(maxHeight)) setInitListHeight(maxHeight);
|
|
282
240
|
if (selectorWrapperHeight > maxHeight && !isNaN(maxHeight)) selectorWrapperHeight = maxHeight - 2 * margin;
|
|
283
|
-
const toTop = renderCustomTrigger ? top - margin - ((_customTriggerRef$cur = customTriggerRef === null || customTriggerRef === void 0
|
|
241
|
+
const toTop = renderCustomTrigger ? top - margin - ((_customTriggerRef$cur = customTriggerRef === null || customTriggerRef === void 0 || (_customTriggerRef$cur2 = customTriggerRef.current) === null || _customTriggerRef$cur2 === void 0 || (_customTriggerRef$cur2 = _customTriggerRef$cur2.getBoundingClientRect()) === null || _customTriggerRef$cur2 === void 0 ? void 0 : _customTriggerRef$cur2.height) !== null && _customTriggerRef$cur !== void 0 ? _customTriggerRef$cur : 0) : top - margin;
|
|
284
242
|
const toBottom = windowHeight - top - height - margin * 2;
|
|
285
243
|
let listPosition = listPos;
|
|
286
|
-
|
|
287
244
|
if (!listPos && options.length) {
|
|
288
245
|
listPosition = toTop < toBottom || toBottom >= selectorWrapperHeight ? "bottom" : "top";
|
|
289
246
|
setListPos(listPosition);
|
|
290
247
|
}
|
|
291
|
-
|
|
292
248
|
if (selectorWrapperHeight > (listPosition === "top" ? toTop : toBottom)) {
|
|
293
249
|
selectorWrapperHeight = (listPosition === "top" ? toTop : toBottom) - 3 * margin;
|
|
294
|
-
|
|
295
250
|
if (selectorWrapperHeight < 200) {
|
|
296
251
|
selectorWrapperHeight = 200;
|
|
297
252
|
}
|
|
298
|
-
|
|
299
253
|
selectorWrapper.style.maxHeight = "".concat(selectorWrapperHeight, "px");
|
|
300
254
|
}
|
|
301
|
-
|
|
302
255
|
listContainer.style.minWidth = "".concat(width, "px");
|
|
303
256
|
listContainer.style.left = "".concat(left, "px");
|
|
304
257
|
listContainer.style.top = "".concat(listPosition === "bottom" ? top + height : top - selectorWrapperHeight - 2 * margin, "px");
|
|
@@ -306,19 +259,18 @@ const TagsDropdown = _ref => {
|
|
|
306
259
|
dropdownList.style.maxHeight = "".concat(maxSelectorWrapperHeight, "px");
|
|
307
260
|
}
|
|
308
261
|
};
|
|
309
|
-
|
|
310
262
|
const renderListContainer = () => {
|
|
311
263
|
const lc = getListContainer();
|
|
312
|
-
if (!lc) return null;
|
|
264
|
+
if (!lc) return null;
|
|
313
265
|
|
|
266
|
+
// eslint-disable-next-line no-use-before-define
|
|
314
267
|
return /*#__PURE__*/(0, _reactDom.createPortal)(getListMarkUp(), lc);
|
|
315
|
-
};
|
|
316
|
-
// ---
|
|
317
|
-
|
|
268
|
+
};
|
|
269
|
+
// --- LIST CONTAINER FUNCTIONS END --- //
|
|
318
270
|
|
|
271
|
+
// --- CREATABLE LOGIC BEGIN --- //
|
|
319
272
|
const onOptionCreateClick = () => {
|
|
320
273
|
var _onOptionCreate;
|
|
321
|
-
|
|
322
274
|
const newOption = {
|
|
323
275
|
label: searchValue,
|
|
324
276
|
style: {
|
|
@@ -326,11 +278,11 @@ const TagsDropdown = _ref => {
|
|
|
326
278
|
},
|
|
327
279
|
isEditable: true,
|
|
328
280
|
ref: /*#__PURE__*/(0, _react.createRef)()
|
|
329
|
-
};
|
|
281
|
+
};
|
|
330
282
|
|
|
283
|
+
// eslint-disable-next-line no-promise-executor-return
|
|
331
284
|
((_onOptionCreate = onOptionCreate === null || onOptionCreate === void 0 ? void 0 : onOptionCreate(newOption)) !== null && _onOptionCreate !== void 0 ? _onOptionCreate : new Promise(r => r())).then(result => {
|
|
332
285
|
var _result$id;
|
|
333
|
-
|
|
334
286
|
const tempId = Math.random().toString(16).slice(2);
|
|
335
287
|
newOption.value = (_result$id = result === null || result === void 0 ? void 0 : result.id) !== null && _result$id !== void 0 ? _result$id : tempId;
|
|
336
288
|
setOptions(state => [...state, newOption]);
|
|
@@ -338,16 +290,13 @@ const TagsDropdown = _ref => {
|
|
|
338
290
|
onChangeHandler(newOption);
|
|
339
291
|
});
|
|
340
292
|
};
|
|
341
|
-
|
|
342
293
|
const onOptionEditClick = (e, item) => {
|
|
343
|
-
e === null || e === void 0
|
|
344
|
-
e === null || e === void 0
|
|
294
|
+
e === null || e === void 0 || e.preventDefault();
|
|
295
|
+
e === null || e === void 0 || e.stopPropagation();
|
|
345
296
|
setEditingOption((editingOption === null || editingOption === void 0 ? void 0 : editingOption.value) === (item === null || item === void 0 ? void 0 : item.value) ? null : item);
|
|
346
297
|
};
|
|
347
|
-
|
|
348
298
|
const onOptionDeleteClick = () => {
|
|
349
299
|
var _onOptionDelete;
|
|
350
|
-
|
|
351
300
|
// eslint-disable-next-line no-promise-executor-return
|
|
352
301
|
((_onOptionDelete = onOptionDelete === null || onOptionDelete === void 0 ? void 0 : onOptionDelete(editingOption)) !== null && _onOptionDelete !== void 0 ? _onOptionDelete : new Promise(r => r())).then(() => {
|
|
353
302
|
deleteChosen(editingOption === null || editingOption === void 0 ? void 0 : editingOption.value);
|
|
@@ -360,29 +309,25 @@ const TagsDropdown = _ref => {
|
|
|
360
309
|
setEditingOption(null);
|
|
361
310
|
});
|
|
362
311
|
};
|
|
363
|
-
|
|
364
312
|
const saveEditingOption = () => {
|
|
365
313
|
if (!(editingOption !== null && editingOption !== void 0 && editingOption.isChanged) || isEditingOptionError) {
|
|
366
314
|
setEditingOption(null);
|
|
367
315
|
return false;
|
|
368
316
|
}
|
|
369
|
-
|
|
370
|
-
onOptionEdit === null || onOptionEdit === void 0 ? void 0 : onOptionEdit(editingOption);
|
|
317
|
+
onOptionEdit === null || onOptionEdit === void 0 || onOptionEdit(editingOption);
|
|
371
318
|
setOptions(options => options.map(option => {
|
|
372
319
|
if (editingOption && option.value === (editingOption === null || editingOption === void 0 ? void 0 : editingOption.value)) {
|
|
373
|
-
const tmp = {
|
|
320
|
+
const tmp = {
|
|
321
|
+
...editingOption
|
|
374
322
|
};
|
|
375
323
|
setEditingOption(null);
|
|
376
324
|
return tmp;
|
|
377
325
|
}
|
|
378
|
-
|
|
379
326
|
return option;
|
|
380
327
|
}));
|
|
381
328
|
};
|
|
382
|
-
|
|
383
329
|
const setEditOptionModalStyles = () => {
|
|
384
330
|
var _editingOption$ref, _el$getBoundingClient, _dropdownListWrapperR, _positionClasses, _positionClasses2;
|
|
385
|
-
|
|
386
331
|
if (!editingOption || !(editOptionModalRef !== null && editOptionModalRef !== void 0 && editOptionModalRef.current)) return null;
|
|
387
332
|
const modalSize = 200;
|
|
388
333
|
const {
|
|
@@ -397,14 +342,14 @@ const TagsDropdown = _ref => {
|
|
|
397
342
|
};
|
|
398
343
|
const windowWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
|
|
399
344
|
const windowHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
|
|
400
|
-
const el = editingOption === null || editingOption === void 0
|
|
345
|
+
const el = editingOption === null || editingOption === void 0 || (_editingOption$ref = editingOption.ref) === null || _editingOption$ref === void 0 ? void 0 : _editingOption$ref.current;
|
|
401
346
|
const {
|
|
402
347
|
x,
|
|
403
348
|
y,
|
|
404
349
|
width,
|
|
405
350
|
height
|
|
406
351
|
} = (_el$getBoundingClient = el === null || el === void 0 ? void 0 : el.getBoundingClientRect()) !== null && _el$getBoundingClient !== void 0 ? _el$getBoundingClient : {};
|
|
407
|
-
const containerPosition = dropdownListWrapperRef === null || dropdownListWrapperRef === void 0
|
|
352
|
+
const containerPosition = dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 || (_dropdownListWrapperR = dropdownListWrapperRef.current) === null || _dropdownListWrapperR === void 0 ? void 0 : _dropdownListWrapperR.getBoundingClientRect();
|
|
408
353
|
const distanceToRight = windowWidth - (containerPosition === null || containerPosition === void 0 ? void 0 : containerPosition.x) - (containerPosition === null || containerPosition === void 0 ? void 0 : containerPosition.width);
|
|
409
354
|
const distanceToBottom = windowHeight - y - scrollY - height;
|
|
410
355
|
Object.values(positionClasses).map(className => editOptionModalRef.current.classList.remove(className));
|
|
@@ -416,7 +361,6 @@ const TagsDropdown = _ref => {
|
|
|
416
361
|
editOptionModalRef.current.style.top = "".concat(y + scrollY + height, "px");
|
|
417
362
|
editOptionModalRef.current.style.transform = "translate(".concat(xTranslate, ", ").concat(yTranslate, ")");
|
|
418
363
|
};
|
|
419
|
-
|
|
420
364
|
const renderEditOptionModal = () => {
|
|
421
365
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
422
366
|
key: "editOptionModal".concat(editingOption === null || editingOption === void 0 ? void 0 : editingOption.value),
|
|
@@ -426,7 +370,8 @@ const TagsDropdown = _ref => {
|
|
|
426
370
|
className: (0, _classnames.default)("".concat(RC, "__edit-option-modal-section"))
|
|
427
371
|
}, /*#__PURE__*/_react.default.createElement(_Input.default, {
|
|
428
372
|
value: editingOption.label,
|
|
429
|
-
onChange: v => setEditingOption(state => ({
|
|
373
|
+
onChange: v => setEditingOption(state => ({
|
|
374
|
+
...state,
|
|
430
375
|
label: v
|
|
431
376
|
})),
|
|
432
377
|
error: isEditingOptionError,
|
|
@@ -448,132 +393,113 @@ const TagsDropdown = _ref => {
|
|
|
448
393
|
className: (0, _classnames.default)("".concat(RC, "__edit-option-modal-section-colors"))
|
|
449
394
|
}, COLORS.map(color => {
|
|
450
395
|
var _editingOption$style;
|
|
451
|
-
|
|
452
396
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
453
397
|
key: color,
|
|
454
398
|
className: "color-block",
|
|
455
399
|
style: {
|
|
456
400
|
backgroundColor: color
|
|
457
401
|
},
|
|
458
|
-
onClick: () => setEditingOption(state => ({
|
|
459
|
-
|
|
402
|
+
onClick: () => setEditingOption(state => ({
|
|
403
|
+
...state,
|
|
404
|
+
style: {
|
|
405
|
+
...state.style,
|
|
460
406
|
backgroundColor: color
|
|
461
407
|
}
|
|
462
408
|
}))
|
|
463
|
-
}, (editingOption === null || editingOption === void 0
|
|
409
|
+
}, (editingOption === null || editingOption === void 0 || (_editingOption$style = editingOption.style) === null || _editingOption$style === void 0 ? void 0 : _editingOption$style.backgroundColor) === color ? /*#__PURE__*/_react.default.createElement(_reactFeather.Check, null) : null);
|
|
464
410
|
}))));
|
|
465
|
-
};
|
|
466
|
-
// ---
|
|
467
|
-
|
|
411
|
+
};
|
|
412
|
+
// --- CREATABLE LOGIC END --- //
|
|
468
413
|
|
|
414
|
+
// --- GENERAL FUNCTIONS BEGIN --- //
|
|
469
415
|
const handleClickOutside = e => {
|
|
470
416
|
var _getListContainer, _editOptionModalRef$c;
|
|
471
|
-
|
|
472
417
|
const {
|
|
473
418
|
target
|
|
474
419
|
} = e;
|
|
475
|
-
|
|
476
|
-
|
|
420
|
+
if (isOpen && !((_getListContainer = getListContainer()) !== null && _getListContainer !== void 0 && _getListContainer.contains(target)) && !editOptionModalRef.current
|
|
421
|
+
// &&
|
|
477
422
|
// (
|
|
478
423
|
// customTriggerRef?.current ? customTriggerRef?.current?.contains(target) : true
|
|
479
424
|
// )
|
|
480
425
|
) {
|
|
481
426
|
setIsOpen(false);
|
|
482
|
-
onDropdownListClose === null || onDropdownListClose === void 0
|
|
427
|
+
onDropdownListClose === null || onDropdownListClose === void 0 || onDropdownListClose(e);
|
|
483
428
|
} else if (editOptionModalRef.current && !((_editOptionModalRef$c = editOptionModalRef.current) !== null && _editOptionModalRef$c !== void 0 && _editOptionModalRef$c.contains(target))) {
|
|
484
|
-
var _document, _document$getElementB2, _document$getElementB3
|
|
485
|
-
|
|
486
|
-
if (!((_document = document) !== null && _document !== void 0 && (_document$getElementB2 = _document.getElementById) !== null && _document$getElementB2 !== void 0 && (_document$getElementB3 = _document$getElementB2.call(_document, "editTrigger".concat(editingOption === null || editingOption === void 0 ? void 0 : editingOption.value))) !== null && _document$getElementB3 !== void 0 && (_document$getElementB4 = _document$getElementB3.contains) !== null && _document$getElementB4 !== void 0 && _document$getElementB4.call(_document$getElementB3, target))) saveEditingOption();
|
|
429
|
+
var _document, _document$getElementB2, _document$getElementB3;
|
|
430
|
+
if (!((_document = document) !== null && _document !== void 0 && (_document$getElementB2 = _document.getElementById) !== null && _document$getElementB2 !== void 0 && (_document$getElementB2 = _document$getElementB2.call(_document, "editTrigger".concat(editingOption === null || editingOption === void 0 ? void 0 : editingOption.value))) !== null && _document$getElementB2 !== void 0 && (_document$getElementB3 = _document$getElementB2.contains) !== null && _document$getElementB3 !== void 0 && _document$getElementB3.call(_document$getElementB2, target))) saveEditingOption();
|
|
487
431
|
}
|
|
488
432
|
};
|
|
489
|
-
|
|
490
433
|
const closeList = e => {
|
|
491
434
|
var _inputRef$current;
|
|
492
|
-
|
|
493
435
|
handleClickOutside(e);
|
|
494
|
-
if (!e.target.isEqualNode(inputRef === null || inputRef === void 0 ? void 0 : inputRef.current)) inputRef === null || inputRef === void 0
|
|
436
|
+
if (!e.target.isEqualNode(inputRef === null || inputRef === void 0 ? void 0 : inputRef.current)) inputRef === null || inputRef === void 0 || (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.blur();
|
|
495
437
|
};
|
|
496
|
-
|
|
497
438
|
const isTargetInParent = target => {
|
|
498
439
|
var _target$className, _target$className$ind, _target$className2, _target$className2$in;
|
|
499
|
-
|
|
500
440
|
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;
|
|
501
|
-
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
|
|
441
|
+
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 || (_target$className = target.className) === null || _target$className === 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 || (_target$className2 = target.className) === null || _target$className2 === 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.indexOf("".concat(RC, "__trigger"))) !== -1 || (target === null || target === void 0 ? void 0 : target.className) === "tags-dropdown__arrow") return true;
|
|
502
442
|
return false;
|
|
503
443
|
};
|
|
504
|
-
|
|
505
444
|
const isItemMatchesSearch = item => {
|
|
506
445
|
const title = item.title || item.label;
|
|
507
446
|
return searchValue.length ? title === null || title === void 0 ? void 0 : title.toLowerCase().includes((searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase()) || "") : true;
|
|
508
|
-
};
|
|
509
|
-
|
|
447
|
+
};
|
|
448
|
+
// --- GENERAL FUNCTIONS END --- //
|
|
510
449
|
|
|
511
450
|
const prepareOptions = options => {
|
|
512
451
|
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();
|
|
513
452
|
};
|
|
514
|
-
|
|
515
453
|
const getFilteredOptions = options => options === null || options === void 0 ? void 0 : options.reduce((result, option) => {
|
|
516
454
|
if (option.groupName) {
|
|
517
455
|
var _option$list;
|
|
518
|
-
|
|
519
|
-
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));
|
|
520
|
-
|
|
456
|
+
const filteredGroupItems = option === null || option === void 0 || (_option$list = option.list) === null || _option$list === void 0 ? void 0 : _option$list.filter(item => isItemMatchesSearch(item));
|
|
521
457
|
if (filteredGroupItems !== null && filteredGroupItems !== void 0 && filteredGroupItems.length) {
|
|
522
|
-
result.push({
|
|
458
|
+
result.push({
|
|
459
|
+
...option,
|
|
523
460
|
list: filteredGroupItems
|
|
524
461
|
});
|
|
525
462
|
}
|
|
526
463
|
} else if (isItemMatchesSearch(option)) {
|
|
527
464
|
result.push(option);
|
|
528
465
|
}
|
|
529
|
-
|
|
530
466
|
return result;
|
|
531
467
|
}, []);
|
|
532
|
-
|
|
533
468
|
const getTotalOptions = (0, _react.useCallback)(() => {
|
|
534
469
|
return options === null || options === void 0 ? void 0 : options.reduce((result, item) => {
|
|
535
470
|
if (item !== null && item !== void 0 && item.list) {
|
|
536
471
|
var _item$list2;
|
|
537
|
-
|
|
538
|
-
result += (item === null || item === void 0 ? void 0 : (_item$list2 = item.list) === null || _item$list2 === void 0 ? void 0 : _item$list2.length) || 0;
|
|
472
|
+
result += (item === null || item === void 0 || (_item$list2 = item.list) === null || _item$list2 === void 0 ? void 0 : _item$list2.length) || 0;
|
|
539
473
|
} else {
|
|
540
474
|
++result;
|
|
541
475
|
}
|
|
542
|
-
|
|
543
476
|
return result;
|
|
544
477
|
}, 0);
|
|
545
478
|
}, [options]);
|
|
546
|
-
|
|
547
479
|
const onChangeHandler = item => {
|
|
548
480
|
if (item !== null && item !== void 0 && item.isFreezed) return false;
|
|
549
|
-
|
|
550
481
|
if ((item === null || item === void 0 ? void 0 : item.closeOnOptionSelect) !== undefined) {
|
|
551
482
|
if (item.closeOnOptionSelect) setIsOpen(false);
|
|
552
483
|
} else if (isMobile ? closeOnSelectMobile : closeOnSelect) setIsOpen(false);
|
|
553
|
-
|
|
554
484
|
setSearchValueInterceptor("");
|
|
555
|
-
|
|
556
485
|
if (chosenOptions.some(el => el === item.value)) {
|
|
557
486
|
deleteChosen(item.value);
|
|
558
487
|
return null;
|
|
559
488
|
}
|
|
560
|
-
|
|
561
489
|
if (isUseLocalOptionsStore) {
|
|
562
|
-
setLocalOptionsStore(options => ({
|
|
490
|
+
setLocalOptionsStore(options => ({
|
|
491
|
+
...options,
|
|
563
492
|
[item === null || item === void 0 ? void 0 : item.value]: item === null || item === void 0 ? void 0 : item.label
|
|
564
493
|
}));
|
|
565
494
|
}
|
|
566
|
-
|
|
567
495
|
onChange([...chosenOptions, item.value], "chosenOptions");
|
|
568
496
|
return null;
|
|
569
497
|
};
|
|
570
|
-
|
|
571
498
|
const onSearchHandler = name => {
|
|
572
499
|
let inputValue = name;
|
|
573
500
|
if (!isNotValidateASCII) inputValue = (0, _fieldValueFormatters.formatToOnlyASCIICodeText)(inputValue);
|
|
574
501
|
setSearchValueInterceptor(inputValue);
|
|
575
502
|
};
|
|
576
|
-
|
|
577
503
|
const onWrapperClick = e => {
|
|
578
504
|
if (e.target === (wrapperRef === null || wrapperRef === void 0 ? void 0 : wrapperRef.current)) {
|
|
579
505
|
e.stopPropagation();
|
|
@@ -581,10 +507,8 @@ const TagsDropdown = _ref => {
|
|
|
581
507
|
setIsOpen(false);
|
|
582
508
|
}
|
|
583
509
|
};
|
|
584
|
-
|
|
585
510
|
const selectAllItems = () => {
|
|
586
511
|
var _prepareOptions;
|
|
587
|
-
|
|
588
512
|
const preparedOptions = (_prepareOptions = prepareOptions(options)) === null || _prepareOptions === void 0 ? void 0 : _prepareOptions.filter(_ref7 => {
|
|
589
513
|
let {
|
|
590
514
|
isFreezed,
|
|
@@ -592,7 +516,6 @@ const TagsDropdown = _ref => {
|
|
|
592
516
|
} = _ref7;
|
|
593
517
|
return !isFreezed && !(chosenOptions !== null && chosenOptions !== void 0 && chosenOptions.includes(value)) && value !== "open_modal";
|
|
594
518
|
});
|
|
595
|
-
|
|
596
519
|
if (isUseLocalOptionsStore) {
|
|
597
520
|
setLocalOptionsStore(options => preparedOptions === null || preparedOptions === void 0 ? void 0 : preparedOptions.reduce((result, _ref8) => {
|
|
598
521
|
let {
|
|
@@ -603,7 +526,6 @@ const TagsDropdown = _ref => {
|
|
|
603
526
|
return result;
|
|
604
527
|
}, options));
|
|
605
528
|
}
|
|
606
|
-
|
|
607
529
|
onChange([...chosenOptions, ...((preparedOptions === null || preparedOptions === void 0 ? void 0 : preparedOptions.map(_ref9 => {
|
|
608
530
|
let {
|
|
609
531
|
value
|
|
@@ -612,42 +534,37 @@ const TagsDropdown = _ref => {
|
|
|
612
534
|
})) || [])], "chosenOptions");
|
|
613
535
|
if (isMobile ? closeOnSelectAllMobile : closeOnSelectAll) setIsOpen(false);
|
|
614
536
|
};
|
|
615
|
-
|
|
616
537
|
const unselectAllItems = () => {
|
|
617
538
|
if (isUseLocalOptionsStore) setLocalOptionsStore({});
|
|
618
539
|
onChange(chosenOptions === null || chosenOptions === void 0 ? void 0 : chosenOptions.filter(item => {
|
|
619
|
-
var _prepareOptions2
|
|
620
|
-
|
|
621
|
-
return (_prepareOptions2 = prepareOptions(options)) === null || _prepareOptions2 === void 0 ? void 0 : (_prepareOptions2$find = _prepareOptions2.find(_ref10 => {
|
|
540
|
+
var _prepareOptions2;
|
|
541
|
+
return (_prepareOptions2 = prepareOptions(options)) === null || _prepareOptions2 === void 0 || (_prepareOptions2 = _prepareOptions2.find(_ref10 => {
|
|
622
542
|
let {
|
|
623
543
|
value
|
|
624
544
|
} = _ref10;
|
|
625
545
|
return value === item;
|
|
626
|
-
})) === null || _prepareOptions2
|
|
546
|
+
})) === null || _prepareOptions2 === void 0 ? void 0 : _prepareOptions2.isFreezed;
|
|
627
547
|
}), "chosenOptions");
|
|
628
548
|
if (isMobile ? closeOnRemoveAllMobile : closeOnRemoveAll) setIsOpen(false);
|
|
629
549
|
};
|
|
630
|
-
|
|
631
550
|
const doScrollCallback = (0, _react.useCallback)(e => {
|
|
632
551
|
if (doLiveSearchRequest && typeof doLiveSearchRequest === "function") {
|
|
633
552
|
if (Math.round(e.target.clientHeight + e.target.scrollTop) == e.target.scrollHeight) {
|
|
634
553
|
doLiveSearchRequest(searchValueRef.current, true);
|
|
635
554
|
}
|
|
636
555
|
}
|
|
637
|
-
}, [options]);
|
|
556
|
+
}, [options]);
|
|
638
557
|
|
|
558
|
+
// --- RENDER FUNCTIONS BEGIN --- //
|
|
639
559
|
const getMarkupForElement = item => {
|
|
640
560
|
var _title$toString, _item$customMobileIco;
|
|
641
|
-
|
|
642
561
|
const {
|
|
643
562
|
description
|
|
644
563
|
} = item;
|
|
645
564
|
const title = item.title || item.label;
|
|
646
|
-
|
|
647
565
|
const hightlightSearchValue = title => {
|
|
648
566
|
var _title$toLowerCase;
|
|
649
|
-
|
|
650
|
-
const index = title === null || title === void 0 ? void 0 : (_title$toLowerCase = title.toLowerCase()) === null || _title$toLowerCase === void 0 ? void 0 : _title$toLowerCase.indexOf(searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase());
|
|
567
|
+
const index = title === null || title === void 0 || (_title$toLowerCase = title.toLowerCase()) === null || _title$toLowerCase === void 0 ? void 0 : _title$toLowerCase.indexOf(searchValue === null || searchValue === void 0 ? void 0 : searchValue.toLowerCase());
|
|
651
568
|
if (index === -1) return title;
|
|
652
569
|
return /*#__PURE__*/_react.default.createElement("pre", {
|
|
653
570
|
className: "inherit-styles"
|
|
@@ -655,10 +572,9 @@ const TagsDropdown = _ref => {
|
|
|
655
572
|
className: "search-match bg--yellow"
|
|
656
573
|
}, 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))));
|
|
657
574
|
};
|
|
658
|
-
|
|
659
575
|
return /*#__PURE__*/_react.default.createElement("button", {
|
|
660
576
|
ref: item === null || item === void 0 ? void 0 : item.ref,
|
|
661
|
-
key: title === null || title === void 0
|
|
577
|
+
key: title === null || title === void 0 || (_title$toString = title.toString()) === null || _title$toString === void 0 ? void 0 : _title$toString.replace(/ /g, "_"),
|
|
662
578
|
onClick: e => {
|
|
663
579
|
e.preventDefault();
|
|
664
580
|
e.stopPropagation();
|
|
@@ -706,10 +622,8 @@ const TagsDropdown = _ref => {
|
|
|
706
622
|
}
|
|
707
623
|
}) : "");
|
|
708
624
|
};
|
|
709
|
-
|
|
710
625
|
const getListMarkUp = () => {
|
|
711
|
-
var _filteredOptions$filt, _filteredOptions$filt2, _document$
|
|
712
|
-
|
|
626
|
+
var _filteredOptions$filt, _filteredOptions$filt2, _document$getElementB4;
|
|
713
627
|
const filteredOptions = getFilteredOptions(options);
|
|
714
628
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
715
629
|
className: (0, _classnames.default)("".concat(RC, "__container-wrapper")),
|
|
@@ -768,10 +682,9 @@ const TagsDropdown = _ref => {
|
|
|
768
682
|
ref: dropdownListRef,
|
|
769
683
|
className: "".concat(RC, "__list ").concat(headerContent || isMobile ? "".concat(RC, "__list--with-header") : "", " ").concat(footerContent ? "".concat(RC, "__list--with-footer") : "")
|
|
770
684
|
}, filteredOptions === null || filteredOptions === void 0 ? void 0 : filteredOptions.map(option => {
|
|
771
|
-
var _option$groupName, _option$
|
|
772
|
-
|
|
685
|
+
var _option$groupName, _option$list2;
|
|
773
686
|
return option.groupName ? /*#__PURE__*/_react.default.createElement("div", {
|
|
774
|
-
key: (_option$groupName = option.groupName) === null || _option$groupName === void 0
|
|
687
|
+
key: (_option$groupName = option.groupName) === null || _option$groupName === void 0 || (_option$groupName = _option$groupName.toString()) === null || _option$groupName === void 0 ? void 0 : _option$groupName.replace(/ /g, "_").concat(Date.now()),
|
|
775
688
|
className: (0, _classnames.default)("".concat(RC, "-group"), option.className)
|
|
776
689
|
}, /*#__PURE__*/_react.default.createElement("span", {
|
|
777
690
|
className: "".concat(RC, "-group__name")
|
|
@@ -795,7 +708,7 @@ const TagsDropdown = _ref => {
|
|
|
795
708
|
})
|
|
796
709
|
}, footerContent, isMobile && /*#__PURE__*/_react.default.createElement("button", {
|
|
797
710
|
onClick: () => setIsOpen(false)
|
|
798
|
-
}, "Apply", chosenOptions !== null && chosenOptions !== void 0 && chosenOptions.length ? "(".concat(chosenOptions === null || chosenOptions === void 0 ? void 0 : chosenOptions.length, ")") : "")) : null, editingOption && /*#__PURE__*/(0, _reactDom.createPortal)(renderEditOptionModal(), (_document$
|
|
711
|
+
}, "Apply", chosenOptions !== null && chosenOptions !== void 0 && chosenOptions.length ? "(".concat(chosenOptions === null || chosenOptions === void 0 ? void 0 : chosenOptions.length, ")") : "")) : null, editingOption && /*#__PURE__*/(0, _reactDom.createPortal)(renderEditOptionModal(), (_document$getElementB4 = document.getElementById("app")) !== null && _document$getElementB4 !== void 0 ? _document$getElementB4 : document.body), withCreateLogic && onOptionCreate && searchValue && singleLevelOptions.every(_ref14 => {
|
|
799
712
|
let {
|
|
800
713
|
label
|
|
801
714
|
} = _ref14;
|
|
@@ -811,7 +724,6 @@ const TagsDropdown = _ref => {
|
|
|
811
724
|
isNoDismiss: true
|
|
812
725
|
}))));
|
|
813
726
|
};
|
|
814
|
-
|
|
815
727
|
const renderSearchInput = () => {
|
|
816
728
|
return /*#__PURE__*/_react.default.createElement(_Input.default, (0, _extends2.default)({
|
|
817
729
|
ref: inputRef,
|
|
@@ -821,7 +733,8 @@ const TagsDropdown = _ref => {
|
|
|
821
733
|
value: searchValue,
|
|
822
734
|
onChange: onSearchHandler,
|
|
823
735
|
placeholder: placeholder || "Select from list",
|
|
824
|
-
attributesOfNativeInput: {
|
|
736
|
+
attributesOfNativeInput: {
|
|
737
|
+
...attributesOfNativeInput,
|
|
825
738
|
onKeyDown: e => {
|
|
826
739
|
if (e.keyCode === 13 && withCreateLogic && onOptionCreate && singleLevelOptions.every(_ref15 => {
|
|
827
740
|
let {
|
|
@@ -831,21 +744,18 @@ const TagsDropdown = _ref => {
|
|
|
831
744
|
})) {
|
|
832
745
|
onOptionCreateClick();
|
|
833
746
|
}
|
|
834
|
-
|
|
835
747
|
onKeyPress(e, searchValue);
|
|
836
|
-
}
|
|
748
|
+
}
|
|
749
|
+
// onFocus: (e) => {
|
|
837
750
|
// if (isMobile) e?.target?.blur();
|
|
838
751
|
// },
|
|
839
|
-
|
|
840
752
|
}
|
|
841
753
|
}, withCreateLogic ? {
|
|
842
754
|
symbolsLimit: 50
|
|
843
755
|
} : {}));
|
|
844
756
|
};
|
|
845
|
-
|
|
846
757
|
const renderDropdownTrigger = (0, _react.useCallback)(() => {
|
|
847
758
|
var _renderCustomTrigger;
|
|
848
|
-
|
|
849
759
|
const renderDefaultDropdownTrigger = () => {
|
|
850
760
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
851
761
|
className: (0, _classnames.default)("".concat(RC, "__trigger"), {
|
|
@@ -856,7 +766,6 @@ const TagsDropdown = _ref => {
|
|
|
856
766
|
let {
|
|
857
767
|
target
|
|
858
768
|
} = _ref16;
|
|
859
|
-
|
|
860
769
|
if ((target === null || target === void 0 ? void 0 : target.tagName) === "INPUT") {
|
|
861
770
|
setIsOpen(true);
|
|
862
771
|
} else if (isTargetInParent(target)) {
|
|
@@ -901,7 +810,6 @@ const TagsDropdown = _ref => {
|
|
|
901
810
|
className: "color--text"
|
|
902
811
|
})));
|
|
903
812
|
};
|
|
904
|
-
|
|
905
813
|
return (_renderCustomTrigger = renderCustomTrigger === null || renderCustomTrigger === void 0 ? void 0 : renderCustomTrigger({
|
|
906
814
|
chosenOptions,
|
|
907
815
|
singleLevelOptions,
|
|
@@ -911,21 +819,20 @@ const TagsDropdown = _ref => {
|
|
|
911
819
|
isOpen,
|
|
912
820
|
setIsOpen
|
|
913
821
|
})) !== null && _renderCustomTrigger !== void 0 ? _renderCustomTrigger : renderDefaultDropdownTrigger();
|
|
914
|
-
}, [chosenOptions, singleLevelOptions, inputRef, isOpen]);
|
|
822
|
+
}, [chosenOptions, singleLevelOptions, inputRef, isOpen]);
|
|
823
|
+
// --- RENDER FUNCTIONS END --- //
|
|
915
824
|
|
|
916
825
|
(0, _react.useLayoutEffect)(() => {
|
|
917
826
|
initListContainer();
|
|
918
827
|
if (isDefaultOpened && !isMobileProp) setIsOpen(true);
|
|
919
828
|
return () => {
|
|
920
829
|
var _getListContainer2, _getListContainerWrap;
|
|
921
|
-
|
|
922
|
-
(
|
|
923
|
-
(_getListContainerWrap = getListContainerWrapper()) === null || _getListContainerWrap === void 0 ? void 0 : _getListContainerWrap.remove();
|
|
830
|
+
(_getListContainer2 = getListContainer()) === null || _getListContainer2 === void 0 || _getListContainer2.remove();
|
|
831
|
+
(_getListContainerWrap = getListContainerWrapper()) === null || _getListContainerWrap === void 0 || _getListContainerWrap.remove();
|
|
924
832
|
};
|
|
925
833
|
}, []);
|
|
926
834
|
(0, _react.useLayoutEffect)(() => {
|
|
927
835
|
var _getListContainer3;
|
|
928
|
-
|
|
929
836
|
if (!isMobile) {
|
|
930
837
|
window.addEventListener("mousewheel", closeList);
|
|
931
838
|
window.addEventListener("wheel", closeList);
|
|
@@ -937,16 +844,14 @@ const TagsDropdown = _ref => {
|
|
|
937
844
|
window.removeEventListener("touchmove", closeList);
|
|
938
845
|
window.removeEventListener("mouseup", handleClickOutside);
|
|
939
846
|
}
|
|
940
|
-
|
|
941
|
-
(_getListContainer3 = getListContainer()) === null || _getListContainer3 === void 0 ? void 0 : _getListContainer3.addEventListener("click", closeList);
|
|
847
|
+
(_getListContainer3 = getListContainer()) === null || _getListContainer3 === void 0 || _getListContainer3.addEventListener("click", closeList);
|
|
942
848
|
return () => {
|
|
943
849
|
var _getListContainer4;
|
|
944
|
-
|
|
945
850
|
window.removeEventListener("mousewheel", closeList);
|
|
946
851
|
window.removeEventListener("mouseup", handleClickOutside);
|
|
947
852
|
window.removeEventListener("wheel", closeList);
|
|
948
853
|
window.removeEventListener("touchmove", closeList);
|
|
949
|
-
(_getListContainer4 = getListContainer()) === null || _getListContainer4 === void 0
|
|
854
|
+
(_getListContainer4 = getListContainer()) === null || _getListContainer4 === void 0 || _getListContainer4.removeEventListener("click", closeList);
|
|
950
855
|
};
|
|
951
856
|
}, [getListContainer, isMobile]);
|
|
952
857
|
(0, _react.useLayoutEffect)(() => {
|
|
@@ -954,12 +859,13 @@ const TagsDropdown = _ref => {
|
|
|
954
859
|
setListContainerStyles();
|
|
955
860
|
setEditOptionModalStyles();
|
|
956
861
|
}
|
|
957
|
-
}, [isOpen, optionsProp, chosenOptions, searchValue, isMobile, dropdownListWrapperRef === null || dropdownListWrapperRef === void 0
|
|
862
|
+
}, [isOpen, optionsProp, chosenOptions, searchValue, isMobile, dropdownListWrapperRef === null || dropdownListWrapperRef === void 0 || (_dropdownListWrapperR2 = dropdownListWrapperRef.current) === null || _dropdownListWrapperR2 === void 0 || (_dropdownListWrapperR2 = _dropdownListWrapperR2.getBoundingClientRect()) === null || _dropdownListWrapperR2 === void 0 ? void 0 : _dropdownListWrapperR2.height, recalculateListContainerStylesTrigger]);
|
|
958
863
|
(0, _react.useEffect)(() => {
|
|
959
864
|
if (isUseLocalOptionsStore && chosenOptions.length !== Object.keys(localOptionsStore).length) {
|
|
960
865
|
options.map(option => {
|
|
961
866
|
if (!(localOptionsStore !== null && localOptionsStore !== void 0 && localOptionsStore[option === null || option === void 0 ? void 0 : option.value])) {
|
|
962
|
-
setLocalOptionsStore(options => ({
|
|
867
|
+
setLocalOptionsStore(options => ({
|
|
868
|
+
...options,
|
|
963
869
|
[option === null || option === void 0 ? void 0 : option.value]: option === null || option === void 0 ? void 0 : option.label
|
|
964
870
|
}));
|
|
965
871
|
}
|
|
@@ -968,37 +874,28 @@ const TagsDropdown = _ref => {
|
|
|
968
874
|
}, [chosenOptions, isUseLocalOptionsStore]);
|
|
969
875
|
(0, _react.useEffect)(() => {
|
|
970
876
|
var _selectAllButtonRef$c, _unselectAllButtonRef;
|
|
971
|
-
|
|
972
877
|
const fn = isOpen ? "addEventListener" : "removeEventListener";
|
|
973
|
-
selectAllButtonRef === null || selectAllButtonRef === void 0
|
|
974
|
-
unselectAllButtonRef === null || unselectAllButtonRef === void 0
|
|
975
|
-
|
|
878
|
+
selectAllButtonRef === null || selectAllButtonRef === void 0 || (_selectAllButtonRef$c = selectAllButtonRef.current) === null || _selectAllButtonRef$c === void 0 || _selectAllButtonRef$c[fn]("click", selectAllItems, true);
|
|
879
|
+
unselectAllButtonRef === null || unselectAllButtonRef === void 0 || (_unselectAllButtonRef = unselectAllButtonRef.current) === null || _unselectAllButtonRef === void 0 || _unselectAllButtonRef[fn]("click", unselectAllItems, true);
|
|
976
880
|
if (isOpen) {
|
|
977
881
|
var _getListContainer5;
|
|
978
|
-
|
|
979
882
|
if (customTriggerRef !== null && customTriggerRef !== void 0 && customTriggerRef.current) {
|
|
980
883
|
customTriggerRef.current.style.pointerEvents = "none";
|
|
981
884
|
}
|
|
982
|
-
|
|
983
|
-
(_getListContainer5 = getListContainer()) === null || _getListContainer5 === void 0 ? void 0 : _getListContainer5.classList.add("tags-dropdown__container--opened");
|
|
984
|
-
|
|
885
|
+
(_getListContainer5 = getListContainer()) === null || _getListContainer5 === void 0 || _getListContainer5.classList.add("tags-dropdown__container--opened");
|
|
985
886
|
if (!isMobile) {
|
|
986
887
|
var _inputRef$current2, _inputRef$current2$fo;
|
|
987
|
-
|
|
988
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : (_inputRef$current2$fo = _inputRef$current2.focus) === null || _inputRef$current2$fo === void 0 ? void 0 : _inputRef$current2$fo.call(_inputRef$current2);
|
|
888
|
+
inputRef === null || inputRef === void 0 || (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 || (_inputRef$current2$fo = _inputRef$current2.focus) === null || _inputRef$current2$fo === void 0 || _inputRef$current2$fo.call(_inputRef$current2);
|
|
989
889
|
} else {
|
|
990
890
|
var _inputRef$current3, _inputRef$current3$bl;
|
|
991
|
-
|
|
992
|
-
inputRef === null || inputRef === void 0 ? void 0 : (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : (_inputRef$current3$bl = _inputRef$current3.blur) === null || _inputRef$current3$bl === void 0 ? void 0 : _inputRef$current3$bl.call(_inputRef$current3);
|
|
891
|
+
inputRef === null || inputRef === void 0 || (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 || (_inputRef$current3$bl = _inputRef$current3.blur) === null || _inputRef$current3$bl === void 0 || _inputRef$current3$bl.call(_inputRef$current3);
|
|
993
892
|
}
|
|
994
893
|
} else {
|
|
995
894
|
var _getListContainer6;
|
|
996
|
-
|
|
997
895
|
if (customTriggerRef !== null && customTriggerRef !== void 0 && customTriggerRef.current) {
|
|
998
896
|
customTriggerRef.current.style.pointerEvents = "auto";
|
|
999
897
|
}
|
|
1000
|
-
|
|
1001
|
-
(_getListContainer6 = getListContainer()) === null || _getListContainer6 === void 0 ? void 0 : _getListContainer6.classList.remove("tags-dropdown__container--opened");
|
|
898
|
+
(_getListContainer6 = getListContainer()) === null || _getListContainer6 === void 0 || _getListContainer6.classList.remove("tags-dropdown__container--opened");
|
|
1002
899
|
if (withSearchInputInList) setSearchValueInterceptor("");
|
|
1003
900
|
setListPos(null);
|
|
1004
901
|
setSearchValue("");
|
|
@@ -1008,54 +905,46 @@ const TagsDropdown = _ref => {
|
|
|
1008
905
|
const setScrollTopValue = e => {
|
|
1009
906
|
setScrollTop(parseInt(e.target.scrollTop, 10));
|
|
1010
907
|
};
|
|
1011
|
-
|
|
1012
908
|
if (isOpen && isMobile && dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
|
|
1013
909
|
var _dropdownListRef$curr, _dropdownListRef$curr2, _dropdownListRef$curr3;
|
|
1014
|
-
|
|
1015
|
-
dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$
|
|
1016
|
-
setIsScrollableList((dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr2 = dropdownListRef.current) === null || _dropdownListRef$curr2 === void 0 ? void 0 : _dropdownListRef$curr2.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr3 = dropdownListRef.current) === null || _dropdownListRef$curr3 === void 0 ? void 0 : _dropdownListRef$curr3.clientHeight));
|
|
1017
|
-
|
|
910
|
+
dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr = dropdownListRef.current) === null || _dropdownListRef$curr === void 0 || _dropdownListRef$curr.addEventListener("scroll", setScrollTopValue);
|
|
911
|
+
setIsScrollableList((dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr2 = dropdownListRef.current) === null || _dropdownListRef$curr2 === void 0 ? void 0 : _dropdownListRef$curr2.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr3 = dropdownListRef.current) === null || _dropdownListRef$curr3 === void 0 ? void 0 : _dropdownListRef$curr3.clientHeight));
|
|
1018
912
|
if (isScrollableList === null) {
|
|
1019
913
|
var _dropdownListRef$curr4, _dropdownListRef$curr5;
|
|
1020
|
-
|
|
1021
|
-
setIsFixedMaxHeight((dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr4 = dropdownListRef.current) === null || _dropdownListRef$curr4 === void 0 ? void 0 : _dropdownListRef$curr4.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 ? void 0 : (_dropdownListRef$curr5 = dropdownListRef.current) === null || _dropdownListRef$curr5 === void 0 ? void 0 : _dropdownListRef$curr5.clientHeight));
|
|
914
|
+
setIsFixedMaxHeight((dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr4 = dropdownListRef.current) === null || _dropdownListRef$curr4 === void 0 ? void 0 : _dropdownListRef$curr4.scrollHeight) > (dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr5 = dropdownListRef.current) === null || _dropdownListRef$curr5 === void 0 ? void 0 : _dropdownListRef$curr5.clientHeight));
|
|
1022
915
|
}
|
|
1023
916
|
}
|
|
1024
|
-
|
|
1025
917
|
if (isOpen && dropdownListRef && dropdownListRef.current) {
|
|
1026
918
|
dropdownListRef.current.addEventListener("scroll", doScrollCallback);
|
|
1027
919
|
}
|
|
1028
|
-
|
|
1029
920
|
return () => {
|
|
1030
921
|
var _dropdownListRef$curr6;
|
|
1031
|
-
|
|
1032
922
|
removeEventListener("scroll", doScrollCallback);
|
|
1033
|
-
dropdownListRef === null || dropdownListRef === void 0
|
|
923
|
+
dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr6 = dropdownListRef.current) === null || _dropdownListRef$curr6 === void 0 || _dropdownListRef$curr6.removeEventListener("scroll", setScrollTopValue);
|
|
1034
924
|
};
|
|
1035
|
-
}, [isOpen, isMobile, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current, dropdownListRef === null || dropdownListRef === void 0
|
|
925
|
+
}, [isOpen, isMobile, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current, dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr7 = dropdownListRef.current) === null || _dropdownListRef$curr7 === void 0 ? void 0 : _dropdownListRef$curr7.scrollHeight, dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr8 = dropdownListRef.current) === null || _dropdownListRef$curr8 === void 0 ? void 0 : _dropdownListRef$curr8.clientHeight]);
|
|
1036
926
|
(0, _react.useEffect)(() => {
|
|
1037
927
|
if (dropdownListRef !== null && dropdownListRef !== void 0 && dropdownListRef.current) {
|
|
1038
928
|
var _dropdownListRef$curr9, _dropdownListRef$curr10;
|
|
1039
|
-
|
|
1040
|
-
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));
|
|
929
|
+
setScrollHeight(parseInt((dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr9 = dropdownListRef.current) === null || _dropdownListRef$curr9 === void 0 ? void 0 : _dropdownListRef$curr9.scrollHeight) - (dropdownListRef === null || dropdownListRef === void 0 || (_dropdownListRef$curr10 = dropdownListRef.current) === null || _dropdownListRef$curr10 === void 0 ? void 0 : _dropdownListRef$curr10.clientHeight), 10));
|
|
1041
930
|
}
|
|
1042
931
|
}, [scrollTop, dropdownListRef === null || dropdownListRef === void 0 ? void 0 : dropdownListRef.current]);
|
|
1043
932
|
(0, _react.useEffect)(() => {
|
|
1044
933
|
if (isSearchable && useLiveSearch && (debouncedSearchTerm || isValueDeleted || isOpen)) {
|
|
1045
|
-
doLiveSearchRequest === null || doLiveSearchRequest === void 0
|
|
934
|
+
doLiveSearchRequest === null || doLiveSearchRequest === void 0 || doLiveSearchRequest(debouncedSearchTerm);
|
|
1046
935
|
}
|
|
1047
936
|
}, [isOpen, debouncedSearchTerm, isValueDeleted]);
|
|
1048
937
|
(0, _react.useEffect)(() => {
|
|
1049
|
-
setOptions(optionsProp.map(option => ({
|
|
938
|
+
setOptions(optionsProp.map(option => ({
|
|
939
|
+
...option,
|
|
1050
940
|
ref: /*#__PURE__*/(0, _react.createRef)()
|
|
1051
941
|
})));
|
|
1052
942
|
}, [optionsProp]);
|
|
1053
943
|
(0, _react.useEffect)(() => {
|
|
1054
944
|
if (editingOption) {
|
|
1055
945
|
var _editingOptionInputRe, _editingOptionInputRe2;
|
|
1056
|
-
|
|
1057
946
|
setEditOptionModalStyles();
|
|
1058
|
-
editingOptionInputRef === null || editingOptionInputRef === void 0
|
|
947
|
+
editingOptionInputRef === null || editingOptionInputRef === void 0 || (_editingOptionInputRe = editingOptionInputRef.current) === null || _editingOptionInputRe === void 0 || (_editingOptionInputRe2 = _editingOptionInputRe.focus) === null || _editingOptionInputRe2 === void 0 || _editingOptionInputRe2.call(_editingOptionInputRe);
|
|
1059
948
|
}
|
|
1060
949
|
}, [editingOption === null || editingOption === void 0 ? void 0 : editingOption.value]);
|
|
1061
950
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -1076,6 +965,4 @@ const TagsDropdown = _ref => {
|
|
|
1076
965
|
onClick: onActionCancelClick
|
|
1077
966
|
}, /*#__PURE__*/_react.default.createElement(_reactFeather.X, null))), isOpen && renderListContainer());
|
|
1078
967
|
};
|
|
1079
|
-
|
|
1080
|
-
var _default = TagsDropdown;
|
|
1081
|
-
exports.default = _default;
|
|
968
|
+
var _default = exports.default = TagsDropdown;
|