@hipay/hipay-material-ui 2.0.0-beta.39 → 2.0.0-beta.41

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.
@@ -162,7 +162,7 @@ function (_React$Component) {
162
162
 
163
163
  HiCheckbox.defaultProps = {
164
164
  checked: false,
165
- color: 'default',
165
+ color: 'inherit',
166
166
  size: 20,
167
167
  icon: 'check_box_outline_blank'
168
168
  };
@@ -185,7 +185,7 @@ HiCheckbox.propTypes = process.env.NODE_ENV !== "production" ? {
185
185
  /**
186
186
  * The color of the component. It supports those theme colors that make sense for this component.
187
187
  */
188
- color: _propTypes.default.oneOf(['default', 'primary', 'secondary', 'positive', 'negative', 'middle', 'neutral']),
188
+ color: _propTypes.default.oneOf(['inherit', 'primary', 'secondary', 'positive', 'negative', 'middle', 'neutral']),
189
189
 
190
190
  /**
191
191
  * icon à afficher quand le composant est non coché.
package/HiForm/HiInput.js CHANGED
@@ -136,6 +136,10 @@ var styles = function styles(theme) {
136
136
  width: 40,
137
137
  display: 'inline-block'
138
138
  },
139
+ eraseButtonLabel: {
140
+ position: 'relative',
141
+ top: -2
142
+ },
139
143
  disabled: {
140
144
  borderBottom: 'none'
141
145
  },
@@ -334,6 +338,9 @@ function (_React$PureComponent) {
334
338
 
335
339
  var eraseIcon = !multiline && onReset && focused && !disabled && value.length > 0 && _react.default.createElement(_HiIconButton.default, {
336
340
  className: classes.eraseButton,
341
+ classes: {
342
+ label: classes.eraseButtonLabel
343
+ },
337
344
  onClick: this.handleReset,
338
345
  onBlur: this.handleBlur
339
346
  }, _ref);
package/HiIcon/HiIcon.js CHANGED
@@ -89,7 +89,7 @@ function HiIcon(props) {
89
89
 
90
90
  if (iconName.indexOf('fa-') === 0) {
91
91
  return _react.default.createElement("i", (0, _extends2.default)({
92
- className: (0, _classnames.default)('fa', iconName, classes.root, (0, _defineProperty2.default)({}, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'inherit'), className),
92
+ className: (0, _classnames.default)('fa', iconName, className, classes.root, (0, _defineProperty2.default)({}, classes["color".concat((0, _helpers.capitalize)(color))], color !== 'inherit')),
93
93
  style: {
94
94
  fontSize: size
95
95
  }
@@ -28,6 +28,7 @@ var _IconButton = _interopRequireDefault(require("@material-ui/core/IconButton")
28
28
  // @inheritedComponent IconButton
29
29
  var styles = function styles(theme) {
30
30
  return {
31
+ label: {},
31
32
  positive: {
32
33
  color: theme.palette.positive.main,
33
34
  '&:hover': {
@@ -86,7 +87,8 @@ function HiIconButton(props) {
86
87
  return _react.default.createElement(_IconButton.default, (0, _extends2.default)({
87
88
  className: className,
88
89
  classes: {
89
- root: buttonClassNames
90
+ root: buttonClassNames,
91
+ label: classes.label
90
92
  },
91
93
  color: hcolor
92
94
  }, other), children);
@@ -555,6 +555,14 @@ function (_React$PureComponent) {
555
555
  });
556
556
  }
557
557
  }
558
+ }, {
559
+ key: "handleReset",
560
+ value: function handleReset(event) {
561
+ if (this.props.onReset) {
562
+ event.stopPropagation();
563
+ this.props.onReset(event);
564
+ }
565
+ }
558
566
  }, {
559
567
  key: "render",
560
568
  value: function render() {
@@ -751,14 +759,14 @@ function (_React$PureComponent) {
751
759
  onMouseLeave: this.props.onMouseLeave,
752
760
  refElement: function refElement(el) {
753
761
  _this2.selectInputElement = el;
754
- }
762
+ },
763
+ onReset: this.props.onReset
755
764
  }), open && staticPosition ? _react.default.createElement("div", {
756
765
  style: popperStyle
757
766
  }, content) : _react.default.createElement(_Popper.default, {
758
767
  anchorEl: this.inputEl,
759
768
  placement: "bottom-start",
760
769
  open: open,
761
- eventsEnabled: open,
762
770
  className: popperClass,
763
771
  style: popperStyle,
764
772
  disablePortal: true
@@ -930,6 +938,11 @@ HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
930
938
  */
931
939
  onMouseLeave: _propTypes.default.func,
932
940
 
941
+ /**
942
+ * Fonction de callback appelée lorsqu'on vide le champs
943
+ */
944
+ onReset: _propTypes.default.func,
945
+
933
946
  /**
934
947
  * Fonction de callback appelée lorsqu'on écrit dans la barre de recherche
935
948
  * A utiliser pour les selects avec des données dynamiques
@@ -109,7 +109,7 @@ var styles = function styles(theme) {
109
109
  }
110
110
  },
111
111
  disabled: {
112
- color: "".concat(theme.palette.action.disabled),
112
+ color: "".concat(theme.palette.text.disabled),
113
113
  '&:before': {
114
114
  display: 'none'
115
115
  }
@@ -171,26 +171,37 @@ function (_React$PureComponent) {
171
171
  }
172
172
  };
173
173
 
174
+ _this.handleClick = function (event) {
175
+ if ((!_this.resetIcon || !_this.resetIcon.contains(event.target)) && _this.props.onClick) {
176
+ _this.props.onClick(event);
177
+ }
178
+ };
179
+
174
180
  _this.handleKeyDown = _this.handleKeyDown.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
181
+ _this.handleClick = _this.handleClick.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
175
182
  return _this;
176
183
  }
177
184
 
178
185
  (0, _createClass2.default)(SelectInput, [{
179
186
  key: "render",
180
187
  value: function render() {
181
- var _classNames, _classNames2;
188
+ var _classNames,
189
+ _classNames2,
190
+ _this2 = this;
182
191
 
183
192
  var _this$props = this.props,
184
193
  classes = _this$props.classes,
185
194
  noButton = _this$props.noButton,
186
195
  disabled = _this$props.disabled,
187
196
  onClick = _this$props.onClick,
197
+ onReset = _this$props.onReset,
188
198
  value = _this$props.value,
189
199
  open = _this$props.open,
190
200
  focused = _this$props.focused,
191
201
  error = _this$props.error,
192
202
  id = _this$props.id,
193
- refElement = _this$props.refElement; // On utilise classNames pour variabiliser les styles et merge les classes appliquées
203
+ refElement = _this$props.refElement,
204
+ theme = _this$props.theme; // On utilise classNames pour variabiliser les styles et merge les classes appliquées
194
205
 
195
206
  var rootClass = (0, _classnames.default)(classes.root, classes.inkbar, classes.underline, (_classNames = {}, (0, _defineProperty2.default)(_classNames, classes.disabled, disabled), (0, _defineProperty2.default)(_classNames, classes.focused, focused), (0, _defineProperty2.default)(_classNames, classes.error, error && !focused), _classNames));
196
207
  var iconClass = (0, _classnames.default)(classes.icon, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, classes.iconOpen, open), (0, _defineProperty2.default)(_classNames2, classes.iconClose, !open), _classNames2));
@@ -219,7 +230,7 @@ function (_React$PureComponent) {
219
230
  classes: {
220
231
  root: rootClass
221
232
  },
222
- onClick: onClick,
233
+ onClick: this.handleClick,
223
234
  disabled: disabled,
224
235
  onMouseEnter: this.props.onMouseEnter,
225
236
  onMouseLeave: this.props.onMouseLeave,
@@ -231,7 +242,16 @@ function (_React$PureComponent) {
231
242
  }
232
243
  }, _react.default.createElement("span", {
233
244
  className: classes.label
234
- }, value), _react.default.createElement(_HiIcon.default, {
245
+ }, value), onReset && focused && _react.default.createElement("div", {
246
+ ref: function ref(el) {
247
+ _this2.resetIcon = el;
248
+ }
249
+ }, _react.default.createElement(_HiIcon.default, {
250
+ icon: "close",
251
+ size: 24,
252
+ color: theme.palette.neutral.main,
253
+ onClick: onReset
254
+ })), _react.default.createElement(_HiIcon.default, {
235
255
  className: iconClass,
236
256
  icon: "arrow_drop_down"
237
257
  }));
@@ -305,6 +325,11 @@ SelectInput.propTypes = process.env.NODE_ENV !== "production" ? {
305
325
  */
306
326
  onMouseLeave: _propTypes.default.func,
307
327
 
328
+ /**
329
+ * Fonction de callback appelée lorsqu'on vide le champs
330
+ */
331
+ onReset: _propTypes.default.func,
332
+
308
333
  /**
309
334
  * Fonction de callback à la pression de la touche "Entrée"
310
335
  */
@@ -328,7 +353,8 @@ SelectInput.propTypes = process.env.NODE_ENV !== "production" ? {
328
353
 
329
354
  var _default = (0, _styles.withStyles)(styles, {
330
355
  hiComponent: true,
331
- name: 'HmuiSelectInput'
356
+ name: 'HmuiSelectInput',
357
+ withTheme: true
332
358
  })(SelectInput);
333
359
 
334
360
  exports.default = _default;
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
+
16
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
23
+
24
+ var _react = _interopRequireDefault(require("react"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _HiFormControl = _interopRequireDefault(require("../HiForm/HiFormControl"));
29
+
30
+ var _HiDynamicSelect = _interopRequireDefault(require("./HiDynamicSelect"));
31
+
32
+ // @inheritedComponent HiDynamicSelect
33
+
34
+ /**
35
+ * Champs input pour formulaire
36
+ */
37
+ var HiDynamicSelectField =
38
+ /*#__PURE__*/
39
+ function (_React$PureComponent) {
40
+ (0, _inherits2.default)(HiDynamicSelectField, _React$PureComponent);
41
+
42
+ function HiDynamicSelectField() {
43
+ (0, _classCallCheck2.default)(this, HiDynamicSelectField);
44
+ return (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(HiDynamicSelectField).apply(this, arguments));
45
+ }
46
+
47
+ (0, _createClass2.default)(HiDynamicSelectField, [{
48
+ key: "render",
49
+ value: function render() {
50
+ var _this$props = this.props,
51
+ label = _this$props.label,
52
+ required = _this$props.required,
53
+ disabled = _this$props.disabled,
54
+ error = _this$props.error,
55
+ errorText = _this$props.errorText,
56
+ helperText = _this$props.helperText,
57
+ helperIcon = _this$props.helperIcon,
58
+ id = _this$props.id,
59
+ name = _this$props.name,
60
+ value = _this$props.value,
61
+ options = _this$props.options,
62
+ type = _this$props.type,
63
+ multiple = _this$props.multiple,
64
+ iconAll = _this$props.iconAll,
65
+ checkbox = _this$props.checkbox,
66
+ searchable = _this$props.searchable,
67
+ translations = _this$props.translations,
68
+ className = _this$props.className,
69
+ others = (0, _objectWithoutProperties2.default)(_this$props, ["label", "required", "disabled", "error", "errorText", "helperText", "helperIcon", "id", "name", "value", "options", "type", "multiple", "iconAll", "checkbox", "searchable", "translations", "className"]);
70
+ return _react.default.createElement(_HiFormControl.default, {
71
+ id: id,
72
+ label: label,
73
+ required: required,
74
+ disabled: disabled,
75
+ error: error,
76
+ errorText: errorText,
77
+ helperText: helperText,
78
+ helperIcon: helperIcon,
79
+ className: className
80
+ }, _react.default.createElement(_HiDynamicSelect.default, (0, _extends2.default)({
81
+ id: id,
82
+ name: name,
83
+ value: value,
84
+ options: options,
85
+ type: type,
86
+ multiple: multiple,
87
+ iconAll: iconAll,
88
+ checkbox: checkbox,
89
+ searchable: searchable,
90
+ translations: translations,
91
+ disabled: disabled,
92
+ error: error
93
+ }, others)));
94
+ }
95
+ }]);
96
+ return HiDynamicSelectField;
97
+ }(_react.default.PureComponent);
98
+
99
+ HiDynamicSelectField.propTypes = process.env.NODE_ENV !== "production" ? {
100
+ /**
101
+ * Surcharge des styles
102
+ */
103
+ className: _propTypes.default.string,
104
+
105
+ /**
106
+ * Si `true`, l'input sera inactif.
107
+ */
108
+ disabled: _propTypes.default.bool,
109
+
110
+ /**
111
+ * Si `true`, le champs sera en erreur.
112
+ */
113
+ error: _propTypes.default.bool,
114
+
115
+ /**
116
+ * Texte de l'erreur
117
+ */
118
+ errorText: _propTypes.default.string,
119
+
120
+ /**
121
+ * Si "true", le texte d'aide s'affichera seulement au clic sur l'icône "Information"
122
+ */
123
+ helperIcon: _propTypes.default.bool,
124
+
125
+ /**
126
+ * Texte de l'aide
127
+ */
128
+ helperText: _propTypes.default.string,
129
+
130
+ /**
131
+ * id de l'élément input
132
+ */
133
+ id: _propTypes.default.string.isRequired,
134
+
135
+ /**
136
+ * Label du champs
137
+ */
138
+ label: _propTypes.default.string,
139
+
140
+ /**
141
+ * true si champs obligatoire
142
+ */
143
+ required: _propTypes.default.bool
144
+ } : {};
145
+ var _default = HiDynamicSelectField;
146
+ exports.default = _default;
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.default = void 0;
8
+ exports.default = exports.styles = void 0;
9
9
 
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
11
 
@@ -33,6 +33,8 @@ var _HiSelect = _interopRequireDefault(require("./HiSelect"));
33
33
 
34
34
  var _HiIcon = _interopRequireDefault(require("../HiIcon"));
35
35
 
36
+ var _withStyles = _interopRequireDefault(require("../styles/withStyles"));
37
+
36
38
  // @inheritedComponent HiSelect
37
39
 
38
40
  /**
@@ -142,6 +144,26 @@ function buildFilteredItemList(itemList) {
142
144
  v: visibleParent
143
145
  });
144
146
  }
147
+
148
+ var styles = function styles(theme) {
149
+ return {
150
+ root: {
151
+ backgroundColor: theme.palette.background2,
152
+ maxWidth: 500,
153
+ width: '100%',
154
+ position: 'relative'
155
+ },
156
+ popper: {
157
+ // width: '100%',
158
+ zIndex: 1200
159
+ },
160
+ paper: {
161
+ borderRadius: '0px 2px',
162
+ maxHeight: 480,
163
+ transition: 'none !important'
164
+ }
165
+ };
166
+ };
145
167
  /**
146
168
  * HiNestedSelect hérite du composant HiSelect
147
169
  *
@@ -156,6 +178,8 @@ function buildFilteredItemList(itemList) {
156
178
  */
157
179
 
158
180
 
181
+ exports.styles = styles;
182
+
159
183
  var HiNestedSelect =
160
184
  /*#__PURE__*/
161
185
  function (_React$PureComponent) {
@@ -284,9 +308,9 @@ function (_React$PureComponent) {
284
308
  }), selectedItem.label);
285
309
  } else if (selectedItem.type === 'image') {
286
310
  inputValue = _react.default.createElement("span", {
287
- className: classes.selectIconLabel
311
+ className: classes.selectImgLabel
288
312
  }, _react.default.createElement("img", {
289
- className: classes.labelIcon,
313
+ className: classes.labelImg,
290
314
  src: selectedItem.img,
291
315
  alt: selectedItem.label
292
316
  }), selectedItem.label);
@@ -449,5 +473,10 @@ HiNestedSelect.propTypes = process.env.NODE_ENV !== "production" ? {
449
473
  */
450
474
  value: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string, _propTypes.default.array])
451
475
  } : {};
452
- var _default = HiNestedSelect;
476
+
477
+ var _default = (0, _withStyles.default)(styles, {
478
+ hiComponent: true,
479
+ name: 'HmuiHiNestedSelect'
480
+ })(HiNestedSelect);
481
+
453
482
  exports.default = _default;
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
+
16
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
+
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
+
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
+
22
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
23
+
24
+ var _react = _interopRequireDefault(require("react"));
25
+
26
+ var _propTypes = _interopRequireDefault(require("prop-types"));
27
+
28
+ var _HiFormControl = _interopRequireDefault(require("../HiForm/HiFormControl"));
29
+
30
+ var _HiNestedSelect = _interopRequireDefault(require("./HiNestedSelect"));
31
+
32
+ // @inheritedComponent HiDynamicSelect
33
+
34
+ /**
35
+ * Champs input pour formulaire
36
+ */
37
+ var HiNestedSelectField =
38
+ /*#__PURE__*/
39
+ function (_React$PureComponent) {
40
+ (0, _inherits2.default)(HiNestedSelectField, _React$PureComponent);
41
+
42
+ function HiNestedSelectField() {
43
+ (0, _classCallCheck2.default)(this, HiNestedSelectField);
44
+ return (0, _possibleConstructorReturn2.default)(this, (0, _getPrototypeOf2.default)(HiNestedSelectField).apply(this, arguments));
45
+ }
46
+
47
+ (0, _createClass2.default)(HiNestedSelectField, [{
48
+ key: "render",
49
+ value: function render() {
50
+ var _this$props = this.props,
51
+ label = _this$props.label,
52
+ required = _this$props.required,
53
+ disabled = _this$props.disabled,
54
+ error = _this$props.error,
55
+ errorText = _this$props.errorText,
56
+ helperText = _this$props.helperText,
57
+ helperIcon = _this$props.helperIcon,
58
+ id = _this$props.id,
59
+ name = _this$props.name,
60
+ value = _this$props.value,
61
+ options = _this$props.options,
62
+ type = _this$props.type,
63
+ multiple = _this$props.multiple,
64
+ iconAll = _this$props.iconAll,
65
+ checkbox = _this$props.checkbox,
66
+ searchable = _this$props.searchable,
67
+ translations = _this$props.translations,
68
+ className = _this$props.className,
69
+ others = (0, _objectWithoutProperties2.default)(_this$props, ["label", "required", "disabled", "error", "errorText", "helperText", "helperIcon", "id", "name", "value", "options", "type", "multiple", "iconAll", "checkbox", "searchable", "translations", "className"]);
70
+ return _react.default.createElement(_HiFormControl.default, {
71
+ id: id,
72
+ label: label,
73
+ required: required,
74
+ disabled: disabled,
75
+ error: error,
76
+ errorText: errorText,
77
+ helperText: helperText,
78
+ helperIcon: helperIcon,
79
+ className: className
80
+ }, _react.default.createElement(_HiNestedSelect.default, (0, _extends2.default)({
81
+ id: id,
82
+ name: name,
83
+ value: value,
84
+ options: options,
85
+ type: type,
86
+ multiple: multiple,
87
+ iconAll: iconAll,
88
+ checkbox: checkbox,
89
+ searchable: searchable,
90
+ translations: translations,
91
+ disabled: disabled,
92
+ error: error
93
+ }, others)));
94
+ }
95
+ }]);
96
+ return HiNestedSelectField;
97
+ }(_react.default.PureComponent);
98
+
99
+ HiNestedSelectField.propTypes = process.env.NODE_ENV !== "production" ? {
100
+ /**
101
+ * Surcharge des styles
102
+ */
103
+ className: _propTypes.default.string,
104
+
105
+ /**
106
+ * Si `true`, l'input sera inactif.
107
+ */
108
+ disabled: _propTypes.default.bool,
109
+
110
+ /**
111
+ * Si `true`, le champs sera en erreur.
112
+ */
113
+ error: _propTypes.default.bool,
114
+
115
+ /**
116
+ * Texte de l'erreur
117
+ */
118
+ errorText: _propTypes.default.string,
119
+
120
+ /**
121
+ * Si "true", le texte d'aide s'affichera seulement au clic sur l'icône "Information"
122
+ */
123
+ helperIcon: _propTypes.default.bool,
124
+
125
+ /**
126
+ * Texte de l'aide
127
+ */
128
+ helperText: _propTypes.default.string,
129
+
130
+ /**
131
+ * id de l'élément input
132
+ */
133
+ id: _propTypes.default.string.isRequired,
134
+
135
+ /**
136
+ * Label du champs
137
+ */
138
+ label: _propTypes.default.string,
139
+
140
+ /**
141
+ * true si champs obligatoire
142
+ */
143
+ required: _propTypes.default.bool
144
+ } : {};
145
+ var _default = HiNestedSelectField;
146
+ exports.default = _default;
@@ -62,7 +62,7 @@ var styles = function styles(theme) {
62
62
  position: 'relative'
63
63
  },
64
64
  popper: {
65
- // width: '100%',
65
+ width: '100%',
66
66
  zIndex: 1200
67
67
  },
68
68
  paper: {
@@ -73,6 +73,12 @@ var styles = function styles(theme) {
73
73
  labelIcon: {
74
74
  marginRight: 10
75
75
  },
76
+ labelImg: {
77
+ height: 18,
78
+ width: 'auto',
79
+ margin: '0 4px',
80
+ verticalAlign: 'middle'
81
+ },
76
82
  selectIconLabel: (0, _extends2.default)({
77
83
  whiteSpace: 'nowrap',
78
84
  overflow: 'hidden',
@@ -81,6 +87,15 @@ var styles = function styles(theme) {
81
87
  }, theme.typography.b1, {
82
88
  display: 'inline-flex',
83
89
  width: '100%'
90
+ }),
91
+ selectImgLabel: (0, _extends2.default)({
92
+ whiteSpace: 'nowrap',
93
+ overflow: 'hidden',
94
+ textOverflow: 'ellipsis',
95
+ paddingRight: 16
96
+ }, theme.typography.b1, {
97
+ display: 'inline-flex',
98
+ width: '100%'
84
99
  })
85
100
  };
86
101
  };
@@ -365,7 +380,7 @@ function (_React$PureComponent) {
365
380
  inputValue = _react.default.createElement("span", {
366
381
  className: classes.selectIconLabel
367
382
  }, _react.default.createElement("img", {
368
- className: classes.labelIcon,
383
+ className: classes.labelImg,
369
384
  src: item.img,
370
385
  alt: item.label
371
386
  }), item.label);
@@ -392,10 +407,20 @@ function (_React$PureComponent) {
392
407
  _this.handleSearchReset = _this.handleSearchReset.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
393
408
  _this.handleSelect = _this.handleSelect.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
394
409
  _this.handleSuggestions = _this.handleSuggestions.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
410
+ _this.getInputElement = _this.getInputElement.bind((0, _assertThisInitialized2.default)((0, _assertThisInitialized2.default)(_this)));
395
411
  return _this;
396
412
  }
397
413
 
398
414
  (0, _createClass2.default)(HiSelect, [{
415
+ key: "getInputElement",
416
+ value: function getInputElement(el) {
417
+ this.searchField = el;
418
+
419
+ if (this.props.inputRef) {
420
+ this.props.inputRef(this.searchField);
421
+ }
422
+ }
423
+ }, {
399
424
  key: "render",
400
425
  value: function render() {
401
426
  var _this2 = this;
@@ -458,9 +483,7 @@ function (_React$PureComponent) {
458
483
  }, !!searchable && _react.default.createElement(_HiInput.default, {
459
484
  value: searchValue,
460
485
  autoFocus: true,
461
- inputRef: function inputRef(el) {
462
- _this2.searchField = el;
463
- },
486
+ inputRef: this.getInputElement,
464
487
  onKeyDown: this.handleKeyDownSearch,
465
488
  onChange: this.handleSearch,
466
489
  onReset: this.handleSearchReset,
@@ -505,6 +528,7 @@ function (_React$PureComponent) {
505
528
  onSubmit: onSubmit,
506
529
  onMouseEnter: this.props.onMouseEnter,
507
530
  onMouseLeave: this.props.onMouseLeave,
531
+ onReset: this.props.onReset,
508
532
  placeholder: placeholder
509
533
  }, hiSelectInputProps, {
510
534
  refElement: function refElement(el) {
@@ -516,7 +540,6 @@ function (_React$PureComponent) {
516
540
  anchorEl: this.inputEl,
517
541
  placement: "bottom-start",
518
542
  open: open,
519
- eventsEnabled: open,
520
543
  className: classes.popper,
521
544
  disablePortal: true
522
545
  }, content));
@@ -647,6 +670,11 @@ HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
647
670
  */
648
671
  onMouseLeave: _propTypes.default.func,
649
672
 
673
+ /**
674
+ * Fonction de callback appelée lorsqu'on vide le champs
675
+ */
676
+ onReset: _propTypes.default.func,
677
+
650
678
  /**
651
679
  * Fonction de callback appelée lorsque le scroll atteint le bas de la liste
652
680
  */