@@ -6,6 +6,7 @@ import { toast } from 'react-toastify';
66import { useHistory } from 'react-router-dom' ;
77
88import { addEquipmentType , fetchAllEquipments } from '~/actions/bmdashboard/equipmentActions' ;
9+ import BMCharacterLimitHint from '../../shared/BMCharacterLimitHint' ;
910
1011const FuelTypes = {
1112 dies : 'Diesel' ,
@@ -15,13 +16,15 @@ const FuelTypes = {
1516 etha : 'Ethanol' ,
1617} ;
1718
19+ const DESC_CHAR_LIMIT = 150 ;
20+
1821// const [inputText, setInputText] = useState('');
1922
2023const schema = Joi . object ( {
2124 name : Joi . string ( ) . required ( ) ,
2225 desc : Joi . string ( )
2326 . required ( )
24- . max ( 150 ) ,
27+ . max ( DESC_CHAR_LIMIT ) ,
2528} ) ;
2629
2730export default function AddTypeForm ( ) {
@@ -46,7 +49,7 @@ export default function AddTypeForm() {
4649 setName ( event . target . value ) ;
4750 }
4851 if ( event . target . name === 'desc' ) {
49- setDesc ( event . target . value ) ;
52+ setDesc ( event . target . value . slice ( 0 , DESC_CHAR_LIMIT ) ) ;
5053 }
5154 if ( event . target . name === 'fuel' ) {
5255 setFuel ( event . target . value ) ;
@@ -104,13 +107,16 @@ export default function AddTypeForm() {
104107 name = "desc"
105108 type = "textarea"
106109 rows = { 2 }
110+ maxLength = { DESC_CHAR_LIMIT }
107111 value = { desc }
108112 invalid = { errInput === 'desc' }
109113 onChange = { handleChange }
110114 />
111- < div className = "form-footer" style = { { color : desc . length > 150 ? '#dc3545' : 'black' } } >
112- Character { desc . length } /150
113- </ div >
115+ < BMCharacterLimitHint
116+ limit = { DESC_CHAR_LIMIT }
117+ length = { desc . length }
118+ summary = { `Character ${ desc . length } /${ DESC_CHAR_LIMIT } ` }
119+ />
114120 { /* {!errInput && <FormText>Max 150 characters</FormText>} */ }
115121 < FormFeedback >
116122 { errType === 'string.max'
0 commit comments