File "TextSwitchInput.js"
Full path: /home/satkhirabarta/public_html/wp-content/plugins/complianz-gdpr/settings/src/Settings/Inputs/TextSwitchInput.js
File
size: 1.01 B
MIME-type: text/x-java
Charset: utf-8
Download Open Edit Advanced Editor &nnbsp; Back
import TextInput from './TextInput';
import SwitchInput from './SwitchInput';
import {__} from '@wordpress/i18n';
import {memo, useEffect, useState} from 'react';
const TextSwitchInput = ({
label,
value,
onChange,
placeholder = ''
}) => {
const [textDisabled, setTextDisabled] = useState(false);
useEffect(() => {
if (value['show']) {
setTextDisabled(false);
} else {
setTextDisabled(true);
}
}, [value]);
const onTextChange = (text) => {
let newValue = {...value};
newValue['text'] = text;
onChange(newValue);
}
const onSwitchHandler = (switched) => {
let newValue = {...value};
newValue['show'] = switched;
onChange(newValue);
}
return (
<div className="cmplz-text-checkbox-input">
<TextInput
value={value['text']}
onChange={onTextChange}
placeholder={placeholder}
disabled={textDisabled}
/>
<SwitchInput
label={__('Show', 'complianz-gdpr')}
value={value['show']}
onChange={onSwitchHandler}
/>
</div>
);
}
export default memo(TextSwitchInput);