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

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.
package/HiChip/HiChip.js CHANGED
@@ -112,6 +112,7 @@ function HiChip(props) {
112
112
 
113
113
  var label = props.label,
114
114
  classes = props.classes,
115
+ fallbackImage = props.fallbackImage,
115
116
  icon = props.icon,
116
117
  _props$iconSize = props.iconSize,
117
118
  iconSize = _props$iconSize === void 0 ? 20 : _props$iconSize,
@@ -138,6 +139,13 @@ function HiChip(props) {
138
139
  className: classes.badge,
139
140
  src: img,
140
141
  alt: img,
142
+ onError: function onError(e) {
143
+ if (fallbackImage) {
144
+ e.target.src = "".concat(fallbackImage);
145
+ } else {
146
+ e.target.style.display = 'none';
147
+ }
148
+ },
141
149
  title: titleImg
142
150
  }), icon && _react.default.createElement(_HiIcon.default, {
143
151
  className: (0, _classnames.default)(classes.icon, (0, _defineProperty2.default)({}, classes.iconClickable, onIconClick)),
@@ -176,6 +184,11 @@ HiChip.propTypes = process.env.NODE_ENV !== "production" ? {
176
184
  */
177
185
  classes: _propTypes.default.object,
178
186
 
187
+ /**
188
+ * Chemin vers l'image à afficher par défaut si une image n'est pas trouvée
189
+ */
190
+ fallbackImage: _propTypes.default.string,
191
+
179
192
  /**
180
193
  * Icone affiché à gauche
181
194
  */
@@ -39,16 +39,21 @@ var styles = function styles(theme) {
39
39
  color: theme.palette.neutral.main,
40
40
  position: 'inherit',
41
41
  transform: 'inherit',
42
- marginBottom: 2
42
+ marginBottom: 2,
43
+ '&$focused': {
44
+ color: theme.palette.primary.main
45
+ },
46
+ '&$error': {
47
+ color: theme.palette.negative.main
48
+ }
43
49
  }),
44
50
  optional: {
45
51
  fontSize: 11,
46
52
  marginLeft: 4,
47
53
  color: theme.palette.neutral.main
48
54
  },
49
- focused: {
50
- color: theme.palette.primary.main
51
- }
55
+ focused: {},
56
+ error: {}
52
57
  };
53
58
  };
54
59
  /**
@@ -87,7 +92,12 @@ function (_React$PureComponent) {
87
92
  htmlFor: htmlFor,
88
93
  className: className,
89
94
  focused: focused,
90
- required: false
95
+ required: false,
96
+ FormLabelClasses: {
97
+ root: classes.root,
98
+ error: classes.error,
99
+ focused: classes.focused
100
+ }
91
101
  }, InputLabelProps, other), label, !required && _react.default.createElement("span", {
92
102
  className: classes.optional
93
103
  }, " ", translations.optional), children);
@@ -67,7 +67,7 @@ var styles = function styles(theme) {
67
67
  },
68
68
  paper: {
69
69
  borderRadius: '0px 2px',
70
- maxHeight: 440,
70
+ maxHeight: 480,
71
71
  transition: 'none !important'
72
72
  },
73
73
  labelIcon: {
@@ -176,8 +176,10 @@ function (_React$PureComponent) {
176
176
  _this.handleKeyDownSearch = function (event) {
177
177
  var key = (0, _keycode.default)(event);
178
178
 
179
- if (_this.overlay && (key === 'ArrowDown' || key === 'ArrowUp')) {
179
+ if (_this.overlay && (key === 'down' || key === 'up')) {
180
180
  _this.focusOnFirstItem();
181
+ } else if (_this.overlay && key === 'esc') {
182
+ _this.handleClose();
181
183
  }
182
184
  };
183
185
 
@@ -479,7 +481,8 @@ function (_React$PureComponent) {
479
481
  itemList: itemList,
480
482
  onKeyDown: this.handleKeyDown,
481
483
  onSelect: this.handleSelect,
482
- selectedItemIdList: selectedItemIdList
484
+ selectedItemIdList: selectedItemIdList,
485
+ fallbackImage: this.props.fallbackImage
483
486
  }, hiSelectableListProps))))));
484
487
 
485
488
  return _react.default.createElement("div", {
@@ -576,6 +579,11 @@ HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
576
579
  */
577
580
  error: _propTypes.default.bool,
578
581
 
582
+ /**
583
+ * Chemin vers l'image à afficher par défaut si une image n'est pas trouvée
584
+ */
585
+ fallbackImage: _propTypes.default.string,
586
+
579
587
  /**
580
588
  * Affiche l'élément 'All'
581
589
  */
@@ -111,7 +111,7 @@ var styles = function styles(theme) {
111
111
  }
112
112
  },
113
113
  disabled: {
114
- color: "".concat(theme.palette.action.disabled),
114
+ color: theme.palette.text.disabled,
115
115
  '&:before': {
116
116
  display: 'none'
117
117
  }
@@ -83,7 +83,8 @@ var styles = function styles(theme) {
83
83
  },
84
84
  disabled: {
85
85
  fontWeight: theme.typography.fontWeightLight,
86
- cursor: 'default'
86
+ cursor: 'default',
87
+ opacity: 'inherit'
87
88
  },
88
89
  selected: {
89
90
  backgroundColor: theme.palette.action.selected
@@ -110,7 +111,6 @@ var styles = function styles(theme) {
110
111
  }, theme.typography.b1, {
111
112
  fontWeight: 'inherit',
112
113
  width: '100%',
113
- height: '-webkit-fill-available',
114
114
  padding: '5px 0'
115
115
  }),
116
116
  label: {
@@ -138,9 +138,7 @@ var styles = function styles(theme) {
138
138
  color: theme.palette.neutral.main,
139
139
  fontWeight: theme.typography.fontWeightLight,
140
140
  fontSize: 12,
141
- width: '-webkit-fill-available',
142
141
  whiteSpace: 'nowrap',
143
- overflow: 'hidden',
144
142
  textOverflow: 'ellipsis',
145
143
  textAlign: 'right',
146
144
  margin: '4px 12px 4px 8px',
@@ -257,6 +255,7 @@ function (_React$Component) {
257
255
  classes = _this$props2.classes,
258
256
  selected = _this$props2.selected,
259
257
  disabled = _this$props2.disabled,
258
+ fallbackImage = _this$props2.fallbackImage,
260
259
  hideCheckbox = _this$props2.hideCheckbox,
261
260
  onSelect = _this$props2.onSelect,
262
261
  indeterminate = _this$props2.indeterminate,
@@ -328,6 +327,13 @@ function (_React$Component) {
328
327
  }), type === 'image' && img && _react.default.createElement("img", {
329
328
  src: img,
330
329
  alt: img,
330
+ onError: function onError(e) {
331
+ if (fallbackImage) {
332
+ e.target.src = "".concat(fallbackImage);
333
+ } else {
334
+ e.target.style.display = 'none';
335
+ }
336
+ },
331
337
  className: classes.img
332
338
  }), this.buildItemLabel(), !!secondaryLabel && _react.default.createElement("div", {
333
339
  className: (0, _classnames.default)(classes.secondaryLabel, (0, _defineProperty2.default)({}, classes.inline, secondaryInline))
@@ -379,6 +385,11 @@ HiSelectableListItem.propTypes = process.env.NODE_ENV !== "production" ? {
379
385
  */
380
386
  disabled: _propTypes.default.bool,
381
387
 
388
+ /**
389
+ * Chemin vers l'image à afficher par défaut si une image n'est pas trouvée
390
+ */
391
+ fallbackImage: _propTypes.default.string,
392
+
382
393
  /**
383
394
  * N'affiche pas de checkboxes
384
395
  */
@@ -90,6 +90,7 @@ function HiChip(props) {
90
90
  const {
91
91
  label,
92
92
  classes,
93
+ fallbackImage,
93
94
  icon,
94
95
  iconSize = 20,
95
96
  id,
@@ -121,6 +122,13 @@ function HiChip(props) {
121
122
  className: classes.badge,
122
123
  src: img,
123
124
  alt: img,
125
+ onError: e => {
126
+ if (fallbackImage) {
127
+ e.target.src = `${fallbackImage}`;
128
+ } else {
129
+ e.target.style.display = 'none';
130
+ }
131
+ },
124
132
  title: titleImg
125
133
  }), icon && React.createElement(HiIcon, {
126
134
  className: classNames(classes.icon, {
@@ -161,6 +169,11 @@ HiChip.propTypes = process.env.NODE_ENV !== "production" ? {
161
169
  */
162
170
  classes: PropTypes.object,
163
171
 
172
+ /**
173
+ * Chemin vers l'image à afficher par défaut si une image n'est pas trouvée
174
+ */
175
+ fallbackImage: PropTypes.string,
176
+
164
177
  /**
165
178
  * Icone affiché à gauche
166
179
  */
@@ -13,16 +13,21 @@ export const styles = theme => ({
13
13
  color: theme.palette.neutral.main,
14
14
  position: 'inherit',
15
15
  transform: 'inherit',
16
- marginBottom: 2
16
+ marginBottom: 2,
17
+ '&$focused': {
18
+ color: theme.palette.primary.main
19
+ },
20
+ '&$error': {
21
+ color: theme.palette.negative.main
22
+ }
17
23
  }),
18
24
  optional: {
19
25
  fontSize: 11,
20
26
  marginLeft: 4,
21
27
  color: theme.palette.neutral.main
22
28
  },
23
- focused: {
24
- color: theme.palette.primary.main
25
- }
29
+ focused: {},
30
+ error: {}
26
31
  });
27
32
  /**
28
33
  * Label pour champs de formulaire
@@ -49,7 +54,12 @@ class HiFormLabel extends React.PureComponent {
49
54
  htmlFor: htmlFor,
50
55
  className: className,
51
56
  focused: focused,
52
- required: false
57
+ required: false,
58
+ FormLabelClasses: {
59
+ root: classes.root,
60
+ error: classes.error,
61
+ focused: classes.focused
62
+ }
53
63
  }, InputLabelProps, other), label, !required && React.createElement("span", {
54
64
  className: classes.optional
55
65
  }, " ", translations.optional), children);
@@ -28,7 +28,7 @@ export const styles = theme => ({
28
28
  },
29
29
  paper: {
30
30
  borderRadius: '0px 2px',
31
- maxHeight: 440,
31
+ maxHeight: 480,
32
32
  transition: 'none !important'
33
33
  },
34
34
  labelIcon: {
@@ -119,8 +119,10 @@ class HiSelect extends React.PureComponent {
119
119
  this.handleKeyDownSearch = event => {
120
120
  const key = keycode(event);
121
121
 
122
- if (this.overlay && (key === 'ArrowDown' || key === 'ArrowUp')) {
122
+ if (this.overlay && (key === 'down' || key === 'up')) {
123
123
  this.focusOnFirstItem();
124
+ } else if (this.overlay && key === 'esc') {
125
+ this.handleClose();
124
126
  }
125
127
  };
126
128
 
@@ -416,7 +418,8 @@ class HiSelect extends React.PureComponent {
416
418
  itemList: itemList,
417
419
  onKeyDown: this.handleKeyDown,
418
420
  onSelect: this.handleSelect,
419
- selectedItemIdList: selectedItemIdList
421
+ selectedItemIdList: selectedItemIdList,
422
+ fallbackImage: this.props.fallbackImage
420
423
  }, hiSelectableListProps))))));
421
424
  return React.createElement("div", {
422
425
  className: classes.root,
@@ -500,6 +503,11 @@ HiSelect.propTypes = process.env.NODE_ENV !== "production" ? {
500
503
  */
501
504
  error: PropTypes.bool,
502
505
 
506
+ /**
507
+ * Chemin vers l'image à afficher par défaut si une image n'est pas trouvée
508
+ */
509
+ fallbackImage: PropTypes.string,
510
+
503
511
  /**
504
512
  * Affiche l'élément 'All'
505
513
  */
@@ -78,7 +78,7 @@ export const styles = theme => ({
78
78
  }
79
79
  },
80
80
  disabled: {
81
- color: `${theme.palette.action.disabled}`,
81
+ color: theme.palette.text.disabled,
82
82
  '&:before': {
83
83
  display: 'none'
84
84
  }
@@ -48,7 +48,8 @@ export const styles = theme => ({
48
48
  },
49
49
  disabled: {
50
50
  fontWeight: theme.typography.fontWeightLight,
51
- cursor: 'default'
51
+ cursor: 'default',
52
+ opacity: 'inherit'
52
53
  },
53
54
  selected: {
54
55
  backgroundColor: theme.palette.action.selected
@@ -75,7 +76,6 @@ export const styles = theme => ({
75
76
  }, theme.typography.b1, {
76
77
  fontWeight: 'inherit',
77
78
  width: '100%',
78
- height: '-webkit-fill-available',
79
79
  padding: '5px 0'
80
80
  }),
81
81
  label: {
@@ -103,9 +103,7 @@ export const styles = theme => ({
103
103
  color: theme.palette.neutral.main,
104
104
  fontWeight: theme.typography.fontWeightLight,
105
105
  fontSize: 12,
106
- width: '-webkit-fill-available',
107
106
  whiteSpace: 'nowrap',
108
- overflow: 'hidden',
109
107
  textOverflow: 'ellipsis',
110
108
  textAlign: 'right',
111
109
  margin: '4px 12px 4px 8px',
@@ -203,6 +201,7 @@ class HiSelectableListItem extends React.Component {
203
201
  classes,
204
202
  selected,
205
203
  disabled,
204
+ fallbackImage,
206
205
  hideCheckbox,
207
206
  onSelect,
208
207
  indeterminate,
@@ -284,6 +283,13 @@ class HiSelectableListItem extends React.Component {
284
283
  }), type === 'image' && img && React.createElement("img", {
285
284
  src: img,
286
285
  alt: img,
286
+ onError: e => {
287
+ if (fallbackImage) {
288
+ e.target.src = `${fallbackImage}`;
289
+ } else {
290
+ e.target.style.display = 'none';
291
+ }
292
+ },
287
293
  className: classes.img
288
294
  }), this.buildItemLabel(), !!secondaryLabel && React.createElement("div", {
289
295
  className: classNames(classes.secondaryLabel, {
@@ -336,6 +342,11 @@ HiSelectableListItem.propTypes = process.env.NODE_ENV !== "production" ? {
336
342
  */
337
343
  disabled: PropTypes.bool,
338
344
 
345
+ /**
346
+ * Chemin vers l'image à afficher par défaut si une image n'est pas trouvée
347
+ */
348
+ fallbackImage: PropTypes.string,
349
+
339
350
  /**
340
351
  * N'affiche pas de checkboxes
341
352
  */
@@ -21,11 +21,11 @@ export const light = {
21
21
  // The colors used to style the text.
22
22
  text: {
23
23
  // The most important text.
24
- primary: 'rgba(0, 0, 0, 0.87)',
24
+ primary: '#20272B',
25
25
  // Secondary text.
26
26
  secondary: 'rgba(0, 0, 0, 0.54)',
27
27
  // Disabled text have even lower visual prominence.
28
- disabled: 'rgba(0, 0, 0, 0.38)',
28
+ disabled: '#999999',
29
29
  // Text hints.
30
30
  hint: 'rgba(0, 0, 0, 0.38)'
31
31
  },
@@ -28,7 +28,7 @@ export function contains(obj, pred) {
28
28
  */
29
29
 
30
30
  export function escapeHTML(unsafeStr) {
31
- return unsafeStr.replace(/<br\/?>/g, '[br]').replace(/<strong>/g, '[[').replace(/<\/?strong>/g, ']]').replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#39;').replace(/\[\[/g, '<strong>').replace(/\]\]/g, '</strong>').replace(/\[br\]/g, '<br/>');
31
+ return unsafeStr.replace(/<br\/?>/g, '[br]').replace(/<strong>/g, '[[').replace(/<\/?strong>/g, ']]').replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#39;').replace(/\[\[/g, '<strong>').replace(/\]\]/g, '</strong>').replace(/\[br\]/g, '<br>');
32
32
  }
33
33
  export function findIndex(arr, pred) {
34
34
  const predType = typeof pred;
package/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license HiPay-Material-UI v2.0.0-beta.38
1
+ /** @license HiPay-Material-UI v2.0.0-beta.39
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.0.0-beta.38
1
+ /** @license HiPay-Material-UI v2.0.0-beta.39
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.0.0-beta.38",
5
+ "version": "2.0.0-beta.39",
6
6
  "description": "React components that implement Google's Material Design.",
7
7
  "keywords": [
8
8
  "react",
@@ -39,11 +39,11 @@ var light = {
39
39
  // The colors used to style the text.
40
40
  text: {
41
41
  // The most important text.
42
- primary: 'rgba(0, 0, 0, 0.87)',
42
+ primary: '#20272B',
43
43
  // Secondary text.
44
44
  secondary: 'rgba(0, 0, 0, 0.54)',
45
45
  // Disabled text have even lower visual prominence.
46
- disabled: 'rgba(0, 0, 0, 0.38)',
46
+ disabled: '#999999',
47
47
  // Text hints.
48
48
  hint: 'rgba(0, 0, 0, 0.38)'
49
49
  },
@@ -1,4 +1,4 @@
1
- /** @license HiPay-Material-UI v2.0.0-beta.38
1
+ /** @license HiPay-Material-UI v2.0.0-beta.39
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.
@@ -963,11 +963,11 @@
963
963
  // The colors used to style the text.
964
964
  text: {
965
965
  // The most important text.
966
- primary: 'rgba(0, 0, 0, 0.87)',
966
+ primary: '#20272B',
967
967
  // Secondary text.
968
968
  secondary: 'rgba(0, 0, 0, 0.54)',
969
969
  // Disabled text have even lower visual prominence.
970
- disabled: 'rgba(0, 0, 0, 0.38)',
970
+ disabled: '#999999',
971
971
  // Text hints.
972
972
  hint: 'rgba(0, 0, 0, 0.38)'
973
973
  },
@@ -15006,7 +15006,7 @@
15006
15006
  */
15007
15007
 
15008
15008
  function escapeHTML(unsafeStr) {
15009
- return unsafeStr.replace(/<br\/?>/g, '[br]').replace(/<strong>/g, '[[').replace(/<\/?strong>/g, ']]').replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#39;').replace(/\[\[/g, '<strong>').replace(/\]\]/g, '</strong>').replace(/\[br\]/g, '<br/>');
15009
+ return unsafeStr.replace(/<br\/?>/g, '[br]').replace(/<strong>/g, '[[').replace(/<\/?strong>/g, ']]').replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#39;').replace(/\[\[/g, '<strong>').replace(/\]\]/g, '</strong>').replace(/\[br\]/g, '<br>');
15010
15010
  }
15011
15011
  /**
15012
15012
  * Remove duplicate items from array useful after concat arrays
@@ -66259,6 +66259,7 @@
66259
66259
 
66260
66260
  var label = props.label,
66261
66261
  classes = props.classes,
66262
+ fallbackImage = props.fallbackImage,
66262
66263
  icon = props.icon,
66263
66264
  _props$iconSize = props.iconSize,
66264
66265
  iconSize = _props$iconSize === void 0 ? 20 : _props$iconSize,
@@ -66285,6 +66286,13 @@
66285
66286
  className: classes.badge,
66286
66287
  src: img,
66287
66288
  alt: img,
66289
+ onError: function onError(e) {
66290
+ if (fallbackImage) {
66291
+ e.target.src = "".concat(fallbackImage);
66292
+ } else {
66293
+ e.target.style.display = 'none';
66294
+ }
66295
+ },
66288
66296
  title: titleImg
66289
66297
  }), icon && React__default.createElement(HiIcon$1, {
66290
66298
  className: classnames(classes.icon, defineProperty({}, classes.iconClickable, onIconClick)),
@@ -66323,6 +66331,11 @@
66323
66331
  */
66324
66332
  classes: propTypes.object,
66325
66333
 
66334
+ /**
66335
+ * Chemin vers l'image à afficher par défaut si une image n'est pas trouvée
66336
+ */
66337
+ fallbackImage: propTypes.string,
66338
+
66326
66339
  /**
66327
66340
  * Icone affiché à gauche
66328
66341
  */
@@ -73424,16 +73437,21 @@
73424
73437
  color: theme.palette.neutral.main,
73425
73438
  position: 'inherit',
73426
73439
  transform: 'inherit',
73427
- marginBottom: 2
73440
+ marginBottom: 2,
73441
+ '&$focused': {
73442
+ color: theme.palette.primary.main
73443
+ },
73444
+ '&$error': {
73445
+ color: theme.palette.negative.main
73446
+ }
73428
73447
  }),
73429
73448
  optional: {
73430
73449
  fontSize: 11,
73431
73450
  marginLeft: 4,
73432
73451
  color: theme.palette.neutral.main
73433
73452
  },
73434
- focused: {
73435
- color: theme.palette.primary.main
73436
- }
73453
+ focused: {},
73454
+ error: {}
73437
73455
  };
73438
73456
  };
73439
73457
  /**
@@ -73471,7 +73489,12 @@
73471
73489
  htmlFor: htmlFor,
73472
73490
  className: className,
73473
73491
  focused: focused,
73474
- required: false
73492
+ required: false,
73493
+ FormLabelClasses: {
73494
+ root: classes.root,
73495
+ error: classes.error,
73496
+ focused: classes.focused
73497
+ }
73475
73498
  }, InputLabelProps, other), label, !required && React__default.createElement("span", {
73476
73499
  className: classes.optional
73477
73500
  }, " ", translations.optional), children);
@@ -95538,7 +95561,8 @@
95538
95561
  },
95539
95562
  disabled: {
95540
95563
  fontWeight: theme.typography.fontWeightLight,
95541
- cursor: 'default'
95564
+ cursor: 'default',
95565
+ opacity: 'inherit'
95542
95566
  },
95543
95567
  selected: {
95544
95568
  backgroundColor: theme.palette.action.selected
@@ -95565,7 +95589,6 @@
95565
95589
  }, theme.typography.b1, {
95566
95590
  fontWeight: 'inherit',
95567
95591
  width: '100%',
95568
- height: '-webkit-fill-available',
95569
95592
  padding: '5px 0'
95570
95593
  }),
95571
95594
  label: {
@@ -95593,9 +95616,7 @@
95593
95616
  color: theme.palette.neutral.main,
95594
95617
  fontWeight: theme.typography.fontWeightLight,
95595
95618
  fontSize: 12,
95596
- width: '-webkit-fill-available',
95597
95619
  whiteSpace: 'nowrap',
95598
- overflow: 'hidden',
95599
95620
  textOverflow: 'ellipsis',
95600
95621
  textAlign: 'right',
95601
95622
  margin: '4px 12px 4px 8px',
@@ -95710,6 +95731,7 @@
95710
95731
  classes = _this$props2.classes,
95711
95732
  selected = _this$props2.selected,
95712
95733
  disabled = _this$props2.disabled,
95734
+ fallbackImage = _this$props2.fallbackImage,
95713
95735
  hideCheckbox = _this$props2.hideCheckbox,
95714
95736
  onSelect = _this$props2.onSelect,
95715
95737
  indeterminate = _this$props2.indeterminate,
@@ -95781,6 +95803,13 @@
95781
95803
  }), type === 'image' && img && React__default.createElement("img", {
95782
95804
  src: img,
95783
95805
  alt: img,
95806
+ onError: function onError(e) {
95807
+ if (fallbackImage) {
95808
+ e.target.src = "".concat(fallbackImage);
95809
+ } else {
95810
+ e.target.style.display = 'none';
95811
+ }
95812
+ },
95784
95813
  className: classes.img
95785
95814
  }), this.buildItemLabel(), !!secondaryLabel && React__default.createElement("div", {
95786
95815
  className: classnames(classes.secondaryLabel, defineProperty({}, classes.inline, secondaryInline))
@@ -95833,6 +95862,11 @@
95833
95862
  */
95834
95863
  disabled: propTypes.bool,
95835
95864
 
95865
+ /**
95866
+ * Chemin vers l'image à afficher par défaut si une image n'est pas trouvée
95867
+ */
95868
+ fallbackImage: propTypes.string,
95869
+
95836
95870
  /**
95837
95871
  * N'affiche pas de checkboxes
95838
95872
  */