@zohodesk/components 1.0.0-alpha-271 → 1.0.0-alpha-272
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/README.md +4 -0
- package/es/Accordion/Accordion.js +7 -3
- package/es/Accordion/AccordionItem.js +4 -2
- package/es/Animation/Animation.js +3 -3
- package/es/AppContainer/AppContainer.js +13 -5
- package/es/Avatar/Avatar.js +23 -11
- package/es/AvatarTeam/AvatarTeam.js +3 -3
- package/es/Button/Button.js +4 -3
- package/es/Buttongroup/Buttongroup.js +3 -3
- package/es/Card/Card.js +21 -10
- package/es/CheckBox/CheckBox.js +5 -3
- package/es/DateTime/CalendarView.js +32 -20
- package/es/DateTime/DateTime.js +75 -10
- package/es/DateTime/DateTimePopupFooter.js +4 -2
- package/es/DateTime/DateTimePopupHeader.js +8 -2
- package/es/DateTime/DateWidget.js +98 -35
- package/es/DateTime/DaysRow.js +4 -2
- package/es/DateTime/Time.js +10 -2
- package/es/DateTime/YearView.js +28 -4
- package/es/DateTime/__tests__/CalendarView.spec.js +1 -0
- package/es/DateTime/__tests__/DateTime.spec.js +1 -0
- package/es/DateTime/__tests__/DateWidget.spec.js +2 -3
- package/es/DateTime/common.js +3 -0
- package/es/DateTime/constants.js +1 -0
- package/es/DateTime/dateFormatUtils/dateFormat.js +63 -30
- package/es/DateTime/dateFormatUtils/dateFormats.js +0 -1
- package/es/DateTime/dateFormatUtils/dayChange.js +13 -4
- package/es/DateTime/dateFormatUtils/index.js +32 -2
- package/es/DateTime/dateFormatUtils/monthChange.js +8 -0
- package/es/DateTime/dateFormatUtils/timeChange.js +22 -6
- package/es/DateTime/dateFormatUtils/yearChange.js +11 -2
- package/es/DateTime/objectUtils.js +14 -20
- package/es/DateTime/props/defaultProps.js +2 -1
- package/es/DateTime/typeChecker.js +3 -0
- package/es/DateTime/validator.js +58 -6
- package/es/DropBox/DropBox.js +6 -2
- package/es/DropBox/DropBoxElement/DropBoxElement.js +7 -0
- package/es/DropBox/DropBoxElement/css/cssJSLogic.js +5 -3
- package/es/DropBox/DropBoxElement/useDropboxPosCalc.js +3 -0
- package/es/DropBox/props/defaultProps.js +1 -2
- package/es/DropBox/props/propTypes.js +1 -2
- package/es/DropDown/DropDown.js +8 -4
- package/es/DropDown/DropDownHeading.js +4 -5
- package/es/DropDown/DropDownItem.js +6 -0
- package/es/DropDown/DropDownSearch.js +4 -0
- package/es/DropDown/DropDownSeparator.js +1 -0
- package/es/DropDown/__tests__/DropDown.spec.js +1 -2
- package/es/Heading/Heading.js +2 -3
- package/es/Label/Label.js +2 -3
- package/es/Layout/Box.js +13 -0
- package/es/Layout/Container.js +12 -1
- package/es/Layout/index.js +1 -2
- package/es/ListItem/ListContainer.js +8 -3
- package/es/ListItem/ListItem.js +9 -3
- package/es/ListItem/ListItemWithAvatar.js +9 -3
- package/es/ListItem/ListItemWithCheckBox.js +7 -2
- package/es/ListItem/ListItemWithIcon.js +8 -3
- package/es/ListItem/ListItemWithRadio.js +7 -3
- package/es/Modal/Modal.js +28 -11
- package/es/MultiSelect/AdvancedGroupMultiSelect.js +89 -13
- package/es/MultiSelect/AdvancedMultiSelect.js +32 -9
- package/es/MultiSelect/EmptyState.js +2 -0
- package/es/MultiSelect/MultiSelect.js +99 -32
- package/es/MultiSelect/MultiSelectHeader.js +3 -0
- package/es/MultiSelect/MultiSelectWithAvatar.js +12 -6
- package/es/MultiSelect/SelectedOptions.js +6 -3
- package/es/MultiSelect/Suggestions.js +7 -3
- package/es/MultiSelect/__tests__/MultiSelect.spec.js +4 -6
- package/es/MultiSelect/props/propTypes.js +2 -0
- package/es/PopOver/PopOver.js +18 -2
- package/es/PopOver/__tests__/PopOver.spec.js +2 -1
- package/es/Popup/Popup.js +77 -24
- package/es/Popup/__tests__/Popup.spec.js +17 -5
- package/es/Popup/viewPort.js +16 -4
- package/es/Provider/IdProvider.js +10 -5
- package/es/Provider/LibraryContext.js +6 -4
- package/es/Provider/NumberGenerator/NumberGenerator.js +21 -7
- package/es/Provider/ZindexProvider.js +9 -2
- package/es/Radio/Radio.js +4 -2
- package/es/Responsive/CustomResponsive.js +30 -18
- package/es/Responsive/RefWrapper.js +6 -7
- package/es/Responsive/ResizeComponent.js +35 -25
- package/es/Responsive/ResizeObserver.js +26 -6
- package/es/Responsive/Responsive.js +34 -20
- package/es/Responsive/index.js +1 -3
- package/es/Responsive/sizeObservers.js +28 -7
- package/es/Responsive/utils/index.js +7 -5
- package/es/Responsive/utils/shallowCompare.js +7 -2
- package/es/Responsive/windowResizeObserver.js +7 -0
- package/es/ResponsiveDropBox/ResponsiveDropBox.js +4 -0
- package/es/Ribbon/Ribbon.js +3 -2
- package/es/RippleEffect/RippleEffect.js +1 -3
- package/es/Select/GroupSelect.js +58 -14
- package/es/Select/Select.js +79 -33
- package/es/Select/SelectWithAvatar.js +17 -4
- package/es/Select/SelectWithIcon.js +46 -5
- package/es/Select/__tests__/Select.spec.js +6 -8
- package/es/Select/props/propTypes.js +1 -0
- package/es/Stencils/Stencils.js +3 -3
- package/es/Switch/Switch.js +5 -3
- package/es/Tab/Tab.js +4 -4
- package/es/Tab/TabContent.js +1 -0
- package/es/Tab/TabContentWrapper.js +2 -0
- package/es/Tab/TabWrapper.js +5 -2
- package/es/Tab/Tabs.js +54 -7
- package/es/Tab/__tests__/Tab.spec.js +1 -3
- package/es/Tab/__tests__/TabWrapper.spec.js +1 -0
- package/es/Tag/Tag.js +6 -3
- package/es/TextBox/TextBox.js +15 -3
- package/es/TextBox/__tests__/TextBox.spec.js +1 -4
- package/es/TextBoxIcon/TextBoxIcon.js +9 -2
- package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +2 -7
- package/es/Textarea/Textarea.js +12 -3
- package/es/Textarea/__tests__/Textarea.spec.js +2 -2
- package/es/Tooltip/Tooltip.js +58 -14
- package/es/Tooltip/__tests__/Tooltip.spec.js +5 -0
- package/es/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +3 -2
- package/es/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +7 -5
- package/es/deprecated/PortalLayer/PortalLayer.js +25 -20
- package/es/semantic/Button/Button.js +3 -2
- package/es/utils/Common.js +54 -9
- package/es/utils/ContextOptimizer.js +4 -5
- package/es/utils/__tests__/debounce.spec.js +2 -2
- package/es/utils/constructFullName.js +2 -0
- package/es/utils/css/compileClassNames.js +5 -0
- package/es/utils/css/mergeStyle.js +7 -6
- package/es/utils/css/utils.js +1 -0
- package/es/utils/datetime/GMTZones.js +48 -0
- package/es/utils/datetime/common.js +31 -7
- package/es/utils/debounce.js +5 -1
- package/es/utils/dropDownUtils.js +68 -11
- package/es/utils/getInitial.js +4 -0
- package/es/utils/shallowEqual.js +6 -0
- package/lib/Accordion/Accordion.js +42 -18
- package/lib/Accordion/AccordionItem.js +40 -18
- package/lib/Accordion/__tests__/Accordion.spec.js +3 -0
- package/lib/Accordion/index.js +3 -0
- package/lib/Accordion/props/propTypes.js +3 -0
- package/lib/Animation/Animation.js +38 -18
- package/lib/Animation/__tests__/Animation.spec.js +11 -7
- package/lib/Animation/props/propTypes.js +3 -0
- package/lib/AppContainer/AppContainer.js +56 -21
- package/lib/AppContainer/props/propTypes.js +3 -0
- package/lib/Avatar/Avatar.js +78 -38
- package/lib/Avatar/__tests__/Avatar.spec.js +44 -0
- package/lib/Avatar/props/propTypes.js +3 -0
- package/lib/AvatarTeam/AvatarTeam.js +52 -30
- package/lib/AvatarTeam/__tests__/AvatarTeam.spec.js +13 -0
- package/lib/AvatarTeam/props/propTypes.js +3 -0
- package/lib/Button/Button.js +31 -20
- package/lib/Button/css/cssJSLogic.js +18 -17
- package/lib/Button/index.js +3 -0
- package/lib/Button/props/defaultProps.js +2 -0
- package/lib/Button/props/propTypes.js +3 -0
- package/lib/Buttongroup/Buttongroup.js +32 -12
- package/lib/Buttongroup/__test__/Buttongroup.spec.js +10 -0
- package/lib/Buttongroup/props/propTypes.js +3 -0
- package/lib/Card/Card.js +102 -46
- package/lib/Card/__tests__/Card.spec.js +10 -1
- package/lib/Card/index.js +4 -0
- package/lib/Card/props/propTypes.js +3 -0
- package/lib/CheckBox/CheckBox.js +71 -47
- package/lib/CheckBox/__tests__/CheckBox.spec.js +3 -0
- package/lib/CheckBox/props/propTypes.js +3 -0
- package/lib/DateTime/CalendarView.js +82 -42
- package/lib/DateTime/DateTime.js +246 -158
- package/lib/DateTime/DateTimePopupFooter.js +31 -8
- package/lib/DateTime/DateTimePopupHeader.js +48 -17
- package/lib/DateTime/DateWidget.js +352 -250
- package/lib/DateTime/DaysRow.js +27 -5
- package/lib/DateTime/Time.js +73 -32
- package/lib/DateTime/YearView.js +77 -28
- package/lib/DateTime/__tests__/CalendarView.spec.js +13 -5
- package/lib/DateTime/__tests__/DateTime.spec.js +51 -37
- package/lib/DateTime/__tests__/DateWidget.spec.js +10 -8
- package/lib/DateTime/common.js +6 -0
- package/lib/DateTime/constants.js +1 -0
- package/lib/DateTime/dateFormatUtils/dateFormat.js +184 -122
- package/lib/DateTime/dateFormatUtils/dateFormats.js +0 -1
- package/lib/DateTime/dateFormatUtils/dayChange.js +14 -7
- package/lib/DateTime/dateFormatUtils/index.js +74 -16
- package/lib/DateTime/dateFormatUtils/monthChange.js +19 -9
- package/lib/DateTime/dateFormatUtils/timeChange.js +54 -22
- package/lib/DateTime/dateFormatUtils/yearChange.js +22 -11
- package/lib/DateTime/index.js +2 -0
- package/lib/DateTime/objectUtils.js +24 -20
- package/lib/DateTime/props/defaultProps.js +2 -1
- package/lib/DateTime/props/propTypes.js +11 -1
- package/lib/DateTime/typeChecker.js +4 -0
- package/lib/DateTime/validator.js +73 -10
- package/lib/DropBox/DropBox.js +34 -10
- package/lib/DropBox/DropBoxElement/DropBoxElement.js +59 -38
- package/lib/DropBox/DropBoxElement/css/cssJSLogic.js +42 -34
- package/lib/DropBox/DropBoxElement/props/propTypes.js +3 -0
- package/lib/DropBox/DropBoxElement/useDropboxPosCalc.js +14 -9
- package/lib/DropBox/__tests__/DropBox.spec.js +6 -2
- package/lib/DropBox/css/cssJSLogic.js +3 -1
- package/lib/DropBox/props/defaultProps.js +8 -4
- package/lib/DropBox/props/propTypes.js +10 -4
- package/lib/DropDown/DropDown.js +52 -8
- package/lib/DropDown/DropDownHeading.js +39 -20
- package/lib/DropDown/DropDownItem.js +42 -20
- package/lib/DropDown/DropDownSearch.js +40 -17
- package/lib/DropDown/DropDownSeparator.js +24 -4
- package/lib/DropDown/__tests__/DropDown.spec.js +15 -9
- package/lib/DropDown/__tests__/DropDownItem.spec.js +9 -4
- package/lib/DropDown/__tests__/DropDownSearch.spec.js +3 -0
- package/lib/DropDown/index.js +9 -0
- package/lib/DropDown/props/propTypes.js +6 -4
- package/lib/Heading/Heading.js +37 -15
- package/lib/Heading/props/propTypes.js +3 -0
- package/lib/Label/Label.js +39 -19
- package/lib/Label/__tests__/Label.spec.js +14 -1
- package/lib/Label/props/propTypes.js +3 -0
- package/lib/Layout/Box.js +31 -11
- package/lib/Layout/Container.js +29 -10
- package/lib/Layout/__tests__/Box.spec.js +65 -49
- package/lib/Layout/__tests__/Container.spec.js +67 -50
- package/lib/Layout/index.js +3 -0
- package/lib/Layout/props/propTypes.js +3 -0
- package/lib/Layout/utils.js +10 -0
- package/lib/ListItem/ListContainer.js +48 -27
- package/lib/ListItem/ListItem.js +69 -45
- package/lib/ListItem/ListItemWithAvatar.js +75 -48
- package/lib/ListItem/ListItemWithCheckBox.js +64 -39
- package/lib/ListItem/ListItemWithIcon.js +68 -44
- package/lib/ListItem/ListItemWithRadio.js +65 -41
- package/lib/ListItem/index.js +7 -0
- package/lib/ListItem/props/propTypes.js +6 -4
- package/lib/Modal/Modal.js +45 -10
- package/lib/Modal/props/propTypes.js +3 -0
- package/lib/MultiSelect/AdvancedGroupMultiSelect.js +294 -166
- package/lib/MultiSelect/AdvancedMultiSelect.js +202 -125
- package/lib/MultiSelect/EmptyState.js +45 -24
- package/lib/MultiSelect/MultiSelect.js +323 -206
- package/lib/MultiSelect/MultiSelectHeader.js +30 -8
- package/lib/MultiSelect/MultiSelectWithAvatar.js +105 -63
- package/lib/MultiSelect/SelectedOptions.js +43 -17
- package/lib/MultiSelect/Suggestions.js +64 -32
- package/lib/MultiSelect/__tests__/MultiSelect.spec.js +86 -75
- package/lib/MultiSelect/index.js +5 -0
- package/lib/MultiSelect/props/defaultProps.js +2 -0
- package/lib/MultiSelect/props/propTypes.js +5 -0
- package/lib/PopOver/PopOver.js +95 -49
- package/lib/PopOver/__tests__/PopOver.spec.js +4 -1
- package/lib/PopOver/index.js +4 -0
- package/lib/PopOver/props/propTypes.js +3 -0
- package/lib/Popup/Popup.js +158 -81
- package/lib/Popup/__tests__/Popup.spec.js +43 -8
- package/lib/Popup/viewPort.js +28 -14
- package/lib/Provider/AvatarSize.js +4 -0
- package/lib/Provider/Config.js +2 -0
- package/lib/Provider/CssProvider.js +4 -0
- package/lib/Provider/IdProvider.js +17 -6
- package/lib/Provider/LibraryContext.js +35 -15
- package/lib/Provider/LibraryContextInit.js +4 -0
- package/lib/Provider/NumberGenerator/NumberGenerator.js +44 -15
- package/lib/Provider/ZindexProvider.js +15 -3
- package/lib/Provider/index.js +5 -0
- package/lib/Radio/Radio.js +61 -38
- package/lib/Radio/__tests__/Radiospec.js +9 -5
- package/lib/Radio/props/propTypes.js +3 -0
- package/lib/Responsive/CustomResponsive.js +73 -29
- package/lib/Responsive/RefWrapper.js +17 -11
- package/lib/Responsive/ResizeComponent.js +62 -36
- package/lib/Responsive/ResizeObserver.js +24 -10
- package/lib/Responsive/Responsive.js +80 -30
- package/lib/Responsive/index.js +4 -0
- package/lib/Responsive/props/propTypes.js +3 -0
- package/lib/Responsive/sizeObservers.js +53 -17
- package/lib/Responsive/utils/index.js +11 -3
- package/lib/Responsive/utils/shallowCompare.js +11 -2
- package/lib/Responsive/windowResizeObserver.js +8 -0
- package/lib/ResponsiveDropBox/ResponsiveDropBox.js +45 -17
- package/lib/ResponsiveDropBox/props/propTypes.js +3 -0
- package/lib/Ribbon/Ribbon.js +33 -13
- package/lib/Ribbon/__tests__/Ribbon.spec.js +22 -0
- package/lib/Ribbon/props/propTypes.js +3 -0
- package/lib/RippleEffect/RippleEffect.js +18 -10
- package/lib/RippleEffect/props/propTypes.js +3 -0
- package/lib/Select/GroupSelect.js +229 -130
- package/lib/Select/Select.js +290 -209
- package/lib/Select/SelectWithAvatar.js +102 -56
- package/lib/Select/SelectWithIcon.js +132 -76
- package/lib/Select/__tests__/Select.spec.js +133 -91
- package/lib/Select/index.js +5 -0
- package/lib/Select/props/defaultProps.js +5 -4
- package/lib/Select/props/propTypes.js +4 -0
- package/lib/Stencils/Stencils.js +29 -10
- package/lib/Stencils/__tests__/Stencils.spec.js +12 -0
- package/lib/Stencils/props/propTypes.js +3 -0
- package/lib/Switch/Switch.js +57 -34
- package/lib/Switch/props/propTypes.js +3 -0
- package/lib/Tab/Tab.js +40 -27
- package/lib/Tab/TabContent.js +12 -5
- package/lib/Tab/TabContentWrapper.js +13 -6
- package/lib/Tab/TabWrapper.js +37 -19
- package/lib/Tab/Tabs.js +171 -91
- package/lib/Tab/__tests__/Tab.spec.js +67 -58
- package/lib/Tab/__tests__/TabContent.spec.js +10 -6
- package/lib/Tab/__tests__/TabContentWrapper.spec.js +28 -20
- package/lib/Tab/__tests__/TabWrapper.spec.js +12 -0
- package/lib/Tab/__tests__/Tabs.spec.js +53 -39
- package/lib/Tab/index.js +6 -0
- package/lib/Tab/props/propTypes.js +3 -0
- package/lib/Tag/Tag.js +72 -43
- package/lib/Tag/__tests__/Tag.spec.js +14 -8
- package/lib/Tag/props/propTypes.js +3 -0
- package/lib/TextBox/TextBox.js +85 -59
- package/lib/TextBox/__tests__/TextBox.spec.js +14 -4
- package/lib/TextBox/props/propTypes.js +6 -4
- package/lib/TextBoxIcon/TextBoxIcon.js +79 -52
- package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +14 -5
- package/lib/TextBoxIcon/props/propTypes.js +3 -0
- package/lib/Textarea/Textarea.js +54 -29
- package/lib/Textarea/__tests__/Textarea.spec.js +14 -2
- package/lib/Textarea/props/propTypes.js +3 -0
- package/lib/Tooltip/Tooltip.js +94 -31
- package/lib/Tooltip/__tests__/Tooltip.spec.js +24 -3
- package/lib/Tooltip/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/VelocityAnimation/VelocityAnimation.js +40 -16
- package/lib/VelocityAnimation/VelocityAnimation/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/VelocityAnimationGroup/VelocityAnimationGroup.js +53 -25
- package/lib/VelocityAnimation/VelocityAnimationGroup/props/propTypes.js +3 -0
- package/lib/VelocityAnimation/index.js +3 -0
- package/lib/css.js +40 -0
- package/lib/deprecated/PortalLayer/PortalLayer.js +46 -23
- package/lib/deprecated/PortalLayer/props/propTypes.js +3 -0
- package/lib/index.js +57 -0
- package/lib/semantic/Button/Button.js +42 -22
- package/lib/semantic/Button/props/propTypes.js +3 -0
- package/lib/semantic/index.js +2 -0
- package/lib/utils/Common.js +110 -18
- package/lib/utils/ContextOptimizer.js +16 -10
- package/lib/utils/__tests__/constructFullName.spec.js +1 -0
- package/lib/utils/__tests__/debounce.spec.js +3 -2
- package/lib/utils/__tests__/getInitial.spec.js +1 -0
- package/lib/utils/constructFullName.js +13 -4
- package/lib/utils/css/compileClassNames.js +6 -0
- package/lib/utils/css/mergeStyle.js +10 -7
- package/lib/utils/css/utils.js +8 -0
- package/lib/utils/datetime/GMTZones.js +55 -0
- package/lib/utils/datetime/common.js +52 -7
- package/lib/utils/debounce.js +6 -1
- package/lib/utils/dropDownUtils.js +175 -59
- package/lib/utils/dummyFunction.js +2 -0
- package/lib/utils/getHTMLFontSize.js +1 -0
- package/lib/utils/getInitial.js +6 -0
- package/lib/utils/index.js +4 -0
- package/lib/utils/scrollTo.js +2 -0
- package/lib/utils/shallowEqual.js +8 -0
- package/package.json +1 -1
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
|
|
2
3
|
/**** Libraries ****/
|
|
3
4
|
import React from 'react';
|
|
4
5
|
import { AdvancedMultiSelect_propTypes } from './props/propTypes';
|
|
5
6
|
import { AdvancedMultiSelect_defaultProps } from './props/defaultProps';
|
|
6
|
-
|
|
7
7
|
/**** Components ****/
|
|
8
|
+
|
|
8
9
|
import { MultiSelectComponent } from './MultiSelect';
|
|
9
10
|
import SelectedOptions from './SelectedOptions';
|
|
10
11
|
import Suggestions from './Suggestions';
|
|
@@ -19,16 +20,17 @@ import { getUniqueId } from '../Provider/IdProvider';
|
|
|
19
20
|
import ResponsiveDropBox from '../ResponsiveDropBox/ResponsiveDropBox';
|
|
20
21
|
import { ResponsiveReceiver } from '../Responsive/CustomResponsive';
|
|
21
22
|
import Loader from '@zohodesk/svg/lib/Loader/Loader';
|
|
22
|
-
|
|
23
23
|
/**** CSS ****/
|
|
24
|
-
import style from './MultiSelect.module.css';
|
|
25
24
|
|
|
25
|
+
import style from './MultiSelect.module.css';
|
|
26
26
|
/**** Methods ****/
|
|
27
|
+
|
|
27
28
|
import { getIsEmptyValue, getSearchString } from '../utils/Common.js';
|
|
28
29
|
import { filterSelectedOptions, makeGetIsShowClearIcon } from '../utils/dropDownUtils';
|
|
29
|
-
|
|
30
30
|
/* eslint-disable react/sort-prop-types */
|
|
31
|
+
|
|
31
32
|
/* eslint-disable react/no-unused-prop-types */
|
|
33
|
+
|
|
32
34
|
/* eslint-disable react/forbid-component-props */
|
|
33
35
|
|
|
34
36
|
const dummyArray = [];
|
|
@@ -56,6 +58,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
56
58
|
this.handleMoreClick = this.handleMoreClick.bind(this);
|
|
57
59
|
this.getNextAriaId = getUniqueId(this);
|
|
58
60
|
}
|
|
61
|
+
|
|
59
62
|
handleFilterSuggestions() {
|
|
60
63
|
const {
|
|
61
64
|
options = dummyArray,
|
|
@@ -76,6 +79,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
76
79
|
this.suggestionsOrder = suggestionIds;
|
|
77
80
|
return suggestions;
|
|
78
81
|
}
|
|
82
|
+
|
|
79
83
|
handleChange() {
|
|
80
84
|
let selectedOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
81
85
|
let e = arguments.length > 1 ? arguments[1] : undefined;
|
|
@@ -100,25 +104,32 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
100
104
|
});
|
|
101
105
|
const selectedOptionsLen = newSelectedOptions.length;
|
|
102
106
|
const allSelectedOptionsDetails = [];
|
|
107
|
+
|
|
103
108
|
for (let i = 0; i < selectedOptionsLen; i++) {
|
|
104
109
|
const id = newSelectedOptions[i];
|
|
105
110
|
allSelectedOptionsDetails.push(optionsNormalize[id]);
|
|
106
111
|
}
|
|
112
|
+
|
|
107
113
|
onChange && onChange(newSelectedOptions, allSelectedOptionsDetails);
|
|
114
|
+
|
|
108
115
|
if (searchStr.trim() !== '' && isSearchClearOnSelect) {
|
|
109
116
|
this.handleSearch('');
|
|
110
117
|
}
|
|
118
|
+
|
|
111
119
|
this.searchInput && this.searchInput.focus({
|
|
112
120
|
preventScroll: true
|
|
113
121
|
});
|
|
122
|
+
|
|
114
123
|
if (needToCloseOnSelect) {
|
|
115
124
|
e && togglePopup(e);
|
|
116
125
|
}
|
|
117
126
|
}
|
|
127
|
+
|
|
118
128
|
handleSelectOption(option, value, index, e) {
|
|
119
129
|
const {
|
|
120
130
|
selectedOptions
|
|
121
131
|
} = this.props;
|
|
132
|
+
|
|
122
133
|
if (selectedOptions.indexOf(option) >= 0) {
|
|
123
134
|
//toggle select option
|
|
124
135
|
this.handleRemoveOption(option);
|
|
@@ -126,6 +137,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
126
137
|
this.handleChange([...selectedOptions, option], e);
|
|
127
138
|
}
|
|
128
139
|
}
|
|
140
|
+
|
|
129
141
|
handleFormatOptions(props) {
|
|
130
142
|
const {
|
|
131
143
|
options,
|
|
@@ -150,6 +162,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
150
162
|
disabledOptions
|
|
151
163
|
});
|
|
152
164
|
}
|
|
165
|
+
|
|
153
166
|
handleGetSelectedOptions(selectedOptions, normalizedFormatOptions, props) {
|
|
154
167
|
//handle selectedoptions length
|
|
155
168
|
let {
|
|
@@ -173,6 +186,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
173
186
|
selectedOptionsLength: showedSelectedOptionsCount
|
|
174
187
|
});
|
|
175
188
|
}
|
|
189
|
+
|
|
176
190
|
handleFormatSelectedOptions(selectedOptionDetails, props) {
|
|
177
191
|
const {
|
|
178
192
|
valueField,
|
|
@@ -194,6 +208,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
194
208
|
disabledOptions
|
|
195
209
|
});
|
|
196
210
|
}
|
|
211
|
+
|
|
197
212
|
handleComponentDidUpdate(prevProps, prevState) {
|
|
198
213
|
const {
|
|
199
214
|
allSelectedOptionsDetails: oldAllSelectedOptionsDetails
|
|
@@ -213,6 +228,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
213
228
|
} = this.state;
|
|
214
229
|
const selectedOptionsLen = selectedOptions.length;
|
|
215
230
|
const oldSelectedOptionsLen = oldSelectedOptions.length;
|
|
231
|
+
|
|
216
232
|
if (id !== prevProps.id || selectedOptionsLimit !== oldSelectedOptionsLimit) {
|
|
217
233
|
//handle component update case (New set of options or new selectedOptionsLimit update)
|
|
218
234
|
this.setState({
|
|
@@ -220,6 +236,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
220
236
|
});
|
|
221
237
|
return;
|
|
222
238
|
}
|
|
239
|
+
|
|
223
240
|
if (oldCount !== prevState.showedSelectedOptionsCount || selectedOptionDetails !== prevProps.selectedOptionDetails) {
|
|
224
241
|
//When showedSelectedOptionsCount update, setState the updated selected option details
|
|
225
242
|
const {
|
|
@@ -237,6 +254,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
237
254
|
selectedOptionIds
|
|
238
255
|
});
|
|
239
256
|
}
|
|
257
|
+
|
|
240
258
|
if (getIsEmptyValue(oldCount) || oldSelectedOptionsLen <= oldCount) {
|
|
241
259
|
//handle not more options case
|
|
242
260
|
if (selectedOptionsLen > oldCount) {
|
|
@@ -260,12 +278,14 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
260
278
|
const {
|
|
261
279
|
showedSelectedOptionsCount
|
|
262
280
|
} = this.state;
|
|
281
|
+
|
|
263
282
|
if (showedSelectedOptionsCount === 0) {
|
|
264
283
|
this.handleMoreClick();
|
|
265
284
|
}
|
|
266
285
|
});
|
|
267
286
|
}
|
|
268
287
|
}
|
|
288
|
+
|
|
269
289
|
handleMoreClick(e) {
|
|
270
290
|
const {
|
|
271
291
|
showedSelectedOptionsCount
|
|
@@ -278,23 +298,26 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
278
298
|
} = this.props;
|
|
279
299
|
removeClose(e);
|
|
280
300
|
const selectedOptionsLen = selectedOptions.length;
|
|
301
|
+
|
|
281
302
|
if (showedSelectedOptionsCount < selectedOptionsLen) {
|
|
282
303
|
const newCount = showedSelectedOptionsCount + selectedOptionsLimit;
|
|
283
304
|
const newSelectedOptionIds = selectedOptions.slice(showedSelectedOptionsCount, newCount);
|
|
305
|
+
|
|
284
306
|
try {
|
|
285
307
|
getSelectedOptionDetails(newSelectedOptionIds).then(() => {
|
|
286
308
|
this.setState({
|
|
287
309
|
showedSelectedOptionsCount: showedSelectedOptionsCount + newSelectedOptionIds.length
|
|
288
310
|
});
|
|
289
311
|
});
|
|
290
|
-
} catch (e) {
|
|
291
|
-
//console.error('getSelectedOptionDetails is not a promise function.');
|
|
312
|
+
} catch (e) {//console.error('getSelectedOptionDetails is not a promise function.');
|
|
292
313
|
}
|
|
293
314
|
}
|
|
315
|
+
|
|
294
316
|
this.searchInput && this.searchInput.focus({
|
|
295
317
|
preventScroll: true
|
|
296
318
|
});
|
|
297
319
|
}
|
|
320
|
+
|
|
298
321
|
responsiveFunc(_ref) {
|
|
299
322
|
let {
|
|
300
323
|
mediaQueryOR
|
|
@@ -305,6 +328,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
305
328
|
}])
|
|
306
329
|
};
|
|
307
330
|
}
|
|
331
|
+
|
|
308
332
|
render() {
|
|
309
333
|
let {
|
|
310
334
|
isReadOnly,
|
|
@@ -525,14 +549,13 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
|
|
|
525
549
|
}, /*#__PURE__*/React.createElement(Loader, null))), getFooter ? /*#__PURE__*/React.createElement(CardFooter, null, getFooter()) : null)));
|
|
526
550
|
}) : null);
|
|
527
551
|
}
|
|
552
|
+
|
|
528
553
|
}
|
|
529
554
|
AdvancedMultiSelectComponent.propTypes = AdvancedMultiSelect_propTypes;
|
|
530
555
|
AdvancedMultiSelectComponent.defaultProps = AdvancedMultiSelect_defaultProps;
|
|
531
556
|
AdvancedMultiSelectComponent.displayName = 'AdvancedMultiSelect';
|
|
532
557
|
const AdvancedMultiSelect = Popup(AdvancedMultiSelectComponent);
|
|
533
|
-
AdvancedMultiSelect.defaultProps = AdvancedMultiSelectComponent.defaultProps;
|
|
534
|
-
|
|
535
|
-
// if (__DOCS__) {
|
|
558
|
+
AdvancedMultiSelect.defaultProps = AdvancedMultiSelectComponent.defaultProps; // if (__DOCS__) {
|
|
536
559
|
// AdvancedMultiSelectComponent.docs = {
|
|
537
560
|
// componentGroup: 'Form Elements',
|
|
538
561
|
// folderName: 'Style Guide'
|
|
@@ -3,6 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import { EmptyState_propTypes } from './props/propTypes';
|
|
4
4
|
import { EmptyState_defaultProps } from './props/defaultProps';
|
|
5
5
|
/**** CSS ****/
|
|
6
|
+
|
|
6
7
|
import style from './MultiSelect.module.css';
|
|
7
8
|
export default class EmptyState extends React.PureComponent {
|
|
8
9
|
render() {
|
|
@@ -53,6 +54,7 @@ export default class EmptyState extends React.PureComponent {
|
|
|
53
54
|
id: htmlId
|
|
54
55
|
}, noMoreText || emptyText));
|
|
55
56
|
}
|
|
57
|
+
|
|
56
58
|
}
|
|
57
59
|
EmptyState.propTypes = EmptyState_propTypes;
|
|
58
60
|
EmptyState.defaultProps = EmptyState_defaultProps;
|