@zohodesk/components 1.0.0-alpha-273 → 1.0.0-alpha-274

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.
Files changed (84) hide show
  1. package/README.md +5 -0
  2. package/es/Accordion/Accordion.js +1 -0
  3. package/es/Accordion/AccordionItem.js +1 -0
  4. package/es/AppContainer/AppContainer.js +15 -6
  5. package/es/AppContainer/props/defaultProps.js +2 -1
  6. package/es/AppContainer/props/propTypes.js +1 -0
  7. package/es/Avatar/Avatar.js +3 -0
  8. package/es/AvatarTeam/AvatarTeam.js +1 -0
  9. package/es/Button/Button.js +1 -0
  10. package/es/Buttongroup/Buttongroup.js +1 -0
  11. package/es/DateTime/CalendarView.js +1 -0
  12. package/es/DateTime/DateTime.js +3 -1
  13. package/es/DateTime/DateWidget.js +2 -0
  14. package/es/DropBox/DropBoxElement/DropBoxElement.js +3 -0
  15. package/es/DropDown/DropDown.js +2 -1
  16. package/es/DropDown/DropDownHeading.js +1 -0
  17. package/es/DropDown/DropDownItem.js +2 -1
  18. package/es/Heading/Heading.js +1 -0
  19. package/es/Label/Label.js +1 -0
  20. package/es/Layout/Box.js +4 -3
  21. package/es/Layout/Container.js +4 -3
  22. package/es/Layout/props/defaultProps.js +2 -0
  23. package/es/Layout/props/propTypes.js +2 -0
  24. package/es/Layout/utils.js +5 -1
  25. package/es/MultiSelect/AdvancedGroupMultiSelect.js +1 -0
  26. package/es/MultiSelect/AdvancedMultiSelect.js +1 -0
  27. package/es/MultiSelect/EmptyState.js +4 -0
  28. package/es/MultiSelect/MultiSelect.js +1 -0
  29. package/es/MultiSelect/MultiSelectWithAvatar.js +1 -0
  30. package/es/Popup/Popup.js +1 -4
  31. package/es/Ribbon/Ribbon.js +1 -0
  32. package/es/Select/GroupSelect.js +1 -0
  33. package/es/Select/Select.js +2 -1
  34. package/es/Select/SelectWithAvatar.js +2 -0
  35. package/es/Select/SelectWithIcon.js +2 -1
  36. package/es/Switch/Switch.js +1 -0
  37. package/es/Tab/Tabs.js +2 -1
  38. package/es/Tag/Tag.js +1 -0
  39. package/es/TextBox/TextBox.js +1 -0
  40. package/es/Textarea/Textarea.js +1 -0
  41. package/es/Tooltip/Tooltip.js +2 -1
  42. package/es/semantic/Button/Button.js +1 -0
  43. package/lib/Accordion/Accordion.js +1 -0
  44. package/lib/Accordion/AccordionItem.js +1 -0
  45. package/lib/AppContainer/AppContainer.js +11 -6
  46. package/lib/AppContainer/props/defaultProps.js +2 -1
  47. package/lib/AppContainer/props/propTypes.js +1 -0
  48. package/lib/Avatar/Avatar.js +3 -0
  49. package/lib/AvatarTeam/AvatarTeam.js +1 -0
  50. package/lib/Button/Button.js +1 -0
  51. package/lib/Buttongroup/Buttongroup.js +1 -0
  52. package/lib/DateTime/CalendarView.js +1 -0
  53. package/lib/DateTime/DateTime.js +3 -1
  54. package/lib/DateTime/DateWidget.js +2 -0
  55. package/lib/DropBox/DropBoxElement/DropBoxElement.js +3 -0
  56. package/lib/DropDown/DropDown.js +2 -1
  57. package/lib/DropDown/DropDownHeading.js +1 -0
  58. package/lib/DropDown/DropDownItem.js +2 -1
  59. package/lib/Heading/Heading.js +2 -1
  60. package/lib/Label/Label.js +1 -0
  61. package/lib/Layout/Box.js +8 -4
  62. package/lib/Layout/Container.js +8 -4
  63. package/lib/Layout/props/defaultProps.js +2 -0
  64. package/lib/Layout/props/propTypes.js +2 -0
  65. package/lib/Layout/utils.js +5 -1
  66. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +1 -0
  67. package/lib/MultiSelect/AdvancedMultiSelect.js +1 -0
  68. package/lib/MultiSelect/EmptyState.js +4 -0
  69. package/lib/MultiSelect/MultiSelect.js +1 -0
  70. package/lib/MultiSelect/MultiSelectWithAvatar.js +1 -0
  71. package/lib/Popup/Popup.js +1 -4
  72. package/lib/Ribbon/Ribbon.js +1 -0
  73. package/lib/Select/GroupSelect.js +1 -0
  74. package/lib/Select/Select.js +2 -1
  75. package/lib/Select/SelectWithAvatar.js +2 -0
  76. package/lib/Select/SelectWithIcon.js +2 -1
  77. package/lib/Switch/Switch.js +1 -0
  78. package/lib/Tab/Tabs.js +2 -1
  79. package/lib/Tag/Tag.js +1 -0
  80. package/lib/TextBox/TextBox.js +1 -0
  81. package/lib/Textarea/Textarea.js +1 -0
  82. package/lib/Tooltip/Tooltip.js +2 -1
  83. package/lib/semantic/Button/Button.js +1 -0
  84. package/package.json +1 -1
package/README.md CHANGED
@@ -32,6 +32,11 @@ In this Package, we Provide Some Basic Components to Build Web App
32
32
  - TextBoxIcon
33
33
  - Tooltip
34
34
 
35
+ # 1.0.0-alpha-274
36
+
37
+ - **AppContainer** - needTooltip prop added
38
+ - data-test-id attribute added for all element which having data-id attribute to separate customization and automation
39
+
35
40
  # 1.0.0-alpha-273
36
41
 
37
42
  - Variable Replacer Issue Resolved
@@ -70,6 +70,7 @@ export default class Accordion extends React.Component {
70
70
  "aria-expanded": ariaExpanded,
71
71
  "aria-haspopup": ariaHaspopup,
72
72
  "data-id": dataId,
73
+ "data-test-id": dataId,
73
74
  "data-selector-id": dataSelectorId
74
75
  }, children);
75
76
  }
@@ -38,6 +38,7 @@ export default class AccordionItem extends React.Component {
38
38
  return /*#__PURE__*/React.createElement("div", {
39
39
  className: className ? className : '',
40
40
  "data-id": dataId,
41
+ "data-test-id": dataId,
41
42
  role: role,
42
43
  "data-selector-id": dataSelectorId
43
44
  }, /*#__PURE__*/React.createElement("div", {
@@ -65,7 +65,11 @@ export default class AppContainer extends React.Component {
65
65
  }
66
66
 
67
67
  componentDidMount() {
68
- if (this.containerElement) {
68
+ let {
69
+ needTooltip
70
+ } = this.props;
71
+
72
+ if (this.containerElement && needTooltip) {
69
73
  this.containerElement.addEventListener('mouseover', this.handleOver, false);
70
74
  this.containerElement.addEventListener('mouseout', this.removeTimeout, false);
71
75
  this.tooltipRef.observeElement();
@@ -73,7 +77,11 @@ export default class AppContainer extends React.Component {
73
77
  }
74
78
 
75
79
  componentWillUnmount() {
76
- if (this.containerElement) {
80
+ let {
81
+ needTooltip
82
+ } = this.props;
83
+
84
+ if (this.containerElement && needTooltip) {
77
85
  this.containerElement.removeEventListener('mouseover', this.handleOver, false);
78
86
  this.containerElement.addEventListener('mouseout', this.removeTimeout, false);
79
87
  this.tooltipRef.unObserveElement();
@@ -89,6 +97,7 @@ export default class AppContainer extends React.Component {
89
97
  dataSelectorId,
90
98
  tooltipClass,
91
99
  tooltipParentClass,
100
+ needTooltip,
92
101
  customProps
93
102
  } = this.props;
94
103
  let {
@@ -97,22 +106,22 @@ export default class AppContainer extends React.Component {
97
106
  ExtraProps = {}
98
107
  } = customProps;
99
108
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Container, _extends({
100
- className: `${style.container} ${className}` //onMouseOver={this.handleOver}
101
- ,
109
+ className: `${style.container} ${className}`,
102
110
  dataId: dataId,
103
111
  dataSelectorId: dataSelectorId,
104
112
  tagName: tagName,
105
113
  eleRef: this.getContainerRef
106
114
  }, ContainerProps, ExtraProps), /*#__PURE__*/React.createElement(Box, {
107
115
  flexible: true
108
- }, children)), /*#__PURE__*/React.createElement("div", _extends({}, ExtraProps, {
116
+ }, children)), needTooltip ? /*#__PURE__*/React.createElement("div", _extends({}, ExtraProps, {
109
117
  className: `${style.container} ${style.tooltip} ${tooltipParentClass}`,
110
118
  "data-id": `${dataId}_tooltip`,
119
+ "data-test-id": `${dataId}_tooltip`,
111
120
  "data-selector-id": `${dataSelectorId}_tooltip`
112
121
  }), /*#__PURE__*/React.createElement(Tooltip, _extends({
113
122
  ref: this.setTooltipRef,
114
123
  customClass: tooltipClass
115
- }, TooltipProps))));
124
+ }, TooltipProps))) : null);
116
125
  }
117
126
 
118
127
  }
@@ -5,5 +5,6 @@ export const defaultProps = {
5
5
  tooltipClass: '',
6
6
  tooltipParentClass: '',
7
7
  customProps: {},
8
- dataSelectorId: 'appContainer'
8
+ dataSelectorId: 'appContainer',
9
+ needTooltip: true
9
10
  };
@@ -6,6 +6,7 @@ export const propTypes = {
6
6
  eleRef: PropTypes.func,
7
7
  tagName: PropTypes.string,
8
8
  className: PropTypes.string,
9
+ needTooltip: PropTypes.bool,
9
10
  tooltipClass: PropTypes.string,
10
11
  tooltipParentClass: PropTypes.string,
11
12
  customProps: PropTypes.shape({
@@ -160,15 +160,18 @@ export default class Avatar extends React.Component {
160
160
  className: `${style.avatar} ${style[size]} ${AvatarSize(size)} ${style[shapeStyle]} ${style[palette]} ${textStyle} ${borderStyle} ${customClass ? customClass : ''}`,
161
161
  "data-title": needTitle ? title ? title : name : null,
162
162
  "data-id": dataId,
163
+ "data-test-id": dataId,
163
164
  onClick: onClick,
164
165
  "data-selector-id": dataSelectorId
165
166
  }, AvatarProps), showInitial && !showAlternateAvatar && /*#__PURE__*/React.createElement("span", {
166
167
  className: `${style.initial}`,
167
168
  "data-id": `${dataId}_AvatarInitial`,
169
+ "data-test-id": `${dataId}_AvatarInitial`,
168
170
  "data-selector-id": `${dataSelectorId}_AvatarInitial`
169
171
  }, initial), (showAvatar || showAlternateAvatar) && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("img", {
170
172
  className: `${style.image} ${isAnimate ? style.animate : ''} ${needInnerBorder ? style.innerBorder : ''}`,
171
173
  "data-id": `${dataId}_AvatarImg`,
174
+ "data-test-id": `${dataId}_AvatarImg`,
172
175
  "data-selector-id": `${dataSelectorId}_AvatarImg`,
173
176
  name: name,
174
177
  onError: this.putInvalidImageURLJSON,
@@ -50,6 +50,7 @@ export default class AvatarTeam extends React.Component {
50
50
  return /*#__PURE__*/React.createElement("span", _extends({
51
51
  className: `${style.container} ${borderOnActive ? style.borderOnActive : border ? style.borderOnHover : ''} `,
52
52
  "data-id": dataId,
53
+ "data-test-id": dataId,
53
54
  "data-selector-id": dataSelectorId
54
55
  }, AvatarTeamProps), /*#__PURE__*/React.createElement(Avatar, _extends({
55
56
  name: name,
@@ -42,6 +42,7 @@ export default function Button(props) {
42
42
  return /*#__PURE__*/React.createElement("button", _extends({
43
43
  className: buttonClass,
44
44
  "data-id": disabled ? `${dataId}_disabled` : dataId,
45
+ "data-test-id": disabled ? `${dataId}_disabled` : dataId,
45
46
  disabled: disabled || statusLower === 'loading',
46
47
  onClick: onClick,
47
48
  "data-title": title,
@@ -25,6 +25,7 @@ export default class Buttongroup extends React.Component {
25
25
  return /*#__PURE__*/React.createElement("div", {
26
26
  className: `${style.buttonGroup} ${style[type]} ${customClass ? customClass : ''}`,
27
27
  "data-id": dataId,
28
+ "data-test-id": dataId,
28
29
  "data-selector-id": dataSelectorId
29
30
  }, /*#__PURE__*/React.createElement("div", {
30
31
  className: style[`align${buttonPosition}`]
@@ -171,6 +171,7 @@ export default class CalendarView extends React.PureComponent {
171
171
  ariaLabel: dayNamesShort
172
172
  }), /*#__PURE__*/React.createElement("div", {
173
173
  "data-id": `${dataId}_dateContainer`,
174
+ "data-test-id": `${dataId}_dateContainer`,
174
175
  className: `${style.dateContainer} ${needBorder ? style.separator : ''}`
175
176
  }, rows));
176
177
  }
@@ -661,6 +661,7 @@ export default class DateTime extends React.PureComponent {
661
661
  const childEle = /*#__PURE__*/React.createElement("div", {
662
662
  className: `${style.container} ${innerClass}`,
663
663
  "data-id": `${dataId}_Calendar`,
664
+ "data-test-id": `${dataId}_Calendar`,
664
665
  onClick: this.closePopup
665
666
  }, /*#__PURE__*/React.createElement(DateTimePopupHeader, {
666
667
  onOpenYearView: this.handleOpenYearView,
@@ -718,7 +719,8 @@ export default class DateTime extends React.PureComponent {
718
719
  })) : null));
719
720
  return isDefaultPosition ? /*#__PURE__*/React.createElement("div", {
720
721
  className: `${style.dropBox} ${className}`,
721
- "data-id": `${dataId}_dateBoxContainer`
722
+ "data-id": `${dataId}_dateBoxContainer`,
723
+ "data-test-id": `${dataId}_dateBoxContainer`
722
724
  }, childEle) : isReady ? /*#__PURE__*/React.createElement(ResponsiveDropBox, {
723
725
  size: boxSize,
724
726
  boxPosition: position,
@@ -1000,11 +1000,13 @@ class DateWidgetComponent extends React.Component {
1000
1000
  className: `${style.container}`
1001
1001
  }, children ? /*#__PURE__*/React.createElement("div", {
1002
1002
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : `${dataId}_widget`}`,
1003
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : `${dataId}_widget`}`,
1003
1004
  onClick: isDisabled || isReadOnly ? null : this.handleTogglePopup,
1004
1005
  ref: getTargetRef,
1005
1006
  className: `${className ? className : ''} ${isDisabled ? style.disabled : style.enabled}`
1006
1007
  }, children) : /*#__PURE__*/React.createElement("div", {
1007
1008
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : `${dataId}_widget`}`,
1009
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : `${dataId}_widget`}`,
1008
1010
  className: `${className ? className : ''} ${style.textBox} ${isPopupOpen && !isDisabled ? style.textBoxFocus : ''} ${isDisabled ? style.disabled : isReadOnly ? style.readOnly : style.enabled}`,
1009
1011
  onClick: !isAllowedDateType ? isDisabled || isReadOnly ? null : this.handleTogglePopup : null,
1010
1012
  ref: getTargetRef
@@ -96,6 +96,7 @@ export default function DropBoxElement(props) {
96
96
  return /*#__PURE__*/React.createElement("div", {
97
97
  className: boxClassName,
98
98
  "data-id": `${dataId}`,
99
+ "data-test-id": `${dataId}`,
99
100
  "data-selector-id": dataSelectorId,
100
101
  ref: getRef,
101
102
  style: inlineStyle,
@@ -112,6 +113,7 @@ export default function DropBoxElement(props) {
112
113
  className: `${subContainerClass} ${style[`${palette}Palette`]}`,
113
114
  onClick: onClick,
114
115
  "data-id": `${dataId}_subcontainer`,
116
+ "data-test-id": `${dataId}_subcontainer`,
115
117
  "data-selector-id": `${dataSelectorId}_subcontainer`,
116
118
  ref: subContainerRef
117
119
  }, isModel ? /*#__PURE__*/React.createElement("div", {
@@ -120,6 +122,7 @@ export default function DropBoxElement(props) {
120
122
  className: style[arrowPosition],
121
123
  style: arrowstyle,
122
124
  "data-id": `${dataId}_arrow`,
125
+ "data-test-id": `${dataId}_arrow`,
123
126
  "data-selector-id": `${dataSelectorId}_arrow`
124
127
  }, /*#__PURE__*/React.createElement("div", {
125
128
  className: style.arrowShape
@@ -71,7 +71,8 @@ export class DropDownItemContainer extends React.Component {
71
71
  className: style.listGroup,
72
72
  onScroll: this.onScroll,
73
73
  ref: this.getRef,
74
- "data-id": dataId
74
+ "data-id": dataId,
75
+ "data-test-id": dataId
75
76
  }, children);
76
77
  }
77
78
 
@@ -28,6 +28,7 @@ export default class DropDownHeading extends React.Component {
28
28
  "aria-label": ariaLabel,
29
29
  id: htmlId,
30
30
  "data-id": dataId,
31
+ "data-test-id": dataId,
31
32
  "data-selector-id": dataSelectorId // tabindex='0'
32
33
 
33
34
  }, text, children);
@@ -58,7 +58,8 @@ export default class DropDownItem extends React.Component {
58
58
  onClick: this.onClick,
59
59
  onMouseOver: this.onHover,
60
60
  ref: this.getRef,
61
- "data-id": dataId
61
+ "data-id": dataId,
62
+ "data-test-id": dataId
62
63
  }, children && children[0] ? /*#__PURE__*/React.createElement("span", {
63
64
  className: style.children
64
65
  }, " ", children[0], " ") : children !== undefined ? /*#__PURE__*/React.createElement("span", {
@@ -20,6 +20,7 @@ export default class Heading extends React.Component {
20
20
  onDoubleClick,
21
21
  'data-title': dataTitle || title,
22
22
  'data-id': dataId,
23
+ 'data-test-id': dataId,
23
24
  ...a11y
24
25
  }, title);
25
26
  }
package/es/Label/Label.js CHANGED
@@ -29,6 +29,7 @@ export default class Label extends React.Component {
29
29
  htmlFor: htmlFor,
30
30
  "data-title": title,
31
31
  "data-id": dataId,
32
+ "data-test-id": dataId,
32
33
  "data-selector-id": dataSelectorId,
33
34
  onClick: onClick,
34
35
  id: id
package/es/Layout/Box.js CHANGED
@@ -96,18 +96,19 @@ export function getBoxProps(props) {
96
96
  return createProps(propTypes, props, getBoxClassNames(props));
97
97
  }
98
98
  export default function Box(props) {
99
- let childProps = getBoxProps(props);
100
99
  let {
101
100
  tagName
102
101
  } = props;
103
- setProps(childProps, props, {
102
+ let componentProps = setProps({ ...getBoxProps(props)
103
+ }, props, {
104
104
  isScrollAttribute: 'data-scroll',
105
105
  eleRef: 'ref',
106
106
  dataId: 'data-id',
107
+ testId: 'data-test-id',
107
108
  tourId: 'data-tour',
108
109
  dataSelectorId: 'data-selector-id'
109
110
  });
110
- return /*#__PURE__*/React.createElement(tagName, childProps);
111
+ return /*#__PURE__*/React.createElement(tagName, componentProps);
111
112
  }
112
113
  Box.propTypes = propTypes;
113
114
  Box.defaultProps = defaultProps;
@@ -113,18 +113,19 @@ export function getContainerProps(props) {
113
113
  return createProps(propTypes, props, getContainerClassNames(props));
114
114
  }
115
115
  export default function Container(props) {
116
- let childProps = getContainerProps(props);
117
116
  let {
118
117
  tagName
119
118
  } = props;
120
- setProps(childProps, props, {
119
+ let componentProps = setProps({ ...getContainerProps(props)
120
+ }, props, {
121
121
  isScrollAttribute: 'data-scroll',
122
122
  eleRef: 'ref',
123
123
  dataId: 'data-id',
124
+ testId: 'data-test-id',
124
125
  tourId: 'data-tour',
125
126
  dataSelectorId: 'data-selector-id'
126
127
  });
127
- return /*#__PURE__*/React.createElement(tagName, childProps);
128
+ return /*#__PURE__*/React.createElement(tagName, componentProps);
128
129
  }
129
130
  Container.propTypes = propTypes;
130
131
  Container.defaultProps = defaultProps;
@@ -1,11 +1,13 @@
1
1
  export const BoxDefaultProps = {
2
2
  dataId: 'boxComponent',
3
+ testId: '',
3
4
  isScrollAttribute: false,
4
5
  tagName: 'div',
5
6
  dataSelectorId: 'box'
6
7
  };
7
8
  export const ContainerDefaultProps = {
8
9
  dataId: 'containerComponent',
10
+ testId: '',
9
11
  isScrollAttribute: false,
10
12
  isCover: true,
11
13
  alignBox: 'column',
@@ -6,6 +6,7 @@ export const BoxProps = {
6
6
  className: PropTypes.string,
7
7
  column: PropTypes.oneOf(['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12']),
8
8
  dataId: PropTypes.string,
9
+ testId: PropTypes.string,
9
10
  dataSelectorId: PropTypes.string,
10
11
  eleRef: PropTypes.func,
11
12
  flexible: PropTypes.bool,
@@ -30,6 +31,7 @@ export const ContainerProps = {
30
31
  children: PropTypes.oneOfType([PropTypes.node, PropTypes.string]),
31
32
  className: PropTypes.string,
32
33
  dataId: PropTypes.string,
34
+ testId: PropTypes.string,
33
35
  dataSelectorId: PropTypes.string,
34
36
  eleRef: PropTypes.func,
35
37
  hidden: PropTypes.array,
@@ -17,8 +17,12 @@ export function isInteger(value) {
17
17
  }
18
18
  export function setProps(childProps, props) {
19
19
  let values = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
20
- Object.keys(values).map(value => {
20
+ Object.keys(values).forEach(value => {
21
21
  if (props[value]) {
22
+ if (value === 'dataId') {
23
+ childProps['data-test-id'] = props[value];
24
+ }
25
+
22
26
  childProps[values[value]] = props[value];
23
27
  }
24
28
  });
@@ -902,6 +902,7 @@ class AdvancedGroupMultiSelect extends React.Component {
902
902
  return /*#__PURE__*/React.createElement("div", {
903
903
  className: `${style.wrapper} ${isDisabled ? style.disabled : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`,
904
904
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
905
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
905
906
  "data-title": isDisabled ? title : null,
906
907
  onClick: this.handleInputFocus,
907
908
  "data-selector-id": dataSelectorId
@@ -411,6 +411,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
411
411
  return /*#__PURE__*/React.createElement("div", {
412
412
  className: `${style.wrapper} ${isDisabled ? style.disabled : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`,
413
413
  "data-id": dataIdMultiSelectComp,
414
+ "data-test-id": dataIdMultiSelectComp,
414
415
  "data-title": isDisabled ? title : null,
415
416
  onClick: this.handleInputFocus,
416
417
  "data-selector-id": dataSelectorId
@@ -35,21 +35,25 @@ export default class EmptyState extends React.PureComponent {
35
35
  return /*#__PURE__*/React.createElement(React.Fragment, null, isLoading ? /*#__PURE__*/React.createElement("div", {
36
36
  className: className,
37
37
  "data-id": `${dataId}_Loading`,
38
+ "data-test-id": `${dataId}_Loading`,
38
39
  role: role,
39
40
  id: htmlId
40
41
  }, loadingText) : searchString.length && suggestions.length === 0 ? getCustomEmptyState ? getCustomEmptyState() : /*#__PURE__*/React.createElement("div", {
41
42
  className: className,
42
43
  "data-id": `${dataId}_srchEmptyMsg`,
44
+ "data-test-id": `${dataId}_srchEmptyMsg`,
43
45
  role: role,
44
46
  id: htmlId
45
47
  }, searchEmptyText || emptyText) : options.length === 0 ? /*#__PURE__*/React.createElement("div", {
46
48
  className: className,
47
49
  "data-id": `${dataId}_noOptnsMsg`,
50
+ "data-test-id": `${dataId}_noOptnsMsg`,
48
51
  role: role,
49
52
  id: htmlId
50
53
  }, emptyText) : /*#__PURE__*/React.createElement("div", {
51
54
  className: className,
52
55
  "data-id": `${dataId}_NoMoreOptionMsg`,
56
+ "data-test-id": `${dataId}_NoMoreOptionMsg`,
53
57
  role: role,
54
58
  id: htmlId
55
59
  }, noMoreText || emptyText));
@@ -932,6 +932,7 @@ export class MultiSelectComponent extends React.Component {
932
932
  return /*#__PURE__*/React.createElement("div", {
933
933
  className: `${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${disableAction ? CssProvider('isBlock') : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`,
934
934
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
935
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
935
936
  "data-title": isDisabled ? title : null,
936
937
  onClick: this.handleInputFocus,
937
938
  "data-selector-id": dataSelectorId
@@ -143,6 +143,7 @@ class MultiSelectWithAvatarComponent extends MultiSelectComponent {
143
143
  return /*#__PURE__*/React.createElement("div", {
144
144
  className: ` ${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${disableAction ? CssProvider('isBlock') : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`,
145
145
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
146
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
146
147
  "data-title": isDisabled ? title : null,
147
148
  onClick: this.handleInputFocus,
148
149
  "data-selector-id": dataSelectorId
package/es/Popup/Popup.js CHANGED
@@ -356,10 +356,7 @@ const Popup = function (Component) {
356
356
  placeHolderElement
357
357
  } = openedPopup;
358
358
  const isDropBoxChild = isDescendant(dropElement, target);
359
- const isTargetChild = isDescendant(placeHolderElement, target); // const massUpdateParent = document.querySelector(
360
- // '[data-id=massUpdatePopup]'
361
- // );
362
- // const isPopupMassUpdateChild = isDescendant(
359
+ const isTargetChild = isDescendant(placeHolderElement, target); // const isPopupMassUpdateChild = isDescendant(
363
360
  // massUpdateParent,
364
361
  // dropElement
365
362
  // );
@@ -20,6 +20,7 @@ export default class Ribbon extends React.Component {
20
20
  className: `${style.basic} ${customClass} ${type !== 'tag' ? type === 'plain' || type === 'box' || type === 'stamp' ? `${style[`plain_${palette}`]}
21
21
  ${type === 'box' ? style[`box_${palette}`] : ''} ${type === 'stamp' ? style[`stamp_${palette}`] : ''}` : `${style[`palette_${palette}`]} ${type === 'default' ? style[`default_${palette}`] : ''}` : ''} ${style[size]} ${style[type]}`,
22
22
  "data-id": dataId,
23
+ "data-test-id": dataId,
23
24
  "data-selector-id": dataSelectorId
24
25
  }, type === 'sticker' ? /*#__PURE__*/React.createElement("span", {
25
26
  className: style.after
@@ -615,6 +615,7 @@ export class GroupSelectComponent extends PureComponent {
615
615
  return /*#__PURE__*/React.createElement("div", {
616
616
  className: `${style.container} ${style[`box_${size}`]} ${isReadOnly ? style.readonly : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${iconOnHover && (isReadOnly || isDisabled) ? style.iconOnHoverReadonly : iconOnHover && !(isReadOnly || isDisabled) ? style.iconOnHoverStyle : ''}`,
617
617
  "data-id": dataIdSlctComp,
618
+ "data-test-id": dataIdSlctComp,
618
619
  "data-title": isDisabled ? title : null,
619
620
  "data-selector-id": dataSelectorId
620
621
  }, /*#__PURE__*/React.createElement("div", {
@@ -764,7 +764,8 @@ export class SelectComponent extends Component {
764
764
  className: `${className ? className : ''}`,
765
765
  onClick: isDisabled || isReadOnly ? null : this.togglePopup,
766
766
  ref: getTargetRef,
767
- "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`
767
+ "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
768
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`
768
769
  }, needSelectDownIcon ? /*#__PURE__*/React.createElement(TextBoxIcon, {
769
770
  a11y: {
770
771
  role: 'Menuitem',
@@ -183,6 +183,7 @@ class SelectWithAvatarComponent extends SelectComponent {
183
183
  return /*#__PURE__*/React.createElement("div", {
184
184
  className: `${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''} ${className ? className : ''}`,
185
185
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
186
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
186
187
  "data-title": isDisabled ? title : null,
187
188
  "data-selector-id": dataSelectorId
188
189
  }, /*#__PURE__*/React.createElement(Container, {
@@ -194,6 +195,7 @@ class SelectWithAvatarComponent extends SelectComponent {
194
195
  }, selectedId ? /*#__PURE__*/React.createElement(Box, {
195
196
  className: style.tag,
196
197
  "data-id": `${dataId}_SelectTag`,
198
+ "data-test-id": `${dataId}_SelectTag`,
197
199
  key: `${id}tag`
198
200
  }, /*#__PURE__*/React.createElement(Tag, {
199
201
  avatarPalette: avatarPalette,
@@ -367,7 +367,8 @@ class SelectWithIcon extends Component {
367
367
  className: `${className ? className : ''}`,
368
368
  onClick: isDisabled || isReadOnly ? null : this.togglePopup,
369
369
  ref: getTargetRef,
370
- "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`
370
+ "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
371
+ "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`
371
372
  }, /*#__PURE__*/React.createElement(Container, {
372
373
  alignBox: "row"
373
374
  }, needIcon ? /*#__PURE__*/React.createElement(Container, {
@@ -76,6 +76,7 @@ export default class Switch extends React.Component {
76
76
  }), /*#__PURE__*/React.createElement("label", {
77
77
  htmlFor: id,
78
78
  "data-id": dataId,
79
+ "data-test-id": dataId,
79
80
  className: `${style.label} ${style[`${size}Label`]} ${customSwitch}`
80
81
  })), text && /*#__PURE__*/React.createElement(Label, _extends({
81
82
  text: text,
package/es/Tab/Tabs.js CHANGED
@@ -598,7 +598,8 @@ class Tabs extends React.Component {
598
598
  }, this.renderTabs(mainTabs, moreTabs, false))), otherTabs.length ? /*#__PURE__*/React.createElement(Box, null, otherTabs) : null, isAnimate && needTabBorder && needAppearance && /*#__PURE__*/React.createElement("div", {
599
599
  className: hlClass,
600
600
  ref: this.getHighlightRef,
601
- "data-id": dataId
601
+ "data-id": dataId,
602
+ "data-test-id": dataId
602
603
  })));
603
604
  }
604
605
 
package/es/Tag/Tag.js CHANGED
@@ -99,6 +99,7 @@ export default class Tag extends PureComponent {
99
99
  return /*#__PURE__*/React.createElement("div", {
100
100
  className: `${style.container} ${needEffect && !isReadOnly ? style.effect : style.readonly} ${active ? `${style.selected} ${style[`active${palette}`]}` : ''} ${onRemove ? active ? `${style[`active${size}Effect`]}` : '' : ''} ${style[size]} ${rounded ? style.lgRadius : style.smRadius} ${style[palette]} ${disabled ? style.disabled : ''} ${onSelectTag ? style.pointer : ''} ${customTag}`,
101
101
  "data-id": active ? `${dataId}_TagSelected` : `${dataId}_Tag`,
102
+ "data-test-id": active ? `${dataId}_TagSelected` : `${dataId}_Tag`,
102
103
  onClick: this.handleSelect,
103
104
  ref: this.getRef,
104
105
  "data-title": tooltip ? tooltip : text,
@@ -150,6 +150,7 @@ export default class Textbox extends React.PureComponent {
150
150
  "aria-multiselectable": ariaMultiselectable,
151
151
  className: `${isReadOnly && needReadOnlyStyle ? style.readonly : ''} ${isClickable ? style.pointer : ''} ${classList} ${style[`borderColor_${borderColor}`]} ${customClass ? customClass : ''}`,
152
152
  "data-id": `${dataId}`,
153
+ "data-test-id": `${dataId}`,
153
154
  "data-selector-id": dataSelectorId,
154
155
  id: htmlId || id,
155
156
  maxLength: maxLength,
@@ -94,6 +94,7 @@ export default class Textarea extends React.Component {
94
94
  placeholder: placeHolder
95
95
  }, options, {
96
96
  "data-id": dataId,
97
+ "data-test-id": dataId,
97
98
  maxLength: maxLength,
98
99
  onChange: this.onChange,
99
100
  onKeyDown: this.onKeyDown,
@@ -488,7 +488,8 @@ export default class Tooltip extends React.Component {
488
488
  width
489
489
  },
490
490
  ref: this.getToolTipDOM,
491
- "data-id": dataId
491
+ "data-id": dataId,
492
+ "data-test-id": dataId
492
493
  }, !dataTooltipnoArrow ? /*#__PURE__*/React.createElement("span", {
493
494
  className: `${style.tooltiparrow} ${arrowStyle}`,
494
495
  style: {
@@ -44,6 +44,7 @@ export default class Button extends React.Component {
44
44
  disabled: disabled,
45
45
  ref: ref,
46
46
  "data-id": dataId,
47
+ "data-test-id": dataId,
47
48
  onClick: onClick,
48
49
  "data-title": title
49
50
  }, children ? children : text);
@@ -115,6 +115,7 @@ var Accordion = /*#__PURE__*/function (_React$Component) {
115
115
  "aria-expanded": ariaExpanded,
116
116
  "aria-haspopup": ariaHaspopup,
117
117
  "data-id": dataId,
118
+ "data-test-id": dataId,
118
119
  "data-selector-id": dataSelectorId
119
120
  }, children);
120
121
  }
@@ -82,6 +82,7 @@ var AccordionItem = /*#__PURE__*/function (_React$Component) {
82
82
  return /*#__PURE__*/_react["default"].createElement("div", {
83
83
  className: className ? className : '',
84
84
  "data-id": dataId,
85
+ "data-test-id": dataId,
85
86
  role: role,
86
87
  "data-selector-id": dataSelectorId
87
88
  }, /*#__PURE__*/_react["default"].createElement("div", {