Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0a1c4a7d2f | |||
| 65a531922f | |||
| ae01f21c61 | |||
| 39dfa6b1dc | |||
| d52f7ced65 | |||
| 5624666213 | |||
| 40e5615cce | |||
| f36d80ac9a | |||
| 886f58f5ea |
@@ -2,7 +2,6 @@ import React, { useState } from "react";
|
||||
import { Link, useNavigate } from "react-router-dom";
|
||||
// import { toast } from "react-toastify";
|
||||
import localImgLoad from "../../lib/localImgLoad";
|
||||
import CountDown from "../Helpers/CountDown";
|
||||
import Icons from "../Helpers/Icons";
|
||||
|
||||
export default function TrackItemCard({ datas, hidden = false }) {
|
||||
@@ -18,7 +17,7 @@ export default function TrackItemCard({ datas, hidden = false }) {
|
||||
}
|
||||
};
|
||||
return (
|
||||
<div className="card-style-one flex flex-col justify-between w-full h-[200px] bg-white dark:bg-dark-white p-3 pb rounded-2xl cursor-pointer" onClick={()=>{navigate(`/track-action/${datas.widget}`, { replace: true })}}>
|
||||
<div className="card-style-one flex flex-col justify-between w-full h-[220px] bg-white dark:bg-dark-white p-3 pb rounded-2xl cursor-pointer" onClick={()=>{navigate(`/track-action/${datas.widget}`, { replace: true })}}>
|
||||
<div className="content">
|
||||
{/* thumbnail */}
|
||||
<div className="w-full h-40">
|
||||
@@ -77,7 +76,7 @@ export default function TrackItemCard({ datas, hidden = false }) {
|
||||
</div>
|
||||
</div>
|
||||
{/* user */}
|
||||
<div className="user w-ful -mt-6 mb-2">
|
||||
<div className="user w-full text-center mt-3">
|
||||
|
||||
<p className="text-sm text-thin-light-gray dark:text-white">
|
||||
<Link
|
||||
|
||||
@@ -9,7 +9,8 @@ export default function InputCom({
|
||||
iconName,
|
||||
inputHandler,
|
||||
value,
|
||||
maxLength
|
||||
maxLength,
|
||||
borderColor
|
||||
}) {
|
||||
return (
|
||||
<div className="input-com">
|
||||
@@ -21,12 +22,12 @@ export default function InputCom({
|
||||
{label}
|
||||
</label>
|
||||
)}
|
||||
<div className="input-wrapper border border-light-purple dark:border-[#5356fb29] w-full rounded-[50px] h-[58px] overflow-hidden relative ">
|
||||
<div className={`input-wrapper border border-light-purple dark:border-[#5356fb29] w-full rounded-[50px] h-[58px] overflow-hidden relative ${borderColor}`}>
|
||||
<input
|
||||
placeholder={placeholder}
|
||||
value={value}
|
||||
onChange={inputHandler}
|
||||
className="input-field placeholder:text-base text-base px-6 text-dark-gray dark:text-white w-full h-full bg-[#FAFAFA] dark:bg-[#11131F] focus:ring-0 focus:outline-none"
|
||||
className="input-field placeholder:text-base text-base px-6 text-dark-gray dark:text-white w-full h-full bg-[#FAFAFA] dark:bg-[#11131F] focus:ring-0 focus:outline-none"
|
||||
type={type}
|
||||
id={name}
|
||||
name={name}
|
||||
|
||||
@@ -26,6 +26,8 @@ export default function Layout({ children }) {
|
||||
localStorage.removeItem('member_uuid');
|
||||
localStorage.removeItem('session_token');
|
||||
localStorage.removeItem('status');
|
||||
localStorage.removeItem('layout');
|
||||
localStorage.removeItem('measurement_units');
|
||||
// toast.success("Come Back Soon", {
|
||||
// icon: `🙂`,
|
||||
// });
|
||||
|
||||
@@ -36,10 +36,10 @@ export default function AddEditReminder({ className }) {
|
||||
'member_id': localStorage.getItem('member_id'),
|
||||
description: location.state?.reminder.description || '',
|
||||
notes: location.state?.reminder.notes || '',
|
||||
category: location.state?.reminder.code || '',
|
||||
mode: location.state?.reminder.code || ''
|
||||
category: location.state?.reminder.category || '',
|
||||
mode: location.state?.reminder.mode || ''
|
||||
})
|
||||
|
||||
// console.log(reminder)
|
||||
const onReminderInputChange = ({target:{name,value}}) => { //function to run when user changes any input on the add reminder page
|
||||
setReminder(prev=>(
|
||||
{...prev, [name]:value}
|
||||
@@ -128,6 +128,7 @@ export default function AddEditReminder({ className }) {
|
||||
value={reminder.description}
|
||||
inputHandler={onReminderInputChange}
|
||||
maxLength={100}
|
||||
borderColor='border border-pink'
|
||||
/>
|
||||
</div>
|
||||
|
||||
@@ -229,7 +230,7 @@ export default function AddEditReminder({ className }) {
|
||||
value={reminder.notes}
|
||||
placeholder="Provide a detailed description of your item."
|
||||
rows="7"
|
||||
className="w-full h-full px-7 py-4 border border-light-purple dark:border-[#5356fb29] rounded-[20px] text-dark-gray dark:text-white bg-[#FAFAFA] dark:bg-[#11131F] focus:ring-0 focus:outline-none resize-none"
|
||||
className="w-full h-full px-7 py-4 border border-pink dark:border-[#5356fb29] rounded-[20px] text-dark-gray dark:text-white bg-[#FAFAFA] dark:bg-[#11131F] focus:ring-0 focus:outline-none resize-none"
|
||||
onChange={onReminderInputChange}
|
||||
maxLength={250}
|
||||
/>
|
||||
@@ -266,7 +267,7 @@ export default function AddEditReminder({ className }) {
|
||||
className="w-[152px] h-[46px] flex justify-center items-center btn-gradient text-base rounded-full text-white"
|
||||
onClick={handleAddReminder}
|
||||
>
|
||||
{location.state?.reminder ? 'Edit' : 'Add Reminder'}
|
||||
{location.state?.reminder ? 'Update' : 'Add Reminder'}
|
||||
</button>
|
||||
}
|
||||
</div>
|
||||
|
||||
@@ -205,7 +205,6 @@ export default function ReminderTable({ className }) {
|
||||
})
|
||||
)
|
||||
}
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
import React from "react";
|
||||
import { Link } from "react-router-dom";
|
||||
|
||||
export default function SubScriptionTop({ className }) {
|
||||
return (
|
||||
<div
|
||||
className={`create-nft w-full lg:h-[140px] shadow lg:flex rounded-lg justify-between items-center md:p-9 p-4 bg-white dark:bg-dark-white border-b dark:border-[#5356fb29] -2 border-pink mb-10 ${
|
||||
className || ""
|
||||
}`}
|
||||
>
|
||||
<div className="lg:w-8/12 w-full mb-8 lg:mb-0">
|
||||
<h1 className="text-2xl text-dark-gray dark:text-white font-bold mb-2">
|
||||
Some how we will say the name of uout current Subscription
|
||||
</h1>
|
||||
<p className="text-base text-thin-light-gray tracking-wide">
|
||||
Last paymant date + nect pay day
|
||||
</p>
|
||||
</div>
|
||||
<div className="flex-1 flex lg:justify-end">
|
||||
<div className="flex items-center space-x-5">
|
||||
<Link
|
||||
to="#"
|
||||
className="w-40 h-11 flex justify-center items-center btn-gradient text-base rounded-full text-white"
|
||||
>
|
||||
Some actions
|
||||
</Link>
|
||||
<Link to="#" className="text-dark-gray dark:text-white text-base">
|
||||
<span className=" border-b dark:border-[#5356fb29] border-dark-gray font-medium">
|
||||
terms and conditions
|
||||
</span>
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
@@ -8,13 +8,14 @@ import CurrentBalanceWidget from "../MyWallet/CurrentBalanceWidget";
|
||||
import Layout from "../Partials/Layout";
|
||||
//import SellAnaliseStatics from "./SellAnaliseStatics";
|
||||
import SellProductHistoryTable from "./SellProductHistoryTable";
|
||||
|
||||
import SubScriptionTop from "./SubScriptionTop";
|
||||
|
||||
import PricingListTable from "./PricingListTable";
|
||||
export default function Subscriptions() {
|
||||
return (
|
||||
<>
|
||||
<Layout>
|
||||
<SubScriptionTop />
|
||||
<div className="sell-page-wrapper w-full mb-10">
|
||||
<div className="main-wrapper w-full">
|
||||
<div className="current_balance-bit-sell-widget w-full lg:h-[436px] mb-11">
|
||||
|
||||
+5
-2
@@ -735,7 +735,7 @@ TODO: Responsive ===========================
|
||||
appearance: none;
|
||||
background: url("data:image/svg+xml,<svg height='10px' width='10px' viewBox='0 0 16 16' fill='%23000000' xmlns='http://www.w3.org/2000/svg'><path d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/></svg>") no-repeat #fafafa;
|
||||
background-position: calc(100% - 0.75rem) center !important;
|
||||
border: 0.5px solid #E3E4FE;
|
||||
@apply border border-pink;
|
||||
}
|
||||
|
||||
.dark .reminder-select select {
|
||||
@@ -764,6 +764,7 @@ TODO: Responsive ===========================
|
||||
padding: 1.25rem;
|
||||
background: #fafafa;
|
||||
border-radius: 9999px;
|
||||
@apply border border-pink;
|
||||
}
|
||||
|
||||
.dark .react-date-picker__wrapper {border: 0.5px solid #25284F;}
|
||||
@@ -788,4 +789,6 @@ TODO: Responsive ===========================
|
||||
.react-date-picker__inputGroup__leadingZero{
|
||||
cursor: pointer;
|
||||
color: #374151;
|
||||
}
|
||||
}
|
||||
|
||||
.animate-fadeIn {@apply transition duration-300}
|
||||
@@ -18,6 +18,8 @@ const AuthRoute = ({ redirectPath = "/login", children }) => {
|
||||
localStorage.removeItem('member_id');
|
||||
localStorage.removeItem('member_uuid');
|
||||
localStorage.removeItem('status');
|
||||
localStorage.removeItem('layout');
|
||||
localStorage.removeItem('measurement_units');
|
||||
navigate("/login", { replace: true }); // redirects user to login page after session expires
|
||||
};
|
||||
|
||||
@@ -30,15 +32,15 @@ const AuthRoute = ({ redirectPath = "/login", children }) => {
|
||||
|
||||
|
||||
useEffect(()=>{
|
||||
let sessionExpReminder = setTimeout(()=>{ //reminds user of session expiry after 4 mins 240000
|
||||
let sessionExpReminder = setTimeout(()=>{ //reminds user of session expiry after 8 mins
|
||||
expireSessionReminder()
|
||||
}, 240000)
|
||||
}, 480000)
|
||||
|
||||
let timeForSessionExpiry = setTimeout(()=>{ //reminds user of session expiry after 4 mins 300000
|
||||
let timeForSessionExpiry = setTimeout(()=>{ //expire session after 10 mins
|
||||
expireSession()
|
||||
}, 300000)
|
||||
}, 600000)
|
||||
|
||||
return ()=>{ // clears timeout side effect
|
||||
return ()=>{ // clears timeout side effect7
|
||||
clearTimeout(sessionExpReminder)
|
||||
clearInterval(timeForSessionExpiry)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user