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

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
  */