Compare commits

...

4 Commits

Author SHA1 Message Date
victorAnumudu ef784dc6ed dob field added 2024-10-23 19:14:08 +01:00
ameye 682745c321 Merge branch 'virtual-card-month' of WrenchBoard/Users-Wrench into master 2024-10-23 12:44:24 +00:00
victorAnumudu c63fbfc147 month fixed 2024-10-23 12:34:24 +01:00
ameye 9b0f847bc1 Merge branch 'walletbox-bug' of WrenchBoard/Users-Wrench into master 2024-10-19 02:32:05 +00:00
2 changed files with 119 additions and 73 deletions
@@ -28,7 +28,9 @@ export default function InputCom({
direction,
tabIndex,
error,
autoComplete="on"
autoComplete="on",
minDate='1900-01-01',
maxDate='2099-09-13'
}) {
const inputRef = useRef(null);
// Entry Validation
@@ -90,26 +92,51 @@ export default function InputCom({
: "text-[#5e6278] dark:text-gray-100 bg-[#f5f8fa] border"
}`}
>
<input
placeholder={placeholder}
value={value}
onChange={inputHandler}
className={`input-field placeholder:text-base text-dark-gray w-full h-full ${iconName && 'pr-6'} ${
inputBg && inputBg} tracking-wide focus:ring-0 focus:outline-none ${fieldClass}`}
type={type}
id={name}
name={name}
onInput={onInput}
minLength={minLengthValidation()}
maxLength={maxLengthValidation()}
tabIndex={tabIndex}
// pattern={inputPatterns()}
ref={inputRef}
readOnly={disable}
onBlur={blurHandler}
dir={direction}
autoComplete={autoComplete}
/>
<>
{type == 'date' ?
<input
placeholder={placeholder}
value={value}
onChange={inputHandler}
className={`input-field placeholder:text-base text-dark-gray w-full h-full ${iconName && 'pr-6'} ${
inputBg && inputBg} tracking-wide focus:ring-0 focus:outline-none ${fieldClass}`}
type={type}
id={name}
name={name}
onInput={onInput}
min={minDate}
max={maxDate}
tabIndex={tabIndex}
// pattern={inputPatterns()}
ref={inputRef}
readOnly={disable}
onBlur={blurHandler}
dir={direction}
autoComplete={autoComplete}
/>
:
<input
placeholder={placeholder}
value={value}
onChange={inputHandler}
className={`input-field placeholder:text-base text-dark-gray w-full h-full ${iconName && 'pr-6'} ${
inputBg && inputBg} tracking-wide focus:ring-0 focus:outline-none ${fieldClass}`}
type={type}
id={name}
name={name}
onInput={onInput}
minLength={minLengthValidation()}
maxLength={maxLengthValidation()}
tabIndex={tabIndex}
// pattern={inputPatterns()}
ref={inputRef}
readOnly={disable}
onBlur={blurHandler}
dir={direction}
autoComplete={autoComplete}
/>
}
</>
{iconName && (
<div className="absolute right-6 bottom-3 z-10 flex gap-2">
{iconName.split(" ").map((item, index) => (
@@ -17,12 +17,12 @@ const validationSchema = Yup.object().shape({
.min(9, "Min 9 characters")
.max(11, "Max 11 characters")
.required("Required"),
birthYear: Yup.string()
.required("Required"),
birthMonth: Yup.string()
.required("Required"),
birthDay: Yup.string()
.required("Required"),
// birthYear: Yup.string()
// .required("Required"),
// birthMonth: Yup.string()
// .required("Required"),
// birthDay: Yup.string()
// .required("Required"),
address: Yup.string()
.min(5, "Min 3 characters")
.max(50, "Max 25 characters")
@@ -37,6 +37,8 @@ const validationSchema = Yup.object().shape({
.min(1, "Min 3 characters")
.max(8, "Max 8 characters")
.required("Required"),
dob: Yup.string()
.required("Required"),
});
const VirtualAddCardPopout = ({ details, onClose, situation, walletItem }) => {
@@ -67,32 +69,33 @@ const VirtualAddCardPopout = ({ details, onClose, situation, walletItem }) => {
address: '',
city: userDetails?.city ? userDetails.city : '',
state: '',
zipCode: ''
zipCode: '',
dob: ''
};
const handleSubmit = (values) => {
const reqData1 = {
name: values.firstname + ' ' + values.firstname,
email: values.email,
phone_number: values.phone_number,
status: 'active',
type: 'individual',
individual: {
first_name: values.firstname,
last_name: values.lastname,
dob: {day: values.birthDay, month: values.birthMonth, year: values.birthYear}
},
billing:{
address : {
line1: values.address,
city: values.city,
state: values.state,
postal_code: values.zipCode,
country: values.country
}
}
}
// const reqData1 = {
// name: values.firstname + ' ' + values.firstname,
// email: values.email,
// phone_number: values.phone_number,
// status: 'active',
// type: 'individual',
// individual: {
// first_name: values.firstname,
// last_name: values.lastname,
// dob: {day: values.birthDay, month: values.birthMonth, year: values.birthYear}
// },
// billing:{
// address : {
// line1: values.address,
// city: values.city,
// state: values.state,
// postal_code: values.zipCode,
// country: values.country
// }
// }
// }
const reqData = {
request_type: '100',
address: values.address,
@@ -101,9 +104,13 @@ const VirtualAddCardPopout = ({ details, onClose, situation, walletItem }) => {
country: values.country,
postal_code: values.zipCode,
phone_number: values.phone_number,
dob_day: values.birthDay,
dob_month: values.birthMonth,
dob_year: values.birthYear,
// dob_day: values.birthDay,
// dob_month: values.birthMonth,
// dob_year: values.birthYear,
dob_day: Number(new Date(values.dob).getDate()),
dob_month: Number(new Date(values.dob).getMonth()) + 1,
dob_year: Number(new Date(values.dob).getFullYear()),
dob: values.dob
}
// console.log('Values', reqData)
setRequestStatus({loading: true, status:false, message: ''})
@@ -306,8 +313,8 @@ const VirtualAddCardPopout = ({ details, onClose, situation, walletItem }) => {
/>
</div>
<div className="field w-full flex flex-col gap-4">
<p className='job-label'>Date of Birth</p>
<div className='grid xxs:grid-cols-3 gap-4'>
<p className='hidden job-label'>Date of Birth</p>
<div className='hidden xxs:grid-cols-3 gap-4'>
<div className="field w-full">
<label
htmlFor="birthDay"
@@ -402,6 +409,23 @@ const VirtualAddCardPopout = ({ details, onClose, situation, walletItem }) => {
</select>
</div>
</div>
<div className=''>
<InputCom
fieldClass="px-6"
label="Date of Birth"
labelClass="tracking-wide"
inputBg="bg-slate-100"
inputClass="input-curve lg border border-light-purple"
type="date"
name="dob"
value={props.values.dob}
inputHandler={props.handleChange}
error={(props.errors.dob && props.touched.dob) && props.errors.dob}
maxDate={year[0] + '-12-31'}
minDate={year[year?.length - 1] + '-01-01'}
/>
</div>
</div>
</div>
@@ -543,29 +567,24 @@ const VirtualAddCardPopout = ({ details, onClose, situation, walletItem }) => {
export default VirtualAddCardPopout;
const day = new Array(31).fill(0).map((_,i) => i+1 )
const month = [
{value: 0, name: 'January'},
{value: 1, name: 'February'},
{value: 2, name: 'March'},
{value: 3, name: 'April'},
{value: 4, name: 'May'},
{value: 5, name: 'June'},
{value: 6, name: 'July'},
{value: 7, name: 'August'},
{value: 8, name: 'September'},
{value: 9, name: 'October'},
{value: 10, name: 'November'},
{value: 11, name: 'December'},
{value: 1, name: 'January'},
{value: 2, name: 'February'},
{value: 3, name: 'March'},
{value: 4, name: 'April'},
{value: 5, name: 'May'},
{value: 6, name: 'June'},
{value: 7, name: 'July'},
{value: 8, name: 'August'},
{value: 9, name: 'September'},
{value: 10, name: 'October'},
{value: 11, name: 'November'},
{value: 12, name: 'December'},
]
const date = new Date().getFullYear()
const year = new Array(100).fill(0).map((_,i) => (date-2) - i+1 )
// const state = [
// {value: 'abia', name: 'Abia'},
// {value: 'imo', name: 'Imo'},
// {value: 'anambra', name: 'Anambra'},
// ]
const year = new Array(100).fill(0).map((_,i) => (date-2) - i+1 )