diff options
author | Emiliano Ciavatta | 2020-09-23 18:19:09 +0000 |
---|---|---|
committer | Emiliano Ciavatta | 2020-09-23 18:19:09 +0000 |
commit | 8d07bfe5f17534b7301a064aeaf8ed8071f10a40 (patch) | |
tree | f645b9f033d878d54175705c1d1909e0420c54f4 /frontend/src/components/fields/StringField.js | |
parent | 8c8487b79300342b4c6dafe9c3691d43b8dc8e37 (diff) |
Frontend refactor: checkpoint
Diffstat (limited to 'frontend/src/components/fields/StringField.js')
-rw-r--r-- | frontend/src/components/fields/StringField.js | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/frontend/src/components/fields/StringField.js b/frontend/src/components/fields/StringField.js new file mode 100644 index 0000000..09fe24d --- /dev/null +++ b/frontend/src/components/fields/StringField.js @@ -0,0 +1,31 @@ +import React, {Component} from 'react'; +import './StringField.scss'; + +const classNames = require('classnames'); + +class StringField extends Component { + + render() { + return ( + <div className={classNames("field", "d-inline-block", {"field-active" : this.props.isActive}, + {"field-invalid": this.props.isInvalid})}> + <div className="input-group"> + <div className="field-name-wrapper"> + <span className="field-name" id={`field-${this.props.name}`}>{this.props.name}:</span> + </div> + <input placeholder={this.props.defaultValue} aria-label={this.props.name} + aria-describedby={`filter-${this.props.name}`} className="field-value" + onChange={this.props.onValueChanged} value={this.props.value} /> + </div> + + { this.props.active && + <div className="field-clear"> + <span className="filter-delete-icon" onClick={() => this.props.onValueChanged("")}>del</span> + </div> + } + </div> + ); + } +} + +export default StringField; |