import React, { useEffect, useState, useRef } from 'react' import { CreditCardModel, CreditCardScreen } from './../models/CreditCardModel' import CreditCardProps from './../models/CreditCardProps' import environment from './../utils/environment' import DataForm from 'vComponents/dist/DataForm' import { useIMask } from 'react-imask' import ReactCardFlip from 'react-card-flip' const LoginPage = () => { const maskFieldOptions = { mask: '+{7}(000)000-00-00' } const modelInitial = CreditCardModel() const [model, setModel] = useState(modelInitial) const [headers, setHeaders] = useState(CreditCardProps()) const [isReadyHeaders, setIsReadyHeaders] = useState(false) const [testInput, setTestInput] = useState(null) const [isFlipped, setIsFlipped] = useState(false) const [opts, setOpts] = useState(maskFieldOptions) const { ref, maskRef, value, setValue, unmaskedValue, setUnmaskedValue, typedValue, setTypedValue, } = useIMask(opts, /* { onAccept, onComplete } */); // Declare a new state variable, which we'll call 'count' const completeHeaders = () => { let _newHeaders = [] _newHeaders = environment.buildFunctiontsHeaders(headers) setHeaders(_newHeaders) setIsReadyHeaders(true) } const formComponent = useRef(null) // when page is mounted useEffect(() => { completeHeaders() }, []) return (
{/* -{value}- */} { console.log('new model result ', newMod) }} onCancel={() => { formComponent.current.reset(); setModel({}) }} onAnyChange={() => { setModel(formComponent.current.getValues()) }} />
{ setIsFlipped(!isFlipped) }}>
Card Number {model.card_number}
Name {model.name}
Expiration Date {model.expiration_date}
{ setIsFlipped(!isFlipped) }}>
{model.security_code}
) } export default LoginPage