add disabled button
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
import React, { useContext } from "react";
|
import React, { useContext, useEffect, useState } from "react";
|
||||||
import { PinkButton } from "../../mainPart/pinkButton";
|
import { PinkButton } from "../../mainPart/pinkButton";
|
||||||
import './popup.css';
|
import './popup.css';
|
||||||
import { LangDict } from "../../langDict";
|
import { LangDict } from "../../langDict";
|
||||||
@@ -16,6 +16,12 @@ type TProps = {
|
|||||||
|
|
||||||
export const Popup:React.FC<TProps> = React.memo((props) => {
|
export const Popup:React.FC<TProps> = React.memo((props) => {
|
||||||
const {lang} = useContext(ContextLang);
|
const {lang} = useContext(ContextLang);
|
||||||
|
const [isDisabledButton, setIsDisabledButton] = useState<boolean>(false);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
setIsDisabledButton(props?.accessCode === '');
|
||||||
|
}, [props?.accessCode])
|
||||||
|
|
||||||
return <div className="popup-container" style={{padding: props.type === "title-input-button" ? '48px 48px 26px 48px' : ''}}>
|
return <div className="popup-container" style={{padding: props.type === "title-input-button" ? '48px 48px 26px 48px' : ''}}>
|
||||||
{
|
{
|
||||||
props.logo
|
props.logo
|
||||||
@@ -38,8 +44,21 @@ export const Popup:React.FC<TProps> = React.memo((props) => {
|
|||||||
: <div className="popup-title-input-container">
|
: <div className="popup-title-input-container">
|
||||||
<span className="popup-title-input-title">{LangDict.promtConnectFirst[lang]}<br/>{LangDict.promtConnectSecond[lang]}</span>
|
<span className="popup-title-input-title">{LangDict.promtConnectFirst[lang]}<br/>{LangDict.promtConnectSecond[lang]}</span>
|
||||||
<div className="popup-title-input-input-container">
|
<div className="popup-title-input-input-container">
|
||||||
<input type={'text'} className='popup-title-input-input' value={props.accessCode} onChange={e => props.setAccessCode(e.target.value)} />
|
<input
|
||||||
<PinkButton textButton={LangDict.continue[lang]} onClick={props.onClickFirst} width='100%' />
|
type={'text'}
|
||||||
|
className='popup-title-input-input'
|
||||||
|
value={props.accessCode}
|
||||||
|
onChange={e => {
|
||||||
|
props.setAccessCode(e.target.value)
|
||||||
|
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<PinkButton
|
||||||
|
textButton={LangDict.continue[lang]}
|
||||||
|
onClick={props.onClickFirst}
|
||||||
|
width='100%'
|
||||||
|
disabled={isDisabledButton}
|
||||||
|
/>
|
||||||
<span className="popup-line"></span>
|
<span className="popup-line"></span>
|
||||||
</div>
|
</div>
|
||||||
<button className="popup-title-input-back-button" onClick={() => props.onClickChange()}>{LangDict.selecеDemoMode[lang]}</button>
|
<button className="popup-title-input-back-button" onClick={() => props.onClickChange()}>{LangDict.selecеDemoMode[lang]}</button>
|
||||||
|
|||||||
@@ -35,6 +35,13 @@
|
|||||||
border: none;
|
border: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.main-part-text-button.disabled,
|
||||||
|
.main-part-text-button.disabled:hover,
|
||||||
|
.main-part-text-button.disabled:active {
|
||||||
|
background: #828282;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
@media screen and (min-width: 2000px) {
|
@media screen and (min-width: 2000px) {
|
||||||
.main-part-text-button {
|
.main-part-text-button {
|
||||||
width: 50%;
|
width: 50%;
|
||||||
|
|||||||
@@ -7,7 +7,8 @@ type TProps = {
|
|||||||
onClick?: () => void
|
onClick?: () => void
|
||||||
type?: 'submit' | 'button'
|
type?: 'submit' | 'button'
|
||||||
width?: '100%' | string,
|
width?: '100%' | string,
|
||||||
variant?: 'gray' | 'default'
|
variant?: 'gray' | 'default',
|
||||||
|
disabled?: boolean
|
||||||
}
|
}
|
||||||
|
|
||||||
export const PinkButton:React.FC<TProps> = React.memo((props) => {
|
export const PinkButton:React.FC<TProps> = React.memo((props) => {
|
||||||
@@ -19,11 +20,12 @@ export const PinkButton:React.FC<TProps> = React.memo((props) => {
|
|||||||
}, [])
|
}, [])
|
||||||
return <button
|
return <button
|
||||||
style={{width: props.width ? props.width : '', ...styles}}
|
style={{width: props.width ? props.width : '', ...styles}}
|
||||||
className={`main-part-text-button ${props.variant === "gray" ? 'gray' : ''}`}
|
className={`main-part-text-button ${props.variant === "gray" ? 'gray' : ''} ${props.disabled ? 'disabled' : ''}`}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
return props?.onClick ? props.onClick() : null;
|
return props?.onClick ? props.onClick() : null;
|
||||||
}}
|
}}
|
||||||
type={props.type ? props.type : 'button'}
|
type={props.type ? props.type : 'button'}
|
||||||
|
disabled={props?.disabled || false}
|
||||||
>
|
>
|
||||||
{props.textButton}
|
{props.textButton}
|
||||||
</button>
|
</button>
|
||||||
|
|||||||
Reference in New Issue
Block a user