@zohodesk/components 1.0.0-temp-158 → 1.0.0-temp-159
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/es/Accordion/Accordion.js +3 -7
- package/es/Accordion/AccordionItem.js +2 -4
- package/es/Animation/Animation.js +3 -3
- package/es/AppContainer/AppContainer.js +5 -13
- package/es/Avatar/Avatar.js +11 -23
- package/es/AvatarTeam/AvatarTeam.js +3 -3
- package/es/Button/Button.js +3 -4
- package/es/Buttongroup/Buttongroup.js +3 -3
- package/es/Card/Card.js +10 -21
- package/es/CheckBox/CheckBox.js +3 -5
- package/es/DateTime/CalendarView.js +20 -32
- package/es/DateTime/DateTime.js +10 -75
- package/es/DateTime/DateTimePopupFooter.js +2 -4
- package/es/DateTime/DateTimePopupHeader.js +2 -8
- package/es/DateTime/DateWidget.js +35 -98
- package/es/DateTime/DaysRow.js +2 -4
- package/es/DateTime/Time.js +2 -10
- package/es/DateTime/YearView.js +4 -28
- package/es/DateTime/__tests__/CalendarView.spec.js +0 -1
- package/es/DateTime/__tests__/DateTime.spec.js +0 -1
- package/es/DateTime/__tests__/DateWidget.spec.js +3 -2
- package/es/DateTime/common.js +0 -3
- package/es/DateTime/constants.js +0 -1
- package/es/DateTime/dateFormatUtils/dateFormat.js +30 -63
- package/es/DateTime/dateFormatUtils/dateFormats.js +1 -0
- package/es/DateTime/dateFormatUtils/dayChange.js +4 -13
- package/es/DateTime/dateFormatUtils/index.js +2 -32
- package/es/DateTime/dateFormatUtils/monthChange.js +0 -8
- package/es/DateTime/dateFormatUtils/timeChange.js +6 -22
- package/es/DateTime/dateFormatUtils/yearChange.js +2 -11
- package/es/DateTime/objectUtils.js +20 -14
- package/es/DateTime/props/defaultProps.js +1 -2
- package/es/DateTime/typeChecker.js +0 -3
- package/es/DateTime/validator.js +6 -58
- package/es/DropBox/DropBox.js +2 -6
- package/es/DropBox/DropBoxElement/DropBoxElement.js +0 -7
- package/es/DropBox/DropBoxElement/css/cssJSLogic.js +3 -5
- package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +0 -3
- package/es/DropBox/props/defaultProps.js +2 -1
- package/es/DropBox/props/propTypes.js +2 -1
- package/es/DropDown/DropDown.js +4 -8
- package/es/DropDown/DropDownHeading.js +5 -4
- package/es/DropDown/DropDownItem.js +0 -6
- package/es/DropDown/DropDownSearch.js +0 -4
- package/es/DropDown/DropDownSeparator.js +0 -1
- package/es/DropDown/__tests__/DropDown.spec.js +2 -1
- package/es/Heading/Heading.js +3 -2
- package/es/Label/Label.js +3 -2
- package/es/Layout/Box.js +0 -13
- package/es/Layout/Container.js +1 -12
- package/es/Layout/index.js +2 -1
- package/es/ListItem/ListContainer.js +3 -8
- package/es/ListItem/ListItem.js +3 -9
- package/es/ListItem/ListItemWithAvatar.js +3 -9
- package/es/ListItem/ListItemWithCheckBox.js +2 -7
- package/es/ListItem/ListItemWithIcon.js +3 -8
- package/es/ListItem/ListItemWithRadio.js +3 -7
- package/es/Modal/Modal.js +11 -28
- package/es/MultiSelect/AdvancedGroupMultiSelect.js +13 -89
- package/es/MultiSelect/AdvancedMultiSelect.js +9 -32
- package/es/MultiSelect/EmptyState.js +0 -2
- package/es/MultiSelect/MultiSelect.js +32 -99
- package/es/MultiSelect/MultiSelectHeader.js +0 -3
- package/es/MultiSelect/MultiSelectWithAvatar.js +6 -12
- package/es/MultiSelect/SelectedOptions.js +3 -6
- package/es/MultiSelect/Suggestions.js +3 -7
- package/es/MultiSelect/__tests__/MultiSelect.spec.js +6 -4
- package/es/MultiSelect/props/propTypes.js +0 -2
- package/es/PopOver/PopOver.js +2 -18
- package/es/PopOver/__tests__/PopOver.spec.js +1 -2
- package/es/Popup/Popup.js +24 -77
- package/es/Popup/__tests__/Popup.spec.js +5 -17
- package/es/Popup/viewPort.js +4 -16
- package/es/Provider/IdProvider.js +5 -10
- package/es/Provider/LibraryContext.js +4 -6
- package/es/Provider/NumberGenerator/NumberGenerator.js +7 -21
- package/es/Provider/ZindexProvider.js +2 -9
- package/es/Radio/Radio.js +2 -4
- package/es/Responsive/CustomResponsive.js +18 -30
- package/es/Responsive/RefWrapper.js +7 -6
- package/es/Responsive/ResizeComponent.js +25 -35
- package/es/Responsive/ResizeObserver.js +6 -26
- package/es/Responsive/Responsive.js +20 -34
- package/es/Responsive/index.js +3 -1
- package/es/Responsive/sizeObservers.js +7 -28
- package/es/Responsive/utils/index.js +5 -7
- package/es/Responsive/utils/shallowCompare.js +2 -7
- package/es/Responsive/windowResizeObserver.js +0 -7
- package/es/ResponsiveDropBox/ResponsiveDropBox.js +0 -4
- package/es/Ribbon/Ribbon.js +2 -3
- package/es/RippleEffect/RippleEffect.js +3 -1
- package/es/Select/GroupSelect.js +14 -58
- package/es/Select/Select.js +33 -79
- package/es/Select/SelectWithAvatar.js +4 -17
- package/es/Select/SelectWithIcon.js +5 -46
- package/es/Select/__tests__/Select.spec.js +8 -6
- package/es/Select/props/propTypes.js +0 -1
- package/es/Stencils/Stencils.js +3 -3
- package/es/Switch/Switch.js +3 -5
- package/es/Tab/Tab.js +4 -4
- package/es/Tab/TabContent.js +0 -1
- package/es/Tab/TabContentWrapper.js +0 -2
- package/es/Tab/TabWrapper.js +2 -5
- package/es/Tab/Tabs.js +7 -54
- package/es/Tab/__tests__/Tab.spec.js +3 -1
- package/es/Tab/__tests__/TabWrapper.spec.js +0 -1
- package/es/Tag/Tag.js +3 -6
- package/es/TextBox/TextBox.js +3 -15
- package/es/TextBox/TextBox.module.css +8 -5
- package/es/TextBox/__tests__/TextBox.spec.js +4 -1
- package/es/TextBoxIcon/TextBoxIcon.js +2 -9
- package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +7 -2
- package/es/Textarea/Textarea.js +3 -12
- package/es/Textarea/Textarea.module.css +3 -4
- package/es/Textarea/__tests__/Textarea.spec.js +2 -2
- package/es/Tooltip/Tooltip.js +14 -58
- package/es/Tooltip/__tests__/Tooltip.spec.js +0 -5
- package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +2 -3
- package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +5 -7
- package/es/deprecated/PortalLayer/PortalLayer.js +20 -25
- package/es/semantic/Button/Button.js +2 -3
- package/es/utils/Common.js +9 -54
- package/es/utils/ContextOptimizer.js +5 -4
- package/es/utils/__tests__/debounce.spec.js +2 -2
- package/es/utils/constructFullName.js +0 -2
- package/es/utils/css/compileClassNames.js +0 -5
- package/es/utils/css/mergeStyle.js +6 -7
- package/es/utils/css/utils.js +0 -1
- package/es/utils/datetime/common.js +7 -31
- package/es/utils/debounce.js +1 -5
- package/es/utils/dropDownUtils.js +11 -68
- package/es/utils/getInitial.js +0 -4
- package/es/utils/shallowEqual.js +0 -6
- package/lib/Accordion/Accordion.js +18 -42
- package/lib/Accordion/AccordionItem.js +18 -40
- package/lib/Accordion/__tests__/Accordion.spec.js +0 -3
- package/lib/Accordion/index.js +0 -3
- package/lib/Accordion/props/propTypes.js +0 -3
- package/lib/Animation/Animation.js +18 -38
- package/lib/Animation/__tests__/Animation.spec.js +7 -11
- package/lib/Animation/props/propTypes.js +0 -3
- package/lib/AppContainer/AppContainer.js +21 -56
- package/lib/AppContainer/props/propTypes.js +0 -3
- package/lib/Avatar/Avatar.js +38 -78
- package/lib/Avatar/__tests__/Avatar.spec.js +0 -44
- package/lib/Avatar/props/propTypes.js +0 -3
- package/lib/AvatarTeam/AvatarTeam.js +30 -52
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +0 -13
- package/lib/AvatarTeam/props/propTypes.js +0 -3
- package/lib/Button/Button.js +20 -31
- package/lib/Button/css/cssJSLogic.js +17 -18
- package/lib/Button/index.js +0 -3
- package/lib/Button/props/defaultProps.js +0 -2
- package/lib/Button/props/propTypes.js +0 -3
- package/lib/Buttongroup/Buttongroup.js +12 -32
- package/lib/Buttongroup/__test__/Buttongroup.spec.js +0 -10
- package/lib/Buttongroup/props/propTypes.js +0 -3
- package/lib/Card/Card.js +46 -102
- package/lib/Card/__tests__/Card.spec.js +1 -10
- package/lib/Card/index.js +0 -4
- package/lib/Card/props/propTypes.js +0 -3
- package/lib/CheckBox/CheckBox.js +47 -71
- package/lib/CheckBox/__tests__/CheckBox.spec.js +0 -3
- package/lib/CheckBox/props/propTypes.js +0 -3
- package/lib/DateTime/CalendarView.js +42 -82
- package/lib/DateTime/DateTime.js +159 -247
- package/lib/DateTime/DateTimePopupFooter.js +9 -32
- package/lib/DateTime/DateTimePopupHeader.js +18 -49
- package/lib/DateTime/DateWidget.js +251 -353
- package/lib/DateTime/DaysRow.js +6 -28
- package/lib/DateTime/Time.js +33 -74
- package/lib/DateTime/YearView.js +29 -78
- package/lib/DateTime/__tests__/CalendarView.spec.js +5 -13
- package/lib/DateTime/__tests__/DateTime.spec.js +37 -51
- package/lib/DateTime/__tests__/DateWidget.spec.js +8 -10
- package/lib/DateTime/common.js +0 -6
- package/lib/DateTime/constants.js +0 -1
- package/lib/DateTime/dateFormatUtils/dateFormat.js +122 -184
- package/lib/DateTime/dateFormatUtils/dateFormats.js +1 -0
- package/lib/DateTime/dateFormatUtils/dayChange.js +7 -14
- package/lib/DateTime/dateFormatUtils/index.js +16 -74
- package/lib/DateTime/dateFormatUtils/monthChange.js +9 -19
- package/lib/DateTime/dateFormatUtils/timeChange.js +23 -55
- package/lib/DateTime/dateFormatUtils/yearChange.js +11 -22
- package/lib/DateTime/index.js +0 -2
- package/lib/DateTime/objectUtils.js +20 -24
- package/lib/DateTime/props/defaultProps.js +1 -2
- package/lib/DateTime/props/propTypes.js +1 -11
- package/lib/DateTime/typeChecker.js +0 -4
- package/lib/DateTime/validator.js +10 -73
- package/lib/DropBox/DropBox.js +10 -34
- package/lib/DropBox/DropBoxElement/DropBoxElement.js +37 -58
- package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +33 -41
- package/lib/DropBox/DropBoxElement/props/propTypes.js +0 -3
- package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +9 -14
- package/lib/DropBox/__tests__/DropBox.spec.js +2 -6
- package/lib/DropBox/css/cssJSLogic.js +1 -3
- package/lib/DropBox/props/defaultProps.js +4 -8
- package/lib/DropBox/props/propTypes.js +4 -10
- package/lib/DropDown/DropDown.js +8 -52
- package/lib/DropDown/DropDownHeading.js +20 -39
- package/lib/DropDown/DropDownItem.js +20 -42
- package/lib/DropDown/DropDownSearch.js +17 -40
- package/lib/DropDown/DropDownSeparator.js +4 -24
- package/lib/DropDown/__tests__/DropDown.spec.js +9 -15
- package/lib/DropDown/__tests__/DropDownItem.spec.js +4 -9
- package/lib/DropDown/__tests__/DropDownSearch.spec.js +0 -3
- package/lib/DropDown/index.js +0 -9
- package/lib/DropDown/props/propTypes.js +4 -6
- package/lib/Heading/Heading.js +15 -37
- package/lib/Heading/props/propTypes.js +0 -3
- package/lib/Label/Label.js +22 -40
- package/lib/Label/__tests__/Label.spec.js +1 -14
- package/lib/Label/props/propTypes.js +0 -3
- package/lib/Layout/Box.js +11 -31
- package/lib/Layout/Container.js +10 -29
- package/lib/Layout/__tests__/Box.spec.js +49 -65
- package/lib/Layout/__tests__/Container.spec.js +50 -67
- package/lib/Layout/index.js +0 -3
- package/lib/Layout/props/propTypes.js +0 -3
- package/lib/Layout/utils.js +0 -10
- package/lib/ListItem/ListContainer.js +28 -49
- package/lib/ListItem/ListItem.js +46 -70
- package/lib/ListItem/ListItemWithAvatar.js +49 -76
- package/lib/ListItem/ListItemWithCheckBox.js +39 -64
- package/lib/ListItem/ListItemWithIcon.js +45 -69
- package/lib/ListItem/ListItemWithRadio.js +41 -65
- package/lib/ListItem/index.js +0 -7
- package/lib/ListItem/props/propTypes.js +4 -6
- package/lib/Modal/Modal.js +11 -46
- package/lib/Modal/props/propTypes.js +0 -3
- package/lib/MultiSelect/AdvancedGroupMultiSelect.js +167 -295
- package/lib/MultiSelect/AdvancedMultiSelect.js +125 -203
- package/lib/MultiSelect/EmptyState.js +25 -46
- package/lib/MultiSelect/MultiSelect.js +206 -324
- package/lib/MultiSelect/MultiSelectHeader.js +9 -31
- package/lib/MultiSelect/MultiSelectWithAvatar.js +64 -106
- package/lib/MultiSelect/SelectedOptions.js +18 -44
- package/lib/MultiSelect/Suggestions.js +33 -65
- package/lib/MultiSelect/__tests__/MultiSelect.spec.js +75 -86
- package/lib/MultiSelect/index.js +0 -5
- package/lib/MultiSelect/props/defaultProps.js +0 -2
- package/lib/MultiSelect/props/propTypes.js +0 -5
- package/lib/PopOver/PopOver.js +49 -95
- package/lib/PopOver/__tests__/PopOver.spec.js +1 -4
- package/lib/PopOver/index.js +0 -4
- package/lib/PopOver/props/propTypes.js +0 -3
- package/lib/Popup/Popup.js +82 -159
- package/lib/Popup/__tests__/Popup.spec.js +9 -44
- package/lib/Popup/viewPort.js +14 -28
- package/lib/Provider/AvatarSize.js +0 -4
- package/lib/Provider/Config.js +0 -2
- package/lib/Provider/CssProvider.js +0 -4
- package/lib/Provider/IdProvider.js +6 -17
- package/lib/Provider/LibraryContext.js +15 -35
- package/lib/Provider/LibraryContextInit.js +0 -4
- package/lib/Provider/NumberGenerator/NumberGenerator.js +15 -44
- package/lib/Provider/ZindexProvider.js +3 -15
- package/lib/Provider/index.js +0 -5
- package/lib/Radio/Radio.js +39 -62
- package/lib/Radio/__tests__/Radiospec.js +5 -9
- package/lib/Radio/props/propTypes.js +0 -3
- package/lib/Responsive/CustomResponsive.js +28 -73
- package/lib/Responsive/RefWrapper.js +11 -17
- package/lib/Responsive/ResizeComponent.js +39 -63
- package/lib/Responsive/ResizeObserver.js +10 -24
- package/lib/Responsive/Responsive.js +31 -81
- package/lib/Responsive/index.js +0 -4
- package/lib/Responsive/props/propTypes.js +0 -3
- package/lib/Responsive/sizeObservers.js +17 -53
- package/lib/Responsive/utils/index.js +3 -11
- package/lib/Responsive/utils/shallowCompare.js +2 -11
- package/lib/Responsive/windowResizeObserver.js +0 -8
- package/lib/ResponsiveDropBox/ResponsiveDropBox.js +17 -45
- package/lib/ResponsiveDropBox/props/propTypes.js +0 -3
- package/lib/Ribbon/Ribbon.js +14 -34
- package/lib/Ribbon/__tests__/Ribbon.spec.js +0 -22
- package/lib/Ribbon/props/propTypes.js +0 -3
- package/lib/RippleEffect/RippleEffect.js +10 -18
- package/lib/RippleEffect/props/propTypes.js +0 -3
- package/lib/Select/GroupSelect.js +131 -230
- package/lib/Select/Select.js +209 -291
- package/lib/Select/SelectWithAvatar.js +57 -103
- package/lib/Select/SelectWithIcon.js +77 -133
- package/lib/Select/__tests__/Select.spec.js +92 -134
- package/lib/Select/index.js +0 -5
- package/lib/Select/props/defaultProps.js +4 -5
- package/lib/Select/props/propTypes.js +0 -4
- package/lib/Stencils/Stencils.js +11 -30
- package/lib/Stencils/__tests__/Stencils.spec.js +0 -12
- package/lib/Stencils/props/propTypes.js +0 -3
- package/lib/Switch/Switch.js +34 -57
- package/lib/Switch/props/propTypes.js +0 -3
- package/lib/Tab/Tab.js +28 -41
- package/lib/Tab/TabContent.js +5 -12
- package/lib/Tab/TabContentWrapper.js +6 -13
- package/lib/Tab/TabWrapper.js +19 -37
- package/lib/Tab/Tabs.js +98 -172
- package/lib/Tab/__tests__/Tab.spec.js +58 -67
- package/lib/Tab/__tests__/TabContent.spec.js +6 -10
- package/lib/Tab/__tests__/TabContentWrapper.spec.js +20 -28
- package/lib/Tab/__tests__/TabWrapper.spec.js +0 -12
- package/lib/Tab/__tests__/Tabs.spec.js +39 -53
- package/lib/Tab/index.js +0 -6
- package/lib/Tab/props/propTypes.js +0 -3
- package/lib/Tag/Tag.js +43 -72
- package/lib/Tag/__tests__/Tag.spec.js +8 -14
- package/lib/Tag/props/propTypes.js +0 -3
- package/lib/TextBox/TextBox.js +60 -86
- package/lib/TextBox/TextBox.module.css +8 -5
- package/lib/TextBox/__tests__/TextBox.spec.js +4 -14
- package/lib/TextBox/props/propTypes.js +4 -6
- package/lib/TextBoxIcon/TextBoxIcon.js +52 -79
- package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +4 -14
- package/lib/TextBoxIcon/props/propTypes.js +0 -3
- package/lib/Textarea/Textarea.js +30 -55
- package/lib/Textarea/Textarea.module.css +3 -4
- package/lib/Textarea/__tests__/Textarea.spec.js +2 -14
- package/lib/Textarea/props/propTypes.js +0 -3
- package/lib/Tooltip/Tooltip.js +31 -94
- package/lib/Tooltip/__tests__/Tooltip.spec.js +3 -24
- package/lib/Tooltip/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +16 -40
- package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +25 -53
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +0 -3
- package/lib/VelocityAnimation/index.js +0 -3
- package/lib/css.js +0 -40
- package/lib/deprecated/PortalLayer/PortalLayer.js +24 -47
- package/lib/deprecated/PortalLayer/props/propTypes.js +0 -3
- package/lib/index.js +0 -57
- package/lib/semantic/Button/Button.js +22 -42
- package/lib/semantic/Button/props/propTypes.js +0 -3
- package/lib/semantic/index.js +0 -2
- package/lib/utils/Common.js +18 -108
- package/lib/utils/ContextOptimizer.js +10 -16
- package/lib/utils/__tests__/constructFullName.spec.js +0 -1
- package/lib/utils/__tests__/debounce.spec.js +2 -3
- package/lib/utils/__tests__/getInitial.spec.js +0 -1
- package/lib/utils/constructFullName.js +4 -13
- package/lib/utils/css/compileClassNames.js +0 -6
- package/lib/utils/css/mergeStyle.js +7 -10
- package/lib/utils/css/utils.js +0 -8
- package/lib/utils/datetime/common.js +7 -52
- package/lib/utils/debounce.js +1 -6
- package/lib/utils/dropDownUtils.js +60 -176
- package/lib/utils/dummyFunction.js +0 -2
- package/lib/utils/getHTMLFontSize.js +0 -1
- package/lib/utils/getInitial.js +0 -6
- package/lib/utils/index.js +0 -4
- package/lib/utils/scrollTo.js +0 -2
- package/lib/utils/shallowEqual.js +0 -8
- package/package.json +2 -2
- package/es/utils/datetime/GMTZones.js +0 -48
- package/lib/utils/datetime/GMTZones.js +0 -55
|
@@ -1,139 +1,87 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports["default"] = exports.MultiSelectComponent = void 0;
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
|
|
12
9
|
var _propTypes = require("./props/propTypes");
|
|
13
|
-
|
|
14
10
|
var _defaultProps = require("./props/defaultProps");
|
|
15
|
-
|
|
16
11
|
var _Popup = _interopRequireDefault(require("../Popup/Popup"));
|
|
17
|
-
|
|
18
12
|
var _TextBoxIcon = _interopRequireDefault(require("../TextBoxIcon/TextBoxIcon"));
|
|
19
|
-
|
|
20
13
|
var _Layout = require("../Layout");
|
|
21
|
-
|
|
22
14
|
var _Card = _interopRequireWildcard(require("../Card/Card"));
|
|
23
|
-
|
|
24
15
|
var _SelectedOptions = _interopRequireDefault(require("./SelectedOptions"));
|
|
25
|
-
|
|
26
16
|
var _Suggestions = _interopRequireDefault(require("./Suggestions"));
|
|
27
|
-
|
|
28
17
|
var _EmptyState = _interopRequireDefault(require("./EmptyState"));
|
|
29
|
-
|
|
30
18
|
var _MultiSelectHeader = _interopRequireDefault(require("./MultiSelectHeader"));
|
|
31
|
-
|
|
32
19
|
var _CssProvider = _interopRequireDefault(require("../Provider/CssProvider"));
|
|
33
|
-
|
|
34
20
|
var _IdProvider = require("../Provider/IdProvider");
|
|
35
|
-
|
|
36
21
|
var _ResponsiveDropBox = _interopRequireDefault(require("../ResponsiveDropBox/ResponsiveDropBox"));
|
|
37
|
-
|
|
38
22
|
var _CustomResponsive = require("../Responsive/CustomResponsive");
|
|
39
|
-
|
|
40
23
|
var _Loader = _interopRequireDefault(require("@zohodesk/svg/lib/Loader/Loader"));
|
|
41
|
-
|
|
42
24
|
var _icons = require("@zohodesk/icons");
|
|
43
|
-
|
|
44
25
|
var _MultiSelectModule = _interopRequireDefault(require("./MultiSelect.module.css"));
|
|
45
|
-
|
|
46
26
|
var _Common = require("../utils/Common.js");
|
|
47
|
-
|
|
48
27
|
var _dropDownUtils = require("../utils/dropDownUtils");
|
|
49
|
-
|
|
50
28
|
var _Config = require("../Provider/Config");
|
|
51
|
-
|
|
52
29
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
53
|
-
|
|
54
30
|
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; }
|
|
55
|
-
|
|
56
31
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
57
|
-
|
|
58
32
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
59
|
-
|
|
60
33
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
61
|
-
|
|
62
|
-
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
63
|
-
|
|
34
|
+
function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
|
|
64
35
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
65
|
-
|
|
66
36
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
67
|
-
|
|
68
37
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
69
|
-
|
|
70
38
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
71
|
-
|
|
72
39
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
73
|
-
|
|
74
40
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
75
|
-
|
|
76
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
77
|
-
|
|
41
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
78
42
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
79
|
-
|
|
80
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
81
|
-
|
|
43
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
82
44
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
83
|
-
|
|
45
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
46
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
84
47
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
85
|
-
|
|
86
48
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
87
|
-
|
|
88
49
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
89
|
-
|
|
90
50
|
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
91
|
-
|
|
92
51
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
93
|
-
|
|
94
52
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
95
|
-
|
|
96
|
-
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
97
|
-
|
|
53
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } /**** Libraries ****/ /**** Components ****/ /**** Icons ****/ /**** CSS ****/ /**** Methods ****/
|
|
98
54
|
/* eslint-disable react/forbid-component-props */
|
|
99
|
-
|
|
100
55
|
/* eslint-disable react/no-unused-prop-types */
|
|
101
56
|
var dummyArray = [];
|
|
102
|
-
|
|
103
57
|
var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
104
58
|
_inherits(MultiSelectComponent, _React$Component);
|
|
105
|
-
|
|
106
59
|
var _super = _createSuper(MultiSelectComponent);
|
|
107
|
-
|
|
108
60
|
function MultiSelectComponent(props) {
|
|
109
61
|
var _this;
|
|
110
|
-
|
|
111
62
|
_classCallCheck(this, MultiSelectComponent);
|
|
112
|
-
|
|
113
63
|
_this = _super.call(this, props);
|
|
114
64
|
_this.getNextAriaId = (0, _IdProvider.getUniqueId)(_assertThisInitialized(_this));
|
|
115
65
|
_this.getFilterSuggestions = (0, _dropDownUtils.makeGetMultiSelectFilterSuggestions)();
|
|
116
66
|
_this.formatOptions = (0, _dropDownUtils.makeFormatOptions)();
|
|
117
67
|
_this.getSelectedOptions = (0, _dropDownUtils.makeGetMultiSelectSelectedOptions)();
|
|
118
|
-
_this.getIsShowClearIcon = (0, _dropDownUtils.makeGetIsShowClearIcon)();
|
|
68
|
+
_this.getIsShowClearIcon = (0, _dropDownUtils.makeGetIsShowClearIcon)();
|
|
119
69
|
|
|
70
|
+
//Use in AdvancedMultiSelect component
|
|
120
71
|
_this.objectConcat = (0, _dropDownUtils.makeObjectConcat)();
|
|
121
72
|
_this.formatSelectedOptions = (0, _dropDownUtils.makeFormatOptions)();
|
|
122
73
|
var _this$props = _this.props,
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
74
|
+
selectedOptions = _this$props.selectedOptions,
|
|
75
|
+
_this$props$searchDeb = _this$props.searchDebounceTime,
|
|
76
|
+
searchDebounceTime = _this$props$searchDeb === void 0 ? 500 : _this$props$searchDeb;
|
|
127
77
|
var _this$handleFormatOpt = _this.handleFormatOptions(_this.props),
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
78
|
+
allOptions = _this$handleFormatOpt.allOptions,
|
|
79
|
+
normalizedAllOptions = _this$handleFormatOpt.normalizedAllOptions,
|
|
80
|
+
normalizedFormatOptions = _this$handleFormatOpt.normalizedFormatOptions;
|
|
132
81
|
var _this$handleGetSelect = _this.handleGetSelectedOptions(selectedOptions, normalizedFormatOptions, _this.props),
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
82
|
+
formatSelectedOptions = _this$handleGetSelect.formatSelectedOptions,
|
|
83
|
+
normalizedSelectedOptions = _this$handleGetSelect.normalizedSelectedOptions,
|
|
84
|
+
selectedOptionIds = _this$handleGetSelect.selectedOptionIds;
|
|
137
85
|
_this.state = {
|
|
138
86
|
options: allOptions,
|
|
139
87
|
optionsNormalize: normalizedAllOptions,
|
|
@@ -150,50 +98,43 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
150
98
|
_this.allSelectedOptionsDetails = normalizedSelectedOptions;
|
|
151
99
|
_this.suggestionsOrder = [];
|
|
152
100
|
_this._isMounted = false;
|
|
153
|
-
|
|
154
101
|
_Common.bind.apply(_assertThisInitialized(_this), ['handleInputCick', 'handleFilterSuggestions', 'handleKeyDown', 'handleSelectAll', 'handleDeselectAll', 'handleSelectOption', 'handleRemoveOption', 'handleSearch', 'handleClickSelectedOption', 'handleChange', 'handlePopupClose', 'togglePopup', 'selectedOptionRef', 'searchInputRef', 'suggestionContainerRef', 'suggestionItemRef', 'selectedOptionContainerRef', 'handleActive', 'handleInactive', 'handleMouseEnter', 'handleFetchOptions', 'handleFormatOptions', 'handleGetSelectedOptions', 'handleComponentDidUpdate', 'handleInputFocus', 'handleExposedPublicMethods']);
|
|
155
|
-
|
|
156
102
|
_this.handleSearchOptions = (0, _Common.debounce)(_this.handleSearchOptions.bind(_assertThisInitialized(_this)), searchDebounceTime);
|
|
157
103
|
_this.handleScroll = _this.handleScroll.bind(_assertThisInitialized(_this));
|
|
158
104
|
_this.handleScrollFuncCall = (0, _Common.debounce)(_this.handleScrollFuncCall.bind(_assertThisInitialized(_this)), 500);
|
|
159
105
|
return _this;
|
|
160
106
|
}
|
|
161
|
-
|
|
162
107
|
_createClass(MultiSelectComponent, [{
|
|
163
108
|
key: "componentDidMount",
|
|
164
109
|
value: function componentDidMount() {
|
|
165
110
|
// let { suggestionContainer } = this;
|
|
166
111
|
this._isMounted = true;
|
|
167
|
-
this.handleExposedPublicMethods();
|
|
112
|
+
this.handleExposedPublicMethods();
|
|
113
|
+
// suggestionContainer &&
|
|
168
114
|
// suggestionContainer.addEventListener('scroll', this.handleScroll);
|
|
169
115
|
}
|
|
170
116
|
}, {
|
|
171
117
|
key: "componentWillReceiveProps",
|
|
172
118
|
value: function componentWillReceiveProps(nextProps) {
|
|
173
119
|
var _this2 = this;
|
|
174
|
-
|
|
175
120
|
var selectedOptions = nextProps.selectedOptions,
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
121
|
+
options = nextProps.options,
|
|
122
|
+
valueField = nextProps.valueField,
|
|
123
|
+
textField = nextProps.textField,
|
|
124
|
+
prefixText = nextProps.prefixText;
|
|
180
125
|
var oldProps = this.props;
|
|
181
|
-
|
|
182
126
|
if (selectedOptions !== oldProps.selectedOptions || options !== oldProps.options || valueField !== oldProps.valueField || textField !== oldProps.textField || prefixText !== oldProps.prefixText //For GroupMultiSelect component
|
|
183
127
|
) {
|
|
184
128
|
var _this$handleFormatOpt2 = this.handleFormatOptions(nextProps),
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
129
|
+
allOptions = _this$handleFormatOpt2.allOptions,
|
|
130
|
+
normalizedAllOptions = _this$handleFormatOpt2.normalizedAllOptions,
|
|
131
|
+
normalizedFormatOptions = _this$handleFormatOpt2.normalizedFormatOptions;
|
|
189
132
|
var oldAllSelectedOptionsDetails = this.allSelectedOptionsDetails;
|
|
190
133
|
var optionsDetails = Object.assign({}, oldAllSelectedOptionsDetails, normalizedFormatOptions);
|
|
191
|
-
|
|
192
134
|
var _this$handleGetSelect2 = this.handleGetSelectedOptions(selectedOptions, optionsDetails, nextProps),
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
135
|
+
formatSelectedOptions = _this$handleGetSelect2.formatSelectedOptions,
|
|
136
|
+
normalizedSelectedOptions = _this$handleGetSelect2.normalizedSelectedOptions,
|
|
137
|
+
selectedOptionIds = _this$handleGetSelect2.selectedOptionIds;
|
|
197
138
|
this.allSelectedOptionsDetails = Object.assign(oldAllSelectedOptionsDetails, normalizedSelectedOptions);
|
|
198
139
|
this.setState({
|
|
199
140
|
options: allOptions,
|
|
@@ -202,16 +143,11 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
202
143
|
selectedOptionIds: selectedOptionIds
|
|
203
144
|
}, function () {
|
|
204
145
|
var hoverOption = _this2.state.hoverOption;
|
|
205
|
-
|
|
206
146
|
var suggestions = _this2.handleFilterSuggestions();
|
|
207
|
-
|
|
208
147
|
var suggestionsLen = suggestions.length;
|
|
209
|
-
|
|
210
148
|
var _ref = suggestions[hoverOption] || {},
|
|
211
|
-
|
|
212
|
-
|
|
149
|
+
id = _ref.id;
|
|
213
150
|
var newHoverOption = !(0, _Common.getIsEmptyValue)(id) ? hoverOption : suggestionsLen ? suggestionsLen - 1 : 0;
|
|
214
|
-
|
|
215
151
|
_this2.setState({
|
|
216
152
|
hoverOption: newHoverOption
|
|
217
153
|
});
|
|
@@ -222,23 +158,23 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
222
158
|
key: "componentDidUpdate",
|
|
223
159
|
value: function componentDidUpdate(prevProps, prevState) {
|
|
224
160
|
var suggestionContainer = this.suggestionContainer,
|
|
225
|
-
|
|
226
|
-
|
|
161
|
+
selectedOptionContainer = this.selectedOptionContainer,
|
|
162
|
+
suggestionsOrder = this.suggestionsOrder;
|
|
227
163
|
var _this$state = this.state,
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
164
|
+
hoverOption = _this$state.hoverOption,
|
|
165
|
+
highLightedSelectOptions = _this$state.highLightedSelectOptions,
|
|
166
|
+
selectedOptions = _this$state.selectedOptions,
|
|
167
|
+
searchStr = _this$state.searchStr;
|
|
232
168
|
var _this$props2 = this.props,
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
169
|
+
needLocalSearch = _this$props2.needLocalSearch,
|
|
170
|
+
isPopupOpen = _this$props2.isPopupOpen,
|
|
171
|
+
onDropBoxClose = _this$props2.onDropBoxClose,
|
|
172
|
+
onDropBoxOpen = _this$props2.onDropBoxOpen,
|
|
173
|
+
isSearchClearOnClose = _this$props2.isSearchClearOnClose;
|
|
238
174
|
|
|
175
|
+
//handle dropbox open & close
|
|
239
176
|
if (prevProps.isPopupOpen !== isPopupOpen) {
|
|
240
177
|
isPopupOpen && onDropBoxOpen && this.handleFetchOptions(onDropBoxOpen, searchStr);
|
|
241
|
-
|
|
242
178
|
if (!isPopupOpen) {
|
|
243
179
|
this.setState({
|
|
244
180
|
hoverOption: 0
|
|
@@ -246,35 +182,36 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
246
182
|
isSearchClearOnClose && searchStr && this.handleSearch('');
|
|
247
183
|
onDropBoxClose && onDropBoxClose();
|
|
248
184
|
}
|
|
249
|
-
}
|
|
250
|
-
|
|
185
|
+
}
|
|
251
186
|
|
|
187
|
+
//scrollTo handling
|
|
252
188
|
var hoverId = suggestionsOrder[hoverOption] || '';
|
|
253
189
|
var selectedSuggestion = this["suggestion_".concat(hoverId)];
|
|
254
190
|
var lastHighLightedSelectOption = highLightedSelectOptions.slice(-1).length ? highLightedSelectOptions.slice(-1)[0] : null;
|
|
255
191
|
var selectedOption = this["selectedOption_".concat(lastHighLightedSelectOption)];
|
|
256
192
|
isPopupOpen && (0, _Common.scrollTo)(suggestionContainer, selectedSuggestion);
|
|
257
|
-
selectedOptions.length && selectedOption && (0, _Common.scrollTo)(selectedOptionContainer, selectedOption);
|
|
193
|
+
selectedOptions.length && selectedOption && (0, _Common.scrollTo)(selectedOptionContainer, selectedOption);
|
|
258
194
|
|
|
195
|
+
//When suggestions length less than 5, getNextOptions function call
|
|
259
196
|
var _this$props3 = this.props,
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
197
|
+
isNextOptions = _this$props3.isNextOptions,
|
|
198
|
+
getNextOptions = _this$props3.getNextOptions;
|
|
199
|
+
// let { searchStr } = this.state;
|
|
263
200
|
var suggestions = this.handleFilterSuggestions();
|
|
264
201
|
var suggestionsLen = suggestions.length;
|
|
265
|
-
|
|
266
202
|
if (isPopupOpen && suggestionsLen <= 5 && isNextOptions && getNextOptions && !needLocalSearch) {
|
|
267
203
|
this.handleFetchOptions(getNextOptions, searchStr);
|
|
268
|
-
}
|
|
269
|
-
|
|
204
|
+
}
|
|
270
205
|
|
|
206
|
+
//Need To MultiselectNew Component
|
|
271
207
|
this.handleComponentDidUpdate(prevProps, prevState);
|
|
272
208
|
}
|
|
273
209
|
}, {
|
|
274
210
|
key: "componentWillUnmount",
|
|
275
211
|
value: function componentWillUnmount() {
|
|
276
212
|
// let { suggestionContainer } = this;
|
|
277
|
-
this._isMounted = false;
|
|
213
|
+
this._isMounted = false;
|
|
214
|
+
// suggestionContainer &&
|
|
278
215
|
// suggestionContainer.removeEventListener('scroll', this.handleScroll);
|
|
279
216
|
}
|
|
280
217
|
}, {
|
|
@@ -286,10 +223,10 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
286
223
|
key: "handleFormatOptions",
|
|
287
224
|
value: function handleFormatOptions(props) {
|
|
288
225
|
var options = props.options,
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
226
|
+
valueField = props.valueField,
|
|
227
|
+
textField = props.textField,
|
|
228
|
+
prefixText = props.prefixText,
|
|
229
|
+
disabledOptions = props.disabledOptions;
|
|
293
230
|
return this.formatOptions({
|
|
294
231
|
options: options,
|
|
295
232
|
valueField: valueField,
|
|
@@ -312,10 +249,9 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
312
249
|
value: function handleInputCick(e) {
|
|
313
250
|
var removeClose = this.props.removeClose;
|
|
314
251
|
var _this$state2 = this.state,
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
252
|
+
highLightedSelectOptions = _this$state2.highLightedSelectOptions,
|
|
253
|
+
_this$state2$searchSt = _this$state2.searchStr,
|
|
254
|
+
searchStr = _this$state2$searchSt === void 0 ? '' : _this$state2$searchSt;
|
|
319
255
|
if (highLightedSelectOptions.length) {
|
|
320
256
|
this.setState({
|
|
321
257
|
highLightedSelectOptions: [],
|
|
@@ -333,25 +269,23 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
333
269
|
key: "handleFilterSuggestions",
|
|
334
270
|
value: function handleFilterSuggestions() {
|
|
335
271
|
var _this$state3 = this.state,
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
272
|
+
_this$state3$options = _this$state3.options,
|
|
273
|
+
options = _this$state3$options === void 0 ? dummyArray : _this$state3$options,
|
|
274
|
+
_this$state3$searchSt = _this$state3.searchStr,
|
|
275
|
+
searchStr = _this$state3$searchSt === void 0 ? '' : _this$state3$searchSt;
|
|
340
276
|
var _this$props4 = this.props,
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
277
|
+
selectedOptions = _this$props4.selectedOptions,
|
|
278
|
+
needLocalSearch = _this$props4.needLocalSearch,
|
|
279
|
+
keepSelectedOptions = _this$props4.keepSelectedOptions;
|
|
345
280
|
var _this$getFilterSugges = this.getFilterSuggestions({
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
281
|
+
options: options,
|
|
282
|
+
selectedOptions: selectedOptions,
|
|
283
|
+
searchStr: (0, _Common.getSearchString)(searchStr),
|
|
284
|
+
needSearch: needLocalSearch,
|
|
285
|
+
keepSelectedOptions: keepSelectedOptions
|
|
286
|
+
}),
|
|
287
|
+
suggestions = _this$getFilterSugges.suggestions,
|
|
288
|
+
suggestionIds = _this$getFilterSugges.suggestionIds;
|
|
355
289
|
this.suggestionsOrder = suggestionIds;
|
|
356
290
|
return suggestions;
|
|
357
291
|
}
|
|
@@ -359,45 +293,38 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
359
293
|
key: "handleKeyDown",
|
|
360
294
|
value: function handleKeyDown(e) {
|
|
361
295
|
var keyCode = e.keyCode,
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
296
|
+
ctrlKey = e.ctrlKey,
|
|
297
|
+
metaKey = e.metaKey,
|
|
298
|
+
shiftKey = e.shiftKey;
|
|
365
299
|
var suggestions = [];
|
|
366
300
|
var _this$state4 = this.state,
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
301
|
+
hoverOption = _this$state4.hoverOption,
|
|
302
|
+
searchStr = _this$state4.searchStr,
|
|
303
|
+
highLightedSelectOptions = _this$state4.highLightedSelectOptions,
|
|
304
|
+
lastHighLightedSelectOption = _this$state4.lastHighLightedSelectOption,
|
|
305
|
+
shiftKeyPressHighLighted = _this$state4.shiftKeyPressHighLighted,
|
|
306
|
+
selectedOptions = _this$state4.selectedOptionIds;
|
|
373
307
|
var _this$props5 = this.props,
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
308
|
+
isNextOptions = _this$props5.isNextOptions,
|
|
309
|
+
getNextOptions = _this$props5.getNextOptions,
|
|
310
|
+
isPopupOpen = _this$props5.isPopupOpen,
|
|
311
|
+
isPopupOpenOnEnter = _this$props5.isPopupOpenOnEnter,
|
|
312
|
+
onKeyDown = _this$props5.onKeyDown;
|
|
379
313
|
var highLightedSelectOptionsLen = highLightedSelectOptions.length;
|
|
380
|
-
|
|
381
314
|
if (isPopupOpen && (keyCode === 38 || keyCode === 40 || keyCode === 13 || keyCode === 27 || keyCode === 9)) {
|
|
382
315
|
suggestions = this.handleFilterSuggestions();
|
|
383
316
|
}
|
|
384
|
-
|
|
385
317
|
if (!isPopupOpen && !isPopupOpenOnEnter) {
|
|
386
318
|
onKeyDown && onKeyDown(e);
|
|
387
319
|
}
|
|
388
|
-
|
|
389
320
|
if (!isPopupOpen && keyCode === 40) {
|
|
390
321
|
//down arrow press popup open
|
|
391
322
|
e.preventDefault(); //prevent body scroll
|
|
392
|
-
|
|
393
323
|
this.togglePopup(e);
|
|
394
324
|
}
|
|
395
|
-
|
|
396
325
|
var suggestionsLen = suggestions.length;
|
|
397
|
-
|
|
398
326
|
if (suggestionsLen && isPopupOpen && keyCode === 38) {
|
|
399
327
|
//up arrow
|
|
400
|
-
|
|
401
328
|
/*if (hoverOption === 0) { //disable first to last option higlight
|
|
402
329
|
!isNextOptions && this.setState({ hoverOption: suggestionsLen - 1 });
|
|
403
330
|
}*/
|
|
@@ -408,7 +335,6 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
408
335
|
}
|
|
409
336
|
} else if (suggestionsLen && isPopupOpen && keyCode === 40) {
|
|
410
337
|
//down arrow
|
|
411
|
-
|
|
412
338
|
/*else if (hoverOption === suggestionsLen - 1 || hoverOption === null) {
|
|
413
339
|
//disable last to first option higlight
|
|
414
340
|
!isNextOptions && this.setState({ hoverOption: 0 });
|
|
@@ -434,7 +360,8 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
434
360
|
if (highLightedSelectOptionsLen) {
|
|
435
361
|
this.handleRemoveOption(highLightedSelectOptions);
|
|
436
362
|
} else {
|
|
437
|
-
this.handleRemoveOption(selectedOptions.slice(-1));
|
|
363
|
+
this.handleRemoveOption(selectedOptions.slice(-1));
|
|
364
|
+
// this.setState({
|
|
438
365
|
// highLightedSelectOptions: selectedOptions.slice(-1)
|
|
439
366
|
// });
|
|
440
367
|
}
|
|
@@ -449,7 +376,6 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
449
376
|
var lastHighLightedSelectOptionIndex = lastHighLightedSelectOption && selectedOptions.indexOf(lastHighLightedSelectOption) >= 0 ? selectedOptions.indexOf(lastHighLightedSelectOption) : 0;
|
|
450
377
|
var newShiftKeyPressHighLighted = shiftKeyPressHighLighted ? shiftKeyPressHighLighted : shiftKeyPressHighLighted + 1;
|
|
451
378
|
var newHighLightedSelectOption = lastHighLightedSelectOptionIndex !== null ? selectedOptions[lastHighLightedSelectOptionIndex + newShiftKeyPressHighLighted] : selectedOptions[0];
|
|
452
|
-
|
|
453
379
|
if (!(0, _Common.getIsEmptyValue)(newHighLightedSelectOption)) {
|
|
454
380
|
var newLastHighLightedSelectOption = lastHighLightedSelectOption ? lastHighLightedSelectOption : selectedOptions[0];
|
|
455
381
|
highLightedSelectOptions = !shiftKeyPressHighLighted ? [newLastHighLightedSelectOption] : highLightedSelectOptions;
|
|
@@ -466,22 +392,15 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
466
392
|
} else if (keyCode === 37 && shiftKey && selectedOptions.length && !searchStr.length) {
|
|
467
393
|
// shift+left arrow=37
|
|
468
394
|
var _lastHighLightedSelectOptionIndex = lastHighLightedSelectOption ? selectedOptions.indexOf(lastHighLightedSelectOption) : selectedOptions.length - 1;
|
|
469
|
-
|
|
470
395
|
var _newShiftKeyPressHighLighted = shiftKeyPressHighLighted !== 1 ? shiftKeyPressHighLighted : shiftKeyPressHighLighted - 1;
|
|
471
|
-
|
|
472
396
|
var _newHighLightedSelectOption = selectedOptions[_lastHighLightedSelectOptionIndex + _newShiftKeyPressHighLighted - 1];
|
|
473
|
-
|
|
474
397
|
if (!(0, _Common.getIsEmptyValue)(_newHighLightedSelectOption)) {
|
|
475
398
|
var _newLastHighLightedSelectOption = lastHighLightedSelectOption ? lastHighLightedSelectOption : selectedOptions.slice(-1)[0];
|
|
476
|
-
|
|
477
399
|
highLightedSelectOptions = !shiftKeyPressHighLighted ? [_newLastHighLightedSelectOption] : highLightedSelectOptions;
|
|
478
|
-
|
|
479
400
|
var _isRemove = highLightedSelectOptions.indexOf(_newHighLightedSelectOption) >= 0 && _newHighLightedSelectOption !== lastHighLightedSelectOption ? true : false;
|
|
480
|
-
|
|
481
401
|
var _newHighLightedSelectOptions = _isRemove ? highLightedSelectOptions.filter(function (option) {
|
|
482
402
|
return option !== _newHighLightedSelectOption;
|
|
483
403
|
}) : [].concat(_toConsumableArray(highLightedSelectOptions), [_newHighLightedSelectOption]);
|
|
484
|
-
|
|
485
404
|
this.setState({
|
|
486
405
|
highLightedSelectOptions: _newHighLightedSelectOptions,
|
|
487
406
|
shiftKeyPressHighLighted: _newShiftKeyPressHighLighted - 1,
|
|
@@ -489,19 +408,16 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
489
408
|
});
|
|
490
409
|
}
|
|
491
410
|
} else if ((keyCode === 39 || keyCode === 37) && selectedOptions.length && !searchStr.length) {
|
|
492
|
-
var isRightArrow = keyCode === 39 ? true : false;
|
|
493
|
-
|
|
411
|
+
var isRightArrow = keyCode === 39 ? true : false;
|
|
412
|
+
// let isLefttArrow = keyCode === 37 ? true : false;
|
|
494
413
|
if (highLightedSelectOptions.length) {
|
|
495
414
|
var _highLightedSelectOpt = highLightedSelectOptions.slice(-1),
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
415
|
+
_highLightedSelectOpt2 = _slicedToArray(_highLightedSelectOpt, 1),
|
|
416
|
+
_lastHighLightedSelectOption = _highLightedSelectOpt2[0];
|
|
499
417
|
var _lastHighLightedSelectOptionIndex2 = selectedOptions.indexOf(_lastHighLightedSelectOption);
|
|
500
|
-
|
|
501
418
|
var newLastHighLightedSelectOptionIndex = isRightArrow ? _lastHighLightedSelectOptionIndex2 === selectedOptions.length - 1 ? _lastHighLightedSelectOptionIndex2 : _lastHighLightedSelectOptionIndex2 + 1 : _lastHighLightedSelectOptionIndex2 - 1;
|
|
502
419
|
var _newLastHighLightedSelectOption2 = selectedOptions[newLastHighLightedSelectOptionIndex];
|
|
503
420
|
var isEmptyHighlighted = isRightArrow && highLightedSelectOptions.length === 1 && selectedOptions.slice(-1)[0] === _lastHighLightedSelectOption ? true : false;
|
|
504
|
-
|
|
505
421
|
if (!(0, _Common.getIsEmptyValue)(_newLastHighLightedSelectOption2)) {
|
|
506
422
|
this.setState({
|
|
507
423
|
lastHighLightedSelectOption: isEmptyHighlighted ? '' : _newLastHighLightedSelectOption2,
|
|
@@ -511,16 +427,16 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
511
427
|
}
|
|
512
428
|
} else {
|
|
513
429
|
var _ref2 = isRightArrow ? selectedOptions : selectedOptions.slice(-1),
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
430
|
+
_ref3 = _slicedToArray(_ref2, 1),
|
|
431
|
+
_newLastHighLightedSelectOption3 = _ref3[0];
|
|
517
432
|
this.setState({
|
|
518
433
|
lastHighLightedSelectOption: _newLastHighLightedSelectOption3,
|
|
519
434
|
highLightedSelectOptions: [_newLastHighLightedSelectOption3],
|
|
520
435
|
shiftKeyPressHighLighted: 0
|
|
521
436
|
});
|
|
522
437
|
}
|
|
523
|
-
} else if (keyCode === 27) {
|
|
438
|
+
} else if (keyCode === 27) {
|
|
439
|
+
// this.handlePopupClose(e);
|
|
524
440
|
} else if (keyCode === 9) {
|
|
525
441
|
this.handlePopupClose(e);
|
|
526
442
|
}
|
|
@@ -534,12 +450,12 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
534
450
|
var newSelectedOptions = [];
|
|
535
451
|
suggestions.forEach(function (option) {
|
|
536
452
|
var id = option.id;
|
|
537
|
-
|
|
538
453
|
if (selectedOptions.indexOf(id) === -1) {
|
|
539
454
|
newSelectedOptions.push(id);
|
|
540
455
|
}
|
|
541
456
|
});
|
|
542
|
-
this.handleChange([].concat(_toConsumableArray(selectedOptions), newSelectedOptions));
|
|
457
|
+
this.handleChange([].concat(_toConsumableArray(selectedOptions), newSelectedOptions));
|
|
458
|
+
// this.handlePopupClose(e);
|
|
543
459
|
}
|
|
544
460
|
}, {
|
|
545
461
|
key: "handleDeselectAll",
|
|
@@ -547,14 +463,12 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
547
463
|
e && e.preventDefault();
|
|
548
464
|
var removeClose = this.props.removeClose;
|
|
549
465
|
var highLightedSelectOptions = this.state.highLightedSelectOptions;
|
|
550
|
-
|
|
551
466
|
if (highLightedSelectOptions.length) {
|
|
552
467
|
this.setState({
|
|
553
468
|
highLightedSelectOptions: [],
|
|
554
469
|
lastHighLightedSelectOption: ''
|
|
555
470
|
});
|
|
556
471
|
}
|
|
557
|
-
|
|
558
472
|
removeClose(e);
|
|
559
473
|
this.handleChange([]);
|
|
560
474
|
}
|
|
@@ -562,15 +476,13 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
562
476
|
key: "handleSelectOption",
|
|
563
477
|
value: function handleSelectOption(option, value, index, e) {
|
|
564
478
|
var _this$props6 = this.props,
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
479
|
+
selectedOptions = _this$props6.selectedOptions,
|
|
480
|
+
isSearchClearOnSelect = _this$props6.isSearchClearOnSelect,
|
|
481
|
+
keepSelectedOptions = _this$props6.keepSelectedOptions;
|
|
568
482
|
var searchStr = this.state.searchStr;
|
|
569
|
-
|
|
570
483
|
if (searchStr.trim() != '' && isSearchClearOnSelect) {
|
|
571
484
|
this.handleSearch('');
|
|
572
485
|
}
|
|
573
|
-
|
|
574
486
|
if (keepSelectedOptions && selectedOptions.indexOf(option) != -1) {
|
|
575
487
|
var newSelectedOptions = selectedOptions.filter(function (id) {
|
|
576
488
|
return id != option;
|
|
@@ -585,13 +497,12 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
585
497
|
value: function handleRemoveOption(options) {
|
|
586
498
|
var newOptions = !(0, _Common.getIsEmptyValue)(options) && !Array.isArray(options) ? [options] : options;
|
|
587
499
|
var _this$props7 = this.props,
|
|
588
|
-
|
|
589
|
-
|
|
500
|
+
selectedOptions = _this$props7.selectedOptions,
|
|
501
|
+
isReadOnly = _this$props7.isReadOnly;
|
|
590
502
|
var _this$state5 = this.state,
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
503
|
+
highLightedSelectOptions = _this$state5.highLightedSelectOptions,
|
|
504
|
+
lastHighLightedSelectOption = _this$state5.lastHighLightedSelectOption,
|
|
505
|
+
shiftKeyPressHighLighted = _this$state5.shiftKeyPressHighLighted;
|
|
595
506
|
if (newOptions.length && !isReadOnly) {
|
|
596
507
|
var newSelectedOptions = selectedOptions.filter(function (option) {
|
|
597
508
|
return newOptions.indexOf(option) === -1;
|
|
@@ -601,16 +512,13 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
601
512
|
});
|
|
602
513
|
var isHighlightedRemoved = false;
|
|
603
514
|
var newOptionsLen = newOptions.length;
|
|
604
|
-
|
|
605
515
|
for (var i = 0; i < newOptionsLen; i++) {
|
|
606
516
|
var removedOption = newOptions[i];
|
|
607
|
-
|
|
608
517
|
if (highLightedSelectOptions.indexOf(removedOption) >= 0) {
|
|
609
518
|
isHighlightedRemoved = true;
|
|
610
519
|
break;
|
|
611
520
|
}
|
|
612
521
|
}
|
|
613
|
-
|
|
614
522
|
this.setState({
|
|
615
523
|
lastHighLightedSelectOption: newSelectedOptions.indexOf(lastHighLightedSelectOption) >= 0 && !isHighlightedRemoved ? lastHighLightedSelectOption : '',
|
|
616
524
|
highLightedSelectOptions: isHighlightedRemoved ? [] : newHighLightedSelectOptions,
|
|
@@ -618,7 +526,6 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
618
526
|
});
|
|
619
527
|
this.handleChange(newSelectedOptions);
|
|
620
528
|
}
|
|
621
|
-
|
|
622
529
|
this.searchInput && this.searchInput.focus({
|
|
623
530
|
preventScroll: true
|
|
624
531
|
});
|
|
@@ -630,7 +537,6 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
630
537
|
var hoverOption = this.state.hoverOption;
|
|
631
538
|
var suggestionsOrder = this.suggestionsOrder;
|
|
632
539
|
var newHoverIndex = suggestionsOrder.indexOf(id);
|
|
633
|
-
|
|
634
540
|
if (newHoverIndex !== hoverOption) {
|
|
635
541
|
this.setState({
|
|
636
542
|
hoverOption: newHoverIndex
|
|
@@ -641,22 +547,18 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
641
547
|
key: "handleFetchOptions",
|
|
642
548
|
value: function handleFetchOptions() {
|
|
643
549
|
var _this3 = this;
|
|
644
|
-
|
|
645
550
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
646
551
|
args[_key] = arguments[_key];
|
|
647
552
|
}
|
|
648
|
-
|
|
649
553
|
var APICall = args[0],
|
|
650
|
-
|
|
554
|
+
searchStr = args[1];
|
|
651
555
|
var isFetchingOptions = this.state.isFetchingOptions;
|
|
652
556
|
var _isMounted = this._isMounted;
|
|
653
557
|
var isForce = isFetchingOptions && searchStr ? true : false;
|
|
654
|
-
|
|
655
558
|
if (!isFetchingOptions && APICall || isForce) {
|
|
656
559
|
this.setState({
|
|
657
560
|
isFetchingOptions: true
|
|
658
561
|
});
|
|
659
|
-
|
|
660
562
|
try {
|
|
661
563
|
return APICall(searchStr).then(function () {
|
|
662
564
|
_isMounted && _this3.setState({
|
|
@@ -685,13 +587,12 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
685
587
|
key: "handleSearch",
|
|
686
588
|
value: function handleSearch(value, e) {
|
|
687
589
|
var _this4 = this;
|
|
688
|
-
|
|
689
590
|
var _this$props8 = this.props,
|
|
690
|
-
|
|
691
|
-
|
|
591
|
+
onSearch = _this$props8.onSearch,
|
|
592
|
+
isPopupOpen = _this$props8.isPopupOpen;
|
|
692
593
|
!isPopupOpen && e && this.togglePopup(e);
|
|
693
594
|
var _this$state$searchStr = this.state.searchStr,
|
|
694
|
-
|
|
595
|
+
searchStr = _this$state$searchStr === void 0 ? '' : _this$state$searchStr;
|
|
695
596
|
var searchStrRegex = (0, _Common.getSearchString)(searchStr);
|
|
696
597
|
var valueStrRegex = (0, _Common.getSearchString)(value);
|
|
697
598
|
var isSearch = searchStrRegex !== valueStrRegex ? true : false;
|
|
@@ -712,22 +613,19 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
712
613
|
var e = arguments.length > 1 ? arguments[1] : undefined;
|
|
713
614
|
var selectedOptions = this.props.selectedOptions;
|
|
714
615
|
var _this$state6 = this.state,
|
|
715
|
-
|
|
716
|
-
|
|
616
|
+
highLightedSelectOptions = _this$state6.highLightedSelectOptions,
|
|
617
|
+
lastHighLightedSelectOption = _this$state6.lastHighLightedSelectOption;
|
|
717
618
|
var metaKey = e.metaKey,
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
619
|
+
ctrlKey = e.ctrlKey,
|
|
620
|
+
shiftKey = e.shiftKey;
|
|
721
621
|
if (e && shiftKey) {
|
|
722
622
|
//shift+click
|
|
723
623
|
var from = selectedOptions.indexOf(lastHighLightedSelectOption) >= 0 ? selectedOptions.indexOf(lastHighLightedSelectOption) : 0;
|
|
724
624
|
var to = id && selectedOptions.indexOf(id) >= 0 ? selectedOptions.indexOf(id) : null;
|
|
725
|
-
|
|
726
625
|
if (to >= 0 && to < from) {
|
|
727
626
|
var _ref4 = [from, from = to];
|
|
728
627
|
to = _ref4[0];
|
|
729
628
|
}
|
|
730
|
-
|
|
731
629
|
to += 1;
|
|
732
630
|
var newSelectedHighlights = to ? selectedOptions.slice(from, to) : [];
|
|
733
631
|
to && this.setState({
|
|
@@ -738,7 +636,6 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
738
636
|
//ctrl+click
|
|
739
637
|
var isRemove = highLightedSelectOptions.indexOf(id) >= 0;
|
|
740
638
|
var _newSelectedHighlights = [];
|
|
741
|
-
|
|
742
639
|
if (isRemove) {
|
|
743
640
|
lastHighLightedSelectOption = id === lastHighLightedSelectOption ? '' : lastHighLightedSelectOption;
|
|
744
641
|
_newSelectedHighlights = highLightedSelectOptions.filter(function (option) {
|
|
@@ -748,7 +645,6 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
748
645
|
lastHighLightedSelectOption = id;
|
|
749
646
|
_newSelectedHighlights = [].concat(_toConsumableArray(highLightedSelectOptions), [id]);
|
|
750
647
|
}
|
|
751
|
-
|
|
752
648
|
this.setState({
|
|
753
649
|
highLightedSelectOptions: _newSelectedHighlights,
|
|
754
650
|
lastHighLightedSelectOption: lastHighLightedSelectOption
|
|
@@ -759,7 +655,6 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
759
655
|
lastHighLightedSelectOption: id
|
|
760
656
|
});
|
|
761
657
|
}
|
|
762
|
-
|
|
763
658
|
this.setState({
|
|
764
659
|
shiftKeyPressHighLighted: 0
|
|
765
660
|
});
|
|
@@ -778,8 +673,8 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
778
673
|
key: "handleScrollFuncCall",
|
|
779
674
|
value: function handleScrollFuncCall() {
|
|
780
675
|
var _this$props9 = this.props,
|
|
781
|
-
|
|
782
|
-
|
|
676
|
+
getNextOptions = _this$props9.getNextOptions,
|
|
677
|
+
isNextOptions = _this$props9.isNextOptions;
|
|
783
678
|
var searchStr = this.state.searchStr;
|
|
784
679
|
isNextOptions && getNextOptions && this.handleFetchOptions(getNextOptions, searchStr);
|
|
785
680
|
}
|
|
@@ -790,34 +685,29 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
790
685
|
var e = arguments.length > 1 ? arguments[1] : undefined;
|
|
791
686
|
var optionsNormalize = this.state.optionsNormalize;
|
|
792
687
|
var _this$props10 = this.props,
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
688
|
+
onChange = _this$props10.onChange,
|
|
689
|
+
needToCloseOnSelect = _this$props10.needToCloseOnSelect,
|
|
690
|
+
togglePopup = _this$props10.togglePopup,
|
|
691
|
+
propSelectedOptions = _this$props10.selectedOptions,
|
|
692
|
+
_this$props10$disable = _this$props10.disabledOptions,
|
|
693
|
+
disabledOptions = _this$props10$disable === void 0 ? dummyArray : _this$props10$disable;
|
|
800
694
|
var _filterSelectedOption = (0, _dropDownUtils.filterSelectedOptions)({
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
695
|
+
selectedOptions: selectedOptions,
|
|
696
|
+
propSelectedOptions: propSelectedOptions,
|
|
697
|
+
disabledOptions: disabledOptions
|
|
698
|
+
}),
|
|
699
|
+
newSelectedOptions = _filterSelectedOption.newSelectedOptions;
|
|
807
700
|
var selectedOptionsLen = newSelectedOptions.length;
|
|
808
701
|
var allSelectedOptionsDetails = [];
|
|
809
|
-
|
|
810
702
|
for (var i = 0; i < selectedOptionsLen; i++) {
|
|
811
703
|
var id = newSelectedOptions[i];
|
|
812
704
|
allSelectedOptionsDetails.push(optionsNormalize[id]);
|
|
813
705
|
}
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
706
|
+
onChange && onChange(newSelectedOptions, allSelectedOptionsDetails);
|
|
707
|
+
// this.setState({ searchStr: '' });
|
|
817
708
|
this.searchInput && this.searchInput.focus({
|
|
818
709
|
preventScroll: true
|
|
819
710
|
});
|
|
820
|
-
|
|
821
711
|
if (needToCloseOnSelect) {
|
|
822
712
|
togglePopup(e);
|
|
823
713
|
}
|
|
@@ -826,9 +716,9 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
826
716
|
key: "togglePopup",
|
|
827
717
|
value: function togglePopup(e) {
|
|
828
718
|
var _this$props11 = this.props,
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
719
|
+
togglePopup = _this$props11.togglePopup,
|
|
720
|
+
defaultDropBoxPosition = _this$props11.defaultDropBoxPosition,
|
|
721
|
+
isReadOnly = _this$props11.isReadOnly;
|
|
832
722
|
!isReadOnly && togglePopup(e, defaultDropBoxPosition ? "".concat(defaultDropBoxPosition) : null);
|
|
833
723
|
}
|
|
834
724
|
}, {
|
|
@@ -870,18 +760,15 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
870
760
|
key: "handleActive",
|
|
871
761
|
value: function handleActive(e) {
|
|
872
762
|
var _this$state7 = this.state,
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
763
|
+
searchStr = _this$state7.searchStr,
|
|
764
|
+
isActive = _this$state7.isActive;
|
|
876
765
|
if (!isActive) {
|
|
877
766
|
this.setState({
|
|
878
767
|
isActive: true
|
|
879
768
|
});
|
|
880
769
|
}
|
|
881
|
-
|
|
882
770
|
var _ref5 = e || {},
|
|
883
|
-
|
|
884
|
-
|
|
771
|
+
target = _ref5.target;
|
|
885
772
|
target && target.setSelectionRange(target, 0);
|
|
886
773
|
var onFocus = this.props.onFocus;
|
|
887
774
|
onFocus && onFocus(searchStr);
|
|
@@ -890,7 +777,6 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
890
777
|
key: "handleInactive",
|
|
891
778
|
value: function handleInactive() {
|
|
892
779
|
var isActive = this.state.isActive;
|
|
893
|
-
|
|
894
780
|
if (isActive) {
|
|
895
781
|
this.setState({
|
|
896
782
|
isActive: false
|
|
@@ -901,8 +787,8 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
901
787
|
key: "handleInputFocus",
|
|
902
788
|
value: function handleInputFocus() {
|
|
903
789
|
var _this$props12 = this.props,
|
|
904
|
-
|
|
905
|
-
|
|
790
|
+
isDisabled = _this$props12.isDisabled,
|
|
791
|
+
isReadOnly = _this$props12.isReadOnly;
|
|
906
792
|
this.searchInput && !isDisabled && !isReadOnly && this.searchInput.focus({
|
|
907
793
|
preventScroll: true
|
|
908
794
|
});
|
|
@@ -911,8 +797,8 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
911
797
|
key: "handleExposedPublicMethods",
|
|
912
798
|
value: function handleExposedPublicMethods() {
|
|
913
799
|
var _this$props13 = this.props,
|
|
914
|
-
|
|
915
|
-
|
|
800
|
+
getPublicMethods = _this$props13.getPublicMethods,
|
|
801
|
+
openPopupOnly = _this$props13.openPopupOnly;
|
|
916
802
|
getPublicMethods && getPublicMethods({
|
|
917
803
|
openPopupOnly: openPopupOnly
|
|
918
804
|
});
|
|
@@ -931,83 +817,80 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
931
817
|
key: "render",
|
|
932
818
|
value: function render() {
|
|
933
819
|
var _this5 = this;
|
|
934
|
-
|
|
935
820
|
var _this$props14 = this.props,
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
821
|
+
isReadOnly = _this$props14.isReadOnly,
|
|
822
|
+
needSelectAll = _this$props14.needSelectAll,
|
|
823
|
+
searchEmptyMessage = _this$props14.searchEmptyMessage,
|
|
824
|
+
emptyMessage = _this$props14.emptyMessage,
|
|
825
|
+
noMoreOptionsMessage = _this$props14.noMoreOptionsMessage,
|
|
826
|
+
dropBoxSize = _this$props14.dropBoxSize,
|
|
827
|
+
placeHolder = _this$props14.placeHolder,
|
|
828
|
+
isPopupOpen = _this$props14.isPopupOpen,
|
|
829
|
+
isPopupReady = _this$props14.isPopupReady,
|
|
830
|
+
position = _this$props14.position,
|
|
831
|
+
defaultDropBoxPosition = _this$props14.defaultDropBoxPosition,
|
|
832
|
+
selectAllText = _this$props14.selectAllText,
|
|
833
|
+
getContainerRef = _this$props14.getContainerRef,
|
|
834
|
+
removeClose = _this$props14.removeClose,
|
|
835
|
+
isAnimate = _this$props14.isAnimate,
|
|
836
|
+
animationStyle = _this$props14.animationStyle,
|
|
837
|
+
textBoxSize = _this$props14.textBoxSize,
|
|
838
|
+
variant = _this$props14.variant,
|
|
839
|
+
size = _this$props14.size,
|
|
840
|
+
isDisabled = _this$props14.isDisabled,
|
|
841
|
+
title = _this$props14.title,
|
|
842
|
+
needResponsive = _this$props14.needResponsive,
|
|
843
|
+
dataId = _this$props14.dataId,
|
|
844
|
+
dataSelectorId = _this$props14.dataSelectorId,
|
|
845
|
+
isSearching = _this$props14.isSearching,
|
|
846
|
+
borderColor = _this$props14.borderColor,
|
|
847
|
+
textBoxClass = _this$props14.textBoxClass,
|
|
848
|
+
needBorder = _this$props14.needBorder,
|
|
849
|
+
disableAction = _this$props14.disableAction,
|
|
850
|
+
isBoxPaddingNeed = _this$props14.isBoxPaddingNeed,
|
|
851
|
+
palette = _this$props14.palette,
|
|
852
|
+
needAutoFocus = _this$props14.needAutoFocus,
|
|
853
|
+
htmlId = _this$props14.htmlId,
|
|
854
|
+
i18nKeys = _this$props14.i18nKeys,
|
|
855
|
+
a11y = _this$props14.a11y,
|
|
856
|
+
children = _this$props14.children,
|
|
857
|
+
customChildrenClass = _this$props14.customChildrenClass,
|
|
858
|
+
getFooter = _this$props14.getFooter,
|
|
859
|
+
needEffect = _this$props14.needEffect,
|
|
860
|
+
disabledOptions = _this$props14.disabledOptions,
|
|
861
|
+
boxSize = _this$props14.boxSize,
|
|
862
|
+
autoComplete = _this$props14.autoComplete,
|
|
863
|
+
isLoading = _this$props14.isLoading;
|
|
979
864
|
var _i18nKeys = i18nKeys,
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
865
|
+
_i18nKeys$clearText = _i18nKeys.clearText,
|
|
866
|
+
clearText = _i18nKeys$clearText === void 0 ? 'Clear all' : _i18nKeys$clearText,
|
|
867
|
+
_i18nKeys$searchText = _i18nKeys.searchText,
|
|
868
|
+
searchText = _i18nKeys$searchText === void 0 ? 'Searching...' : _i18nKeys$searchText;
|
|
984
869
|
var _a11y$clearLabel = a11y.clearLabel,
|
|
985
|
-
|
|
986
|
-
|
|
870
|
+
clearLabel = _a11y$clearLabel === void 0 ? 'Clear all' : _a11y$clearLabel,
|
|
871
|
+
ariaLabelledby = a11y.ariaLabelledby;
|
|
987
872
|
i18nKeys = Object.assign({}, i18nKeys, {
|
|
988
873
|
emptyText: i18nKeys.emptyText || emptyMessage,
|
|
989
874
|
searchEmptyText: i18nKeys.searchEmptyText || searchEmptyMessage,
|
|
990
875
|
noMoreText: i18nKeys.noMoreText || noMoreOptionsMessage
|
|
991
876
|
});
|
|
992
877
|
var _this$state8 = this.state,
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
878
|
+
selectedOptions = _this$state8.selectedOptions,
|
|
879
|
+
searchStr = _this$state8.searchStr,
|
|
880
|
+
hoverOption = _this$state8.hoverOption,
|
|
881
|
+
highLightedSelectOptions = _this$state8.highLightedSelectOptions,
|
|
882
|
+
options = _this$state8.options,
|
|
883
|
+
isFetchingOptions = _this$state8.isFetchingOptions,
|
|
884
|
+
isActive = _this$state8.isActive,
|
|
885
|
+
selectedOptionIds = _this$state8.selectedOptionIds;
|
|
1001
886
|
var suggestions = this.handleFilterSuggestions();
|
|
1002
887
|
var setAriaId = this.getNextAriaId();
|
|
1003
888
|
var ariaErrorId = this.getNextAriaId();
|
|
1004
|
-
|
|
1005
889
|
var _this$getIsShowClearI = this.getIsShowClearIcon({
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
890
|
+
selectedOptions: selectedOptions,
|
|
891
|
+
disabledOptions: disabledOptions
|
|
892
|
+
}),
|
|
893
|
+
isShowClear = _this$getIsShowClearI.isShowClearIcon;
|
|
1011
894
|
var isShowClearIcon = !isReadOnly && !isDisabled && !disableAction && isShowClear;
|
|
1012
895
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
1013
896
|
className: "".concat(_MultiSelectModule["default"].wrapper, " ").concat(isDisabled ? _MultiSelectModule["default"].disabled : '', " ").concat(isReadOnly ? _MultiSelectModule["default"].readOnly : '', " ").concat(disableAction ? (0, _CssProvider["default"])('isBlock') : '', " ").concat(borderColor === 'transparent' ? _MultiSelectModule["default"].transparentContainer : '', " ").concat(needEffect && !(isDisabled || isReadOnly) ? _MultiSelectModule["default"].effect : ''),
|
|
@@ -1158,19 +1041,18 @@ var MultiSelectComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
1158
1041
|
}) : null);
|
|
1159
1042
|
}
|
|
1160
1043
|
}]);
|
|
1161
|
-
|
|
1162
1044
|
return MultiSelectComponent;
|
|
1163
1045
|
}(_react["default"].Component);
|
|
1164
|
-
|
|
1165
1046
|
exports.MultiSelectComponent = MultiSelectComponent;
|
|
1166
1047
|
MultiSelectComponent.propTypes = _propTypes.MultiSelect_propTypes;
|
|
1167
|
-
MultiSelectComponent.defaultProps = _defaultProps.MultiSelect_defaultProps;
|
|
1048
|
+
MultiSelectComponent.defaultProps = _defaultProps.MultiSelect_defaultProps;
|
|
1049
|
+
|
|
1050
|
+
// if (__DOCS__) {
|
|
1168
1051
|
// MultiSelectComponent.docs = {
|
|
1169
1052
|
// componentGroup: 'Form Elements',
|
|
1170
1053
|
// folderName: 'Style Guide'
|
|
1171
1054
|
// };
|
|
1172
1055
|
// }
|
|
1173
|
-
|
|
1174
1056
|
MultiSelectComponent.displayName = 'MultiSelect';
|
|
1175
1057
|
var MultiSelect = (0, _Popup["default"])(MultiSelectComponent);
|
|
1176
1058
|
MultiSelect.propTypes = MultiSelectComponent.propTypes;
|