@zohodesk/dot 1.0.0-temp-187.17 → 1.0.0-temp-222

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 (28) hide show
  1. package/README.md +4 -0
  2. package/es/form/fields/Fields.module.css +9 -7
  3. package/es/form/fields/RadioField/RadioField.js +29 -10
  4. package/es/form/fields/RadioField/__tests__/RadioField.spec.js +33 -0
  5. package/es/form/fields/RadioField/__tests__/__snapshots__/RadioField.spec.js.snap +562 -66
  6. package/es/form/fields/TagsMultiSelect/TagsMultiSelect.js +6 -10
  7. package/es/form/fields/TagsMultiSelect/props/propTypes.js +1 -2
  8. package/es/list/DepartmentDropDown/DepartmentDropDown.js +2 -6
  9. package/es/list/DepartmentDropDown/props/defaultProps.js +1 -2
  10. package/es/list/DepartmentDropDown/props/propTypes.js +0 -3
  11. package/es/list/status/StatusDropdown/StatusDropdown.js +2 -7
  12. package/es/list/status/StatusDropdown/props/defaultProps.js +1 -2
  13. package/es/list/status/StatusDropdown/props/propTypes.js +1 -4
  14. package/es/list/status/StatusListItem/StatusListItem.module.css +3 -6
  15. package/lib/form/fields/Fields.module.css +9 -7
  16. package/lib/form/fields/RadioField/RadioField.js +26 -11
  17. package/lib/form/fields/RadioField/__tests__/RadioField.spec.js +33 -0
  18. package/lib/form/fields/RadioField/__tests__/__snapshots__/RadioField.spec.js.snap +562 -66
  19. package/lib/form/fields/TagsMultiSelect/TagsMultiSelect.js +7 -12
  20. package/lib/form/fields/TagsMultiSelect/props/propTypes.js +1 -2
  21. package/lib/list/DepartmentDropDown/DepartmentDropDown.js +3 -8
  22. package/lib/list/DepartmentDropDown/props/defaultProps.js +1 -2
  23. package/lib/list/DepartmentDropDown/props/propTypes.js +0 -2
  24. package/lib/list/status/StatusDropdown/StatusDropdown.js +2 -6
  25. package/lib/list/status/StatusDropdown/props/defaultProps.js +1 -2
  26. package/lib/list/status/StatusDropdown/props/propTypes.js +1 -3
  27. package/lib/list/status/StatusListItem/StatusListItem.module.css +3 -6
  28. package/package.json +3 -3
@@ -160,14 +160,12 @@ export default class TagsMultiSelect extends React.Component {
160
160
  let {
161
161
  tagCustomClass = '',
162
162
  listItemClass = '',
163
- textBoxIconWrapperClass = '',
164
- dropBoxClass = ''
163
+ textBoxIconWrapperClass = ''
165
164
  } = customClass;
166
165
  const {
167
166
  TextBoxIconProps = {},
168
167
  TagWrapperProps = {},
169
- TagProps = {},
170
- ListItemProps = {}
168
+ TagProps = {}
171
169
  } = customProps;
172
170
  const isEditable = !isReadOnly;
173
171
  return /*#__PURE__*/React.createElement("div", {
@@ -256,8 +254,7 @@ export default class TagsMultiSelect extends React.Component {
256
254
  boxPosition: boxPosition,
257
255
  isPadding: false,
258
256
  customClass: {
259
- customDropBoxWrap: style.dropdown,
260
- customDropBox: dropBoxClass
257
+ customDropBoxWrap: style.dropdown
261
258
  },
262
259
  dataId: `${dataId}_dropbox`,
263
260
  isResponsivePadding: true,
@@ -289,7 +286,7 @@ export default class TagsMultiSelect extends React.Component {
289
286
  let {
290
287
  name,
291
288
  isNew,
292
- listProps
289
+ listItemProps
293
290
  } = item;
294
291
  return /*#__PURE__*/React.createElement(React.Fragment, null, searchList.length > 1 && isNew ? /*#__PURE__*/React.createElement(DropDownSeparator, null) : null, /*#__PURE__*/React.createElement(ListItem, {
295
292
  key: index,
@@ -302,9 +299,8 @@ export default class TagsMultiSelect extends React.Component {
302
299
  highlight: selectSearchIndex === index,
303
300
  getRef: this.getSelectedItemRef,
304
301
  isDisabled: listDisabled,
305
- customProps: listProps,
306
- customClass: listItemClass,
307
- ...ListItemProps
302
+ customProps: listItemProps,
303
+ customClass: listItemClass
308
304
  }, isNew ? /*#__PURE__*/React.createElement(Container, {
309
305
  alignBox: "row",
310
306
  align: "vertical"
@@ -52,8 +52,7 @@ export const propTypes = {
52
52
  customProps: PropTypes.shape({
53
53
  TextBoxIconProps: PropTypes.object,
54
54
  TagWrapperProps: PropTypes.object,
55
- TagProps: PropTypes.object,
56
- ListItemProps: PropTypes.object
55
+ TagProps: PropTypes.object
57
56
  }),
58
57
  isFocus: PropTypes.bool
59
58
  };
@@ -48,19 +48,15 @@ class DepartmentDropDown extends Component {
48
48
  onSearch,
49
49
  needSearchFetching,
50
50
  searchStr,
51
- i18nKeys,
52
- customProps
51
+ i18nKeys
53
52
  } = this.props;
54
- const {
55
- ToggleDropDownProps = {}
56
- } = customProps;
57
53
  let {
58
54
  title = 'Move Department',
59
55
  searchEmptyText = 'No results found',
60
56
  searchErrorText = 'No results',
61
57
  placeholder = 'Search Department'
62
58
  } = i18nKeys;
63
- return /*#__PURE__*/React.createElement(ToggleDropDown, { ...ToggleDropDownProps,
59
+ return /*#__PURE__*/React.createElement(ToggleDropDown, {
64
60
  title: title,
65
61
  options: departmentList,
66
62
  value: /*#__PURE__*/React.createElement(DepartmentText, {
@@ -3,6 +3,5 @@ export const defaultProps = {
3
3
  isPopupActive: true,
4
4
  isNextOptions: false,
5
5
  searchStr: '',
6
- i18nKeys: {},
7
- customProps: {}
6
+ i18nKeys: {}
8
7
  };
@@ -20,8 +20,5 @@ export const propTypes = {
20
20
  searchEmptyText: PropTypes.string,
21
21
  searchErrorText: PropTypes.string,
22
22
  placeholder: PropTypes.string
23
- }),
24
- customProps: PropTypes.shape({
25
- ToggleDropDownProps: PropTypes.object
26
23
  })
27
24
  };
@@ -178,12 +178,8 @@ export class StatusDropdown extends React.Component {
178
178
  targetOffset,
179
179
  renderTargetElement,
180
180
  renderFooterElement,
181
- a11y = {},
182
- customClass
181
+ a11y = {}
183
182
  } = this.props;
184
- const {
185
- dropBoxClass = ''
186
- } = customClass;
187
183
  const {
188
184
  tabIndex = 0,
189
185
  ariaLabelledby,
@@ -251,8 +247,7 @@ export class StatusDropdown extends React.Component {
251
247
  isAnimate: true,
252
248
  getRef: getContainerRef,
253
249
  customClass: {
254
- customDropBoxWrap: style.dropBoxContainer,
255
- customDropBox: dropBoxClass
250
+ customDropBoxWrap: style.dropBoxContainer
256
251
  },
257
252
  needResponsive: needResponsive,
258
253
  isResponsivePadding: true,
@@ -18,6 +18,5 @@ export const defaultProps = {
18
18
  needMultiLineText: false,
19
19
  isFetchingOptions: false,
20
20
  isAbsolutePositioningNeeded: true,
21
- isRestrictScroll: false,
22
- customClass: {}
21
+ isRestrictScroll: false
23
22
  };
@@ -56,8 +56,5 @@ export const propTypes = {
56
56
  positionsOffset: PropTypes.object,
57
57
  renderTargetElement: PropTypes.func,
58
58
  renderFooterElement: PropTypes.node,
59
- targetOffset: PropTypes.object,
60
- customClass: PropTypes.shape({
61
- dropBoxClass: PropTypes.string
62
- })
59
+ targetOffset: PropTypes.object
63
60
  };
@@ -36,8 +36,9 @@
36
36
  .value {
37
37
  composes: dotted from '~@zohodesk/components/es/common/common.module.css';
38
38
  }
39
- .multiLineValue {
40
- composes: lineClamp from '~@zohodesk/components/es/common/common.module.css';
39
+ .multiLineValue{
40
+ word-break: break-word;
41
+ composes: clamp from '~@zohodesk/components/es/common/common.module.css';
41
42
  }
42
43
  [dir=ltr] .withBorder.active {
43
44
  border-left-color: var(--zdt_statuslistitem_default_active_border);
@@ -89,10 +90,6 @@
89
90
  }
90
91
  /* Status Type */
91
92
  .statusType {
92
- --status_listitem_bullet_min_height: var(--zd_size8);
93
- --status_listitem_bullet_min_width: var(--zd_size8);
94
- min-height: var(--status_listitem_bullet_min_height);
95
- min-width: var(--status_listitem_bullet_min_width);
96
93
  width: var(--zd_size8) ;
97
94
  height: var(--zd_size8) ;
98
95
  border-radius: 50%;
@@ -71,11 +71,16 @@
71
71
  }
72
72
  .radioBox {
73
73
  max-width: 100% ;
74
- height: var(--zd_size36) ;
75
74
  transition: border var(--zd_transition3);
76
- padding: 0 var(--zd_size10) ;
77
75
  border: 1px solid var(--zdt_radiofield_box_border);
78
- border-radius: 6px
76
+ border-radius: 6px;
77
+ }
78
+ .radioBox.primaryTextOnly {
79
+ height: var(--zd_size36) ;
80
+ padding: 0 var(--zd_size10) ;
81
+ }
82
+ .radioBox.withSecondaryText {
83
+ padding: var(--zd_size18) var(--zd_size16) ;
79
84
  }
80
85
  .hoverableRadioBox:hover, .radioBoxActive {
81
86
  border-color: var(--zdt_radiofield_box_active_border)
@@ -221,10 +226,7 @@ position: relative;
221
226
  [dir=rtl] .rightPlaceholder{
222
227
  left:var(--zd_size15)
223
228
  }
229
+
224
230
  .phoneField{
225
231
  composes: ltr-zone from '~@zohodesk/components/es/common/common.module.css';
226
- }
227
-
228
- .lineClampPickListItem{
229
- --line-clamp: var(--picklist-field-line-clamp,3);
230
232
  }
@@ -9,6 +9,8 @@ exports["default"] = void 0;
9
9
 
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
 
12
+ var _utils = require("@zohodesk/utils");
13
+
12
14
  var _defaultProps = require("./props/defaultProps");
13
15
 
14
16
  var _propTypes = require("./props/propTypes");
@@ -184,18 +186,30 @@ var RadioField = /*#__PURE__*/function (_PureComponent) {
184
186
  }, LabelProps)), /*#__PURE__*/_react["default"].createElement("div", {
185
187
  className: "".concat(_FieldsModule["default"].fieldContainer, " ").concat(isBoxStyle ? _FieldsModule["default"].radiosWrapper : '', " ").concat(labelName ? isBoxStyle ? _FieldsModule["default"].fieldMargin_large : _FieldsModule["default"].fieldMargin_medium : '', " ").concat(_FieldsModule["default"].radioContainer)
186
188
  }, options.map(function (option, index) {
189
+ var _compileClassNames;
190
+
187
191
  var text = option.text,
188
192
  value = option.value,
189
193
  _option$disabled = option.disabled,
190
194
  disabled = _option$disabled === void 0 ? false : _option$disabled,
191
195
  tooltip = option.tooltip,
192
- infoTooltip = option.infoTooltip;
196
+ infoTooltip = option.infoTooltip,
197
+ secondaryText = option.secondaryText,
198
+ renderRightPlaceholderNode = option.renderRightPlaceholderNode,
199
+ customProps = option.customProps;
193
200
  var isDisabledState = disabled || isDisabled;
194
201
  var isChecked = selectedValue == value;
202
+ var rightPlaceholderNode = !!infoTooltip ? /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_Icon["default"], _extends({
203
+ name: "ZD-GN-info",
204
+ size: "16",
205
+ title: infoTooltip,
206
+ iconClass: _FieldsModule["default"].infoIcon
207
+ }, InfoIconProps)), renderRightPlaceholderNode) : renderRightPlaceholderNode;
208
+ var radioBoxClasses = isBoxStyle ? (0, _utils.compileClassNames)((_compileClassNames = {}, _defineProperty(_compileClassNames, _FieldsModule["default"].radioBox, true), _defineProperty(_compileClassNames, _FieldsModule["default"].withSecondaryText, !!secondaryText), _defineProperty(_compileClassNames, _FieldsModule["default"].primaryTextOnly, !secondaryText), _defineProperty(_compileClassNames, _FieldsModule["default"].hoverableRadioBox, !isDisabledState), _defineProperty(_compileClassNames, _FieldsModule["default"].radioBoxActive, isChecked), _compileClassNames)) : '';
195
209
  return /*#__PURE__*/_react["default"].createElement("span", {
196
210
  key: index,
197
211
  className: "".concat(!isBoxStyle ? _FieldsModule["default"].radio : '', " ").concat(_FieldsModule["default"].radioWrap)
198
- }, /*#__PURE__*/_react["default"].createElement(_Radio["default"], _extends({
212
+ }, /*#__PURE__*/_react["default"].createElement(_Radio["default"], _extends({}, customProps, {
199
213
  id: index,
200
214
  value: value,
201
215
  name: id,
@@ -212,20 +226,21 @@ var RadioField = /*#__PURE__*/function (_PureComponent) {
212
226
  checked: isChecked,
213
227
  dataId: dataId,
214
228
  isReadOnly: isReadOnly,
215
- variant: variant
229
+ variant: variant,
230
+ secondaryText: secondaryText
216
231
  }, RadioProps, {
217
232
  a11y: _objectSpread({
218
233
  tabIndex: !!selectedValue ? isChecked ? '0' : '-1' : index === 0 ? '0' : '-1'
219
234
  }, RadioProps.a11y),
220
235
  customClass: _objectSpread({
221
- customRadioWrap: isBoxStyle ? "".concat(_FieldsModule["default"].radioBox, " ").concat(!isDisabledState ? _FieldsModule["default"].hoverableRadioBox : '', " ").concat(isChecked ? _FieldsModule["default"].radioBoxActive : '') : ''
222
- }, RadioProps.customClass)
223
- }), !!infoTooltip ? /*#__PURE__*/_react["default"].createElement(_Icon["default"], _extends({
224
- name: "ZD-GN-info",
225
- size: "16",
226
- title: infoTooltip,
227
- iconClass: _FieldsModule["default"].infoIcon
228
- }, InfoIconProps)) : null));
236
+ customRadioWrap: radioBoxClasses
237
+ }, RadioProps.customClass),
238
+ customProps: _objectSpread({
239
+ LabelProps: _objectSpread(_objectSpread({}, RadioProps.customProps ? RadioProps.customProps.LabelProps : undefined), {}, {
240
+ renderRightPlaceholderNode: rightPlaceholderNode
241
+ })
242
+ }, RadioProps.customProps)
243
+ })));
229
244
  })), validationMessage && /*#__PURE__*/_react["default"].createElement(_ValidationMessage["default"], _extends({
230
245
  text: validationMessage,
231
246
  palette: validationPalette,
@@ -24,6 +24,22 @@ var options = [{
24
24
  text: 'Kolkata',
25
25
  value: '4'
26
26
  }];
27
+ var optionsWithsecondaryText = [{
28
+ text: 'Chennai',
29
+ value: '1',
30
+ secondaryText: 'Tamil Nadu Capital'
31
+ }, {
32
+ text: 'Mumbai',
33
+ value: '2',
34
+ secondaryText: 'Maharashtra Capital',
35
+ tooltip: 'Disabled Option',
36
+ disabled: true
37
+ }, {
38
+ text: 'Delhi',
39
+ value: '3',
40
+ secondaryText: 'Capital of India',
41
+ infoTooltip: 'Capital of India'
42
+ }];
27
43
  describe('RadioField', function () {
28
44
  test('rendering the defult props', function () {
29
45
  var _render = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_RadioField["default"], {
@@ -50,4 +66,21 @@ describe('RadioField', function () {
50
66
 
51
67
  expect(asFragment()).toMatchSnapshot();
52
68
  });
69
+ test('rendering with secondaryTextOptions', function () {
70
+ var _render4 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_RadioField["default"], {
71
+ options: optionsWithsecondaryText
72
+ })),
73
+ asFragment = _render4.asFragment;
74
+
75
+ expect(asFragment()).toMatchSnapshot();
76
+ });
77
+ test('rendering with secondaryTextOptions & isBoxStyle', function () {
78
+ var _render5 = (0, _react2.render)( /*#__PURE__*/_react["default"].createElement(_RadioField["default"], {
79
+ options: optionsWithsecondaryText,
80
+ isBoxStyle: true
81
+ })),
82
+ asFragment = _render5.asFragment;
83
+
84
+ expect(asFragment()).toMatchSnapshot();
85
+ });
53
86
  });