{"version":3,"sources":["utils/api.js","utils/platform.js","icons/v2/Info.svg","icons/v2/Close.svg","icons/v2/Success.svg","icons/v2/Failure.svg","components/Info/index.jsx","icons/search.svg","icons/v2/DetailGrey.svg","icons/v2/DetailBlue.svg","icons/v2/ArrowBack.svg","icons/v2/Calendar.svg","icons/arrow down.svg","components/Dropdown/index.jsx","components/OrderHistory/index.jsx","icons/v2/ShoppingCart.svg","icons/v2/MoneySpent.svg","helpers/CommonApplicationHelper.js","components/OrderStatistics/index.jsx","components/ReleaseProductCard/index.jsx","icons/v2/calenderRight.svg","components/ReleaseCalender/index.jsx","icons/v2/UpIcon.svg","icons/v2/DownIcon.svg","components/AdminStatistics/index.jsx","components/ProductCard/index.jsx","icons/v2/Refresh.svg","components/AdminProducts/index.jsx","components/AdminReleaseCalender/index.jsx","components/CreateRelease/index.jsx","components/AdminReleases/index.jsx","components/ValidationPopup/index.jsx","components/AdminLicenses/index.jsx","components/UpdateAddress/index.jsx","icons/v2/Stripe.svg","components/UpdateCard/CardInput.js","components/UpdateCard/index.jsx","icons/logo.svg","icons/chart.svg","icons/v2/Manage.svg","icons/chartGrey.svg","icons/setting.svg","icons/notification.svg","icons/v2/MobileCross.svg","icons/v2/MobileMenu.svg","components/Headers/index.jsx","components/PaymentCard/index.jsx","components/Payment/index.jsx","icons/cc/cardPlacerholder.svg","icons/cc/cardPlaceholderNew.svg","icons/cc/visa@1,5x.svg","icons/cc/mastercard@1,5x.svg","icons/cc/amex@1,5x.svg","components/CardDetails/index.jsx","icons/v2/Plan.svg","components/AdminOrderHistory/index.jsx","components/AdminPayments/index.jsx","components/AdminStores/index.jsx","components/AdminLogs/index.jsx","components/GlobalHeaders/index.jsx","components/GlobalFooters/index.jsx","components/LicenseList/index.jsx","components/CreateLicense/index.jsx","components/LicenseHistoryList/index.jsx","components/AdminLicenseHistory/index.jsx","icons/animationLogo.svg","components/CreateAddress/index.jsx","components/CreatePayment/CardInput.js","components/CreatePayment/index.jsx","components/LogoLoader/index.jsx","icons/v2/CalendarWhite.svg","pages/DashboardPage/index.jsx","assets/hero-image-atc.png","assets/hero-image-checkout.png","assets/hero-image-iddle.png","assets/analytics.png","assets/task.png","icons/v2/Purchase.svg","pages/LandingPage/index.jsx","pages/AdminDashboardPage/index.jsx","pages/MarketplacePage/index.jsx","icons/download.svg","pages/SubscriptionPage/index.jsx","pages/ImpressumPage/index.jsx","pages/NotFoundPage/index.jsx","pages/PrivacyPolicyPage/index.jsx","pages/TermsPage/index.jsx","pages/TermsCancellationPage/index.jsx","App.js","index.js"],"names":["getUserDetailsAdmin","axios","get","getPlatformBackend","withCredentials","getUserDetailsUser","getUserDetailsTransition","getReleases","response","getUserInfo","user_id","getAllLicensesUser","getAllLicensesHistory","postCreateCustomer","dataObj","post","data","email","city","country","line1","line2","postal_code","state","name","postCancelSubscription","customerId","getStripeCustomer","postGetCustomerDetails","postUpdateCustomerInfo","postGetUpcomingSubscription","postGetSubscriptionPayment","getOrderStatistics","license_id","postCloseClients","license","getPlatformBackendA","postCloseClient","authLicense","getCheckoutsProduct","getAllCheckoutsAdmin","getAllCheckoutsUser","defaults","InfoComponent","info","upcomingCharge","handleReload","React","useState","isShowFullKey","setisShowFullKey","upcomingChargeData","setUpcomingChargeData","isShowDate","setIsShowDate","date","setDate","subscriptionStatusBoolean","setSubscriptionStatusBoolean","resultTitle","setResultTitle","resultDescription","setResultDescription","isShowResult","setisShowResult","isSuccuess","setisSuccuess","loading","setLoading","isShowInfo","setIsShowInfo","isShowIcon","setIsShowIcon","popUpText","setPopUpText","isShowCancel","setIsShowCancel","showButtonLoading","setShowButtonLoading","isShowPopupCancel","setIsShowPopupCancel","stripe","useStripe","elements","useElements","postUpcomingSubscriptionData","customer_id","console","log","res","undefined","status","useEffect","fetchData","result","catch","error","Object","keys","length","cancelAtPeriodEnd","Date","toLocaleString","paymentIntentStatus","postCancelSubscriptionReq","handleCancelSubscription","success","setTimeout","handleDownloadInstaller","md5Key","MD5","license_key","toString","downloadUrl","window","open","acceptThreeD","confirmCardPayment","clientSecret","then","message","className","license_type","onClick","type","style","borderRadius","src","Info","alt","onMouseEnter","onMouseLeave","margin","disabled","zIndex","Success","bind","this","Failure","Close","LogoLoaderComponent","DropdownComponent","options","selectedRange","handleSetselectedRange","isShowDropdown","setisShowDropdown","handleDropdownClick","Calendar","ArrowDown","map","ele","index","OrderHistoryComponent","orderData","user","licenseId","searchInput","createRef","dropdownOption","dropdownMapping","dropdownDetailMapping","setselectedRange","isShowDetail","setisShowDetail","selectedProduct","setselectedProduct","orderDataDetails","setorderDataDetails","isLoading","setisLoading","setsearchText","setsearchedColumn","All","Year","Month","Week","Day","checkoutData","setcheckoutData","getAllCheckoutsUserData","id","handleOrderClick","product","store","totalCheckout","moneySpent","productImage","price","sku","pid","getOrderStatisticsDetails","timeRange","userId","productId","getColumnSearchProps","dataIndex","filterDropdown","setSelectedKeys","selectedKeys","confirm","clearFilters","padding","ref","node","placeholder","value","onChange","e","target","onPressEnter","handleSearch","marginBottom","display","icon","SearchOutlined","size","width","handleReset","closeDropdown","filterIcon","filtered","color","onFilter","record","toLowerCase","includes","onFilterDropdownVisibleChange","visible","select","render","text","columns","title","height","whiteSpace","overflow","textOverflow","sorter","compare","a","b","multiple","key","DetailBlue","productPicture","store_pid","forEach","creation","push","product_name","product_image","product_id","checkouts","Number","toFixed","retailer_sku","showDetails","dummyCount","i","columnsDetails","orderLink","storeRegion","orderNumber","getOrderLink","href","DetailGrey","dataDetails","order_number","checkoutDate","order_email","orderCheckLink","columnsMobile","releaseDate","dataMobile","getMonth","getDate","getFullYear","columnsMobileDetails","dataMobileDetails","pagination","filters","extra","ArrowBack","dataSource","tableLayout","defaultPageSize","showSizeChanger","showHeader","filterReleaseDate","fullList","dateObj","release_date","formattedDate","OrderStatisticsComponent","history","Overview","Details","ownedSince","setData","getCheckoutsUserData","checkoutChartData","spentData","diffInMilliSeconds","Math","abs","month","floor","Array","fill","datee","alll","parseFloat","dateNow","dateBefore","getTime","yearr","week","monthh","days","weekk","dayAgo","dayy","hours","CommonApplicationHelper","checkoutCount","configCheckout","autoFit","smooth","areaStyle","fillOpacity","lineWidth","line","configCheckoutMobile","spentCount","configSpent","configSpentMobile","ShoppingCart","MoneySpent","ReleaseProductCardComponent","productData","customerNumberId","isShowPast","isShowDetails","setisShowDetails","checkoutAmount","setcheckoutAmount","moneySpentAmount","setmoneySpentAmount","handleBtnClick","getPastProduct","ReleaseCalenderComponent","releases","releaseArray","releaseList","setReleaseList","currentDate","updatedCurrentDate","selectedDate","setselectedDate","getReleaseData","dateList","filteredReleaseData","targetDate","dateCellRender","listData","format","content","getListData","item","fullscreen","onPanelChange","mode","onSelect","_d","dateData","updatedDate","headerRender","CalenderRight","moment","subtract","add","showPast","renderProductList","AdminStatisticsComponent","allCheckouts","yearlyCheckouts","monthlyCheckouts","weeklyCheckouts","dailyCheckouts","filteredDate","getHours","getMinutes","AllSuccess","AllFailure","YearSuccess","getAllCheckoutsAdminData","UpIcon","DownIcon","AdminOrderHistoryComponent","ProductCardComponent","productName","productStore","productPrice","retailerSku","totalCheckouts","successCheckouts","failedCheckouts","AdminProductsComponent","currentPage","setCurrentPage","minIndex","setMinIndex","maxIndex","setMaxIndex","getCheckoutsProductData","refresh","Refresh","slice","val","product_price","defaultCurrent","current","total","AdminReleaseCalenderComponent","releaseDates","release","split","indexOf","CreateReleaseComponent","closePopup","useForm","register","handleSubmit","onSubmit","reset","AdminReleasesComponent","createReleasePopup","setCreateReleasePopup","toggleCreateReleasePopup","ValidationPopupComponent","validationQuestion","submitFunction","inputValue","setInputValue","event","AdminLicensesComponent","adminId","createLicensePopup","setCreateLicensePopup","validationPopup","setValidationPopup","setIsShowResult","isSuccess","setIsSuccess","getLicenseData","toggleCreateLicensePopup","toggleValidationPopup","toggleReturnPopup","closeClients","closeAllClients","renewals","lifetimes","openClients","ws_id","CreateLicenseComponent","LicenseListComponent","licenseList","UpdateAddressComponent","props","address","setAddress","nameEmail","setNameEmail","control","setValue","updateCustomerAddress","err","msg","addy","getData","countries","label","required","defaultValue","pattern","find","filterOption","input","option","showSearch","CARD_ELEMENT_OPTIONS","hidePostalCode","base","invalid","iconColor","CardInput","UpdateCardComponent","acceptedTerms","setAcceptedTerms","cardName","setCardName","handleSubmitSub","createPaymentMethod","card","getElement","CardElement","billing_details","paymentMethod","updateCustomerCard","closeCardPopup","checked","Stripe","HeadersComponent","selectedTitle","handleSelectTitle","isShowMobileMenu","setIsShowMobileMenu","setIsShowCalendar","selectHeaders","str","handleLogOut","fetch","method","ok","document","cookie","location","isShowLogoutDropdown","setIsShowLogoutDropdown","Logo","alignItems","Manage","Chart","discord_id","avatar","discord_tag","MobileCross","MobileMenu","PaymentCardComponent","paymentInfo","created","dateUpdated","year","monthLite","currency","hosted_invoice_url","invoice_pdf","PaymentComponent","subPayment","postSubscriptionPaymentData","CardDetailsComponent","cardDetail","licenseType","showPopup","setShowPopup","showCardPopup","setShowCardPopup","customerDetailsData","setCustomerDetailsData","isLifetime","setIsLifetime","isRental","setIsRental","postCustomerDetailsData","updateCustomerInfo","togglePopup","toggleCardPopup","cardPlaceholderNew","last4","brand","visa","master","amex","exp_month","exp_year","count","orderStatisticHeader","AdminPaymentsComponent","AdminStoresComponent","AdminLogsComponent","GlobalHeadersComponent","hanldeBtnClick","getPlatformFrontend","GlobalFootersComponent","viewBox","xmlns","clipPath","d","transform","handleClose","running","lastlogout","taskinfo","task_info","ping_time","intt","parseInt","license_expiry","discord","prefix","Search","LicenseHistoryListComponent","licenseHistoryList","ownedFrom","ownedTill","owned_from","owned_till","stripe_customer_id","AdminLicenseHistoryComponent","getLicenseHistoryData","CreateAddressComponent","updateCustomerId","CreatePaymentComponent","description","description2","description3","userType","AnimationLogo","DashboardPage","setUser","setReleaseArray","userInfo","setUserInfo","customerAddress","setCustomerId","setSelectedTitle","orderStatistics","isShowCalendar","reload","userData","stripeCustomer","CalendarWhite","Panel","Collapse","LandingPage","WOW","live","init","addEventListener","handleScroll","scroll","getElementById","scrollTop","$","addClass","removeClass","Purchase","atc","checkout","iddle","frameBorder","allow","allowFullScreen","anlyatics","task","defaultActiveKey","header","AdminDashboardPage","admin","setAdmin","showStatistics","setShowStatistics","showProducts","setShowProducts","showReleases","setShowReleases","showLicenses","setShowLicenses","showLicenseHistory","setShowLicenseHistory","showPayments","setShowPayments","showStores","setShowStores","showLogs","setShowLogs","MarketplacePage","backgroundColor","SubscriptionPage","showPopupAddress","setShowPopupAddress","showPopupPayment","setShowPopupPayment","setUserType","togglePopupAddress","Download","ImpressumPage","rel","NotFoundPage","PrivacyPolicyPage","TermsPage","TermsCancellationPage","stripePromise","loadStripe","App","path","exact","component","debug","ReactDOM","StrictMode"],"mappings":"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","file":"static/js/main.abc0256a.chunk.js","sourcesContent":["import axios from 'axios';\nimport { getPlatformBackend, getPlatformBackendA } from './platform';\n\naxios.defaults.withCredentials = true;\n\nexport async function getUserDetailsAdmin() {\n //no catch to return to homepage on error\n \n return await axios.get(getPlatformBackend() + \"/api/discord/info/admin\", {\n withCredentials: true,\n });\n}\n\nexport async function getUserDetailsUser() {\n //no catch to return to homepage on error\n \n return await axios.get(getPlatformBackend() + \"/api/discord/info/user\", {\n withCredentials: true,\n });\n \n}\n\nexport async function getUserDetailsTransition() {\n //no catch to return to homepage on error\n\n return await axios.get(getPlatformBackend() + \"/api/discord/info/transition\", {\n withCredentials: true,\n });\n}\n\nexport async function getReleases() {\n let response;\n try {\n response = await axios.get(getPlatformBackend() + \"/api/releases\", {\n withCredentials: true\n });\n } catch (error) {\n response = error.response\n }\n return response;\n}\n\nexport async function getUserInfo(user_id) {\n return await axios.get(getPlatformBackend() + `/api/users/id/${user_id}`, {\n withCredentials: true\n });\n}\n\nexport async function getAllLicensesUser() {\n let response;\n try {\n response = await axios.get(getPlatformBackend() + \"/api/licenses/users\", {\n withCredentials: true\n });\n } catch (error) {\n response = error.response\n }\n return response;\n}\n\nexport async function getAllLicensesHistory() {\n let response;\n try {\n response = await axios.get(getPlatformBackend() + \"/api/licensesHistory\", {\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\nexport async function postCreateCustomer(dataObj) {\n let response;\n try {\n response = await axios.post(getPlatformBackend() + \"/api/stripe/createCustomer\", {\n data: {\n \"email\": dataObj.email,\n \"address\": {\n \"city\": dataObj.city,\n \"country\": dataObj.country,\n \"line1\": dataObj.line1,\n \"line2\": dataObj.line2,\n \"postal_code\": dataObj.postal_code,\n \"state\": dataObj.state\n },\n \"name\": dataObj.name\n },\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\nexport async function postCancelSubscription(customerId) {\n let response;\n try {\n response = await axios.post(getPlatformBackend() + \"/api/stripe/cancelSubscription\", {\n data: {\n \"customer_id\": customerId\n },\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\nexport async function getStripeCustomer(user_id) {\n let response;\n try {\n response = await axios.get(getPlatformBackend() + `/api/stripeCustomer/id/${user_id}`, {\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\nexport async function postGetCustomerDetails(customerId) {\n let response;\n try {\n response = await axios.post(getPlatformBackend() + \"/api/stripe/customerDetails\", {\n data: {\n \"customer_id\": customerId\n },\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\nexport async function postUpdateCustomerInfo(dataObj, customerId) {\n let response;\n try {\n response = await axios.post(getPlatformBackend() + \"/api/stripe/updateCustomerInfo\", {\n data: {\n \"customer_id\": customerId,\n \"email\": dataObj.email,\n \"address\": {\n \"city\": dataObj.city,\n \"country\": dataObj.country,\n \"line1\": dataObj.line1,\n \"line2\": dataObj.line2,\n \"postal_code\": dataObj.postal_code,\n \"state\": dataObj.state\n },\n \"name\": dataObj.name\n },\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\nexport async function postGetUpcomingSubscription(customerId) {\n let response;\n try {\n response = await axios.post(getPlatformBackend() + \"/api/stripe/subscriptionInfo\", {\n data: {\n \"customer_id\": customerId\n },\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\nexport async function postGetSubscriptionPayment(customerId) {\n let response;\n try {\n response = await axios.post(getPlatformBackend() + \"/api/stripe/invoices\", {\n data: {\n \"customer_id\": customerId\n },\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\n//OLD\nexport async function getOrderStatistics(user_id, license_id) {\n let response;\n try {\n response = await axios.get(getPlatformBackend() + `/api/checkouts/user/${user_id}/license/${license_id}`, {\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\n//NOT NEEDED\nexport async function getOrderStatisticsDetails(timeRange, user_id, license_id,productId) {\n let response;\n try {\n response = await axios.get(getPlatformBackend() + `/api/checkouts/${timeRange}/user/${user_id}/license/${license_id}/product/${productId}`, {\n withCredentials: true\n });\n } catch (error) {\n response = error.response;\n }\n return response;\n}\n\nexport async function postCloseClients(license) {\n let response;\n try {\n response = await axios.post(getPlatformBackendA() + \"/stopallclients\", {\n data: {\n \"license\": license\n },\n withCredentials: true\n });\n } catch (error) {\n response = error.response\n }\n return response;\n}\n\nexport async function postCloseClient(license, authLicense) {\n let response;\n try {\n response = await axios.post(getPlatformBackendA() + \"/stopclient\", {\n data: {\n \"license\": license,\n \"auth_license\": authLicense\n },\n withCredentials: true\n });\n } catch (error) {\n response = error.response\n }\n return response;\n}\n\nexport async function getCheckoutsProduct() {\n let response;\n try {\n response = await axios.get(getPlatformBackend() + \"/api/checkouts/allProducts\", {\n withCredentials: true\n });\n } catch (error) {\n response = error.response\n }\n return response;\n}\n\nexport async function getAllCheckoutsAdmin() {\n let response;\n try {\n response = await axios.get(getPlatformBackend() + \"/api/checkouts/admin/allCheckouts\", {\n withCredentials: true\n });\n } catch (error) {\n response = error.response\n }\n return response;\n}\n\nexport async function getAllCheckoutsUser(user_id, license_id) {\n let response;\n try {\n response = await axios.get(getPlatformBackend() + `/api/checkouts/allCheckouts/user/${user_id}/license/${license_id}`, {\n withCredentials: true\n });\n } catch (error) {\n response = error.response\n }\n return response;\n}","\nexport function getPlatformBackend() {\n return process.env.NODE_ENV === 'development' ? 'http://localhost:3001' : 'https://www.qbotaio.com';\n}\n\nexport function getPlatformFrontend() {\n return process.env.NODE_ENV === 'development' ? 'http://localhost:3000' : 'https://www.qbotaio.com';\n}\n\nexport function getPlatformBackendA() {\n return process.env.NODE_ENV === 'development' ? 'http://localhost:3002' : 'https://auth.qbotaio.com';\n}","export default __webpack_public_path__ + \"static/media/Info.4ee10b5e.svg\";","export default __webpack_public_path__ + \"static/media/Close.c08e3220.svg\";","export default __webpack_public_path__ + \"static/media/Success.3e3ada1a.svg\";","export default __webpack_public_path__ + \"static/media/Failure.22b74f63.svg\";","import React, { useEffect } from 'react';\nimport './Info.css';\nimport { Button } from 'antd';\nimport { postGetUpcomingSubscription, postCancelSubscription, getDownloadLink } from '../../utils/api';\nimport { useStripe, useElements, CardElement } from '@stripe/react-stripe-js';\nimport Info from '../../icons/v2/Info.svg';\nimport { LogoLoaderComponent } from '..';\nimport Close from '../../icons/v2/Close.svg';\nimport Success from '../../icons/v2/Success.svg';\nimport Failure from '../../icons/v2/Failure.svg';\nimport { MD5 } from \"crypto-js\";\n\nexport function InfoComponent({\n info,\n upcomingCharge,\n customerId,\n handleReload\n}) {\n const [isShowFullKey, setisShowFullKey] = React.useState(true);\n const [upcomingChargeData, setUpcomingChargeData] = React.useState({});\n const [isShowDate, setIsShowDate] = React.useState(true);\n const [date, setDate] = React.useState(\"-\");\n const [subscriptionStatusBoolean, setSubscriptionStatusBoolean] = React.useState(true);\n const [resultTitle, setResultTitle] = React.useState('');\n const [resultDescription, setResultDescription] = React.useState('Error');\n const [isShowResult, setisShowResult] = React.useState(false);\n const [isSuccuess, setisSuccuess] = React.useState(false);\n const [loading, setLoading] = React.useState(false);\n const [isShowInfo, setIsShowInfo] = React.useState(false);\n const [isShowIcon, setIsShowIcon] = React.useState(false);\n const [popUpText, setPopUpText] = React.useState('');\n const [isShowCancel, setIsShowCancel] = React.useState(true);\n const [showButtonLoading, setShowButtonLoading] = React.useState(true);\n const [isShowPopupCancel, setIsShowPopupCancel] = React.useState(false);\n\n const stripe = useStripe();\n const elements = useElements();\n\n const postUpcomingSubscriptionData = async (customer_id) => {\n console.log(\"CustomerID\", customer_id);\n let res = await postGetUpcomingSubscription(customer_id);\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"postUpcomingSubscriptionData\", res);\n return res.data;\n } else {\n return {};\n }\n }\n\n useEffect(() => {\n const fetchData = async () => {\n const result = await postUpcomingSubscriptionData(customerId);\n console.log(\"result upcoming charge\", result);\n setUpcomingChargeData(result);\n setShowButtonLoading(false);\n }\n\n //setIsLifetime(info.license_type);\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n }, [])\n\n useEffect(() => {\n console.log(\"upcomingChargeData\", upcomingChargeData);\n\n if (Object.keys(upcomingChargeData).length !== 0) {\n console.log(\"upcomingChargeeeeee\", upcomingChargeData.upcomingCharge);\n if (upcomingChargeData.cancelAtPeriodEnd === true) {\n setIsShowCancel(false);\n }\n\n if (upcomingChargeData.upcomingCharge !== null) {\n setDate(new Date(upcomingChargeData.upcomingCharge).toLocaleString());\n }\n if (upcomingChargeData.status !== \"active\") {\n setSubscriptionStatusBoolean(false);\n if (upcomingChargeData.status === \"Lifetime\") {\n setDate(\"-\");\n setSubscriptionStatusBoolean(true);\n }\n if (upcomingChargeData.paymentIntentStatus === \"requires_action\") {\n console.log(\"innnnnnnnnnnn past_due\");\n setPopUpText(\"Please verify your card with 3D Secure by clicking the button on the left. Failure to complete this verification within 7 days of your first payment attempt results in the termination of your license.\");\n setIsShowDate(false);\n setIsShowIcon(true);\n } else if (upcomingChargeData.paymentIntentStatus === \"requires_payment_method\") {\n console.log(\"innnnnnnnnnnn past_due elseif\");\n setPopUpText(\"We were unable to process your card payment. We suggest updating your card information. Keep in mind, if the payment fails four times, your license will be revoked.\");\n setIsShowIcon(true);\n } else if (upcomingChargeData.paymentIntentStatus !== null) {\n console.log(\"innnnnnnnnnnn past_due else\", upcomingChargeData.paymentIntentStatus);\n setPopUpText(\"We were unable to process your card payment. Keep in mind, if the payment fails four times, your license will be revoked.\");\n setIsShowIcon(true);\n }\n }\n }\n }, [upcomingChargeData])\n\n const handleShowKey = () => {\n console.log('handleShowKey');\n if (isShowFullKey) {\n setisShowFullKey(false);\n } else {\n setisShowFullKey(true);\n }\n }\n\n const postCancelSubscriptionReq = async (customer_id) => {\n let res = await postCancelSubscription(customer_id);\n if (res !== null && res !== undefined && res.status === 200) {\n return res.data;\n } else {\n return { \"success\": false };\n }\n }\n\n const handleCancelSubscription = async () => {\n let result = await postCancelSubscriptionReq(customerId);\n console.log(\"result lololol\", result);\n if (result.success === true) {\n //success\n console.log(\"success cancellled\");\n setTimeout(() => {\n handleReload();\n }, 1000);\n } else {\n //error\n console.log(\"error cancellled\");\n }\n }\n\n const handleDownloadInstaller = async () => {\n let md5Key = MD5(info.license_key).toString();\n let downloadUrl = \"https://www.qbotaio.com/api/versions/latest/download?key=\" + md5Key;\n window.open(downloadUrl, \"_blank\");\n }\n\n const acceptThreeD = async () => {\n\n if (!stripe || !elements) {\n return;\n }\n\n setLoading(true);\n\n\n setisShowResult(false);\n setisSuccuess(false);\n\n if (upcomingChargeData.paymentIntentStatus !== null && upcomingChargeData.paymentIntentStatus === \"requires_action\") {\n stripe.confirmCardPayment(upcomingChargeData.clientSecret).then(function (result) {\n console.log(\"RESULTT\", result);\n if (result.error) {\n console.log('There was an issue!');\n console.log(result.error);\n //show issue\n\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(result.error.message);\n setisShowResult(true);\n setisSuccuess(false);\n setTimeout(() => {\n handleReload();\n }, 1000);\n } else {\n console.log('You got the money!');\n //show success and form of rerender\n\n setLoading(false);\n setResultTitle(\"Your Payment was Successful! Redirecting...\");\n setResultDescription(\"Thanks for renewing your subscription!\");\n setisShowResult(true);\n setisSuccuess(true);\n setTimeout(() => {\n handleReload();\n }, 1000);\n }\n });\n } else {\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(\"Couldn't accept 3D secure\");\n setisShowResult(true);\n setisSuccuess(false);\n setTimeout(() => {\n handleReload();\n }, 1000);\n }\n\n }\n\n const backToHome = () => {\n //props.closeCardPopup();\n setisShowResult(false);\n }\n\n const tryAgain = () => {\n setisShowResult(false);\n }\n\n const handleClosePopupCancel = () => {\n setIsShowPopupCancel(false);\n }\n\n\n return (\n <>\n
\n

Licence Detail

\n
\n
\n
\n

Email

\n

{info.email}

\n
\n
\n

Subscription Status

\n \n {upcomingChargeData.status}\n \n
\n
\n
\n
\n

License key ({info.license_type})

\n
\n {\n isShowFullKey ? \"****-****-****-****-****-****\" : info.license_key\n }\n
handleShowKey()}>\n {\n isShowFullKey ? \"Show\" : \"Hide\"\n }\n
\n
\n
\n
\n

Next Charge

\n

\n {\n isShowDate ? date :\n \n Accept 3D Secure\n \n }\n {isShowIcon &&\n setIsShowInfo(true)}\n onMouseLeave={() => setIsShowInfo(false)}\n />\n }\n {isShowInfo &&
{popUpText}
}\n

\n
\n
\n
\n
\n handleDownloadInstaller()}\n disabled={showButtonLoading}\n >\n Download Installer\n \n handleCancelSubscription()}\n onClick={() => setIsShowPopupCancel(true)}\n disabled={showButtonLoading || !isShowCancel || info.license_type === \"Lifetime\" || info.license_type === \"Monthly\" || info.license_type === \"Weekly\" || info.license_type === \"Daily\"}\n >\n Cancel Subscription\n \n
\n
\n {\n isShowResult ?\n
\n
\n {\n isSuccuess ? (\n
\n
\n \"successIcon\"\n
\n
\n {resultTitle}\n
\n
\n {resultDescription}\n
\n
\n \n Back To Home\n \n
\n
\n ) : (\n
\n
\n \"failIcon\"\n
\n
\n {resultTitle}\n
\n
\n {resultDescription}\n
\n
\n \n Try Again\n \n
\n
\n )\n }\n\n
\n
: isShowPopupCancel ? (\n
\n
\n \"closeIcon\"\n
\n \"warningIcon\"\n
\n
\n Cancel Subscription\n
\n
\n Are you sure you would like to cancel your subscription? Please note you will loose your key after the end of the billing cycle. You cannot resubscribe once you cancel your subscription.\n
\n
\n Yes\n \n
\n
\n
\n )\n :\n loading ? (\n \n )\n :\n null\n }\n \n )\n}","export default __webpack_public_path__ + \"static/media/search.5a004795.svg\";","export default __webpack_public_path__ + \"static/media/DetailGrey.c402fff7.svg\";","export default __webpack_public_path__ + \"static/media/DetailBlue.84f1e78c.svg\";","export default __webpack_public_path__ + \"static/media/ArrowBack.51d9988e.svg\";","export default __webpack_public_path__ + \"static/media/Calendar.6244aae6.svg\";","export default __webpack_public_path__ + \"static/media/arrow down.d6729269.svg\";","import React from 'react';\nimport './Dropdown.css';\nimport Calendar from '../../icons/v2/Calendar.svg';\nimport ArrowDown from '../../icons/arrow down.svg';\n\nexport function DropdownComponent({\n options,\n selectedRange,\n handleSetselectedRange\n}) {\n console.log('selectedRange', selectedRange);\n\n const [isShowDropdown, setisShowDropdown] = React.useState(false);\n\n const handleDropdownClick = () => {\n if (isShowDropdown) {\n setisShowDropdown(false);\n } else {\n setisShowDropdown(true);\n }\n }\n\n const handleDropdownItemClick = (data) => {\n handleDropdownClick();\n handleSetselectedRange(data);\n }\n\n return (\n
\n \n
\n \"calendarIcon\"\n
\n
\n {selectedRange}\n
\n \n
\n {\n isShowDropdown ?\n
\n {\n options.map((ele, index) => {\n return (\n handleDropdownItemClick(ele)}\n >\n {ele}\n
\n )\n })\n }\n : ''\n }\n \n )\n}","import React, { useEffect } from 'react';\nimport './OrderHistory.css';\nimport { Table, Input, Spin, Button, Space } from 'antd';\nimport Search from '../../icons/search.svg';\nimport DetailGrey from '../../icons/v2/DetailGrey.svg';\nimport DetailBlue from '../../icons/v2/DetailBlue.svg';\nimport ArrowBack from '../../icons/v2/ArrowBack.svg';\nimport axios from 'axios';\nimport {\n getOrderStatisticsDetails,\n getAllCheckoutsUser\n} from '../../utils/api';\nimport {\n DropdownComponent\n} from '../Dropdown';\nimport {\n MobileProductCardComponent\n} from '../MobileProductCard';\nimport { SearchOutlined } from '@ant-design/icons';\nimport { getPlatformBackend } from '../../utils/platform';\n\nexport function OrderHistoryComponent({\n orderData,\n user,\n licenseId\n}) {\n /*\n orderData = {\n All: [],\n Year: [],\n Month: [],\n Week: [],\n Day: []\n }\n */\n let searchInput = React.createRef();\n console.log('orderComponentH orderData', orderData);\n const dropdownOption = [\n \"All\",\n \"This Year\",\n \"This Month\",\n \"This Week\",\n \"Today\"\n ];\n const dropdownMapping = {\n \"All\": \"All\",\n \"This Year\": \"Year\",\n \"This Month\": \"Month\",\n \"This Week\": \"Week\",\n \"Today\": \"Day\",\n }\n const dropdownDetailMapping = {\n \"All\": \"all\",\n \"This Year\": \"year\",\n \"This Month\": \"month\",\n \"This Week\": \"week\",\n \"Today\": \"day\",\n }\n\n const [selectedRange, setselectedRange] = React.useState(dropdownOption[0]);\n const [isShowDetail, setisShowDetail] = React.useState(false);\n const [selectedProduct, setselectedProduct] = React.useState({});\n const [orderDataDetails, setorderDataDetails] = React.useState([]);\n const [isLoading, setisLoading] = React.useState(false);\n const [searchText, setsearchText] = React.useState('');\n const [searchedColumn, setsearchedColumn] = React.useState('');\n const [checkoutData, setcheckoutData] = React.useState({ All: [], Year: [], Month: [], Week: [], Day: [] });\n\n\n const getAllCheckoutsUserData = async (user_id, license_id) => {\n let res = await getAllCheckoutsUser(user_id, license_id);\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"getAllCheckoutsUserData\", res);\n return res.data;\n } else {\n return { All: [], Year: [], Month: [], Week: [], Day: [] };\n }\n }\n\n useEffect(() => {\n const fetchData = async () => {\n const result = await getAllCheckoutsUserData(user.id, licenseId);\n setcheckoutData(result);\n }\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n }, []);\n\n console.log(\"orderComponentH checkoutData\", checkoutData);\n\n const handleSetselectedRange = (data) => {\n console.log('handleSetselectedRange', data);\n setselectedRange(data);\n }\n\n const handleOrderClick = (id, product, store, totalCheckout, moneySpent, productImage, price, sku, pid) => {\n console.log('handleOrderClick', id);\n setselectedProduct({\n product,\n totalCheckout,\n store,\n moneySpent,\n productImage,\n price,\n sku,\n pid\n })\n setisShowDetail(true);\n setisLoading(true);\n getOrderStatisticsDetails(dropdownDetailMapping[selectedRange], user.id, licenseId, id);\n }\n\n const getOrderStatisticsDetails = async (timeRange, userId, license_id, productId) => {\n\n //console.log('orderComponentH orderStatisticsDetails', getPlatformBackend() + `/api/checkouts/${timeRange}/user/${userId}/product/${productId}`);\n // let orderStatisticsDetails = getOrderStatisticsDetails(dropdownDetailMapping[selectedRange], customerNumberId, selectedProductId);\n\n\n await axios.get(getPlatformBackend() + `/api/checkouts/${timeRange}/user/${userId}/license/${license_id}/product/${productId}`, {\n withCredentials: true\n })\n .then((res) => {\n if (res.status === 200) {\n console.log('orderComponentH orderInDetail', res.data);\n setorderDataDetails(res.data);\n setisLoading(false);\n } else {\n console.log(\"Error\", res.status);\n setorderDataDetails([]);\n setisLoading(false);\n }\n }).catch((error) => {\n console.log(\"error\", error);\n setorderDataDetails([]);\n setisLoading(false);\n });\n\n // console.log('orderComponentH orderStatisticsDetails', orderStatisticsDetails);\n // setorderDataDetails(orderStatisticsDetails);\n }\n\n const handleBackClick = () => {\n setisShowDetail(false);\n setselectedProduct({});\n }\n\n const getColumnSearchProps = dataIndex => ({\n filterDropdown: ({ setSelectedKeys, selectedKeys, confirm, clearFilters }) => (\n
\n {\n searchInput = node;\n }}\n placeholder={`Search ${dataIndex}`}\n value={selectedKeys[0]}\n onChange={e => setSelectedKeys(e.target.value ? [e.target.value] : [])}\n onPressEnter={() => handleSearch(selectedKeys, confirm, dataIndex)}\n style={{ marginBottom: 8, display: 'block' }}\n />\n \n handleSearch(selectedKeys, confirm, dataIndex)}\n icon={}\n size=\"small\"\n style={{ width: 90 }}\n >\n Search\n \n \n {\n confirm({ closeDropdown: false });\n setsearchText(selectedKeys[0]);\n setsearchedColumn(dataIndex);\n // this.setState({\n // searchText: selectedKeys[0],\n // searchedColumn: dataIndex,\n // });\n }}\n >\n Filter\n \n \n
\n ),\n filterIcon: filtered => ,\n onFilter: (value, record) =>\n record[dataIndex]\n ? record[dataIndex].toString().toLowerCase().includes(value.toLowerCase())\n : '',\n onFilterDropdownVisibleChange: visible => {\n if (visible) {\n setTimeout(() => searchInput.select(), 100);\n }\n },\n render: text => (\n text\n ),\n });\n\n const handleSearch = (selectedKeys, confirm, dataIndex) => {\n confirm();\n setsearchText(selectedKeys[0]);\n setsearchedColumn(dataIndex);\n // this.setState({\n // searchText: selectedKeys[0],\n // searchedColumn: dataIndex,\n // });\n };\n\n const handleReset = clearFilters => {\n clearFilters();\n setsearchText('');\n // this.setState({ searchText: '' });\n };\n\n const getOrderLink = (store, storeRegion, email, orderNumber) => {\n switch (store.toLowerCase()) {\n case 'jdsports':\n /*\n if (storeRegion.toLowerCase() === 'jdsportsuk') {\n return `https://data.smartagent.io/v1/jdsports/track-my-order?orderNumber=${orderNumber}&facia=jdsportsuk&emailAddress=${email}`;\n }\n */\n return `https://data.smartagent.io/v1/jdsports/track-my-order?orderNumber=${orderNumber}&facia=${storeRegion.toLowerCase()}&emailAddress=${email}`;\n case 'footpatrol':\n if (storeRegion.toLowerCase() === 'footpatrolgb') {\n return `https://data.smartagent.io/v1/jdsports/track-my-order?orderNumber=${orderNumber}&facia=footpatrolgb&emailAddress=${email}`;\n } else if (storeRegion.toLowerCase() === 'footpatrolde') {\n return `https://www.footpatrol.de/track-my-order/?orderID=${orderNumber}&email=${email}&postcode=`;\n } else if (storeRegion.toLowerCase() === 'footpatrolfr') {\n return `https://www.footpatrol.fr/track-my-order/?orderID=${orderNumber}&email=${email}&postcode=`;\n } else if (storeRegion.toLowerCase() === 'footpatrolit') {\n return `https://www.footpatrol.it/track-my-order/?orderID=${orderNumber}&email=${email}&postcode=`;\n } else if (storeRegion.toLowerCase() === 'footpatrolnl') {\n return `https://www.footpatrol.nl/track-my-order/?orderID=${orderNumber}&email=${email}&postcode=`;\n } else if (storeRegion.toLowerCase() === 'footpatroldk') {\n return `https://www.footpatrol.dk/track-my-order/?orderID=${orderNumber}&email=${email}&postcode=`;\n } else if (storeRegion.toLowerCase() === 'footpatrolse') {\n return `https://www.footpatrol.se/track-my-order/?orderID=${orderNumber}&email=${email}&postcode=`;\n }\n case 'thehipstore':\n return `https://www.thehipstore.co.uk/track-my-order/?orderID=${orderNumber}&email=${email}&postcode=`;\n case 'size':\n return `https://data.smartagent.io/v1/jdsports/track-my-order?orderNumber=${orderNumber}&facia=${storeRegion.toLowerCase()}&emailAddress=${email}`;\n case 'jdsportsglobal':\n return `https://www.global.jdsports.com/track-my-order/?orderID=${orderNumber}&email=${email}&postcode=`;\n default:\n return null;\n }\n }\n\n const columns = [\n {\n title: '',\n dataIndex: 'productPicture',\n render: (text) => {\n if (text === null || text === undefined || text === '') {\n return (
)\n }\n return (\n \"chartIcon\"\n )\n },\n width: 50,\n },\n {\n title: 'PRODUCT',\n dataIndex: 'product',\n /*\n //IT DOESNT LOAD IDK WHY????\n render: (text, record) => {\n console.log('tableColumn product', text, record);\n return (\n
\n
{text}
\n
\n \n );\n },\n */\n ...getColumnSearchProps('product'),\n width: 200,\n render: text =>
{text}
,\n },\n {\n title: 'STORE',\n dataIndex: 'store',\n width: 100,\n render: text =>
{text}
,\n },\n {\n title: 'CHECKOUT',\n dataIndex: 'totalCheckout',\n sorter: {\n compare: (a, b) => a.totalCheckout - b.totalCheckout,\n multiple: 2,\n },\n render: (text) => {\n if (text === null || text === undefined || text === '') {\n return (
)\n }\n return (\n
{text} Items
\n )\n },\n width: 100,\n },\n {\n title: 'MONEY SPENT',\n dataIndex: 'moneySpent',\n sorter: {\n compare: (a, b) => a.moneySpent - b.moneySpent,\n multiple: 1,\n },\n render: (text) => {\n console.log(\"MONEY SPENT\", text)\n return (\n
{text}
\n )\n },\n width: 100,\n },\n {\n title: '',\n dataIndex: 'showDetails',\n key: 'x',\n render: (text, record) => {\n console.log('tableColumn x', text, record);\n if (!text) {\n return (
)\n }\n return (\n\n handleOrderClick(\n record.productId,\n record.product,\n record.store,\n record.totalCheckout,\n record.moneySpent,\n record.productPicture,\n record.price,\n record.sku,\n record.store_pid)\n }\n />\n\n\n //
{record.key}
\n );\n },\n width: 50,\n },\n ];\n\n const data = [];\n // for (let i = 0; i < 26; i ++) {\n // data.push({\n // key: i,\n // product: `Nike Kobe Vi Protro - Men Shoes ${Math.floor(Math.random() * 100)}`,\n // releaseDate: '10/04/2019',\n // totalCheckout: Math.floor(Math.random() * 100),\n // moneySpent: Math.floor(Math.random() * 10000)\n // });\n // }\n\n if (checkoutData[dropdownMapping[selectedRange]].length > 0) {\n checkoutData[dropdownMapping[selectedRange]].forEach((ele, index) => {\n const date = new Date(ele.creation);\n data.push({\n key: index,\n product: ele.product_name,\n productPicture: ele.product_image,\n productId: ele.product_id,\n //productImage: ele.product_image,\n //releaseDate: `${date.getMonth() + 1}/${date.getDate()}/${date.getFullYear()}`,\n store: ele.store,\n totalCheckout: ele.checkouts,\n moneySpent: (Number(ele.checkouts) * Number(ele.price)).toFixed(2),\n price: ele.price,\n sku: ele.retailer_sku,\n store_pid: ele.store_pid,\n showDetails: true,\n });\n })\n\n let dummyCount = 4 - (data.length % 4);\n if (dummyCount === 4) dummyCount = 0;\n \n\n for (let i = 0; i < dummyCount; i++) {\n data.push({\n key: `dummy-${i}`,\n product: \"\",\n productPicture: \"\",\n productId: \"\",\n //productImage: ele.product_image,\n //releaseDate: `${date.getMonth() + 1}/${date.getDate()}/${date.getFullYear()}`,\n store: \"\",\n totalCheckout: \"\",\n moneySpent: \"\",\n price: \"\",\n sku: \"\",\n store_pid: \"\",\n showDetails: false,\n });\n }\n /*\n data.push(\n Array(4 - (data.length % 4))\n .fill({})\n .map((dummy, index) => ({\n key: `dummy-${index}`,\n product: \"\",\n productPicture: \"\",\n productId: \"\",\n //productImage: ele.product_image,\n //releaseDate: `${date.getMonth() + 1}/${date.getDate()}/${date.getFullYear()}`,\n store: \"\",\n totalCheckout: \"\",\n moneySpent: \"\",\n price: \"\",\n sku: \"\",\n store_pid: \"\",\n showDetails: false,\n }))\n );\n */\n }\n console.log('orderHistory 911 data', data, selectedRange);\n\n const columnsDetails = [\n {\n title: 'ORDER NUMBER',\n dataIndex: 'orderNumber',\n width: 150,\n render: text =>
{text}
,\n },\n {\n title: 'REGION',\n dataIndex: 'storeRegion',\n width: 105,\n render: text =>
{text}
,\n },\n {\n title: 'SIZE',\n dataIndex: 'size',\n sorter: {\n compare: (a, b) => a.size - b.size,\n multiple: 3,\n },\n width: 55,\n render: text =>
{text}
,\n },\n {\n title: 'DATE',\n dataIndex: 'checkoutDate',\n width: 140,\n render: text =>
{text}
,\n },\n {\n title: 'EMAIL',\n dataIndex: 'email',\n width: 220,\n render: text =>
{text}
,\n },\n {\n title: '',\n dataIndex: 'orderCheckLink',\n key: 'x',\n render: (text, record) => {\n\n if (!text) {\n return (
)\n }\n\n let orderLink = getOrderLink(record.store, record.storeRegion, record.email, record.orderNumber);\n return (\n \n \n \n //
{record.key}
\n );\n },\n width: 40,\n },\n ];\n const dataDetails = [];\n // for (let i = 0; i < 26; i ++) {\n // dataDetails.push({\n // key: i,\n // product: `Nike Kobe Vi Protro - Men Shoes ${Math.floor(Math.random() * 100)}`,\n // size: 'EU 10',\n // date: '10/04/2019',\n // price: Math.floor(Math.random() * 100)\n // });\n // }\n if (orderDataDetails.length > 0) {\n orderDataDetails.forEach((ele, index) => {\n const date = new Date(ele.creation).toLocaleString();\n dataDetails.push({\n key: index,\n orderNumber: ele.order_number,\n size: ele.size,\n productImage: ele.product_image,\n checkoutDate: date,\n store: ele.store,\n price: ele.price,\n sku: ele.retailer_sku,\n store_pid: ele.store_pid,\n email: ele.order_email,\n storeRegion: ele.storeRegion,\n orderCheckLink: true\n });\n })\n let dummyCount = 6 - (dataDetails.length % 6);\n if (dummyCount === 6) dummyCount = 0;\n\n for (let i = 0; i < dummyCount; i++) {\n dataDetails.push({\n key: `dummy-${i}`,\n orderNumber: '',\n size: '',\n productImage: '',\n checkoutDate: '',\n store: '',\n price: '',\n sku: '',\n store_pid: '',\n email: '',\n storeRegion: '',\n orderCheckLink: false\n });\n }\n }\n\n console.log('orderHistoryData', dataDetails);\n\n const columnsMobile = [\n {\n title: 'PRODUCT',\n dataIndex: 'product',\n render: (text, record) => {\n console.log('columnsMobile product', text, record);\n return (\n
\n
\n \"chartIcon\"\n
\n
{record.product}
\n
{record.sku}
\n
\n
\n
\n
\n
Total Checkout
\n
{`${record.totalCheckout} Items`}
\n
\n
\n
Money Spent
\n
{`$${record.moneySpent}`}
\n
\n
\n handleOrderClick(record.productId,\n record.product,\n record.releaseDate,\n record.totalCheckout,\n record.moneySpent,\n record.productImage,\n record.price,\n record.sku,\n record.store_pid)\n }\n >\n View Details\n \"chartIcon\"\n
\n \n );\n },\n ...getColumnSearchProps('product'),\n },\n ];\n\n const dataMobile = [];\n if (checkoutData[dropdownMapping[selectedRange]].length > 0) {\n checkoutData[dropdownMapping[selectedRange]].forEach((ele, index) => {\n const date = new Date(ele.creation);\n dataMobile.push({\n key: index,\n product: ele.product_name,\n productId: ele.product_id,\n productImage: ele.product_image,\n releaseDate: `${date.getMonth() + 1}/${date.getDate()}/${date.getFullYear()}`,\n totalCheckout: ele.checkouts,\n moneySpent: (Number(ele.checkouts) * Number(ele.price)).toFixed(2),\n price: ele.price,\n sku: ele.retailer_sku,\n });\n })\n }\n\n const columnsMobileDetails = [\n {\n title: 'PRODUCT',\n dataIndex: 'product',\n render: (text, record) => {\n console.log('columnsMobileDetails product', text, record);\n return (\n
\n
\n \"chartIcon\"\n
\n
{record.product}
\n
{record.sku}
\n
\n
\n
\n
\n
Size
\n
{record.size}
\n
\n
\n
Date
\n
{record.releaseDate}
\n
\n
\n
Money Spent
\n
{record.price}
\n
\n
\n
\n );\n },\n // ...getColumnSearchProps('product'),\n },\n ];\n\n const dataMobileDetails = [];\n if (orderDataDetails.length > 0) {\n orderDataDetails.forEach((ele, index) => {\n const date = new Date(ele.creation);\n dataMobileDetails.push({\n key: index,\n product: ele.product_name,\n size: ele.size,\n productImage: ele.product_image,\n releaseDate: `${date.getMonth() + 1}/${date.getDate()}/${date.getFullYear()}`,\n price: ele.price,\n sku: ele.retailer_sku,\n });\n })\n }\n\n const onChange = (pagination, filters, sorter, extra) => {\n console.log('params', pagination, filters, sorter, extra);\n }\n\n return (\n
\n {\n isShowDetail ?\n
\n
\n \"chartIcon\"\n Back\n
\n
\n
\n
\n \n
\n
\n
{selectedProduct.product}
\n
{selectedProduct.sku}
\n
{selectedProduct.price}
\n
{selectedProduct.store}, {selectedProduct.pid}
\n\n
\n
\n
\n
\n
\n Total Checkout\n
\n
\n {`${selectedProduct.totalCheckout} Items`}\n
\n
\n
\n
\n Money Spent\n
\n
\n {`$${selectedProduct.moneySpent}`}\n
\n
\n
\n
\n
\n {\n isLoading ?\n
\n \n
:\n
\n
\n \n \n
\n
\n \n \n }\n \n :\n
\n
\n
\n
Order History
\n
\n {/*
\n } \n />\n \n
*/}\n \n
\n
\n
\n
\n \n \n
\n {/* */}\n {\n isShowDetail ?\n '' :\n
\n }\n\n \n \n }\n {/* {checkouts.map((checkout) => (\n
  • {checkout.product_name}, {checkout.price}, {checkout.size}, {checkout.store}, {checkout.order_number}
  • \n ))} */}\n \n )\n}","export default __webpack_public_path__ + \"static/media/ShoppingCart.2dd5ac2f.svg\";","export default __webpack_public_path__ + \"static/media/MoneySpent.ce2132f6.svg\";","export function filterReleaseDate(fullList) {\n const dateObj = {};\n // const fullListData = { ...fullList };\n // Object.keys(fullListData).forEach(key => {\n // if (dateObj[fullListData[key].releaseDate]) {\n // dateObj[fullListData[key].releaseDate]++;\n // } else {\n // dateObj[fullListData[key].releaseDate] = 1;\n // }\n // });\n\n const fullListData = [...fullList];\n fullListData.forEach(ele => {\n const date = new Date(ele.release_date);\n const formattedDate = `${date.getMonth() + 1}.${date.getDate()}.${date.getFullYear()}`;\n if (dateObj[formattedDate]) {\n dateObj[formattedDate]++;\n } else {\n dateObj[formattedDate] = 1;\n }\n });\n\n return dateObj;\n}\n\nexport function dateGenerator(data) {\n console.log('dateGenerator', data);\n let month = data.getMonth();\n const monthMapping = [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n ];\n const monthLiteMapping = [\n 'Jan',\n 'Feb',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'Aug',\n 'Sep',\n 'Oct',\n 'Nov',\n 'Dec',\n ];\n let date = data.getDate();\n let year = data.getFullYear();\n const dateData = {\n month: monthMapping[month],\n monthLite: monthLiteMapping[month],\n date,\n year,\n }\n console.log('dateGenerator', dateData);\n return dateData;\n}\n\nexport function checkoutChartDataGenerator(data, type) {\n //hard to understand lmao\n let checkoutData = [];\n let spentData = [];\n let dateObj;\n let count = 0;\n console.log('checkoutChartDataGenerator', data, type);\n if (Object.keys(data.Details).length > 0 || data.Details.length > 0) {\n if (type === 'All') {\n //owned since\n let date = new Date()\n let ownedSince = new Date(data.ownedSince);\n\n let diffInMilliSeconds = Math.abs(date - ownedSince) / 1000;\n const month = Math.floor(diffInMilliSeconds / 2628000);\n diffInMilliSeconds -= month * 2628000;\n\n console.log(\"MONTHH\", month);\n\n checkoutData = new Array(month + 1).fill(0);\n spentData = new Array(month + 1).fill(0);\n \n data.Details.forEach(ele => {\n let datee = new Date(ele.alll);\n\n let diffInMilliSeconds = Math.abs(datee - ownedSince) / 1000;\n const month = Math.floor(diffInMilliSeconds / 2628000);\n diffInMilliSeconds -= month * 2628000;\n \n //checkoutData[month] = ele.checkouts;\n \n if (checkoutData[month] !== 0) {\n checkoutData[month] = checkoutData[month] + ele.checkouts;\n } else {\n checkoutData[month] = ele.checkouts;\n }\n\n if (spentData[month] !== 0) {\n spentData[month] = parseFloat(spentData[month]) + parseFloat(ele.moneySpent);\n } else {\n spentData[month] = parseFloat(ele.moneySpent);\n }\n \n });\n } else if (type === 'This Year') {\n checkoutData = new Array(52).fill(0);\n spentData = new Array(52).fill(0);\n\n let dateNow = new Date();\n let dateBefore = new Date(dateNow.getTime() - (365 * 24 * 60 * 60 * 1000));\n\n data.Details.forEach(ele => {\n let date = new Date(ele.yearr);\n \n let diffInMilliSeconds = Math.abs(date - dateBefore) / 1000;\n const week = Math.floor(diffInMilliSeconds / 604800);\n diffInMilliSeconds -= week * 604800;\n \n console.log(\"WEEKs month\", week);\n\n if (checkoutData[week] !== 0) {\n checkoutData[week] = checkoutData[week] + ele.checkouts;\n } else {\n checkoutData[week] = ele.checkouts;\n }\n \n if (spentData[week] !== 0) {\n spentData[week] = parseFloat(spentData[week]) + parseFloat(ele.moneySpent);\n } else {\n spentData[week] = parseFloat(ele.moneySpent);\n }\n\n //checkoutData[ele.yearr - 1] = ele.checkouts;\n });\n } else if (type === 'This Month') {\n checkoutData = new Array(31).fill(0);\n spentData = new Array(31).fill(0);\n let dateNow = new Date();\n //get date of date now - 31 days\n let dateBefore = new Date(dateNow.getTime() - (31 * 24 * 60 * 60 * 1000));\n\n\n data.Details.forEach(ele => {\n let date = new Date(ele.monthh);\n \n let diffInMilliSeconds = Math.abs(date - dateBefore) / 1000;\n\n const days = Math.floor(diffInMilliSeconds / 86400);\n diffInMilliSeconds -= days * 86400;\n console.log(\"DAYs month\", days);\n\n if (checkoutData[days] !== 0) {\n checkoutData[days] = checkoutData[days] + ele.checkouts;\n } else {\n checkoutData[days] = ele.checkouts;\n }\n\n if (spentData[days] !== 0) {\n spentData[days] = parseFloat(spentData[days]) + parseFloat(ele.moneySpent);\n } else {\n spentData[days] = parseFloat(ele.moneySpent);\n }\n\n //checkoutData[ele.monthh - 1] = ele.checkouts;\n });\n } else if (type === 'This Week') {\n checkoutData = new Array(7).fill(0);\n spentData = new Array(7).fill(0);\n\n let dateNow = new Date();\n //get date of date now - 7 days\n let dateBefore = new Date(dateNow.getTime() - (7 * 24 * 60 * 60 * 1000));\n\n data.Details.forEach(ele => {\n //checkoutData[ele.weekk] = ele.checkouts;\n let date = new Date(ele.weekk);\n let diffInMilliSeconds = Math.abs(date - dateBefore) / 1000;\n\n const days = Math.floor(diffInMilliSeconds / 86400);\n diffInMilliSeconds -= days * 86400;\n console.log(\"DAYs\", days);\n\n if (checkoutData[days] !== 0) {\n checkoutData[days] = checkoutData[days] + ele.checkouts;\n } else {\n checkoutData[days] = ele.checkouts;\n }\n\n if (spentData[days] !== 0) {\n spentData[days] = parseFloat(spentData[days]) + parseFloat(ele.moneySpent);\n } else {\n spentData[days] = parseFloat(ele.moneySpent);\n }\n \n });\n } else if (type === 'Today') {\n checkoutData = new Array(24).fill(0);\n spentData = new Array(24).fill(0);\n\n let dateNow = new Date();\n const dayAgo = new Date(dateNow.getTime());\n dayAgo.setDate(dateNow.getDate() - 1);\n\n data.Details.forEach(ele => {\n let date = new Date(ele.dayy);\n \n let diffInMilliSeconds = Math.abs(date - dayAgo) / 1000;\n const hours = Math.floor(diffInMilliSeconds / 3600) % 24;\n diffInMilliSeconds -= hours * 3600;\n console.log(\"HOURs\", hours);\n \n if (checkoutData[hours] !== 0) {\n checkoutData[hours] = checkoutData[hours] + ele.checkouts;\n } else {\n checkoutData[hours] = ele.checkouts;\n }\n\n if (spentData[hours] !== 0) {\n spentData[hours] = parseFloat(spentData[hours]) + parseFloat(ele.moneySpent);\n } else {\n spentData[hours] = parseFloat(ele.moneySpent);\n }\n });\n }\n } else {\n checkoutData = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n spentData = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n }\n /*\n if (Object.keys(data).length > 0 || data.length > 0) {\n if (type === 'All') {\n checkoutData = new Array(36).fill(0);\n data.forEach((ele) => {\n count += ele.count;\n dateObj = new Date(ele.creation);\n console.log('checkoutChartDataGenerator', dateObj.getMonth(), checkoutData[dateObj.getMonth()]);\n checkoutData[dateObj.getMonth()] = checkoutData[dateObj.getMonth()] + ele.count;\n });\n } else if (type === 'This Year') {\n checkoutData = new Array(12).fill(0);\n data.forEach((ele) => {\n count += ele.count;\n dateObj = new Date(ele.creation);\n console.log(\"DATEOBJ\", dateObj);\n console.log('checkoutChartDataGenerator', dateObj.getMonth(), checkoutData[dateObj.getMonth()]);\n checkoutData[dateObj.getMonth()] = checkoutData[dateObj.getMonth()] + ele.count;\n console.log(\"YEAR CHECKOOUT DATA\", checkoutData);\n });\n } else if (type === 'This Month') {\n checkoutData = new Array(31).fill(0);\n data.forEach((ele) => {\n count += ele.count;\n dateObj = new Date(ele.creation);\n console.log('checkoutChartDataGenerator', dateObj.getDate() - 1, checkoutData[dateObj.getDate() - 1]);\n checkoutData[dateObj.getDate() - 1] = checkoutData[dateObj.getDate() - 1] + ele.count;\n });\n } else if (type === 'This Week') {\n checkoutData = new Array(7).fill(0);\n data.forEach((ele) => {\n count += ele.count;\n dateObj = new Date(ele.creation);\n console.log('checkoutChartDataGenerator', dateObj.getDay(), checkoutData[dateObj.getDay()]);\n checkoutData[dateObj.getDay()] = checkoutData[dateObj.getDay()] + ele.count;\n });\n } else if (type === 'Today') {\n checkoutData = new Array(24).fill(0);\n data.forEach((ele) => {\n count += ele.count;\n dateObj = new Date(ele.creation);\n console.log('checkoutChartDataGenerator', dateObj.getHours() - 1, checkoutData[dateObj.getHours() - 1]);\n checkoutData[dateObj.getHours() - 1] = checkoutData[dateObj.getHours() - 1] + ele.count;\n });\n } else {\n checkoutData = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n }\n } else {\n checkoutData = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n }\n */\n console.log(\"CHECKOUT DATA\", checkoutData);\n console.log(\"SPENT DATA\", spentData);\n return {checkoutData, spentData};\n}\n\nexport function spentChartDataGenerator(data, type) {\n /*\n let spentData = [];\n let dateObj;\n let count = 0;\n console.log('spentChartDataGenerator', data, type);\n if (Object.keys(data).length > 0 || data.length > 0) {\n if (type === 'All') {\n spentData = new Array(12).fill(0);\n data.forEach((ele) => {\n dateObj = new Date(ele.creation);\n spentData[dateObj.getMonth()] = spentData[dateObj.getMonth()] + Number(ele.price) * ele.count;\n count += Number(ele.price) * ele.count;\n });\n } else if (type === 'This Year') {\n spentData = new Array(12).fill(0);\n data.forEach((ele) => {\n dateObj = new Date(ele.creation);\n spentData[dateObj.getMonth()] = spentData[dateObj.getMonth()] + Number(ele.price) * ele.count;\n count += Number(ele.price) * ele.count;\n });\n } else if (type === 'This Month') {\n spentData = new Array(31).fill(0);\n data.forEach((ele) => {\n dateObj = new Date(ele.creation);\n spentData[dateObj.getDate() - 1] = spentData[dateObj.getDate() - 1] + Number(ele.price) * ele.count;\n count += Number(ele.price) * ele.count;\n });\n } else if (type === 'This Week') {\n spentData = new Array(7).fill(0);\n data.forEach((ele) => {\n dateObj = new Date(ele.creation);\n spentData[dateObj.getDay()] = spentData[dateObj.getDay()] + Number(ele.price) * ele.count;\n count += Number(ele.price) * ele.count;\n });\n } else if (type === 'Today') {\n spentData = new Array(24).fill(0);\n data.forEach((ele) => {\n dateObj = new Date(ele.creation);\n spentData[dateObj.getHours() - 1] = spentData[dateObj.getHours() - 1] + Number(ele.price) * ele.count;\n count += Number(ele.price) * ele.count;\n });\n } else {\n spentData = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n }\n } else {\n spentData = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n }\n \n console.log('spentChartDataGenerator spentData', spentData);\n\n return {spentData, count};\n */\n let count = 0;\n let spentData = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n return { spentData, count };\n}\n\nexport function filterUpcomingProducts(fullList, targetDate) {\n const result = [];\n console.log('filterUpcomingProducts fullList', fullList, targetDate);\n fullList.forEach(ele => {\n const date = new Date(ele.release_date);\n const formattedDate = `${date.getMonth() + 1}.${date.getDate()}.${date.getFullYear()}`;\n console.log('filterUpcomingProducts formattedDate date', formattedDate, targetDate);\n if (formattedDate === targetDate) {\n result.push(ele);\n }\n });\n console.log('filterUpcomingProducts result', result);\n\n return result;\n}","import React, { useEffect } from 'react';\nimport './OrderStatistics.css';\nimport ShoppingCart from '../../icons/v2/ShoppingCart.svg';\nimport MoneySpent from '../../icons/v2/MoneySpent.svg';\nimport {\n DropdownComponent\n} from '../Dropdown';\nimport { TinyArea } from '@ant-design/charts';\nimport * as CommonApplicationHelper from '../../helpers/CommonApplicationHelper';\nimport { getOrderStatistics } from '../../utils/api';\n\nexport function OrderStatisticsComponent({\n orderData,\n user,\n licenseId,\n history\n}) {\n console.log('orderComponentS orderData', orderData);\n /*\n const data = [\n 264, 417, 438, 887, 309, 397, 550, 575, 563, 430, 525, 592, 492, 467, 513, 546, 983, 340, 539,\n 243, 226, 192,\n ];\n */\n //const [data, setData] = React.useState({All: [], Year: [], Month: [], Week: [], Day: []});\n const [data, setData] = React.useState({All: {Overview:{}, Details:[], ownedSince: \"\"}, Year: {Overview:{}, Details:[]}, Month: {Overview:{}, Details:[]}, Week: {Overview:{}, Details:[]}, Day: {Overview:{}, Details:[]}});\n console.log(\"OMG LICENSE DAISDAD\", licenseId);\n\n const getCheckoutsUserData = async (user_id, license_id) => {\n let res = await getOrderStatistics(user_id, license_id);\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"getCheckoutsProductData\", res);\n return res.data;\n } else {\n //return {All: [], Year: [], Month: [], Week: [], Day: []};\n return {All: {Overview:{}, Details:[], ownedSince: \"\"}, Year: {Overview:{}, Details:[]}, Month: {Overview:{}, Details:[]}, Week: {Overview:{}, Details:[]}, Day: {Overview:{}, Details:[]}};\n }\n }\n\n useEffect(() => {\n const fetchData = async () => {\n const result = await getCheckoutsUserData(user.id, licenseId);\n setData(result);\n }\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n }, []);\n\n \n\n const dropdownOption = [\n \"All\",\n \"This Year\",\n \"This Month\",\n \"This Week\",\n \"Today\"\n ];\n const dropdownMapping = {\n \"All\": \"All\",\n \"This Year\": \"Year\",\n \"This Month\": \"Month\",\n \"This Week\": \"Week\",\n \"Today\": \"Day\",\n }\n const dropdownDetailMapping = {\n \"All\": \"all\",\n \"This Year\": \"year\",\n \"This Month\": \"month\",\n \"This Week\": \"week\",\n \"Today\": \"day\",\n }\n\n const [selectedRange, setselectedRange] = React.useState(dropdownOption[0]);\n\n const handleSetselectedRange = (data) => {\n console.log('handleSetselectedRange', data);\n setselectedRange(data);\n }\n\n let checkoutChartData = CommonApplicationHelper.checkoutChartDataGenerator(data[dropdownMapping[selectedRange]], selectedRange);\n const checkoutData = checkoutChartData.checkoutData;\n //const checkoutCount = checkoutChartData.count;\n let checkoutCount = data[dropdownMapping[selectedRange]].Overview.checkouts;\n console.log('checkoutData', checkoutData, checkoutCount);\n\n const configCheckout = {\n height: 150,\n width: 230,\n autoFit: false,\n data: checkoutData,\n smooth: true,\n areaStyle: { \n fillOpacity: 0.1,\n lineWidth: 3,\n fill: '#0d9fff',\n },\n line: {\n color: '#0d9fff',\n size: 2\n }\n // animation: {\n // appear: {\n // animation: 'path-in',\n // duration: 5000\n // }\n // },\n };\n\n const configCheckoutMobile = {\n height: 150,\n width: 180,\n autoFit: false,\n data: checkoutData,\n smooth: true,\n areaStyle: { \n fillOpacity: 0.1,\n lineWidth: 3,\n fill: '#0d9fff',\n },\n line: {\n color: '#0d9fff',\n size: 2\n }\n // animation: {\n // appear: {\n // animation: 'path-in',\n // duration: 5000\n // }\n // },\n };\n\n //let spentChartData = CommonApplicationHelper.spentChartDataGenerator(data[dropdownMapping[selectedRange]], selectedRange);\n const spentData = checkoutChartData.spentData;\n //const spentCount = spentChartData.count;\n let spentCount = data[dropdownMapping[selectedRange]].Overview.moneySpent;\n console.log('spentData', spentData, spentCount);\n\n const configSpent = {\n height: 150,\n width: 230,\n autoFit: false,\n data: spentData,\n smooth: true,\n areaStyle: { \n fillOpacity: 0.1,\n lineWidth: 3,\n fill: '#ff9e2d',\n },\n line: {\n color: '#ff9e2d',\n size: 2\n }\n // animation: {\n // appear: {\n // animation: 'path-in',\n // duration: 5000\n // }\n // },\n };\n\n const configSpentMobile = {\n height: 150,\n width: 180,\n autoFit: false,\n data: spentData,\n smooth: true,\n areaStyle: { \n fillOpacity: 0.1,\n lineWidth: 3,\n fill: '#ff9e2d',\n },\n line: {\n color: '#ff9e2d',\n size: 2\n }\n // animation: {\n // appear: {\n // animation: 'path-in',\n // duration: 5000\n // }\n // },\n };\n\n console.log(\"SPENT COUNT\", spentCount);\n if (spentCount === undefined) {\n spentCount = 0;\n }\n\n console.log(\"Checkout Count\", checkoutCount);\n if (checkoutCount === undefined) {\n checkoutCount = 0;\n }\n\n return(\n
    \n
    \n
    Order Statistics
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n \"checkoutIcon\"\n
    Total Checkouts
    \n
    \n
    \n
    {checkoutCount}
    \n
    Items
    \n
    \n {/*
    +30% this year
    */}\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \"moneyIcon\"\n
    Money Spent
    \n
    \n
    \n
    {`$${Math.floor(spentCount)}`}
    \n {/*
    {`,${((spentCount - Math.floor(spentCount)).toFixed(2)) * 100}`}
    */}\n
    \n {/*
    -10% this year
    */}\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n {/* {checkoutsYear.map((checkout) => (\n
  • {checkout.price}
  • \n ))} */}\n
    \n )\n}\n","import React from 'react';\nimport { Button } from 'antd';\nimport './ReleaseProductCard.css';\nimport axios from 'axios';\nimport { useEffect } from 'react';\nimport { getPlatformBackend } from '../../utils/platform';\n\nexport function ReleaseProductCardComponent({\n productData,\n customerNumberId,\n isShowPast,\n licenseId\n}) {\n\n const [isShowDetails, setisShowDetails] = React.useState(false);\n const [checkoutAmount, setcheckoutAmount] = React.useState(0);\n const [moneySpentAmount, setmoneySpentAmount] = React.useState(0);\n //const [isShowPast, setisShowPast] = React.useState(false);\n\n const handleBtnClick = async () => {\n if (isShowDetails) {\n setisShowDetails(false);\n } else {\n //ATM\n try {\n await getPastProduct(customerNumberId, licenseId, productData.product_id)\n } catch (err) {\n console.log(err);\n setcheckoutAmount(0);\n setmoneySpentAmount(0);\n }\n\n setisShowDetails(true);\n }\n }\n\n const getPastProduct = async (customerId, license_id, productId) => {\n //console.log('orderComponentH orderStatisticsDetails', getPlatformBackend() + `/api/checkouts/all/user/${customerId}/product/${productId}`);\n // let orderStatisticsDetails = getOrderStatisticsDetails(dropdownDetailMapping[selectedRange], customerNumberId, selectedProductId);\n await axios.get(getPlatformBackend() + `/api/checkouts/overview/user/${customerId}/license/${license_id}/product/${productId}`, {\n withCredentials: true\n })\n .then((res) => {\n console.log('calendar product', res.data);\n setcheckoutAmount(res.data.checkouts);\n setmoneySpentAmount(res.data.moneySpent);\n }).catch((error) => {\n console.log('error', error);\n setcheckoutAmount(0);\n setmoneySpentAmount(0);\n });\n\n // console.log('orderComponentH orderStatisticsDetails', orderStatisticsDetails);\n // setorderDataDetails(orderStatisticsDetails);\n }\n\n\n //console.log('ReleaseProductCardComponent', productData);\n useEffect(() => {\n /*\n async function getData() {\n try {\n //await getPastProduct(customerNumberId, productData.product_id)\n } catch (err) {\n console.log(err);\n }\n }\n getData();\n */\n }, [])\n return (\n
    \n
    \n
    \n \n
    \n
    \n
    {productData.product_name}
    \n
    {productData.store_pid}
    \n
    {productData.store}
    \n
    \n
    \n {\n isShowPast ?\n
    \n Past\n
    \n : ''\n }\n
    \n
    \n {\n isShowDetails ?\n
    \n
    \n
    \n Total Checkout\n
    \n
    \n {`${checkoutAmount} Items`}\n
    \n
    \n
    \n
    \n Money Spent\n
    \n
    \n {`$${moneySpentAmount}`}\n
    \n
    \n
    : ''\n }\n
    \n {\n isShowDetails ?\n \n Hide Detail\n :\n \n View Detail\n \n }\n
    \n
    \n )\n}","export default __webpack_public_path__ + \"static/media/calenderRight.ac191b05.svg\";","import React, { useEffect } from 'react';\nimport './ReleaseCalender.css';\nimport { Calendar, Badge } from 'antd';\nimport {\n ReleaseProductCardComponent\n} from '../ReleaseProductCard';\nimport * as CommonApplicationHelper from '../../helpers/CommonApplicationHelper';\nimport { getReleases } from '../../utils/api';\nimport moment from 'moment';\nimport CalenderRight from '../../icons/v2/calenderRight.svg';\n\n\nexport function ReleaseCalenderComponent({\n releases,\n releaseArray,\n customerNumberId,\n licenseId\n}) {\n\n const [data, setData] = React.useState([]);\n const [releaseList, setReleaseList] = React.useState([]);\n //const [filteredReleaseData, setFilteredReleaseData] = React.useState([]);\n\n const currentDate = new Date();\n const updatedCurrentDate = `${currentDate.getMonth() +\n 1}.${currentDate.getDate()}.${currentDate.getFullYear()}`\n const [selectedDate, setselectedDate] = React.useState(updatedCurrentDate);\n\n const getReleaseData = async () => {\n let res = await getReleases();\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"getReleaseData\", res);\n return res.data;\n } else {\n return [];\n }\n }\n\n useEffect(() => {\n const fetchData = async () => {\n const result = await getReleaseData();\n setData(result);\n const dateList = CommonApplicationHelper.filterReleaseDate(result);\n setReleaseList(dateList);\n /*\n const filReleaseData = CommonApplicationHelper.filterUpcomingProducts(\n result,\n selectedDate\n );\n */\n //console.log(\"ADsyxc\", filReleaseData);\n //setFilteredReleaseData(filReleaseData);\n }\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n }, [])\n\n\n const onPanelChange = (value, mode) => {\n console.log('upcomingDrops onPanelChange', value, mode);\n };\n\n const onSelect = (date) => {\n console.log('upcomingDrops onSelect', date, date._d);\n const dateData = new Date(date._d);\n const updatedDate = `${dateData.getMonth() +\n 1}.${dateData.getDate()}.${dateData.getFullYear()}`;\n console.log('upcomingDrops updatedDate', updatedDate);\n setselectedDate(updatedDate);\n };\n\n // const renderProductList = (arr: UpcomingProductData[]) => {\n // const { changeLogData } = this.props;\n // const { selectedDate } = this.state;\n // // console.log('renderProductList', changeLogData);\n // if (Object.keys(changeLogData).length !== 0) {\n // const filteredReleaseData = CommonApplicationHelper.filterUpcomingProducts(\n // changeLogData.releases,\n // selectedDate\n // );\n // console.log('filteredReleaseData', filteredReleaseData);\n // return (\n //
    \n //
    \n // {`Show ${Object.keys(filteredReleaseData).length} product upcoming`}\n //
    \n // {filteredReleaseData &&\n // Object.keys(filteredReleaseData) &&\n // Object.keys(filteredReleaseData).map(key => {\n // return (\n //
    \n //
    \n // \n //
    \n //
    \n //
    \n // {changeLogData.releases[key].productName}\n //
    \n //
    {'sku'}
    \n //
    \n // {changeLogData.releases[key].productPrice}\n //
    \n //
    \n //
    \n // );\n // })}\n //
    \n // );\n // }\n // return <>;\n // };\n\n const getListData = (value) => {\n let listData;\n // console.log('getListData productDateList', this.props.productDateList );\n // console.log('getListData', value.month(), value.date(), value.year());\n // console.log('getListData', typeof value.format('M.D.YYYY'), this.state.releaseDate);\n // console.log('getListData checker', value.format('M.D.YYYY').indexOf(this.state.releaseDate));\n // console.log('getListData productDateList', productDateList, value.format('M.D.YYYY'));\n if (releaseList[value.format('M.D.YYYY')] !== undefined) {\n listData = [{ type: 'success', content: '' }];\n }\n // switch (value.date()) {\n // case 8:\n // listData = [{ type: 'success', content: '' }];\n // break;\n // case 10:\n // listData = [{ type: 'success', content: '' }];\n // break;\n // case 15:\n // listData = [{ type: 'success', content: '' }];\n // break;\n // default:\n // }\n return listData || [];\n };\n\n const dateCellRender = (value) => {\n // console.log('dateCellRender', value);\n console.log('dateCellRender releases', data);\n if (Object.keys(releaseList).length > 0) {\n const listData = getListData(value);\n return (\n
      \n {listData.map(item => (\n
    • \n \n
    • \n ))}\n
    \n );\n }\n };\n\n const renderProductList = (filteredReleaseData) => {\n /*\n await axios.get(getPlatformBackend() + `/api/checkouts/overview/user/${customerId}/product/${productId}`, {\n withCredentials: true\n })\n .then((res) => {\n console.log('calendar product', res.data);\n setcheckoutAmout(res.data.checkouts);\n setmoneySpentAmount(res.data.moneySpent);\n }).catch((error) => {\n console.log('error', error);\n });\n */\n \n return (\n <>\n {\n filteredReleaseData.map((ele) => {\n\n let dateNow = new Date();\n let releaseDate = new Date(ele.release_date);\n\n let showPast = releaseDate > dateNow ? false : true;\n\n\n return (\n \n );\n })\n }\n \n )\n }\n\n console.log('renderProductList selectedDate', selectedDate);\n\n const filteredReleaseData = CommonApplicationHelper.filterUpcomingProducts(\n data,\n selectedDate\n );\n console.log('renderProductList filteredReleaseData', filteredReleaseData);\n\n const headerRender = ({ value, onChange }) => {\n console.log('VALLLL', value);\n\n return (\n
    \n \"calenderIcon\" onChange(moment(value).subtract(1, 'M'))} />\n {/*
    onChange(moment(value).subtract(1, \"M\"))}>Links
    */}\n
    \n {moment(value).format('MMMM')} {moment(value).format('YYYY')}\n
    \n {/*
    onChange(moment(value).add(1, \"M\"))}>Rechts
    */}\n \"calenderIcon\" onChange(moment(value).add(1, 'M'))} />\n
    \n );\n };\n\n return (\n
    \n

    Release Calender

    \n \n
    \n
    \n
    {selectedDate}
    \n
    {`${filteredReleaseData.length} Products Release`}
    \n
    \n
    \n
    \n {renderProductList(filteredReleaseData)}\n
    \n {/* */}\n {/* {releases.map((release) => (\n
  • {release.release_date}, {release.store}, {release.retailer_sku}, {release.store_pid}, {release.product_name}, {release.product_price}, {release.product_image}, {release.product_link}
  • \n ))} */}\n
    \n )\n}","export default __webpack_public_path__ + \"static/media/UpIcon.b4ccc5d8.svg\";","export default __webpack_public_path__ + \"static/media/DownIcon.f30183f8.svg\";","import React, { useEffect } from 'react';\nimport './AdminStatistics.css';\nimport {\n DropdownComponent\n} from '../Dropdown';\nimport {\n AdminOrderHistoryComponent\n} from '../../components';\nimport UpIcon from '../../icons/v2/UpIcon.svg';\nimport DownIcon from '../../icons/v2/DownIcon.svg';\nimport { getAllCheckoutsAdmin } from '../../utils/api';\n\nexport function AdminStatisticsComponent({\n allCheckouts,\n yearlyCheckouts,\n monthlyCheckouts,\n weeklyCheckouts,\n dailyCheckouts\n}) {\n\n const currentDate = new Date();\n const filteredDate = `${(currentDate.getHours() < 10 ? '0' : '')}${currentDate.getHours()}:${(currentDate.getMinutes() < 10 ? '0' : '')}${currentDate.getMinutes()}`;\n\n const dropdownOption = [\n \"All\",\n \"This Year\",\n \"This Month\",\n \"This Week\",\n \"Today\"\n ];\n const dropdownMapping = {\n \"All\": \"All\",\n \"This Year\": \"Year\",\n \"This Month\": \"Month\",\n \"This Week\": \"Week\",\n \"Today\": \"Day\",\n }\n\n const [selectedRange, setselectedRange] = React.useState(dropdownOption[0]);\n const [data, setData] = React.useState({AllSuccess: [], AllFailure: [], YearSuccess: [], AllFailure: [], MonthSuccess: [], AllFailure: [], WeekSuccess: [], AllFailure: [], DaySuccess: [], AllFailure: []});\n //const [totalCheckoutCount, setTotalCheckoutCount] = React.useState(0);\n //const [totalCheckoutSuccessCount, setTotalCheckoutSuccessCount] = React.useState(0);\n //const [totalCheckoutFailureCount, setTotalCheckoutFailureCount] = React.useState(0);\n //const [orderStatistic, setOrderStatistic] = React.useState({All: [], Day: [], Month: [], Week: [], Year: []});\n\n const getAllCheckoutsAdminData = async () => {\n let res = await getAllCheckoutsAdmin();\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"getCheckoutsProductData\", res);\n return res.data;\n } else {\n return {AllSuccess: [], AllFailure: [], YearSuccess: [], AllFailure: [], MonthSuccess: [], AllFailure: [], WeekSuccess: [], AllFailure: [], DaySuccess: [], AllFailure: []};\n }\n }\n\n useEffect(() => {\n \n const fetchData = async () => {\n const result = await getAllCheckoutsAdminData();\n setData(result);\n }\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n\n\n /*\n let totalCheckout = 0;\n let totalCheckoutSuccess = 0;\n let totalCheckoutFailed = 0;\n if (data !== []) {\n if (selectedRange === 'All') {\n totalCheckoutSuccess = data[\"AllSuccess\"].length;\n totalCheckoutFailed = data[\"AllFailed\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n } else if (selectedRange === 'This Year') {\n totalCheckoutSuccess = data[\"YearSuccess\"].length;\n totalCheckoutFailed = data[\"YearFailed\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n } else if (selectedRange === 'This Month') {\n totalCheckoutSuccess = data[\"MonthSuccess\"].length;\n totalCheckoutFailed = data[\"MonthFailed\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n } else if (selectedRange === 'This Week') {\n totalCheckoutSuccess = data[\"WeekSuccess\"].length;\n totalCheckoutFailed = data[\"WeekFailure\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n } else if (selectedRange === 'Today') {\n totalCheckoutSuccess = data[\"DaySuccess\"].length;\n totalCheckoutFailed = data[\"DayFailure\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n }\n\n const orderStatistics = {\n All: data[\"AllSuccess\"],\n Day: data[\"YearSuccess\"],\n Month: data[\"MonthSuccess\"],\n Week: data[\"WeekSuccess\"],\n Year: data[\"DaySuccess\"],\n }\n setOrderStatistic(orderStatistics);\n } else {\n const orderStatistics = {\n All: [],\n Day: [],\n Month: [],\n Week: [],\n Year: [],\n }\n setOrderStatistic(orderStatistics);\n }\n setTotalCheckoutCount(totalCheckout);\n setTotalCheckoutSuccessCount(totalCheckoutSuccess);\n setTotalCheckoutFailureCount(totalCheckoutFailed);\n */\n }, []);\n\n\n const handleSetselectedRange = (data) => {\n console.log('handleSetselectedRange', data);\n setselectedRange(data);\n }\n\n\n //let totalCheckout = 0;\n //let totalCheckoutSuccess = 0;\n //let totalCheckoutFailed = 0;\n /*\n if (selectedRange === 'All') {\n totalCheckoutSuccess = data[\"AllSuccess\"].length;\n totalCheckoutFailed = data[\"AllFailed\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n } else if (selectedRange === 'This Year') {\n totalCheckoutSuccess = data[\"YearSuccess\"].length;\n totalCheckoutFailed = data[\"YearFailed\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n } else if (selectedRange === 'This Month') {\n totalCheckoutSuccess = data[\"MonthSuccess\"].length;\n totalCheckoutFailed = data[\"MonthFailed\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n } else if (selectedRange === 'This Week') {\n totalCheckoutSuccess = data[\"WeekSuccess\"].length;\n totalCheckoutFailed = data[\"WeekFailure\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n } else if (selectedRange === 'Today') {\n totalCheckoutSuccess = data[\"DaySuccess\"].length;\n totalCheckoutFailed = data[\"DayFailure\"].length;\n totalCheckout = totalCheckoutSuccess + totalCheckoutFailed;\n }\n */\n\n //console.log('AdminStatisticsComponent', allCheckouts);\n //console.log('AdminStatisticsComponent', yearlyCheckouts);\n //console.log('AdminStatisticsComponent', monthlyCheckouts);\n //console.log('AdminStatisticsComponent', weeklyCheckouts);\n //console.log('AdminStatisticsComponent', dailyCheckouts);\n\n /*\n const orderStatistics = {\n All: allCheckouts,\n Day: dailyCheckouts,\n Month: monthlyCheckouts,\n Week: weeklyCheckouts,\n Year: yearlyCheckouts,\n }\n */\n /*\n const orderStatistics = {\n All: data[\"AllSuccess\"],\n Day: data[\"YearSuccess\"],\n Month: data[\"MonthSuccess\"],\n Week: data[\"WeekSuccess\"],\n Year: data[\"DaySuccess\"],\n }\n */\n\n\n return (\n
    \n {/*

    STATISTICS

    \n
  • Daily: {dailyCheckouts.length}
  • \n
  • Weekly: {weeklyCheckouts.length}
  • \n
  • Monthly: {monthlyCheckouts.length}
  • \n
  • Yearly: {yearlyCheckouts.length}
  • \n
  • All: {allCheckouts.length}
  • */}\n
    \n
    Analytic
    \n
    \n
    {`Updated today at ${filteredDate}`}
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {data[\"AllSuccess\"].length + data[\"AllFailure\"].length}\n
    \n
    \n Total Checkout\n
    \n
    \n
    \n
    \"UpIcon\"12 Items
    \n
    (+1.5%) Last 7 Days
    \n
    \n
    \n
    \n
    \n
    \n {data[\"AllSuccess\"].length}\n
    \n
    \n Success Checkout\n
    \n
    \n
    \n
    \"UpIcon\"12 Items
    \n
    (+1.5%) Last 7 Days
    \n
    \n
    \n
    \n
    \n
    \n {data[\"AllFailure\"].length}\n
    \n
    \n Failed Checkout\n
    \n
    \n
    \n
    \"DownIcon\"2 Items
    \n
    (-1.5%) Last 7 Days
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n )\n}","import React from 'react';\nimport { Button, Row } from 'antd';\nimport './ProductCard.css';\n\nexport function ProductCardComponent({\n productName,\n productStore,\n productPrice,\n productImage,\n retailerSku,\n totalCheckouts,\n successCheckouts,\n failedCheckouts\n}) {\n\n return (\n\n\n
    \n
    \n
    {productName}
    \n \"chartIcon\"\n
    {retailerSku}
    \n
    \n
    \n
    {productStore}
    \n
    \n
    \n
    {totalCheckouts}
    \n
    Total
    \n
    \n
    \n
    {successCheckouts}
    \n
    Success
    \n
    \n
    \n
    {failedCheckouts}
    \n
    Failed
    \n
    \n
    \n \n
    \n\n
    \n\n\n )\n}","export default __webpack_public_path__ + \"static/media/Refresh.b65193b7.svg\";","import React, { useEffect } from 'react';\nimport { ProductCardComponent } from '../ProductCard';\nimport './AdminProducts.css';\nimport { Button, Pagination } from 'antd';\nimport { getCheckoutsProduct } from '../../utils/api';\nimport Refresh from '../../icons/v2/Refresh.svg';\n\nexport function AdminProductsComponent({\n}) {\n\n const pageSize = 3;\n\n const [data, setData] = React.useState([]);\n const [totalPage, setTotalPage] = React.useState(0);\n const [currentPage, setCurrentPage] = React.useState(1);\n const [minIndex, setMinIndex] = React.useState(0);\n const [maxIndex, setMaxIndex] = React.useState(0);\n\n //console.log(\"DATA LENGTH\", data.length);\n //console.log(data.slice(0, 9));\n\n const getCheckoutsProductData = async () => {\n let res = await getCheckoutsProduct();\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"getCheckoutsProductData\", res);\n return res.data;\n } else {\n return [];\n }\n }\n\n useEffect(() => {\n\n const fetchData = async () => {\n const result = await getCheckoutsProductData();\n setData(result);\n }\n\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n setMinIndex(0);\n setMaxIndex(9);\n }, []);\n\n const refresh = async () => {\n const result = await getCheckoutsProductData();\n console.log(\"result resfresh\", result);\n setData(result);\n setMinIndex(0);\n setMaxIndex(9);\n }\n\n\n const handleChange = (value) => {\n setCurrentPage(value);\n if (value <= 1) {\n setMinIndex(0);\n setMaxIndex(9);\n } else {\n setMinIndex(maxIndex);\n setMaxIndex(value * 9);\n\n }\n }\n\n //render al items from productsArray in a ProductCardComponent\n /*\n const productCards = productsArray.map((product, index) => {\n return (\n
    \n {\n data &&\n data.length > 0 &&\n data.slice(minIndex, maxIndex).map(val => (\n \n ))\n }\n
    \n )\n })\n \n */\n\n\n //console.log(products);\n return (\n
    \n
    \n
    \n
    Products
    \n \"refreshIcon\"\n
    \n
    \n {\n data &&\n data.length > 0 &&\n data.slice(minIndex, maxIndex).map((val, index) => (\n \n ))\n }\n
    \n
    \n \n
    \n
    \n
    \n\n )\n}","import React from 'react';\nimport './AdminReleaseCalender.css';\nimport { Calendar, Badge } from 'antd';\nimport * as CommonApplicationHelper from '../../helpers/CommonApplicationHelper';\n\nexport function AdminReleaseCalenderComponent({\n releases\n}) {\n\n let releaseDates = [];\n if (releases && releases.length > 0) {\n releaseDates = releases.map(release => {\n return new Date(release.release_date).toLocaleString().split(',')[0];\n });\n }\n\n const dateCellRender = (value) => {\n //console.log(value);\n\n const listData = [];\n\n if (releaseDates.indexOf(value.format('D.M.YYYY')) !== -1) {\n \n releaseDates.forEach((release, index) => {\n if (release === value.format('D.M.YYYY')) {\n listData.push({\n type: 'success',\n content: releases[index].product_name,\n });\n }\n });\n \n }\n //console.log(listData)\n \n return (\n
      \n {listData.map((item) => (\n
    • \n \n
    • \n ))}\n
    \n );\n };\n\n const onPanelChange = (value, mode) => {\n console.log('upcomingDrops onPanelChange', value, mode);\n };\n\n return (\n
    \n \n
    \n );\n}","import React from 'react';\nimport { useEffect } from 'react';\nimport './CreateRelease.css';\nimport { useForm } from 'react-hook-form';\nimport Close from '../../icons/v2/Close.svg';\n\n\nexport function CreateReleaseComponent( {\n closePopup\n} ) {\n\n const { register, handleSubmit, reset } = useForm();\n\n const onSubmit = async (data) => {\n console.log(\"on SUbmit\");\n }\n\n //change form\n return (\n
    \n
    \n \"closeIcon\"\n
    \n Create Release\n
    \n
    \n
    \n
    \n Email*\n
    \n \n
    \n
    \n
    \n Type*\n
    \n \n
    \n
    \n
    \n Bla*\n
    \n \n
    \n \n \n
    \n
    \n )\n}","import React, { useEffect } from 'react';\nimport { Button } from 'antd';\nimport './AdminReleases.css';\nimport { AdminReleaseCalenderComponent } from '../AdminReleaseCalender';\nimport { CreateReleaseComponent } from '../CreateRelease';\nimport { getReleases } from '../../utils/api';\n\nexport function AdminReleasesComponent({\n}) {\n\n const [ createReleasePopup, setCreateReleasePopup ] = React.useState(false);\n const [ data, setData ] = React.useState([]);\n\n const getReleaseData = async () => {\n let res = await getReleases();\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"getReleases\", res);\n return res.data;\n } else {\n return [];\n }\n }\n\n useEffect(() => {\n\n const fetchData = async () => {\n const result = await getReleaseData();\n setData(result);\n }\n\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n }, []);\n\n const toggleCreateReleasePopup = () => {\n if (!createReleasePopup) {\n setCreateReleasePopup(true);\n } else {\n setCreateReleasePopup(false);\n }\n }\n\n return (\n
    \n
    \n
    Releases
    \n
    \n \n
    \n {\n createReleasePopup ?\n \n : null\n }\n
    \n
    \n \n
    \n
    \n )\n}","import React from 'react';\nimport { Button } from 'antd';\nimport { useEffect } from 'react';\nimport './ValidationPopup.css';\nimport { useForm } from 'react-hook-form';\nimport Close from '../../icons/v2/Close.svg';\nimport Success from '../../icons/v2/Success.svg';\nimport Failure from '../../icons/v2/Failure.svg';\n\nexport function ValidationPopupComponent({\n closePopup,\n validationQuestion,\n submitFunction,\n title\n}) {\n\n const [loading, setLoading] = React.useState(true);\n\n const [ inputValue, setInputValue ] = React.useState('');\n\n const handleChange = event => {\n setInputValue(event.target.value);\n \n console.log('value is:', event.target.value);\n };\n\n const backToHome = () => {\n closePopup();\n }\n\n return (\n
    \n
    \n \"closeIcon\"\n
    \n {title}\n
    \n
    {validationQuestion}
    \n \n
    \n \n
    \n
    \n
    \n )\n}","import React, { Fragment, useEffect } from 'react';\nimport { Button } from 'antd';\nimport './AdminLicenses.css';\nimport { CreateLicenseComponent, LicenseListComponent } from '../../components';\nimport { ValidationPopupComponent } from '../ValidationPopup';\nimport { postCloseClients, getAllLicensesUser, getUserInfo, postCloseClient } from '../../utils/api';\nimport Success from '../../icons/v2/Success.svg';\nimport Failure from '../../icons/v2/Failure.svg';\n\nexport function AdminLicensesComponent({\n adminId\n}) {\n\n const [createLicensePopup, setCreateLicensePopup] = React.useState(false);\n const [validationPopup, setValidationPopup] = React.useState(false);\n const [returnPopup, setReturnPopup] = React.useState(false);\n\n const [isShowResult, setIsShowResult] = React.useState(false);\n const [isSuccess, setIsSuccess] = React.useState(false);\n\n const [data, setData] = React.useState([]);\n\n const getLicenseData = async () => {\n let res = await getAllLicensesUser();\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"getLicenseData\", res);\n return res.data;\n } else {\n return [];\n }\n }\n\n useEffect(() => {\n\n const fetchData = async () => {\n const result = await getLicenseData();\n setData(result);\n }\n\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n }, []);\n\n const toggleCreateLicensePopup = () => {\n if (!createLicensePopup) {\n setCreateLicensePopup(true);\n } else {\n setCreateLicensePopup(false);\n }\n }\n\n const toggleValidationPopup = () => {\n if (!validationPopup) {\n setValidationPopup(true);\n } else {\n setValidationPopup(false);\n }\n }\n\n const toggleReturnPopup = () => {\n setIsShowResult(false);\n }\n\n const closeClients = async (license) => {\n let authLicense = await getUserInfo(adminId);\n let res = await postCloseClient(license, authLicense.data.license_key);\n\n if (res !== null && res !== undefined) {\n if (res.status === 200) {\n //success\n setIsShowResult(true);\n setIsSuccess(true);\n } else {\n //error\n setIsShowResult(true);\n setIsSuccess(false);\n }\n } else {\n //error\n setIsShowResult(true);\n setIsSuccess(false);\n }\n }\n\n const closeAllClients = async (value) => {\n console.log(\"closeAllClients: \", value);\n setValidationPopup(false);\n\n if (value !== \"confirm\") {\n //error\n setIsShowResult(true);\n setIsSuccess(false);\n } else {\n //send request to close all clients\n\n let license = await getUserInfo(adminId);\n let res = await postCloseClients(license.data.license_key);\n console.log(\"Response\", res);\n\n if (res !== null && res !== undefined) {\n if (res.status === 200) {\n //success\n setIsShowResult(true);\n setIsSuccess(true);\n } else {\n //error\n setIsShowResult(true);\n setIsSuccess(false);\n }\n } else {\n //error\n setIsShowResult(true);\n setIsSuccess(false);\n }\n\n }\n }\n\n let renewals = [];\n let lifetimes = [];\n let openClients = [];\n data.forEach(license => {\n if (license.license_type === \"Renewal\") {\n renewals.push(license);\n } else if (license.license_type === \"Lifetime\") {\n lifetimes.push(license);\n }\n\n if (license.ws_id !== null) {\n openClients.push(license)\n }\n });\n\n\n return (\n
    \n
    \n {isShowResult ?\n
    \n
    \n {\n isSuccess ?\n
    \n
    \n \"successIcon\"\n
    \n
    \n Closed all clients\n
    \n
    \n \n Close\n \n
    \n
    :\n
    \n
    \n \"failIcon\"\n
    \n
    \n Something went wrong\n
    \n
    \n \n Close\n \n
    \n
    \n }\n
    \n
    \n : null}\n
    \n
    \n
    License overview
    \n
    \n \n \n
    \n {createLicensePopup ?\n \n : null}\n {validationPopup ?\n Type in confirm to confirm} submitFunction={closeAllClients} title={\"Sure to close all clients?\"} />\n : null}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {data.length}\n
    \n
    \n Total Licenses\n
    \n
    \n\n
    \n
    \n
    \n
    \n {renewals.length}\n
    \n
    \n Renewal\n
    \n
    \n
    \n
    \n
    \n
    \n {lifetimes.length}\n
    \n
    \n Lifetime\n
    \n
    \n
    \n
    \n
    \n
    \n {openClients.length}\n
    \n
    \n Open clients\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n )\n}","import React from 'react';\nimport { Button, Select } from 'antd';\nimport { useForm, Controller } from \"react-hook-form\";\nimport { useEffect } from 'react';\nimport './UpdateAddress.css';\nimport { postUpdateCustomerInfo } from '../../utils/api';\nimport Close from '../../icons/v2/Close.svg';\nimport Success from '../../icons/v2/Success.svg';\nimport Failure from '../../icons/v2/Failure.svg';\nimport { LogoLoaderComponent } from '..';\n\nexport function UpdateAddressComponent(\n props,\n) {\n\n //const [customerId, setCustomerId] = React.useState('');\n const [loading, setLoading] = React.useState(true);\n const [address, setAddress] = React.useState({});\n const [isShowResult, setisShowResult] = React.useState(false);\n const [isSuccuess, setisSuccuess] = React.useState(false);\n const [nameEmail, setNameEmail] = React.useState({});\n const [resultTitle, setResultTitle] = React.useState('');\n const [resultDescription, setResultDescription] = React.useState('Error');\n const { register, handleSubmit, reset, control, setValue } = useForm();\n\n const onSubmit = async (data) => {\n console.log('updateCustomerAddress', data);\n setLoading(true);\n setisShowResult(false);\n setisSuccuess(false);\n\n let res = await postUpdateCustomerInfo(data, props.customerId);\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"SUCCESSFULLY UPDATED CUSTOMER\");\n setLoading(false);\n // props.closePopup();\n // window.location.reload(false);\n setResultTitle(\"Updating your address was successful\");\n setResultDescription(\"All new invoices will be issued to this address\");\n setisShowResult(true);\n setisSuccuess(true);\n setTimeout(() => {\n props.updateCustomerAddress(props.customerId);\n }, 200);\n } else {\n console.log(\"updateCustomerAddress failed\", res);\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n if (res.data.err) {\n setResultDescription(res.data.err[0].msg);\n }\n //setResultDescription(res.data.err[0].msg);\n setisShowResult(true);\n setisSuccuess(false);\n }\n\n };\n\n const backToHome = () => {\n props.closePopup();\n }\n\n const tryAgain = () => {\n setValue(\"country\", address.country);\n setisShowResult(false);\n }\n\n useEffect(() => {\n async function getData() {\n try {\n reset();\n setAddress(props.addy.address);\n setNameEmail(props.addy);\n console.log(\"address\", props.addy.address.country);\n setValue(\"country\", props.addy.address.country);\n setLoading(false);\n } catch (err) {\n console.log(\"Update address error\", err);\n //history.push(\"/\");\n setLoading(false);\n }\n }\n getData();\n }, [])\n\n const countries = [\n {\n value: 'AF',\n label: 'Afghanistan'\n },\n {\n value: 'AX',\n label: 'Åland Islands'\n },\n {\n value: 'AL',\n label: 'Albania'\n },\n {\n value: 'DZ',\n label: 'Algeria'\n },\n {\n value: 'AD',\n label: 'Andorra'\n },\n {\n value: 'AO',\n label: 'Angola'\n },\n {\n value: 'AI',\n label: 'Anguilla'\n },\n {\n value: 'AG',\n label: 'Antigua & Barbuda'\n },\n {\n value: 'AR',\n label: 'Argentina'\n },\n {\n value: 'AM',\n label: 'Armenia'\n },\n {\n value: 'AW',\n label: 'Aruba'\n },\n {\n value: 'AU',\n label: 'Australia'\n },\n {\n value: 'AT',\n label: 'Austria'\n },\n {\n value: 'AZ',\n label: 'Azerbaijan'\n },\n {\n value: 'BS',\n label: 'Bahamas'\n },\n {\n value: 'BH',\n label: 'Bahrain'\n },\n {\n value: 'BD',\n label: 'Bangladesh'\n },\n {\n value: 'BB',\n label: 'Barbados'\n },\n {\n value: 'BY',\n label: 'Belarus'\n },\n {\n value: 'BE',\n label: 'Belgium'\n },\n {\n value: 'BZ',\n label: 'Belize'\n },\n {\n value: 'BJ',\n label: 'Benin'\n },\n {\n value: 'BM',\n label: 'Bermuda'\n },\n {\n value: 'BT',\n label: 'Bhutan'\n },\n {\n value: 'BO',\n label: 'Bolivia'\n },\n {\n value: 'BA',\n label: 'Bosnia & Herzegovina'\n },\n {\n value: 'BW',\n label: 'Botswana'\n },\n {\n value: 'BV',\n label: 'Bouvet Island'\n },\n {\n value: 'BR',\n label: 'Brazil'\n },\n {\n value: 'IO',\n label: 'British Indian Ocean Territory'\n },\n {\n value: 'VG',\n label: 'British Virgin Islands'\n },\n {\n value: 'BN',\n label: 'Brunei'\n },\n {\n value: 'BG',\n label: 'Bulgaria'\n },\n {\n value: 'BF',\n label: 'Burkina Faso'\n },\n {\n value: 'BI',\n label: 'Burundi'\n },\n {\n value: 'KH',\n label: 'Cambodia'\n },\n {\n value: 'CM',\n label: 'Cameroon'\n },\n {\n value: 'CA',\n label: 'Canada'\n },\n {\n value: 'CV',\n label: 'Cape Verde'\n },\n {\n value: 'BQ',\n label: 'Caribbean Netherlands'\n },\n {\n value: 'KY',\n label: 'Cayman Islands'\n },\n {\n value: 'CF',\n label: 'Central African Republic'\n },\n {\n value: 'TD',\n label: 'Chad'\n },\n {\n value: 'CL',\n label: 'Chile'\n },\n {\n value: 'CN',\n label: 'China'\n },\n {\n value: 'CX',\n label: 'Christmas Island'\n },\n {\n value: 'CC',\n label: 'Cocos (Keeling) Islands'\n },\n {\n value: 'CO',\n label: 'Colombia'\n },\n {\n value: 'KM',\n label: 'Comoros'\n },\n {\n value: 'CG',\n label: 'Congo - Brazzaville'\n },\n {\n value: 'CD',\n label: 'Congo - Kinshasa'\n },\n {\n value: 'CK',\n label: 'Cook Islands'\n },\n {\n value: 'CR',\n label: 'Costa Rica'\n },\n {\n value: 'HR',\n label: 'Croatia'\n },\n {\n value: 'CU',\n label: 'Cuba'\n },\n {\n value: 'CW',\n label: 'Curaçao'\n },\n {\n value: 'CY',\n label: 'Cyprus'\n },\n {\n value: 'CZ',\n label: 'Czech Republic'\n },\n {\n value: 'CI',\n label: 'Côte d’Ivoire'\n },\n {\n value: 'DK',\n label: 'Denmark'\n },\n {\n value: 'DJ',\n label: 'Djibouti'\n },\n {\n value: 'DM',\n label: 'Dominica'\n },\n {\n value: 'DO',\n label: 'Dominican Republic'\n },\n {\n value: 'EC',\n label: 'Ecuador'\n },\n {\n value: 'EG',\n label: 'Egypt'\n },\n {\n value: 'SV',\n label: 'El Salvador'\n },\n {\n value: 'GQ',\n label: 'Equatorial Guinea'\n },\n {\n value: 'ER',\n label: 'Eritrea'\n },\n {\n value: 'EE',\n label: 'Estonia'\n },\n {\n value: 'ET',\n label: 'Ethiopia'\n },\n {\n value: 'FK',\n label: 'Falkland Islands'\n },\n {\n value: 'FO',\n label: 'Faroe Islands'\n },\n {\n value: 'FJ',\n label: 'Fiji'\n },\n {\n value: 'FI',\n label: 'Finland'\n },\n {\n value: 'FR',\n label: 'France'\n },\n {\n value: 'GF',\n label: 'French Guiana'\n },\n {\n value: 'PF',\n label: 'French Polynesia'\n },\n {\n value: 'TF',\n label: 'French Southern Territories'\n },\n {\n value: 'GA',\n label: 'Gabon'\n },\n {\n value: 'GM',\n label: 'Gambia'\n },\n {\n value: 'GE',\n label: 'Georgia'\n },\n {\n value: 'DE',\n label: 'Germany'\n },\n {\n value: 'GH',\n label: 'Ghana'\n },\n {\n value: 'GI',\n label: 'Gibraltar'\n },\n {\n value: 'GR',\n label: 'Greece'\n },\n {\n value: 'GL',\n label: 'Greenland'\n },\n {\n value: 'GD',\n label: 'Grenada'\n },\n {\n value: 'GP',\n label: 'Guadeloupe'\n },\n {\n value: 'GT',\n label: 'Guatemala'\n },\n {\n value: 'GG',\n label: 'Guernsey'\n },\n {\n value: 'GN',\n label: 'Guinea'\n },\n {\n value: 'GW',\n label: 'Guinea-Bissau'\n },\n {\n value: 'GY',\n label: 'Guyana'\n },\n {\n value: 'HT',\n label: 'Haiti'\n },\n {\n value: 'HM',\n label: 'Heard & McDonald Islands'\n },\n {\n value: 'HN',\n label: 'Honduras'\n },\n {\n value: 'HK',\n label: 'Hong Kong SAR China'\n },\n {\n value: 'HU',\n label: 'Hungary'\n },\n {\n value: 'IS',\n label: 'Iceland'\n },\n {\n value: 'IN',\n label: 'India'\n },\n {\n value: 'ID',\n label: 'Indonesia'\n },\n {\n value: 'IR',\n label: 'Iran'\n },\n {\n value: 'IQ',\n label: 'Iraq'\n },\n {\n value: 'IE',\n label: 'Ireland'\n },\n {\n value: 'IM',\n label: 'Isle of Man'\n },\n {\n value: 'IL',\n label: 'Israel'\n },\n {\n value: 'IT',\n label: 'Italy'\n },\n {\n value: 'JM',\n label: 'Jamaica'\n },\n {\n value: 'JP',\n label: 'Japan'\n },\n {\n value: 'JE',\n label: 'Jersey'\n },\n {\n value: 'JO',\n label: 'Jordan'\n },\n {\n value: 'KZ',\n label: 'Kazakhstan'\n },\n {\n value: 'KE',\n label: 'Kenya'\n },\n {\n value: 'KI',\n label: 'Kiribati'\n },\n {\n value: 'XK',\n label: 'Kosovo'\n },\n {\n value: 'KW',\n label: 'Kuwait'\n },\n {\n value: 'KG',\n label: 'Kyrgyzstan'\n },\n {\n value: 'LA',\n label: 'Laos'\n },\n {\n value: 'LV',\n label: 'Latvia'\n },\n {\n value: 'LB',\n label: 'Lebanon'\n },\n {\n value: 'LS',\n label: 'Lesotho'\n },\n {\n value: 'LR',\n label: 'Liberia'\n },\n {\n value: 'LY',\n label: 'Libya'\n },\n {\n value: 'LI',\n label: 'Liechtenstein'\n },\n {\n value: 'LT',\n label: 'Lithuania'\n },\n {\n value: 'LU',\n label: 'Luxembourg'\n },\n {\n value: 'MO',\n label: 'Macau SAR China'\n },\n {\n value: 'MK',\n label: 'Macedonia'\n },\n {\n value: 'MG',\n label: 'Madagascar'\n },\n {\n value: 'MW',\n label: 'Malawi'\n },\n {\n value: 'MY',\n label: 'Malaysia'\n },\n {\n value: 'MV',\n label: 'Maldives'\n },\n {\n value: 'ML',\n label: 'Mali'\n },\n {\n value: 'MT',\n label: 'Malta'\n },\n {\n value: 'MQ',\n label: 'Martinique'\n },\n {\n value: 'MR',\n label: 'Mauritania'\n },\n {\n value: 'MU',\n label: 'Mauritius'\n },\n {\n value: 'YT',\n label: 'Mayotte'\n },\n {\n value: 'MX',\n label: 'Mexico'\n },\n {\n value: 'MD',\n label: 'Moldova'\n },\n {\n value: 'MC',\n label: 'Monaco'\n },\n {\n value: 'MN',\n label: 'Mongolia'\n },\n {\n value: 'ME',\n label: 'Montenegro'\n },\n {\n value: 'MS',\n label: 'Montserrat'\n },\n {\n value: 'MA',\n label: 'Morocco'\n },\n {\n value: 'MZ',\n label: 'Mozambique'\n },\n {\n value: 'MM',\n label: 'Myanmar (Burma)'\n },\n {\n value: 'NA',\n label: 'Namibia'\n },\n {\n value: 'NR',\n label: 'Nauru'\n },\n {\n value: 'NP',\n label: 'Nepal'\n },\n {\n value: 'NL',\n label: 'Netherlands'\n },\n {\n value: 'AN',\n label: 'Netherlands Antilles'\n },\n {\n value: 'NC',\n label: 'New Caledonia'\n },\n {\n value: 'NZ',\n label: 'New Zealand'\n },\n {\n value: 'NI',\n label: 'Nicaragua'\n },\n {\n value: 'NE',\n label: 'Niger'\n },\n {\n value: 'NG',\n label: 'Nigeria'\n },\n {\n value: 'NU',\n label: 'Niue'\n },\n {\n value: 'NF',\n label: 'Norfolk Island'\n },\n {\n value: 'KP',\n label: 'North Korea'\n },\n {\n value: 'NO',\n label: 'Norway'\n },\n {\n value: 'OM',\n label: 'Oman'\n },\n {\n value: 'PK',\n label: 'Pakistan'\n },\n {\n value: 'PS',\n label: 'Palestinian Territories'\n },\n {\n value: 'PA',\n label: 'Panama'\n },\n {\n value: 'PG',\n label: 'Papua New Guinea'\n },\n {\n value: 'PY',\n label: 'Paraguay'\n },\n {\n value: 'PE',\n label: 'Peru'\n },\n {\n value: 'PH',\n label: 'Philippines'\n },\n {\n value: 'PN',\n label: 'Pitcairn Islands'\n },\n {\n value: 'PL',\n label: 'Poland'\n },\n {\n value: 'PT',\n label: 'Portugal'\n },\n {\n value: 'QA',\n label: 'Qatar'\n },\n {\n value: 'RE',\n label: 'Réunion'\n },\n {\n value: 'RO',\n label: 'Romania'\n },\n {\n value: 'RU',\n label: 'Russia'\n },\n {\n value: 'RW',\n label: 'Rwanda'\n },\n {\n value: 'WS',\n label: 'Samoa'\n },\n {\n value: 'SM',\n label: 'San Marino'\n },\n {\n value: 'ST',\n label: 'São Tomé & Príncipe'\n },\n {\n value: 'SA',\n label: 'Saudi Arabia'\n },\n {\n value: 'SN',\n label: 'Senegal'\n },\n {\n value: 'RS',\n label: 'Serbia'\n },\n {\n value: 'SC',\n label: 'Seychelles'\n },\n {\n value: 'SL',\n label: 'Sierra Leone'\n },\n {\n value: 'SG',\n label: 'Singapore'\n },\n {\n value: 'SX',\n label: 'Sint Marteen'\n },\n {\n value: 'SK',\n label: 'Slovakia'\n },\n {\n value: 'SI',\n label: 'Slovenia'\n },\n {\n value: 'SB',\n label: 'Solomon Islands'\n },\n {\n value: 'SO',\n label: 'Somalia'\n },\n {\n value: 'ZA',\n label: 'South Africa'\n },\n {\n value: 'GS',\n label: 'South Georgia & South Sandwich Islands'\n },\n {\n value: 'KR',\n label: 'South Korea'\n },\n {\n value: 'SS',\n label: 'South Sudan'\n },\n {\n value: 'ES',\n label: 'Spain'\n },\n {\n value: 'LK',\n label: 'Sri Lanka'\n },\n {\n value: 'BL',\n label: 'St. Barthélemy'\n },\n {\n value: 'SH',\n label: 'St. Helena'\n },\n {\n value: 'KN',\n label: 'St. Kitts & Nevis'\n },\n {\n value: 'LC',\n label: 'St. Lucia'\n },\n {\n value: 'MF',\n label: 'St. Martin'\n },\n {\n value: 'PM',\n label: 'St. Pierre & Miquelon'\n },\n {\n value: 'VC',\n label: 'St. Vincent & Grenadines'\n },\n {\n value: 'SD',\n label: 'Sudan'\n },\n {\n value: 'SR',\n label: 'Suriname'\n },\n {\n value: 'SJ',\n label: 'Svalbard & Jan Mayen'\n },\n {\n value: 'SZ',\n label: 'Swaziland'\n },\n {\n value: 'SE',\n label: 'Sweden'\n },\n {\n value: 'CH',\n label: 'Switzerland'\n },\n {\n value: 'SY',\n label: 'Syria'\n },\n {\n value: 'TW',\n label: 'Taiwan'\n },\n {\n value: 'TJ',\n label: 'Tajikistan'\n },\n {\n value: 'TZ',\n label: 'Tanzania'\n },\n {\n value: 'TH',\n label: 'Thailand'\n },\n {\n value: 'TL',\n label: 'Timor-Leste'\n },\n {\n value: 'TG',\n label: 'Togo'\n },\n {\n value: 'TK',\n label: 'Tokelau'\n },\n {\n value: 'TO',\n label: 'Tonga'\n },\n {\n value: 'TT',\n label: 'Trinidad & Tobago'\n },\n {\n value: 'TN',\n label: 'Tunisia'\n },\n {\n value: 'TR',\n label: 'Turkey'\n },\n {\n value: 'TM',\n label: 'Turkmenistan'\n },\n {\n value: 'TC',\n label: 'Turks & Caicos Islands'\n },\n {\n value: 'TV',\n label: 'Tuvalu'\n },\n {\n value: 'UM',\n label: 'U.S. Outlying Islands'\n },\n {\n value: 'UG',\n label: 'Uganda'\n },\n {\n value: 'UA',\n label: 'Ukraine'\n },\n {\n value: 'AE',\n label: 'United Arab Emirates'\n },\n {\n value: 'GB',\n label: 'United Kingdom'\n },\n {\n value: 'US',\n label: 'United States'\n },\n {\n value: 'UY',\n label: 'Uruguay'\n },\n {\n value: 'UZ',\n label: 'Uzbekistan'\n },\n {\n value: 'VU',\n label: 'Vanuatu'\n },\n {\n value: 'VA',\n label: 'Vatican City'\n },\n {\n value: 'VE',\n label: 'Venezuela'\n },\n {\n value: 'VN',\n label: 'Vietnam'\n },\n {\n value: 'WF',\n label: 'Wallis & Futuna'\n },\n {\n value: 'EH',\n label: 'Western Sahara'\n },\n {\n value: 'YE',\n label: 'Yemen'\n },\n {\n value: 'ZM',\n label: 'Zambia'\n },\n { value: 'ZW', label: 'Zimbabwe' }\n ];\n\n return (\n
    \n {\n isShowResult ?\n
    \n {\n isSuccuess ?\n
    \n
    \n \"successIcon\"\n
    \n
    \n {resultTitle}\n
    \n
    \n {resultDescription}\n
    \n
    \n \n Back\n \n
    \n
    :\n
    \n
    \n \"failIcon\"\n
    \n
    \n {resultTitle}\n
    \n
    \n {resultDescription}\n
    \n
    \n \n Try Again\n \n
    \n
    \n }\n
    \n : loading ? (\n \n ) :\n
    \n {/* */}\n \"closeIcon\"\n
    \n Billing Address\n
    \n
    \n
    \n
    \n Name*\n
    \n \n
    \n
    \n
    \n Email*\n
    \n \n
    \n
    \n
    \n Address Line 1*\n
    \n \n
    \n
    \n
    \n Address Line 2\n
    \n \n
    \n
    \n
    \n
    \n Postal Code*\n
    \n \n
    \n
    \n
    \n City*\n
    \n \n
    \n
    \n
    \n
    \n
    \n State\n
    \n \n
    \n
    \n
    \n Country*\n
    \n (\n country.value === address.country)?.label ?? ''}\n value={value}\n filterOption={(input, option) => (option?.label ?? '').toLowerCase().includes(input.toLowerCase())}\n showSearch\n name=\"country\"\n onChange={e => {\n console.log(e);\n setValue(\"country\", e);\n }}\n placeholder=\"Select a country\"\n options={countries}\n className=\"customSelect\"\n >\n \n )}\n />\n
    \n
    \n \n \n
    \n }\n\n
    \n );\n}","export default __webpack_public_path__ + \"static/media/Stripe.86eca0d5.svg\";","import React from 'react';\nimport {CardElement} from '@stripe/react-stripe-js';\n\nconst CARD_ELEMENT_OPTIONS = {\n hidePostalCode: true,\n style: {\n base: {\n 'color': '#ffffff',\n 'background-color': '#272b36',\n // 'color': '#32325d',\n 'fontFamily': '\"Helvetica Neue\", Helvetica, sans-serif',\n 'fontSmoothing': 'antialiased',\n 'fontSize': '16px',\n '::placeholder': {\n color: '#aab7c4',\n },\n },\n invalid: {\n color: '#fa755a',\n iconColor: '#fa755a',\n },\n },\n};\n\nexport default function CardInput() {\n return (\n \n );\n}","import React from 'react';\nimport { Button, Checkbox } from 'antd';\nimport { useForm } from \"react-hook-form\";\nimport { useEffect } from 'react';\nimport './UpdateCard.css';\nimport Close from '../../icons/v2/Close.svg';\nimport Success from '../../icons/v2/Success.svg';\nimport Failure from '../../icons/v2/Failure.svg';\nimport { getPlatformBackend } from '../../utils/platform';\nimport Stripe from '../../icons/v2/Stripe.svg';\nimport axios from 'axios';\nimport CardInput from './CardInput';\nimport { useStripe, useElements, CardElement } from '@stripe/react-stripe-js';\nimport { LogoLoaderComponent } from '..';\n\nexport function UpdateCardComponent(\n props\n) {\n\n const stripe = useStripe();\n const elements = useElements();\n\n const [loading, setLoading] = React.useState(false);\n const [isShowResult, setisShowResult] = React.useState(false);\n const [isSuccuess, setisSuccuess] = React.useState(false);\n const [resultTitle, setResultTitle] = React.useState('');\n const [resultDescription, setResultDescription] = React.useState('Error');\n const [acceptedTerms, setAcceptedTerms] = React.useState(false);\n const [cardName, setCardName] = React.useState('');\n\n const handleSubmitSub = async (event) => {\n if (!stripe || !elements) {\n // Stripe.js has not yet loaded.\n // Make sure to disable form submission until Stripe.js has loaded.\n return;\n }\n\n if (cardName === '') {\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(\"Please enter your name on card\");\n setisSuccuess(false);\n setisShowResult(true);\n return;\n }\n\n if (!acceptedTerms) {\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(\"Please accept the terms and conditions\");\n setisSuccuess(false);\n setisShowResult(true);\n return;\n }\n\n //console.log(elements.getElement(CardElement));\n\n const result = await stripe.createPaymentMethod({\n type: 'card',\n card: elements.getElement(CardElement),\n billing_details: {\n name: cardName,\n }\n });\n\n console.log(result);\n\n setLoading(true);\n setisShowResult(false);\n setisSuccuess(false);\n\n if (result.error) {\n console.log(result.error.message);\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(result.error.message);\n setisShowResult(true);\n setisSuccuess(false);\n \n } else {\n let res; \n\n try {\n res = await axios.post(getPlatformBackend() + '/api/stripe/updatePaymentInfo', { \"customerId\": props.customerId, \"payment_method\": result.paymentMethod.id, \"acceptedTerms\": acceptedTerms });\n\n console.log(\"Ressssi\", res);\n } catch (err) {\n console.log(err);\n res = err.response;\n // Display the error message to the user\n //setErrorMessage('An error occurred while creating the subscription');\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n if (res) {\n setResultDescription(res.data.err[0].msg);\n }\n setisShowResult(true);\n setisSuccuess(false);\n return;\n }\n\n // window.location.reload(false);\n setLoading(false);\n setResultTitle(\"Updating your payment info was successful\");\n setResultDescription(\"All new payments will be issued to this credit card\");\n setisShowResult(true);\n setisSuccuess(true);\n setTimeout(() => {\n props.updateCustomerCard(props.customerId);\n }, 50);\n }\n };\n\n const backToHome = () => {\n props.closeCardPopup();\n }\n\n const tryAgain = () => {\n setisShowResult(false);\n }\n\n const onChangeCheckbox = (e) => {\n setAcceptedTerms(e.target.checked);\n }\n\n const handleCardName = (e) => {\n setCardName(e.target.value);\n }\n\n return (\n
    \n {\n isShowResult ?\n
    \n {\n isSuccuess ? (\n
    \n
    \n \"successIcon\"\n
    \n
    \n {resultTitle}\n
    \n
    \n {resultDescription}\n
    \n
    \n \n Back To Home\n \n
    \n
    \n ) : (\n
    \n
    \n \"failIcon\"\n
    \n
    \n {resultTitle}\n
    \n
    \n {resultDescription}\n
    \n
    \n \n Try Again\n \n
    \n
    \n )}\n
    :\n loading ? (\n \n ) :\n
    \n \"closeIcon\"\n
    \n Update Credit Card\n
    \n
    \n 50€\n
    / Month
    \n
    \n
    \n
    \n
    \n
    \n Card Info*\n
    \n \n
    \n
    \n
    \n Name on Card*\n
    \n \n
    \n {/* */}\n
    \n I confirm that I have read and understand the Terms and Conditions and the Cancellation Policy, and I agree to be bound by them.\n
    \n \n
    \n \"stripIcon\"\n
    \n
    \n
    \n
    \n }\n
    \n );\n}","export default __webpack_public_path__ + \"static/media/logo.41b2b9a6.svg\";","export default __webpack_public_path__ + \"static/media/chart.447c6d6e.svg\";","export default __webpack_public_path__ + \"static/media/Manage.4759e38e.svg\";","export default __webpack_public_path__ + \"static/media/chartGrey.b551b797.svg\";","export default __webpack_public_path__ + \"static/media/setting.c92a1f79.svg\";","export default __webpack_public_path__ + \"static/media/notification.90611dbc.svg\";","export default __webpack_public_path__ + \"static/media/MobileCross.5a906a34.svg\";","export default __webpack_public_path__ + \"static/media/MobileMenu.74e8de7a.svg\";","import React from 'react';\nimport './Headers.css';\nimport {\n Button,\n Divider,\n Badge,\n Avatar\n} from 'antd';\nimport {\n InfoCircleFilled\n} from '@ant-design/icons';\nimport Logo from '../../icons/logo.svg';\nimport Chart from '../../icons/chart.svg';\nimport ChartGrey from '../../icons/chartGrey.svg';\nimport Setting from '../../icons/setting.svg';\nimport Notification from '../../icons/notification.svg';\nimport Info from '../../icons/v2/Info.svg';\nimport Manage from '../../icons/v2/Manage.svg';\nimport MobileCross from '../../icons/v2/MobileCross.svg';\nimport MobileMenu from '../../icons/v2/MobileMenu.svg';\nimport { UpdateAddressComponent, UpdateCardComponent } from '..';\nimport { getPlatformFrontend, getPlatformBackend } from '../../utils/platform';\n\nexport function HeadersComponent({\n info,\n selectedTitle,\n handleSelectTitle,\n isShowMobileMenu,\n setIsShowMobileMenu,\n setIsShowCalendar\n}) {\n\n const selectHeaders = (str) => {\n console.log('selectHeaders', str);\n handleSelectTitle(str);\n setIsShowMobileMenu(false);\n }\n\n const handleAlertMsg = () => {\n console.log('handleAlertMsg');\n }\n\n const handleInfoMsg = () => {\n console.log('handleInfoMsg');\n }\n\n const handleMobileMenu = () => {\n console.log('handleMobileMenu');\n if (isShowMobileMenu) {\n setIsShowMobileMenu(false);\n } else {\n setIsShowMobileMenu(true);\n setIsShowCalendar(false);\n }\n }\n\n const handleLogOut = async () => {\n console.log('handleLogOut');\n\n const response = await fetch(getPlatformBackend() + '/api/discord/logout', {\n method: 'DELETE',\n });\n\n if (response.ok) {\n document.cookie = \"connect.sid=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;\";\n window.location.href = '/';\n } else {\n console.log('Failed to log out');\n }\n }\n\n const hanldeBtnClick = (str) => {\n window.location.href = str;\n }\n\n const [isShowNotification, setIsShowNotification] = React.useState(false);\n const [isShowBadge, setIsShowBadge] = React.useState(true);\n const [isShowInfo, setIsShowInfo] = React.useState(false);\n const [isShowLogoutDropdown, setIsShowLogoutDropdown] = React.useState(false);\n\n const handleLogoutDropdown = () => {\n console.log('handleLogoutDropdown');\n if (isShowLogoutDropdown) {\n setIsShowLogoutDropdown(false);\n } else {\n setIsShowLogoutDropdown(true);\n }\n }\n\n return (\n
    \n
    \n
    hanldeBtnClick(getPlatformFrontend())}>\n \"logoIcon\"\n
    \n \n
    \n selectHeaders('manageLicense')}\n icon={\"Manage}\n >\n Manage License\n \n
    \n
    \n selectHeaders('statistics')}\n icon={\"Statistics\"}\n >\n Statistics\n \n
    \n
    \n handleLogoutDropdown()}\n />\n {\n isShowLogoutDropdown ?\n
    \n
    {info.discord_tag}
    \n
    handleLogOut()}>Log Out
    \n
    : ''\n }\n
    \n
    \n
    \n
    \n \"logoIcon\"\n
    \n \n
    \n
    handleMobileMenu()}>\n \n
    \n
    \n
    \n {\n isShowMobileMenu ?\n
    \n
    \n selectHeaders('manageLicense')}\n icon={\"Manage}\n >\n Manage License\n \n
    \n
    \n selectHeaders('statistics')}\n icon={\"Statistics\"}\n >\n Statistics\n \n
    \n \n
    \n
    \n \n
    \n
    \n
    {info.discord_tag}
    \n
    handleLogOut()}>Log Out
    \n
    \n
    \n
    : ''\n }\n
    \n )\n}","import React from 'react';\nimport './PaymentCard.css';\nimport * as CommonApplicationHelper from '../../helpers/CommonApplicationHelper';\n\nexport function PaymentCardComponent({\n paymentInfo\n}) {\n console.log('paymentInfo', paymentInfo);\n const date = new Date(paymentInfo.created * 1000);\n const dateUpdated = CommonApplicationHelper.dateGenerator(date);\n let currencyUnit = '';\n if (paymentInfo.currency === 'eur') {\n currencyUnit = '€';\n } else if (paymentInfo.currency === 'usd') {\n currencyUnit = '$';\n } else if (paymentInfo.currency === 'pound') {\n currencyUnit = '£';\n }\n console.log('paymentInfo date', date);\n return (\n
    \n
    \n
    \n
    {`${dateUpdated.month} Subscription`}
    \n
    {`${(paymentInfo.total/100).toLocaleString('de-DE', { style: 'currency', currency: 'EUR' })}`}
    \n
    \n
    \n
    {`${dateUpdated.date} ${dateUpdated.monthLite} ${dateUpdated.year}`}
    \n
    \n \n \n
    \n
    \n
    \n
    \n )\n}","import React, { useEffect } from 'react';\nimport './Payment.css';\nimport {\n PaymentCardComponent\n} from '../PaymentCard';\nimport { Button } from 'antd';\nimport { postGetSubscriptionPayment } from '../../utils/api';\n\nexport function PaymentComponent({\n subPayment,\n customerId,\n}) {\n console.log(\"SUBPAYMENT\", subPayment);\n const [data, setData] = React.useState([]);\n\n const postSubscriptionPaymentData = async (customer_id) => {\n let res = await postGetSubscriptionPayment(customer_id);\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"postSubscriptionPaymentData\", res);\n return res.data;\n } else {\n return [];\n }\n }\n\n useEffect(() => {\n const fetchData = async () => {\n const result = await postSubscriptionPaymentData(customerId);\n setData(result.data);\n }\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n }, [])\n\n const test = [\n {\n date: \"15 Aug 2021\",\n item: \"Auguest\",\n price: \"$999.99\"\n },\n {\n date: \"15 July 2021\",\n item: \"July\",\n price: \"$999.99\"\n },\n {\n date: \"15 June 2021\",\n item: \"June\",\n price: \"$999.99\"\n },\n ]\n return (\n
    \n

    Payment

    \n
    \n {\n data && data.map((ele, index) => {\n return (\n \n );\n })\n }\n
    \n
    \n )\n}","export default __webpack_public_path__ + \"static/media/cardPlacerholder.dae9d14b.svg\";","export default __webpack_public_path__ + \"static/media/cardPlaceholderNew.93307308.svg\";","export default __webpack_public_path__ + \"static/media/visa@1,5x.bfa671cc.svg\";","export default __webpack_public_path__ + \"static/media/mastercard@1,5x.a7c3b3c2.svg\";","export default __webpack_public_path__ + \"static/media/amex@1,5x.d61710b4.svg\";","import React, { useEffect } from 'react';\nimport './CardDetails.css';\nimport { Button } from 'antd';\nimport cardPlacerholder from '../../icons/cc/cardPlacerholder.svg';\nimport cardPlaceholderNew from '../../icons/cc/cardPlaceholderNew.svg';\nimport visa from '../../icons/cc/visa@1,5x.svg';\nimport master from '../../icons/cc/mastercard@1,5x.svg';\nimport amex from '../../icons/cc/amex@1,5x.svg';\nimport { UpdateAddressComponent, UpdateCardComponent } from '..';\nimport { postGetCustomerDetails } from '../../utils/api';\n\nexport function CardDetailsComponent({\n address,\n cardDetail,\n customerId,\n licenseType,\n handleReload\n}) {\n const [showPopup, setShowPopup] = React.useState(false);\n const [showCardPopup, setShowCardPopup] = React.useState(false);\n const [customerDetailsData, setCustomerDetailsData] = React.useState({\n \"address\": {\n \"city\": \"\",\n \"country\": \"\",\n \"line1\": \"\",\n \"line2\": \"\",\n \"postal_code\": \"\",\n \"state\": \"\"\n },\n \"email\": \"\",\n \"name\": \"\",\n \"brand\": \"\",\n \"exp_month\": \"\",\n \"exp_year\": \"\",\n \"last4\": \"****\"\n });\n const [isLifetime, setIsLifetime] = React.useState(false);\n const [isRental, setIsRental] = React.useState(false);\n const [loading, setLoading] = React.useState(true);\n\n const postCustomerDetailsData = async (customer_id) => {\n let res = await postGetCustomerDetails(customer_id);\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"postGetCustomerDetails\", res);\n return res.data;\n } else {\n return {\n \"address\": {\n \"city\": \"\",\n \"country\": \"\",\n \"line1\": \"\",\n \"line2\": \"\",\n \"postal_code\": \"\",\n \"state\": \"\"\n },\n \"email\": \"\",\n \"name\": \"\",\n \"brand\": \"\",\n \"exp_month\": \"\",\n \"exp_year\": \"\",\n \"last4\": \"****\"\n };\n }\n }\n\n useEffect(() => {\n const fetchData = async () => {\n const result = await postCustomerDetailsData(customerId);\n setCustomerDetailsData(result);\n if (licenseType.toLowerCase() === \"lifetime\") {\n setIsLifetime(true);\n }\n if (licenseType.toLowerCase() === \"monthly\" || licenseType.toLowerCase() === \"weekly\" || licenseType.toLowerCase() === \"daily\") {\n setIsRental(true);\n }\n setLoading(false);\n }\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n }, []);\n\n const updateCustomerAddress = async (customerId) => {\n setLoading(true);\n console.log('updateCustomerAddress');\n let updateCustomerInfo = await postCustomerDetailsData(customerId);\n setCustomerDetailsData(updateCustomerInfo);\n setLoading(false);\n }\n\n const updateCustomerCard = async (customerId) => {\n console.log(\"IN HERRREE\");\n setTimeout(() => {\n handleReload();\n }, 1000);\n /*\n setLoading(true);\n console.log('updateCustomerCard');\n const result = await postCustomerDetailsData(customerId);\n setCustomerDetailsData(result);\n setLoading(false);\n */\n }\n\n console.log(\"customerDetailsData\", customerDetailsData);\n\n const togglePopup = () => {\n if (!showPopup) {\n setShowPopup(true);\n } else {\n setShowPopup(false);\n }\n }\n\n const toggleCardPopup = () => {\n if (!showCardPopup) {\n setShowCardPopup(true);\n } else {\n setShowCardPopup(false);\n }\n }\n\n return (\n
    \n

    Billing info

    \n
    \n \"Card\"\n
    {`****${customerDetailsData.last4}`}
    \n {\n customerDetailsData.brand === 'visa' ? \"Visa\" :\n customerDetailsData.brand === 'mastercard' ? \"Master\" :\n customerDetailsData.brand === 'amex' ? \"Amex\" : \"\"\n }\n
    \n

    Details

    \n
    \n
    \n

    Expiration

    \n

    {`${customerDetailsData.exp_month}/${customerDetailsData.exp_year}`}

    \n
    \n
    \n

    Currency

    \n

    \n
    \n
    \n

    Card Type

    \n

    {customerDetailsData.brand}

    \n
    \n
    \n

    Billing Address

    \n

    \n {`${customerDetailsData.address.line1},${customerDetailsData.address.line2},${customerDetailsData.address.city},${customerDetailsData.address.state},${customerDetailsData.address.postal_code},${customerDetailsData.address.country}`}\n

    \n
    \n \n Update Billing Address\n \n \n Update Card\n \n
    \n {showPopup ?\n \n : null\n }\n {showCardPopup ?\n \n : null\n }\n
    \n )\n}","export default __webpack_public_path__ + \"static/media/Plan.5bd9fcbf.svg\";","import React from 'react';\nimport { useEffect } from 'react';\nimport './AdminOrderHistory.css';\nimport { Input, Spin, Space, Button, Table } from 'antd';\nimport Search from '../../icons/search.svg';\nimport DetailGrey from '../../icons/v2/DetailGrey.svg';\nimport DetailBlue from '../../icons/v2/DetailBlue.svg';\nimport ArrowBack from '../../icons/v2/ArrowBack.svg';\nimport axios from 'axios';\nimport {\n getOrderStatisticsDetails\n} from '../../utils/api';\nimport {\n DropdownComponent\n} from '../Dropdown';\nimport { SearchOutlined } from '@ant-design/icons';\n\nexport function AdminOrderHistoryComponent({\n checkoutData\n}) {\n let searchInput = React.createRef();\n let orderData = {\n //All: [], Day: [], Month: [], Week: [], Year: []\n All: checkoutData[\"AllSuccess\"],\n Year: checkoutData[\"YearSuccess\"],\n Month: checkoutData[\"MonthSuccess\"],\n Week: checkoutData[\"WeekSuccess\"],\n Day: checkoutData[\"DaySuccess\"],\n }\n console.log('orderComponentH orderData', orderData);\n \n const dropdownOption = [\n \"All\",\n \"This Year\",\n \"This Month\",\n \"This Week\",\n \"Today\"\n ];\n const dropdownMapping = {\n \"All\": \"All\",\n \"This Year\": \"Year\",\n \"This Month\": \"Month\",\n \"This Week\": \"Week\",\n \"Today\": \"Day\",\n }\n const dropdownDetailMapping = {\n \"All\": \"all\",\n \"This Year\": \"year\",\n \"This Month\": \"month\",\n \"This Week\": \"week\",\n \"Today\": \"day\",\n }\n\n const [selectedRange, setselectedRange] = React.useState(dropdownOption[0]);\n const [isShowDetail, setisShowDetail] = React.useState(false);\n const [selectedProduct, setselectedProduct] = React.useState({});\n const [orderDataDetails, setorderDataDetails] = React.useState([]);\n const [isLoading, setisLoading] = React.useState(false);\n const [searchText, setsearchText] = React.useState('');\n const [searchedColumn, setsearchedColumn] = React.useState('');\n\n const handleSetselectedRange = (data) => {\n console.log('handleSetselectedRange', data);\n setselectedRange(data);\n }\n\n const handleOrderClick = (id, product, date, totalCheckout, moneySpent, productImage, price, sku) => {\n console.log('handleOrderClick', id);\n setselectedProduct({\n product,\n date,\n totalCheckout,\n moneySpent,\n productImage,\n price, sku\n })\n setisShowDetail(true);\n setisLoading(true);\n }\n\n const handleBackClick = () => {\n setisShowDetail(false);\n setselectedProduct({});\n }\n\n const getColumnSearchProps = dataIndex => ({\n filterDropdown: ({ setSelectedKeys, selectedKeys, confirm, clearFilters }) => (\n
    \n {\n searchInput = node;\n }}\n placeholder={`Search ${dataIndex}`}\n value={selectedKeys[0]}\n onChange={e => setSelectedKeys(e.target.value ? [e.target.value] : [])}\n onPressEnter={() => handleSearch(selectedKeys, confirm, dataIndex)}\n style={{ marginBottom: 8, display: 'block' }}\n />\n \n handleSearch(selectedKeys, confirm, dataIndex)}\n icon={}\n size=\"small\"\n style={{ width: 90 }}\n >\n Search\n \n \n {\n confirm({ closeDropdown: false });\n setsearchText(selectedKeys[0]);\n setsearchedColumn(dataIndex);\n // this.setState({\n // searchText: selectedKeys[0],\n // searchedColumn: dataIndex,\n // });\n }}\n >\n Filter\n \n \n
    \n ),\n filterIcon: filtered => ,\n onFilter: (value, record) =>\n record[dataIndex]\n ? record[dataIndex].toString().toLowerCase().includes(value.toLowerCase())\n : '',\n onFilterDropdownVisibleChange: visible => {\n if (visible) {\n setTimeout(() => searchInput.select(), 100);\n }\n },\n render: text => (\n text\n ),\n });\n\n const handleSearch = (selectedKeys, confirm, dataIndex) => {\n confirm();\n setsearchText(selectedKeys[0]);\n setsearchedColumn(dataIndex);\n // this.setState({\n // searchText: selectedKeys[0],\n // searchedColumn: dataIndex,\n // });\n };\n\n const handleReset = clearFilters => {\n clearFilters();\n setsearchText('');\n // this.setState({ searchText: '' });\n };\n\n const columns = [\n {\n title: 'PRODUCT',\n dataIndex: 'product',\n sorter: {\n compare: (a, b) => a.product.length - b.product.length,\n multiple: 5,\n },\n render: (text, record) => {\n console.log('tableColumn product', text, record);\n return (\n
    \n \"chartIcon\"\n
    {record.product}
    \n
    \n );\n },\n },\n {\n title: 'SIZE',\n dataIndex: 'size',\n sorter: {\n compare: (a, b) => a.size - b.size,\n multiple: 4,\n },\n },\n {\n title: 'DATE',\n dataIndex: 'date',\n sorter: {\n compare: (a, b) => a.date - b.date,\n multiple: 3,\n },\n },\n {\n title: 'STATUS',\n dataIndex: 'status',\n sorter: {\n compare: (a, b) => a.status - b.status,\n multiple: 2,\n },\n },\n {\n title: 'PRICE',\n dataIndex: 'price',\n sorter: {\n compare: (a, b) => a.price - b.price,\n multiple: 1,\n },\n },\n // {\n // title: '',\n // dataIndex: '',\n // key: 'x',\n // render: (text, record) => {\n // console.log('tableColumn x', text, record);\n // return (\n // handleOrderClick(\n // record.productId,\n // record.product,\n // record.releaseDate,\n // record.totalCheckout,\n // record.moneySpent,\n // record.productImage,\n // record.price,\n // record.sku)\n // }\n // />\n // //
    {record.key}
    \n // );\n // },\n // },\n ];\n\n const data = [];\n // for (let i = 0; i < 26; i ++) {\n // data.push({\n // key: i,\n // product: `Nike Kobe Vi Protro - Men Shoes ${Math.floor(Math.random() * 100)}`,\n // releaseDate: '10/04/2019',\n // totalCheckout: Math.floor(Math.random() * 100),\n // moneySpent: Math.floor(Math.random() * 10000)\n // });\n // }\n console.log(orderData[dropdownMapping[selectedRange]]);\n if (orderData[dropdownMapping[selectedRange]].length > 0) {\n orderData[dropdownMapping[selectedRange]].forEach((ele, index) => {\n const date = new Date(ele.creation).toLocaleString();\n data.push({\n key: index,\n product: ele.product_name,\n productId: ele.product_id,\n productImage: ele.product_image,\n //date: `${date.getMonth() + 1}/${date.getDate()}/${date.getFullYear()}`,\n date : date,\n totalCheckout: ele.count,\n moneySpent: (Number(ele.count) * Number(ele.price)).toFixed(2),\n price: ele.price,\n size: ele.size,\n sku: ele.retailer_sku,\n });\n })\n }\n console.log('orderHistory 911 data', data, selectedRange);\n\n const columnsDetails = [\n {\n title: 'PRODUCT',\n dataIndex: 'product',\n sorter: {\n compare: (a, b) => a.product.length - b.product.length,\n multiple: 4,\n },\n },\n {\n title: 'SIZE',\n dataIndex: 'size',\n sorter: {\n compare: (a, b) => a.size - b.size,\n multiple: 3,\n },\n },\n {\n title: 'DATE',\n dataIndex: 'releaseDate',\n sorter: {\n compare: (a, b) => a.releaseDate - b.releaseDate,\n multiple: 2,\n },\n },\n {\n title: 'PRICE',\n dataIndex: 'price',\n sorter: {\n compare: (a, b) => a.price - b.price,\n multiple: 1,\n },\n },\n {\n title: '',\n dataIndex: '',\n key: 'x',\n render: (text, record) => {\n console.log('tableColumn x', text, record);\n return (\n \n //
    {record.key}
    \n );\n },\n },\n ];\n const dataDetails = [];\n // for (let i = 0; i < 26; i ++) {\n // dataDetails.push({\n // key: i,\n // product: `Nike Kobe Vi Protro - Men Shoes ${Math.floor(Math.random() * 100)}`,\n // size: 'EU 10',\n // date: '10/04/2019',\n // price: Math.floor(Math.random() * 100)\n // });\n // }\n if (orderDataDetails.length > 0) {\n orderDataDetails.forEach((ele, index) => {\n const date = new Date(ele.creation);\n dataDetails.push({\n key: index,\n product: ele.product_name,\n size: ele.size,\n productImage: ele.product_image,\n releaseDate: `${date.getMonth() + 1}/${date.getDate()}/${date.getFullYear()}`,\n price: ele.price,\n sku: ele.retailer_sku,\n });\n })\n }\n\n console.log('orderHistoryData', dataDetails);\n\n const onChange = (pagination, filters, sorter, extra) => {\n console.log('params', pagination, filters, sorter, extra);\n }\n\n return (\n
    \n {\n isShowDetail ?\n
    \n
    \n \"chartIcon\"\n Back\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    {selectedProduct.product}
    \n
    {selectedProduct.sku}
    \n
    {selectedProduct.price}
    \n
    {`Release Date: ${selectedProduct.date}`}
    \n
    \n
    \n
    \n
    \n
    \n Total Checkout\n
    \n
    \n {`${selectedProduct.totalCheckout} Items`}\n
    \n
    \n
    \n
    \n Money Spent\n
    \n
    \n {`$${selectedProduct.moneySpent}`}\n
    \n
    \n
    \n
    \n
    \n {\n isLoading ?\n
    \n \n
    :\n
    \n }\n \n :\n
    \n
    \n
    Order History
    \n
    \n {/*
    \n } \n />\n \n
    */}\n \n
    \n
    \n
    \n
    \n \n \n }\n {/* {checkouts.map((checkout) => (\n
  • {checkout.product_name}, {checkout.price}, {checkout.size}, {checkout.store}, {checkout.order_number}
  • \n ))} */}\n \n )\n}","import React from 'react';\nimport { Button } from 'antd';\nimport './AdminPayments.css';\n\nexport function AdminPaymentsComponent({\n\n}) {\n return (\n
    \n
    \n
    Payments
    \n
    \n
    \n )\n}","import React from 'react';\nimport { Button } from 'antd';\nimport './AdminStores.css';\n\nexport function AdminStoresComponent({\n\n}) {\n return (\n
    \n
    \n
    Stores
    \n
    \n
    \n )\n}","import React from 'react';\nimport { Button } from 'antd';\nimport './AdminLogs.css';\n\nexport function AdminLogsComponent({\n\n}) {\n return (\n
    \n
    \n
    Logs
    \n
    \n
    \n )\n}","import React from 'react';\nimport './GlobalHeaders.css';\nimport Logo from '../../icons/logo.svg';\nimport {\n Button,\n} from 'antd';\nimport { getPlatformBackend, getPlatformFrontend } from '../../utils/platform';\n\nexport function GlobalHeadersComponent({\n\n}) {\n\n const hanldeBtnClick = (str) => {\n window.location.href = str;\n }\n\n return (\n
    \n
    hanldeBtnClick(getPlatformFrontend())}>\n \"logoIcon\"\n
    QBot
    \n
    \n {/* */}\n
    \n
    \n hanldeBtnClick(getPlatformFrontend() + '/marketplace')}\n >\n Marketplace\n \n
    \n
    \n hanldeBtnClick(getPlatformBackend() + '/api/discord/check')}\n >\n Dashboard\n \n
    \n
    \n
    \n )\n}","import React from 'react';\nimport './GlobalFooters.css';\nimport Logo from '../../icons/logo.svg';\n\nexport function GlobalFootersComponent({\n\n}) {\n\n return (\n \n )\n}","import React from 'react';\nimport { useEffect } from 'react';\nimport './LicenseList.css';\nimport { Input, Spin, Space, Button, Table } from 'antd';\nimport Search from '../../icons/search.svg';\nimport DetailGrey from '../../icons/v2/DetailGrey.svg';\nimport DetailBlue from '../../icons/v2/DetailBlue.svg';\nimport ArrowBack from '../../icons/v2/ArrowBack.svg';\nimport { SearchOutlined } from '@ant-design/icons';\n\nexport function LicenseListComponent({\n licenseList,\n closeClients\n}) {\n\n const columns = [\n {\n title: '',\n dataIndex: 'avatar',\n render: (value) => {\n return (\n
    \n \n
    \n )\n }\n },\n {\n title: 'LICENSE',\n dataIndex: 'license',\n },\n {\n title: 'TYPE',\n dataIndex: 'type',\n },\n {\n title: 'TINFO',\n dataIndex: 'taskinfo',\n },/*\n {\n title: 'EMAIL',\n dataIndex: 'email',\n },*/\n {\n title: 'DISCORD',\n dataIndex: 'discord',\n },\n {\n title: 'RUNNING',\n dataIndex: 'running',\n render: (value) => {\n return (\n
    \n {value === \"true\" ?\n
    {value}
    \n :
    {value}
    }\n
    \n )\n }\n },\n {\n title: 'TIMESTAMP',\n dataIndex: 'lastlogout',\n },\n {\n title: '',\n dataIndex: '',\n key: 'x',\n render: (text, record) => {\n return (\n
    \n \n \n \n
    \n\n );\n },\n },\n /*\n {\n title: '',\n dataIndex: '',\n key: 'x',\n render: (text, record) => {\n console.log('tableColumn x', text, record);\n return (\n \n );\n },\n },\n {\n title: '',\n dataIndex: '',\n key: 'x',\n render: (text, record) => {\n console.log('tableColumn x', text, record);\n return (\n \n );\n },\n },\n {\n title: '',\n dataIndex: '',\n key: 'x',\n render: (text, record) => {\n console.log('tableColumn x', text, record);\n return (\n \n );\n },\n },\n */\n ];\n\n const data = [];\n licenseList.forEach((ele, index) => {\n\n let running = \"true\";\n if (ele.ws_id === null) {\n running = \"false\";\n }\n let taskinfo = \"{}\";\n if (ele.task_info !== null) {\n taskinfo = ele.task_info;\n }\n\n let lastlogout;\n if (ele.ping_time !== null) {\n let intt = parseInt(ele.ping_time);\n let date = new Date(intt);\n lastlogout = date.toLocaleString();\n }\n\n let expiry;\n if (ele.license_expiry !== null) {\n expiry = new Date(ele.license_expiry).toLocaleString();\n }\n \n let avatar;\n if (ele.avatar === null) {\n avatar = \"https://cdn.discordapp.com/embed/avatars/1.png\";\n } else {\n avatar = \"https://cdn.discordapp.com/avatars/\" + ele.discord_id + \"/\" + ele.avatar + \".png\";\n }\n \n data.push({\n key: index,\n avatar: avatar,\n license: ele.license_key,\n type: ele.license_type,\n taskinfo: taskinfo,\n //email: ele.email,\n discord: ele.discord_id,\n running: running,\n lastlogout: lastlogout\n });\n });\n /*\n for (let i = 0; i < 26; i++) {\n data.push({\n key: i,\n license: `1111-1111-1111-1111`,\n type: 'Renewal',\n expiry: \"10/04/2019\",\n email: \"blabal@gmail.com\",\n discord: \"333372675860987910\",\n running: \"true\",\n lastlogout: \"10/04/2019 132131\",\n });\n }\n */\n\n const handleClose = (record) => {\n closeClients(record.license);\n }\n\n const onChange = (pagination, filters, sorter, extra) => {\n console.log('params', pagination, filters, sorter, extra);\n }\n\n return (\n
    \n
    \n
    \n Licenses\n
    \n
    \n }\n />\n
    \n
    \n
    \n
    \n \n \n )\n}","import React from 'react';\nimport { useEffect } from 'react';\nimport './CreateLicense.css';\nimport { useForm } from 'react-hook-form';\nimport Close from '../../icons/v2/Close.svg';\nimport Success from '../../icons/v2/Success.svg';\nimport Failure from '../../icons/v2/Failure.svg';\n\nexport function CreateLicenseComponent( {\n closePopup\n} ) {\n\n const [loading, setLoading] = React.useState(true);\n const { register, handleSubmit, reset } = useForm();\n \n \n const onSubmit = async (data) => {\n console.log(\"on SUbmit\");\n \n };\n\n const backToHome = () => {\n closePopup();\n }\n\n return (\n
    \n
    \n \"closeIcon\"\n
    \n Create license\n
    \n
    \n
    \n
    \n Email*\n
    \n \n
    \n
    \n
    \n Type*\n
    \n \n
    \n
    \n
    \n Bla*\n
    \n \n
    \n \n \n
    \n
    \n )\n}","import React from 'react';\nimport { useEffect } from 'react';\nimport './LicenseHistoryList.css';\nimport { Input, Spin, Space, Button, Table } from 'antd';\nimport Search from '../../icons/search.svg';\nimport DetailGrey from '../../icons/v2/DetailGrey.svg';\nimport DetailBlue from '../../icons/v2/DetailBlue.svg';\nimport ArrowBack from '../../icons/v2/ArrowBack.svg';\nimport { SearchOutlined } from '@ant-design/icons';\n\nexport function LicenseHistoryListComponent({\n licenseHistoryList\n}) {\n\n const columns = [\n {\n title: 'LICENSE',\n dataIndex: 'license_key',\n },\n {\n title: 'USERID',\n dataIndex: 'user_id',\n },\n {\n title: 'STRIPECUSTOMERID',\n dataIndex: 'stripe_customer_id',\n },\n {\n title: 'OWNEDFROM',\n dataIndex: 'owned_from',\n },\n {\n title: 'OWNEDTILL',\n dataIndex: 'owned_till',\n },\n ];\n\n const data = [];\n licenseHistoryList.forEach((ele, index) => {\n\n let ownedFrom;\n if (ele.owned_from !== null) {\n ownedFrom = new Date(ele.owned_from).toLocaleString();\n }\n\n let ownedTill;\n if (ele.owned_till !== null) {\n ownedTill = new Date(ele.owned_till).toLocaleString();\n }\n\n\n data.push({\n key: index,\n license_key: ele.license_key,\n user_id: ele.user_id,\n stripe_customer_id: ele.stripe_customer_id,\n owned_from: ownedFrom,\n owned_till: ownedTill,\n });\n });\n /*\n for (let i = 0; i < 26; i++) {\n data.push({\n key: i,\n license: `1111-1111-1111-1111`,\n type: 'Renewal',\n expiry: \"10/04/2019\",\n email: \"blabal@gmail.com\",\n discord: \"333372675860987910\",\n running: \"true\",\n lastlogout: \"10/04/2019 132131\",\n });\n }\n */\n\n const onChange = (pagination, filters, sorter, extra) => {\n console.log('params', pagination, filters, sorter, extra);\n }\n\n return (\n
    \n
    \n
    \n License History\n
    \n
    \n }\n />\n
    \n
    \n
    \n
    \n \n \n )\n}","import React, { useEffect } from 'react';\nimport { Button } from 'antd';\nimport './AdminLicenseHistory.css';\nimport { LicenseHistoryListComponent } from '../LicenseHistoryList';\nimport { getAllLicensesHistory } from '../../utils/api';\n\nexport function AdminLicenseHistoryComponent({\n}) {\n\n const [ data, setData ] = React.useState([]);\n\n const getLicenseHistoryData = async () => {\n let res = await getAllLicensesHistory();\n if (res !== null && res !== undefined && res.status === 200) {\n console.log(\"getLicenseHistory\", res);\n return res.data;\n } else {\n return [];\n }\n }\n\n useEffect(() => {\n\n const fetchData = async () => {\n const result = await getLicenseHistoryData();\n console.log(\"licenseHistory\", result);\n setData(result);\n }\n\n\n fetchData().catch(error => {\n console.log(\"error\", error);\n });\n }, []);\n\n\n return (\n
    \n
    \n
    License History
    \n
    \n
    \n \n
    \n
    \n )\n}","export default __webpack_public_path__ + \"static/media/animationLogo.1e2fc97c.svg\";","import React from 'react';\nimport { Button } from 'antd';\nimport { useForm, Controller } from \"react-hook-form\";\nimport { useEffect } from 'react';\nimport './CreateAddress.css';\nimport { postCreateCustomer } from '../../utils/api';\nimport Close from '../../icons/v2/Close.svg';\nimport Success from '../../icons/v2/Success.svg';\nimport Failure from '../../icons/v2/Failure.svg';\nimport AnimationLogo from '../../icons/animationLogo.svg';\nimport { Select } from 'antd';\nimport { LogoLoaderComponent } from '..';\n\nexport function CreateAddressComponent(\n props,\n) {\n\n //const [customerId, setCustomerId] = React.useState('');\n const [loading, setLoading] = React.useState(false);\n const [address, setAddress] = React.useState({});\n const [isShowResult, setisShowResult] = React.useState(false);\n const [isSuccuess, setisSuccuess] = React.useState(false);\n const [nameEmail, setNameEmail] = React.useState({});\n const [resultTitle, setResultTitle] = React.useState('');\n const [resultDescription, setResultDescription] = React.useState('Error');\n const { register, handleSubmit, reset, control, setValue } = useForm();\n\n const onSubmit = async (data) => {\n console.log('createCustomerAddress', data);\n setLoading(true);\n setisShowResult(false);\n setisSuccuess(false);\n console.log(\"LOADING\", loading)\n\n let res = await postCreateCustomer(data);\n console.log(\"RESSSS\", res);\n if (res !== null && res !== undefined && res.status === 200) {\n setLoading(false);\n setTimeout(() => {\n props.updateCustomerId(res.data.id);\n }, 50);\n } else {\n setLoading(false);\n\n console.log(\"createCustomerAddress failed\", res);\n setResultTitle(\"Oops, Something's Wrong\");\n if (res.data.err) {\n setResultDescription(res.data.err[0].msg);\n }\n\n setisShowResult(true);\n setisSuccuess(false);\n }\n };\n\n const backToHome = () => {\n props.closePopup();\n }\n\n const tryAgain = () => {\n setisShowResult(false);\n }\n\n useEffect(() => {\n /*\n async function getData() {\n try {\n reset();\n setLoading(false);\n } catch (err) {\n console.log(\"Update address error\", err);\n //history.push(\"/\");\n setLoading(false);\n }\n }\n getData();\n */\n }, [])\n\n const countries = [\n {\n value: 'AF',\n label: 'Afghanistan'\n },\n {\n value: 'AX',\n label: 'Åland Islands'\n },\n {\n value: 'AL',\n label: 'Albania'\n },\n {\n value: 'DZ',\n label: 'Algeria'\n },\n {\n value: 'AD',\n label: 'Andorra'\n },\n {\n value: 'AO',\n label: 'Angola'\n },\n {\n value: 'AI',\n label: 'Anguilla'\n },\n {\n value: 'AG',\n label: 'Antigua & Barbuda'\n },\n {\n value: 'AR',\n label: 'Argentina'\n },\n {\n value: 'AM',\n label: 'Armenia'\n },\n {\n value: 'AW',\n label: 'Aruba'\n },\n {\n value: 'AU',\n label: 'Australia'\n },\n {\n value: 'AT',\n label: 'Austria'\n },\n {\n value: 'AZ',\n label: 'Azerbaijan'\n },\n {\n value: 'BS',\n label: 'Bahamas'\n },\n {\n value: 'BH',\n label: 'Bahrain'\n },\n {\n value: 'BD',\n label: 'Bangladesh'\n },\n {\n value: 'BB',\n label: 'Barbados'\n },\n {\n value: 'BY',\n label: 'Belarus'\n },\n {\n value: 'BE',\n label: 'Belgium'\n },\n {\n value: 'BZ',\n label: 'Belize'\n },\n {\n value: 'BJ',\n label: 'Benin'\n },\n {\n value: 'BM',\n label: 'Bermuda'\n },\n {\n value: 'BT',\n label: 'Bhutan'\n },\n {\n value: 'BO',\n label: 'Bolivia'\n },\n {\n value: 'BA',\n label: 'Bosnia & Herzegovina'\n },\n {\n value: 'BW',\n label: 'Botswana'\n },\n {\n value: 'BV',\n label: 'Bouvet Island'\n },\n {\n value: 'BR',\n label: 'Brazil'\n },\n {\n value: 'IO',\n label: 'British Indian Ocean Territory'\n },\n {\n value: 'VG',\n label: 'British Virgin Islands'\n },\n {\n value: 'BN',\n label: 'Brunei'\n },\n {\n value: 'BG',\n label: 'Bulgaria'\n },\n {\n value: 'BF',\n label: 'Burkina Faso'\n },\n {\n value: 'BI',\n label: 'Burundi'\n },\n {\n value: 'KH',\n label: 'Cambodia'\n },\n {\n value: 'CM',\n label: 'Cameroon'\n },\n {\n value: 'CA',\n label: 'Canada'\n },\n {\n value: 'CV',\n label: 'Cape Verde'\n },\n {\n value: 'BQ',\n label: 'Caribbean Netherlands'\n },\n {\n value: 'KY',\n label: 'Cayman Islands'\n },\n {\n value: 'CF',\n label: 'Central African Republic'\n },\n {\n value: 'TD',\n label: 'Chad'\n },\n {\n value: 'CL',\n label: 'Chile'\n },\n {\n value: 'CN',\n label: 'China'\n },\n {\n value: 'CX',\n label: 'Christmas Island'\n },\n {\n value: 'CC',\n label: 'Cocos (Keeling) Islands'\n },\n {\n value: 'CO',\n label: 'Colombia'\n },\n {\n value: 'KM',\n label: 'Comoros'\n },\n {\n value: 'CG',\n label: 'Congo - Brazzaville'\n },\n {\n value: 'CD',\n label: 'Congo - Kinshasa'\n },\n {\n value: 'CK',\n label: 'Cook Islands'\n },\n {\n value: 'CR',\n label: 'Costa Rica'\n },\n {\n value: 'HR',\n label: 'Croatia'\n },\n {\n value: 'CU',\n label: 'Cuba'\n },\n {\n value: 'CW',\n label: 'Curaçao'\n },\n {\n value: 'CY',\n label: 'Cyprus'\n },\n {\n value: 'CZ',\n label: 'Czech Republic'\n },\n {\n value: 'CI',\n label: 'Côte d’Ivoire'\n },\n {\n value: 'DK',\n label: 'Denmark'\n },\n {\n value: 'DJ',\n label: 'Djibouti'\n },\n {\n value: 'DM',\n label: 'Dominica'\n },\n {\n value: 'DO',\n label: 'Dominican Republic'\n },\n {\n value: 'EC',\n label: 'Ecuador'\n },\n {\n value: 'EG',\n label: 'Egypt'\n },\n {\n value: 'SV',\n label: 'El Salvador'\n },\n {\n value: 'GQ',\n label: 'Equatorial Guinea'\n },\n {\n value: 'ER',\n label: 'Eritrea'\n },\n {\n value: 'EE',\n label: 'Estonia'\n },\n {\n value: 'ET',\n label: 'Ethiopia'\n },\n {\n value: 'FK',\n label: 'Falkland Islands'\n },\n {\n value: 'FO',\n label: 'Faroe Islands'\n },\n {\n value: 'FJ',\n label: 'Fiji'\n },\n {\n value: 'FI',\n label: 'Finland'\n },\n {\n value: 'FR',\n label: 'France'\n },\n {\n value: 'GF',\n label: 'French Guiana'\n },\n {\n value: 'PF',\n label: 'French Polynesia'\n },\n {\n value: 'TF',\n label: 'French Southern Territories'\n },\n {\n value: 'GA',\n label: 'Gabon'\n },\n {\n value: 'GM',\n label: 'Gambia'\n },\n {\n value: 'GE',\n label: 'Georgia'\n },\n {\n value: 'DE',\n label: 'Germany'\n },\n {\n value: 'GH',\n label: 'Ghana'\n },\n {\n value: 'GI',\n label: 'Gibraltar'\n },\n {\n value: 'GR',\n label: 'Greece'\n },\n {\n value: 'GL',\n label: 'Greenland'\n },\n {\n value: 'GD',\n label: 'Grenada'\n },\n {\n value: 'GP',\n label: 'Guadeloupe'\n },\n {\n value: 'GT',\n label: 'Guatemala'\n },\n {\n value: 'GG',\n label: 'Guernsey'\n },\n {\n value: 'GN',\n label: 'Guinea'\n },\n {\n value: 'GW',\n label: 'Guinea-Bissau'\n },\n {\n value: 'GY',\n label: 'Guyana'\n },\n {\n value: 'HT',\n label: 'Haiti'\n },\n {\n value: 'HM',\n label: 'Heard & McDonald Islands'\n },\n {\n value: 'HN',\n label: 'Honduras'\n },\n {\n value: 'HK',\n label: 'Hong Kong SAR China'\n },\n {\n value: 'HU',\n label: 'Hungary'\n },\n {\n value: 'IS',\n label: 'Iceland'\n },\n {\n value: 'IN',\n label: 'India'\n },\n {\n value: 'ID',\n label: 'Indonesia'\n },\n {\n value: 'IR',\n label: 'Iran'\n },\n {\n value: 'IQ',\n label: 'Iraq'\n },\n {\n value: 'IE',\n label: 'Ireland'\n },\n {\n value: 'IM',\n label: 'Isle of Man'\n },\n {\n value: 'IL',\n label: 'Israel'\n },\n {\n value: 'IT',\n label: 'Italy'\n },\n {\n value: 'JM',\n label: 'Jamaica'\n },\n {\n value: 'JP',\n label: 'Japan'\n },\n {\n value: 'JE',\n label: 'Jersey'\n },\n {\n value: 'JO',\n label: 'Jordan'\n },\n {\n value: 'KZ',\n label: 'Kazakhstan'\n },\n {\n value: 'KE',\n label: 'Kenya'\n },\n {\n value: 'KI',\n label: 'Kiribati'\n },\n {\n value: 'XK',\n label: 'Kosovo'\n },\n {\n value: 'KW',\n label: 'Kuwait'\n },\n {\n value: 'KG',\n label: 'Kyrgyzstan'\n },\n {\n value: 'LA',\n label: 'Laos'\n },\n {\n value: 'LV',\n label: 'Latvia'\n },\n {\n value: 'LB',\n label: 'Lebanon'\n },\n {\n value: 'LS',\n label: 'Lesotho'\n },\n {\n value: 'LR',\n label: 'Liberia'\n },\n {\n value: 'LY',\n label: 'Libya'\n },\n {\n value: 'LI',\n label: 'Liechtenstein'\n },\n {\n value: 'LT',\n label: 'Lithuania'\n },\n {\n value: 'LU',\n label: 'Luxembourg'\n },\n {\n value: 'MO',\n label: 'Macau SAR China'\n },\n {\n value: 'MK',\n label: 'Macedonia'\n },\n {\n value: 'MG',\n label: 'Madagascar'\n },\n {\n value: 'MW',\n label: 'Malawi'\n },\n {\n value: 'MY',\n label: 'Malaysia'\n },\n {\n value: 'MV',\n label: 'Maldives'\n },\n {\n value: 'ML',\n label: 'Mali'\n },\n {\n value: 'MT',\n label: 'Malta'\n },\n {\n value: 'MQ',\n label: 'Martinique'\n },\n {\n value: 'MR',\n label: 'Mauritania'\n },\n {\n value: 'MU',\n label: 'Mauritius'\n },\n {\n value: 'YT',\n label: 'Mayotte'\n },\n {\n value: 'MX',\n label: 'Mexico'\n },\n {\n value: 'MD',\n label: 'Moldova'\n },\n {\n value: 'MC',\n label: 'Monaco'\n },\n {\n value: 'MN',\n label: 'Mongolia'\n },\n {\n value: 'ME',\n label: 'Montenegro'\n },\n {\n value: 'MS',\n label: 'Montserrat'\n },\n {\n value: 'MA',\n label: 'Morocco'\n },\n {\n value: 'MZ',\n label: 'Mozambique'\n },\n {\n value: 'MM',\n label: 'Myanmar (Burma)'\n },\n {\n value: 'NA',\n label: 'Namibia'\n },\n {\n value: 'NR',\n label: 'Nauru'\n },\n {\n value: 'NP',\n label: 'Nepal'\n },\n {\n value: 'NL',\n label: 'Netherlands'\n },\n {\n value: 'AN',\n label: 'Netherlands Antilles'\n },\n {\n value: 'NC',\n label: 'New Caledonia'\n },\n {\n value: 'NZ',\n label: 'New Zealand'\n },\n {\n value: 'NI',\n label: 'Nicaragua'\n },\n {\n value: 'NE',\n label: 'Niger'\n },\n {\n value: 'NG',\n label: 'Nigeria'\n },\n {\n value: 'NU',\n label: 'Niue'\n },\n {\n value: 'NF',\n label: 'Norfolk Island'\n },\n {\n value: 'KP',\n label: 'North Korea'\n },\n {\n value: 'NO',\n label: 'Norway'\n },\n {\n value: 'OM',\n label: 'Oman'\n },\n {\n value: 'PK',\n label: 'Pakistan'\n },\n {\n value: 'PS',\n label: 'Palestinian Territories'\n },\n {\n value: 'PA',\n label: 'Panama'\n },\n {\n value: 'PG',\n label: 'Papua New Guinea'\n },\n {\n value: 'PY',\n label: 'Paraguay'\n },\n {\n value: 'PE',\n label: 'Peru'\n },\n {\n value: 'PH',\n label: 'Philippines'\n },\n {\n value: 'PN',\n label: 'Pitcairn Islands'\n },\n {\n value: 'PL',\n label: 'Poland'\n },\n {\n value: 'PT',\n label: 'Portugal'\n },\n {\n value: 'QA',\n label: 'Qatar'\n },\n {\n value: 'RE',\n label: 'Réunion'\n },\n {\n value: 'RO',\n label: 'Romania'\n },\n {\n value: 'RU',\n label: 'Russia'\n },\n {\n value: 'RW',\n label: 'Rwanda'\n },\n {\n value: 'WS',\n label: 'Samoa'\n },\n {\n value: 'SM',\n label: 'San Marino'\n },\n {\n value: 'ST',\n label: 'São Tomé & Príncipe'\n },\n {\n value: 'SA',\n label: 'Saudi Arabia'\n },\n {\n value: 'SN',\n label: 'Senegal'\n },\n {\n value: 'RS',\n label: 'Serbia'\n },\n {\n value: 'SC',\n label: 'Seychelles'\n },\n {\n value: 'SL',\n label: 'Sierra Leone'\n },\n {\n value: 'SG',\n label: 'Singapore'\n },\n {\n value: 'SX',\n label: 'Sint Marteen'\n },\n {\n value: 'SK',\n label: 'Slovakia'\n },\n {\n value: 'SI',\n label: 'Slovenia'\n },\n {\n value: 'SB',\n label: 'Solomon Islands'\n },\n {\n value: 'SO',\n label: 'Somalia'\n },\n {\n value: 'ZA',\n label: 'South Africa'\n },\n {\n value: 'GS',\n label: 'South Georgia & South Sandwich Islands'\n },\n {\n value: 'KR',\n label: 'South Korea'\n },\n {\n value: 'SS',\n label: 'South Sudan'\n },\n {\n value: 'ES',\n label: 'Spain'\n },\n {\n value: 'LK',\n label: 'Sri Lanka'\n },\n {\n value: 'BL',\n label: 'St. Barthélemy'\n },\n {\n value: 'SH',\n label: 'St. Helena'\n },\n {\n value: 'KN',\n label: 'St. Kitts & Nevis'\n },\n {\n value: 'LC',\n label: 'St. Lucia'\n },\n {\n value: 'MF',\n label: 'St. Martin'\n },\n {\n value: 'PM',\n label: 'St. Pierre & Miquelon'\n },\n {\n value: 'VC',\n label: 'St. Vincent & Grenadines'\n },\n {\n value: 'SD',\n label: 'Sudan'\n },\n {\n value: 'SR',\n label: 'Suriname'\n },\n {\n value: 'SJ',\n label: 'Svalbard & Jan Mayen'\n },\n {\n value: 'SZ',\n label: 'Swaziland'\n },\n {\n value: 'SE',\n label: 'Sweden'\n },\n {\n value: 'CH',\n label: 'Switzerland'\n },\n {\n value: 'SY',\n label: 'Syria'\n },\n {\n value: 'TW',\n label: 'Taiwan'\n },\n {\n value: 'TJ',\n label: 'Tajikistan'\n },\n {\n value: 'TZ',\n label: 'Tanzania'\n },\n {\n value: 'TH',\n label: 'Thailand'\n },\n {\n value: 'TL',\n label: 'Timor-Leste'\n },\n {\n value: 'TG',\n label: 'Togo'\n },\n {\n value: 'TK',\n label: 'Tokelau'\n },\n {\n value: 'TO',\n label: 'Tonga'\n },\n {\n value: 'TT',\n label: 'Trinidad & Tobago'\n },\n {\n value: 'TN',\n label: 'Tunisia'\n },\n {\n value: 'TR',\n label: 'Turkey'\n },\n {\n value: 'TM',\n label: 'Turkmenistan'\n },\n {\n value: 'TC',\n label: 'Turks & Caicos Islands'\n },\n {\n value: 'TV',\n label: 'Tuvalu'\n },\n {\n value: 'UM',\n label: 'U.S. Outlying Islands'\n },\n {\n value: 'UG',\n label: 'Uganda'\n },\n {\n value: 'UA',\n label: 'Ukraine'\n },\n {\n value: 'AE',\n label: 'United Arab Emirates'\n },\n {\n value: 'GB',\n label: 'United Kingdom'\n },\n {\n value: 'US',\n label: 'United States'\n },\n {\n value: 'UY',\n label: 'Uruguay'\n },\n {\n value: 'UZ',\n label: 'Uzbekistan'\n },\n {\n value: 'VU',\n label: 'Vanuatu'\n },\n {\n value: 'VA',\n label: 'Vatican City'\n },\n {\n value: 'VE',\n label: 'Venezuela'\n },\n {\n value: 'VN',\n label: 'Vietnam'\n },\n {\n value: 'WF',\n label: 'Wallis & Futuna'\n },\n {\n value: 'EH',\n label: 'Western Sahara'\n },\n {\n value: 'YE',\n label: 'Yemen'\n },\n {\n value: 'ZM',\n label: 'Zambia'\n },\n { value: 'ZW', label: 'Zimbabwe' }\n ];\n\n return (\n
    \n {isShowResult ? (\n
    \n {isSuccuess ? (\n
    \n
    \n \"successIcon\"\n
    \n
    \n {resultTitle}\n
    \n
    \n {resultDescription}\n
    \n
    \n \n Back To Home\n \n
    \n
    \n ) : (\n
    \n
    \n \"failIcon\"\n
    \n
    \n {resultTitle}\n
    \n
    \n {resultDescription}\n
    \n
    \n \n Try Again\n \n
    \n
    \n )}\n
    \n ) : loading ? (\n \n ) : (\n
    \n {/* */}\n \"closeIcon\"\n
    \n Billing Address\n
    \n
    \n
    \n
    \n Name*\n
    \n \n
    \n
    \n
    \n Email*\n
    \n \n
    \n
    \n
    \n Address Line 1*\n
    \n \n
    \n
    \n
    \n Address Line 2\n
    \n \n
    \n
    \n
    \n
    \n Postal Code*\n
    \n \n
    \n
    \n
    \n City*\n
    \n \n
    \n
    \n
    \n
    \n
    \n State\n
    \n \n
    \n
    \n
    \n Country*\n
    \n (\n (option?.label ?? '').toLowerCase().includes(input.toLowerCase())}\n showSearch\n name=\"country\"\n onChange={e => {\n // console.log(e);\n setValue(\"country\", e);\n }}\n placeholder=\"Select a country\"\n options={countries}\n className=\"customSelect\"\n >\n \n )}\n />\n
    \n
    \n \n \n
    \n )}\n
    \n );\n}","import React from 'react';\nimport {CardElement} from '@stripe/react-stripe-js';\n\nconst CARD_ELEMENT_OPTIONS = {\n hidePostalCode: true,\n style: {\n base: {\n 'color': '#ffffff',\n 'background-color': '#272b36',\n // 'color': '#32325d',\n 'fontFamily': '\"Helvetica Neue\", Helvetica, sans-serif',\n 'fontSmoothing': 'antialiased',\n 'fontSize': '16px',\n '::placeholder': {\n color: '#aab7c4',\n },\n },\n invalid: {\n color: '#fa755a',\n iconColor: '#fa755a',\n },\n },\n};\n\nexport default function CardInput() {\n return (\n \n );\n}","import React from 'react';\nimport CardInput from './CardInput';\nimport { useStripe, useElements, CardElement } from '@stripe/react-stripe-js';\nimport { Button, Checkbox } from 'antd';\nimport { useForm } from \"react-hook-form\";\nimport { useEffect } from 'react';\nimport './CreatePayment.css';\nimport Close from '../../icons/v2/Close.svg';\nimport Success from '../../icons/v2/Success.svg';\nimport Failure from '../../icons/v2/Failure.svg';\nimport axios from 'axios';\nimport Stripe from '../../icons/v2/Stripe.svg';\nimport { getPlatformBackend, getPlatformFrontend } from '../../utils/platform';\nimport { postUpdateCustomerInfo } from '../../utils/api';\nimport { LogoLoaderComponent } from '..';\n\nexport function CreatePaymentComponent(\n props\n) {\n\n const [loading, setLoading] = React.useState(false);\n const [isShowResult, setisShowResult] = React.useState(false);\n const [isSuccuess, setisSuccuess] = React.useState(false);\n const [resultTitle, setResultTitle] = React.useState('');\n const [resultDescription, setResultDescription] = React.useState('Error');\n const [acceptedTerms, setAcceptedTerms] = React.useState(false);\n const [cardName, setCardName] = React.useState('');\n\n const stripe = useStripe();\n const elements = useElements();\n\n const handleSubmitSub = async (event) => {\n if (!stripe || !elements) {\n // Stripe.js has not yet loaded.\n // Make sure to disable form submission until Stripe.js has loaded.\n return;\n }\n\n if (cardName === '') {\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(\"Please enter your name on card\");\n setisSuccuess(false);\n setisShowResult(true);\n return;\n }\n\n if (!acceptedTerms) {\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(\"Please accept the terms and conditions\");\n setisSuccuess(false);\n setisShowResult(true);\n return;\n }\n\n const result = await stripe.createPaymentMethod({\n type: 'card',\n card: elements.getElement(CardElement),\n billing_details: {\n name: cardName\n }\n });\n\n console.log(\"Result\", result);\n\n setLoading(true);\n setisShowResult(false);\n setisSuccuess(false);\n\n\n if (result.error) {\n console.log(result.error.message);\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(result.error.message);\n setisShowResult(true);\n setisSuccuess(false);\n\n } else {\n //add when marketplace\n /*\n if (type === \"renewal\") {\n res = await axios.post(getPlatformBackend() + '/api/stripe/createSubscriptionRenew', { \"customerId\": customerId, \"payment_method\": result.paymentMethod.id });\n } else if (type === \"subscription\") {\n res = await axios.post(getPlatformBackend() + '/api/stripe/createSubscription', { \"customerId\": customerId, \"payment_method\": result.paymentMethod.id });\n }\n */\n\n let res;\n\n try {\n res = await axios.post(getPlatformBackend() + '/api/stripe/createSubscription', { \"customerId\": props.customerId, \"payment_method\": result.paymentMethod.id, \"acceptedTerms\": acceptedTerms });\n } catch (err) {\n console.log(err);\n res = err.response;\n // Display the error message to the user\n //setErrorMessage('An error occurred while creating the subscription');\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n if (res) {\n setResultDescription(res.data.err[0].msg);\n }\n setisShowResult(true);\n setisSuccuess(false);\n return;\n }\n const { clientSecret, status } = res.data;\n\n console.log(\"RURURUR\", res);\n\n if (status === 'requires_action') {\n stripe.confirmCardPayment(clientSecret).then(function (result) {\n if (result.error) {\n console.log('There was an issue!');\n console.log(result.error);\n // Display error message in your UI.\n // The card was declined (i.e. insufficient funds, card has expired, etc)\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(result.error.message);\n setisShowResult(true);\n setisSuccuess(false);\n //redirect to reset customer\n window.location.href = getPlatformFrontend() + \"/dashboard/subscribe\";\n } else {\n console.log('You got the money!');\n // Show a success message to your customer\n setLoading(false);\n setResultTitle(\"Your Payment was Successful! Redirecting...\");\n setResultDescription(\"Welcome to QBot 2.0\");\n setisShowResult(true);\n setisSuccuess(true);\n //close and redirect to dash\n window.location.href = getPlatformFrontend() + \"/dashboard\";\n }\n });\n } else if (status === 'requires_payment_method') {\n console.log('There was an issue!');\n\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(\"Your payment method couldnt be used.\");\n setisShowResult(true);\n setisSuccuess(false);\n //redirect to reset customer\n //window.location.href = getPlatformFrontend() + \"/dashboard/subscribe\";\n } else if (status === 'succeeded') {\n console.log('You got the money!');\n setLoading(false);\n setResultTitle(\"Your Payment was Successful! Redirecting...\");\n setResultDescription(\"Welcome to QBot 2.0\");\n setisShowResult(true);\n setisSuccuess(true);\n //close and redirect to dash\n\n window.location.href = getPlatformFrontend() + \"/dashboard\";\n\n } else {\n console.log('There was an issue!');\n //how to handle requires_confirmation\n console.log(\"STATUSSSS\", status);\n setLoading(false);\n setResultTitle(\"Oops, Something's Wrong\");\n setResultDescription(\"Your payment method couldnt be used.\");\n setisShowResult(true);\n setisSuccuess(false);\n //redirect to reset customer\n //window.location.href = getPlatformFrontend() + \"/dashboard/subscribe\";\n }\n\n }\n }\n\n const backToHome = () => {\n props.closeCardPopup();\n }\n\n const tryAgain = () => {\n setisShowResult(false);\n }\n\n const onChangeCheckbox = (e) => {\n setAcceptedTerms(e.target.checked);\n }\n\n const handleCardName = (e) => {\n setCardName(e.target.value);\n }\n\n let title = \"subscription\";\n let description = \"200€ Upgrade fee + 50€\"\n let description2 = \"/ Month\"\n let description3 = \"(Total 250€ to start subscription, including taxes)\"\n if (props.userType.toLowerCase() === \"lifetime\") {\n title = \"payment\"\n description = \"200€ Upgrade fee\"\n description2 = \"\"\n description3 = \"(Total 200€, including taxes)\"\n }\n\n return (\n
    \n {\n isShowResult ? (\n
    \n {\n isSuccuess ? (\n
    \n
    \n \"successIcon\"\n
    \n
    \n {resultTitle}\n
    \n
    \n {resultDescription}\n
    \n
    \n \n Back To Home\n \n
    \n
    \n ) : (\n
    \n
    \n \"failIcon\"\n
    \n
    \n {resultTitle}\n
    \n
    \n {resultDescription}\n
    \n
    \n \n Try Again\n \n
    \n
    \n )}\n
    \n ) : loading ? (\n \n ) : (\n
    \n \"closeIcon\"\n
    \n Finalise {title}\n
    \n
    \n {description}\n
    {description2}
    \n
    \n
    \n {description3}\n
    \n
    \n
    \n
    \n
    \n Card Info*\n
    \n \n
    \n
    \n
    \n Name on Card*\n
    \n \n
    \n {/* */}\n
    \n I confirm that I have read and understand the Terms and Conditions and the Cancellation Policy, and I agree to be bound by them.\n
    \n \n
    \n \"stripIcon\"\n
    \n
    \n
    \n
    \n )}\n
    \n );\n}","import React from 'react';\nimport './LogoLoader.css';\nimport AnimationLogo from '../../icons/animationLogo.svg';\n\nexport function LogoLoaderComponent(\n) {\n\n return (\n
    \n
    \n \"animationLogo\"\n
    \n
    \n
    \n
    \n
    \n
    \n );\n}","export default __webpack_public_path__ + \"static/media/CalendarWhite.5a95cd99.svg\";","import React from 'react';\nimport { useEffect } from 'react';\nimport {\n getUserDetailsUser,\n getCheckouts,\n getReleases,\n getCheckoutsYear,\n getUserInfo,\n getStripeCustomer,\n getLicense,\n postGetCardDetails,\n postGetCustomerInfo,\n postGetUpcomingSubscription,\n postGetSubscriptionPayment,\n getOrderStatistics\n} from '../../utils/api';\nimport {\n InfoComponent,\n OrderHistoryComponent,\n OrderStatisticsComponent,\n ReleaseCalenderComponent,\n HeadersComponent,\n PaymentComponent,\n CardDetailsComponent,\n LogoLoaderComponent\n} from '../../components';\nimport { Spin, Button } from 'antd';\nimport './DashboardPage.css';\n// import 'antd/dist/antd.css';\nimport 'antd/dist/antd.dark.css';\nimport * as CommonApplicationHelper from '../../helpers/CommonApplicationHelper';\nimport CalendarWhite from '../../icons/v2/CalendarWhite.svg';\n\nexport function DashboardPage({\n history\n}) {\n\n const [user, setUser] = React.useState({});\n const [loading, setLoading] = React.useState(true);\n //const [checkoutArray, setCheckoutArray] = React.useState([]);\n const [releaseArray, setReleaseArray] = React.useState([]);\n const [checkoutYearArray, setCheckoutYearArray] = React.useState([]);\n const [userInfo, setUserInfo] = React.useState({});\n const [cardDetail, setCardDetail] = React.useState({});\n const [customerAddress, setCustomerAddress] = React.useState({\n \"address\": {\n \"city\": \"\",\n \"country\": \"\",\n \"line1\": \"\",\n \"line2\": \"\",\n \"postal_code\": \"\",\n \"state\": \"\"\n },\n \"email\": \"\",\n \"name\": \"\"\n });\n const [customerId, setCustomerId] = React.useState(\"\");\n const [paymentMethod, setPaymentMethod] = React.useState(\"\");\n const [upcomingCharge, setUpcomingCharge] = React.useState(\"\");\n const [subPayment, setsubPayment] = React.useState(\"\");\n const [selectedTitle, setSelectedTitle] = React.useState(\"manageLicense\");\n const [orderStatistics, setorderStatistics] = React.useState({});\n const [customerNumberId, setcustomerNumberId] = React.useState(\"\");\n const [isShowMobileMenu, setIsShowMobileMenu] = React.useState(false);\n const [isShowCalendar, setIsShowCalendar] = React.useState(false);\n\n const handleSelectTitle = (str) => {\n console.log('handleSelectTitle');\n setSelectedTitle(str);\n console.log('selectedTitle', selectedTitle);\n }\n\n /*\n const updateCustomerAddress = async (customerId) => {\n console.log('updateCustomerAddress');\n let customerInfo = await postGetCustomerInfo(customerId);\n setCustomerAddress(customerInfo.data);\n }\n */\n\n const handleCalendarClick = () => {\n if (isShowCalendar) {\n setIsShowCalendar(false);\n } else {\n setIsShowCalendar(true);\n setIsShowMobileMenu(false);\n }\n }\n\n const handleReload = () => {\n window.location.reload();\n }\n\n useEffect(() => {\n async function getData() {\n try {\n let userData = await getUserDetailsUser();\n if (userData === null || userData === undefined || userData.status !== 200) {\n userData.data = {};\n }\n setUser(userData.data);\n\n let releases = await getReleases();\n setReleaseArray(releases.data);\n let userInfo = await getUserInfo(userData.data.id);\n if (userInfo === null || userInfo === undefined || userInfo.status !== 200) {\n userInfo.data = {};\n }\n setUserInfo(userInfo.data);\n let stripeCustomer = await getStripeCustomer(userData.data.id);\n if (stripeCustomer === null || stripeCustomer === undefined || stripeCustomer.status !== 200) {\n stripeCustomer.data = { \"customer_id\": \"\" };\n }\n setCustomerId(stripeCustomer.data.customer_id);\n\n setLoading(false);\n } catch (err) {\n console.log(err);\n history.push(\"/\");\n setLoading(false);\n }\n }\n getData().catch(error => {\n console.log(\"error\", error);\n });\n }, [])\n\n const dateList = CommonApplicationHelper.filterReleaseDate(releaseArray);\n\n if (!loading) {\n return (\n
    \n \n {\n selectedTitle === 'manageLicense' ?\n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n :\n <>\n
    \n }\n >\n View Calendar\n \n
    \n
    \n
    \n \n \n
    \n
    \n \n
    \n
    \n \n\n }\n {\n isShowCalendar ?\n
    \n \n
    : ''\n }\n
    \n )\n } else {\n return (\n \n )\n }\n}","export default __webpack_public_path__ + \"static/media/hero-image-atc.9e0cd0a6.png\";","export default __webpack_public_path__ + \"static/media/hero-image-checkout.42929c85.png\";","export default __webpack_public_path__ + \"static/media/hero-image-iddle.96169a5d.png\";","export default __webpack_public_path__ + \"static/media/analytics.8f7a9ecc.png\";","export default __webpack_public_path__ + \"static/media/task.3cfa0bc0.png\";","export default __webpack_public_path__ + \"static/media/Purchase.bebf270b.svg\";","import React from 'react';\nimport { Button, Collapse } from 'antd';\nimport './LandingPage.css';\nimport axios from 'axios';\nimport { useEffect } from 'react';\nimport {\n GlobalFootersComponent,\n GlobalHeadersComponent,\n} from '../../components';\nimport atc from '../../assets/hero-image-atc.png';\nimport checkout from '../../assets/hero-image-checkout.png';\nimport iddle from '../../assets/hero-image-iddle.png';\nimport anlyatics from '../../assets/analytics.png';\nimport task from '../../assets/task.png';\nimport Purchase from '../../icons/v2/Purchase.svg';\nimport Logo from '../../icons/logo.svg';\nimport WOW from 'wowjs';\nimport $ from 'jquery';\nimport { getPlatformBackend, getPlatformFrontend } from '../../utils/platform';\n\n\nconst { Panel } = Collapse;\n\nexport function LandingPage(props) {\n useEffect(() => {\n const wow = new WOW.WOW({\n live: false,\n });\n wow.init();\n\n window.addEventListener('scroll', handleScroll, true);\n });\n\n const handleScroll = () => {\n const scroll = document.getElementById('root').scrollTop;\n if (scroll > 0) {\n console.log('scroll', scroll); \n if (scroll >= 150) {\n $(\".statusIdle\").addClass(\"hideHero\");\n } else {\n $(\".statusIdle\").removeClass(\"hideHero\");\n }\n \n if (scroll >= 300) {\n $(\".statusAtc\").addClass(\"hideHero\");\n } else {\n $(\".statusAtc\").removeClass(\"hideHero\");\n }\n }\n }\n const loginDashboard = () => window.location.href = getPlatformBackend() + \"/api/discord/check\";\n const goToMarketplace = () => window.location.href = getPlatformFrontend() + \"/marketplace\";\n const hanldeBtnClick = (str) => {\n window.location.href = str;\n }\n // const [externalFile, setexternalFile] = React.useState({});\n // const getExternalFile = () => {\n // console.log('test1028 calling');\n // return axios.get('/indexNew.html').then(\n // (respone) => {\n // console.log('test1028', respone);\n // setexternalFile(respone.data)\n // }).catch((err) => {\n // console.log('test1028 error', err);\n // }) }\n\n // useEffect(() => {\n // async function getData() {\n // try {\n // getExternalFile()\n // } catch (err) {\n\n // }\n // }\n // getData();\n // }, [])\n return (\n
    \n \n {/*
    \n \n \n \n
    */}\n
    \n
    \n
    \n
    \n
    QBot 2.0
    \n
    Known for consistency for more than three years. Enabling our users to purchase sought after shoes effortlessly.
    \n {/* */}\n
    \n hanldeBtnClick(getPlatformFrontend() + '/marketplace')}\n icon={\"Manage}\n >\n Purchase Now\n \n
    \n
    \n
    \n \"\"\n \"\"\n \"\"\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    PRODUCT PREVIEW

    \n

    The New Face Of QBot

    \n

    A complety new user experience with everything rewritten and new sites.

    \n
    \n
    \n \n \n \n
    \n \n
    \n
    \n\n
    \n

    PRODUCT PREVIEW

    \n

    GUI Insights

    \n
    \n\n
    \n
    \n

    ANALYTICS DASHBOARD

    \n

    Real-time Analytic Overview

    \n

    QBot 2.0 introduces an integrated platform that allows real-time monitoring of purchased history. Products that have been successfully checked out are organised into distinct groups, enhancing the ease of tracking and order management. Here you will also find useful features such as how much has been spent that drop.

    \n
    \n
    \n \"dashboard-analytics.pn\"/\n
    \n
    \n
    \n
    \n
    \n

    TASKS

    \n

    Manage Tasks Efficiently

    \n
    \n

    QBot 2.0 now incorporates task grouping, enabling simultaneous execution across all supported sites, making it ideal for shock drops and restocks. In addition, multiple mass editing options are now available, enabling efficient and speedy modifications to your setup without the need for task restart. The process of changing servers has been further streamlined with the introduction of export features, allowing for quick and easy importation of your entire task setup in seconds!

    \n
    \n
    \n \"\"/\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n

    FAQ

    \n

    How can we help you?

    \n
    \n
    \n {/*
    \n

    \n \n

    \n
    \n
    \n

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean quam et molestie dis. Risus, sit turpis id sit semper tincidunt ultrices. Elementum sed congue tincidunt consectetur blandit. Nulla pellentesque id mattis purus nibh quis integer. Pretium in leo at lorem purus risus elementum.

    \n
    \n
    \n
    \n
    \n

    \n \n

    \n
    \n
    \n

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean quam et molestie dis. Risus, sit turpis id sit semper tincidunt ultrices. Elementum sed congue tincidunt consectetur blandit. Nulla pellentesque id mattis purus nibh quis integer. Pretium in leo at lorem purus risus elementum.

    \n
    \n
    \n
    \n
    \n

    \n \n

    \n
    \n
    \n

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean quam et molestie dis. Risus, sit turpis id sit semper tincidunt ultrices. Elementum sed congue tincidunt consectetur blandit. Nulla pellentesque id mattis purus nibh quis integer. Pretium in leo at lorem purus risus elementum.

    \n
    \n
    \n
    */}\n \n \n

    {\"No planned restocks for further news and updates follow us on Twitter.\"}

    \n
    \n \n

    {\"Yes we are open for groupbuys. If you are interested contact us via Twitter or E-Mail\"}

    \n
    \n \n

    {\"We are a mainly EU focused bot however we do support some sites which can benefit Asia and Oceanic members\"}

    \n
    \n
    \n
    \n

    Didn’t find what you looking for?
    Send us an email at help@qbotaio.com and we’ll get in touch with you

    \n
    \n
    \n
    \n
    \n
    \n \"\"/\t\t\t\t\t\n
    \n
    \n

    Excited For QBot?

    \n

    Turn on notifications on Twitter to keep updated with the latest news.

    \t\n
    \n
    \n hanldeBtnClick(getPlatformFrontend() + '/marketplace')}\n icon={\"Manage}\n >\n Purchase Now\n \n
    \n
    \n
    \n
    \n
    \n {/*
    */}\n \n
    \n )\n}","import React from 'react';\nimport { useEffect } from 'react';\nimport { getUserDetailsAdmin, getReleases, getAllLicensesUser, getAllLicensesHistory, getCheckoutsProduct } from '../../utils/api';\nimport { Button, Divider, Avatar, Spin } from 'antd';\nimport {\n AdminStatisticsComponent,\n AdminProductsComponent,\n AdminReleasesComponent,\n AdminLicensesComponent,\n AdminPaymentsComponent,\n AdminStoresComponent,\n AdminLogsComponent,\n AdminLicenseHistoryComponent,\n} from '../../components';\nimport './AdminDashboardPage.css';\nimport Logo from '../../icons/logo.svg';\nimport ArrowDown from '../../icons/arrow down.svg';\n\nexport function AdminDashboardPage({\n history\n}) {\n const [admin, setAdmin] = React.useState(null);\n const [loading, setLoading] = React.useState(true);\n const [showStatistics, setShowStatistics] = React.useState(false);\n const [showProducts, setShowProducts] = React.useState(false);\n const [showReleases, setShowReleases] = React.useState(false);\n const [showLicenses, setShowLicenses] = React.useState(false);\n const [showLicenseHistory, setShowLicenseHistory] = React.useState(false);\n const [showPayments, setShowPayments] = React.useState(false);\n const [showStores, setShowStores] = React.useState(false);\n const [showLogs, setShowLogs] = React.useState(false);\n\n //const [checkoutAllArray, setCheckoutAllArray] = React.useState([]);\n //const [checkoutAllYearArray, setCheckoutAllYearArray] = React.useState([]);\n //const [checkoutAllMonthArray, setCheckoutAllMonthArray] = React.useState([]);\n //const [checkoutAllWeekArray, setCheckoutAllWeekArray] = React.useState([]);\n //const [checkoutAllDayArray, setCheckoutAllDayArray] = React.useState([]);\n //const [releaseArray, setReleaseArray] = React.useState([]);\n //const [licenseUserArray, setLicenseUserArray] = React.useState([]);\n //const [licenseHistoryArray, setLicenseHistoryArray] = React.useState([]);\n //const [checkoutProductArray, setCheckoutProductArray] = React.useState([]);\n const [isShowDropdown, setisShowDropdown] = React.useState(false);\n\n const handleDropdownClick = () => {\n if (isShowDropdown) {\n setisShowDropdown(false);\n } else {\n setisShowDropdown(true);\n }\n }\n\n\n const onStatisticsButtonClick = () => {\n setShowStatistics(true);\n setShowProducts(false);\n setShowReleases(false);\n setShowLicenses(false);\n setShowPayments(false);\n setShowStores(false);\n setShowLogs(false);\n setShowLicenseHistory(false);\n }\n\n const onProductsButtonClick = () => {\n setShowStatistics(false);\n setShowProducts(true);\n setShowReleases(false);\n setShowLicenses(false);\n setShowPayments(false);\n setShowStores(false);\n setShowLogs(false);\n setShowLicenseHistory(false);\n }\n\n const onReleasesButtonClick = () => {\n setShowStatistics(false);\n setShowProducts(false);\n setShowReleases(true);\n setShowLicenses(false);\n setShowPayments(false);\n setShowStores(false);\n setShowLogs(false);\n setShowLicenseHistory(false);\n }\n\n const onLicensesButtonClick = () => {\n setShowStatistics(false);\n setShowProducts(false);\n setShowReleases(false);\n setShowLicenses(true);\n setShowPayments(false);\n setShowStores(false);\n setShowLogs(false);\n setShowLicenseHistory(false);\n }\n\n const onLicenseHistoryButtonClick = () => {\n setShowStatistics(false);\n setShowProducts(false);\n setShowReleases(false);\n setShowLicenses(false);\n setShowLicenseHistory(true);\n setShowPayments(false);\n setShowStores(false);\n setShowLogs(false);\n }\n\n const onPaymentsButtonClick = () => {\n setShowStatistics(false);\n setShowProducts(false);\n setShowReleases(false);\n setShowLicenses(false);\n setShowPayments(true);\n setShowStores(false);\n setShowLogs(false);\n setShowLicenseHistory(false);\n }\n\n const onStoresButtonClick = () => {\n setShowStatistics(false);\n setShowProducts(false);\n setShowReleases(false);\n setShowLicenses(false);\n setShowPayments(false);\n setShowStores(true);\n setShowLogs(false);\n setShowLicenseHistory(false);\n }\n\n const onLogsButtonClick = () => {\n setShowStatistics(false);\n setShowProducts(false);\n setShowReleases(false);\n setShowLicenses(false);\n setShowPayments(false);\n setShowStores(false);\n setShowLogs(true);\n setShowLicenseHistory(false);\n }\n\n /*\n const getUserDetails = async () => {\n let res = await getUserDetailsAdmin();\n if (res === null || res === undefined || res.status !== 200) {\n history.push('/');\n }\n setLoading(false);\n }\n\n getUserDetails().catch(error => {\n console.log(\"error getUserDetails\", error);\n });\n */\n\n useEffect(() => {\n async function getData() {\n try {\n let res = await getUserDetailsAdmin();\n setAdmin(res.data);\n if (res === null || res === undefined || res.status !== 200) {\n history.push('/');\n } else {\n setLoading(false);\n }\n\n\n } catch (err) {\n console.log(err);\n history.push(\"/\");\n setLoading(false);\n }\n }\n getData();\n setShowStatistics(true);\n }, [])\n\n\n if (!loading) {\n return (\n
    \n
    \n
    \n \"logoIcon\"\n
    \n \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n Audrey Ramsey\n
    \n \n
    \n
    \n {showStatistics ?\n :\n null\n }\n {showProducts ?\n :\n null\n }\n {showReleases ?\n :\n null\n }\n {showLicenses ?\n :\n null\n }\n {showLicenseHistory ?\n :\n null\n }\n {showPayments ?\n : null\n }\n {showStores ?\n : null\n }\n {showLogs ?\n : null\n }\n
    \n )\n\n } else {\n return (\n
    \n \n
    \n )\n }\n}","import React from 'react';\nimport { AddressFormComponent } from '../../components';\nimport './MarketplacePage.css';\nimport { PlanCardComponent } from '../../components/PlanCard';\nimport {\n GlobalFootersComponent,\n GlobalHeadersComponent,\n} from '../../components';\n\nexport function MarketplacePage(props) {\n\n return (\n
    \n \n
    \n
    COMING SOON
    \n
    \n
    \n )\n}","export default __webpack_public_path__ + \"static/media/download.ee77a021.svg\";","import React from 'react';\nimport { useEffect } from 'react';\nimport { CreateAddressComponent, LogoLoaderComponent } from '../../components';\nimport { CreatePaymentComponent } from '../../components';\nimport { getUserDetailsTransition } from '../../utils/api';\nimport { Spin, Button } from 'antd';\nimport './SubscriptionPage.css';\nimport Download from '../../icons/download.svg';\nimport AnimationLogo from '../../icons/animationLogo.svg';\nimport checkout from '../../assets/hero-image-checkout.png';\n\nexport function SubscriptionPage({\n history\n}) {\n const [loading, setLoading] = React.useState(true);\n const [showPopupAddress, setShowPopupAddress] = React.useState(false);\n const [showPopupPayment, setShowPopupPayment] = React.useState(false);\n const [customerId, setCustomerId] = React.useState('');\n const [userType, setUserType] = React.useState('');\n\n useEffect(() => {\n async function getData() {\n try {\n let data = await getUserDetailsTransition();\n setUserType(data.data.license_type);\n console.log(\"USER TYPE\", userType)\n\n setLoading(false);\n } catch (err) {\n console.log(err);\n history.push(\"/\");\n setLoading(false);\n }\n }\n getData();\n }, [])\n\n const updateCustomerId = (customerId) => {\n setCustomerId(customerId);\n console.log(customerId);\n //switch to payment popup\n setShowPopupAddress(false);\n setShowPopupPayment(true);\n }\n\n const togglePopupAddress = () => {\n if (!showPopupAddress) {\n setShowPopupAddress(true);\n } else {\n setShowPopupAddress(false);\n }\n }\n\n const togglePopupPayment = () => {\n if (!showPopupPayment) {\n setShowPopupPayment(true);\n } else {\n setShowPopupPayment(false);\n }\n }\n\n return loading ?\n
    \n \n
    : (\n
    \n
    QBot 2.0
    \n
    Fill in your address and payment info to complete your subscription. Please use an IP address located in your address country.
    \n }\n onClick={togglePopupAddress.bind(this)}\n >\n Upgrade to 2.0\n \n \"CheckoutUI\"\n {showPopupAddress ?\n \n : null\n }\n {showPopupPayment ?\n \n : null\n }\n
    \n /*\n
    \n \n
    \n */\n );\n}","import React from 'react';\nimport './ImpressumPage.css';\nimport {\n GlobalFootersComponent,\n GlobalHeadersComponent,\n} from '../../components';\n\nexport function ImpressumPage(props) {\n\n return (\n
    \n \n
    \n
    \n

    Impressum

    \n\n

    Angaben gemäß § 5 TMG

    \n

    Q Technologies GmbH
    \n Am Verschhubbahnhof 51
    \n 47809 Krefeld

    \n\n

    Handelsregister: HRB 18746
    \n Registergericht: Krefeld

    \n\n

    Vertreten durch:
    \n Jakob Sonnen
    \n Mayurathan Navaratnarajah

    \n\n

    Kontakt

    \n

    E-Mail: qtechnologiesgmbh@gmail.com

    \n\n

    Redaktionell verantwortlich

    \n

    Q Technologies GmbH

    \n\n

    EU-Streitschlichtung

    \n

    Die Europäische Kommission stellt eine Plattform zur Online-Streitbeilegung (OS) bereit: https://ec.europa.eu/consumers/odr/.
    Unsere E-Mail-Adresse finden Sie oben im Impressum.

    \n\n

    Verbraucher­streit­beilegung/Universal­schlichtungs­stelle

    \n

    Wir sind nicht bereit oder verpflichtet, an Streitbeilegungsverfahren vor einer Verbraucherschlichtungsstelle teilzunehmen.

    \n\n

    Quelle: e-recht24.de

    \n
    \n
    \n
    \n )\n}","import React from 'react';\nimport './NotFoundPage.css';\nimport {\n GlobalFootersComponent,\n GlobalHeadersComponent,\n} from '../../components';\n\nexport function NotFoundPage(props) {\n\n return (\n
    \n \n
    \n
    404 - Not Found
    \n
    \n
    \n )\n}","import React from 'react';\nimport './PrivacyPolicyPage.css';\nimport {\n GlobalFootersComponent,\n GlobalHeadersComponent,\n} from '../../components';\n\nexport function PrivacyPolicyPage(props) {\n\n return (\n
    \n \n
    \n
    \n

    Datenschutz­erklärung

    \n

    1. Datenschutz auf einen Blick

    \n

    Allgemeine Hinweise

    Die folgenden Hinweise geben einen einfachen Überblick darüber, was mit Ihren personenbezogenen Daten passiert, wenn Sie diese Website besuchen. Personenbezogene Daten sind alle Daten, mit denen Sie persönlich identifiziert werden können. Ausführliche Informationen zum Thema Datenschutz entnehmen Sie unserer unter diesem Text aufgeführten Datenschutzerklärung.

    \n

    Datenerfassung auf dieser Website

    Wer ist verantwortlich für die Datenerfassung auf dieser Website?

    Die Datenverarbeitung auf dieser Website erfolgt durch den Websitebetreiber. Dessen Kontaktdaten können Sie dem Abschnitt „Hinweis zur Verantwortlichen Stelle“ in dieser Datenschutzerklärung entnehmen.

    Wie erfassen wir Ihre Daten?

    Ihre Daten werden zum einen dadurch erhoben, dass Sie uns diese mitteilen. Hierbei kann es sich z. B. um Daten handeln, die Sie in ein Kontaktformular eingeben.

    Andere Daten werden automatisch oder nach Ihrer Einwilligung beim Besuch der Website durch unsere IT-Systeme erfasst. Das sind vor allem technische Daten (z. B. Internetbrowser, Betriebssystem oder Uhrzeit des Seitenaufrufs). Die Erfassung dieser Daten erfolgt automatisch, sobald Sie diese Website betreten.

    Wofür nutzen wir Ihre Daten?

    Ein Teil der Daten wird erhoben, um eine fehlerfreie Bereitstellung der Website zu gewährleisten. Andere Daten können zur Analyse Ihres Nutzerverhaltens verwendet werden.

    Welche Rechte haben Sie bezüglich Ihrer Daten?

    Sie haben jederzeit das Recht, unentgeltlich Auskunft über Herkunft, Empfänger und Zweck Ihrer gespeicherten personenbezogenen Daten zu erhalten. Sie haben außerdem ein Recht, die Berichtigung oder Löschung dieser Daten zu verlangen. Wenn Sie eine Einwilligung zur Datenverarbeitung erteilt haben, können Sie diese Einwilligung jederzeit für die Zukunft widerrufen. Außerdem haben Sie das Recht, unter bestimmten Umständen die Einschränkung der Verarbeitung Ihrer personenbezogenen Daten zu verlangen. Des Weiteren steht Ihnen ein Beschwerderecht bei der zuständigen Aufsichtsbehörde zu.

    Hierzu sowie zu weiteren Fragen zum Thema Datenschutz können Sie sich jederzeit an uns wenden.

    \n

    2. Hosting

    \n

    Wir hosten die Inhalte unserer Website bei folgendem Anbieter:

    \n

    Amazon Web Services (AWS)

    Anbieter ist die Amazon Web Services EMEA SARL, 38 Avenue John F. Kennedy, 1855 Luxemburg (nachfolgend AWS).

    Wenn Sie unsere Website besuchen, werden Ihre personenbezogenen Daten auf den Servern von AWS verarbeitet. Hierbei können auch personenbezogene Daten an das Mutterunternehmen von AWS in die USA übermittelt werden. Die Datenübertragung in die USA wird auf die EU-Standardvertragsklauseln gestützt. Details finden Sie hier: https://aws.amazon.com/de/blogs/security/aws-gdpr-data-processing-addendum/.

    Weitere Informationen entnehmen Sie der Datenschutzerklärung von AWS: https://aws.amazon.com/de/privacy/?nc1=f_pr.

    Die Verwendung von AWS erfolgt auf Grundlage von Art. 6 Abs. 1 lit. f DSGVO. Wir haben ein berechtigtes Interesse an einer möglichst zuverlässigen Darstellung unserer Website. Sofern eine entsprechende Einwilligung abgefragt wurde, erfolgt die Verarbeitung ausschließlich auf Grundlage von Art. 6 Abs. 1 lit. a DSGVO und § 25 Abs. 1 TTDSG, soweit die Einwilligung die Speicherung von Cookies oder den Zugriff auf Informationen im Endgerät des Nutzers (z. B. Device-Fingerprinting) im Sinne des TTDSG umfasst. Die Einwilligung ist jederzeit widerrufbar.

    \n

    3. Allgemeine Hinweise und Pflicht­informationen

    \n

    Datenschutz

    Die Betreiber dieser Seiten nehmen den Schutz Ihrer persönlichen Daten sehr ernst. Wir behandeln Ihre personenbezogenen Daten vertraulich und entsprechend den gesetzlichen Datenschutzvorschriften sowie dieser Datenschutzerklärung.

    Wenn Sie diese Website benutzen, werden verschiedene personenbezogene Daten erhoben. Personenbezogene Daten sind Daten, mit denen Sie persönlich identifiziert werden können. Die vorliegende Datenschutzerklärung erläutert, welche Daten wir erheben und wofür wir sie nutzen. Sie erläutert auch, wie und zu welchem Zweck das geschieht.

    Wir weisen darauf hin, dass die Datenübertragung im Internet (z. B. bei der Kommunikation per E-Mail) Sicherheitslücken aufweisen kann. Ein lückenloser Schutz der Daten vor dem Zugriff durch Dritte ist nicht möglich.

    \n

    Hinweis zur verantwortlichen Stelle

    Die verantwortliche Stelle für die Datenverarbeitung auf dieser Website ist:

    Q Technologies GmbH

    \n\n

    Telefon: [Telefonnummer der verantwortlichen Stelle]
    \n E-Mail: qtechnologiesgmbh@gmail.com

    \n

    Verantwortliche Stelle ist die natürliche oder juristische Person, die allein oder gemeinsam mit anderen über die Zwecke und Mittel der Verarbeitung von personenbezogenen Daten (z. B. Namen, E-Mail-Adressen o. Ä.) entscheidet.

    \n\n

    Speicherdauer

    Soweit innerhalb dieser Datenschutzerklärung keine speziellere Speicherdauer genannt wurde, verbleiben Ihre personenbezogenen Daten bei uns, bis der Zweck für die Datenverarbeitung entfällt. Wenn Sie ein berechtigtes Löschersuchen geltend machen oder eine Einwilligung zur Datenverarbeitung widerrufen, werden Ihre Daten gelöscht, sofern wir keine anderen rechtlich zulässigen Gründe für die Speicherung Ihrer personenbezogenen Daten haben (z. B. steuer- oder handelsrechtliche Aufbewahrungsfristen); im letztgenannten Fall erfolgt die Löschung nach Fortfall dieser Gründe.

    \n

    Allgemeine Hinweise zu den Rechtsgrundlagen der Datenverarbeitung auf dieser Website

    Sofern Sie in die Datenverarbeitung eingewilligt haben, verarbeiten wir Ihre personenbezogenen Daten auf Grundlage von Art. 6 Abs. 1 lit. a DSGVO bzw. Art. 9 Abs. 2 lit. a DSGVO, sofern besondere Datenkategorien nach Art. 9 Abs. 1 DSGVO verarbeitet werden. Im Falle einer ausdrücklichen Einwilligung in die Übertragung personenbezogener Daten in Drittstaaten erfolgt die Datenverarbeitung außerdem auf Grundlage von Art. 49 Abs. 1 lit. a DSGVO. Sofern Sie in die Speicherung von Cookies oder in den Zugriff auf Informationen in Ihr Endgerät (z. B. via Device-Fingerprinting) eingewilligt haben, erfolgt die Datenverarbeitung zusätzlich auf Grundlage von § 25 Abs. 1 TTDSG. Die Einwilligung ist jederzeit widerrufbar. Sind Ihre Daten zur Vertragserfüllung oder zur Durchführung vorvertraglicher Maßnahmen erforderlich, verarbeiten wir Ihre Daten auf Grundlage des Art. 6 Abs. 1 lit. b DSGVO. Des Weiteren verarbeiten wir Ihre Daten, sofern diese zur Erfüllung einer rechtlichen Verpflichtung erforderlich sind auf Grundlage von Art. 6 Abs. 1 lit. c DSGVO. Die Datenverarbeitung kann ferner auf Grundlage unseres berechtigten Interesses nach Art. 6 Abs. 1 lit. f DSGVO erfolgen. Über die jeweils im Einzelfall einschlägigen Rechtsgrundlagen wird in den folgenden Absätzen dieser Datenschutzerklärung informiert.

    \n

    Hinweis zur Datenweitergabe in die USA und sonstige Drittstaaten

    Wir verwenden unter anderem Tools von Unternehmen mit Sitz in den USA oder sonstigen datenschutzrechtlich nicht sicheren Drittstaaten. Wenn diese Tools aktiv sind, können Ihre personenbezogene Daten in diese Drittstaaten übertragen und dort verarbeitet werden. Wir weisen darauf hin, dass in diesen Ländern kein mit der EU vergleichbares Datenschutzniveau garantiert werden kann. Beispielsweise sind US-Unternehmen dazu verpflichtet, personenbezogene Daten an Sicherheitsbehörden herauszugeben, ohne dass Sie als Betroffener hiergegen gerichtlich vorgehen könnten. Es kann daher nicht ausgeschlossen werden, dass US-Behörden (z. B. Geheimdienste) Ihre auf US-Servern befindlichen Daten zu Überwachungszwecken verarbeiten, auswerten und dauerhaft speichern. Wir haben auf diese Verarbeitungstätigkeiten keinen Einfluss.

    Widerruf Ihrer Einwilligung zur Datenverarbeitung

    Viele Datenverarbeitungsvorgänge sind nur mit Ihrer ausdrücklichen Einwilligung möglich. Sie können eine bereits erteilte Einwilligung jederzeit widerrufen. Die Rechtmäßigkeit der bis zum Widerruf erfolgten Datenverarbeitung bleibt vom Widerruf unberührt.

    \n

    Widerspruchsrecht gegen die Datenerhebung in besonderen Fällen sowie gegen Direktwerbung (Art. 21 DSGVO)

    WENN DIE DATENVERARBEITUNG AUF GRUNDLAGE VON ART. 6 ABS. 1 LIT. E ODER F DSGVO ERFOLGT, HABEN SIE JEDERZEIT DAS RECHT, AUS GRÜNDEN, DIE SICH AUS IHRER BESONDEREN SITUATION ERGEBEN, GEGEN DIE VERARBEITUNG IHRER PERSONENBEZOGENEN DATEN WIDERSPRUCH EINZULEGEN; DIES GILT AUCH FÜR EIN AUF DIESE BESTIMMUNGEN GESTÜTZTES PROFILING. DIE JEWEILIGE RECHTSGRUNDLAGE, AUF DENEN EINE VERARBEITUNG BERUHT, ENTNEHMEN SIE DIESER DATENSCHUTZERKLÄRUNG. WENN SIE WIDERSPRUCH EINLEGEN, WERDEN WIR IHRE BETROFFENEN PERSONENBEZOGENEN DATEN NICHT MEHR VERARBEITEN, ES SEI DENN, WIR KÖNNEN ZWINGENDE SCHUTZWÜRDIGE GRÜNDE FÜR DIE VERARBEITUNG NACHWEISEN, DIE IHRE INTERESSEN, RECHTE UND FREIHEITEN ÜBERWIEGEN ODER DIE VERARBEITUNG DIENT DER GELTENDMACHUNG, AUSÜBUNG ODER VERTEIDIGUNG VON RECHTSANSPRÜCHEN (WIDERSPRUCH NACH ART. 21 ABS. 1 DSGVO).

    WERDEN IHRE PERSONENBEZOGENEN DATEN VERARBEITET, UM DIREKTWERBUNG ZU BETREIBEN, SO HABEN SIE DAS RECHT, JEDERZEIT WIDERSPRUCH GEGEN DIE VERARBEITUNG SIE BETREFFENDER PERSONENBEZOGENER DATEN ZUM ZWECKE DERARTIGER WERBUNG EINZULEGEN; DIES GILT AUCH FÜR DAS PROFILING, SOWEIT ES MIT SOLCHER DIREKTWERBUNG IN VERBINDUNG STEHT. WENN SIE WIDERSPRECHEN, WERDEN IHRE PERSONENBEZOGENEN DATEN ANSCHLIESSEND NICHT MEHR ZUM ZWECKE DER DIREKTWERBUNG VERWENDET (WIDERSPRUCH NACH ART. 21 ABS. 2 DSGVO).

    \n

    Beschwerde­recht bei der zuständigen Aufsichts­behörde

    Im Falle von Verstößen gegen die DSGVO steht den Betroffenen ein Beschwerderecht bei einer Aufsichtsbehörde, insbesondere in dem Mitgliedstaat ihres gewöhnlichen Aufenthalts, ihres Arbeitsplatzes oder des Orts des mutmaßlichen Verstoßes zu. Das Beschwerderecht besteht unbeschadet anderweitiger verwaltungsrechtlicher oder gerichtlicher Rechtsbehelfe.

    \n

    Recht auf Daten­übertrag­barkeit

    Sie haben das Recht, Daten, die wir auf Grundlage Ihrer Einwilligung oder in Erfüllung eines Vertrags automatisiert verarbeiten, an sich oder an einen Dritten in einem gängigen, maschinenlesbaren Format aushändigen zu lassen. Sofern Sie die direkte Übertragung der Daten an einen anderen Verantwortlichen verlangen, erfolgt dies nur, soweit es technisch machbar ist.

    \n

    Auskunft, Löschung und Berichtigung

    Sie haben im Rahmen der geltenden gesetzlichen Bestimmungen jederzeit das Recht auf unentgeltliche Auskunft über Ihre gespeicherten personenbezogenen Daten, deren Herkunft und Empfänger und den Zweck der Datenverarbeitung und ggf. ein Recht auf Berichtigung oder Löschung dieser Daten. Hierzu sowie zu weiteren Fragen zum Thema personenbezogene Daten können Sie sich jederzeit an uns wenden.

    \n

    Recht auf Einschränkung der Verarbeitung

    Sie haben das Recht, die Einschränkung der Verarbeitung Ihrer personenbezogenen Daten zu verlangen. Hierzu können Sie sich jederzeit an uns wenden. Das Recht auf Einschränkung der Verarbeitung besteht in folgenden Fällen:

    • Wenn Sie die Richtigkeit Ihrer bei uns gespeicherten personenbezogenen Daten bestreiten, benötigen wir in der Regel Zeit, um dies zu überprüfen. Für die Dauer der Prüfung haben Sie das Recht, die Einschränkung der Verarbeitung Ihrer personenbezogenen Daten zu verlangen.
    • Wenn die Verarbeitung Ihrer personenbezogenen Daten unrechtmäßig geschah/geschieht, können Sie statt der Löschung die Einschränkung der Datenverarbeitung verlangen.
    • Wenn wir Ihre personenbezogenen Daten nicht mehr benötigen, Sie sie jedoch zur Ausübung, Verteidigung oder Geltendmachung von Rechtsansprüchen benötigen, haben Sie das Recht, statt der Löschung die Einschränkung der Verarbeitung Ihrer personenbezogenen Daten zu verlangen.
    • Wenn Sie einen Widerspruch nach Art. 21 Abs. 1 DSGVO eingelegt haben, muss eine Abwägung zwischen Ihren und unseren Interessen vorgenommen werden. Solange noch nicht feststeht, wessen Interessen überwiegen, haben Sie das Recht, die Einschränkung der Verarbeitung Ihrer personenbezogenen Daten zu verlangen.

    Wenn Sie die Verarbeitung Ihrer personenbezogenen Daten eingeschränkt haben, dürfen diese Daten – von ihrer Speicherung abgesehen – nur mit Ihrer Einwilligung oder zur Geltendmachung, Ausübung oder Verteidigung von Rechtsansprüchen oder zum Schutz der Rechte einer anderen natürlichen oder juristischen Person oder aus Gründen eines wichtigen öffentlichen Interesses der Europäischen Union oder eines Mitgliedstaats verarbeitet werden.

    \n

    SSL- bzw. TLS-Verschlüsselung

    Diese Seite nutzt aus Sicherheitsgründen und zum Schutz der Übertragung vertraulicher Inhalte, wie zum Beispiel Bestellungen oder Anfragen, die Sie an uns als Seitenbetreiber senden, eine SSL- bzw. TLS-Verschlüsselung. Eine verschlüsselte Verbindung erkennen Sie daran, dass die Adresszeile des Browsers von „http://“ auf „https://“ wechselt und an dem Schloss-Symbol in Ihrer Browserzeile.

    Wenn die SSL- bzw. TLS-Verschlüsselung aktiviert ist, können die Daten, die Sie an uns übermitteln, nicht von Dritten mitgelesen werden.

    \n

    Widerspruch gegen Werbe-E-Mails

    Der Nutzung von im Rahmen der Impressumspflicht veröffentlichten Kontaktdaten zur Übersendung von nicht ausdrücklich angeforderter Werbung und Informationsmaterialien wird hiermit widersprochen. Die Betreiber der Seiten behalten sich ausdrücklich rechtliche Schritte im Falle der unverlangten Zusendung von Werbeinformationen, etwa durch Spam-E-Mails, vor.

    \n

    4. Datenerfassung auf dieser Website

    \n

    Cookies

    Unsere Internetseiten verwenden so genannte „Cookies“. Cookies sind kleine Datenpakete und richten auf Ihrem Endgerät keinen Schaden an. Sie werden entweder vorübergehend für die Dauer einer Sitzung (Session-Cookies) oder dauerhaft (permanente Cookies) auf Ihrem Endgerät gespeichert. Session-Cookies werden nach Ende Ihres Besuchs automatisch gelöscht. Permanente Cookies bleiben auf Ihrem Endgerät gespeichert, bis Sie diese selbst löschen oder eine automatische Löschung durch Ihren Webbrowser erfolgt.

    Cookies können von uns (First-Party-Cookies) oder von Drittunternehmen stammen (sog. Third-Party-Cookies). Third-Party-Cookies ermöglichen die Einbindung bestimmter Dienstleistungen von Drittunternehmen innerhalb von Webseiten (z. B. Cookies zur Abwicklung von Zahlungsdienstleistungen).

    Cookies haben verschiedene Funktionen. Zahlreiche Cookies sind technisch notwendig, da bestimmte Webseitenfunktionen ohne diese nicht funktionieren würden (z. B. die Warenkorbfunktion oder die Anzeige von Videos). Andere Cookies können zur Auswertung des Nutzerverhaltens oder zu Werbezwecken verwendet werden.

    Cookies, die zur Durchführung des elektronischen Kommunikationsvorgangs, zur Bereitstellung bestimmter, von Ihnen erwünschter Funktionen (z. B. für die Warenkorbfunktion) oder zur Optimierung der Website (z. B. Cookies zur Messung des Webpublikums) erforderlich sind (notwendige Cookies), werden auf Grundlage von Art. 6 Abs. 1 lit. f DSGVO gespeichert, sofern keine andere Rechtsgrundlage angegeben wird. Der Websitebetreiber hat ein berechtigtes Interesse an der Speicherung von notwendigen Cookies zur technisch fehlerfreien und optimierten Bereitstellung seiner Dienste. Sofern eine Einwilligung zur Speicherung von Cookies und vergleichbaren Wiedererkennungstechnologien abgefragt wurde, erfolgt die Verarbeitung ausschließlich auf Grundlage dieser Einwilligung (Art. 6 Abs. 1 lit. a DSGVO und § 25 Abs. 1 TTDSG); die Einwilligung ist jederzeit widerrufbar.

    Sie können Ihren Browser so einstellen, dass Sie über das Setzen von Cookies informiert werden und Cookies nur im Einzelfall erlauben, die Annahme von Cookies für bestimmte Fälle oder generell ausschließen sowie das automatische Löschen der Cookies beim Schließen des Browsers aktivieren. Bei der Deaktivierung von Cookies kann die Funktionalität dieser Website eingeschränkt sein.

    Welche Cookies und Dienste auf dieser Website eingesetzt werden, können Sie dieser Datenschutzerklärung entnehmen.

    \n

    Quelle: https://www.e-recht24.de

    \n
    \n
    \n
    \n )\n}","import React from 'react';\nimport './TermsPage.css';\nimport {\n GlobalFootersComponent,\n GlobalHeadersComponent,\n} from '../../components';\n\nexport function TermsPage(props) {\n\n return (\n
    \n \n
    \n
    \n

    Terms & Conditions

    \n

    1.0 Introduction

    \n

    The following General Terms and Conditions of Sale (hereinafter referred to as “TOS”) set out the terms and conditions between you, the customer, and “Q Technologies GmbH” (“us”, “we”), governing the use of our website and our downloadable digital recordings including the content therein (the “product(s)”). Your use of our website, and purchase, download and use of our products, constitutes your full acceptance of these terms and conditions. If you do not agree with these terms and conditions, you should not use our website or purchase, download or use any of our products.\n\n The version of the TOS valid at the time of the conclusion of the contract shall apply.

    \n\n

    2.0 Scope of Application

    \n

    The TOS shall apply exclusively. Deviating or additional terms and conditions of the customers, as well as the customer's own terms and conditions shall not become part of this contract, even we not expressly object to them.

    \n\n

    3.0 License and Use

    \n

    Your purchase of one of our products constitutes our granting to you of a non-exclusive, non-sublicensable, non-transferable license to download and access that product for the purpose of your own personal use and reference. You agree that under no circumstances shall you use, or permit to be used, any product other than for the aforesaid purpose. For the avoidance of doubt, you shall not copy, re-sell, sublicense, rent out, share or otherwise distribute any of our products, whether modified or not, to any third party. You agree not to use any of our products in a way which might be detrimental to us or damage our reputation. Buying a “lifetime”-license only means you get access to the product while it is still being worked on for further updates without having to pay a certain monthly/yearly renewal fee. Having a lifetime license doesn’t condole our product is being worked on forever. By purchasing a Renewal license you will be granted a 1 month access to the software and you’ll be given the opportunity to purchase another 1 months for a renewal fee. If you miss the renewal and your license expires you cede your right of renewal. Your key will be deleted. By using our software we do not condone buying shoes or other products with the intention of making profits by selling products which are acquired through our software or services. The products acquired with our software and services are meant for personal use only.

    \n\n

    4.0 Intellectual Property

    \n

    The products, whether modified or not, and all intellectual property and copyright contained therein, are and shall at all times remain our sole and exclusive property. You agree that under no circumstances, whether the product has been modified or not, shall you have or attempt to claim ownership of any intellectual property rights or copyright in the product.

    \n\n

    5.0 Refunds and Chargebacks

    \n

    The renewal fee can be changed at any time.\n You are not allowed to exercise a cancellation of the contract (refer to “Cancellation Terms” at the bottom of the website and on the checkbox below the Purchase Button).

    \n\n

    6.0 Selling of Keys

    \n

    Selling of purchased keys is prohibited. You are not allowed to sell, gift or rent the product / key to someone else.

    \n\n

    7.0 Warranties and Liability

    \n

    We make every effort to ensure that our products are accurate, authoritative and fit for the use of our customers. However, we take no responsibility whatsoever for the suitability of the product, and we provide no warranties as to the function or use of the product, whether express, implied or statutory, including without limitation any warranties of merchantability or fitness for particular purpose. You agree to indemnify us against all liabilities, claims, demands, expenses, actions, costs, damages, or loss arising out of your breach of these terms and conditions. Furthermore, we shall not be liable to you or any party for consequential, indirect, special or exemplary damages including but not limited to damages for loss of profits, business or anticipated benefits whether arising under tort, contract, negligence or otherwise whether or not foreseen, reasonably foreseeable or advised of the possibility of such damages.

    \n\n

    8.0 General

    \n

    These terms and conditions constitute the entire agreement and understanding between you and us for the supply of downloadable digital products, and shall supersede any prior agreements whether made in writing, orally, implied or otherwise. The failure by us to exercise or enforce any right(s) under these terms and conditions shall not be deemed to be a waiver of any such right(s) or operate so as to bar the exercise or enforcement thereof at any time(s) thereafter, as a waiver of another or constitute a continuing waiver. You agree that monetary damages may not be a sufficient remedy for the damage which may accrue to us by reason of your breach of these terms and conditions, therefore we shall be entitled to seek injunctive relief to enforce the obligations contained herein. The unenforceability of any single provision within these terms and conditions shall not affect any other provision hereof. These terms and conditions, your acceptance thereof, and our relationship with you shall be governed by and construed in accordance with German law and both us and you irrevocably submit to the exclusive jurisdiction of the German courts over any claim, dispute or matter arising under or in connection with these terms and conditions or our relationship with you.

    \n\n

    9.0 Final Provisions

    \n

    Severability: If a provision of this agreement is or becomes legally invalid or if there is any gap that needs to be filled, the validity of the remainder of the agreement shall not be affected thereby. Invalid provisions shall be replaced by common consent with such provisions which come as close as possible to the intended result of the invalid provision. In the event of gaps such provision shall come into force by common consent which comes as close as possible to the intended result of the agreement, should the matter have been considered in advance. Any changes of or amendments to this Agreement must be in writing to become effective.\n Force Majeure: If performance by either party is prevented, restricted or delayed due to any cause arising from or attributable to acts, events, non-happenings, omissions, accidents or acts of God beyond the reasonable control of the party due to perform, the party so affected shall be excused from performance to the extent of such prevention, restriction or delay. No party shall have any liability to any other party for delay or non-delivery in the performance of its obligations under this Agreement, when attributable to acts of God, compliance in good faith with any applicable foreign or domestic governmental regulation or order whether or not it proves to be invalid, fires, war, riots, labour disputes such as strikes or lockouts, sabotage, unusually severe weather or any other cause beyond the reasonable control of such Party.

    \n\n

    10.0 Privacy Policy and Cookie Policy

    \n

    Please refer to our Privacy Policy. You agree that they constitute part of these terms. You must read our Privacy Policy and TOS before you use the Service.\n Platform of the EU Commission regarding online dispute resolution: https://ec.europa.eu/consumers/odr

    \n
    \n
    \n
    \n )\n}","import React from 'react';\nimport './TermsCancellationPage.css';\nimport {\n GlobalFootersComponent,\n GlobalHeadersComponent,\n} from '../../components';\n\nexport function TermsCancellationPage(props) {\n\n return (\n
    \n \n
    \n
    \n

    Cancellation Policy

    \n

    You are not permitted to cancel your purchase. The right to cancel this contract and the 14-day withdrawal period expire when you expressly accept the Terms and Conditions by checking the relevant box before completing the purchase. You must check this box in order to proceed with the checkout process. You agree that we begin with the execution of the contract before the end of the withdrawal period and you confirm your knowledge that you lose the right of withdrawal by your agreement with the start of execution of the contract.

    \n
    \n
    \n
    \n )\n}","import './App.css';\nimport { Switch, Route } from 'react-router-dom';\nimport { LandingPage, MenuPage, DashboardPage, AdminDashboardPage, MarketplacePage, SubscriptionPage, ImpressumPage, NotFoundPage, PrivacyPolicyPage, TermsPage, TermsCancellationPage } from './pages';\nimport { Elements } from '@stripe/react-stripe-js';\nimport { loadStripe } from '@stripe/stripe-js';\n//test key\n//const stripePromise = loadStripe('pk_test_51MClqQADOJ6cXaEH35pMlHLbqn6pfb17uHRvko7Pvmr52nzaVvQ6Jdr48JdFTKUsLrHSHJc8zcg7dXjM0pkJnmfJ00nGF5KmqC');\n//live key\nconst stripePromise = loadStripe('pk_live_51MClqQADOJ6cXaEHqxlNY9xa2B9tFwrxgWrRjP7s0zzbvuUBYnNVo2dAn3UrstchVvLIImUlRVrI2grklxYUMRE400Q9IKmrhU');\n\nfunction App() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default App;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './App';\nimport { BrowserRouter as Router } from 'react-router-dom';\n\n// replace console.* for disable log on production\nif (process.env.NODE_ENV === 'production') {\n console.log = () => {}\n console.error = () => {}\n console.debug = () => {}\n}\n\nReactDOM.render(\n \n \n \n \n ,\n document.getElementById('root')\n);\n\n"],"sourceRoot":""}