@hipay/hipay-material-ui 2.1.0 → 2.2.0-RC2

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 (61) hide show
  1. package/HiAlertModal/HiAlertModal.js +32 -7
  2. package/HiAppBar/HiAppBar.js +3 -3
  3. package/HiBreadcrumb/HiBreadcrumb.js +1 -1
  4. package/HiBreadcrumb/HiStepConnector.js +3 -3
  5. package/HiButton/HiButton.js +64 -25
  6. package/HiCell/CellText.js +3 -3
  7. package/HiCheckbox/HiCheckbox.js +3 -3
  8. package/HiChip/HiChipSwitch.js +5 -5
  9. package/HiColoredLabel/HiColoredLabel.js +2 -1
  10. package/HiDatePicker/HiDatePicker.js +1 -1
  11. package/HiDatePicker/Overlays/MonthPickerOverlay.js +3 -3
  12. package/HiDatePicker/Overlays/TimePickerOverlay.js +4 -4
  13. package/HiDatePicker/Overlays/YearPickerOverlay.js +3 -3
  14. package/HiDotsStepper/HiDotsStepper.js +4 -4
  15. package/HiForm/HiAddressField.js +7 -7
  16. package/HiForm/HiEmailField.js +3 -3
  17. package/HiForm/HiFormControl.js +6 -6
  18. package/HiForm/HiInput.js +11 -11
  19. package/HiForm/HiPasswordField.js +3 -3
  20. package/HiForm/HiSearchField.js +5 -5
  21. package/HiForm/HiTextField.js +5 -5
  22. package/HiIcon/HiIcon.js +9 -1
  23. package/HiMap/HiMap.js +6 -6
  24. package/HiMap/HiMapExpand.js +4 -4
  25. package/HiNotice/HiKPI.js +12 -5
  26. package/HiNotice/HiKPINotice.js +3 -2
  27. package/HiSelect/HiDynamicSelect.js +7 -7
  28. package/HiSelect/HiNestedSelect.js +12 -12
  29. package/HiSelect/HiNestedSelectContent.js +9 -9
  30. package/HiSelect/HiSelect.js +7 -7
  31. package/HiSelect/HiSelectContent.js +13 -13
  32. package/HiSelect/HiSelectInput.js +7 -7
  33. package/HiSelectableList/HiSelectableListItem.js +5 -4
  34. package/HiTable/HiTable.js +3 -3
  35. package/HiTable/HiTableRow.js +3 -3
  36. package/es/HiAlertModal/HiAlertModal.js +26 -4
  37. package/es/HiBreadcrumb/HiBreadcrumb.js +1 -1
  38. package/es/HiButton/HiButton.js +57 -41
  39. package/es/HiColoredLabel/HiColoredLabel.js +2 -1
  40. package/es/HiDatePicker/HiDatePicker.js +1 -1
  41. package/es/HiIcon/HiIcon.js +9 -1
  42. package/es/HiNotice/HiKPI.js +9 -2
  43. package/es/HiNotice/HiKPINotice.js +3 -2
  44. package/es/HiSelectableList/HiSelectableListItem.js +1 -0
  45. package/index.es.js +1 -1
  46. package/index.js +1 -1
  47. package/package.json +1 -1
  48. package/HiDatePicker/Caption.spec.js +0 -88
  49. package/HiDatePicker/ListPicker.spec.js +0 -67
  50. package/HiDatePicker/NavBar.spec.js +0 -55
  51. package/HiDatePicker/Overlays/MonthPickerOverlay.spec.js +0 -74
  52. package/HiDatePicker/Overlays/Overlay.spec.js +0 -34
  53. package/HiDatePicker/Overlays/TimePickerOverlay.spec.js +0 -71
  54. package/HiDatePicker/Overlays/YearPickerOverlay.spec.js +0 -127
  55. package/es/HiDatePicker/Caption.spec.js +0 -68
  56. package/es/HiDatePicker/ListPicker.spec.js +0 -50
  57. package/es/HiDatePicker/NavBar.spec.js +0 -39
  58. package/es/HiDatePicker/Overlays/MonthPickerOverlay.spec.js +0 -53
  59. package/es/HiDatePicker/Overlays/Overlay.spec.js +0 -25
  60. package/es/HiDatePicker/Overlays/TimePickerOverlay.spec.js +0 -53
  61. package/es/HiDatePicker/Overlays/YearPickerOverlay.spec.js +0 -92
@@ -67,11 +67,24 @@ class HiAlertModal extends React.PureComponent {
67
67
  }
68
68
  };
69
69
 
70
+ this.submitButtonRef = React.createRef();
71
+ this.cancelButtonRef = React.createRef();
70
72
  this.handleOnClose = this.handleOnClose.bind(this);
73
+ this.handleOnEntered = this.handleOnEntered.bind(this);
71
74
  } // Appelé si clic en dehors de la pop up
72
75
 
73
76
 
74
- // Render
77
+ handleOnEntered() {
78
+ if (this.props.labelSubmitButton) {
79
+ this.submitButtonRef.current.focus();
80
+ this.submitActionsRef.focusVisible();
81
+ } else if (this.props.labelCancelButton) {
82
+ this.cancelButtonRef.current.focus();
83
+ this.cancelActionsRef.focusVisible();
84
+ }
85
+ } // Render
86
+
87
+
75
88
  render() {
76
89
  const _this$props = this.props,
77
90
  {
@@ -105,6 +118,7 @@ class HiAlertModal extends React.PureComponent {
105
118
  return React.createElement(Dialog, _extends({
106
119
  open: open,
107
120
  onClose: this.handleOnClose,
121
+ onEntered: this.handleOnEntered,
108
122
  classes: {
109
123
  root: classes.classDialogRoot,
110
124
  paper: classes.classDialogPaper
@@ -112,7 +126,7 @@ class HiAlertModal extends React.PureComponent {
112
126
  }, props), backgroundIcon && React.createElement("div", {
113
127
  className: classes.classBackgroundIcon
114
128
  }, React.createElement(HiIcon, {
115
- color: theme.palette.background2,
129
+ color: "inherit",
116
130
  icon: backgroundIcon,
117
131
  size: iconSize
118
132
  })), title && React.createElement(DialogTitle, {
@@ -133,13 +147,21 @@ class HiAlertModal extends React.PureComponent {
133
147
  root: classes.classCancelButton
134
148
  },
135
149
  onClick: onCancelClick,
136
- color: cancelColor
150
+ color: cancelColor,
151
+ innerRef: this.cancelButtonRef,
152
+ action: actions => {
153
+ this.cancelActionsRef = actions;
154
+ }
137
155
  }, labelCancelButton), labelSubmitButton && React.createElement(HiButton, {
138
156
  classes: {
139
157
  root: classes.classSubmitButton
140
158
  },
141
159
  onClick: onSubmitClick,
142
- color: submitColor
160
+ color: submitColor,
161
+ innerRef: this.submitButtonRef,
162
+ action: actions => {
163
+ this.submitActionsRef = actions;
164
+ }
143
165
  }, labelSubmitButton)));
144
166
  }
145
167
 
@@ -65,7 +65,7 @@ HiBreadcrumb.propTypes = process.env.NODE_ENV !== "production" ? {
65
65
  /**
66
66
  * Custom styles for component.
67
67
  */
68
- classes: PropTypes.object.isRequired,
68
+ classes: PropTypes.object,
69
69
 
70
70
  /**
71
71
  * Disable navigation in steps
@@ -169,46 +169,52 @@ export const styles = theme => ({
169
169
  disabled: {}
170
170
  });
171
171
 
172
- function HiButton(props) {
173
- const {
174
- children,
175
- classes,
176
- className,
177
- color,
178
- variant,
179
- disabled
180
- } = props,
181
- other = _objectWithoutProperties(props, ["children", "classes", "className", "color", "variant", "disabled"]);
182
-
183
- const hcolor = ['positive', 'negative', 'middle', 'neutral'].includes(color) ? 'inherit' : color;
184
- const fab = variant === 'fab' || variant === 'extendedFab';
185
- const contained = variant === 'contained' || variant === 'raised';
186
- const buttonClassNames = classNames(classes.root, {
187
- [classes.raisedDisabled]: variant === 'raised' && disabled,
188
- [classes.flatPositive]: (variant === 'text' || variant === 'flat' || variant === 'outlined') && color === 'positive',
189
- [classes.flatNegative]: (variant === 'text' || variant === 'flat' || variant === 'outlined') && color === 'negative',
190
- [classes.flatMiddle]: (variant === 'text' || variant === 'flat' || variant === 'outlined') && color === 'middle',
191
- [classes.flatNeutral]: (variant === 'text' || variant === 'flat' || variant === 'outlined') && (color === 'default' || color === 'neutral'),
192
- [classes.containedPrimary]: (contained || fab) && color === 'primary',
193
- [classes.containedPositive]: (contained || fab) && color === 'positive',
194
- [classes.containedNegative]: (contained || fab) && color === 'negative',
195
- [classes.containedMiddle]: (contained || fab) && color === 'middle',
196
- [classes.containedNeutral]: (contained || fab) && (color === 'default' || color === 'neutral'),
197
- [classes.outlinedPositive]: variant === 'outlined' && color === 'positive',
198
- [classes.outlinedNegative]: variant === 'outlined' && color === 'negative',
199
- [classes.outlinedMiddle]: variant === 'outlined' && color === 'middle',
200
- [classes.outlinedNeutral]: variant === 'outlined' && (color === 'default' || color === 'neutral'),
201
- [classes.disabled]: disabled
202
- });
203
- return React.createElement(Button, _extends({
204
- className: className,
205
- classes: {
206
- root: buttonClassNames
207
- },
208
- color: hcolor,
209
- variant: variant,
210
- disabled: disabled
211
- }, other), children);
172
+ class HiButton extends React.Component {
173
+ render() {
174
+ const _this$props = this.props,
175
+ {
176
+ children,
177
+ classes,
178
+ className,
179
+ color,
180
+ variant,
181
+ disabled,
182
+ buttonRef
183
+ } = _this$props,
184
+ other = _objectWithoutProperties(_this$props, ["children", "classes", "className", "color", "variant", "disabled", "buttonRef"]);
185
+
186
+ const hcolor = ['positive', 'negative', 'middle', 'neutral'].includes(color) ? 'inherit' : color;
187
+ const fab = variant === 'fab' || variant === 'extendedFab';
188
+ const contained = variant === 'contained' || variant === 'raised';
189
+ const buttonClassNames = classNames(classes.root, {
190
+ [classes.raisedDisabled]: variant === 'raised' && disabled,
191
+ [classes.flatPositive]: (variant === 'text' || variant === 'flat' || variant === 'outlined') && color === 'positive',
192
+ [classes.flatNegative]: (variant === 'text' || variant === 'flat' || variant === 'outlined') && color === 'negative',
193
+ [classes.flatMiddle]: (variant === 'text' || variant === 'flat' || variant === 'outlined') && color === 'middle',
194
+ [classes.flatNeutral]: (variant === 'text' || variant === 'flat' || variant === 'outlined') && (color === 'default' || color === 'neutral'),
195
+ [classes.containedPrimary]: (contained || fab) && color === 'primary',
196
+ [classes.containedPositive]: (contained || fab) && color === 'positive',
197
+ [classes.containedNegative]: (contained || fab) && color === 'negative',
198
+ [classes.containedMiddle]: (contained || fab) && color === 'middle',
199
+ [classes.containedNeutral]: (contained || fab) && (color === 'default' || color === 'neutral'),
200
+ [classes.outlinedPositive]: variant === 'outlined' && color === 'positive',
201
+ [classes.outlinedNegative]: variant === 'outlined' && color === 'negative',
202
+ [classes.outlinedMiddle]: variant === 'outlined' && color === 'middle',
203
+ [classes.outlinedNeutral]: variant === 'outlined' && (color === 'default' || color === 'neutral'),
204
+ [classes.disabled]: disabled
205
+ });
206
+ return React.createElement(Button, _extends({
207
+ className: className,
208
+ classes: {
209
+ root: buttonClassNames
210
+ },
211
+ color: hcolor,
212
+ variant: variant,
213
+ disabled: disabled,
214
+ buttonRef: buttonRef
215
+ }, other), children);
216
+ }
217
+
212
218
  }
213
219
 
214
220
  HiButton.propTypes = process.env.NODE_ENV !== "production" ? {
@@ -236,7 +242,17 @@ HiButton.defaultProps = {
236
242
  color: 'neutral',
237
243
  variant: 'text'
238
244
  };
245
+
246
+ function forwardRef(props, ref) {
247
+ return React.createElement(HiButton, _extends({}, props, {
248
+ buttonRef: ref
249
+ }));
250
+ }
251
+
252
+ const name = HiButton.displayName || HiButton.name;
253
+ forwardRef.displayName = name;
254
+ const HiButtonForwardRef = React.forwardRef(forwardRef);
239
255
  export default withStyles(styles, {
240
256
  hiComponent: true,
241
257
  name: 'HmuiHiButton'
242
- })(HiButton);
258
+ })(HiButtonForwardRef);
@@ -118,7 +118,7 @@ function HiColoredLabel(props) {
118
118
  className,
119
119
  fontSize,
120
120
  label,
121
- color,
121
+ color: propsColor,
122
122
  active,
123
123
  outlined,
124
124
  fontWeight,
@@ -127,6 +127,7 @@ function HiColoredLabel(props) {
127
127
  } = props,
128
128
  other = _objectWithoutProperties(props, ["classes", "className", "fontSize", "label", "color", "active", "outlined", "fontWeight", "style", "theme"]);
129
129
 
130
+ const color = propsColor || 'primary';
130
131
  const isHiColor = ['primary', 'secondary', 'positive', 'negative', 'middle', 'neutral'].includes(color);
131
132
  const isHexColor = !isHiColor && /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(color);
132
133
  return React.createElement("div", _extends({
@@ -48,7 +48,7 @@ class HiDatePicker extends React.Component {
48
48
  this.props.onChange(undefined);
49
49
  } else {
50
50
  // Keep Time if set
51
- if (this.props.enableTime && day !== undefined) {
51
+ if (this.props.enableTime) {
52
52
  if (this.props.value) {
53
53
  day.setHours(this.props.value.getHours(), this.props.value.getMinutes());
54
54
  } else {
@@ -83,9 +83,17 @@ function HiIcon(props) {
83
83
 
84
84
  if (iconName.indexOf('hi_') === 0) {
85
85
  const IconName = hiSvgIcons[capitalize(camelize(iconName))];
86
+ let colorValue = color;
87
+
88
+ if (color === "inherit") {
89
+ colorValue = "currentColor";
90
+ } else if (isHiColor || color === 'primary' || color === 'secondary') {
91
+ colorValue = theme.palette[color].main;
92
+ }
93
+
86
94
  return React.createElement(IconName, _extends({
87
95
  className: classNames(classes.root, className),
88
- color: isHiColor || color === 'primary' || color === 'secondary' ? theme.palette[color].main : color,
96
+ color: colorValue,
89
97
  width: size,
90
98
  height: size
91
99
  }, other));
@@ -105,10 +105,11 @@ class HiKPI extends React.Component {
105
105
  color,
106
106
  id,
107
107
  tooltip,
108
- disable
108
+ disable,
109
+ buttonId
109
110
  } = this.props;
110
111
  const rootclass = classNames(classes.root, {
111
- [classes.inherit]: color === 'inherit' && !disable,
112
+ [classes.inherit]: color === 'inherit',
112
113
  [classes.warning]: color === 'warning' && !disable,
113
114
  [classes.error]: color === 'error' && !disable,
114
115
  [classes.positive]: color === 'positive' && !disable,
@@ -117,6 +118,7 @@ class HiKPI extends React.Component {
117
118
  [classes.rootDisable]: disable
118
119
  });
119
120
  return React.createElement(ButtonBase, {
121
+ id: buttonId,
120
122
  className: rootclass,
121
123
  onClick: !disable ? this.handleClick(id) : undefined,
122
124
  title: tooltip,
@@ -156,6 +158,11 @@ HiKPI.propTypes = process.env.NODE_ENV !== "production" ? {
156
158
  */
157
159
  bodyMinify: PropTypes.any,
158
160
 
161
+ /**
162
+ * Id of the button
163
+ */
164
+ buttonId: PropTypes.string,
165
+
159
166
  /**
160
167
  * Fonction appelée au clic sur le KPI
161
168
  */
@@ -9,7 +9,7 @@ const styles = () => ({
9
9
  width: '100%',
10
10
  display: 'flex',
11
11
  flexWrap: 'wrap',
12
- justifyContent: 'center'
12
+ justifyContent: 'left'
13
13
  }
14
14
  });
15
15
 
@@ -37,7 +37,8 @@ const HiKPINotice = ({
37
37
  onClick: () => onClickOnKPI(key),
38
38
  active: activeKpi === key,
39
39
  minify: minify,
40
- disable: kpi.disable
40
+ disable: kpi.disable,
41
+ buttonId: kpi.buttonId
41
42
  });
42
43
  }));
43
44
  };
@@ -179,6 +179,7 @@ class HiSelectableListItem extends React.PureComponent {
179
179
 
180
180
  if (key === 'space' || key === 'enter') {
181
181
  event.preventDefault();
182
+ event.stopPropagation();
182
183
 
183
184
  if (item) {
184
185
  this.props.onSelect(null, item);
package/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license HiPay-Material-UI v2.1.0
1
+ /** @license HiPay-Material-UI v2.2.0-RC2
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license HiPay-Material-UI v2.1.0
1
+ /** @license HiPay-Material-UI v2.2.0-RC2
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@hipay/hipay-material-ui",
3
3
  "private": false,
4
4
  "author": "HiPay PSYCHE Team",
5
- "version": "2.1.0",
5
+ "version": "2.2.0-RC2",
6
6
  "description": "React components that implement Google's Material Design.",
7
7
  "keywords": [
8
8
  "react",
@@ -1,88 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- var _chai = require("chai");
8
-
9
- var _sinon = require("sinon");
10
-
11
- var _moment = _interopRequireDefault(require("react-day-picker/moment"));
12
-
13
- var _testUtils = require("../test-utils");
14
-
15
- var _Caption = _interopRequireDefault(require("./Caption"));
16
-
17
- describe('<Caption />', function () {
18
- var shallow;
19
- var mount;
20
- var classes;
21
- var wrapper;
22
- var date = new Date();
23
-
24
- var _ref = _react.default.createElement(_Caption.default, {
25
- date: date,
26
- localeUtils: _moment.default
27
- });
28
-
29
- before(function () {
30
- shallow = (0, _testUtils.createShallow)({
31
- untilSelector: 'Badge'
32
- });
33
- mount = (0, _testUtils.createMount)();
34
- classes = (0, _testUtils.getClasses)(_ref);
35
- });
36
- after(function () {
37
- mount.cleanUp();
38
- });
39
-
40
- var _ref2 = _react.default.createElement(_Caption.default, {
41
- date: date,
42
- localeUtils: _moment.default
43
- });
44
-
45
- describe('text with leftIcon', function () {
46
- before(function () {
47
- wrapper = shallow(_ref2);
48
- });
49
- it('should render a div containing two spans', function () {
50
- _chai.assert.strictEqual(wrapper.name(), 'div');
51
-
52
- _chai.assert.strictEqual(wrapper.childAt(0).is('span'), true, 'should be a span');
53
-
54
- _chai.assert.strictEqual(wrapper.childAt(2).is('span'), true, 'should be a span');
55
- });
56
- it('should merge user classes & spread custom props to the root node', function () {
57
- _chai.assert.strictEqual(wrapper.hasClass(classes.caption), true);
58
- });
59
- });
60
- describe('mount', function () {
61
- it('should call onDelete when clicking', function () {
62
- var handleClickMonth = (0, _sinon.spy)();
63
- var handleClickYear = (0, _sinon.spy)();
64
- wrapper = mount(_react.default.createElement(_Caption.default, {
65
- date: date,
66
- localeUtils: _moment.default,
67
- onMonthClick: handleClickMonth,
68
- onYearClick: handleClickYear
69
- }));
70
-
71
- _chai.assert.strictEqual(wrapper.find('span').length, 2, 'should have 2 spans');
72
-
73
- wrapper.find('span').at(0).simulate('click');
74
-
75
- _chai.assert.strictEqual(handleClickMonth.callCount, 1, 'should have been called once handleClickMonth');
76
-
77
- _chai.assert.strictEqual(handleClickYear.callCount, 0, 'should not have been called handleClickYear');
78
-
79
- wrapper.find('span').at(1).simulate('click');
80
-
81
- _chai.assert.strictEqual(handleClickMonth.callCount, 1, 'should not have been called twice handleClickMonth');
82
-
83
- _chai.assert.strictEqual(handleClickYear.callCount, 1, 'should have been called once handleClickYear');
84
-
85
- wrapper.unmount();
86
- });
87
- });
88
- });
@@ -1,67 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- var _chai = require("chai");
8
-
9
- var _sinon = require("sinon");
10
-
11
- var _Menu = require("@material-ui/core/Menu");
12
-
13
- var _index = require("../test-utils/index");
14
-
15
- var _ListPicker = _interopRequireDefault(require("./ListPicker"));
16
-
17
- describe('<ListPicker />', function () {
18
- var shallow;
19
- var mount;
20
- var itemList;
21
- before(function () {
22
- shallow = (0, _index.createShallow)({
23
- dive: true
24
- });
25
- mount = (0, _index.createMount)();
26
- itemList = [1, 2, 3, 4];
27
- });
28
- after(function () {
29
- mount.cleanUp();
30
- });
31
- describe('shallow', function () {
32
- it('renders a Scrollable MenuList', function () {
33
- var handlerClick = (0, _sinon.spy)();
34
- var wrapper = shallow(_react.default.createElement(_ListPicker.default, {
35
- itemList: itemList,
36
- onItemClick: handlerClick,
37
- selectedItem: 2,
38
- initAtMiddleScroll: true
39
- }));
40
-
41
- _chai.assert.strictEqual(wrapper.name(), 'Scrollbars', 'should render a Scrollbars container');
42
-
43
- _chai.assert.strictEqual(wrapper.dive().find(_Menu.MenuList).length, 1, 'should include a MenuList');
44
-
45
- _chai.assert.strictEqual(wrapper.dive().find(_Menu.MenuItem).length, 4, 'should include 4 MenuItem'); // Click on [4] item
46
-
47
-
48
- wrapper.dive().find(_Menu.MenuItem).at(3).props().onClick();
49
-
50
- _chai.assert.strictEqual(handlerClick.calledOnce, true, 'should call onChange callback once');
51
-
52
- _chai.assert.strictEqual(handlerClick.calledWith(4), true, 'should call onChange callback with selected item');
53
- });
54
- });
55
- describe('mount', function () {
56
- it('should mount', function () {
57
- var wrapper = mount(_react.default.createElement(_ListPicker.default, {
58
- itemList: itemList,
59
- onItemClick: function onItemClick() {},
60
- selectedItem: 2,
61
- initAtMiddleScroll: true
62
- }));
63
-
64
- _chai.assert.strictEqual(wrapper.name(), 'WithStyles(ListPicker)');
65
- });
66
- });
67
- });
@@ -1,55 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- var _chai = require("chai");
8
-
9
- var _sinon = require("sinon");
10
-
11
- var _moment = _interopRequireDefault(require("react-day-picker/moment"));
12
-
13
- var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton"));
14
-
15
- var _index = require("../test-utils/index");
16
-
17
- var _NavBar = _interopRequireDefault(require("./NavBar"));
18
-
19
- describe('<NavBar />', function () {
20
- var shallow;
21
- before(function () {
22
- shallow = (0, _index.createShallow)({
23
- dive: true
24
- });
25
- });
26
- it('renders a Scrollable MenuList', function () {
27
- var handlerNextClick = (0, _sinon.spy)();
28
- var handlerPreviousClick = (0, _sinon.spy)();
29
- var handlerClockClick = (0, _sinon.spy)();
30
- var nextMonth = new Date(2018, 3, 1);
31
- var prevMonth = new Date(2018, 1, 1);
32
- var wrapper = shallow(_react.default.createElement(_NavBar.default, {
33
- nextMonth: nextMonth,
34
- previousMonth: prevMonth,
35
- onNextClick: handlerNextClick,
36
- onPreviousClick: handlerPreviousClick,
37
- onClockClick: handlerClockClick,
38
- showClockButton: true,
39
- localeUtils: _moment.default
40
- }));
41
-
42
- _chai.assert.strictEqual(wrapper.find(_IconButton.default).length, 3, 'should include 3 IconButtons'); // Click on [4] item
43
-
44
-
45
- wrapper.find(_IconButton.default).at(0).props().onClick();
46
- wrapper.find(_IconButton.default).at(1).props().onClick();
47
- wrapper.find(_IconButton.default).at(2).props().onClick();
48
-
49
- _chai.assert.strictEqual(handlerPreviousClick.calledOnce, true, 'should call onPreviousClick callback once');
50
-
51
- _chai.assert.strictEqual(handlerNextClick.calledOnce, true, 'should call onNextClick callback once');
52
-
53
- _chai.assert.strictEqual(handlerClockClick.calledOnce, true, 'should call onClockClick callback once');
54
- });
55
- });
@@ -1,74 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- var _chai = require("chai");
8
-
9
- var _sinon = require("sinon");
10
-
11
- var _moment = _interopRequireDefault(require("react-day-picker/moment"));
12
-
13
- var _index = require("../../test-utils/index");
14
-
15
- var _MonthPickerOverlay = _interopRequireDefault(require("./MonthPickerOverlay"));
16
-
17
- var _ListPicker = _interopRequireDefault(require("../ListPicker"));
18
-
19
- /* eslint-disable */
20
- var _ref = _react.default.createElement("span", null, "children");
21
-
22
- var _ref2 = _react.default.createElement("span", null, "children");
23
-
24
- describe('<MonthPickerOverlay />', function () {
25
- var shallow;
26
- before(function () {
27
- shallow = (0, _index.createShallow)({
28
- dive: true
29
- });
30
- });
31
- it('renders a functional month ListPicker', function () {
32
- var handlerChange = (0, _sinon.spy)();
33
- var aprilLabel = 'April';
34
- var januaryDate = new Date(1992, 0, 9);
35
- var aprilDate = new Date(1992, 3, 9);
36
- var wrapper = shallow(_react.default.createElement(_MonthPickerOverlay.default, {
37
- value: januaryDate,
38
- onChange: handlerChange,
39
- localeUtils: _moment.default
40
- }, _ref));
41
-
42
- _chai.assert.strictEqual(wrapper.name(), 'CustomOverlayLayout', 'should render a CustomOverlayLayout');
43
-
44
- _chai.assert.strictEqual(wrapper.dive().find(_ListPicker.default).length, 1, 'should include a ListPicker');
45
-
46
- wrapper.dive().find(_ListPicker.default).props().onItemClick(aprilLabel);
47
-
48
- _chai.assert.strictEqual(handlerChange.calledOnce, true, 'should call onChange callback once');
49
-
50
- _chai.assert.strictEqual(handlerChange.calledWith(aprilDate), true, 'should call onChange callback with updated month');
51
- });
52
- it('check months', function () {
53
- var handlerChange = (0, _sinon.spy)();
54
- var januaryDate = new Date(1992, 0, 9);
55
- var localeUtils = {
56
- getMonths: function getMonths() {
57
- return ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December', 'Other'];
58
- }
59
- };
60
- var wrapper = shallow(_react.default.createElement(_MonthPickerOverlay.default, {
61
- value: januaryDate,
62
- onChange: handlerChange,
63
- localeUtils: localeUtils
64
- }, _ref2));
65
-
66
- _chai.assert.strictEqual(wrapper.name(), 'CustomOverlayLayout', 'should render a CustomOverlayLayout');
67
-
68
- _chai.assert.strictEqual(wrapper.dive().find(_ListPicker.default).length, 1, 'should include a ListPicker');
69
-
70
- wrapper.dive().find(_ListPicker.default).props().onItemClick('Other');
71
-
72
- _chai.assert.strictEqual(handlerChange.callCount, 0, 'should not call onChange with month index >= 12');
73
- });
74
- });
@@ -1,34 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- var _chai = require("chai");
8
-
9
- var _index = require("../../test-utils/index");
10
-
11
- var _Overlay = _interopRequireDefault(require("./Overlay"));
12
-
13
- /* eslint-disable */
14
- var _ref = _react.default.createElement(_Overlay.default, null);
15
-
16
- var _ref2 = _react.default.createElement(_Overlay.default, null, _react.default.createElement("span", null, "children"));
17
-
18
- describe('<Overlay />', function () {
19
- var shallow;
20
- var classes;
21
- before(function () {
22
- shallow = (0, _index.createShallow)({
23
- dive: true
24
- });
25
- classes = (0, _index.getClasses)(_ref);
26
- });
27
- it('renders a div containing a DayPickerInput', function () {
28
- var wrapper = shallow(_ref2);
29
-
30
- _chai.assert.strictEqual(wrapper.dive().name(), 'Paper', 'should render a Paper');
31
-
32
- _chai.assert.strictEqual(wrapper.dive().hasClass(classes.paper), true, 'should render a Paper with paper class');
33
- });
34
- });