@zohodesk/components 1.0.0-temp-220.11 → 1.0.0-temp-230
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/.cli/propValidation_report.html +1 -1
- package/README.md +33 -1
- package/assets/Appearance/dark/mode/Component_DarkMode.module.css +8 -0
- package/assets/Appearance/light/mode/Component_LightMode.module.css +8 -0
- package/assets/Appearance/pureDark/mode/Component_PureDarkMode.module.css +8 -0
- package/es/Accordion/Accordion.js +1 -1
- package/es/AppContainer/AppContainer.js +1 -1
- package/es/Card/Card.js +48 -14
- package/es/Card/__tests__/Card.spec.js +81 -2
- package/es/Card/__tests__/__snapshots__/Card.spec.js.snap +44 -0
- package/es/Card/props/defaultProps.js +2 -1
- package/es/Card/props/propTypes.js +2 -1
- package/es/ColorSelect/ColorMultiSelect.js +36 -0
- package/es/ColorSelect/ColorSingleSelect.js +50 -0
- package/es/ColorSelect/__tests__/ColorMultiSelect.spec.js +59 -0
- package/es/ColorSelect/__tests__/ColorSingleSelect.spec.js +59 -0
- package/es/ColorSelect/__tests__/__snapshots__/ColorMultiSelect.spec.js.snap +547 -0
- package/es/ColorSelect/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +178 -0
- package/es/ColorSelect/common/ColorIndicator/ColorIndicator.js +27 -0
- package/es/ColorSelect/common/ColorIndicator/ColorIndicator.module.css +18 -0
- package/es/ColorSelect/common/ColorIndicator/__tests__/ColorSingleSelect.spec.js +60 -0
- package/es/ColorSelect/common/ColorIndicator/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +95 -0
- package/es/ColorSelect/common/ColorIndicator/props/defaultProps.js +7 -0
- package/es/ColorSelect/common/ColorIndicator/props/propTypes.js +9 -0
- package/es/ColorSelect/common/ColoredTag/ColoredTag.js +33 -0
- package/es/ColorSelect/common/ColoredTag/__tests__/ColoredTag.spec.js +50 -0
- package/es/ColorSelect/common/ColoredTag/__tests__/__snapshots__/ColoredTag.spec.js.snap +101 -0
- package/es/ColorSelect/common/ColoredTag/props/propTypes.js +9 -0
- package/es/ColorSelect/common/helpers.js +35 -0
- package/es/ColorSelect/props/defaultProps.js +13 -0
- package/es/ColorSelect/props/propTypes.js +14 -0
- package/es/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +9 -18
- package/es/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +3 -6
- package/es/DateTime/__tests__/__snapshots__/Time.spec.js.snap +9 -18
- package/es/DropBox/DropBoxElement/css/DropBoxElement.module.css +7 -0
- package/es/InputFieldLine/InputFieldLine.js +39 -0
- package/es/InputFieldLine/InputFieldLine.module.css +90 -0
- package/es/InputFieldLine/__tests__/InputFieldLine.spec.js +114 -0
- package/es/InputFieldLine/__tests__/__snapshots__/InputFieldLine.spec.js.snap +194 -0
- package/es/InputFieldLine/props/defaultProps.js +14 -0
- package/es/InputFieldLine/props/propTypes.js +19 -0
- package/es/ListItem/ListItem.js +7 -2
- package/es/ListItem/ListItem.module.css +6 -0
- package/es/ListItem/__tests__/ListItem.spec.js +8 -0
- package/es/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +47 -0
- package/es/ListItem/props/propTypes.js +2 -1
- package/es/MultiSelect/MultiSelect.js +14 -4
- package/es/MultiSelect/SelectedOptions.js +24 -1
- package/es/MultiSelect/Suggestions.js +3 -1
- package/es/MultiSelect/__tests__/MultiSelect.spec.js +38 -0
- package/es/MultiSelect/__tests__/SelectedOptions.spec.js +13 -0
- package/es/MultiSelect/__tests__/Suggestions.spec.js +12 -0
- package/es/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +3 -3
- package/es/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +9 -9
- package/es/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +88 -3
- package/es/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +3 -3
- package/es/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +15 -0
- package/es/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +66 -0
- package/es/MultiSelect/props/propTypes.js +9 -3
- package/es/Popup/Popup.js +3 -3
- package/es/Select/ArrowIcon/ArrowIcon.js +48 -0
- package/es/Select/ArrowIcon/ArrowIcon.module.css +22 -0
- package/es/Select/Select.js +33 -4
- package/es/Select/__tests__/Select.spec.js +25 -0
- package/es/Select/__tests__/__snapshots__/GroupSelect.spec.js.snap +3 -6
- package/es/Select/__tests__/__snapshots__/Select.spec.js.snap +516 -419
- package/es/Select/__tests__/__snapshots__/SelectWithIcon.spec.js.snap +3 -6
- package/es/Select/props/propTypes.js +2 -1
- package/es/TextBoxIcon/TextBoxIcon.js +18 -12
- package/es/TextBoxIcon/TextBoxIcon.module.css +3 -38
- package/es/TextBoxIcon/__tests__/TextBoxIcon.spec.js +1 -2
- package/es/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +116 -225
- package/es/TextBoxIcon/props/propTypes.js +1 -2
- package/es/common/basic.module.css +0 -2
- package/es/components_layer.module.css +1 -0
- package/es/utils/Common.js +3 -1
- package/es/utils/dropDownUtils.js +8 -2
- package/es/v1/Popup/Popup.js +1 -1
- package/es/v1/Select/Select.js +1 -1
- package/lib/Accordion/Accordion.js +2 -2
- package/lib/AppContainer/AppContainer.js +1 -1
- package/lib/Card/Card.js +64 -30
- package/lib/Card/__tests__/Card.spec.js +118 -1
- package/lib/Card/__tests__/__snapshots__/Card.spec.js.snap +44 -0
- package/lib/Card/props/defaultProps.js +2 -1
- package/lib/Card/props/propTypes.js +2 -1
- package/lib/ColorSelect/ColorMultiSelect.js +65 -0
- package/lib/ColorSelect/ColorSingleSelect.js +78 -0
- package/lib/ColorSelect/__tests__/ColorMultiSelect.spec.js +70 -0
- package/lib/ColorSelect/__tests__/ColorSingleSelect.spec.js +70 -0
- package/lib/ColorSelect/__tests__/__snapshots__/ColorMultiSelect.spec.js.snap +547 -0
- package/lib/ColorSelect/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +178 -0
- package/lib/ColorSelect/common/ColorIndicator/ColorIndicator.js +40 -0
- package/lib/ColorSelect/common/ColorIndicator/ColorIndicator.module.css +18 -0
- package/lib/ColorSelect/common/ColorIndicator/__tests__/ColorSingleSelect.spec.js +67 -0
- package/lib/ColorSelect/common/ColorIndicator/__tests__/__snapshots__/ColorSingleSelect.spec.js.snap +95 -0
- package/lib/ColorSelect/common/ColorIndicator/props/defaultProps.js +14 -0
- package/lib/ColorSelect/common/ColorIndicator/props/propTypes.js +20 -0
- package/lib/ColorSelect/common/ColoredTag/ColoredTag.js +61 -0
- package/lib/ColorSelect/common/ColoredTag/__tests__/ColoredTag.spec.js +58 -0
- package/lib/ColorSelect/common/ColoredTag/__tests__/__snapshots__/ColoredTag.spec.js.snap +101 -0
- package/lib/ColorSelect/common/ColoredTag/props/propTypes.js +28 -0
- package/lib/ColorSelect/common/helpers.js +53 -0
- package/lib/ColorSelect/props/defaultProps.js +31 -0
- package/lib/ColorSelect/props/propTypes.js +35 -0
- package/lib/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +9 -18
- package/lib/DateTime/__tests__/__snapshots__/DateWidget.spec.js.snap +3 -6
- package/lib/DateTime/__tests__/__snapshots__/Time.spec.js.snap +9 -18
- package/lib/DropBox/DropBoxElement/css/DropBoxElement.module.css +7 -0
- package/lib/InputFieldLine/InputFieldLine.js +53 -0
- package/lib/InputFieldLine/InputFieldLine.module.css +90 -0
- package/lib/InputFieldLine/__tests__/InputFieldLine.spec.js +122 -0
- package/lib/InputFieldLine/__tests__/__snapshots__/InputFieldLine.spec.js.snap +194 -0
- package/lib/InputFieldLine/props/defaultProps.js +21 -0
- package/lib/InputFieldLine/props/propTypes.js +36 -0
- package/lib/ListItem/ListItem.js +7 -2
- package/lib/ListItem/ListItem.module.css +6 -0
- package/lib/ListItem/__tests__/ListItem.spec.js +8 -0
- package/lib/ListItem/__tests__/__snapshots__/ListItem.spec.js.snap +47 -0
- package/lib/ListItem/props/propTypes.js +2 -1
- package/lib/MultiSelect/MultiSelect.js +14 -6
- package/lib/MultiSelect/SelectedOptions.js +24 -1
- package/lib/MultiSelect/Suggestions.js +3 -1
- package/lib/MultiSelect/__tests__/MultiSelect.spec.js +40 -0
- package/lib/MultiSelect/__tests__/SelectedOptions.spec.js +15 -0
- package/lib/MultiSelect/__tests__/Suggestions.spec.js +14 -0
- package/lib/MultiSelect/__tests__/__snapshots__/AdvancedGroupMultiSelect.spec.js.snap +3 -3
- package/lib/MultiSelect/__tests__/__snapshots__/AdvancedMultiSelect.spec.js.snap +9 -9
- package/lib/MultiSelect/__tests__/__snapshots__/MultiSelect.spec.js.snap +88 -3
- package/lib/MultiSelect/__tests__/__snapshots__/MultiSelectWithAvatar.spec.js.snap +3 -3
- package/lib/MultiSelect/__tests__/__snapshots__/SelectedOptions.spec.js.snap +15 -0
- package/lib/MultiSelect/__tests__/__snapshots__/Suggestions.spec.js.snap +66 -0
- package/lib/MultiSelect/props/propTypes.js +9 -3
- package/lib/Popup/Popup.js +4 -4
- package/lib/Select/ArrowIcon/ArrowIcon.js +62 -0
- package/lib/Select/ArrowIcon/ArrowIcon.module.css +22 -0
- package/lib/Select/Select.js +34 -4
- package/lib/Select/__tests__/Select.spec.js +177 -148
- package/lib/Select/__tests__/__snapshots__/GroupSelect.spec.js.snap +3 -6
- package/lib/Select/__tests__/__snapshots__/Select.spec.js.snap +516 -419
- package/lib/Select/__tests__/__snapshots__/SelectWithIcon.spec.js.snap +3 -6
- package/lib/Select/props/propTypes.js +2 -1
- package/lib/TextBoxIcon/TextBoxIcon.js +19 -13
- package/lib/TextBoxIcon/TextBoxIcon.module.css +3 -38
- package/lib/TextBoxIcon/__tests__/TextBoxIcon.spec.js +1 -2
- package/lib/TextBoxIcon/__tests__/__snapshots__/TextBoxIcon.spec.js.snap +116 -225
- package/lib/TextBoxIcon/props/propTypes.js +1 -2
- package/lib/common/basic.module.css +0 -2
- package/lib/components_layer.module.css +1 -0
- package/lib/utils/Common.js +9 -3
- package/lib/utils/dropDownUtils.js +10 -1
- package/lib/v1/Popup/Popup.js +2 -2
- package/lib/v1/Select/Select.js +2 -2
- package/package.json +24 -14
- package/css_error.log +0 -1
- package/install.md +0 -10
- package/postPublish.js +0 -8
- package/prePublish.js +0 -70
- package/react-cli.config.js +0 -24
- package/result.json +0 -1
- /package/.cli/{stringContains.js → themeValidate/stringContains.js} +0 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
.varClass{
|
|
2
|
+
--local-arrowIcon-color: var(--zdt_textboxicon_default_icon); /* refer the naming doc */
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.arrowIcon {
|
|
6
|
+
color: var(--local-arrowIcon-color);
|
|
7
|
+
transition: var(--zd_transition3);
|
|
8
|
+
margin: 0 var(--zd_size5) ;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.rotated,
|
|
12
|
+
.arrowContainer:hover .arrowIcon {
|
|
13
|
+
--local-arrowIcon-color: var(--zdt_textboxicon_hover_icon);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
[dir=ltr] .rotated {
|
|
17
|
+
transform: rotateZ(-180deg);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
[dir=rtl] .rotated {
|
|
21
|
+
transform: rotateZ(180deg);
|
|
22
|
+
}
|
package/es/Select/Select.js
CHANGED
|
@@ -16,10 +16,11 @@ import { Icon } from '@zohodesk/icons';
|
|
|
16
16
|
import ResponsiveDropBox from "../ResponsiveDropBox/ResponsiveDropBox";
|
|
17
17
|
import { ResponsiveReceiver } from "../Responsive/CustomResponsive";
|
|
18
18
|
import Loader from '@zohodesk/svg/lib/Loader/Loader';
|
|
19
|
+
import InputFieldLine from "../InputFieldLine/InputFieldLine.js";
|
|
19
20
|
/**** Methods ****/
|
|
20
21
|
|
|
21
22
|
import { makeFormatOptions, makeGetMultiSelectFilterSuggestions as makeGetFilterSuggestions, makeGetSelectedValueText as makeGetSelectedValue } from "../utils/dropDownUtils";
|
|
22
|
-
import { debounce, scrollTo, getIsEmptyValue, getSearchString, findScrollEnd, getKeyValue } from "../utils/Common.js";
|
|
23
|
+
import { debounce, scrollTo, getIsEmptyValue, getSearchString, findScrollEnd, getKeyValue, DUMMY_OBJECT } from "../utils/Common.js";
|
|
23
24
|
/**** CSS ****/
|
|
24
25
|
|
|
25
26
|
import style from "./Select.module.css";
|
|
@@ -71,6 +72,7 @@ export class SelectComponent extends Component {
|
|
|
71
72
|
|
|
72
73
|
this.state = {
|
|
73
74
|
selected,
|
|
75
|
+
selectedValueDetails,
|
|
74
76
|
options: allOptions,
|
|
75
77
|
optionsNormalize: normalizedAllOptions,
|
|
76
78
|
hoverIndex,
|
|
@@ -119,7 +121,7 @@ export class SelectComponent extends Component {
|
|
|
119
121
|
// suggestionContainer.addEventListener('scroll', this.handleScroll);
|
|
120
122
|
}
|
|
121
123
|
|
|
122
|
-
|
|
124
|
+
UNSAFE_componentWillReceiveProps(nextProps) {
|
|
123
125
|
let {
|
|
124
126
|
selectedValue,
|
|
125
127
|
isDefaultSelectValue,
|
|
@@ -167,6 +169,7 @@ export class SelectComponent extends Component {
|
|
|
167
169
|
options: allOptions,
|
|
168
170
|
optionsNormalize: normalizedAllOptions,
|
|
169
171
|
selected,
|
|
172
|
+
selectedValueDetails,
|
|
170
173
|
hoverIndex: oldHoverIndex ? oldHoverIndex : hoverIndex,
|
|
171
174
|
selectedId,
|
|
172
175
|
selectedValueIndex: hoverIndex
|
|
@@ -729,7 +732,8 @@ export class SelectComponent extends Component {
|
|
|
729
732
|
isRestrictScroll,
|
|
730
733
|
dropBoxPortalId,
|
|
731
734
|
renderCustomToggleIndicator,
|
|
732
|
-
renderCustomSearchClearComponent
|
|
735
|
+
renderCustomSearchClearComponent,
|
|
736
|
+
renderCustomSelectedValue
|
|
733
737
|
} = this.props;
|
|
734
738
|
let {
|
|
735
739
|
TextBoxIcon_i18n,
|
|
@@ -742,6 +746,7 @@ export class SelectComponent extends Component {
|
|
|
742
746
|
let {
|
|
743
747
|
hoverIndex,
|
|
744
748
|
selected,
|
|
749
|
+
selectedValueDetails,
|
|
745
750
|
searchStr,
|
|
746
751
|
isFetchingOptions,
|
|
747
752
|
selectedId,
|
|
@@ -766,7 +771,31 @@ export class SelectComponent extends Component {
|
|
|
766
771
|
ref: getTargetRef,
|
|
767
772
|
"data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
|
|
768
773
|
"data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`
|
|
769
|
-
},
|
|
774
|
+
}, renderCustomSelectedValue ? /*#__PURE__*/React.createElement(InputFieldLine, {
|
|
775
|
+
isActive: isPopupReady,
|
|
776
|
+
border: needBorder ? 'bottom' : 'none',
|
|
777
|
+
size: size,
|
|
778
|
+
borderColor: borderColor,
|
|
779
|
+
isDisabled: isDisabled,
|
|
780
|
+
isReadOnly: isReadOnly,
|
|
781
|
+
hasPadding: true
|
|
782
|
+
}, typeof renderCustomSelectedValue == 'function' ? renderCustomSelectedValue({
|
|
783
|
+
isDisabled,
|
|
784
|
+
isPopupOpen,
|
|
785
|
+
isReadOnly,
|
|
786
|
+
isActive: isPopupReady,
|
|
787
|
+
size,
|
|
788
|
+
option: selectedValueDetails[selectedId] || {},
|
|
789
|
+
selectedId,
|
|
790
|
+
placeHolder,
|
|
791
|
+
htmlId,
|
|
792
|
+
maxLength,
|
|
793
|
+
ref: this.valueInputRef,
|
|
794
|
+
onFocus: this.handleSelectFocus,
|
|
795
|
+
onKeyDown: this.handleKeyDown,
|
|
796
|
+
onKeyPress: this.handleValueInputChange,
|
|
797
|
+
ariaControlsId: setAriaId
|
|
798
|
+
}) : renderCustomSelectedValue) : needSelectDownIcon ? /*#__PURE__*/React.createElement(TextBoxIcon, {
|
|
770
799
|
a11y: {
|
|
771
800
|
role: 'Menuitem',
|
|
772
801
|
ariaLabel: TextBox_ally_label,
|
|
@@ -247,6 +247,21 @@ describe('Select -', () => {
|
|
|
247
247
|
expect(getAllByRole(listItemRole)).toHaveLength(1);
|
|
248
248
|
expect(asFragment()).toMatchSnapshot();
|
|
249
249
|
});
|
|
250
|
+
test('Should render the only options matching search value even with additional spaces before and after', () => {
|
|
251
|
+
const {
|
|
252
|
+
getByRole,
|
|
253
|
+
getAllByRole,
|
|
254
|
+
asFragment,
|
|
255
|
+
getByTestId
|
|
256
|
+
} = render( /*#__PURE__*/React.createElement(Select, {
|
|
257
|
+
needSearch: true,
|
|
258
|
+
options: options
|
|
259
|
+
}));
|
|
260
|
+
userEvent.click(getByRole(selectInputRole));
|
|
261
|
+
userEvent.type(within(getByTestId(dropboxTestId)).getByRole('textbox'), ' 2 ');
|
|
262
|
+
expect(getAllByRole(listItemRole)).toHaveLength(1);
|
|
263
|
+
expect(asFragment()).toMatchSnapshot();
|
|
264
|
+
});
|
|
250
265
|
test('Should trigger given onSearch, when type on the search input', async () => {
|
|
251
266
|
const mockOnSearch = jest.fn();
|
|
252
267
|
const {
|
|
@@ -1135,4 +1150,14 @@ describe('Select dataId snapshot - ', () => {
|
|
|
1135
1150
|
userEvent.click(getByRole(selectInputRole));
|
|
1136
1151
|
expect(asFragment()).toMatchSnapshot();
|
|
1137
1152
|
});
|
|
1153
|
+
test('Should render with renderCustomSelectedValue', () => {
|
|
1154
|
+
const {
|
|
1155
|
+
asFragment
|
|
1156
|
+
} = render( /*#__PURE__*/React.createElement(Select, {
|
|
1157
|
+
options: options,
|
|
1158
|
+
selectedValue: "Option 2",
|
|
1159
|
+
renderCustomSelectedValue: () => /*#__PURE__*/React.createElement("div", null, " Select Custom Option 2")
|
|
1160
|
+
}));
|
|
1161
|
+
expect(asFragment()).toMatchSnapshot();
|
|
1162
|
+
});
|
|
1138
1163
|
});
|
|
@@ -14,10 +14,10 @@ exports[`GroupSelect rendering the defult props 1`] = `
|
|
|
14
14
|
data-test-id="GroupSelect"
|
|
15
15
|
>
|
|
16
16
|
<div
|
|
17
|
-
class="
|
|
18
|
-
data-id="
|
|
17
|
+
class="varClass customContainer border_bottom effect borderColor_default hasBorder container flex rowdir"
|
|
18
|
+
data-id="GroupSelect_textBox"
|
|
19
19
|
data-selector-id="textBoxIcon"
|
|
20
|
-
data-test-id="
|
|
20
|
+
data-test-id="GroupSelect_textBox"
|
|
21
21
|
>
|
|
22
22
|
<div
|
|
23
23
|
class="grow basis shrinkOff"
|
|
@@ -80,9 +80,6 @@ exports[`GroupSelect rendering the defult props 1`] = `
|
|
|
80
80
|
</div>
|
|
81
81
|
</div>
|
|
82
82
|
</div>
|
|
83
|
-
<div
|
|
84
|
-
class="line borderColor_default "
|
|
85
|
-
/>
|
|
86
83
|
</div>
|
|
87
84
|
</div>
|
|
88
85
|
</div>
|