@zohodesk/dot 1.0.0-temp-88 → 1.0.0-temp.777

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 (163) hide show
  1. package/README.md +13 -0
  2. package/es/ActionButton/ActionButton.js +7 -4
  3. package/es/ActionButton/ActionButton.module.css +9 -25
  4. package/es/AlphabeticList/AlphabeticList.module.css +4 -7
  5. package/es/Attachment/Attachment.module.css +9 -20
  6. package/es/AttachmentViewer/AttachmentViewer.module.css +27 -89
  7. package/es/ChannelIcon/ChannelIcon.module.css +21 -30
  8. package/es/Drawer/Drawer.module.css +11 -59
  9. package/es/FlipCard/FlipCard.module.css +5 -14
  10. package/es/FormAction/FormAction.module.css +9 -34
  11. package/es/FreezeLayer/FreezeLayer.module.css +2 -6
  12. package/es/IconButton/IconButton.module.css +1 -1
  13. package/es/ImportantNotes/ImportantNotes.module.css +2 -7
  14. package/es/Loader/Loader.module.css +4 -25
  15. package/es/Message/Message.module.css +9 -42
  16. package/es/MessageBanner/MessageBanner.module.css +4 -12
  17. package/es/NewStar/NewStar.module.css +5 -42
  18. package/es/Provider.js +5 -105
  19. package/es/ToastMessage/ToastMessage.module.css +25 -96
  20. package/es/Upload/Upload.module.css +8 -27
  21. package/es/alert/AlertHeader/AlertHeader.module.css +3 -21
  22. package/es/alert/AlertLookup/AlertLookup.module.css +2 -6
  23. package/es/avatar/AvatarClose/AvatarClose.module.css +3 -9
  24. package/es/avatar/AvatarCollision/AvatarCollision.module.css +4 -18
  25. package/es/avatar/AvatarIcon/AvatarIcon.module.css +4 -3
  26. package/es/avatar/AvatarStatus/AvatarStatus.module.css +9 -59
  27. package/es/avatar/AvatarThread/AvatarThread.module.css +5 -55
  28. package/es/avatar/AvatarUser/AvatarUser.module.css +10 -81
  29. package/es/avatar/AvatarWithTeam/AvatarWithTeam.module.css +3 -10
  30. package/es/common/dot_animation.module.css +3 -16
  31. package/es/deprecated/SelectDropdown/SelectDropdown.module.css +3 -11
  32. package/es/docs/formDocs.js +5 -1
  33. package/es/docs/generalDocs.js +5 -2
  34. package/es/dropdown/ToggleDropDown/ToggleDropDown.module.css +9 -21
  35. package/es/emptystate/CommonEmptyState/CommonEmptyState.module.css +4 -12
  36. package/es/emptystate/EditionPage/EditionPage.css +3 -9
  37. package/es/errorstate/EmptyStates.module.css +10 -13
  38. package/es/errorstate/Inconvenience/Inconvenience.module.css +0 -3
  39. package/es/errorstate/LinkText/LinkText.module.css +1 -1
  40. package/es/errorstate/PermissionPlay/PermissionPlay.module.css +2 -2
  41. package/es/errorstate/WillBack/WillBack.module.css +3 -1
  42. package/es/form/fields/CheckBoxField/CheckBoxField.js +16 -28
  43. package/es/form/fields/CheckBoxField/docs/CheckBoxField__default.docs.js +8 -1
  44. package/es/form/fields/CurrencyField/CurrencyField.js +16 -29
  45. package/es/form/fields/CurrencyField/docs/CurrencyField__default.docs.js +36 -0
  46. package/es/form/fields/DateField/DateField.js +16 -28
  47. package/es/form/fields/DateField/docs/DateField__default.docs.js +8 -1
  48. package/es/form/fields/FieldContainer/FieldContainer.js +82 -0
  49. package/es/form/fields/FieldContainer/docs/FieldContainer__default.docs.js +49 -0
  50. package/es/form/fields/Fields.module.css +14 -49
  51. package/es/form/fields/MultiSelectField/MultiSelectField.js +16 -28
  52. package/es/form/fields/MultiSelectField/docs/MultiSelectField__default.docs.js +8 -1
  53. package/es/form/fields/SelectField/SelectField.js +16 -28
  54. package/es/form/fields/SelectField/docs/SelectField__default.docs.js +8 -1
  55. package/es/form/fields/TagsMultiSelect/TagsMultiSelect.js +7 -4
  56. package/es/form/fields/TagsMultiSelect/TagsMultiSelect.module.css +7 -19
  57. package/es/form/fields/TagsMultiSelectField/TagsMultiSelectField.js +32 -28
  58. package/es/form/fields/TagsMultiSelectField/TagsMultiSelectField.module.css +1 -4
  59. package/es/form/fields/TextBoxField/TextBoxField.js +18 -43
  60. package/es/form/fields/TextBoxField/docs/TextBoxField__default.docs.js +28 -1
  61. package/es/form/fields/TextEditor/TextEditor.module.css +72 -149
  62. package/es/form/fields/TextEditorField/TextEditorField.js +27 -44
  63. package/es/form/fields/TextEditorField/docs/TextEditorField__default.docs.js +9 -2
  64. package/es/form/fields/TextEditorWrapper/TextEditorWrapper.module.css +2 -13
  65. package/es/form/fields/TextareaField/TextareaField.js +16 -28
  66. package/es/form/fields/TextareaField/docs/TextareaField__default.docs.js +8 -1
  67. package/es/form/fields/ValidationMessage/ValidationMessage.module.css +4 -9
  68. package/es/form/fields/props/FieldCommonDefaultProps.js +10 -0
  69. package/es/form/fields/props/FieldCommonPropTypes.js +22 -0
  70. package/es/layout/SetupDetailLayout/SetupDetailLayout.module.css +16 -52
  71. package/es/layout/SubtabLayout/SubtabLayout.module.css +29 -55
  72. package/es/list/BluePrintStatus/BluePrintStatus.module.css +1 -4
  73. package/es/list/Comment/Comment.module.css +0 -5
  74. package/es/list/DotNew/DotNew.module.css +3 -3
  75. package/es/list/GridStencils/GridStencils.module.css +21 -82
  76. package/es/list/Icons/Icons.module.css +1 -1
  77. package/es/list/ListLayout/ListLayout.module.css +14 -22
  78. package/es/list/ListStencils/ListStencils.module.css +6 -11
  79. package/es/list/SecondaryText/AccountName.js +34 -38
  80. package/es/list/SecondaryText/ContactName.js +18 -13
  81. package/es/list/SecondaryText/SecondaryText.module.css +14 -39
  82. package/es/list/SecondaryText/docs/SecondaryText__default.docs.js +114 -0
  83. package/es/list/SecondryPanel/docs/SecondryPanelDocs.module.css +2 -2
  84. package/es/list/SentimentStatus/SentimentStatus.module.css +1 -4
  85. package/es/list/TagNew/TagNew.module.css +7 -14
  86. package/es/list/Thread/Thread.module.css +1 -13
  87. package/es/list/UserTime/UserTime.module.css +0 -6
  88. package/es/list/listCommon.module.css +1 -9
  89. package/es/list/status/StatusDropdown/StatusDropdown.module.css +6 -19
  90. package/es/list/status/StatusListItem/StatusListItem.module.css +15 -38
  91. package/es/lookup/Lookup/Lookup.module.css +2 -2
  92. package/es/lookup/Section/LookupSection.module.css +2 -2
  93. package/es/lookup/header/Close/LookupClose.module.css +4 -4
  94. package/es/lookup/header/Search/LookupSearch.module.css +12 -21
  95. package/es/lookup/header/TicketHeader/TicketHeader.module.css +2 -5
  96. package/es/lookup/header/ViewDropDown/ViewDropDown.module.css +3 -8
  97. package/es/lookup/header/lookupHeaderCommon.module.css +5 -15
  98. package/es/lookup/header/lookupHeaderCommonResponsive.module.css +3 -12
  99. package/es/setup/header/Button/HeaderButton.module.css +1 -3
  100. package/es/setup/header/Link/HeaderLink.module.css +1 -7
  101. package/es/setup/header/Search/Search.module.css +8 -19
  102. package/es/setup/header/Views/Views.module.css +5 -15
  103. package/es/setup/helptips/Link/HelpTipsLink.module.css +0 -1
  104. package/es/setup/helptips/ListGroup/ListGroup.module.css +1 -6
  105. package/es/setup/table/TableData/SetupTableData.module.css +3 -11
  106. package/es/setup/table/TableHead/SetupTableHead.module.css +0 -4
  107. package/es/setup/table/TableRow/SetupTableRow.module.css +2 -6
  108. package/es/utils/KeyboardApi.js +294 -0
  109. package/es/version2/AlertClose/AlertClose.module.css +1 -1
  110. package/es/version2/GlobalNotification/GlobalNotification.module.css +9 -44
  111. package/es/version2/lookup/AlertHeader/AlertHeaderNew.module.css +2 -25
  112. package/es/version2/lookup/AlertLookup/AlertLookupNew.module.css +3 -7
  113. package/es/version2/lookup/alertLookupCommonNew.module.css +1 -8
  114. package/es/version2/notification/DesktopNotification/DesktopNotification.module.css +10 -26
  115. package/es/version2/notification/DesktopNotificationHeader/DesktopNotificationHeader.module.css +10 -47
  116. package/lib/ActionButton/ActionButton.js +3 -7
  117. package/lib/ActionButton/ActionButton.module.css +1 -0
  118. package/lib/FreezeLayer/FreezeLayer.js +4 -29
  119. package/lib/ImportantNotes/ImportantNotes.js +3 -5
  120. package/lib/Provider.js +38 -115
  121. package/lib/deprecated/SelectDropdown/SelectDropdown.js +38 -60
  122. package/lib/deprecated/SelectDropdown/SelectDropdown.module.css +0 -1
  123. package/lib/docs/generalDocs.js +0 -16
  124. package/lib/dropdown/ToggleDropDown/ToggleDropDown.js +161 -182
  125. package/lib/dropdown/ToggleDropDown/ToggleDropDown.module.css +0 -3
  126. package/lib/form/fields/CheckBoxField/CheckBoxField.js +1 -1
  127. package/lib/form/fields/CurrencyField/CurrencyField.js +8 -9
  128. package/lib/form/fields/DateField/DateField.js +1 -1
  129. package/lib/form/fields/MultiSelectField/MultiSelectField.js +1 -1
  130. package/lib/form/fields/PhoneField/PhoneField.js +1 -1
  131. package/lib/form/fields/RadioField/RadioField.js +1 -1
  132. package/lib/form/fields/SelectField/SelectField.js +1 -1
  133. package/lib/form/fields/TagsMultiSelect/TagsMultiSelect.js +73 -110
  134. package/lib/form/fields/TextBoxField/TextBoxField.js +1 -1
  135. package/lib/form/fields/TextEditor/TextEditor.js +1 -4
  136. package/lib/form/fields/TextEditor/TextEditor.module.css +2 -13
  137. package/lib/form/fields/TextareaField/TextareaField.js +1 -1
  138. package/lib/list/DepartmentDropDown/DepartmentDropDown.js +1 -1
  139. package/lib/list/GridStencils/GridStencils.module.css +1 -3
  140. package/lib/list/SecondaryText/AccountName.js +34 -38
  141. package/lib/list/SecondaryText/ContactName.js +18 -13
  142. package/lib/list/SecondaryText/SecondaryText.module.css +14 -29
  143. package/lib/list/status/StatusDropdown/StatusDropdown.js +118 -146
  144. package/lib/list/status/StatusDropdown/StatusDropdown.module.css +0 -3
  145. package/lib/lookup/header/ModuleHeader/ModuleHeader.js +3 -8
  146. package/lib/lookup/header/ModuleHeader/docs/ModuleHeader__default.docs.js +3 -13
  147. package/lib/lookup/header/TicketHeader/TicketHeader.js +4 -7
  148. package/lib/lookup/header/ViewDropDown/ViewDropDown.js +52 -75
  149. package/lib/lookup/header/lookupHeaderCommon.module.css +2 -8
  150. package/lib/setup/header/Views/Views.js +2 -2
  151. package/lib/utils/General.js +24 -0
  152. package/lib/{deprecated/utils → utils}/KeyboardApi.js +0 -0
  153. package/package.json +5 -5
  154. package/lib/AttachmentViewer/Attachment.js +0 -28
  155. package/lib/AttachmentViewer/AttachmentImage.js +0 -133
  156. package/lib/AttachmentViewer/AttachmentViewer.js +0 -646
  157. package/lib/AttachmentViewer/AttachmentViewer.module.css +0 -354
  158. package/lib/AttachmentViewer/docs/AttachmentViewer__default.docs.js +0 -123
  159. package/lib/AttachmentViewer/utils.js +0 -134
  160. package/lib/Provider/Config.js +0 -21
  161. package/lib/common/dot_animation.module.css +0 -27
  162. package/lib/common/dot_common.module.css +0 -4
  163. package/lib/deprecated/utils/General.js +0 -29
@@ -9,9 +9,11 @@ import Label from '@zohodesk/components/lib/Label/Label';
9
9
  import MultiSelect from '@zohodesk/components/lib/MultiSelect/MultiSelect';
10
10
  import ValidationMessage from '../ValidationMessage/ValidationMessage';
11
11
  import { getUniqueId } from '@zohodesk/components/lib/Provider/IdProvider';
12
- /**** Icons ****/
12
+ import FieldContainer from '../FieldContainer/FieldContainer';
13
+ /**** props ****/
13
14
 
14
- import Icon from '@zohodesk/icons/lib/Icon';
15
+ import { FieldCommonDefaultProps } from '../props/FieldCommonDefaultProps';
16
+ import { FieldCommonPropTypes } from '../props/FieldCommonPropTypes';
15
17
  /** CSS */
16
18
 
17
19
  import style from '../Fields.module.css';
@@ -125,7 +127,8 @@ export default class MultiSelectField extends PureComponent {
125
127
  customChildrenClass,
126
128
  onFocus,
127
129
  customProps,
128
- i18nKeys
130
+ i18nKeys,
131
+ renderLabelProps
129
132
  } = this.props;
130
133
  const {
131
134
  LabelProps = {},
@@ -138,8 +141,11 @@ export default class MultiSelectField extends PureComponent {
138
141
  return /*#__PURE__*/React.createElement("div", {
139
142
  className: `${style.container} ${isDisabled ? style.disabled : isReadOnly ? style.readonly : ''}`,
140
143
  "data-title": isDisabled ? title : null
141
- }, labelName && /*#__PURE__*/React.createElement("div", {
142
- className: style.labelContainer
144
+ }, labelName && /*#__PURE__*/React.createElement(FieldContainer, {
145
+ infoText: infoText,
146
+ isLocked: isLocked,
147
+ lockedInfoText: lockedInfoText,
148
+ renderProps: renderLabelProps
143
149
  }, /*#__PURE__*/React.createElement(Label, _extends({
144
150
  text: labelName,
145
151
  id: id,
@@ -149,17 +155,7 @@ export default class MultiSelectField extends PureComponent {
149
155
  customClass: `${style.fieldLabel} ${isMandatory ? style.labelMandatory : ''}`,
150
156
  dataId: isDisabled ? `${dataId}_label_disabled` : isMandatory ? `${dataId}_label_mandatory` : `${dataId}_label`,
151
157
  htmlFor: uniqueId
152
- }, LabelProps)), infoText ? /*#__PURE__*/React.createElement(Icon, {
153
- name: "ZD-GN-info",
154
- iconClass: style.infoIcon,
155
- title: infoText,
156
- size: "15"
157
- }) : null, isLocked ? /*#__PURE__*/React.createElement(Icon, {
158
- name: "ZD-GN-lock",
159
- size: "13",
160
- iconClass: style.lockIcon,
161
- title: lockedInfoText
162
- }) : null), /*#__PURE__*/React.createElement(MultiSelect, _extends({
158
+ }, LabelProps))), /*#__PURE__*/React.createElement(MultiSelect, _extends({
163
159
  options: options,
164
160
  onChange: this.handleChange,
165
161
  selectedOptions: selectedOptions,
@@ -210,20 +206,15 @@ export default class MultiSelectField extends PureComponent {
210
206
  MultiSelectField.propTypes = {
211
207
  animationStyle: PropTypes.string,
212
208
  borderColor: PropTypes.oneOf(['transparent', 'default', 'dark']),
213
- dataId: PropTypes.string,
214
209
  emptyMessage: PropTypes.string,
215
210
  errorType: PropTypes.oneOf(['primary', 'secondary']),
216
211
  fieldSize: PropTypes.oneOf(['small', 'medium']),
217
212
  getNextOptions: PropTypes.func,
218
213
  getRef: PropTypes.func,
219
214
  id: PropTypes.string,
220
- infoText: PropTypes.string,
221
215
  isAnimate: PropTypes.bool,
222
- isDisabled: PropTypes.bool,
223
216
  isFocusOnLabelClick: PropTypes.bool,
224
- isMandatory: PropTypes.bool,
225
217
  isNextOptions: PropTypes.bool,
226
- isReadOnly: PropTypes.bool,
227
218
  isSearching: PropTypes.bool,
228
219
  labelName: PropTypes.string,
229
220
  labelPalette: PropTypes.string,
@@ -248,8 +239,6 @@ MultiSelectField.propTypes = {
248
239
  validationRulePalette: PropTypes.string,
249
240
  valueField: PropTypes.string,
250
241
  variant: PropTypes.string,
251
- lockedInfoText: PropTypes.string,
252
- isLocked: PropTypes.bool,
253
242
  children: PropTypes.node,
254
243
  customChildrenClass: PropTypes.string,
255
244
  onFocus: PropTypes.func,
@@ -259,24 +248,23 @@ MultiSelectField.propTypes = {
259
248
  ValidationMessageProps1: PropTypes.object,
260
249
  ValidationMessageProps2: PropTypes.object
261
250
  }),
262
- i18nKeys: PropTypes.object
251
+ i18nKeys: PropTypes.object,
252
+ ...FieldCommonPropTypes()
263
253
  };
264
254
  MultiSelectField.defaultProps = {
265
255
  errorType: 'primary',
266
256
  isAnimate: false,
267
- isMandatory: false,
268
257
  needSelectAll: false,
269
258
  size: 'medium',
270
259
  textBoxSize: 'medium',
271
260
  variant: 'default',
272
261
  borderColor: 'default',
273
- isDisabled: false,
274
- isReadOnly: false,
275
262
  fieldSize: 'medium',
276
263
  isFocusOnLabelClick: true,
277
264
  labelPalette: 'default',
278
265
  customProps: {},
279
- i18nKeys: {}
266
+ i18nKeys: {},
267
+ ...FieldCommonDefaultProps()
280
268
  };
281
269
 
282
270
  if (false) {
@@ -34,7 +34,14 @@ export default class MultiSelectField__default extends Component {
34
34
  searchBoxSize: "xmedium",
35
35
  textBoxSize: "xmedium",
36
36
  animationStyle: "bounce",
37
- validationMessage: "Invalid Input"
37
+ validationMessage: "Invalid Input",
38
+ infoText: "infoText",
39
+ isLocked: true,
40
+ ePhiData: {
41
+ ePhiTitle: 'ePhiTitle',
42
+ ePhiText: 'ePhiText',
43
+ ePhiStatus: true
44
+ }
38
45
  });
39
46
  }
40
47
 
@@ -9,9 +9,11 @@ import Label from '@zohodesk/components/lib/Label/Label';
9
9
  import Select from '@zohodesk/components/lib/Select/Select';
10
10
  import ValidationMessage from '../ValidationMessage/ValidationMessage';
11
11
  import { getUniqueId } from '@zohodesk/components/lib/Provider/IdProvider';
12
- /**** Icons ****/
12
+ import FieldContainer from '../FieldContainer/FieldContainer';
13
+ /**** props ****/
13
14
 
14
- import Icon from '@zohodesk/icons/lib/Icon';
15
+ import { FieldCommonDefaultProps } from '../props/FieldCommonDefaultProps';
16
+ import { FieldCommonPropTypes } from '../props/FieldCommonPropTypes';
15
17
  /** CSS */
16
18
 
17
19
  import style from '../Fields.module.css';
@@ -94,7 +96,8 @@ export default class SelectField extends PureComponent {
94
96
  children,
95
97
  onFocus,
96
98
  iconOnHover,
97
- customProps
99
+ customProps,
100
+ renderLabelProps
98
101
  } = this.props;
99
102
  const {
100
103
  LabelProps = {},
@@ -106,8 +109,11 @@ export default class SelectField extends PureComponent {
106
109
  return /*#__PURE__*/React.createElement("div", {
107
110
  className: `${style.container} ${isDisabled ? style.disabled : isReadOnly ? style.readonly : ''}`,
108
111
  "data-title": isDisabled ? title : null
109
- }, labelName && /*#__PURE__*/React.createElement("div", {
110
- className: style.labelContainer
112
+ }, labelName && /*#__PURE__*/React.createElement(FieldContainer, {
113
+ infoText: infoText,
114
+ isLocked: isLocked,
115
+ lockedInfoText: lockedInfoText,
116
+ renderProps: renderLabelProps
111
117
  }, /*#__PURE__*/React.createElement(Label, _extends({
112
118
  text: labelName,
113
119
  size: fieldSize === 'small' ? 'small' : 'medium',
@@ -115,17 +121,7 @@ export default class SelectField extends PureComponent {
115
121
  customClass: `${style.fieldLabel} ${labelCustomClass} ${isMandatory ? style.labelMandatory : ''}`,
116
122
  htmlFor: uniqueId,
117
123
  dataId: isDisabled ? `${dataId}_label_disabled` : isMandatory ? `${dataId}_label_mandatory` : `${dataId}_label`
118
- }, LabelProps)), infoText ? /*#__PURE__*/React.createElement(Icon, {
119
- name: "ZD-GN-info",
120
- iconClass: style.infoIcon,
121
- title: infoText,
122
- size: "15"
123
- }) : null, isLocked ? /*#__PURE__*/React.createElement(Icon, {
124
- name: "ZD-GN-lock",
125
- size: "13",
126
- iconClass: style.lockIcon,
127
- title: lockedInfoText
128
- }) : null), /*#__PURE__*/React.createElement("div", {
124
+ }, LabelProps))), /*#__PURE__*/React.createElement("div", {
129
125
  className: `${style.fieldContainer} ${labelName ? style[`fieldMargin_${fieldSize}`] : ''} ${fieldClass ? fieldClass : ''}`
130
126
  }, /*#__PURE__*/React.createElement(Select, _extends({
131
127
  options: options,
@@ -176,7 +172,6 @@ export default class SelectField extends PureComponent {
176
172
  SelectField.propTypes = {
177
173
  animationStyle: PropTypes.string,
178
174
  borderColor: PropTypes.oneOf(['transparent', 'default']),
179
- dataId: PropTypes.string,
180
175
  emptyMessage: PropTypes.string,
181
176
  errorType: PropTypes.oneOf(['primary', 'secondary']),
182
177
  excludeOptions: PropTypes.array,
@@ -185,17 +180,11 @@ SelectField.propTypes = {
185
180
  getNextOptions: PropTypes.func,
186
181
  getRef: PropTypes.func,
187
182
  id: PropTypes.string,
188
- infoText: PropTypes.string,
189
- isDisabled: PropTypes.bool,
190
183
  isFocusOnLabelClick: PropTypes.bool,
191
- isLocked: PropTypes.bool,
192
- isMandatory: PropTypes.bool,
193
184
  isNextOptions: PropTypes.bool,
194
- isReadOnly: PropTypes.bool,
195
185
  labelCustomClass: PropTypes.string,
196
186
  labelName: PropTypes.string,
197
187
  labelPalette: PropTypes.string,
198
- lockedInfoText: PropTypes.string,
199
188
  needLocalSearch: PropTypes.bool,
200
189
  needSearch: PropTypes.bool,
201
190
  onChange: PropTypes.func,
@@ -225,25 +214,24 @@ SelectField.propTypes = {
225
214
  SelectProps: PropTypes.object,
226
215
  ValidationMessageProps1: PropTypes.object,
227
216
  ValidationMessageProps2: PropTypes.object
228
- })
217
+ }),
218
+ ...FieldCommonPropTypes()
229
219
  };
230
220
  SelectField.defaultProps = {
231
221
  errorType: 'primary',
232
- isMandatory: false,
233
222
  needSearch: false,
234
223
  searchBoxSize: 'small',
235
224
  textBoxSize: 'xmedium',
236
225
  textBoxVariant: 'primary',
237
226
  borderColor: 'default',
238
- isDisabled: false,
239
- isReadOnly: false,
240
227
  fieldSize: 'medium',
241
228
  isFocusOnLabelClick: true,
242
229
  labelPalette: 'default',
243
230
  labelCustomClass: '',
244
231
  isDefaultSelectValue: true,
245
232
  placeHolder: '',
246
- customProps: {}
233
+ customProps: {},
234
+ ...FieldCommonDefaultProps()
247
235
  };
248
236
 
249
237
  if (false) {
@@ -44,7 +44,14 @@ export default class SelectField__default extends Component {
44
44
  textBoxSize: "xmedium",
45
45
  textBoxVariant: "primary",
46
46
  searchBoxSize: "xmedium",
47
- validationMessage: "Invalid Input"
47
+ validationMessage: "Invalid Input",
48
+ infoText: "infoText",
49
+ isLocked: true,
50
+ ePhiData: {
51
+ ePhiTitle: 'ePhiTitle',
52
+ ePhiText: 'ePhiText',
53
+ ePhiStatus: true
54
+ }
48
55
  });
49
56
  }
50
57
 
@@ -137,7 +137,8 @@ export default class TagsMultiSelect extends React.Component {
137
137
  getTextBoxChildren,
138
138
  htmlId,
139
139
  boxSize,
140
- onSelectTag
140
+ onSelectTag,
141
+ clickableTag
141
142
  } = this.props;
142
143
  let {
143
144
  showAll
@@ -170,7 +171,7 @@ export default class TagsMultiSelect extends React.Component {
170
171
  text: name,
171
172
  onRemove: isReadOnly ? null : deleteTag.bind(this, name),
172
173
  closeTitle: i18nKeys.deleteText,
173
- palette: tagType === 'SYSTEM' ? 'primary' : 'default',
174
+ palette: clickableTag ? 'defaultLink' : tagType === 'SYSTEM' ? 'primary' : 'default',
174
175
  isReadOnly: isReadOnly,
175
176
  onSelectTag: onSelectTag ? onSelectTag : undefined
176
177
  })) : null;
@@ -318,7 +319,8 @@ TagsMultiSelect.propTypes = {
318
319
  getTextBoxChildren: PropTypes.func,
319
320
  htmlId: PropTypes.string,
320
321
  boxSize: PropTypes.string,
321
- onSelectTag: PropTypes.func
322
+ onSelectTag: PropTypes.func,
323
+ clickableTag: PropTypes.bool
322
324
  };
323
325
  TagsMultiSelect.defaultProps = {
324
326
  className: '',
@@ -327,7 +329,8 @@ TagsMultiSelect.defaultProps = {
327
329
  borderColor: 'default',
328
330
  needBorder: true,
329
331
  dataId: '',
330
- boxSize: 'default'
332
+ boxSize: 'default',
333
+ clickableTag: false
331
334
  };
332
335
 
333
336
  if (false) {
@@ -1,28 +1,26 @@
1
1
  .tag {
2
2
  max-width: 100%;
3
3
  }
4
- [dir=ltr] .moreLess, [dir=ltr] .tag {
4
+ .moreLess,
5
+ .tag {
5
6
  margin: 0 var(--zd_size6) var(--zd_size6) 0;
6
7
  }
7
- [dir=rtl] .moreLess, [dir=rtl] .tag {
8
- margin: 0 0 var(--zd_size6) var(--zd_size6);
9
- }
10
8
  .input {
11
9
  height: var(--zd_size20);
12
- width: 100%;
13
10
  margin-bottom: var(--zd_size4);
11
+ width: 100%;
14
12
  }
15
13
  .viewpopNew {
16
14
  max-height: var(--zd_size250);
17
15
  }
18
16
  .tagDiv {
19
- max-height: var(--zd_size160);
20
17
  margin-top: var(--zd_size5);
18
+ max-height: var(--zd_size160);
21
19
  }
22
20
  .hasBorder {
23
- transition: border var(--zd_transition2) linear 0s;
24
21
  border-bottom-style: solid;
25
22
  border-bottom-width: 1px;
23
+ transition: border var(--zd_transition2) linear 0s;
26
24
  }
27
25
  .borderColor_transparent {
28
26
  border-bottom-color: var(--zdt_tagsmultiselect_transparent_border);
@@ -66,15 +64,10 @@
66
64
  font-size: 0;
67
65
  }
68
66
  .newTagLabel {
67
+ margin-right: var(--zd_size5);
69
68
  color: var(--zdt_tagsmultiselect_labelt_text);
70
69
  composes: semibold from '~@zohodesk/components/lib/common/common.module.css';
71
70
  }
72
- [dir=ltr] .newTagLabel {
73
- margin-right: var(--zd_size5);
74
- }
75
- [dir=rtl] .newTagLabel {
76
- margin-left: var(--zd_size5);
77
- }
78
71
  .dotted {
79
72
  composes: dotted from '~@zohodesk/components/lib/common/common.module.css';
80
73
  }
@@ -94,13 +87,8 @@
94
87
  .custmInp {
95
88
  position: absolute;
96
89
  top: 0;
97
- width: 100%;
98
- }
99
- [dir=ltr] .custmInp {
100
90
  left: 0;
101
- }
102
- [dir=rtl] .custmInp {
103
- right: 0;
91
+ width: 100%;
104
92
  }
105
93
  .newTagText {
106
94
  color: var(--zdt_tagsmultiselect_more_text);
@@ -2,11 +2,18 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
2
2
 
3
3
  import React, { useState, useEffect } from 'react';
4
4
  import PropTypes from 'prop-types';
5
- import { Container, Box } from '@zohodesk/components/lib/Layout';
5
+ import { Box } from '@zohodesk/components/lib/Layout';
6
6
  import Label from '@zohodesk/components/lib/Label/Label';
7
7
  import Popup from '@zohodesk/components/lib/Popup/Popup';
8
8
  import ValidationMessage from '../ValidationMessage/ValidationMessage';
9
9
  import TagsMultiSelect from '../TagsMultiSelect/TagsMultiSelect';
10
+ import FieldContainer from '../FieldContainer/FieldContainer';
11
+ /**** props ****/
12
+
13
+ import { FieldCommonDefaultProps } from '../props/FieldCommonDefaultProps';
14
+ import { FieldCommonPropTypes } from '../props/FieldCommonPropTypes';
15
+ /**** css ****/
16
+
10
17
  import fieldStyle from '../Fields.module.css';
11
18
  import style from './TagsMultiSelectField.module.css';
12
19
 
@@ -36,7 +43,8 @@ const TagsMultiSelectField = props => {
36
43
  getTextBoxChildren,
37
44
  children,
38
45
  ePhiData,
39
- customProps
46
+ customProps,
47
+ clickableTag
40
48
  } = props;
41
49
  const {
42
50
  LabelProps = {},
@@ -71,11 +79,6 @@ const TagsMultiSelectField = props => {
71
79
  validationMessage,
72
80
  options
73
81
  } = fieldProperties;
74
- let {
75
- ePhiTitle = '',
76
- ePhiText = '',
77
- ePhiStatus = false
78
- } = ePhiData;
79
82
  options = options || [];
80
83
 
81
84
  const handleKeyUp = event => {
@@ -173,6 +176,10 @@ const TagsMultiSelectField = props => {
173
176
  changeSearchValue('');
174
177
  };
175
178
 
179
+ const renderEnd = () => {
180
+ return children ? children : null;
181
+ };
182
+
176
183
  useEffect(() => {
177
184
  window.addEventListener('click', documentClick);
178
185
  return () => {
@@ -180,12 +187,14 @@ const TagsMultiSelectField = props => {
180
187
  };
181
188
  }, []);
182
189
  return /*#__PURE__*/React.createElement("div", {
183
- className: `${style.container} ${isDisabled ? fieldStyle.disabled : isReadOnly ? fieldStyle.readonly : ''}`
184
- }, /*#__PURE__*/React.createElement(Container, {
185
- alignBox: "row",
186
- align: "baseline",
187
- isCover: false
188
- }, labelName && /*#__PURE__*/React.createElement(Label, _extends({
190
+ className: `${isDisabled ? fieldStyle.disabled : isReadOnly ? fieldStyle.readonly : ''}`
191
+ }, labelName && /*#__PURE__*/React.createElement(FieldContainer, {
192
+ ePhiData: ePhiData,
193
+ alignContainer: "baseline",
194
+ renderProps: {
195
+ end: renderEnd
196
+ }
197
+ }, /*#__PURE__*/React.createElement(Label, _extends({
189
198
  text: labelName,
190
199
  title: labelName,
191
200
  id: id,
@@ -197,11 +206,7 @@ const TagsMultiSelectField = props => {
197
206
  }, LabelProps)), selectedValueCount ? /*#__PURE__*/React.createElement(Box, {
198
207
  dataId: `${dataId}_tagCount`,
199
208
  className: style.count
200
- }, `(${selectedValueCount})`) : null, ePhiStatus ? /*#__PURE__*/React.createElement("span", {
201
- "data-title": ePhiTitle,
202
- "data-id": `${dataId}_ePHI`,
203
- className: fieldStyle.ePhiTag
204
- }, ePhiText) : null, children ? children : null), /*#__PURE__*/React.createElement(TagsMultiSelect, _extends({
209
+ }, `(${selectedValueCount})`) : null), /*#__PURE__*/React.createElement(TagsMultiSelect, _extends({
205
210
  addTag: handleAdd,
206
211
  deleteTag: onDelete,
207
212
  handleChange: handleChange,
@@ -232,7 +237,9 @@ const TagsMultiSelectField = props => {
232
237
  htmlId: htmlId,
233
238
  getTextBoxChildren: getTextBoxChildren,
234
239
  className: containerClass
235
- }, TagsMultiSelectProps)), validationMessage && /*#__PURE__*/React.createElement(ValidationMessage, _extends({
240
+ }, TagsMultiSelectProps, {
241
+ clickableTag: clickableTag
242
+ })), validationMessage && /*#__PURE__*/React.createElement(ValidationMessage, _extends({
236
243
  text: validationMessage,
237
244
  palette: validationPalette,
238
245
  type: errorType,
@@ -252,7 +259,8 @@ TagsMultiSelectField.propTypes = {
252
259
  value: PropTypes.string,
253
260
  selectedValueCount: PropTypes.string,
254
261
  validationMessage: PropTypes.string,
255
- options: PropTypes.array
262
+ options: PropTypes.array,
263
+ clickableTag: PropTypes.bool
256
264
  }),
257
265
  styleProperties: PropTypes.shape({
258
266
  labelSize: PropTypes.string,
@@ -284,16 +292,12 @@ TagsMultiSelectField.propTypes = {
284
292
  position: PropTypes.string,
285
293
  getContainerRef: PropTypes.func,
286
294
  getTargetRef: PropTypes.func,
287
- ePhiData: PropTypes.shape({
288
- ePhiTitle: PropTypes.string,
289
- ePhiText: PropTypes.string,
290
- ePhiStatus: PropTypes.bool
291
- }),
292
295
  customProps: PropTypes.shape({
293
296
  LabelProps: PropTypes.object,
294
297
  TagsMultiSelectProps: PropTypes.object,
295
298
  ValidationMessageProps: PropTypes.object
296
- })
299
+ }),
300
+ ...FieldCommonPropTypes()
297
301
  };
298
302
  TagsMultiSelectField.defaultProps = {
299
303
  fieldProperties: {
@@ -309,8 +313,8 @@ TagsMultiSelectField.defaultProps = {
309
313
  isNewNeeded: false,
310
314
  i18nKeys: {},
311
315
  numberOfDisplayedValues: '5',
312
- ePhiData: {},
313
- customProps: {}
316
+ customProps: {},
317
+ ...FieldCommonDefaultProps()
314
318
  };
315
319
 
316
320
  if (false) {
@@ -1,9 +1,6 @@
1
1
  .count {
2
2
  color: var(--zdt_tagsmultiselectField_count_text);
3
3
  font-size: var(--zd_font_size12);
4
- word-break: break-word;
5
- }[dir=ltr] .count {
6
4
  margin-left: var(--zd_size4);
7
- }[dir=rtl] .count {
8
- margin-right: var(--zd_size4);
5
+ word-break: break-word;
9
6
  }
@@ -9,9 +9,11 @@ import Label from '@zohodesk/components/lib/Label/Label';
9
9
  import TextBoxIcon from '@zohodesk/components/lib/TextBoxIcon/TextBoxIcon';
10
10
  import ValidationMessage from '../ValidationMessage/ValidationMessage';
11
11
  import { getUniqueId } from '@zohodesk/components/lib/Provider/IdProvider';
12
- /**** Icons ****/
12
+ import FieldContainer from '../FieldContainer/FieldContainer';
13
+ /**** props ****/
13
14
 
14
- import Icon from '@zohodesk/icons/lib/Icon';
15
+ import { FieldCommonDefaultProps } from '../props/FieldCommonDefaultProps';
16
+ import { FieldCommonPropTypes } from '../props/FieldCommonPropTypes';
15
17
  /**** CSS ****/
16
18
 
17
19
  import style from '../Fields.module.css';
@@ -82,7 +84,8 @@ export default class TextBoxField extends PureComponent {
82
84
  onFocus,
83
85
  ePhiData,
84
86
  children,
85
- customProps
87
+ customProps,
88
+ renderLabelProps
86
89
  } = this.props;
87
90
  const {
88
91
  LabelProps = {},
@@ -90,17 +93,17 @@ export default class TextBoxField extends PureComponent {
90
93
  ValidationMessageProps1 = {},
91
94
  ValidationMessageProps2 = {}
92
95
  } = customProps;
93
- let {
94
- ePhiTitle = '',
95
- ePhiText = '',
96
- ePhiStatus = false
97
- } = ePhiData;
98
96
  let uniqueId = htmlId ? htmlId : this.getNextId();
99
97
  return /*#__PURE__*/React.createElement("div", {
100
98
  className: `${style.container} ${isDisabled ? style.disabled : isReadOnly ? style.readonly : ''}`,
101
99
  "data-title": isDisabled ? title : null
102
- }, labelName && /*#__PURE__*/React.createElement("div", {
103
- className: style.labelContainer
100
+ }, labelName && /*#__PURE__*/React.createElement(FieldContainer, {
101
+ infoText: infoText,
102
+ isLocked: isLocked,
103
+ lockedInfoText: lockedInfoText,
104
+ ePhiData: ePhiData,
105
+ dataId: dataId,
106
+ renderProps: renderLabelProps
104
107
  }, /*#__PURE__*/React.createElement(Label, _extends({
105
108
  text: labelName,
106
109
  size: fieldSize === 'small' ? 'small' : 'medium',
@@ -108,21 +111,7 @@ export default class TextBoxField extends PureComponent {
108
111
  customClass: `${style.fieldLabel} ${labelCustomClass} ${isMandatory ? style.labelMandatory : ''}`,
109
112
  htmlFor: uniqueId,
110
113
  dataId: isDisabled ? `${dataId}_label_disabled` : isMandatory ? `${dataId}_label_mandatory` : `${dataId}_label`
111
- }, LabelProps)), infoText ? /*#__PURE__*/React.createElement(Icon, {
112
- name: "ZD-GN-info",
113
- iconClass: style.infoIcon,
114
- title: infoText,
115
- size: "15"
116
- }) : null, isLocked ? /*#__PURE__*/React.createElement(Icon, {
117
- name: "ZD-GN-lock",
118
- size: "13",
119
- iconClass: style.lockIcon,
120
- title: lockedInfoText
121
- }) : null, ePhiStatus ? /*#__PURE__*/React.createElement("span", {
122
- "data-title": ePhiTitle,
123
- "data-id": `${dataId}_ePHI`,
124
- className: style.ePhiTag
125
- }, ePhiText) : null), /*#__PURE__*/React.createElement("div", {
114
+ }, LabelProps))), /*#__PURE__*/React.createElement("div", {
126
115
  className: `${style.fieldContainer} ${labelName ? style[`fieldMargin_${fieldSize}`] : ''}`
127
116
  }, /*#__PURE__*/React.createElement(TextBoxIcon, _extends({
128
117
  htmlId: uniqueId,
@@ -163,16 +152,11 @@ export default class TextBoxField extends PureComponent {
163
152
  }
164
153
  TextBoxField.propTypes = {
165
154
  borderColor: PropTypes.oneOf(['transparent', 'default']),
166
- dataId: PropTypes.string,
167
155
  errorType: PropTypes.oneOf(['primary', 'secondary']),
168
156
  fieldSize: PropTypes.oneOf(['small', 'medium']),
169
157
  getRef: PropTypes.func,
170
158
  id: PropTypes.string,
171
- infoText: PropTypes.string,
172
- isDisabled: PropTypes.bool,
173
159
  // isFocusOnLabelClick: PropTypes.bool,
174
- isMandatory: PropTypes.bool,
175
- isReadOnly: PropTypes.bool,
176
160
  labelCustomClass: PropTypes.string,
177
161
  labelName: PropTypes.string.isRequired,
178
162
  labelPalette: PropTypes.string,
@@ -190,40 +174,31 @@ TextBoxField.propTypes = {
190
174
  validationRuleMessage: PropTypes.string,
191
175
  validationRulePalette: PropTypes.string,
192
176
  value: PropTypes.string,
193
- lockedInfoText: PropTypes.string,
194
- isLocked: PropTypes.bool,
195
177
  isClickable: PropTypes.bool,
196
178
  needReadOnlyStyle: PropTypes.bool,
197
- ePhiData: PropTypes.shape({
198
- ePhiTitle: PropTypes.string,
199
- ePhiText: PropTypes.string,
200
- ePhiStatus: PropTypes.bool
201
- }),
202
179
  children: PropTypes.node,
203
180
  customProps: PropTypes.shape({
204
181
  LabelProps: PropTypes.object,
205
182
  TextBoxIconProps: PropTypes.object,
206
183
  ValidationMessageProps1: PropTypes.object,
207
184
  ValidationMessageProps2: PropTypes.object
208
- })
185
+ }),
186
+ ...FieldCommonPropTypes()
209
187
  };
210
188
  TextBoxField.defaultProps = {
211
189
  errorType: 'primary',
212
- isMandatory: false,
213
190
  textBoxSize: 'xmedium',
214
191
  textBoxType: 'text',
215
192
  textBoxVariant: 'primary',
216
193
  borderColor: 'default',
217
- isDisabled: false,
218
- isReadOnly: false,
219
194
  fieldSize: 'medium',
220
195
  // isFocusOnLabelClick: true,
221
196
  labelPalette: 'default',
222
197
  labelCustomClass: '',
223
198
  isClickable: false,
224
199
  needReadOnlyStyle: true,
225
- ePhiData: {},
226
- customProps: {}
200
+ customProps: {},
201
+ ...FieldCommonDefaultProps()
227
202
  };
228
203
 
229
204
  if (false) {
@@ -6,6 +6,21 @@ import Icon from '@zohodesk/icons/lib/Icon';
6
6
  export default class TextBoxField__default extends Component {
7
7
  constructor(props) {
8
8
  super(props);
9
+ this.renderStart = this.renderStart.bind(this);
10
+ this.renderMiddle = this.renderMiddle.bind(this);
11
+ this.renderEnd = this.renderEnd.bind(this);
12
+ }
13
+
14
+ renderStart() {
15
+ return 'Start';
16
+ }
17
+
18
+ renderMiddle() {
19
+ return 'Middle';
20
+ }
21
+
22
+ renderEnd() {
23
+ return 'End';
9
24
  }
10
25
 
11
26
  render() {
@@ -23,7 +38,19 @@ export default class TextBoxField__default extends Component {
23
38
  labelName: "Contact Name",
24
39
  textBoxSize: "xmedium",
25
40
  textBoxVariant: "primary",
26
- validationMessage: "Invalid Input"
41
+ validationMessage: "Invalid Input",
42
+ infoText: "infoText",
43
+ isLocked: true,
44
+ ePhiData: {
45
+ ePhiTitle: 'ePhiTitle',
46
+ ePhiText: 'ePhiText',
47
+ ePhiStatus: true
48
+ },
49
+ renderLabelProps: {
50
+ start: this.renderStart,
51
+ middle: this.renderMiddle,
52
+ end: this.renderEnd
53
+ }
27
54
  }, /*#__PURE__*/React.createElement(Container, {
28
55
  align: "both",
29
56
  style: {