@zohodesk/components 1.0.0-temp-211.2 → 1.0.0-temp-217

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 (128) hide show
  1. package/.cli/propValidation_report.html +1 -1
  2. package/README.md +118 -31
  3. package/es/AvatarTeam/props/propTypes.js +2 -1
  4. package/es/CheckBox/CheckBox.js +6 -5
  5. package/es/CheckBox/CheckBox.module.css +5 -2
  6. package/es/CheckBox/__tests__/__snapshots__/CheckBox.spec.js.snap +64 -64
  7. package/es/DateTime/CalendarView.js +17 -12
  8. package/es/DateTime/DateTime.js +26 -8
  9. package/es/DateTime/DateTime.module.css +5 -5
  10. package/es/DateTime/DateWidget.js +13 -2
  11. package/es/DateTime/DaysRow.js +3 -2
  12. package/es/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +7 -7
  13. package/es/DateTime/props/defaultProps.js +9 -3
  14. package/es/DateTime/props/propTypes.js +16 -4
  15. package/es/DropBox/DropBoxElement/DropBoxElement.js +3 -1
  16. package/es/DropBox/DropBoxElement/__tests__/__snapshots__/DropBoxElement.spec.js.snap +1 -0
  17. package/es/DropBox/__tests__/__snapshots__/DropBox.spec.js.snap +1 -0
  18. package/es/DropDown/__tests__/__snapshots__/DropDown.spec.js.snap +1 -0
  19. package/es/ListItem/ListItemWithAvatar.js +7 -3
  20. package/es/ListItem/__tests__/__snapshots__/ListItemWithCheckBox.spec.js.snap +2 -2
  21. package/es/ListItem/__tests__/__snapshots__/ListItemWithRadio.spec.js.snap +1 -1
  22. package/es/ListItem/props/propTypes.js +6 -1
  23. package/es/MultiSelect/AdvancedGroupMultiSelect.js +4 -2
  24. package/es/MultiSelect/AdvancedMultiSelect.js +4 -2
  25. package/es/MultiSelect/MultiSelect.js +11 -3
  26. package/es/MultiSelect/props/propTypes.js +6 -3
  27. package/es/Popup/Popup.js +125 -7
  28. package/es/Popup/intersectionObserver.js +49 -0
  29. package/es/Popup/props/propTypes.js +30 -0
  30. package/es/Radio/Radio.js +9 -7
  31. package/es/Radio/Radio.module.css +1 -1
  32. package/es/Radio/__tests__/__snapshots__/Radio.spec.js.snap +77 -77
  33. package/es/Responsive/ResizeObserver.js +21 -85
  34. package/es/Responsive/ResizeObserverWithPolyfill.js +140 -0
  35. package/es/ResponsiveDropBox/__tests__/__snapshots__/ResponsiveDropBox.spec.js.snap +1 -0
  36. package/es/Select/GroupSelect.js +15 -3
  37. package/es/Select/props/defaultProps.js +2 -1
  38. package/es/Select/props/propTypes.js +5 -1
  39. package/es/Tag/Tag.js +10 -3
  40. package/es/Tag/props/defaultProps.js +2 -1
  41. package/es/Tag/props/propTypes.js +7 -1
  42. package/es/TextBox/TextBox.js +1 -1
  43. package/es/Textarea/Textarea.js +4 -2
  44. package/es/Textarea/Textarea.module.css +1 -1
  45. package/es/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +41 -41
  46. package/es/Textarea/props/propTypes.js +2 -1
  47. package/es/Typography/Typography.js +38 -0
  48. package/es/Typography/css/Typography.module.css +489 -0
  49. package/es/Typography/css/cssJSLogic.js +56 -0
  50. package/es/Typography/props/defaultProps.js +8 -0
  51. package/es/Typography/props/propTypes.js +27 -0
  52. package/es/Typography/utils/index.js +50 -0
  53. package/es/index.js +1 -1
  54. package/es/v1/AppContainer/AppContainer.js +0 -6
  55. package/es/v1/DateTime/CalendarView.js +9 -6
  56. package/es/v1/DateTime/DateTime.js +18 -4
  57. package/es/v1/DateTime/DateWidget.js +5 -1
  58. package/es/v1/DateTime/DaysRow.js +3 -2
  59. package/es/v1/DateTime/props/defaultProps.js +9 -3
  60. package/es/v1/DateTime/props/propTypes.js +11 -4
  61. package/es/v1/MultiSelect/MultiSelect.js +7 -1
  62. package/es/v1/Select/GroupSelect.js +5 -0
  63. package/es/v1/Typography/Typography.js +1 -1
  64. package/lib/AvatarTeam/props/propTypes.js +3 -1
  65. package/lib/CheckBox/CheckBox.js +5 -4
  66. package/lib/CheckBox/CheckBox.module.css +5 -2
  67. package/lib/CheckBox/__tests__/__snapshots__/CheckBox.spec.js.snap +64 -64
  68. package/lib/DateTime/CalendarView.js +17 -12
  69. package/lib/DateTime/DateTime.js +38 -9
  70. package/lib/DateTime/DateTime.module.css +5 -5
  71. package/lib/DateTime/DateWidget.js +13 -2
  72. package/lib/DateTime/DaysRow.js +3 -2
  73. package/lib/DateTime/__tests__/__snapshots__/DateTime.spec.js.snap +7 -7
  74. package/lib/DateTime/props/defaultProps.js +9 -3
  75. package/lib/DateTime/props/propTypes.js +16 -4
  76. package/lib/DropBox/DropBoxElement/DropBoxElement.js +3 -1
  77. package/lib/DropBox/DropBoxElement/__tests__/__snapshots__/DropBoxElement.spec.js.snap +1 -0
  78. package/lib/DropBox/__tests__/__snapshots__/DropBox.spec.js.snap +1 -0
  79. package/lib/DropDown/__tests__/__snapshots__/DropDown.spec.js.snap +1 -0
  80. package/lib/ListItem/ListItemWithAvatar.js +8 -4
  81. package/lib/ListItem/__tests__/__snapshots__/ListItemWithCheckBox.spec.js.snap +2 -2
  82. package/lib/ListItem/__tests__/__snapshots__/ListItemWithRadio.spec.js.snap +1 -1
  83. package/lib/ListItem/props/propTypes.js +8 -1
  84. package/lib/MultiSelect/AdvancedGroupMultiSelect.js +4 -2
  85. package/lib/MultiSelect/AdvancedMultiSelect.js +4 -2
  86. package/lib/MultiSelect/MultiSelect.js +11 -3
  87. package/lib/MultiSelect/props/propTypes.js +8 -6
  88. package/lib/Popup/Popup.js +135 -8
  89. package/lib/Popup/intersectionObserver.js +72 -0
  90. package/lib/Popup/props/propTypes.js +51 -0
  91. package/lib/Radio/Radio.js +10 -7
  92. package/lib/Radio/Radio.module.css +1 -1
  93. package/lib/Radio/__tests__/__snapshots__/Radio.spec.js.snap +77 -77
  94. package/lib/Responsive/ResizeObserver.js +20 -88
  95. package/lib/Responsive/ResizeObserverWithPolyfill.js +168 -0
  96. package/lib/ResponsiveDropBox/__tests__/__snapshots__/ResponsiveDropBox.spec.js.snap +1 -0
  97. package/lib/Select/GroupSelect.js +17 -5
  98. package/lib/Select/props/defaultProps.js +2 -1
  99. package/lib/Select/props/propTypes.js +5 -1
  100. package/lib/Tag/Tag.js +10 -5
  101. package/lib/Tag/props/defaultProps.js +2 -1
  102. package/lib/Tag/props/propTypes.js +9 -1
  103. package/lib/TextBox/TextBox.js +1 -1
  104. package/lib/Textarea/Textarea.js +4 -2
  105. package/lib/Textarea/Textarea.module.css +1 -1
  106. package/lib/Textarea/__tests__/__snapshots__/Textarea.spec.js.snap +41 -41
  107. package/lib/Textarea/props/propTypes.js +2 -1
  108. package/lib/Typography/Typography.js +56 -0
  109. package/lib/Typography/css/Typography.module.css +489 -0
  110. package/lib/Typography/css/cssJSLogic.js +48 -0
  111. package/lib/Typography/props/defaultProps.js +15 -0
  112. package/lib/Typography/props/propTypes.js +38 -0
  113. package/lib/Typography/utils/index.js +59 -0
  114. package/lib/index.js +1 -1
  115. package/lib/v1/AppContainer/AppContainer.js +0 -12
  116. package/lib/v1/DateTime/CalendarView.js +9 -6
  117. package/lib/v1/DateTime/DateTime.js +27 -4
  118. package/lib/v1/DateTime/DateWidget.js +5 -1
  119. package/lib/v1/DateTime/DaysRow.js +3 -2
  120. package/lib/v1/DateTime/props/defaultProps.js +9 -3
  121. package/lib/v1/DateTime/props/propTypes.js +11 -4
  122. package/lib/v1/MultiSelect/MultiSelect.js +7 -1
  123. package/lib/v1/Select/GroupSelect.js +5 -0
  124. package/lib/v1/Typography/Typography.js +2 -2
  125. package/package.json +8 -8
  126. package/propValidationArg.json +1 -1
  127. /package/es/v1/Typography/css/{Typography.module.css → v1_Typography.module.css} +0 -0
  128. /package/lib/v1/Typography/css/{Typography.module.css → v1_Typography.module.css} +0 -0
@@ -652,7 +652,9 @@ export default class DateTime extends React.PureComponent {
652
652
  dropBoxPortalId,
653
653
  startDate,
654
654
  endDate,
655
- customProps = {}
655
+ customProps = {},
656
+ holidays,
657
+ weekStartDay
656
658
  } = this.props;
657
659
  const {
658
660
  TimeProps = {}
@@ -671,6 +673,16 @@ export default class DateTime extends React.PureComponent {
671
673
  dayNamesShort = dayNamesShortDefault
672
674
  } = i18nKeys;
673
675
  const showmonthtxt = title(date, year, month, monthNames);
676
+ let customDayNames = dayNames,
677
+ customDayNamesShort = dayNamesShort,
678
+ customizedHolidays = holidays;
679
+
680
+ if (weekStartDay !== 0) {
681
+ customDayNames = [...dayNames.slice(weekStartDay), ...dayNames.slice(0, weekStartDay)];
682
+ customDayNamesShort = [...dayNamesShort.slice(weekStartDay), ...dayNamesShort.slice(0, weekStartDay)];
683
+ customizedHolidays = holidays.map(dayIndex => customDayNames.indexOf(dayNames[dayIndex]));
684
+ }
685
+
674
686
  const childEle = /*#__PURE__*/React.createElement("div", {
675
687
  className: `${style.container} ${innerClass}`,
676
688
  "data-id": `${dataId}_Calendar`,
@@ -692,13 +704,15 @@ export default class DateTime extends React.PureComponent {
692
704
  year: year,
693
705
  month: month,
694
706
  onSelect: this.dateSelect,
695
- dayNames: dayNames,
696
- dayNamesShort: dayNamesShort,
707
+ dayNames: customDayNames,
708
+ dayNamesShort: customDayNamesShort,
697
709
  todayDate: todayDate,
698
710
  todayMonth: todayMonth,
699
711
  todayYear: todayYear,
700
712
  startDate: startDate,
701
- endDate: endDate
713
+ endDate: endDate,
714
+ weekStartDay: weekStartDay,
715
+ holidays: customizedHolidays
702
716
  }), isDateTimeField ? /*#__PURE__*/React.createElement(Time, {
703
717
  timeText: timeText,
704
718
  dataId: dataId,
@@ -1006,6 +1006,8 @@ class DateWidgetComponent extends React.Component {
1006
1006
  onError,
1007
1007
  startDate,
1008
1008
  endDate,
1009
+ weekStartDay,
1010
+ holidays,
1009
1011
  customProps = {}
1010
1012
  } = this.props;
1011
1013
  const {
@@ -1105,7 +1107,9 @@ class DateWidgetComponent extends React.Component {
1105
1107
  onError: onError,
1106
1108
  startDate: startDate,
1107
1109
  endDate: endDate,
1108
- customProps: DateTimeProps
1110
+ customProps: DateTimeProps,
1111
+ weekStartDay: weekStartDay,
1112
+ holidays: holidays
1109
1113
  }));
1110
1114
  }
1111
1115
 
@@ -13,7 +13,8 @@ export default class DaysRow extends PureComponent {
13
13
  render() {
14
14
  const {
15
15
  dayNames,
16
- dayNamesShort
16
+ dayNamesShort,
17
+ holidays
17
18
  } = this.props;
18
19
  return /*#__PURE__*/React.createElement(Container, {
19
20
  alignBox: "row",
@@ -21,7 +22,7 @@ export default class DaysRow extends PureComponent {
21
22
  className: style.days
22
23
  }, dayNames.map((dayName, index) => /*#__PURE__*/React.createElement(Box, {
23
24
  key: dayName,
24
- className: `${style.daysStr} ${style.grid} ${index === 0 ? style.sunday : ''}`,
25
+ className: `${style.daysStr} ${style.grid} ${holidays.includes(index) ? style.holiday : ''}`,
25
26
  "data-title": dayName,
26
27
  "aria-label": dayName
27
28
  }, dayNamesShort[index])));
@@ -1,6 +1,8 @@
1
1
  export const CalendarView_defaultProps = {
2
2
  dataId: 'dateContainer',
3
- needBorder: true
3
+ needBorder: true,
4
+ weekStartDay: 0,
5
+ holidays: [0]
4
6
  };
5
7
  export const Span_defaultProps = {
6
8
  dataId: 'calendar-view'
@@ -20,7 +22,9 @@ export const DateTime_defaultProps = {
20
22
  i18nKeys: {},
21
23
  is24Hour: false,
22
24
  isDefaultPosition: false,
23
- customDateFormat: null
25
+ customDateFormat: null,
26
+ weekStartDay: 0,
27
+ holidays: [0]
24
28
  };
25
29
  export const DateWidget_defaultProps = {
26
30
  borderColor: 'default',
@@ -43,7 +47,9 @@ export const DateWidget_defaultProps = {
43
47
  needErrorOnBlur: false,
44
48
  isEditable: false,
45
49
  iconOnHover: false,
46
- is24Hour: false
50
+ is24Hour: false,
51
+ weekStartDay: 0,
52
+ holidays: [0]
47
53
  };
48
54
  export const YearView_defaultProps = {
49
55
  dataId: 'dateContainer',
@@ -13,7 +13,9 @@ export const CalendarView_propTypes = {
13
13
  todayDate: PropTypes.string,
14
14
  todayYear: PropTypes.string,
15
15
  startDate: PropTypes.string,
16
- endDate: PropTypes.string
16
+ endDate: PropTypes.string,
17
+ weekStartDay: PropTypes.oneOf([0, 1, 2, 3, 4, 5, 6]),
18
+ holidays: PropTypes.arrayOf(PropTypes.number)
17
19
  };
18
20
  export const Span_propTypes = {
19
21
  dataId: PropTypes.string,
@@ -79,7 +81,9 @@ export const DateTime_propTypes = {
79
81
  dropBoxPortalId: PropTypes.string,
80
82
  startDate: PropTypes.string,
81
83
  endDate: PropTypes.string,
82
- customProps: PropTypes.object
84
+ customProps: PropTypes.object,
85
+ weekStartDay: PropTypes.oneOf([0, 1, 2, 3, 4, 5, 6]),
86
+ holidays: PropTypes.arrayOf(PropTypes.number)
83
87
  };
84
88
  export const DateWidget_propTypes = {
85
89
  borderColor: PropTypes.oneOf(['transparent', 'default']),
@@ -150,7 +154,9 @@ export const DateWidget_propTypes = {
150
154
  startDate: PropTypes.string,
151
155
  endDate: PropTypes.string,
152
156
  getPopupProps: PropTypes.func,
153
- customProps: PropTypes.object
157
+ customProps: PropTypes.object,
158
+ weekStartDay: PropTypes.oneOf([0, 1, 2, 3, 4, 5, 6]),
159
+ holidays: PropTypes.arrayOf(PropTypes.number)
154
160
  };
155
161
  export const YearView_propTypes = {
156
162
  onSelectMonth: PropTypes.func,
@@ -177,7 +183,8 @@ export const DateTimePopupHeader_propTypes = {
177
183
  };
178
184
  export const DaysRow_propTypes = {
179
185
  dayNames: PropTypes.array,
180
- dayNamesShort: PropTypes.object
186
+ dayNamesShort: PropTypes.object,
187
+ holidays: PropTypes.arrayOf(PropTypes.number)
181
188
  };
182
189
  export const Time_propTypes = {
183
190
  timeText: PropTypes.string,
@@ -191,7 +191,13 @@ export class MultiSelectComponent extends React.Component {
191
191
  } //Need To MultiselectNew Component
192
192
 
193
193
 
194
- this.handleComponentDidUpdate(prevProps, prevState);
194
+ this.handleComponentDidUpdate(prevProps, prevState); // if (isPopupOpen && isNextOptions && prevProps.selectedOptions.length !== selectedOptions.length) {
195
+ // let { scrollHeight, clientHeight } = this.suggestionContainer || {};
196
+ // let isElementScrollable = scrollHeight > clientHeight;
197
+ // if (!isElementScrollable) {
198
+ // this.handleScrollFuncCall();
199
+ // }
200
+ // }
195
201
  }
196
202
 
197
203
  componentWillUnmount() {
@@ -596,6 +596,10 @@ export class GroupSelectComponent extends PureComponent {
596
596
  emptyText: i18nKeys.emptyText || emptyMessage,
597
597
  searchEmptyText: i18nKeys.searchEmptyText || searchEmptyMessage
598
598
  });
599
+ const {
600
+ TextBoxIcon_i18n,
601
+ TextBox_ally_label = 'Click to select options'
602
+ } = i18nKeys;
599
603
  let {
600
604
  selectedId,
601
605
  hoverIndex,
@@ -655,6 +659,7 @@ export class GroupSelectComponent extends PureComponent {
655
659
  ariaActivedescendant: selectedId,
656
660
  ariaOwns: setAriaId
657
661
  },
662
+ i18nKeys: TextBoxIcon_i18n,
658
663
  isFocus: isPopupReady,
659
664
  autoComplete: false
660
665
  }, /*#__PURE__*/React.createElement(Container, {
@@ -3,7 +3,7 @@ import { defaultProps } from './props/defaultProps';
3
3
  import { propTypes } from './props/propTypes';
4
4
  import cssJSLogic from './css/cssJSLogic';
5
5
  import { mergeStyle } from '@zohodesk/utils';
6
- import defaultStyle from './css/Typography.module.css';
6
+ import defaultStyle from './css/v1_Typography.module.css';
7
7
 
8
8
  const Typography = props => {
9
9
  const {
@@ -7,6 +7,8 @@ exports.propTypes = void 0;
7
7
 
8
8
  var _propTypes = _interopRequireDefault(require("prop-types"));
9
9
 
10
+ var _propTypes2 = require("../../Avatar/props/propTypes");
11
+
10
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
11
13
 
12
14
  var propTypes = {
@@ -32,7 +34,7 @@ var propTypes = {
32
34
  needDefaultBorder: _propTypes["default"].bool,
33
35
  customProps: _propTypes["default"].shape({
34
36
  AvatarTeamProps: _propTypes["default"].object,
35
- AvatarProps: _propTypes["default"].object
37
+ AvatarProps: _propTypes["default"].exact(_propTypes2.propTypes)
36
38
  })
37
39
  };
38
40
  exports.propTypes = propTypes;
@@ -126,16 +126,17 @@ var CheckBox = /*#__PURE__*/function (_React$Component) {
126
126
  role = _a11y$role === void 0 ? 'checkbox' : _a11y$role,
127
127
  _a11y$ariaChecked = a11y.ariaChecked,
128
128
  ariaChecked = _a11y$ariaChecked === void 0 ? checked : _a11y$ariaChecked;
129
+ var isEditable = !(isReadOnly || disabled);
129
130
  return /*#__PURE__*/_react["default"].createElement(_Layout.Container, _extends({
130
131
  dataId: dataId,
131
132
  isCover: false,
132
133
  isInline: text ? false : true,
133
134
  alignBox: "row",
134
135
  align: "vertical",
135
- className: "".concat(_CheckBoxModule["default"].container, " ").concat(accessMode, " ").concat(isReadOnly || disabled ? '' : "".concat(_CheckBoxModule["default"][palette]), " \n ").concat(checked ? "".concat(_CheckBoxModule["default"]["checked".concat(palette)]) : '', " ").concat(customCheckBox),
136
+ className: "".concat(_CheckBoxModule["default"].container, " ").concat(accessMode, " ").concat(!isEditable ? '' : "".concat(_CheckBoxModule["default"][palette]), " \n ").concat(checked ? "".concat(_CheckBoxModule["default"]["checked".concat(palette)]) : '', " ").concat(customCheckBox),
136
137
  "data-title": toolTip,
137
- onClick: isReadOnly || disabled ? null : this.onChange,
138
- tabIndex: isReadOnly || disabled || ariaHidden ? '-1' : '0',
138
+ onClick: !isEditable ? null : this.onChange,
139
+ tabIndex: !isEditable || ariaHidden ? '-1' : '0',
139
140
  "aria-checked": ariaChecked,
140
141
  eleRef: this.handleGetContainerRef,
141
142
  role: role,
@@ -144,7 +145,7 @@ var CheckBox = /*#__PURE__*/function (_React$Component) {
144
145
  "aria-hidden": ariaHidden,
145
146
  "data-selector-id": dataSelectorId || id
146
147
  }, CheckBoxProps), /*#__PURE__*/_react["default"].createElement(_Layout.Box, {
147
- className: "".concat(_CheckBoxModule["default"].boxContainer, " ").concat(_CheckBoxModule["default"][size], " ").concat(customCBoxSize, " ").concat(isFilled ? _CheckBoxModule["default"].filled : '')
148
+ className: "".concat(_CheckBoxModule["default"].boxContainer, " ").concat(_CheckBoxModule["default"][size], " ").concat(customCBoxSize, " ").concat(isFilled ? _CheckBoxModule["default"].filled : '', " ").concat(!isEditable ? "".concat(_CheckBoxModule["default"]["disabled"]) : '')
148
149
  }, /*#__PURE__*/_react["default"].createElement("input", {
149
150
  type: "hidden",
150
151
  id: id,
@@ -97,10 +97,10 @@
97
97
  margin-right: var(--zd_size6) ;
98
98
  }
99
99
 
100
- .checkedprimary,
100
+ .checkedprimary,
101
101
  .checkeddanger {
102
102
  stroke: var(--checkbox_checked_stroke_color);
103
- }
103
+ }
104
104
  .primary:hover
105
105
  /* .primary:focus */
106
106
  {
@@ -138,6 +138,9 @@
138
138
  .checkeddangerLabel {
139
139
  --checkbox_checked_active_color: var(--zdt_checkbox_danger_stroke_border);
140
140
  }
141
+ .disabled {
142
+ opacity: 0.7
143
+ }
141
144
  @keyframes tickAnimate {
142
145
  0% {
143
146
  stroke-dashoffset: 40;