@hipay/hipay-material-ui 2.0.0-beta.73 → 2.0.0-beta.75

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,621 @@
1
+ import React from 'react';
2
+ import PropTypes from 'prop-types';
3
+ import classNames from 'classnames';
4
+ import { withStyles } from '../styles';
5
+ export const styles = theme => ({
6
+ bankCard: {
7
+ position: 'relative',
8
+ width: 256,
9
+ height: 160,
10
+ borderRadius: 13
11
+ },
12
+ wallet: {
13
+ position: 'relative',
14
+ width: 256,
15
+ height: 160,
16
+ filter: 'drop-shadow(30px 10px 4px #4444dd)',
17
+ webkitFilter: 'drop-shadow(30px 10px 4px #4444dd)'
18
+ },
19
+ shadow: {
20
+ boxShadow: '0px 2px 5px rgba(0, 0, 0, 0.24)'
21
+ },
22
+ walletShadow: {
23
+ width: 256,
24
+ height: 160,
25
+ backgroundSize: '100%',
26
+ filter: 'drop-shadow(0px 2px 5px rgba(0, 0, 0, 0.24))',
27
+ webkitFilter: 'drop-shadow(0px 2px 5px rgba(0, 0, 0, 0.24))',
28
+ mozFilter: 'drop-shadow(0px 2px 5px rgba(0, 0, 0, 0.24))'
29
+ },
30
+ sepa: {
31
+ position: 'relative',
32
+ width: 256,
33
+ height: 160,
34
+ borderRadius: 3
35
+ },
36
+ logo: {
37
+ height: 36,
38
+ marginTop: 2
39
+ },
40
+ logoRight: {
41
+ float: 'right',
42
+ marginRight: 18
43
+ },
44
+ logoLeft: {
45
+ marginLeft: 18
46
+ },
47
+ logoMerchant: {
48
+ marginLeft: '-31px'
49
+ },
50
+ stripe: {
51
+ width: 96,
52
+ height: 40,
53
+ background: '#FFFFFF'
54
+ },
55
+ stripeTopRight: {
56
+ display: 'inline-block',
57
+ float: 'right',
58
+ marginTop: 11
59
+ },
60
+ stripeTopLeft: {
61
+ display: 'inline-block',
62
+ float: 'left',
63
+ marginTop: 11
64
+ },
65
+ stripeBottomLeft: {
66
+ display: 'inline-block',
67
+ float: 'left',
68
+ marginTop: 38
69
+ },
70
+ stripeGradient: {
71
+ width: 111,
72
+ height: 40
73
+ },
74
+ stripeGradientTopRight: {
75
+ background: 'linear-gradient(to right, rgba(0,255,0,0), #FFFFFF)',
76
+ marginTop: 11
77
+ },
78
+ stripeGradientTopLeft: {
79
+ background: 'linear-gradient(to left, rgba(0,255,0,0), #FFFFFF)',
80
+ marginTop: 11
81
+ },
82
+ stripeGradientBottomLeft: {
83
+ background: 'linear-gradient(to left, rgba(0,255,0,0), #FFFFFF)',
84
+ marginTop: 38
85
+ },
86
+ labelMedium: {
87
+ display: 'block',
88
+ fontFamily: theme.typography.fontFamily,
89
+ fontSize: 10,
90
+ color: '#FFFFFF'
91
+ },
92
+ corporateNumberLabel: {
93
+ float: 'left',
94
+ marginTop: 5,
95
+ paddingLeft: 22,
96
+ height: 10,
97
+ width: 234
98
+ },
99
+ cardNumberLabel: {
100
+ float: 'left',
101
+ paddingLeft: 22,
102
+ height: 10,
103
+ width: 234,
104
+ marginBottom: 18
105
+ },
106
+ giftCardNumberLabel: {
107
+ float: 'left',
108
+ paddingLeft: 21,
109
+ height: 10,
110
+ width: 234,
111
+ marginTop: 25
112
+ },
113
+ ibanLabel: {
114
+ float: 'left',
115
+ marginTop: 23,
116
+ paddingLeft: 12,
117
+ height: 10,
118
+ width: 234
119
+ },
120
+ number: {
121
+ display: 'block',
122
+ float: 'left',
123
+ fontFamily: theme.typography.fontFamily,
124
+ color: '#FFFFFF'
125
+ },
126
+ cardNumber: {
127
+ fontSize: 18,
128
+ width: 235,
129
+ paddingLeft: 21,
130
+ marginTop: 16
131
+ },
132
+ giftCardNumber: {
133
+ fontSize: 18,
134
+ width: 235,
135
+ paddingLeft: 21,
136
+ marginBottom: 28
137
+ },
138
+ corporateNumber: {
139
+ fontSize: 18,
140
+ height: 25,
141
+ width: 234,
142
+ paddingLeft: 22,
143
+ marginBottom: 4
144
+ },
145
+ ibanNumber: {
146
+ fontSize: 14,
147
+ height: 16,
148
+ width: 256,
149
+ paddingLeft: 12,
150
+ marginBottom: 11
151
+ },
152
+ memberSince: {
153
+ display: 'block',
154
+ float: 'left',
155
+ paddingLeft: 22,
156
+ maxHeight: 19,
157
+ maxWidth: 52,
158
+ lineHeight: '9px',
159
+ textAlign: 'right',
160
+ verticalAlign: 'middle',
161
+ fontFamily: theme.typography.fontFamily,
162
+ fontSize: 8,
163
+ color: '#FFFFFF'
164
+ },
165
+ yearMember: {
166
+ display: 'block',
167
+ float: 'left',
168
+ marginLeft: 4,
169
+ marginTop: 2,
170
+ height: 19,
171
+ width: 33,
172
+ fontFamily: theme.typography.fontFamily,
173
+ fontSize: 14,
174
+ color: '#FFFFFF'
175
+ },
176
+ validThru: {
177
+ position: 'absolute',
178
+ right: 67,
179
+ bottom: 22,
180
+ display: 'block',
181
+ maxHeight: 19,
182
+ maxWidth: 35,
183
+ lineHeight: '9px',
184
+ textAlign: 'right',
185
+ verticalAlign: 'middle',
186
+ fontFamily: theme.typography.fontFamily,
187
+ fontSize: 8,
188
+ color: '#FFFFFF'
189
+ },
190
+ dateValid: {
191
+ position: 'absolute',
192
+ left: 192,
193
+ bottom: 20,
194
+ display: 'block',
195
+ height: 19,
196
+ width: 55,
197
+ fontFamily: theme.typography.fontFamily,
198
+ fontSize: 14,
199
+ color: '#FFFFFF'
200
+ },
201
+ labelLarge: {
202
+ display: 'block',
203
+ fontFamily: theme.typography.fontFamily,
204
+ fontSize: 13,
205
+ color: '#FFFFFF'
206
+ },
207
+ userNameCard: {
208
+ position: 'absolute',
209
+ left: 22,
210
+ bottom: 21,
211
+ height: 16,
212
+ width: 150
213
+ },
214
+ userNameSepa: {
215
+ position: 'absolute',
216
+ left: 12,
217
+ bottom: 21,
218
+ height: 16,
219
+ width: 150
220
+ },
221
+ userNameCorporate: {
222
+ float: 'left',
223
+ marginTop: 8,
224
+ paddingLeft: 22,
225
+ height: 16,
226
+ width: 234
227
+ },
228
+ userNameWallet: {
229
+ float: 'left',
230
+ marginTop: 54,
231
+ paddingLeft: 22,
232
+ height: 16,
233
+ width: 184
234
+ },
235
+ businessName: {
236
+ float: 'left',
237
+ paddingLeft: 22,
238
+ height: 16,
239
+ width: 234
240
+ },
241
+ labelDebitCredit: {
242
+ position: 'absolute',
243
+ right: 15,
244
+ bottom: 8,
245
+ height: 15,
246
+ fontWeight: '500'
247
+ },
248
+ corporateLabel: {
249
+ float: 'right',
250
+ marginRight: '-25px',
251
+ marginTop: 10,
252
+ fontFamily: theme.typography.fontFamily,
253
+ fontSize: 18,
254
+ fontWeight: '500'
255
+ }
256
+ });
257
+
258
+ class HiPaymentMeans extends React.Component {
259
+ constructor(...args) {
260
+ super(...args);
261
+
262
+ this.buildPaymentLayoutByType = () => {
263
+ const {
264
+ businessName,
265
+ cardNumber,
266
+ cardUser,
267
+ cardUserGender,
268
+ cardValidity,
269
+ classes,
270
+ colorPrimary,
271
+ colorSecondary,
272
+ credit,
273
+ logo,
274
+ logoMerchant,
275
+ svgPath,
276
+ theme,
277
+ translations,
278
+ type,
279
+ yearMember
280
+ } = this.props;
281
+ let formatNumber;
282
+
283
+ if (type === 'credit-card' || type === 'debit-card' || type === 'prepaid-card') {
284
+ formatNumber = cardNumber && this.formatCardNumber(cardNumber);
285
+ } else if (type === 'open-invoice' || type === 'payment-reference' || type === 'credit-consumption' || type === 'realtime-banking') {
286
+ formatNumber = cardNumber && this.formatIBANNumber(cardNumber);
287
+ }
288
+
289
+ let color1 = colorPrimary;
290
+ let color2 = colorSecondary;
291
+
292
+ if (!color1) {
293
+ color1 = theme.palette.primary.main;
294
+ color2 = theme.palette.primary.dark;
295
+ }
296
+
297
+ let brandLogo = logo;
298
+
299
+ if (!brandLogo) {
300
+ brandLogo = `${svgPath}sans_logo_full.svg`;
301
+ }
302
+
303
+ let username = cardUser;
304
+
305
+ if (cardUserGender === 'F') {
306
+ username = `${translations.gender_female} ${cardUser}`;
307
+ } else if (cardUserGender === 'M') {
308
+ username = `${translations.gender_male} ${cardUser}`;
309
+ }
310
+
311
+ const creditDebit = translations.credit && translations.debit && (credit ? translations.credit : translations.debit).toUpperCase();
312
+ let cardLayout;
313
+
314
+ switch (type) {
315
+ case 'ewallet':
316
+ cardLayout = React.createElement("div", {
317
+ style: {
318
+ backgroundImage: `url("${svgPath}Wallet_shape.svg")`
319
+ },
320
+ className: classes.walletShadow
321
+ }, React.createElement("div", {
322
+ style: {
323
+ background: `linear-gradient(${color1}, ${color2 || color1})`,
324
+ WebkitMask: `url("${svgPath}Wallet_shape.svg")`
325
+ },
326
+ className: classes.wallet
327
+ }, React.createElement("div", {
328
+ className: classNames(classes.labelLarge, classes.userNameWallet)
329
+ }, username), React.createElement("span", {
330
+ className: classNames(classes.stripe, classes.stripeBottomLeft)
331
+ }, React.createElement("img", {
332
+ src: brandLogo,
333
+ alt: '',
334
+ className: classNames(classes.logo, classes.logoLeft)
335
+ })), React.createElement("span", {
336
+ className: classNames(classes.stripeGradient, classes.stripeBottomLeft, classes.stripeGradientBottomLeft)
337
+ })));
338
+ break;
339
+
340
+ case 'credit-card':
341
+ case 'debit-card':
342
+ cardLayout = React.createElement("div", {
343
+ className: classNames(classes.bankCard, classes.shadow),
344
+ style: {
345
+ background: `linear-gradient(${color1}, ${color2 || color1})`
346
+ }
347
+ }, React.createElement("span", {
348
+ className: classNames(classes.stripe, classes.stripeTopRight)
349
+ }, React.createElement("img", {
350
+ src: brandLogo,
351
+ alt: '',
352
+ className: classNames(classes.logo, classes.logoRight)
353
+ })), React.createElement("span", {
354
+ className: classNames(classes.stripeGradient, classes.stripeTopRight, classes.stripeGradientTopRight)
355
+ }), React.createElement("div", {
356
+ className: classNames(classes.number, classes.cardNumber)
357
+ }, formatNumber), cardNumber && React.createElement("div", {
358
+ className: classNames(classes.labelMedium, classes.cardNumberLabel)
359
+ }, "Card number"), React.createElement("div", {
360
+ className: classNames(classes.labelLarge, classes.userNameCard)
361
+ }, username), React.createElement("div", {
362
+ className: classes.dateValid
363
+ }, cardValidity), cardValidity && React.createElement("div", {
364
+ className: classes.validThru
365
+ }, "Valid Thru"));
366
+ break;
367
+
368
+ case 'corporate':
369
+ cardLayout = React.createElement("div", {
370
+ className: classNames(classes.bankCard, classes.shadow),
371
+ style: {
372
+ background: `linear-gradient(${color1}, ${color2 || color1})`
373
+ }
374
+ }, React.createElement("span", {
375
+ className: classNames(classes.stripe, classes.stripeTopRight)
376
+ }, React.createElement("img", {
377
+ src: brandLogo,
378
+ alt: '',
379
+ className: classNames(classes.logo, classes.logoRight)
380
+ })), React.createElement("span", {
381
+ className: classNames(classes.stripeGradient, classes.stripeTopRight, classes.stripeGradientTopRight)
382
+ }, React.createElement("div", {
383
+ className: classes.corporateLabel,
384
+ style: {
385
+ color: color1
386
+ }
387
+ }, "CORPORATE")), cardNumber && React.createElement("div", {
388
+ className: classNames(classes.labelMedium, classes.corporateNumberLabel)
389
+ }, "Card number"), React.createElement("div", {
390
+ className: classNames(classes.number, classes.corporateNumber)
391
+ }, cardNumber), yearMember && React.createElement("div", {
392
+ className: classes.memberSince
393
+ }, "Member Since"), React.createElement("div", {
394
+ className: classes.yearMember
395
+ }, yearMember), React.createElement("div", {
396
+ className: classes.dateValid
397
+ }, cardValidity), cardValidity && React.createElement("div", {
398
+ className: classes.validThru
399
+ }, "Valid Thru"), React.createElement("div", {
400
+ className: classNames(classes.labelLarge, classes.userNameCorporate)
401
+ }, cardUser), React.createElement("div", {
402
+ className: classNames(classes.labelLarge, classes.businessName)
403
+ }, businessName));
404
+ break;
405
+
406
+ case 'open-invoice':
407
+ case 'payment-reference':
408
+ case 'credit-consumption':
409
+ case 'realtime-banking':
410
+ cardLayout = React.createElement("div", {
411
+ className: classNames(classes.sepa, classes.shadow),
412
+ style: {
413
+ background: `linear-gradient(${color1}, ${color2 || color1})`
414
+ }
415
+ }, React.createElement("span", {
416
+ className: classNames(classes.stripe, classes.stripeTopLeft)
417
+ }, React.createElement("img", {
418
+ src: brandLogo,
419
+ alt: '',
420
+ className: classNames(classes.logo, classes.logoLeft)
421
+ })), React.createElement("span", {
422
+ className: classNames(classes.stripeGradient, classes.stripeTopLeft, classes.stripeGradientTopLeft)
423
+ }), cardNumber && React.createElement("div", {
424
+ className: classNames(classes.labelMedium, classes.ibanLabel)
425
+ }, "IBAN"), React.createElement("div", {
426
+ className: classNames(classes.number, classes.ibanNumber)
427
+ }, formatNumber), React.createElement("div", {
428
+ className: classNames(classes.labelLarge, classes.userNameSepa)
429
+ }, username), React.createElement("div", {
430
+ className: classNames(classes.labelLarge, classes.labelDebitCredit)
431
+ }, creditDebit));
432
+ break;
433
+
434
+ case 'prepaid-card':
435
+ cardLayout = React.createElement("div", {
436
+ className: classNames(classes.bankCard, classes.shadow),
437
+ style: {
438
+ background: `url("${svgPath}Gift_shape.svg"), linear-gradient(${color1},
439
+ ${color2 || color1})`
440
+ }
441
+ }, React.createElement("span", {
442
+ className: classNames(classes.stripe, classes.stripeTopRight)
443
+ }, React.createElement("img", {
444
+ src: brandLogo,
445
+ alt: '',
446
+ className: classNames(classes.logo, classes.logoRight)
447
+ })), React.createElement("span", {
448
+ className: classNames(classes.stripeGradient, classes.stripeTopRight, classes.stripeGradientTopRight)
449
+ }, React.createElement("img", {
450
+ src: logoMerchant,
451
+ alt: '',
452
+ className: classNames(classes.logo, classes.logoMerchant)
453
+ })), cardNumber && React.createElement("div", {
454
+ className: classNames(classes.labelMedium, classes.giftCardNumberLabel)
455
+ }, "Card number"), React.createElement("div", {
456
+ className: classNames(classes.number, classes.giftCardNumber)
457
+ }, cardNumber), React.createElement("div", {
458
+ className: classNames(classes.labelLarge, classes.labelDebitCredit)
459
+ }, translations.gift_card));
460
+ break;
461
+
462
+ default:
463
+ cardLayout = React.createElement("div", {
464
+ className: classNames(classes.bankCard, classes.shadow),
465
+ style: {
466
+ background: `linear-gradient(${color1}, ${color2 || color1})`
467
+ }
468
+ }, React.createElement("span", {
469
+ className: classNames(classes.stripe, classes.stripeTopRight)
470
+ }, React.createElement("img", {
471
+ src: brandLogo,
472
+ alt: '',
473
+ className: classNames(classes.logo, classes.logoRight)
474
+ })), React.createElement("span", {
475
+ className: classNames(classes.stripeGradient, classes.stripeTopRight, classes.stripeGradientTopRight)
476
+ }), React.createElement("div", {
477
+ className: classNames(classes.number, classes.cardNumber)
478
+ }, cardNumber), cardNumber && React.createElement("div", {
479
+ className: classNames(classes.labelMedium, classes.cardNumberLabel)
480
+ }, "Card number"), React.createElement("div", {
481
+ className: classNames(classes.labelLarge, classes.userNameCard)
482
+ }, username), React.createElement("div", {
483
+ className: classes.dateValid
484
+ }, cardValidity), cardValidity && React.createElement("div", {
485
+ className: classes.validThru
486
+ }, "Valid Thru"));
487
+ }
488
+
489
+ return cardLayout;
490
+ };
491
+
492
+ this.formatCardNumber = cardNumber => {
493
+ if (cardNumber.search(/X/g) >= 0) {
494
+ cardNumber = cardNumber.replace(/X/g, '*');
495
+ }
496
+
497
+ if (cardNumber.search(' ') < 0) {
498
+ cardNumber = `${cardNumber.substring(0, 4)} ${cardNumber.substring(4, 8)} ${cardNumber.substring(8, 12)} ${cardNumber.substring(12, 16)}`;
499
+ }
500
+
501
+ return cardNumber;
502
+ };
503
+
504
+ this.formatIBANNumber = cardNumber => {
505
+ if (cardNumber.search(' ') < 0) {
506
+ cardNumber = `${cardNumber.substring(0, 4)} ${cardNumber.substring(4, 8)} ${cardNumber.substring(8, 12)}
507
+ ${cardNumber.substring(12, 16)} ${cardNumber.substring(16, 20)} ${cardNumber.substring(20, 26)}`;
508
+ }
509
+
510
+ return cardNumber;
511
+ };
512
+ }
513
+
514
+ render() {
515
+ return this.buildPaymentLayoutByType();
516
+ }
517
+
518
+ }
519
+
520
+ HiPaymentMeans.defaultProps = {
521
+ cardUserGender: 'U',
522
+ credit: true,
523
+ translations: {
524
+ credit: 'credit',
525
+ debit: 'debit',
526
+ gift_card: 'GIFT CARD',
527
+ gender_female: 'Mrs',
528
+ gender_male: 'Mr'
529
+ }
530
+ };
531
+ HiPaymentMeans.propTypes = process.env.NODE_ENV !== "production" ? {
532
+ /**
533
+ * Nom de la société de l'utilisateur si affichage de type CORPORATE
534
+ */
535
+ businessName: PropTypes.string,
536
+
537
+ /**
538
+ * Numéro du moyen de paiement (CB, SEPA, etc)
539
+ */
540
+ cardNumber: PropTypes.string,
541
+
542
+ /**
543
+ * Utilisateur du moyen de paiement
544
+ */
545
+ cardUser: PropTypes.string,
546
+
547
+ /**
548
+ * Genre du card user
549
+ * F: female
550
+ * M: male
551
+ * U: unknown
552
+ */
553
+ cardUserGender: PropTypes.oneOf(['F', 'M', 'U']),
554
+
555
+ /**
556
+ * Validité du moyen de paiement
557
+ */
558
+ cardValidity: PropTypes.string,
559
+
560
+ /**
561
+ * Surcharge les classes du composant
562
+ */
563
+ classes: PropTypes.object,
564
+
565
+ /**
566
+ * Couleur principal du moyen de paiement
567
+ */
568
+ colorPrimary: PropTypes.string,
569
+
570
+ /**
571
+ * Couleur secondaire du moyen de paiement (si dégradé)
572
+ */
573
+ colorSecondary: PropTypes.string,
574
+
575
+ /**
576
+ * Dans le cas d'un virement
577
+ * if TRUE, c'est un crédit (default)
578
+ * else FALSE, c'est un débit
579
+ */
580
+ credit: PropTypes.bool,
581
+
582
+ /**
583
+ * Logo du moyen de paiement
584
+ */
585
+ logo: PropTypes.string,
586
+
587
+ /**
588
+ * Logo du marchand dans le cas d'une carte cadeau
589
+ */
590
+ logoMerchant: PropTypes.string,
591
+
592
+ /**
593
+ * Chemin des svg du composant
594
+ */
595
+ svgPath: PropTypes.string,
596
+
597
+ /**
598
+ * Objet themes du composant
599
+ */
600
+ theme: PropTypes.object,
601
+
602
+ /**
603
+ * Objet de traductions du composant
604
+ */
605
+ translations: PropTypes.object,
606
+
607
+ /**
608
+ * Propriété utilisée pour discriminer les templates
609
+ */
610
+ type: PropTypes.string,
611
+
612
+ /**
613
+ * Année depuis laquelle l'utilisateur est membre dans le cas d'une carte CORPORATE
614
+ */
615
+ yearMember: PropTypes.string
616
+ } : {};
617
+ export default withStyles(styles, {
618
+ hiComponent: true,
619
+ name: 'HmuiHiPaymentMean',
620
+ withTheme: true
621
+ })(HiPaymentMeans);
@@ -0,0 +1 @@
1
+ export { default } from './HiPaymentMeans';
@@ -9,6 +9,10 @@ export const styles = theme => ({
9
9
  },
10
10
  disabled: {
11
11
  color: theme.palette.action.disabled
12
+ },
13
+ root: {
14
+ height: 40,
15
+ width: 40
12
16
  }
13
17
  });
14
18
 
@@ -26,6 +30,7 @@ const HiRadio = ({
26
30
  return React.createElement(Radio, {
27
31
  className: className,
28
32
  classes: {
33
+ root: classes.root,
29
34
  checked: classes.checked,
30
35
  disabled: classes.disabled
31
36
  },
@@ -149,7 +149,7 @@ class HiSelect extends React.PureComponent {
149
149
  } else if (type === 'image' || item.type === 'image') {
150
150
  inputValue = React.createElement("span", {
151
151
  className: classes.selectIconLabel
152
- }, React.createElement("img", {
152
+ }, item.img && React.createElement("img", {
153
153
  className: classes.labelImg,
154
154
  src: item.img,
155
155
  alt: item.label,
@@ -30,9 +30,10 @@ class HiSelectField extends React.PureComponent {
30
30
  checkbox,
31
31
  searchable,
32
32
  translations,
33
- className
33
+ className,
34
+ HiInputLabelProps
34
35
  } = _this$props,
35
- others = _objectWithoutProperties(_this$props, ["label", "required", "disabled", "error", "errorText", "helperText", "helperIcon", "id", "name", "value", "options", "type", "multiple", "iconAll", "checkbox", "searchable", "translations", "className"]);
36
+ others = _objectWithoutProperties(_this$props, ["label", "required", "disabled", "error", "errorText", "helperText", "helperIcon", "id", "name", "value", "options", "type", "multiple", "iconAll", "checkbox", "searchable", "translations", "className", "HiInputLabelProps"]);
36
37
 
37
38
  return React.createElement(HiFormControl, {
38
39
  id: id,
@@ -43,7 +44,8 @@ class HiSelectField extends React.PureComponent {
43
44
  errorText: errorText,
44
45
  helperText: helperText,
45
46
  helperIcon: helperIcon,
46
- className: className
47
+ className: className,
48
+ InputLabelProps: HiInputLabelProps
47
49
  }, React.createElement(HiSelect, _extends({
48
50
  id: id,
49
51
  name: name,
@@ -106,6 +108,11 @@ HiSelectField.propTypes = process.env.NODE_ENV !== "production" ? {
106
108
  /**
107
109
  * true si champs obligatoire
108
110
  */
109
- required: PropTypes.bool
111
+ required: PropTypes.bool,
112
+
113
+ /**
114
+ * Propriétés appliquées au composant HiFormLabel
115
+ */
116
+ HiInputLabelProps: PropTypes.object
110
117
  } : {};
111
118
  export default HiSelectField;
@@ -177,7 +177,7 @@ HiCellBuilder.propTypes = process.env.NODE_ENV !== "production" ? {
177
177
  /**
178
178
  * Override TableCell style
179
179
  */
180
- className: PropTypes.object,
180
+ className: PropTypes.string,
181
181
 
182
182
  /**
183
183
  * Propriétés de la colonne