Refuse popup working

This commit is contained in:
Maxime Lalo 2023-04-20 16:34:47 +02:00
parent 4a53e5536e
commit 5763f380e2
3 changed files with 44 additions and 4 deletions

View File

@ -21,7 +21,7 @@ export default class Confirm extends React.Component<IProps, IState> {
showCancelButton: true, showCancelButton: true,
cancelText: "Cancel", cancelText: "Cancel",
confirmText: "Confirm", confirmText: "Confirm",
canConfirm: false, canConfirm: true,
...Modal.defaultProps, ...Modal.defaultProps,
}; };

View File

@ -25,4 +25,10 @@
flex-direction: column-reverse; flex-direction: column-reverse;
} }
} }
.refuse-document-container {
.refuse-text {
margin-bottom: 24px;
}
}
} }

View File

@ -1,5 +1,6 @@
import Button, { EButtonVariant } from "@Front/Components/DesignSystem/Button"; import Button, { EButtonVariant } from "@Front/Components/DesignSystem/Button";
import FilePreview from "@Front/Components/DesignSystem/FilePreview"; import FilePreview from "@Front/Components/DesignSystem/FilePreview";
import InputField from "@Front/Components/DesignSystem/Form/Elements/InputField";
import Confirm from "@Front/Components/DesignSystem/Modal/Confirm"; import Confirm from "@Front/Components/DesignSystem/Modal/Confirm";
import Typography, { ITypo, ITypoColor } from "@Front/Components/DesignSystem/Typography"; import Typography, { ITypo, ITypoColor } from "@Front/Components/DesignSystem/Typography";
import DefaultNotaryDashboard from "@Front/Components/LayoutTemplates/DefaultNotaryDashboard"; import DefaultNotaryDashboard from "@Front/Components/LayoutTemplates/DefaultNotaryDashboard";
@ -12,6 +13,7 @@ type IProps = {};
type IState = { type IState = {
isRefuseModalVisible: boolean; isRefuseModalVisible: boolean;
isValidateModalVisible: boolean; isValidateModalVisible: boolean;
refuseText: string;
}; };
export default class ViewDocuments extends BasePage<IProps, IState> { export default class ViewDocuments extends BasePage<IProps, IState> {
@ -21,16 +23,22 @@ export default class ViewDocuments extends BasePage<IProps, IState> {
this.state = { this.state = {
isValidateModalVisible: false, isValidateModalVisible: false,
isRefuseModalVisible: false, isRefuseModalVisible: false,
refuseText: "",
}; };
this.closeModals = this.closeModals.bind(this); this.closeModals = this.closeModals.bind(this);
this.openValidateModal = this.openValidateModal.bind(this); this.openValidateModal = this.openValidateModal.bind(this);
this.openRefuseModal = this.openRefuseModal.bind(this); this.openRefuseModal = this.openRefuseModal.bind(this);
this.onRefuseTextChange = this.onRefuseTextChange.bind(this);
} }
public override render(): JSX.Element { public override render(): JSX.Element {
return ( return (
<DefaultNotaryDashboard title={"Demander des documents"} onSelectedFolder={() => {}} hasBackArrow mobileBackText="Retour aux documents"> <DefaultNotaryDashboard
title={"Demander des documents"}
onSelectedFolder={() => {}}
hasBackArrow
mobileBackText="Retour aux documents">
<div className={classes["root"]}> <div className={classes["root"]}>
<Typography typo={ITypo.H1} color={ITypoColor.BLACK} className={classes["title"]}> <Typography typo={ITypo.H1} color={ITypoColor.BLACK} className={classes["title"]}>
App 23 rue Torus Toulon App 23 rue Torus Toulon
@ -42,24 +50,50 @@ export default class ViewDocuments extends BasePage<IProps, IState> {
<FilePreview href="https://minteed-stg-euwest3-s3.s3.eu-west-3.amazonaws.com/Qmf_Yb_Eh_X9st_F_Srq_Ve_Bj_Yb_Aj56xv_AV_Nj6_Wjypo_B4r5ubce_U_ae3303e7ab.pdf" /> <FilePreview href="https://minteed-stg-euwest3-s3.s3.eu-west-3.amazonaws.com/Qmf_Yb_Eh_X9st_F_Srq_Ve_Bj_Yb_Aj56xv_AV_Nj6_Wjypo_B4r5ubce_U_ae3303e7ab.pdf" />
</div> </div>
<div className={classes["buttons-container"]}> <div className={classes["buttons-container"]}>
<Button variant={EButtonVariant.GHOST}>Refuser</Button> <Button variant={EButtonVariant.GHOST} onClick={this.openRefuseModal}>
<Button>Valider et ancrer</Button> Refuser
</Button>
<Button onClick={this.openValidateModal}>Valider et ancrer</Button>
<Button disabled>Télécharger</Button> <Button disabled>Télécharger</Button>
</div> </div>
<Confirm <Confirm
isOpen={this.state.isValidateModalVisible} isOpen={this.state.isValidateModalVisible}
onClose={this.closeModals} onClose={this.closeModals}
onAccept={this.closeModals}
closeBtn closeBtn
header={"Créer un type de document"} header={"Créer un type de document"}
cancelText={"Annuler"} cancelText={"Annuler"}
confirmText={"Ajouter"}> confirmText={"Ajouter"}>
<div className={classes["add-document-form-container"]}></div> <div className={classes["add-document-form-container"]}></div>
</Confirm> </Confirm>
<Confirm
isOpen={this.state.isRefuseModalVisible}
onClose={this.closeModals}
onAccept={this.closeModals}
closeBtn
header={"Refuser le document ?"}
cancelText={"Annuler"}
confirmText={"Refuser"}
canConfirm={this.state.refuseText !== ""}>
<div className={classes["refuse-document-container"]}>
<Typography typo={ITypo.P_16} color={ITypoColor.BLACK} className={classes["refuse-text"]}>
Veuillez indiquer au client le motif du refus de son document afin qu'il puisse vous renvoyer une bonne
version.
</Typography>
<InputField fakeplaceholder="Motif du refus" textarea onChange={this.onRefuseTextChange} />
</div>
</Confirm>
</div> </div>
</DefaultNotaryDashboard> </DefaultNotaryDashboard>
); );
} }
private onRefuseTextChange(e: React.ChangeEvent<HTMLInputElement>) {
this.setState({
refuseText: e.target.value,
});
}
private openValidateModal() { private openValidateModal() {
this.setState({ this.setState({
isValidateModalVisible: true, isValidateModalVisible: true,