@zohodesk/components 1.6.22-exp-1 → 1.6.23-exp-2

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 (106) hide show
  1. package/README.md +4 -0
  2. package/es/Accordion/Accordion.js +2 -1
  3. package/es/Accordion/AccordionItem.js +3 -2
  4. package/es/AppContainer/AppContainer.js +2 -1
  5. package/es/Avatar/Avatar.js +5 -4
  6. package/es/AvatarTeam/AvatarTeam.js +4 -3
  7. package/es/Button/Button.js +5 -4
  8. package/es/Buttongroup/Buttongroup.js +4 -3
  9. package/es/CheckBox/CheckBox.js +8 -7
  10. package/es/ColorSelect/_shared/ColorIndicator/ColorIndicator.js +2 -1
  11. package/es/DateTime/CalendarView.js +2 -1
  12. package/es/DateTime/DateTime.js +5 -4
  13. package/es/DateTime/DateTimePopupFooter.js +2 -1
  14. package/es/DateTime/DateWidget.js +4 -3
  15. package/es/DateTime/Time.js +2 -1
  16. package/es/DropBox/DropBox.js +3 -2
  17. package/es/DropBox/DropBoxElement/DropBoxElement.js +6 -5
  18. package/es/DropDown/DropDown.js +2 -1
  19. package/es/DropDown/DropDownHeading.js +2 -1
  20. package/es/DropDown/DropDownItem.js +6 -5
  21. package/es/DropDown/DropDownSearch.js +2 -1
  22. package/es/DropDown/DropDownSeparator.js +2 -1
  23. package/es/Label/Label.js +3 -2
  24. package/es/ListItem/ListItemWithAvatar.js +2 -1
  25. package/es/ListItem/ListItemWithCheckBox.js +2 -1
  26. package/es/ListItem/ListItemWithIcon.js +3 -2
  27. package/es/ListItem/ListItemWithRadio.js +2 -1
  28. package/es/MultiSelect/AdvancedGroupMultiSelect.js +8 -7
  29. package/es/MultiSelect/AdvancedMultiSelect.js +4 -3
  30. package/es/MultiSelect/EmptyState.js +5 -4
  31. package/es/MultiSelect/MobileHeader/MobileHeader.js +2 -1
  32. package/es/MultiSelect/MultiSelect.js +6 -5
  33. package/es/MultiSelect/MultiSelectWithAvatar.js +3 -2
  34. package/es/PopOver/PopOver.js +3 -2
  35. package/es/Radio/Radio.js +4 -3
  36. package/es/Ribbon/Ribbon.js +7 -6
  37. package/es/Select/GroupSelect.js +5 -4
  38. package/es/Select/Select.js +4 -3
  39. package/es/Select/SelectWithAvatar.js +4 -3
  40. package/es/Select/SelectWithIcon.js +4 -3
  41. package/es/Stencils/Stencils.js +2 -1
  42. package/es/Switch/Switch.js +3 -2
  43. package/es/Tab/Tabs.js +4 -3
  44. package/es/Tag/Tag.js +5 -4
  45. package/es/TextBox/TextBox.js +2 -1
  46. package/es/Textarea/Textarea.js +2 -1
  47. package/es/Tooltip/Tooltip.js +5 -4
  48. package/es/deprecated/Switch/Switch.js +3 -2
  49. package/es/semantic/Button/Button.js +2 -1
  50. package/es/v1/Button/Button.js +3 -1
  51. package/es/v1/Switch/Switch.js +4 -3
  52. package/es/v1/shared/Loader/Loader.js +4 -3
  53. package/es/v1/shared/SuccessTick/SuccessTick.js +2 -1
  54. package/lib/Accordion/Accordion.js +3 -1
  55. package/lib/Accordion/AccordionItem.js +4 -2
  56. package/lib/AppContainer/AppContainer.js +3 -1
  57. package/lib/Avatar/Avatar.js +6 -4
  58. package/lib/AvatarTeam/AvatarTeam.js +4 -2
  59. package/lib/Button/Button.js +6 -4
  60. package/lib/Buttongroup/Buttongroup.js +5 -3
  61. package/lib/CheckBox/CheckBox.js +9 -7
  62. package/lib/ColorSelect/_shared/ColorIndicator/ColorIndicator.js +3 -1
  63. package/lib/DateTime/CalendarView.js +3 -1
  64. package/lib/DateTime/DateTime.js +6 -4
  65. package/lib/DateTime/DateTimePopupFooter.js +3 -1
  66. package/lib/DateTime/DateWidget.js +5 -3
  67. package/lib/DateTime/Time.js +3 -1
  68. package/lib/DropBox/DropBox.js +4 -2
  69. package/lib/DropBox/DropBoxElement/DropBoxElement.js +7 -5
  70. package/lib/DropDown/DropDown.js +3 -1
  71. package/lib/DropDown/DropDownHeading.js +3 -1
  72. package/lib/DropDown/DropDownItem.js +7 -5
  73. package/lib/DropDown/DropDownSearch.js +3 -1
  74. package/lib/DropDown/DropDownSeparator.js +3 -1
  75. package/lib/Label/Label.js +3 -1
  76. package/lib/ListItem/ListItemWithAvatar.js +3 -1
  77. package/lib/ListItem/ListItemWithCheckBox.js +3 -1
  78. package/lib/ListItem/ListItemWithIcon.js +4 -2
  79. package/lib/ListItem/ListItemWithRadio.js +3 -1
  80. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +8 -6
  81. package/lib/MultiSelect/AdvancedMultiSelect.js +4 -2
  82. package/lib/MultiSelect/EmptyState.js +6 -4
  83. package/lib/MultiSelect/MobileHeader/MobileHeader.js +3 -1
  84. package/lib/MultiSelect/MultiSelect.js +6 -4
  85. package/lib/MultiSelect/MultiSelectWithAvatar.js +4 -2
  86. package/lib/PopOver/PopOver.js +4 -2
  87. package/lib/Radio/Radio.js +5 -3
  88. package/lib/Ribbon/Ribbon.js +7 -5
  89. package/lib/Select/GroupSelect.js +6 -4
  90. package/lib/Select/Select.js +5 -3
  91. package/lib/Select/SelectWithAvatar.js +5 -3
  92. package/lib/Select/SelectWithIcon.js +5 -3
  93. package/lib/Stencils/Stencils.js +3 -1
  94. package/lib/Switch/Switch.js +4 -2
  95. package/lib/Tab/Tabs.js +5 -3
  96. package/lib/Tag/Tag.js +6 -4
  97. package/lib/TextBox/TextBox.js +3 -1
  98. package/lib/Textarea/Textarea.js +3 -1
  99. package/lib/Tooltip/Tooltip.js +6 -4
  100. package/lib/deprecated/Switch/Switch.js +4 -2
  101. package/lib/semantic/Button/Button.js +3 -1
  102. package/lib/v1/Button/Button.js +3 -1
  103. package/lib/v1/Switch/Switch.js +5 -3
  104. package/lib/v1/shared/Loader/Loader.js +5 -3
  105. package/lib/v1/shared/SuccessTick/SuccessTick.js +3 -1
  106. package/package.json +1 -1
@@ -12,6 +12,7 @@ import { ListItemWithIcon_Props } from "./props/propTypes";
12
12
  import { renderNode, isRenderable } from '@zohodesk/utils';
13
13
  /**** CSS ****/
14
14
 
15
+ import { cn } from "@dot-system/css-utility";
15
16
  import style from "./ListItem.module.css";
16
17
  export default class ListItemWithIcon extends React.Component {
17
18
  constructor(props) {
@@ -122,7 +123,7 @@ export default class ListItemWithIcon extends React.Component {
122
123
  className: `${style.contentWrapper} ${!iconName && lhsAlignContent !== 'start' ? style[`alignLhsBox_${lhsAlignContent}`] : ''}`
123
124
  }, iconName && /*#__PURE__*/React.createElement("div", {
124
125
  "aria-hidden": true,
125
- className: `${style.iconBox} ${style[`lhsJustifyContent_${lhsJustifyContent}`]}`,
126
+ className: cn(`${style.iconBox} ${style[`lhsJustifyContent_${lhsJustifyContent}`]}`),
126
127
  "data-id": iconBoxDataId,
127
128
  "data-test-id": iconBoxDataId
128
129
  }, /*#__PURE__*/React.createElement(Box, {
@@ -133,7 +134,7 @@ export default class ListItemWithIcon extends React.Component {
133
134
  name: iconName,
134
135
  size: iconSize
135
136
  }))), iconClass && !iconName ? /*#__PURE__*/React.createElement("span", {
136
- className: iconClass
137
+ className: cn(iconClass)
137
138
  }) : null, /*#__PURE__*/React.createElement(Box, {
138
139
  flexible: true,
139
140
  className: `${style.leftBox} ${style.selfAlign_center}`
@@ -7,6 +7,7 @@ import ListContainer from "./ListContainer";
7
7
  import { ListItemWithRadioDefaultProps } from "./props/defaultProps";
8
8
  import { ListItemWithRadio_Props } from "./props/propTypes";
9
9
  import { renderNode, isRenderable } from '@zohodesk/utils';
10
+ import { cn } from "@dot-system/css-utility";
10
11
  import style from "./ListItem.module.css";
11
12
  export default class ListItemWithRadio extends React.Component {
12
13
  constructor(props) {
@@ -106,7 +107,7 @@ export default class ListItemWithRadio extends React.Component {
106
107
  }, ContainerProps), /*#__PURE__*/React.createElement(Box, {
107
108
  className: style.contentWrapper
108
109
  }, /*#__PURE__*/React.createElement("div", {
109
- className: `${style.iconBox} ${style[`lhsJustifyContent_${lhsJustifyContent}`]}`,
110
+ className: cn(`${style.iconBox} ${style[`lhsJustifyContent_${lhsJustifyContent}`]}`),
110
111
  "data-id": iconBoxDataId,
111
112
  "data-test-id": iconBoxDataId
112
113
  }, /*#__PURE__*/React.createElement(Box, {
@@ -27,6 +27,7 @@ import { DUMMY_OBJECT } from "./../utils/Common";
27
27
  import { Icon } from '@zohodesk/icons';
28
28
  /**** CSS ****/
29
29
 
30
+ import { cn } from "@dot-system/css-utility";
30
31
  import style from "./MultiSelect.module.css";
31
32
  /**** Methods ****/
32
33
 
@@ -922,7 +923,7 @@ class AdvancedGroupMultiSelect extends React.Component {
922
923
  const isShowClearIcon = !isReadOnly && !isDisabled && selectedGroupOptions.length > 1;
923
924
  const isEditable = !(isReadOnly || isDisabled);
924
925
  return /*#__PURE__*/React.createElement("div", {
925
- className: `${style.wrapper} ${isDisabled ? style.disabled : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`,
926
+ className: cn(`${style.wrapper} ${isDisabled ? style.disabled : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`),
926
927
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
927
928
  "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
928
929
  "data-title": isDisabled ? title : null,
@@ -955,8 +956,8 @@ class AdvancedGroupMultiSelect extends React.Component {
955
956
  adjust: true,
956
957
  shrink: true
957
958
  }, /*#__PURE__*/React.createElement("span", {
958
- className: ` ${style.custmSpan} ${textBoxSize === 'xmedium' ? style.custmSpanXmedium : style.custmSpanMedium} ${isShowClearIcon ? style.clearIconSpace : ''}
959
- `
959
+ className: cn(` ${style.custmSpan} ${textBoxSize === 'xmedium' ? style.custmSpanXmedium : style.custmSpanMedium} ${isShowClearIcon ? style.clearIconSpace : ''}
960
+ `)
960
961
  }, searchStr), /*#__PURE__*/React.createElement(TextBoxIcon, {
961
962
  isDisabled: isDisabled,
962
963
  inputRef: this.searchInputRef,
@@ -1052,7 +1053,7 @@ class AdvancedGroupMultiSelect extends React.Component {
1052
1053
  return /*#__PURE__*/React.createElement(React.Fragment, {
1053
1054
  key: groupId
1054
1055
  }, groupName && /*#__PURE__*/React.createElement("div", {
1055
- className: style.groupTitle
1056
+ className: cn(style.groupTitle)
1056
1057
  }, /*#__PURE__*/React.createElement(DropDownHeading, {
1057
1058
  text: groupName,
1058
1059
  a11y: {
@@ -1084,11 +1085,11 @@ class AdvancedGroupMultiSelect extends React.Component {
1084
1085
  i18nKeys: i18nKeys,
1085
1086
  htmlId: ariaErrorId
1086
1087
  }), isNextOptions && /*#__PURE__*/React.createElement("div", {
1087
- className: style.loader
1088
+ className: cn(style.loader)
1088
1089
  }, /*#__PURE__*/React.createElement(Loader, null)))) : /*#__PURE__*/React.createElement("div", {
1089
- className: style.loader
1090
+ className: cn(style.loader)
1090
1091
  }, /*#__PURE__*/React.createElement(Loader, null)), getFooter ? isDataLoaded ? /*#__PURE__*/React.createElement(CardFooter, null, getFooter()) : /*#__PURE__*/React.createElement("div", {
1091
- className: style.loader
1092
+ className: cn(style.loader)
1092
1093
  }, /*#__PURE__*/React.createElement(Loader, null)) : null)))) : null);
1093
1094
  }
1094
1095
 
@@ -23,6 +23,7 @@ import { ResponsiveReceiver } from "../Responsive/CustomResponsive";
23
23
  import Loader from '@zohodesk/svg/lib/Loader/Loader';
24
24
  /**** CSS ****/
25
25
 
26
+ import { cn } from "@dot-system/css-utility";
26
27
  import style from "./MultiSelect.module.css";
27
28
  /**** Methods ****/
28
29
 
@@ -436,7 +437,7 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
436
437
  const isEditable = !(isReadOnly || isDisabled);
437
438
  const isInitialEmptyOptions = searchStr.length === 0 && options.length === 0;
438
439
  return /*#__PURE__*/React.createElement("div", {
439
- className: `${style.wrapper} ${isDisabled ? style.disabled : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''} ${containerClass}`,
440
+ className: cn(`${style.wrapper} ${isDisabled ? style.disabled : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''} ${containerClass}`),
440
441
  "data-id": dataIdMultiSelectComp,
441
442
  "data-test-id": dataIdMultiSelectComp,
442
443
  "data-title": isDisabled ? title : null,
@@ -467,8 +468,8 @@ export class AdvancedMultiSelectComponent extends MultiSelectComponent {
467
468
  shrink: true,
468
469
  dataId: `${dataIdMultiSelectComp}_textBox`
469
470
  }, /*#__PURE__*/React.createElement("span", {
470
- className: ` ${style.custmSpan} ${textBoxSize === 'xmedium' ? style.custmSpanXmedium : style.custmSpanMedium} ${isShowClearIcon ? style.clearIconSpace : ''}
471
- `
471
+ className: cn(` ${style.custmSpan} ${textBoxSize === 'xmedium' ? style.custmSpanXmedium : style.custmSpanMedium} ${isShowClearIcon ? style.clearIconSpace : ''}
472
+ `)
472
473
  }, searchStr), /*#__PURE__*/React.createElement(TextBoxIcon, {
473
474
  isDisabled: isDisabled,
474
475
  inputRef: this.searchInputRef,
@@ -6,6 +6,7 @@ import { EmptyState_defaultProps } from "./props/defaultProps";
6
6
  import { MULTISELECT_I18N_KEYS } from "./constants";
7
7
  /**** CSS ****/
8
8
 
9
+ import { cn } from "@dot-system/css-utility";
9
10
  import style from "./MultiSelect.module.css";
10
11
  export default class EmptyState extends React.PureComponent {
11
12
  render() {
@@ -36,13 +37,13 @@ export default class EmptyState extends React.PureComponent {
36
37
  role = 'alert'
37
38
  } = a11y;
38
39
  return /*#__PURE__*/React.createElement(React.Fragment, null, isLoading ? /*#__PURE__*/React.createElement("div", {
39
- className: className,
40
+ className: cn(className),
40
41
  "data-id": `${dataId}_Loading`,
41
42
  "data-test-id": `${dataId}_Loading`,
42
43
  role: role,
43
44
  id: htmlId
44
45
  }, loadingText) : searchString.length && suggestions.length === 0 ? getCustomEmptyState ? getCustomEmptyState() : /*#__PURE__*/React.createElement("div", {
45
- className: className,
46
+ className: cn(className),
46
47
  "data-id": `${dataId}_srchEmptyMsg`,
47
48
  "data-test-id": `${dataId}_srchEmptyMsg`,
48
49
  role: role,
@@ -54,7 +55,7 @@ export default class EmptyState extends React.PureComponent {
54
55
  htmlId,
55
56
  className
56
57
  }) : /*#__PURE__*/React.createElement("div", {
57
- className: className,
58
+ className: cn(className),
58
59
  "data-id": `${dataId}_noOptnsMsg`,
59
60
  "data-test-id": `${dataId}_noOptnsMsg`,
60
61
  role: role,
@@ -66,7 +67,7 @@ export default class EmptyState extends React.PureComponent {
66
67
  htmlId,
67
68
  className
68
69
  }) : /*#__PURE__*/React.createElement("div", {
69
- className: className,
70
+ className: cn(className),
70
71
  "data-id": `${dataId}_NoMoreOptionMsg`,
71
72
  "data-test-id": `${dataId}_NoMoreOptionMsg`,
72
73
  role: role,
@@ -3,6 +3,7 @@ import Button from "../../Button/Button";
3
3
  import { Container, Box } from "../../Layout";
4
4
  import { defaultProps } from "./props/defaultProps";
5
5
  import { propTypes } from "./props/propTypes";
6
+ import { cn } from "@dot-system/css-utility";
6
7
  import style from "./MobileHeader.module.css";
7
8
  export default function MobileHeader(props) {
8
9
  let {
@@ -21,7 +22,7 @@ export default function MobileHeader(props) {
21
22
  } = i18nText;
22
23
  const showMobileHeader = i18nKeys.mobileHeaderText || !i18nKeys.mobileHeaderText && selectedOptions.length >= 1;
23
24
  return /*#__PURE__*/React.createElement("div", {
24
- className: style.container
25
+ className: cn(style.container)
25
26
  }, /*#__PURE__*/React.createElement(Container, {
26
27
  isCover: false,
27
28
  align: "vertical",
@@ -27,6 +27,7 @@ import isMobilePopover from "../DropBox/utils/isMobilePopover";
27
27
  import { Icon } from '@zohodesk/icons';
28
28
  /**** CSS ****/
29
29
 
30
+ import { cn } from "@dot-system/css-utility";
30
31
  import style from "./MultiSelect.module.css";
31
32
  /**** Methods ****/
32
33
 
@@ -988,8 +989,8 @@ export class MultiSelectComponent extends React.Component {
988
989
  adjust: true,
989
990
  shrink: true
990
991
  }, /*#__PURE__*/React.createElement("span", {
991
- className: ` ${style.custmSpan} ${textBoxSize === 'xmedium' ? style.custmSpanXmedium : style.custmSpanMedium} ${isShowClearIcon ? style.clearIconSpace : ''}
992
- ${customChildrenClass ? customChildrenClass : ''}`
992
+ className: cn(` ${style.custmSpan} ${textBoxSize === 'xmedium' ? style.custmSpanXmedium : style.custmSpanMedium} ${isShowClearIcon ? style.clearIconSpace : ''}
993
+ ${customChildrenClass ? customChildrenClass : ''}`)
993
994
  }, searchStr), /*#__PURE__*/React.createElement(TextBoxIcon, _extends({
994
995
  isDisabled: isDisabled,
995
996
  inputRef: this.searchInputRef,
@@ -1121,7 +1122,7 @@ export class MultiSelectComponent extends React.Component {
1121
1122
  } = customProps;
1122
1123
  const isInitialEmptyOptions = searchStr.length === 0 && options.length === 0;
1123
1124
  return /*#__PURE__*/React.createElement("div", {
1124
- className: `${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${disableAction ? CssProvider('isBlock') : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`,
1125
+ className: cn(`${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${disableAction ? CssProvider('isBlock') : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`),
1125
1126
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
1126
1127
  "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
1127
1128
  "data-title": isDisabled ? title : null,
@@ -1163,7 +1164,7 @@ export class MultiSelectComponent extends React.Component {
1163
1164
  i18nKeys: i18nKeys,
1164
1165
  onClick: this.handlePopupClose
1165
1166
  }, /*#__PURE__*/React.createElement("div", {
1166
- className: style.effect
1167
+ className: cn(style.effect)
1167
1168
  }, this.getSelectionUI(true))) : null, needSelectAll && !(limit >= 0) ? /*#__PURE__*/React.createElement(CardHeader, null, /*#__PURE__*/React.createElement(MultiSelectHeader, {
1168
1169
  onSelect: this.handleSelectAll,
1169
1170
  selectAllText: selectAllText,
@@ -1177,7 +1178,7 @@ export class MultiSelectComponent extends React.Component {
1177
1178
  customClass: !isModel && dropBoxSize ? style[dropBoxSize] : '',
1178
1179
  eleRef: this.suggestionContainerRef
1179
1180
  }, isSearching ? /*#__PURE__*/React.createElement("div", {
1180
- className: style[palette]
1181
+ className: cn(style[palette])
1181
1182
  }, searchText) : suggestions.length ? /*#__PURE__*/React.createElement(Suggestions, _extends({
1182
1183
  a11y: a11yProps,
1183
1184
  needBorder: false,
@@ -23,6 +23,7 @@ import MultiSelectHeader from "./MultiSelectHeader";
23
23
  import isMobilePopover from "../DropBox/utils/isMobilePopover";
24
24
  /**** CSS ****/
25
25
 
26
+ import { cn } from "@dot-system/css-utility";
26
27
  import style from "./MultiSelect.module.css";
27
28
  import MobileHeader from "./MobileHeader/MobileHeader";
28
29
  /*eslint-disable react/sort-prop-types*/
@@ -127,7 +128,7 @@ class MultiSelectWithAvatarComponent extends MultiSelectComponent {
127
128
  let isModel = isMobilePopover(needResponsive);
128
129
  const isInitialEmptyOptions = searchStr.length === 0 && options.length === 0;
129
130
  return /*#__PURE__*/React.createElement("div", {
130
- className: ` ${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${disableAction ? CssProvider('isBlock') : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`,
131
+ className: cn(` ${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${disableAction ? CssProvider('isBlock') : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''}`),
131
132
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
132
133
  "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
133
134
  "data-title": isDisabled ? title : null,
@@ -167,7 +168,7 @@ class MultiSelectWithAvatarComponent extends MultiSelectComponent {
167
168
  i18nKeys: i18nKeys,
168
169
  onClick: this.handlePopupClose
169
170
  }, /*#__PURE__*/React.createElement("div", {
170
- className: style.effect
171
+ className: cn(style.effect)
171
172
  }, this.getSelectionUI(true)))) : null, needSelectAll && !(limit >= 0) ? /*#__PURE__*/React.createElement(CardHeader, null, /*#__PURE__*/React.createElement(MultiSelectHeader, {
172
173
  onSelect: this.handleSelectAll,
173
174
  selectAllText: selectAllText,
@@ -4,6 +4,7 @@ import { PopOver_propTypes, PopOverTarget_propTypes, PopOverContainer_propTypes
4
4
  import Popup from "../Popup/Popup";
5
5
  import { Box } from "../Layout";
6
6
  import ResponsiveDropBox from "../ResponsiveDropBox/ResponsiveDropBox";
7
+ import { cn } from "@dot-system/css-utility";
7
8
  import style from "./PopOver.module.css";
8
9
 
9
10
  class PopOver extends React.Component {
@@ -102,7 +103,7 @@ class PopOver extends React.Component {
102
103
  return element;
103
104
  });
104
105
  return /*#__PURE__*/React.createElement("div", {
105
- className: style.popup
106
+ className: cn(style.popup)
106
107
  }, childrens);
107
108
  }
108
109
 
@@ -130,7 +131,7 @@ export class PopOverTarget extends React.Component {
130
131
  togglePopup
131
132
  } = this.props;
132
133
  return /*#__PURE__*/React.createElement("div", {
133
- className: style.target,
134
+ className: cn(style.target),
134
135
  onClick: togglePopup,
135
136
  ref: this.getRef
136
137
  }, children);
package/es/Radio/Radio.js CHANGED
@@ -8,6 +8,7 @@ import Label from "../Label/Label";
8
8
  import Typography from "../Typography/Typography";
9
9
  import { Container, Box } from "../Layout";
10
10
  import CssProvider from "../Provider/CssProvider";
11
+ import { cn } from "@dot-system/css-utility";
11
12
  import style from "./Radio.module.css";
12
13
  export default class Radio extends React.Component {
13
14
  constructor(props) {
@@ -107,7 +108,7 @@ export default class Radio extends React.Component {
107
108
  name: name,
108
109
  value: value
109
110
  }), /*#__PURE__*/React.createElement("label", {
110
- className: `${style.radioLabel} ${accessMode}`
111
+ className: cn(`${style.radioLabel} ${accessMode}`)
111
112
  }, /*#__PURE__*/React.createElement("svg", {
112
113
  xmlns: "http://www.w3.org/2000/svg",
113
114
  viewBox: "0 0 40 40"
@@ -115,12 +116,12 @@ export default class Radio extends React.Component {
115
116
  cx: "20",
116
117
  cy: "20",
117
118
  r: "19",
118
- className: `${style.rdBox}`
119
+ className: cn(`${style.rdBox}`)
119
120
  }), checked ? /*#__PURE__*/React.createElement("circle", {
120
121
  cx: "20",
121
122
  cy: "20",
122
123
  r: "11.03",
123
- className: `${style.centerPath}`
124
+ className: cn(`${style.centerPath}`)
124
125
  }) : null))), (text || secondaryText) && /*#__PURE__*/React.createElement(Box, {
125
126
  flexible: true,
126
127
  className: style.labelContainer
@@ -3,6 +3,7 @@ import { defaultProps } from "./props/defaultProps";
3
3
  import { propTypes } from "./props/propTypes";
4
4
  /* eslint css-modules/no-unused-class: [2, { markAsUsed: [default, flag, plain, ribbon, box, stamp, sticker, small, medium, large, xlarge, palette_default, palette_danger, palette_primary, palette_secondary, palette_info, palette_dark, plain_default, plain_danger, plain_primary, plain_secondary, plain_info, plain_dark, tag] }] */
5
5
 
6
+ import { cn } from "@dot-system/css-utility";
6
7
  import style from "./Ribbon.module.css";
7
8
  export default class Ribbon extends React.Component {
8
9
  render() {
@@ -17,19 +18,19 @@ export default class Ribbon extends React.Component {
17
18
  dataSelectorId
18
19
  } = this.props;
19
20
  return /*#__PURE__*/React.createElement("span", {
20
- className: `${style.basic} ${type !== 'tag' ? type === 'plain' || type === 'box' || type === 'stamp' ? `${style[`plain_${palette}`]}
21
- ${type === 'box' ? style[`box_${palette}`] : ''} ${type === 'stamp' ? style[`stamp_${palette}`] : ''}` : `${style[`palette_${palette}`]} ${type === 'default' ? style[`default_${palette}`] : ''}` : ''} ${style[size]} ${style[type]} ${customClass} `,
21
+ className: cn(`${style.basic} ${type !== 'tag' ? type === 'plain' || type === 'box' || type === 'stamp' ? `${style[`plain_${palette}`]}
22
+ ${type === 'box' ? style[`box_${palette}`] : ''} ${type === 'stamp' ? style[`stamp_${palette}`] : ''}` : `${style[`palette_${palette}`]} ${type === 'default' ? style[`default_${palette}`] : ''}` : ''} ${style[size]} ${style[type]} ${customClass} `),
22
23
  "data-id": dataId,
23
24
  "data-test-id": dataId,
24
25
  "data-selector-id": dataSelectorId
25
26
  }, type === 'sticker' ? /*#__PURE__*/React.createElement("span", {
26
- className: style.after
27
+ className: cn(style.after)
27
28
  }) : null, children ? /*#__PURE__*/React.createElement("span", {
28
- className: style.children
29
+ className: cn(style.children)
29
30
  }, children) : null, /*#__PURE__*/React.createElement("span", {
30
- className: style.childText
31
+ className: cn(style.childText)
31
32
  }, text), type === 'sticker' ? /*#__PURE__*/React.createElement("span", {
32
- className: style.before
33
+ className: cn(style.before)
33
34
  }) : null);
34
35
  }
35
36
 
@@ -19,6 +19,7 @@ import { Container, Box } from "../Layout";
19
19
  import { getUniqueId } from "../Provider/IdProvider";
20
20
  import ResponsiveDropBox from "../ResponsiveDropBox/ResponsiveDropBox";
21
21
  import { ResponsiveReceiver } from "../Responsive/CustomResponsive";
22
+ import { cn } from "@dot-system/css-utility";
22
23
  import style from "./Select.module.css";
23
24
  /**** Methods ****/
24
25
 
@@ -634,13 +635,13 @@ export class GroupSelectComponent extends PureComponent {
634
635
  } = customClass;
635
636
  const isInitialEmptyOptions = searchStr.length === 0 && revampedGroups.length === 0;
636
637
  return /*#__PURE__*/React.createElement("div", {
637
- className: `${style.container} ${style[`box_${size}`]} ${isReadOnly ? style.readonly : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${iconOnHover && (isReadOnly || isDisabled) ? style.iconOnHoverReadonly : iconOnHover && !(isReadOnly || isDisabled) ? style.iconOnHoverStyle : ''}`,
638
+ className: cn(`${style.container} ${style[`box_${size}`]} ${isReadOnly ? style.readonly : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${iconOnHover && (isReadOnly || isDisabled) ? style.iconOnHoverReadonly : iconOnHover && !(isReadOnly || isDisabled) ? style.iconOnHoverStyle : ''}`),
638
639
  "data-id": dataIdSlctComp,
639
640
  "data-test-id": dataIdSlctComp,
640
641
  "data-title": isDisabled ? title : null,
641
642
  "data-selector-id": dataSelectorId
642
643
  }, /*#__PURE__*/React.createElement("div", {
643
- className: `${className ? className : ''}`,
644
+ className: cn(`${className ? className : ''}`),
644
645
  onClick: isDisabled || isReadOnly ? null : this.togglePopup,
645
646
  ref: getTargetRef,
646
647
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
@@ -747,7 +748,7 @@ export class GroupSelectComponent extends PureComponent {
747
748
  customClass: style.box,
748
749
  onScroll: this.handleScroll
749
750
  }, needSearch ? /*#__PURE__*/React.createElement(CardHeader, null, /*#__PURE__*/React.createElement("div", {
750
- className: `${style.search} ${style[size]}`
751
+ className: cn(`${style.search} ${style[size]}`)
751
752
  }, /*#__PURE__*/React.createElement(TextBoxIcon, {
752
753
  inputRef: this.searchInputRef,
753
754
  maxLength: maxLength,
@@ -778,7 +779,7 @@ export class GroupSelectComponent extends PureComponent {
778
779
  return /*#__PURE__*/React.createElement(React.Fragment, {
779
780
  key: groupId
780
781
  }, groupName && /*#__PURE__*/React.createElement("div", {
781
- className: style.groupTitle
782
+ className: cn(style.groupTitle)
782
783
  }, /*#__PURE__*/React.createElement(DropDownHeading, {
783
784
  text: groupName,
784
785
  a11y: {
@@ -26,6 +26,7 @@ import { debounce, scrollTo, getIsEmptyValue, getSearchString, findScrollEnd, ge
26
26
  import { isRenderable, renderNode } from '@zohodesk/utils';
27
27
  /**** CSS ****/
28
28
 
29
+ import { cn } from "@dot-system/css-utility";
29
30
  import style from "./Select.module.css";
30
31
  /* eslint-disable react/no-deprecated */
31
32
 
@@ -855,11 +856,11 @@ export class SelectComponent extends Component {
855
856
  inputFieldLineA11y
856
857
  });
857
858
  return /*#__PURE__*/React.createElement("div", {
858
- className: `${isParentBased || isReadOnly || isDisabled ? style.container : ''} ${style[`box_${size}`]} ${isReadOnly ? style.readonly : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${iconOnHover && (isReadOnly || isDisabled) ? style.iconOnHoverReadonly : iconOnHover && !(isReadOnly || isDisabled) ? style.iconOnHoverStyle : ''}`,
859
+ className: cn(`${isParentBased || isReadOnly || isDisabled ? style.container : ''} ${style[`box_${size}`]} ${isReadOnly ? style.readonly : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''} ${iconOnHover && (isReadOnly || isDisabled) ? style.iconOnHoverReadonly : iconOnHover && !(isReadOnly || isDisabled) ? style.iconOnHoverStyle : ''}`),
859
860
  "data-title": isDisabled ? title : null,
860
861
  "data-selector-id": dataSelectorId
861
862
  }, /*#__PURE__*/React.createElement("div", {
862
- className: `${className ? className : ''}`,
863
+ className: cn(`${className ? className : ''}`),
863
864
  onClick: isDisabled || isReadOnly ? null : this.togglePopup,
864
865
  ref: getTargetRef,
865
866
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
@@ -1030,7 +1031,7 @@ export class SelectComponent extends Component {
1030
1031
  }, /*#__PURE__*/React.createElement(Card, {
1031
1032
  onScroll: this.handleScroll
1032
1033
  }, needSearch ? /*#__PURE__*/React.createElement(CardHeader, null, /*#__PURE__*/React.createElement("div", {
1033
- className: `${style.search} ${style[size]}`
1034
+ className: cn(`${style.search} ${style[size]}`)
1034
1035
  }, /*#__PURE__*/React.createElement(TextBoxIcon, {
1035
1036
  a11y: {
1036
1037
  ariaControls: setAriaId,
@@ -22,6 +22,7 @@ import { ResponsiveReceiver } from "../Responsive/CustomResponsive";
22
22
  import Loader from '@zohodesk/svg/lib/Loader/Loader';
23
23
  /**** CSS ****/
24
24
 
25
+ import { cn } from "@dot-system/css-utility";
25
26
  import style from "../MultiSelect/MultiSelect.module.css";
26
27
  import selectStyle from "./Select.module.css";
27
28
 
@@ -207,7 +208,7 @@ class SelectWithAvatarComponent extends SelectComponent {
207
208
  } = customClass;
208
209
  const isInitialEmptyOptions = searchStr.length === 0 && options.length === 0;
209
210
  return /*#__PURE__*/React.createElement("div", {
210
- className: `${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''} ${className ? className : ''}`,
211
+ className: cn(`${style.wrapper} ${isDisabled ? style.disabled : ''} ${isReadOnly ? style.readOnly : ''} ${needEffect && !(isDisabled || isReadOnly) ? style.effect : ''} ${className ? className : ''}`),
211
212
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
212
213
  "data-test-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
213
214
  "data-title": isDisabled ? title : null,
@@ -299,7 +300,7 @@ class SelectWithAvatarComponent extends SelectComponent {
299
300
  }, /*#__PURE__*/React.createElement(Card, {
300
301
  onScroll: this.handleScroll
301
302
  }, needSearch ? /*#__PURE__*/React.createElement(CardHeader, null, /*#__PURE__*/React.createElement("div", {
302
- className: `${selectStyle.search} ${selectStyle[size]}`
303
+ className: cn(`${selectStyle.search} ${selectStyle[size]}`)
303
304
  }, /*#__PURE__*/React.createElement(TextBoxIcon, _extends({
304
305
  inputRef: this.searchInputRef,
305
306
  maxLength: maxLength,
@@ -321,7 +322,7 @@ class SelectWithAvatarComponent extends SelectComponent {
321
322
  customClass: `${!tabletMode && dropBoxSize ? style[dropBoxSize] : ''} ${cardContentClass}`,
322
323
  eleRef: this.suggestionContainerRef
323
324
  }, groupName ? /*#__PURE__*/React.createElement("div", {
324
- className: style.title
325
+ className: cn(style.title)
325
326
  }, /*#__PURE__*/React.createElement(DropDownHeading, {
326
327
  text: groupName,
327
328
  a11y: {
@@ -22,6 +22,7 @@ import { scrollTo, findScrollEnd, getSearchString } from "../utils/Common.js";
22
22
  import { isObjectContainsSearchString } from "../utils/dropDownUtils.js";
23
23
  /**** CSS ****/
24
24
 
25
+ import { cn } from "@dot-system/css-utility";
25
26
  import style from "./Select.module.css";
26
27
 
27
28
  class SelectWithIcon extends Component {
@@ -386,11 +387,11 @@ class SelectWithIcon extends Component {
386
387
  } = customClass;
387
388
  const isInitialEmptyOptions = searchValue.length === 0 && options.length === 0;
388
389
  return /*#__PURE__*/React.createElement("div", {
389
- className: `${style.container} ${style[`box_${size}`]} ${isReadOnly ? style.readonly : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''}`,
390
+ className: cn(`${style.container} ${style[`box_${size}`]} ${isReadOnly ? style.readonly : ''} ${borderColor === 'transparent' ? style.transparentContainer : ''}`),
390
391
  "data-title": isDisabled ? title : null,
391
392
  "data-selector-id": dataSelectorId
392
393
  }, /*#__PURE__*/React.createElement("div", {
393
- className: `${className ? className : ''}`,
394
+ className: cn(`${className ? className : ''}`),
394
395
  onClick: isDisabled || isReadOnly ? null : this.togglePopup,
395
396
  ref: getTargetRef,
396
397
  "data-id": `${isDisabled ? `${dataId}_disabled` : isReadOnly ? `${dataId}_readOnly` : dataId}`,
@@ -494,7 +495,7 @@ class SelectWithIcon extends Component {
494
495
  role: 'listbox'
495
496
  }
496
497
  }, needSearch ? /*#__PURE__*/React.createElement(CardHeader, null, /*#__PURE__*/React.createElement("div", {
497
- className: `${style.search} ${style[size]}`
498
+ className: cn(`${style.search} ${style[size]}`)
498
499
  }, /*#__PURE__*/React.createElement(TextBoxIcon, {
499
500
  onClear: this.onSearchClear,
500
501
  onChange: this.onSearch,
@@ -3,6 +3,7 @@ import { defaultProps } from "./props/defaultProps";
3
3
  import { propTypes } from "./props/propTypes";
4
4
  /* eslint css-modules/no-unused-class: [2, { markAsUsed: [primary, secondary, small, default, medium, large, clarge, cmedium, cdefault, csmall] }] */
5
5
 
6
+ import { cn } from "@dot-system/css-utility";
6
7
  import style from "./Stencils.module.css";
7
8
  export default class Stencils extends React.PureComponent {
8
9
  render() {
@@ -15,7 +16,7 @@ export default class Stencils extends React.PureComponent {
15
16
  } = this.props;
16
17
  size = shape === 'rect' ? style[size] : style[`size_${size}`];
17
18
  return /*#__PURE__*/React.createElement("div", {
18
- className: `${style.container} ${isAnimated ? style.animate : ''} ${style[shape]} ${size} ${style[palette]} ${customClass}`
19
+ className: cn(`${style.container} ${isAnimated ? style.animate : ''} ${style[shape]} ${size} ${style[palette]} ${customClass}`)
19
20
  });
20
21
  }
21
22
 
@@ -5,6 +5,7 @@ import { defaultProps } from "./props/defaultProps";
5
5
  import { propTypes } from "./props/propTypes";
6
6
  import { Container, Box } from "../Layout";
7
7
  import Label from "../Label/Label";
8
+ import { cn } from "@dot-system/css-utility";
8
9
  import style from "./Switch.module.css";
9
10
  export default class Switch extends React.Component {
10
11
  constructor(props) {
@@ -65,7 +66,7 @@ export default class Switch extends React.Component {
65
66
  }, /*#__PURE__*/React.createElement("input", {
66
67
  type: "checkbox",
67
68
  id: id,
68
- className: `${style.input} ${checked ? style.checked : ''}`,
69
+ className: cn(`${style.input} ${checked ? style.checked : ''}`),
69
70
  name: name,
70
71
  value: value,
71
72
  checked: checked,
@@ -76,7 +77,7 @@ export default class Switch extends React.Component {
76
77
  htmlFor: id,
77
78
  "data-id": dataId,
78
79
  "data-test-id": dataId,
79
- className: `${style.label} ${style[`${size}Label`]} ${customSwitch}`,
80
+ className: cn(`${style.label} ${style[`${size}Label`]} ${customSwitch}`),
80
81
  tabIndex: isReadOnly || disabled ? '-1' : '0'
81
82
  })), text && /*#__PURE__*/React.createElement(Label, _extends({
82
83
  text: text,
package/es/Tab/Tabs.js CHANGED
@@ -19,6 +19,7 @@ import { Box, Container } from "../Layout";
19
19
  import ResizeObserver from "../Responsive/ResizeObserver";
20
20
  import ListItem from "../ListItem/ListItem";
21
21
  import { Icon } from '@zohodesk/icons';
22
+ import { cn } from "@dot-system/css-utility";
22
23
  import tabsStyle from "./Tabs.module.css";
23
24
  import Popup from "../Popup/Popup";
24
25
  import TextBoxIcon from "../TextBoxIcon/TextBoxIcon";
@@ -472,11 +473,11 @@ class Tabs extends React.Component {
472
473
  searchErrorText
473
474
  } = this.props;
474
475
  return /*#__PURE__*/React.createElement("div", {
475
- className: tabsStyle.emptyStateContainer
476
+ className: cn(tabsStyle.emptyStateContainer)
476
477
  }, /*#__PURE__*/React.createElement(EmptySearch, {
477
478
  size: "small"
478
479
  }), /*#__PURE__*/React.createElement("div", {
479
- className: tabsStyle.emptyStateTitle
480
+ className: cn(tabsStyle.emptyStateTitle)
480
481
  }, searchErrorText));
481
482
  }
482
483
 
@@ -699,7 +700,7 @@ class Tabs extends React.Component {
699
700
  }, this.renderTabs(children, [], true)), /*#__PURE__*/React.createElement(Container, {
700
701
  alignBox: TAB_DIRECTION_MAPPING[align] === 'column' ? 'row' : 'column'
701
702
  }, this.renderTabs(mainTabs, moreTabs, false))), otherTabs.length ? /*#__PURE__*/React.createElement(Box, null, otherTabs) : null, isAnimate && needTabBorder && needAppearance && /*#__PURE__*/React.createElement("div", {
702
- className: hlClass,
703
+ className: cn(hlClass),
703
704
  ref: this.getHighlightRef,
704
705
  "data-id": dataId,
705
706
  "data-test-id": dataId
package/es/Tag/Tag.js CHANGED
@@ -9,6 +9,7 @@ import Avatar from "../Avatar/Avatar";
9
9
  import { Container } from "../Layout";
10
10
  import Button from "../semantic/Button/Button";
11
11
  import { getUniqueId } from "../Provider/IdProvider";
12
+ import { cn } from "@dot-system/css-utility";
12
13
  import style from "./Tag.module.css";
13
14
  /*
14
15
  * eslint css-modules/no-unused-class: [2, { markAsUsed: ['small', 'medium',
@@ -108,7 +109,7 @@ export default class Tag extends PureComponent {
108
109
  } = a11y;
109
110
  let isDarkPalette = palette === 'dark';
110
111
  return /*#__PURE__*/React.createElement("div", _extends({
111
- 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}`,
112
+ className: cn(`${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}`),
112
113
  "data-id": active ? `${dataId}_TagSelected` : `${dataId}_Tag`,
113
114
  "data-test-id": active ? `${dataId}_TagSelected` : `${dataId}_Tag`,
114
115
  onClick: this.handleSelect,
@@ -118,7 +119,7 @@ export default class Tag extends PureComponent {
118
119
  "aria-labelledby": getAriaId,
119
120
  "data-selector-id": dataSelectorId
120
121
  }, customAttributes), renderNode(renderLeftChildren), hasAvatar ? /*#__PURE__*/React.createElement("div", {
121
- className: style.avatar
122
+ className: cn(style.avatar)
122
123
  }, /*#__PURE__*/React.createElement(Avatar, _extends({
123
124
  palette: isDarkPalette ? 'info' : avatarPalette,
124
125
  name: initial,
@@ -127,13 +128,13 @@ export default class Tag extends PureComponent {
127
128
  textPalette: isDarkPalette ? 'white' : '',
128
129
  customClass: customAvatar
129
130
  }, avatarProps))) : null, iconName ? /*#__PURE__*/React.createElement("div", {
130
- className: `${style.icon} ${customTagIcon}`,
131
+ className: cn(`${style.icon} ${customTagIcon}`),
131
132
  "aria-hidden": true
132
133
  }, /*#__PURE__*/React.createElement(Icon, _extends({
133
134
  name: iconName,
134
135
  size: iconSize
135
136
  }, iconProps))) : null, /*#__PURE__*/React.createElement("div", {
136
- className: `${style.text} ${textSizes}`,
137
+ className: cn(`${style.text} ${textSizes}`),
137
138
  "aria-hidden": true,
138
139
  id: getAriaId
139
140
  }, text), onRemove && /*#__PURE__*/React.createElement(Button, {
@@ -5,6 +5,7 @@ import { defaultProps } from "./props/defaultProps";
5
5
  import { propTypes } from "./props/propTypes";
6
6
  /* eslint css-modules/no-unused-class: [2, { markAsUsed: ['xmedium', 'medium', 'small', 'default', 'primary', 'secondary'] }] */
7
7
 
8
+ import { cn } from "@dot-system/css-utility";
8
9
  import style from "./TextBox.module.css";
9
10
  export default class TextBox extends React.PureComponent {
10
11
  constructor(props) {
@@ -154,7 +155,7 @@ export default class TextBox extends React.PureComponent {
154
155
  "aria-activedescendant": ariaActivedescendant,
155
156
  "aria-readonly": ariaReadonly,
156
157
  "aria-multiselectable": ariaMultiselectable,
157
- className: `${isReadOnly && needReadOnlyStyle ? style.readonly : ''} ${isClickable ? style.pointer : ''} ${classList} ${style[`borderColor_${borderColor}`]} ${isScrollPrevent ? style.inputDotted : ''} ${customClass ? customClass : ''}`,
158
+ className: cn(`${isReadOnly && needReadOnlyStyle ? style.readonly : ''} ${isClickable ? style.pointer : ''} ${classList} ${style[`borderColor_${borderColor}`]} ${isScrollPrevent ? style.inputDotted : ''} ${customClass ? customClass : ''}`),
158
159
  "data-id": `${dataId}`,
159
160
  "data-test-id": `${dataId}`,
160
161
  "data-selector-id": dataSelectorId,