mirror of
https://github.com/strapi/strapi.git
synced 2025-11-02 19:04:38 +00:00
Add required input class
This commit is contained in:
parent
1cbe94941d
commit
b3eeebb556
@ -140,8 +140,10 @@ class InputNumber extends React.Component { // eslint-disable-line react/prefer-
|
|||||||
placeholder={placeholder}
|
placeholder={placeholder}
|
||||||
/>;
|
/>;
|
||||||
|
|
||||||
|
const requiredClass = this.props.validations.required && this.props.addRequiredInputDesign ? this.props.styles.requiredClass : '';
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={`${this.props.styles.inputNumber} ${bootStrapClass} ${bootStrapClassDanger}`}>
|
<div className={`${this.props.styles.inputNumber} ${requiredClass} ${bootStrapClass} ${bootStrapClassDanger}`}>
|
||||||
<label htmlFor={this.props.name}><FormattedMessage {...{id: this.props.name}} /></label>
|
<label htmlFor={this.props.name}><FormattedMessage {...{id: this.props.name}} /></label>
|
||||||
{input}
|
{input}
|
||||||
<small>{this.props.inputDescription}</small>
|
<small>{this.props.inputDescription}</small>
|
||||||
@ -152,6 +154,7 @@ class InputNumber extends React.Component { // eslint-disable-line react/prefer-
|
|||||||
}
|
}
|
||||||
|
|
||||||
InputNumber.propTypes = {
|
InputNumber.propTypes = {
|
||||||
|
addRequiredInputDesign: React.PropTypes.bool,
|
||||||
customBootstrapClass: React.PropTypes.string,
|
customBootstrapClass: React.PropTypes.string,
|
||||||
deactivateErrorHighlight: React.PropTypes.bool,
|
deactivateErrorHighlight: React.PropTypes.bool,
|
||||||
errors: React.PropTypes.oneOfType([
|
errors: React.PropTypes.oneOfType([
|
||||||
|
|||||||
@ -20,9 +20,10 @@ class InputSelect extends React.Component { // eslint-disable-line react/prefer-
|
|||||||
|
|
||||||
render() {
|
render() {
|
||||||
const bootStrapClass = this.props.customBootstrapClass ? this.props.customBootstrapClass : 'col-md-6';
|
const bootStrapClass = this.props.customBootstrapClass ? this.props.customBootstrapClass : 'col-md-6';
|
||||||
|
const requiredClass = this.props.validations.required && this.props.addRequiredInputDesign ? styles.requiredClass : '';
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={`${styles.inputSelect} ${bootStrapClass}`}>
|
<div className={`${styles.inputSelect} ${requiredClass} ${bootStrapClass}`}>
|
||||||
<label htmlFor={this.props.name}>
|
<label htmlFor={this.props.name}>
|
||||||
<FormattedMessage {...{id: this.props.name}} />
|
<FormattedMessage {...{id: this.props.name}} />
|
||||||
</label>
|
</label>
|
||||||
@ -49,6 +50,7 @@ class InputSelect extends React.Component { // eslint-disable-line react/prefer-
|
|||||||
}
|
}
|
||||||
|
|
||||||
InputSelect.propTypes = {
|
InputSelect.propTypes = {
|
||||||
|
addRequiredInputDesign: React.PropTypes.bool,
|
||||||
customBootstrapClass: React.PropTypes.string,
|
customBootstrapClass: React.PropTypes.string,
|
||||||
handleChange: React.PropTypes.func.isRequired,
|
handleChange: React.PropTypes.func.isRequired,
|
||||||
name: React.PropTypes.string.isRequired,
|
name: React.PropTypes.string.isRequired,
|
||||||
@ -57,6 +59,7 @@ InputSelect.propTypes = {
|
|||||||
React.PropTypes.object, // TODO remove
|
React.PropTypes.object, // TODO remove
|
||||||
]),
|
]),
|
||||||
target: React.PropTypes.string,
|
target: React.PropTypes.string,
|
||||||
|
validations: React.PropTypes.object,
|
||||||
value: React.PropTypes.string,
|
value: React.PropTypes.string,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -14,3 +14,13 @@
|
|||||||
border-radius: 0rem!important;
|
border-radius: 0rem!important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.requiredClass {
|
||||||
|
> label:after {
|
||||||
|
color: red;
|
||||||
|
font-family: Lato;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-left: 5px;
|
||||||
|
content: "*";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@ -158,8 +158,11 @@ class InputText extends React.Component { // eslint-disable-line react/prefer-st
|
|||||||
placeholder={placeholder}
|
placeholder={placeholder}
|
||||||
/>;
|
/>;
|
||||||
|
|
||||||
|
|
||||||
|
const requiredClass = this.props.validations.required && this.props.addRequiredInputDesign ? this.props.styles.requiredClass : '';
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={`${this.props.styles.inputText} ${bootStrapClass} ${bootStrapClassDanger}`}>
|
<div className={`${this.props.styles.inputText} ${bootStrapClass} ${requiredClass} ${bootStrapClassDanger}`}>
|
||||||
{label}
|
{label}
|
||||||
{input}
|
{input}
|
||||||
<small>{this.props.inputDescription}</small>
|
<small>{this.props.inputDescription}</small>
|
||||||
@ -170,6 +173,7 @@ class InputText extends React.Component { // eslint-disable-line react/prefer-st
|
|||||||
}
|
}
|
||||||
|
|
||||||
InputText.propTypes = {
|
InputText.propTypes = {
|
||||||
|
addRequiredInputDesign: React.PropTypes.bool,
|
||||||
customBootstrapClass: React.PropTypes.string,
|
customBootstrapClass: React.PropTypes.string,
|
||||||
deactivateErrorHighlight: React.PropTypes.bool,
|
deactivateErrorHighlight: React.PropTypes.bool,
|
||||||
errors: React.PropTypes.array,
|
errors: React.PropTypes.array,
|
||||||
|
|||||||
@ -93,12 +93,20 @@
|
|||||||
color: white;
|
color: white;
|
||||||
width: 15rem;
|
width: 15rem;
|
||||||
margin-left: 1.9rem!important;
|
margin-left: 1.9rem!important;
|
||||||
|
&:hover {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.secondary {
|
.secondary {
|
||||||
font-family: Lato;
|
font-family: Lato;
|
||||||
color: #F64D0A;
|
color: #F64D0A;
|
||||||
border: 0.1rem solid #F64D0A;
|
border: 0.1rem solid #F64D0A;
|
||||||
|
&:hover {
|
||||||
|
color: #F64D0A;
|
||||||
|
background-color: white;
|
||||||
|
border: 0.1rem solid #F64D0A;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.bordered {
|
.bordered {
|
||||||
@ -152,6 +160,11 @@
|
|||||||
> input {
|
> input {
|
||||||
margin-top: 1.3rem!important;
|
margin-top: 1.3rem!important;
|
||||||
}
|
}
|
||||||
|
> button {
|
||||||
|
&:focus {
|
||||||
|
outline: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.padded {
|
.padded {
|
||||||
|
|||||||
@ -11,7 +11,7 @@
|
|||||||
bottom: -5.4rem;
|
bottom: -5.4rem;
|
||||||
left: 3rem;
|
left: 3rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
color: #27B710;
|
||||||
}
|
}
|
||||||
|
|
||||||
.rounded {
|
.rounded {
|
||||||
@ -22,7 +22,7 @@
|
|||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
padding-left: .1rem;
|
padding-left: .1rem;
|
||||||
padding-bottom: .1rem;
|
padding-bottom: .1rem;
|
||||||
border: 1px solid black;
|
border: 1px solid #27B710;
|
||||||
font-size: .4rem;
|
font-size: .4rem;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@ -19,6 +19,7 @@ import styles from './styles.scss';
|
|||||||
|
|
||||||
const WithFormSection = (InnerComponent) => class extends React.Component {
|
const WithFormSection = (InnerComponent) => class extends React.Component {
|
||||||
static propTypes = {
|
static propTypes = {
|
||||||
|
addRequiredInputDesign: React.PropTypes.bool,
|
||||||
cancelAction: React.PropTypes.bool,
|
cancelAction: React.PropTypes.bool,
|
||||||
handleChange: React.PropTypes.func.isRequired,
|
handleChange: React.PropTypes.func.isRequired,
|
||||||
section: React.PropTypes.oneOfType([
|
section: React.PropTypes.oneOfType([
|
||||||
@ -113,6 +114,7 @@ const WithFormSection = (InnerComponent) => class extends React.Component {
|
|||||||
selectOptions={selectOptions}
|
selectOptions={selectOptions}
|
||||||
validations={props.validations}
|
validations={props.validations}
|
||||||
value={inputValue}
|
value={inputValue}
|
||||||
|
addRequiredInputDesign={this.props.addRequiredInputDesign}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -52,3 +52,13 @@
|
|||||||
.insideInput:hover {
|
.insideInput:hover {
|
||||||
color: black!important;
|
color: black!important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.requiredClass {
|
||||||
|
> label:after {
|
||||||
|
color: red;
|
||||||
|
font-family: Lato;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-left: 5px;
|
||||||
|
content: "*";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@ -304,6 +304,7 @@ export class Home extends React.Component { // eslint-disable-line react/prefer-
|
|||||||
clearable={false}
|
clearable={false}
|
||||||
|
|
||||||
/>
|
/>
|
||||||
|
<div className={styles.popUpSpacer} />
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
@ -332,7 +333,7 @@ export class Home extends React.Component { // eslint-disable-line react/prefer-
|
|||||||
const specificComponent = findKey(this.customComponents, (value) => includes(value, this.props.params.slug)) || 'defaultComponent';
|
const specificComponent = findKey(this.customComponents, (value) => includes(value, this.props.params.slug)) || 'defaultComponent';
|
||||||
// if custom view display render specificComponent
|
// if custom view display render specificComponent
|
||||||
const Component = this.components[specificComponent];
|
const Component = this.components[specificComponent];
|
||||||
|
const addRequiredInputDesign = this.props.params.slug === 'databases';
|
||||||
const listTitle = this.props.params.slug === 'languages' || 'databases' ? this.renderListTitle() : '';
|
const listTitle = this.props.params.slug === 'languages' || 'databases' ? this.renderListTitle() : '';
|
||||||
const listButtonLabel = this.props.params.slug === 'languages' || 'databases' ? this.renderListButtonLabel() : '';
|
const listButtonLabel = this.props.params.slug === 'languages' || 'databases' ? this.renderListButtonLabel() : '';
|
||||||
|
|
||||||
@ -390,6 +391,7 @@ export class Home extends React.Component { // eslint-disable-line react/prefer-
|
|||||||
renderListComponent={renderListComponent}
|
renderListComponent={renderListComponent}
|
||||||
cancelAction={this.props.home.cancelAction}
|
cancelAction={this.props.home.cancelAction}
|
||||||
actionBeforeOpenPopUp={actionBeforeOpenPopUp}
|
actionBeforeOpenPopUp={actionBeforeOpenPopUp}
|
||||||
|
addRequiredInputDesign={addRequiredInputDesign}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -34,3 +34,7 @@
|
|||||||
.modalLanguageLabel {
|
.modalLanguageLabel {
|
||||||
padding-bottom: 10px;
|
padding-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.popUpSpacer {
|
||||||
|
height: 1rem;
|
||||||
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user