{"version":3,"sources":["local.tsx","i18n.tsx","context/AuctionsContext.tsx","imgs/ArrowRightWhite.svg","imgs/ArrowLeftWhite.svg","api/index.tsx","components/header/Header.tsx","utils/Constants.tsx","utils/Utils.tsx","imgs/ArrowRight.svg","imgs/ArrowLeft.svg","components/auctions/auctioncard/AuctionCard.tsx","components/auctions/Auctions.tsx","components/auctions/MyAuctions.tsx","api/WebSocketClient.tsx","imgs/ArrowRightBlue.svg","components/questions/Questions.tsx","screens/details/Details.tsx","components/registerinfo/infostep/InfoStep.tsx","components/registerinfo/RegisterInfo.tsx","screens/home/Home.tsx","App.tsx","reportWebVitals.ts","components/errorboundry/index.tsx","index.tsx"],"names":["win","window","location","href","includes","document","documentElement","lang","localhostSettings","resources","en","translation","translationEN","ar","translationAR","lng","i18n","use","XHR","initReactI18next","init","fallbackLng","debug","keySeparator","interpolation","escapeValue","react","useSuspense","AuctionsContext","React","createContext","auctionHId","auctionCId","auctionMBId","event","counter","apiBaseURL","serverURL","token","reGenerateTokenUrl","errorPage","cem_key","config","api","baseURL","headers","Accept","Authorization","axios","create","simpleApi","reGenerateToken","console","log","Promise","resolve","reject","fetch","method","then","res","text","result","catch","err","defaults","validateStatus","interceptors","request","a","conf","localStorage","getItem","Date","toISOString","replace","slice","Math","ceil","random","response","status","oldRequest","error","MySelf","getTerms","get","getAuctionVanityTypes","getAuctionBidIncrements","getProfileInformation","getAuctions","filter","getAuctionDetails","auctionId","FILTER_LATEST","FILTER_ENDING","FILTER_HIGHEST_BIDS","FILTER_LOWEST_BIDS","BID_STATUS_HIGH","BID_STATUS_OUTBID","AUCTION_STATUS_ACTIVE","AUCTION_STATUS_END","PAYMENT_STATUS_PAID","PAYMENT_STATUS_NOTPAID","PAYMENT_STATUS_EXPIRED","REFUND_STATUS_REFUNDED","REFUND_STATUS_FAILED","REFUND_STATUS_INPROGRESS","getTimeRemainingInSec","dateTime","auctionEndDate","convertFromStringToDate","currentDate","utc_offset","getTimezoneOffset","setMinutes","getMinutes","difference","getTime","parseInt","String","responseDate","dateComponents","split","datePieces","timePieces","convertSecondsToDhms","seconds","d","h","m","s","Number","floor","formatNumber","num","numFormat","termsAPIUrl","auctionsUrl","termsURL","loginURL","raqiURL","dpcPaymentUrl","Header","props","getDetails","setState","loadingDetails","state","data","intervalId","setInterval","countdownTimer","heighestBid","isBidEligible","securityDeposit","securityDepositWithVat","auctionStatus","remainingPayment","remainingPaymentStatus","remainingPaymentExpiry","remainingPaymentAllowed","bidTimeRemaining","isAuctionEnded","setItem","isLoggedIn","isProfileUpdated","showPopup","continueBidProcess","getTermsContent","loadingTerms","termsId","loadingProfileInfo","profileStatus","handleLogin","message","arabicDetail","englishDetail","loadingAuctionVanityTypes","auctionVanityData","getBidIncrements","loadingBidIncrements","bidIncrementsData","minimumDeposit","value_ar","value_en","showLoginPopup","showSDPopup","showPYBPopup","popupErrorMsg","clearInterval","getSecondsInDhms","t","Constant","getCurrentBidValue","currentBidValue","getCurrentBidsCount","currentBidsCount","returnUrl","newURL","encodeURI","handleSecurityDeposit","correlationId","params","id","URLSearchParams","search","pu","popup","pt","xcoid","redirectUrl","origin","pathname","btoa","encodeURIComponent","JSON","stringify","version","journey","operation","paymentProcessor","language","extraInfo","key","value","handleInititatePaymemt","post","initiatePayment","sourceCode","refId","dpcAppUrl","isError","errorMsg","responseMessage","handleRemainingPayment","showPaymentPopup","urlParams","handlePlaceYourBid","bidAmount","selectedBidIncrementId","totalAmount","totalBidValue","modalPopupActionButton","getElementsByClassName","style","backgroundColor","pointerEvents","put","placeBid","length","updateAuctionDetails","handleCancel","onBidNowPress","preventDefault","onPayNowPress","getBidClosingDate","endDate","endTime","formatClosingDate","getBidStatus","paymentStatus","getBidStatusColor","color","getBidButtonLabel","toUpperCase","selectedBid","bidId","onPhoneBookIconPress","navigator","clipboard","writeText","createIcon","name","createElement","Icon","margin","updatemsg","scrollTo","securityDepositVat","isBidLoginEligible","edata","decode","decodeURIComponent","atob","parse","undefined","this","context","className","size","spinning","details","auctionVanity","vanity","bidIncrements","isAuctionAvailable","totalBid","title","closable","maskClosable","visible","onOk","width","footer","marginTop","marginLeft","marginRight","onClick","ArrowLeftOutlined","ArrowRightOutlined","onCancel","fontWeight","marginBottom","map","bid","index","shape","type","e","display","WarningOutlined","ArrowDownOutlined","bidStatus","justifyContent","textAlign","src","ArrowLeft","alt","ArrowRight","WhatsappShareButton","separator","url","TwitterShareButton","FacebookShareButton","quote","hashtag","EmailShareButton","subject","body","Component","contextType","withTranslation","AuctionCard","onViewDetailsPress","p","getLooserRefundStatus","getLooserRefundStatusColor","getBidDetailsLabel","getBidValue","startPrice","updateAuctionCard","loading","sdRefundStatus","vanityNumber","bodyStyle","padding","bordered","Auctions","getAuctionsWithFilter","loadingAuctions","code","isAuctionsAvailable","sortFilter","auctionsTitle","isDetails","indexOf","auctions","detailAuctionId","auction","xs","md","xl","MyAuctions","getMyAuctions","updatedMyAuction","myAuctions","myauctions","client","Questions","useTranslation","termsAndConditions_URL","target","rel","ArrowRightBlue","DetailsScreen","InfoStep","stepNumber","stepTitle","stepSubTitle","RegisterInfo","span","HomeScreen","WebSocketClient","connectToWebSocket","Stomp","connect","connect_callback","error_callback","str","subscribe","message_recieved_callback","onMesageRecieved","onConnectionFailed","socketName","isWinner","App","msg","Provider","Details","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","ErrorBoundary","hasError","info","children","docDir","ReactDOM","render","direction","getElementById"],"mappings":"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","file":"static/js/main.f0a3d04e.chunk.js","sourcesContent":["class localhostSettings {}\r\n\r\nconst win: any = window;\r\nif (window.location.href.includes(\"localhost\")) {\r\n win[\"lang\"] = \"en\";\r\n // win[\"lang\"] = \"ar\";\r\n // document.documentElement.dir = \"rtl\";\r\n\r\n win[\"isLoggedIn\"] = \"true\";\r\n document.documentElement.lang = win[\"lang\"];\r\n win[\"base_portal_url\"] = \"http://ssta004:8080\";\r\n win[\"base_api_url\"] = \"https://apisit.mobily.com.sa\";\r\n win[\"base_test_api_url\"] = \"https://mobily-cem.apps.esale-sit.prod.mobily.lan/cem\";\r\n win[\"base_socket_test_api_url\"] = \"ws://mobily-cem.apps.esale-sit.prod.mobily.lan/cem\";\r\n win[\"detailsURL\"] = \"details\";\r\n win[\"CEM_KEY\"] = \"liCENcCCGpHUsEPHNhySYGXCnmhwzZ\";\r\n\r\n if (!win[\"clientToken\"]) {\r\n win[\"clientToken\"] = \"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJsSkVOWWk2M1FRSDJ5X0gzOWptU1RrNGFadm5FcmNkQ0FsYWE2SGlFbHRjIn0.eyJleHAiOjE3MzI0NTYzNzksImlhdCI6MTcwNjUzNjM3OSwianRpIjoiZDJhZDBlODYtNjA1Ny00Y2IwLWJhODEtMWFiNjIwZmRmNDE1IiwiaXNzIjoiaHR0cHM6Ly9pZHAuY2VtLXNpdC5wcm9kLm1vYmlseS5sYW4vYXV0aC9yZWFsbXMvbW9iaWx5IiwiYXVkIjpbIm1vYmlseS1jbGkiLCJhY2NvdW50Il0sInN1YiI6Ijg4Y2ZhMTcxLWRhMmQtNDZlMS04MmZjLTYyNGYyNWE1YWQ4NCIsInR5cCI6IkJlYXJlciIsImF6cCI6ImxpQ0VOY0NDR3BIVXNFUEhOaHlTWUdYQ25taHd6WiIsInNlc3Npb25fc3RhdGUiOiIwMGZjMWY3Yi02NWRhLTRmOGYtOTU5MC0zODVmY2YwOGZiYzYiLCJyZWFsbV9hY2Nlc3MiOnsicm9sZXMiOlsiU0hPUFBJTkdDQVJULUxPQi1BTEwiLCJQT0ZfQVBJX01BTkFHRVJfUEVSTSIsIkNUR19BUElfREVTSUdOX1BFUk0iLCJDSEFfQVBJX01BTkFHRVJfUEVSTSIsIkVYRUNfREVMVEFfQkFUQ0hfUEVSTSIsImRlZmF1bHQtcm9sZXMtbW9iaWx5IiwiUFJJX0FQSV9BQ0NFU1NfUEVSTSIsIlNDVF9BUElfREVTSUdOX1BFUk0iLCJTSE9QUElOR0NBUlRfUFJPQ19DT05fQUxMIiwiUk9MRV9JQl9BREFQVEVSX0RFTU8iLCJTSE9QUElOR0NBUlRfUFJPQ19DT05fSUxDIiwiQ0FUX0FQSV9ERVNJR05fUEVSTSIsIkVESVRPUl9SRVRSSUVWRV9ERUYiLCJSRVNfQVBJX0FDQ0VTU19QRVJNIiwiSU1QX0FQSV9BQ0NFU1NfUEVSTSIsIlNIT1BQSU5HQ0FSVF9QUk9DX0NPTl9BQyIsIlNIT1BQSU5HQ0FSVF9QUk9DX0NPTl9NTyIsIlNIT1BQSU5HQ0FSVF9MT0JfTU9CIiwiU0VSX0FQSV9NQU5BR0VSX1BFUk0iLCJST0xFX0lCX0FEQVBURVJfQlQiLCJTQ19RVUVSWV9BTEwiLCJTSE9QUElOR0NBUlRfTE9CX1RWIiwiUE9QX0FQSV9NQU5BR0VSX1BFUk0iLCJERUxFVEVfUkVDT01NRU5EQVRJT04iLCJQT0NfQVBJX0RFU0lHTl9QRVJNIiwiUFJNX0FQSV9ERVNJR05fUEVSTSIsIlNDVF9BUElfTUFOQUdFUl9QRVJNIiwiUE9GX0FQSV9ERVNJR05fUEVSTSIsIkNIRUNLT1VUX0FDQ0VTU19BTExfTk9fVkFMSURJVFkiLCJTRVJfQVBJX0RFU0lHTl9QRVJNIiwiUkNUX0FQSV9ERVNJR05fUEVSTSIsIlBSTV9BUElfTUFOQUdFUl9QRVJNIiwiU0hPUFBJTkdDQVJUX1BST0NfQ09OX01JRyIsIlBPQ19BUElfTUFOQUdFUl9QRVJNIiwiQ0hBX0FQSV9NQU5BRyBFUl9QRVJNIiwiUFJJX0FQSV9NQU5HRVJfUEVSTSIsIlNDX1NBVkVfRk9SX0xBVEVSIiwiUFJPX0FQSV9BQ0NFU1NfUEVSTSIsIkVESVRPUl9QVUJMSVNIIiwiU0NfUVVFUllfQUxMX0JZX1NDX0lEIiwiU1RBVFVTX0FDVElWRSIsIkVYRUNfQ09NUExFVEVfQkFUQ0hfUEVSTSIsIkVESVRPUl9DT05WRVJUIiwiU0hPUFBJTkdDQVJULVBST0MtQ09OLUFMTCIsIkRFRkFVTFRfQVBJX0FDQ0VTU19QRVJNIiwiU0hPUFBJTkdDQVJUX0xPQl9BTEwiLCJVUERBVEVfUkVDT01NRU5EQVRJT04iLCJSSF9JTVBPUlRfQVBJX0FDQ0VTU19QRVJNIiwiQ0hBX0FQSV9ERVNJR05fUEVSTSIsIlNUQVRVU19ERVNJR04iLCJMQ1RfQVBJX0RFU0lHTl9QRVJNIiwiU0NfREVMRVRFX0FMTCIsIlBPRl9BUElfQUNDRVNTX1BFUk0iLCJNTV9BUElfREVTSUdOX1BFUk0iLCJQUk9fQVBJX0RFU0lHTl9QRVJNIiwiUFJNX0FQSV9NQU5HRVJfUEVSTSIsIlBST19BUElfTUFOQUdFUl9QRVJNIiwiUkVTX0FQSV9NQU5BR0VSX1BFUk0iLCJTSE9QUElOR0NBUlQtUFJPQy1DT04tQUMiLCJFWFBfQVBJX0FDQ0VTU19QRVJNIiwiQ0FUX0FQSV9BQ0NFU1NfUEVSTSIsIlNUQVRVU19URVNUIiwiQUxMX0FQSV9BRE1JTl9QRVJNIiwiUE9QX0FQSV9BQ0NFU1NfUEVSTSIsIlJIX0VYUE9SVF9BUElfQUNDRVNTX1BFUk0iLCJDVEdfQVBJX0FDQ0VTU19QRVJNIiwiU1RBVFVTX1JFVElSRUQiLCJTRVJfQVBJX0FDQ0VTU19QRVJNIiwiU1RBVFVTX09CU09MRVRFIiwiZHBjIiwiU1RBVFVTX1JFSkVDVEVEIiwiQ1JFQVRFX1JFQ09NTUVOREFUSU9OIiwiQ0hBX0FQSV9BQ0NFU1NfUEVSTSIsIlNIT1BQSU5HQ0FSVF9MT0JfQkIiLCJTSE9QUElOR0NBUlRfU1VCTUlUIiwiTENUX0FQSV9NQU5BR0VSX1BFUk0iLCJSQ1RfQVBJX01BTkFHRVJfUEVSTSIsIlNUQVRVU19MQVVOQ0hFRCIsIlJFU19BUElfREVTSUdOX1BFUk0iLCJTSE9QUElOR0NBUlRfU0FWRV9BU19RVU9URSIsIlJFQURfUkVDT01NRU5EQVRJT04iLCJDQVRFR09SWV9MRVZFTF9DUkVBVEUiLCJTSE9QUElOR0NBUlRfUFJPQ19DT05fUkUiLCJTQ19VUERBVEVfQUxMIiwiU0NfU0FWRV9DQVJUIiwiTU1fQVBJX0FDQ0VTU19QRVJNIiwiUE9QX0FQSV9ERVNJR05fUEVSTSIsIlJFQ09NTUVOREFUSU9OX1NFUlZJQ0UiLCJJTVBfRVhQX1JFUV9MSVNUX0FMTCIsIkNUR19BUElfTUFOQUdFUl9QRVJNIiwiU0NfUVVFUllfQUxMX0JZX1BBUlRZX0lEIiwiQ0FUX0FQSV9NQU5BR0VSX1BFUk0iLCJQUk1fQVBJX0FDQ0VTU19QRVJNIl19LCJzY29wZSI6InByb2ZpbGUgZW1haWwgV1NPMiBhY2NvdW50cyIsInNpZCI6IjAwZmMxZjdiLTY1ZGEtNGY4Zi05NTkwLTM4NWZjZjA4ZmJjNiIsImVtYWlsX3ZlcmlmaWVkIjpmYWxzZSwibmFtZSI6InRlc3QyMDIzIHRlc3QyMDIzIiwicHJlZmVycmVkX3VzZXJuYW1lIjoidGVzdDIwMjMiLCJnaXZlbl9uYW1lIjoidGVzdDIwMjMiLCJmYW1pbHlfbmFtZSI6InRlc3QyMDIzIn0.GzOR6PAHHPRo01EiNtJ4slzb3aCXvQvH5sYm00cbzUFr-7kSCqRCumy16iAtS9yOSIqPMvMrFakgazIThr0dm3xgaouDWgvOimr4-F59mQ9vZSZSe1LDMgJDtf3QFO4i0UslQCKXHz4FgZHXrCnCGxOJAAP3WdbIrohSON2KPqLhm4fuSsUiRrN3sEnFV0Kwrlt9a1Bv1mscC8WstikJha6-99AS7BoCBwJGtBezjgF4WHJfcd0crUhtis6bU-iIAxyn_K-K5t-G1IuPiqvigK0wO-fOBnv4a__OHQT6mcqukiV_oQsRFpmZ4W09AsNzJ7rtnlduAeTrhshI3j-lww\";\r\n }\r\n //win[\"storeServerURL\"] = \"http://sdea004:8080\";\r\n win[\"regenerate_url\"] = \"/wps/portal/web/personal/store/cartmgmt/!ut/p/z1/jZDNDoIwEISfxSfo9oe211IQkBooBMVeDAdjMIoejM8vIerBCLK3Tb6Z3RnkUI1c1zzaY3Nvr11z7ved43uuPBJRwDlQA2DN0gsTYShEAm0HIMGpjleM5BkUFGzMfKZ1RmhCkJuj5zYIIe0ByUGCrYz25VpgUGKeHkZGwX-9G5BPAlmooEdgY0sT4LAUL2DsRUK-HX50MOmg3icmUpSHDt0uVVVDm5yYWjwBkQFJJA!!/dz/d5/L2dBISEvZ0FBIS9nQSEh/p0/IZ7_6A52G301P02H10QT8H4TPI0052=CZ6_6A52G301P03L00QLF5EI7L30G7=NJreGenerateToken=/\";\r\n win[\"errorPageURL\"] = \"/wps/portal/web/personal/store/error?errorSource=Store\";\r\n win[\"dpcPaymentUrl\"] = \"https://apisit.mobily.com.sa/wps/portal/web/direct-payment\"\r\n}\r\n\r\nexport default localhostSettings;\r\n","import i18n from \"i18next\";\r\nimport { initReactI18next } from \"react-i18next\";\r\nimport XHR from \"i18next-xhr-backend\";\r\nimport translationEN from \"./translations/en.json\";\r\nimport translationAR from \"./translations/ar.json\";\r\n\r\nconst win: any = window;\r\n//win[\"lang\"]=\"en\";\r\n//document.documentElement.lang = win[\"lang\"];\r\n//document.documentElement.dir = \"rtl\";\r\n\r\n// the translations\r\nconst resources = {\r\n en: {\r\n translation: translationEN,\r\n },\r\n ar: {\r\n translation: translationAR,\r\n },\r\n};\r\n\r\nlet lng: string | undefined = win[\"lang\"] == null ? \"en\" : win[\"lang\"];\r\n\r\ni18n\r\n .use(XHR)\r\n .use(initReactI18next)\r\n .init({\r\n resources,\r\n fallbackLng: \"en\",\r\n lng,\r\n debug: false,\r\n keySeparator: false,\r\n interpolation: {\r\n escapeValue: false,\r\n },\r\n // backend: {\r\n // loadPath: './translations/{{lng}}.json',\r\n // //loadPath: window.location.href.includes(\"localhost\") ? '/translations/{{lng}}.json' : \"/.store.cartmgmt/react-app/build/translations/{{lng}}.json\",\r\n // allowMultiLoading: true,\r\n // },\r\n react: {\r\n useSuspense: true,\r\n },\r\n });\r\n\r\nexport default i18n;\r\n","import React from 'react';\r\n\r\nconst AuctionsContext = React.createContext({\r\n auctionHId : \"\",\r\n auctionCId : \"\",\r\n auctionMBId : \"\",\r\n event : \"\"\r\n});\r\n\r\nexport default AuctionsContext;","export default __webpack_public_path__ + \"static/media/ArrowRightWhite.9e1a0d23.svg\";","export default __webpack_public_path__ + \"static/media/ArrowLeftWhite.b4fbdac0.svg\";","import axios from \"axios\";\r\n\r\nvar counter = 0;\r\nconst win: any = window;\r\nconst lang = win[\"lang\"];\r\nconst apiBaseURL = win[\"base_api_url\"];\r\n//const apiTestBaseURL = win[\"base_test_api_url\"];\r\nconst serverURL = win[\"base_portal_url\"].includes(\"mobily.com.sa\")\r\n ? \"https://www.mobily.com.sa\"\r\n : win[\"base_portal_url\"];\r\nvar token = win[\"clientToken\"];\r\nvar reGenerateTokenUrl = win[\"regenerate_url\"];\r\nvar errorPage = win[\"errorPageURL\"];\r\nconst cem_key = win[\"CEM_KEY\"];\r\n\r\nconst createTransactionID = () => {\r\n let currentDateTime = new Date().toISOString().replace(/-|:|T/gi,'').slice(0,12);\r\n return 'POR_' + currentDateTime + '_' + Math.ceil(Math.random()*100000);\r\n}\r\n\r\nlet config = {\r\n api: {\r\n baseURL: apiBaseURL,\r\n headers: {\r\n Accept: \"application/json\",\r\n \"Content-Type\": \"application/json\",\r\n Authorization: \"\",\r\n \"X-Source-Channel\": \"PORTAL\",\r\n \"cem-key\": cem_key,\r\n },\r\n },\r\n};\r\n\r\nexport const api = axios.create({ ...config.api });\r\nexport const simpleApi = axios.create();\r\n\r\napi.defaults.validateStatus = function () {\r\n return true;\r\n};\r\n\r\napi.interceptors.request.use(\r\n async (conf: any) => {\r\n console.log(\"token : \" + token);\r\n conf.headers.Authorization = \"Bearer \" + token;\r\n conf.headers[\"X-Correlation-Id\"] = localStorage.getItem(\"xCorId\");\r\n conf.headers['X-Transaction-Id'] = createTransactionID();\r\n return conf;\r\n },\r\n (err) => {\r\n console.log(\"error in getting \", err);\r\n }\r\n);\r\n\r\napi.interceptors.response.use(\r\n async (response: any) => {\r\n if (response.status && response.status === 401) {\r\n counter++;\r\n token = await reGenerateToken();\r\n const { config: oldRequest } = response;\r\n if (counter < 2) return api.request({ ...oldRequest });\r\n }\r\n\r\n return response;\r\n },\r\n async (error: any) => {\r\n if (!!errorPage) {\r\n document.location.href = errorPage;\r\n }\r\n return error;\r\n }\r\n);\r\n\r\n// let configTest = {\r\n// api: {\r\n// baseURL: apiTestBaseURL,\r\n// headers: {\r\n// Accept: \"application/json\",\r\n// \"Content-Type\": \"application/json\",\r\n// Authorization: \"\",\r\n// 'X-Source-Channel': \"PORTAL\",\r\n// \"cem-key\": cem_key,\r\n// },\r\n// }\r\n// }\r\n// export const apiTest = axios.create({ ...configTest.api });\r\n// apiTest.defaults.validateStatus = function () {\r\n// return true;\r\n// };\r\n// apiTest.interceptors.request.use(\r\n// async (conf: any) => {\r\n// console.log(\"token : \" + token);\r\n// conf.headers.Authorization = \"Bearer \" + token;\r\n// conf.headers[\"X-Correlation-Id\"] = localStorage.getItem(\"xCorId\");\r\n// conf.headers['X-Transaction-Id'] = createTransactionID();\r\n// return conf;\r\n// },\r\n// (err) => {\r\n// console.log(\"error in getting \", err);\r\n// }\r\n// );\r\n// apiTest.interceptors.response.use(\r\n// async (response: any) => {\r\n// if (response.status && response.status === 401) {\r\n// counter++;\r\n// token = await reGenerateToken();\r\n// const { config: oldRequest } = response;\r\n// if (counter < 2) return apiTest.request({ ...oldRequest });\r\n// }\r\n\r\n// return response;\r\n// },\r\n// async (error: any) => {\r\n// if (!!errorPage) {\r\n// document.location.href = errorPage;\r\n// }\r\n// return error;\r\n// }\r\n// );\r\n\r\nfunction reGenerateToken() {\r\n console.log(\"reGenerateToken :: Enter\");\r\n console.log(\"reGenerateTokenUrl => \" + serverURL + \"\" + reGenerateTokenUrl);\r\n\r\n return new Promise((resolve, reject) => {\r\n fetch(serverURL + \"\" + reGenerateTokenUrl, {\r\n method: \"GET\",\r\n headers: {\r\n \"Content-type\": \"text/html; charset=UTF-8\",\r\n },\r\n })\r\n .then((res) => res.text())\r\n\r\n .then((result) => {\r\n //console.log(\"Token res -> \"+result);\r\n resolve(result);\r\n })\r\n .catch((err) => {\r\n //console.log(err);\r\n reject(err);\r\n });\r\n });\r\n}\r\n\r\nconst getTerms = async () => {\r\n return simpleApi.get(`${apiBaseURL}/api/utility/v1/terms?module=110`, { headers:{\"cem-key\":cem_key} });\r\n};\r\n\r\nconst getAuctionVanityTypes = async () => {\r\n return simpleApi.get(`${apiBaseURL}/api/digital/v1/data/mappings?contextId=CTX_LOOKUPS&catalogKey=AUCTION_VANITY_TYPES`,{ headers:{\"cem-key\":cem_key} });\r\n};\r\n\r\nconst getAuctionBidIncrements = async () => {\r\n return simpleApi.get(`${apiBaseURL}/api/digital/v1/data/mappings?contextId=CTX_LOOKUPS&catalogKey=AUCTION_BIDS`,{ headers:{\"cem-key\":cem_key} });\r\n};\r\n\r\nconst initiatePayment = (data: any) => {\r\n return api.post(`${apiBaseURL}/cem/bff/dpc/v1/initiatePayment`, data);\r\n};\r\n\r\nconst submitRAOrder = (data: any) => {\r\n return api.post(`${apiBaseURL}/cem/bff/auction/v1/submitorder`, data);\r\n};\r\n\r\nconst getProfileInformation = async () => {\r\n return api.get(`${apiBaseURL}/api/auction/v1/profile/status`);\r\n};\r\n\r\nconst getAuctions = async (filter: String = \"\") => {\r\n return api.get(`${apiBaseURL}/api/auction/v1/auctions?sort=${filter}&limit=10&auctionType=Vanity`);\r\n};\r\n\r\nconst getAuctionDetails = async (auctionId: any) => {\r\n return api.get(`${apiBaseURL}/api/auction/v1/auctions/${auctionId}`);\r\n};\r\n\r\nconst placeBid = (data: any) => {\r\n return api.put(`${apiBaseURL}/api/auction/v1/bid`, data);\r\n};\r\n\r\nexport {\r\n getAuctions,\r\n getAuctionDetails,\r\n initiatePayment,\r\n submitRAOrder,\r\n placeBid,\r\n getAuctionVanityTypes,\r\n getAuctionBidIncrements,\r\n getTerms,\r\n getProfileInformation,\r\n};\r\n","import { Component } from \"react\";\r\nimport React from \"react\";\r\nimport { withTranslation } from \"react-i18next\";\r\nimport Text from \"antd/lib/typography/Text\";\r\nimport {\r\n ArrowRightOutlined,\r\n ArrowLeftOutlined,\r\n WarningOutlined,\r\n ArrowDownOutlined,\r\n} from \"@ant-design/icons\";\r\nimport ArrowRight from \"../../imgs/ArrowRightWhite.svg\";\r\nimport ArrowLeft from \"../../imgs/ArrowLeftWhite.svg\";\r\nimport {\r\n getAuctionDetails,\r\n getAuctionVanityTypes,\r\n getAuctionBidIncrements,\r\n initiatePayment,\r\n submitRAOrder,\r\n placeBid,\r\n getTerms,\r\n getProfileInformation,\r\n} from \"../../api\";\r\nimport { Spin, message } from \"antd\";\r\nimport Button from \"antd/lib/button\";\r\nimport * as Icon from \"@ant-design/icons\";\r\nimport * as Constant from \"../../utils/Constants\";\r\nimport {\r\n convertSecondsToDhms,\r\n getTimeRemainingInSec,\r\n convertFromStringToDate,\r\n formatClosingDate,\r\n} from \"../../utils/Utils\";\r\nimport {\r\n FacebookShareButton,\r\n EmailShareButton,\r\n WhatsappShareButton,\r\n TwitterShareButton,\r\n} from \"react-share\";\r\nimport { Modal } from \"antd\";\r\nimport \"./Header.css\";\r\nimport AuctionsContext from \"../../context/AuctionsContext\";\r\nimport WebSocketClient from \"../../api/WebSocketClient\";\r\n\r\nvar MySelf: Header;\r\nconst win: any = window;\r\nconst lang = win[\"lang\"];\r\nconst serverURL = win[\"base_portal_url\"].includes(\"mobily.com.sa\")\r\n ? \"https://www.mobily.com.sa\"\r\n : win[\"base_portal_url\"]; //win[\"base_portal_url\"];\r\nconst apiBaseURL = win[\"base_api_url\"];\r\nconst termsAPIUrl = apiBaseURL + \"/api/utility/v1/terms?module=110\";\r\nconst auctionsUrl = win[\"auctionsUrl\"]\r\n ? serverURL + win[\"auctionsUrl\"]\r\n : serverURL + \"/wps/portal/web/auctions\";\r\nconst termsURL = win[\"termsURL\"]\r\n ? serverURL + win[\"termsURL\"]\r\n : serverURL + \"/wps/portal/web/auctions/terms\";\r\nconst loginURL = win[\"loginURL\"]\r\n ? serverURL + win[\"loginURL\"]\r\n : serverURL + \"/wps/portal/web/login-page?account_type=auctions\";\r\nconst raqiURL = win[\"raqiPageURL\"]\r\n ? serverURL + win[\"raqiPageURL\"]\r\n : serverURL + \"/wps/portal/web/mobile/raqi\";\r\nconst dpcPaymentUrl = win[\"dpcPaymentUrl\"];\r\n\r\nconst userId = win[\"userId\"] ? win[\"userId\"] : -1;\r\n\r\nclass Header extends Component {\r\n static contextType = AuctionsContext;\r\n\r\n constructor(props: any) {\r\n super(props);\r\n MySelf = this;\r\n this.state = {\r\n isError: false,\r\n errorMsg: \"\",\r\n showLoginPopup: false,\r\n showSDPopup: false,\r\n showPYBPopup: false,\r\n showPaymentPopup: false,\r\n popupErrorMsg: \"\",\r\n securityDeposit: 0,\r\n securityDepositWithVat: 0,\r\n securityDepositVat: 0,\r\n heighestBid: 0,\r\n loadingDetails: true,\r\n loadingAuctionVanityTypes: true,\r\n loadingBidIncrements: true,\r\n loadingTerms: true,\r\n loadingProfileInfo: false,\r\n data: [],\r\n auctionVanityData: [],\r\n bidIncrementsData: [],\r\n selectedBidIncrementId: 0,\r\n minimumDeposit: 0,\r\n intervalId: -1,\r\n auctionId: \"\",\r\n auctionEndDate: \"\",\r\n bidTimeRemaining: 0,\r\n termsId: -1,\r\n showPopup: false,\r\n isBidEligible: \"\",\r\n isBidLoginEligible: \"N\",\r\n isAuctionEnded: false,\r\n auctionStatus: \"\",\r\n isLoggedIn: this.props.isLoggedIn,\r\n isProfileUpdated: false,\r\n remainingPayment: 0,\r\n remainingPaymentStatus: \"\",\r\n remainingPaymentExpiry: \"\",\r\n remainingPaymentAllowed: \"Y\",\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const urlParams = new URLSearchParams(window.location.search);\r\n let id = urlParams.get('id');\r\n let pu = urlParams.get('pu');\r\n let popup = urlParams.get('popup');\r\n let edata = urlParams.get('edata');\r\n let status = urlParams.get('status');\r\n let pt, xcoid;\r\n\r\n if(edata) {\r\n let decode = window.decodeURIComponent(atob(edata ? edata : \"\"));\r\n let params = JSON.parse(decode);\r\n id = params.id;\r\n pu = params.pu;\r\n popup = params.popup;\r\n pt = params.pt;\r\n xcoid = params.xcoid;\r\n }\r\n if (pu) {\r\n localStorage.setItem(\"pu\", pu);\r\n }\r\n if(xcoid) {\r\n localStorage.setItem(\"xCorId\", xcoid);\r\n }\r\n\r\n if (id && id !== null && id !== undefined) {\r\n MySelf.getAuctionVanityTypes();\r\n MySelf.getBidIncrements();\r\n MySelf.getTermsContent();\r\n MySelf.setState(\r\n {\r\n auctionId: id,\r\n showPopup: (popup || popup === \"\")? true : false,\r\n isProfileUpdated: localStorage.getItem(\"pu\") === \"Y\",\r\n isBidLoginEligible: (localStorage.getItem(\"loginType\") === \"ML\")? \"N\" : \"Y\",\r\n },\r\n () => MySelf.getDetails()\r\n );\r\n } else {\r\n window.location.href = auctionsUrl.replace(\"/personal\",\"\");\r\n }\r\n }\r\n\r\n componentDidUpdate() {\r\n //console.log(this.context.auctionHId + '
' + this.state.auctionId);\r\n if(this.context.auctionHId === this.state.auctionId) {\r\n this.context.auctionHId = \"\";\r\n this.updateAuctionDetails({auctionId:this.state.auctionId});\r\n }\r\n }\r\n\r\n getDetails = () => {\r\n MySelf.setState({\r\n loadingDetails: true,\r\n });\r\n getAuctionDetails(this.state.auctionId).then((response: any) => {\r\n if (response && response.data && response.data.data[\"auctionId\"]) {\r\n let intervalId = setInterval(this.countdownTimer, 1000);\r\n MySelf.setState(\r\n {\r\n loadingDetails: false,\r\n intervalId: intervalId,\r\n data: response.data,\r\n heighestBid:\r\n response.data.data[\"currentBidsCount\"] === 0\r\n ? response.data.data[\"startPrice\"]\r\n : response.data.data[\"currentBidValue\"],\r\n isBidEligible: response.data.data[\"bidEligible\"],\r\n securityDeposit: response.data.data[\"securityDeposit\"],\r\n securityDepositWithVat: response.data.data[\"securityDepositWithVat\"],\r\n auctionEndDate: response.data.data[\"auctionEndDate\"],\r\n auctionStatus: response.data.data[\"auctionStatus\"],\r\n remainingPayment: response.data.data[\"remainingPayment\"],\r\n remainingPaymentStatus: response.data.data[\"remainingPaymentStatus\"],\r\n remainingPaymentExpiry: response.data.data[\"remainingPaymentExpiry\"],\r\n remainingPaymentAllowed: response.data.data[\"remainingPaymentAllowed\"],\r\n bidTimeRemaining: getTimeRemainingInSec(\r\n response.data.data[\"auctionEndDate\"]\r\n ),\r\n isAuctionEnded:\r\n getTimeRemainingInSec(response.data.data[\"auctionEndDate\"]) <= 0,\r\n },\r\n () => {\r\n if(response.data.data[\"remainingPayRefId\"]) {\r\n localStorage.setItem(\"refId\", response.data.data[\"remainingPayRefId\"]);\r\n }\r\n if(response.data.data[\"remainingPayCorId\"]) {\r\n localStorage.setItem(\"xCorId\", response.data.data[\"remainingPayCorId\"]);\r\n }\r\n if (\r\n this.state.isLoggedIn &&\r\n this.state.isProfileUpdated &&\r\n !this.state.isAuctionEnded &&\r\n this.state.showPopup\r\n ) {\r\n this.continueBidProcess();\r\n }\r\n }\r\n );\r\n } else {\r\n window.location.href = auctionsUrl.replace(\"/personal\",\"\");\r\n }\r\n });\r\n };\r\n\r\n getTermsContent = () => {\r\n MySelf.setState({\r\n loadingTerms: true,\r\n });\r\n getTerms().then((response: any) => {\r\n if (response && response.data) {\r\n MySelf.setState({\r\n loadingTerms: false,\r\n termsId: response.data.data[\"termsId\"],\r\n });\r\n }\r\n });\r\n };\r\n\r\n getProfileInformation = () => {\r\n MySelf.setState({\r\n loadingProfileInfo: true,\r\n });\r\n\r\n getProfileInformation().then((response: any) => {\r\n if (response && response.data.data) {\r\n localStorage.setItem(\"pu\", response.data.data.profileStatus);\r\n MySelf.setState(\r\n {\r\n loadingProfileInfo: false,\r\n isProfileUpdated: localStorage.getItem(\"pu\") === \"Y\",\r\n },\r\n () => {\r\n if (this.state.isLoggedIn && MySelf.state.isProfileUpdated) {\r\n MySelf.continueBidProcess();\r\n } else {\r\n MySelf.handleLogin();\r\n }\r\n }\r\n );\r\n } else {\r\n MySelf.setState({\r\n loadingProfileInfo: false,\r\n });\r\n message.error(\r\n lang === \"ar\"\r\n ? response.data.status.arabicDetail\r\n : response.data.status.englishDetail\r\n );\r\n }\r\n });\r\n };\r\n\r\n getAuctionVanityTypes = () => {\r\n MySelf.setState({\r\n loadingAuctionVanityTypes: true,\r\n });\r\n getAuctionVanityTypes().then((response: any) => {\r\n if (response && response.data) {\r\n MySelf.setState({\r\n loadingAuctionVanityTypes: false,\r\n auctionVanityData: response.data.data,\r\n });\r\n }\r\n });\r\n };\r\n\r\n getBidIncrements = () => {\r\n MySelf.setState({\r\n loadingBidIncrements: true,\r\n });\r\n getAuctionBidIncrements().then((response: any) => {\r\n if (response && response.data) {\r\n MySelf.setState({\r\n loadingBidIncrements: false,\r\n bidIncrementsData: response.data.data,\r\n minimumDeposit:\r\n lang === \"ar\"\r\n ? response.data.data[\"bid_increments\"][0].value_ar\r\n : response.data.data[\"bid_increments\"][0].value_en,\r\n });\r\n }\r\n });\r\n };\r\n\r\n componentWillUnmount() {\r\n clearInterval(this.state.intervalId);\r\n }\r\n\r\n countdownTimer = () => {\r\n if (this.state.bidTimeRemaining > 0) {\r\n this.setState({ bidTimeRemaining: this.state.bidTimeRemaining - 1 });\r\n } else {\r\n this.setState({\r\n isAuctionEnded: true,\r\n showLoginPopup: false,\r\n showSDPopup: false,\r\n showPYBPopup: false,\r\n popupErrorMsg: \"\",\r\n });\r\n clearInterval(this.state.intervalId);\r\n }\r\n };\r\n\r\n getSecondsInDhms = (seconds: any) => {\r\n const { t } = this.props;\r\n if (\r\n MySelf.state.auctionStatus === Constant.AUCTION_STATUS_ACTIVE ||\r\n MySelf.state.auctionStatus === Constant.AUCTION_STATUS_END\r\n ) {\r\n return convertSecondsToDhms(seconds);\r\n } else {\r\n return t(\"na\");\r\n }\r\n };\r\n\r\n getCurrentBidValue = (currentBidValue: any) => {\r\n const { t } = this.props;\r\n if (\r\n MySelf.state.auctionStatus === Constant.AUCTION_STATUS_ACTIVE ||\r\n MySelf.state.auctionStatus === Constant.AUCTION_STATUS_END\r\n ) {\r\n return currentBidValue;\r\n } else {\r\n return t(\"na\");\r\n }\r\n };\r\n\r\n getCurrentBidsCount = (currentBidsCount: any) => {\r\n const { t } = this.props;\r\n if (\r\n MySelf.state.auctionStatus === Constant.AUCTION_STATUS_ACTIVE ||\r\n MySelf.state.auctionStatus === Constant.AUCTION_STATUS_END\r\n ) {\r\n return currentBidsCount;\r\n } else {\r\n return t(\"na\");\r\n }\r\n };\r\n\r\n handleLogin = () => {\r\n this.setState({ showLoginPopup: false });\r\n //Navigate to login url\r\n let returnUrl = window.location.href.includes(\"myportal\")\r\n ? window.location.href\r\n : window.location.href.replace(\"portal\", \"myportal\");\r\n const newURL: any = loginURL + \"&returnUrl=\" + encodeURI(returnUrl);\r\n console.log(\"Navigate to login url > \" + newURL);\r\n window.location.href = newURL;\r\n };\r\n\r\n handleSecurityDeposit = () => {\r\n this.setState({ showSDPopup: false });\r\n let correlationId = localStorage.getItem(\"xCorId\");\r\n const urlParams = new URLSearchParams(window.location.search);\r\n let params: any = {\r\n id: urlParams.get(\"id\"),\r\n pu: \"Y\",\r\n popup: \"popup\",\r\n pt: \"SD\",\r\n xcoid: correlationId\r\n }\r\n let redirectUrl = window.location.origin + window.location.pathname;\r\n redirectUrl = redirectUrl.includes(\"myportal\") ? redirectUrl : redirectUrl.replace(\"portal\", \"myportal\");\r\n let encoded = window.btoa(encodeURIComponent(JSON.stringify(params)));\r\n let returnUrl = redirectUrl + '?edata='+encoded;\r\n\r\n var data = {\r\n version: \"v2\",\r\n journey: \"AUCTION_VANITY_DEPOSIT\",\r\n operation: \"INITIATE-AUTHORIZE\",\r\n paymentProcessor: \"MPGS\",\r\n language: lang === \"ar\" ? lang : \"en\",\r\n extraInfo: [\r\n {\r\n key: \"AUCTION_ID\",\r\n value: MySelf.state.auctionId\r\n },\r\n {\r\n key: \"TERMS_ID\",\r\n value: MySelf.state.termsId\r\n },\r\n {\r\n key: \"REQUESTOR_CHANNEL_ID\",\r\n value: \"EPOR\"\r\n }\r\n ]\r\n }\r\n\r\n //Navigate to Security Deposit\r\n console.log(\"Navigate to Security Deposit\");\r\n this.handleInititatePaymemt(data, returnUrl);\r\n };\r\n\r\n handleInititatePaymemt = (data:any, returnUrl:any) => {\r\n let correlationId = localStorage.getItem(\"xCorId\");\r\n let auctionExpDate = convertFromStringToDate(this.state.auctionEndDate).toISOString().split('.')[0];\r\n\r\n initiatePayment(data).then((response: any) => {\r\n if (\r\n response &&\r\n response.data.status &&\r\n response.data.status.sourceCode === \"MAPI-000\"\r\n ) {\r\n let refId = response.data.data.refId;\r\n let dpcAppUrl:any = dpcPaymentUrl+'?ptype=autr&src=auction&refId='+refId+'&xCoId='+correlationId+'&rft='+win[\"rft\"]+'&returnUrl='+returnUrl;\r\n localStorage.setItem(\"refId\", refId);\r\n window.location = dpcAppUrl;\r\n return;\r\n } else {\r\n if (response.data.data) {\r\n MySelf.setState({\r\n isError: true,\r\n errorMsg: response.data.data.responseMessage,\r\n });\r\n } else if (response.data.message) {\r\n MySelf.setState({\r\n isError: true,\r\n errorMsg: response.data.message,\r\n });\r\n } else if (response.data.status) {\r\n MySelf.setState({\r\n isError: true,\r\n errorMsg:\r\n lang === \"ar\"\r\n ? response.data.status.arabicDetail\r\n : response.data.status.englishDetail,\r\n });\r\n } else {\r\n MySelf.setState({\r\n isError: true,\r\n errorMsg:\r\n lang === \"ar\"\r\n ? \"همم...صار خطأ في العملية.\"\r\n : \"Hmm...Something went wrong.\",\r\n });\r\n }\r\n message.error(MySelf.state.errorMsg);\r\n }\r\n });\r\n }\r\n\r\n handleRemainingPayment = () => {\r\n this.setState({ showPaymentPopup: false });\r\n let correlationId = localStorage.getItem(\"xCorId\");\r\n const urlParams = new URLSearchParams(window.location.search);\r\n let refId = localStorage.getItem(\"refId\");\r\n let auctionExpDate = convertFromStringToDate(this.state.auctionEndDate).toISOString().split('.')[0];\r\n let params: any = {\r\n id: urlParams.get(\"id\"),\r\n pu: \"Y\",\r\n pt: \"RA\",\r\n xcoid: correlationId\r\n }\r\n let redirectUrl = window.location.origin + window.location.pathname;\r\n redirectUrl = redirectUrl.includes(\"myportal\") ? redirectUrl : redirectUrl.replace(\"portal\", \"myportal\");\r\n let encoded = window.btoa(encodeURIComponent(JSON.stringify(params)));\r\n let returnUrl = redirectUrl + '?edata='+encoded; \r\n // Navigate to remaining amount payment\r\n let dpcAppUrl:any = dpcPaymentUrl+'?src=auction&refId='+refId+'&xCoId='+correlationId+'&rft='+win[\"rft\"]+'&returnUrl='+returnUrl;\r\n window.location = dpcAppUrl;\r\n }\r\n\r\n handlePlaceYourBid = () => {\r\n let bidAmount = Number(\r\n MySelf.state.bidIncrementsData[\"bid_increments\"][\r\n MySelf.state.selectedBidIncrementId\r\n ].value_en\r\n );\r\n let totalAmount = Number(MySelf.state.heighestBid) + bidAmount;\r\n\r\n var data = {\r\n auctionId: MySelf.state.auctionId,\r\n bidAmount: bidAmount,\r\n totalBidValue: totalAmount,\r\n };\r\n\r\n let modalPopupActionButton: any = document.getElementsByClassName(\r\n \"modalPopupActionButton\"\r\n );\r\n modalPopupActionButton[0].style.backgroundColor = \"#d3d3d3\";\r\n modalPopupActionButton[0].style.pointerEvents = \"none\";\r\n\r\n this.setState({\r\n popupErrorMsg: \"\",\r\n });\r\n //Place your bid\r\n console.log(\r\n \"Navigate to Place the bid of \" +\r\n bidAmount +\r\n \" with total of \" +\r\n totalAmount\r\n );\r\n\r\n placeBid(data).then((response: any) => {\r\n let modalPopupActionButton: any = document.getElementsByClassName(\r\n \"modalPopupActionButton\"\r\n );\r\n if (modalPopupActionButton.length > 0) {\r\n modalPopupActionButton[0].style.backgroundColor = \"#008CFF\";\r\n modalPopupActionButton[0].style.pointerEvents = \"auto\";\r\n }\r\n if (response && response.status === 204) {\r\n this.setState({ showPYBPopup: false });\r\n this.updateAuctionDetails({ auctionId: this.state.auctionId });\r\n return;\r\n } else {\r\n if (response.data.data) {\r\n MySelf.setState({\r\n isError: true,\r\n popupErrorMsg: response.data.data.message,\r\n });\r\n } else if (response.data.message) {\r\n MySelf.setState({\r\n isError: true,\r\n popupErrorMsg: response.data.message,\r\n });\r\n } else if (response.data.status) {\r\n MySelf.setState({\r\n isError: true,\r\n popupErrorMsg:\r\n lang === \"ar\"\r\n ? response.data.status.arabicDetail\r\n : response.data.status.englishDetail,\r\n });\r\n } else {\r\n MySelf.setState({\r\n isError: true,\r\n popupErrorMsg:\r\n lang === \"ar\"\r\n ? \"همم...صار خطأ في العملية.\"\r\n : \"Hmm...Something went wrong.\",\r\n });\r\n }\r\n }\r\n });\r\n };\r\n\r\n handleCancel = () => {\r\n console.log(\"Cancel operation! Close the popup\");\r\n this.setState({\r\n showLoginPopup: false,\r\n showSDPopup: false,\r\n showPYBPopup: false,\r\n popupErrorMsg: \"\",\r\n });\r\n };\r\n\r\n onBidNowPress = (event: any) => {\r\n this.setState({\r\n popupErrorMsg: \"\",\r\n });\r\n if (MySelf.state[\"isLoggedIn\"] && MySelf.state[\"isBidLoginEligible\"] === 'Y') {\r\n // Proceed to place bid\r\n if (!MySelf.state.isProfileUpdated) {\r\n MySelf.getProfileInformation();\r\n } else {\r\n MySelf.continueBidProcess();\r\n }\r\n } else {\r\n MySelf.setState({\r\n showLoginPopup: true,\r\n });\r\n }\r\n event.preventDefault();\r\n };\r\n\r\n onPayNowPress = (event: any) => {\r\n MySelf.setState({\r\n showPaymentPopup: true,\r\n });\r\n event.preventDefault();\r\n }\r\n\r\n continueBidProcess = () => {\r\n if (MySelf.state[\"isBidEligible\"] === \"N\") {\r\n MySelf.setState({\r\n showSDPopup: true,\r\n });\r\n }\r\n if (MySelf.state[\"isBidEligible\"] === \"Y\") {\r\n MySelf.setState({\r\n showPYBPopup: true,\r\n });\r\n }\r\n };\r\n\r\n getBidClosingDate = () => {\r\n return formatClosingDate(this.state.auctionEndDate);\r\n };\r\n\r\n getBidStatus = (status: String, paymentStatus: String) => {\r\n let message = \"\";\r\n const { t } = this.props;\r\n\r\n if(!MySelf.state.isAuctionEnded) {\r\n if (status === Constant.BID_STATUS_HIGH) {\r\n message = t(\"bidStatusHigh\"); //'You are the heighest bidder!';\r\n } else \r\n if (status === Constant.BID_STATUS_OUTBID) {\r\n message = t(\"bidStatusOutBid\"); //'You have been outbidded!';\r\n } else\r\n if (\r\n status === Constant.BID_STATUS_NOT_LOGGEDIN ||\r\n status === Constant.BID_STATUS_NO_BIDS\r\n ) {\r\n message = t(\"bidStatusNoBids\"); //'You did not bid on this number';\r\n }\r\n } else {\r\n if (paymentStatus === Constant.PAYMENT_STATUS_PAID) {\r\n message = t(\"numberIsYours\"); //'The number is yours'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_NOTPAID) {\r\n message = t(\"youAreWinner\"); //'You won the auction'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_EXPIRED) {\r\n message = t(\"paymentAllowedDaysPassed\"); //'The payment period has ended.'\r\n }\r\n }\r\n return message;\r\n };\r\n\r\n getBidStatusColor = (status: String, paymentStatus: String) => {\r\n let color = '#FFFFFF';\r\n\r\n if(!this.state.isAuctionEnded) {\r\n\r\n } else {\r\n if (paymentStatus === Constant.PAYMENT_STATUS_PAID) {\r\n color = '#7CB9E8'; //'The number is yours'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_NOTPAID) {\r\n color = '#7CB9E8'; //'You won the auction'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_EXPIRED) {\r\n color = '#FF0000'; //'The payment period has ended.'\r\n }\r\n }\r\n return color;\r\n }\r\n\r\n getBidButtonLabel = (status: String) => {\r\n let buttonLabel = \"\";\r\n const { t } = this.props;\r\n\r\n if(!MySelf.state.isAuctionEnded) {\r\n //If user logged in and user bidded for this auction then bid status will be High or OutBid. Bid status empty means user not logged in or no bids on this auction.\r\n if (\r\n status === Constant.BID_STATUS_NOT_LOGGEDIN ||\r\n status === Constant.BID_STATUS_NO_BIDS\r\n ) {\r\n buttonLabel = t(\"bidNow\").toUpperCase();\r\n } else {\r\n buttonLabel = t(\"increaseBid\").toUpperCase();\r\n }\r\n } else {\r\n buttonLabel = t(\"payNow\").toUpperCase();\r\n }\r\n\r\n return buttonLabel;\r\n };\r\n\r\n selectedBid = (event: any, bidId: Number) => {\r\n MySelf.setState({\r\n selectedBidIncrementId: bidId,\r\n });\r\n };\r\n\r\n onPhoneBookIconPress = (event: any) => {\r\n navigator.clipboard.writeText(window.location.href);\r\n //message.info('Auction link copied');\r\n };\r\n\r\n createIcon = (name: string) => {\r\n let icon = React.createElement(Icon && (Icon as any)[name], {\r\n style: { color: \"#FFFFFF\", margin: 5 },\r\n });\r\n return icon;\r\n };\r\n\r\n updateAuctionDetails = (updatemsg: any) => {\r\n console.log(\"--------- header update --------\");\r\n console.log(updatemsg);\r\n //let msg = JSON.parse(updatemsg);\r\n if (updatemsg.auctionId === MySelf.state.auctionId) {\r\n this.setState({\r\n loadingDetails: true,\r\n });\r\n getAuctionDetails(this.state.auctionId).then((response: any) => {\r\n if (response && response.data) {\r\n this.setState({\r\n loadingDetails: false,\r\n data: response.data,\r\n heighestBid:\r\n response.data.data[\"currentBidsCount\"] === 0\r\n ? response.data.data[\"startPrice\"]\r\n : response.data.data[\"currentBidValue\"],\r\n isBidEligible: response.data.data[\"bidEligible\"],\r\n securityDeposit: response.data.data[\"securityDeposit\"],\r\n securityDepositWithVat: response.data.data[\"securityDepositWithVat\"],\r\n auctionEndDate: response.data.data[\"auctionEndDate\"],\r\n auctionStatus: response.data.data[\"auctionStatus\"],\r\n remainingPayment: response.data.data[\"remainingPayment\"],\r\n remainingPaymentStatus: response.data.data[\"remainingPaymentStatus\"],\r\n remainingPaymentExpiry: response.data.data[\"remainingPaymentExpiry\"],\r\n remainingPaymentAllowed: response.data.data[\"remainingPaymentAllowed\"],\r\n isAuctionEnded:\r\n getTimeRemainingInSec(response.data.data[\"auctionEndDate\"]) <= 0,\r\n },\r\n () => {\r\n if(response.data.data[\"remainingPayRefId\"]) {\r\n localStorage.setItem(\"refId\", response.data.data[\"remainingPayRefId\"]);\r\n }\r\n if(response.data.data[\"remainingPayCorId\"]) {\r\n localStorage.setItem(\"xCorId\", response.data.data[\"remainingPayCorId\"]);\r\n }\r\n });\r\n window.scrollTo(0, 0);\r\n }\r\n });\r\n }\r\n };\r\n\r\n render() {\r\n const { t } = this.props;\r\n if (\r\n MySelf.state.loadingDetails ||\r\n MySelf.state.loadingAuctionVanityTypes ||\r\n MySelf.state.loadingBidIncrements ||\r\n MySelf.state.loadingTerms\r\n ) {\r\n return ;\r\n }\r\n\r\n let details = MySelf.state.data.data;\r\n let auctionVanity = MySelf.state.auctionVanityData[\"vanity_types\"].filter(\r\n (vanity: any) => {\r\n return vanity.value === details[\"auctionVanity\"];\r\n }\r\n )[0];\r\n let bidIncrements = MySelf.state.bidIncrementsData[\"bid_increments\"];\r\n let isAuctionAvailable =\r\n MySelf.state.auctionStatus === Constant.AUCTION_STATUS_ACTIVE ||\r\n MySelf.state.auctionStatus === Constant.AUCTION_STATUS_END;\r\n let totalBid =\r\n Number(MySelf.state.heighestBid) +\r\n Number(bidIncrements[MySelf.state.selectedBidIncrementId].value_en);\r\n //let icon:any = this.createIcon('ArrowRightOutlined');\r\n return (\r\n
\r\n {/**/}\r\n \r\n \r\n
\r\n {t(\"increaseCardLimitTitle\")}\r\n
\r\n
\r\n \r\n {t(\"increaseCardLimitMessage\")}\r\n {/* {t(\"increaseCardLimitMessage2\")} */}\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {t(\"got_it\").toUpperCase()}\r\n \r\n
\r\n {lang === \"ar\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n {t(\"loginRequiredTitle\")}\r\n
\r\n
\r\n \r\n {t(\"loginRequiredMessage\")}\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {t(\"goToLogin\").toUpperCase()}\r\n \r\n
\r\n {lang === \"ar\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n \r\n \r\n {t(\"cancel\").toUpperCase()}\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n \r\n {t(\"securityDepositTitle\")}\r\n \r\n
\r\n
\r\n \r\n {t(\"securityDepositMessageP1\")}{\" \"}\r\n \r\n {MySelf.state.securityDepositWithVat}\r\n {t(\"SAR\")}.\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n {t(\"securityDepositMessageP2\")}{\" \"}\r\n \r\n {t(\"securityDepositMessageP3\")}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {t(\"securityDepositMessageP4\")}{\" \"}\r\n \r\n \r\n {t(\"securityDepositMessageP5\")}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {t(\"accepted\").toUpperCase()}\r\n \r\n
\r\n {lang === \"ar\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n \r\n \r\n {t(\"cancel\").toUpperCase()}\r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n {t(\"placeYourBidTitle\")}\r\n
\r\n
\r\n \r\n {t(\"minimumBidIncrement\")}\r\n {this.state.minimumDeposit}\r\n {t(\"SAR\")}\r\n \r\n
\r\n
\r\n \r\n {details[\"currentBidsCount\"] === 0\r\n ? t(\"startingBid\")\r\n : t(\"heighestBid\")}\r\n {MySelf.state.heighestBid}\r\n {t(\"SAR\")}\r\n \r\n
\r\n
\r\n \r\n {t(\"placeYourBidMessage\")}{\" \"}\r\n \r\n
\r\n \r\n {t(\"moreDetailsRAQI\")}\r\n \r\n
\r\n
\r\n {bidIncrements.map((bid: any, index: any) => {\r\n return (\r\n MySelf.selectedBid(e, index)}\r\n >\r\n {lang === \"ar\" ? bid.value_ar : bid.value_en}\r\n \r\n );\r\n })}\r\n
\r\n
\r\n \r\n {this.state.popupErrorMsg}\r\n \r\n \r\n {t(\"total\")}\r\n {totalBid}\r\n {t(\"SAR\")}\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n {t(\"submit\").toUpperCase()}\r\n \r\n
\r\n {lang === \"ar\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n \r\n \r\n {t(\"cancel\").toUpperCase()}\r\n \r\n \r\n \r\n \r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n {details[\"vanityNumber\"]}\r\n \r\n
\r\n
\r\n \r\n {lang === \"ar\"\r\n ? auctionVanity.value_ar\r\n : auctionVanity.value_en.toUpperCase()}\r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n {t(\"itemNotAvailable\")}\r\n \r\n
\r\n
\r\n \r\n {t(\"seeCoolNumbers\").toUpperCase()} \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n {t(\"bids\")}\r\n
\r\n
\r\n \r\n {this.getCurrentBidsCount(details[\"currentBidsCount\"])}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {details[\"currentBidsCount\"] === 0\r\n ? t(\"startingFrom\")\r\n : t(\"currentBid\")}\r\n \r\n
\r\n
\r\n \r\n {this.getCurrentBidValue(\r\n details[\"currentBidsCount\"] === 0\r\n ? details[\"startPrice\"]\r\n : details[\"currentBidValue\"]\r\n )}\r\n {isAuctionAvailable ? (\r\n {t(\"SAR\")}\r\n ) : (\r\n \"\"\r\n )}\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n {t(\"endingDetails\")}{\" \"}\r\n \r\n
\r\n
\r\n \r\n {this.getSecondsInDhms(this.state.bidTimeRemaining)}\r\n \r\n
\r\n
\r\n \r\n {t(\"closingDate\")} {this.getBidClosingDate()}\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {t(\"auctionEnded\")}\r\n \r\n
\r\n
\r\n \r\n \r\n {this.getBidStatus(details[\"bidStatus\"], details[\"remainingPaymentStatus\"])}\r\n \r\n\r\n
\r\n \r\n {t(\"paymentInstruction\")}{details[\"remainingPaymentExpiry\"]}\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n {!MySelf.state.isAuctionEnded ? t(\"minimumBid\") : t(\"amountLeftToPay\")}\r\n \r\n
\r\n \r\n {!MySelf.state.isAuctionEnded ? this.state.minimumDeposit : this.state.remainingPayment}\r\n {t(\"SAR\")}\r\n \r\n
\r\n MySelf.onBidNowPress(e) : (e) => MySelf.onPayNowPress(e) }\r\n >\r\n
\r\n {this.getBidButtonLabel(details[\"bidStatus\"])}\r\n
\r\n {lang === \"ar\" ? (\r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n {t(\"shareAuction\")}\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n MySelf.onPhoneBookIconPress(e)}\r\n >\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\nexport default withTranslation()(Header);","export const FILTER_LATEST = \"Latest\";\r\nexport const FILTER_ENDING = \"Ending\";\r\nexport const FILTER_HIGHEST_BIDS = \"HeighetBids\";\r\nexport const FILTER_LOWEST_BIDS = \"LowestBids\";\r\n\r\nexport const BID_STATUS_HIGH = \"High\";\r\nexport const BID_STATUS_OUTBID = \"OutBid\";\r\nexport const BID_STATUS_NO_BIDS = \"\";\r\nexport const BID_STATUS_NOT_LOGGEDIN = \"\";\r\n\r\nexport const AUCTION_STATUS_ACTIVE = \"Active\";\r\nexport const AUCTION_STATUS_INACTIVE = \"Inactive\";\r\nexport const AUCTION_STATUS_END = \"End\";\r\nexport const AUCTION_STATUS_CLOSE = \"CLose\";\r\n\r\nexport const PAYMENT_STATUS_NOT_WINNER = \"\";\r\nexport const PAYMENT_STATUS_PAID = \"PAID\";\r\nexport const PAYMENT_STATUS_NOTPAID = \"NOTPAID\";\r\nexport const PAYMENT_STATUS_EXPIRED = \"EXPIRED\";\r\n\r\nexport const REFUND_STATUS_NOT_LOSER = \"\";\r\nexport const REFUND_STATUS_REFUNDED = \"REFUNDED\";\r\nexport const REFUND_STATUS_FAILED = \"FAILED\";\r\nexport const REFUND_STATUS_INPROGRESS = \"INPROGRESS\";","const win: any = window;\r\nconst lang = win[\"lang\"];\r\n\r\nconst getTimeRemainingInSec = (dateTime: string) => {\r\n var auctionEndDate = convertFromStringToDate(dateTime);\r\n var currentDate = new Date();\r\n var utc_offset = currentDate.getTimezoneOffset();\r\n var ksa_offset = 3*60;\r\n\r\n currentDate.setMinutes(currentDate.getMinutes() + utc_offset);\r\n currentDate.setMinutes(currentDate.getMinutes() + ksa_offset);\r\n var difference = (auctionEndDate.getTime() - currentDate.getTime()) / 1000.0;\r\n return parseInt(String(difference));\r\n};\r\n\r\nconst convertFromStringToDate = (responseDate: any) => {\r\n let dateComponents = responseDate.split(\" \");\r\n let datePieces = dateComponents[0].split(\"-\");\r\n let timePieces = dateComponents[1].split(\":\");\r\n return new Date(\r\n datePieces[2],\r\n datePieces[1] - 1,\r\n datePieces[0],\r\n timePieces[0],\r\n timePieces[1],\r\n timePieces[2]\r\n );\r\n};\r\n\r\nconst convertSecondsToDhms = (seconds: any) => {\r\n let d = 0;\r\n let h = 0;\r\n let m = 0;\r\n let s = 0;\r\n seconds = Number(seconds);\r\n if (seconds > 0) {\r\n d = Math.floor(seconds / (3600 * 24));\r\n h = Math.floor((seconds % (3600 * 24)) / 3600);\r\n m = Math.floor((seconds % 3600) / 60);\r\n s = Math.floor(seconds % 60);\r\n }\r\n\r\n if (lang === \"ar\") {\r\n return (\r\n d + \"يوم \" + h + \"س \" + formatNumber(m) + \"د \" + formatNumber(s) + \"ث\"\r\n );\r\n } else {\r\n return d + \"d \" + h + \"h \" + formatNumber(m) + \"m \" + formatNumber(s) + \"s\";\r\n }\r\n};\r\n\r\nconst formatClosingDate = (dateTime: string) => {\r\n // 25-10-2021 21:22:10 -> Oct 19, 2020 at 12:30\r\n let endDate = dateTime.split(\" \")[0];\r\n let endTime = dateTime.split(\" \")[1];\r\n var months = [\r\n \"Jan\",\r\n \"Feb\",\r\n \"Mar\",\r\n \"Apr\",\r\n \"May\",\r\n \"Jun\",\r\n \"Jul\",\r\n \"Aug\",\r\n \"Sept\",\r\n \"Oct\",\r\n \"Nov\",\r\n \"Dec\",\r\n ];\r\n var months_ar = [\r\n \"يناير\",\r\n \"فبراير\",\r\n \"مارس\",\r\n \"أبريل\",\r\n \"مايو\",\r\n \"يونيو\",\r\n \"يوليو\",\r\n \"أغسطس\",\r\n \"سبتمبر\",\r\n \"أكتوبر\",\r\n \"نوفمبر\",\r\n \"ديسمبر\",\r\n ];\r\n\r\n if (lang === \"ar\") {\r\n return (\r\n months_ar[Number(endDate.split(\"-\")[1]) - 1] +\r\n \" \" +\r\n Number(endDate.split(\"-\")[0]) +\r\n \" ,\" +\r\n Number(endDate.split(\"-\")[2]) +\r\n \" الساعة \" +\r\n formatNumber(endTime.split(\":\")[0]) +\r\n \":\" +\r\n formatNumber(endTime.split(\":\")[1])\r\n );\r\n } else {\r\n return (\r\n months[Number(endDate.split(\"-\")[1]) - 1] +\r\n \" \" +\r\n Number(endDate.split(\"-\")[0]) +\r\n \", \" +\r\n Number(endDate.split(\"-\")[2]) +\r\n \" at \" +\r\n formatNumber(endTime.split(\":\")[0]) +\r\n \":\" +\r\n formatNumber(endTime.split(\":\")[1])\r\n );\r\n }\r\n};\r\n\r\nconst formatNumber = (num: any): string => {\r\n let numFormat = num;\r\n if (Number(num) < 10) {\r\n numFormat = \"0\" + Number(num);\r\n }\r\n return numFormat;\r\n};\r\n\r\nexport { convertSecondsToDhms, getTimeRemainingInSec, convertFromStringToDate, formatClosingDate };\r\n","export default __webpack_public_path__ + \"static/media/ArrowRight.374f67d1.svg\";","export default __webpack_public_path__ + \"static/media/ArrowLeft.838e5c0a.svg\";","import { Component } from \"react\";\r\nimport { withTranslation } from \"react-i18next\";\r\nimport { Card } from 'antd/lib/';\r\nimport Text from 'antd/lib/typography/Text';\r\nimport { ArrowLeftOutlined, ArrowRightOutlined } from '@ant-design/icons';\r\nimport ArrowRight from '../../../imgs/ArrowRight.svg';\r\nimport ArrowLeft from '../../../imgs/ArrowLeft.svg';\r\nimport { getAuctionDetails } from \"../../../api\"\r\nimport { convertSecondsToDhms, getTimeRemainingInSec} from \"../../../utils/Utils\";\r\nimport * as Constant from '../../../utils/Constants';\r\nimport \"./AuctionCard.css\";\r\nimport AuctionsContext from \"../../../context/AuctionsContext\";\r\n\r\nconst win: any = window;\r\nconst lang = win[\"lang\"];\r\nvar isLoggedIn = win[\"isLoggedIn\"] === \"true\";\r\nconst serverURL = win[\"base_portal_url\"].includes(\"mobily.com.sa\") ? 'https://www.mobily.com.sa' : win[\"base_portal_url\"]; //win[\"base_portal_url\"];\r\n\r\nclass AuctionCard extends Component {\r\n static contextType = AuctionsContext;\r\n\r\n constructor(props: any) {\r\n super(props);\r\n this.state = {\r\n loading: true,\r\n intervalId: -1,\r\n auctionId: this.props.auctionId,\r\n vanityNumber: this.props.vanityNumber,\r\n currentBidValue: this.props.currentBidValue,\r\n startPrice: this.props.startPrice,\r\n securityDeposit: this.props.securityDeposit,\r\n auctionVanity: this.props.auctionVanity,\r\n currentBidsCount: this.props.currentBidsCount,\r\n auctionEndDate: this.props.auctionEndDate,\r\n bidStatus: this.props.bidStatus,\r\n remainingPaymentStatus: this.props.remainingPaymentStatus,\r\n sdRefundStatus: this.props.sdRefundStatus,\r\n bidTimeRemaining: getTimeRemainingInSec(this.props.auctionEndDate),\r\n isAuctionEnded: getTimeRemainingInSec(this.props.auctionEndDate) <= 0,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n var intervalId = setInterval(this.countdownTimer, 1000);\r\n this.setState({\r\n loading: false,\r\n intervalId: intervalId,\r\n });\r\n }\r\n\r\n componentDidUpdate() {\r\n //console.log(this.context.auctionCId + ' < card > ' + this.state.auctionId);\r\n if(this.context.auctionCId === this.state.auctionId && !this.state.loading) {\r\n this.context.auctionCId = \"\";\r\n this.updateAuctionCard();\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n clearInterval(this.state.intervalId);\r\n }\r\n\r\n countdownTimer = () => {\r\n if(this.state.bidTimeRemaining > 0) {\r\n this.setState({ bidTimeRemaining: this.state.bidTimeRemaining - 1 });\r\n } else {\r\n this.setState({\r\n isAuctionEnded: true,\r\n });\r\n clearInterval(this.state.intervalId);\r\n }\r\n }\r\n\r\n onViewDetailsPress = () => {\r\n let p = 'myportal';\r\n if(!isLoggedIn) {\r\n p = 'portal';\r\n }\r\n let url = serverURL+'/wps/'+p+'/web/auctions/details';\r\n console.log('view details url > '+url);\r\n window.location.href= url+'?id='+this.state['auctionId'];\r\n }\r\n\r\n getBidStatus = (status: String, paymentStatus: String) => {\r\n let message = \"\";\r\n const { t } = this.props;\r\n\r\n if(!this.state.isAuctionEnded) {\r\n if(status === Constant.BID_STATUS_HIGH) {\r\n message = t(\"bidStatusHigh\"); //'You are the heighest bidder!';\r\n }\r\n if(status === Constant.BID_STATUS_OUTBID) {\r\n message = t(\"bidStatusOutBid\"); //'You have been outbidded!';\r\n }\r\n } else {\r\n if(isLoggedIn) {\r\n if (paymentStatus === Constant.PAYMENT_STATUS_PAID) {\r\n message = t(\"numberIsYours\"); //'The number is yours'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_NOTPAID) {\r\n message = t(\"youAreWinner\"); //'You won the auction'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_EXPIRED) {\r\n message = t(\"paymentAllowedDaysPassed\"); //'The payment period has ended.'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_NOT_WINNER) {\r\n message = t(\"youLostAuction\"); //'You lost the auction!'\r\n }\r\n }\r\n }\r\n return message;\r\n }\r\n\r\n getBidStatusColor = (status: String, paymentStatus: String) => {\r\n let color = '#000000';\r\n\r\n if(!this.state.isAuctionEnded) {\r\n if(status === Constant.BID_STATUS_HIGH) {\r\n color = '#00AD70'; //'You are the heighest bidder!';\r\n }\r\n if(status === Constant.BID_STATUS_OUTBID) {\r\n color = '#E29C06'; //'You have been outbidded!';\r\n }\r\n } else {\r\n if(isLoggedIn) {\r\n if (paymentStatus === Constant.PAYMENT_STATUS_PAID) {\r\n color = '#7CB9E8'; //'The number is yours'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_NOTPAID) {\r\n color = '#7CB9E8'; //'You won the auction'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_EXPIRED) {\r\n color = '#FF0000'; //'The payment period has ended.'\r\n } else\r\n if (paymentStatus === Constant.PAYMENT_STATUS_NOT_WINNER) {\r\n color = '#cf0048'; //'You lost the auction!'\r\n }\r\n }\r\n }\r\n return color;\r\n }\r\n\r\n getLooserRefundStatus = (status: String) => {\r\n let message = \"\";\r\n const { t } = this.props;\r\n\r\n if(status === Constant.REFUND_STATUS_INPROGRESS) {\r\n message = t(\"refundInProgress\"); //'REFUND IN PROGRESS';\r\n } else\r\n if(status === Constant.REFUND_STATUS_REFUNDED) {\r\n message = t(\"refunded\"); //'REFUNDED';\r\n } else\r\n if(status === Constant.REFUND_STATUS_FAILED) {\r\n message = t(\"failed\"); //'FAILED';\r\n }\r\n return message;\r\n }\r\n\r\n getLooserRefundStatusColor = (status: String) => {\r\n let color = '#000000';\r\n if(status === Constant.REFUND_STATUS_INPROGRESS) {\r\n color = '#28426F'; //'REFUND IN PROGRESS';\r\n } else\r\n if(status === Constant.REFUND_STATUS_REFUNDED) {\r\n color = '#63C7C6'; //'REFUNDED';\r\n } else\r\n if(status === Constant.REFUND_STATUS_FAILED) {\r\n color = '#cf0048'; //'FAILED';\r\n }\r\n return color;\r\n }\r\n\r\n getBidDetailsLabel = (status: String) => {\r\n let label = \"\";\r\n const { t } = this.props;\r\n if(!this.state.isAuctionEnded) {\r\n if(this.state.currentBidsCount === 0) {\r\n label = t(\"startingFrom\");\r\n } else {\r\n label = t(\"currentBid\");\r\n }\r\n } else {\r\n if(isLoggedIn && !status) {\r\n label = t(\"yourDeposit\");\r\n } else {\r\n label = t(\"currentBid\");\r\n }\r\n }\r\n return label;\r\n }\r\n\r\n getBidValue = (status: String) => {\r\n let bidValue = 0;\r\n if(!this.state.isAuctionEnded) {\r\n if(this.state.currentBidsCount === 0) {\r\n bidValue = this.state.startPrice;\r\n } else {\r\n bidValue = this.state.currentBidValue;\r\n }\r\n } else {\r\n if(isLoggedIn && !status) {\r\n bidValue = this.state.securityDeposit;\r\n } else {\r\n bidValue = this.state.currentBidValue;\r\n }\r\n }\r\n return bidValue;\r\n }\r\n\r\n getSecondsInDhms = (seconds:any) => {\r\n return (convertSecondsToDhms((seconds > 0) ? seconds : 0));\r\n }\r\n\r\n updateAuctionCard = () => {\r\n console.log('--------- card update --------');\r\n this.setState({\r\n loading: true,\r\n });\r\n getAuctionDetails(this.state.auctionId).then((response: any) => {\r\n if (response && response.data) {\r\n this.setState({\r\n loading: false,\r\n startPrice: response.data.data['startPrice'],\r\n currentBidValue: response.data.data['currentBidValue'],\r\n currentBidsCount: response.data.data['currentBidsCount'],\r\n securityDeposit: response.data.data['securityDeposit'],\r\n bidStatus: response.data.data['bidStatus'],\r\n sdRefundStatus: response.data.data['sdRefundStatus'],\r\n remainingPaymentStatus: response.data.data['remainingPaymentStatus'],\r\n isAuctionEnded: getTimeRemainingInSec(response.data.data[\"auctionEndDate\"]) <= 0,\r\n });\r\n }\r\n });\r\n }\r\n\r\n render() {\r\n const { t } = this.props;\r\n return (\r\n <>\r\n \r\n
\r\n {this.state.vanityNumber}\r\n
\r\n {this.state.auctionVanity.toUpperCase()}\r\n
\r\n
\r\n
\r\n {this.getBidStatus(this.state.bidStatus, this.state.remainingPaymentStatus)}\r\n
\r\n
\r\n
\r\n
\r\n {this.getBidDetailsLabel(this.state.remainingPaymentStatus)}
\r\n {this.getBidValue(this.state.remainingPaymentStatus)} \r\n {t(\"SAR\")}\r\n \r\n
\r\n
\r\n \r\n {this.getLooserRefundStatus(this.state.sdRefundStatus)}\r\n \r\n
\r\n
\r\n
\r\n
\r\n {t(\"endingIn\")}
\r\n {this.getSecondsInDhms(this.state.bidTimeRemaining)}\r\n
\r\n {this.state.currentBidsCount}\r\n {t(\"bids\")}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {t(\"auctionEnded\")}\r\n \r\n
\r\n
\r\n
{t(\"viewDetails\").toUpperCase()}
\r\n {\r\n (lang === \"ar\")? \"left\" : \"right\"\r\n }\r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\nexport default withTranslation()(AuctionCard);","import React, { Component } from \"react\";\r\nimport { withTranslation } from \"react-i18next\";\r\nimport AuctionCard from \"./auctioncard/AuctionCard\"\r\nimport * as Constant from '../../utils/Constants';\r\nimport { getAuctions, getAuctionVanityTypes } from \"../../api\";\r\nimport Text from 'antd/lib/typography/Text';\r\nimport Button from 'antd/lib/button';\r\nimport { Row, Col } from 'antd/lib/grid';\r\nimport { Spin, message } from \"antd\";\r\nimport \"./Auctions.css\";\r\n\r\nvar MySelf: Auctions;\r\nconst win: any = window;\r\nconst lang = win[\"lang\"];\r\n\r\nclass Auctions extends Component {\r\n\r\n constructor(props: any) {\r\n super(props);\r\n MySelf = this;\r\n this.state = {\r\n loadingAuctions: true,\r\n loadingAuctionVanityTypes: true,\r\n sortFilter:\"\",\r\n data: [],\r\n auctionVanityData: [],\r\n isAuctionsAvailable: false,\r\n isLoggedIn : this.props.isLoggedIn,\r\n auctionsTitle: this.props.title,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n MySelf.getAuctionsWithFilter(null, Constant.FILTER_LATEST);\r\n MySelf.getAuctionVanityTypes();\r\n }\r\n \r\n getAuctionsWithFilter = (event:any, filter:string) => {\r\n MySelf.setState({\r\n loadingAuctions: true,\r\n });\r\n if(filter !== \"\") {\r\n getAuctions(filter).then((response: any) => {\r\n if (response && response.data) {\r\n if(response.data.status) {\r\n if(response.data.status.code === \"MAPI-8001\") {\r\n MySelf.setState({\r\n loadingAuctions: false,\r\n isAuctionsAvailable: false,\r\n });\r\n } else {\r\n message.error(lang === \"ar\"\r\n ? response.data.status.arabicDetail\r\n : response.data.status.englishDetail);\r\n }\r\n } else {\r\n MySelf.setState({\r\n loadingAuctions: false,\r\n sortFilter:filter,\r\n isAuctionsAvailable: true,\r\n data: response.data,\r\n //hold the list of auction cards displayed based on sorting\r\n });\r\n }\r\n }\r\n });\r\n }\r\n if(event != null)\r\n event.preventDefault();\r\n }\r\n\r\n getAuctionVanityTypes = () => {\r\n MySelf.setState({\r\n loadingAuctionVanityTypes: true,\r\n });\r\n getAuctionVanityTypes().then((response: any) => {\r\n if (response && response.data) {\r\n MySelf.setState({\r\n loadingAuctionVanityTypes: false,\r\n auctionVanityData: response.data.data,\r\n });\r\n }\r\n })\r\n }\r\n\r\n render() {\r\n if (MySelf.state.loadingAuctions || MySelf.state.loadingAuctionVanityTypes) {\r\n return ;\r\n }\r\n const { t } = this.props;\r\n const isDetails = (window.location.href).indexOf('details') > -1;\r\n var auctions = [];\r\n if(MySelf.state.data.data !== undefined) {\r\n auctions = MySelf.state.data.data.auctions;\r\n }\r\n if(isDetails) {\r\n let detailAuctionId = new URLSearchParams(window.location.search).get('id');\r\n auctions = auctions.filter((auction:any) => {\r\n return(auction.auctionId !== detailAuctionId);\r\n })\r\n }\r\n\r\n if(auctions.length > 0 && MySelf.state.isAuctionsAvailable) {\r\n return (\r\n
\r\n
\r\n
\r\n {MySelf.state.auctionsTitle}\r\n
\r\n
\r\n
\r\n {t(\"sortBy\").toUpperCase()}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n {/* {t(\"vanityNumberNote\")} */}\r\n
\r\n \r\n {\r\n auctions.map((auction:any) => {\r\n let auctionVanity = MySelf.state.auctionVanityData['vanity_types'].filter((vanity:any) => { return(vanity.value === auction.auctionVanity) })[0];\r\n return(\r\n \r\n \r\n \r\n \r\n )})\r\n }\r\n \r\n
\r\n
\r\n );\r\n } else {\r\n return (\r\n !isDetails ? \r\n (
\r\n {t(\"oops\")}
\r\n {t(\"noAuctions\")}\r\n
) : null\r\n )}\r\n \r\n }\r\n}\r\nexport default withTranslation()(Auctions);","import React, { Component } from \"react\";\r\nimport { withTranslation } from \"react-i18next\";\r\nimport AuctionCard from \"./auctioncard/AuctionCard\"\r\nimport { getAuctions, getAuctionVanityTypes } from \"../../api\";\r\nimport Text from 'antd/lib/typography/Text';\r\nimport { Row, Col } from 'antd/lib/grid';\r\nimport { Spin } from \"antd\";\r\nimport \"./Auctions.css\";\r\nimport AuctionsContext from \"../../context/AuctionsContext\";\r\n\r\nvar MySelf: MyAuctions;\r\nconst win: any = window;\r\nconst lang = win[\"lang\"];\r\n\r\nclass MyAuctions extends Component {\r\n static contextType = AuctionsContext;\r\n\r\n constructor(props: any) {\r\n super(props);\r\n MySelf = this;\r\n this.state = {\r\n loadingAuctions: true,\r\n loadingAuctionVanityTypes: true,\r\n data: [],\r\n auctionVanityData: [],\r\n isLoggedIn : this.props.isLoggedIn,\r\n auctionsTitle: this.props.title,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n MySelf.getMyAuctions();\r\n MySelf.getAuctionVanityTypes();\r\n }\r\n\r\n componentDidUpdate() {\r\n console.log('--------- myauctions update --------');\r\n if(this.context.auctionMBId !== \"\") {\r\n let updatedMyAuction : any = MySelf.state.data?.data?.myAuctions?.filter((myauctions:any) => {\r\n return myauctions.auctionId === this.context.auctionMBId\r\n })\r\n this.context.auctionMBId = \"\";\r\n if(updatedMyAuction.length === 0 || MySelf.state.data.length === 0) {\r\n this.getMyAuctions();\r\n }\r\n }\r\n }\r\n\r\n getMyAuctions = () => {\r\n MySelf.setState({\r\n loadingAuctions: true,\r\n });\r\n getAuctions().then((response: any) => {\r\n if (response && response.data) {\r\n MySelf.setState({\r\n loadingAuctions: false,\r\n data: response.data,\r\n });\r\n }\r\n });\r\n }\r\n\r\n getAuctionVanityTypes = () => {\r\n MySelf.setState({\r\n loadingAuctionVanityTypes: true,\r\n });\r\n getAuctionVanityTypes().then((response: any) => {\r\n if (response && response.data) {\r\n MySelf.setState({\r\n loadingAuctionVanityTypes: false,\r\n auctionVanityData: response.data.data,\r\n });\r\n }\r\n })\r\n }\r\n\r\n render() {\r\n if (MySelf.state.loadingAuctions || MySelf.state.loadingAuctionVanityTypes) {\r\n return ;\r\n }\r\n var auctions = [];\r\n if(MySelf.state.data.data !== undefined) {\r\n auctions = MySelf.state.data.data.myAuctions;\r\n }\r\n\r\n if(auctions.length > 0) {\r\n return (\r\n
\r\n
\r\n {MySelf.state.auctionsTitle}\r\n
\r\n
\r\n \r\n {\r\n auctions.map((auction:any) => {\r\n let auctionVanity = MySelf.state.auctionVanityData['vanity_types'].filter((vanity:any) => { return(vanity.value === auction.auctionVanity) })[0];\r\n return(\r\n \r\n \r\n \r\n \r\n )})\r\n }\r\n \r\n
\r\n
\r\n );\r\n } else {\r\n return
\r\n }\r\n }\r\n}\r\nexport default withTranslation()(MyAuctions);","import { Component } from \"react\";\r\nimport SockJsClient from \"react-stomp\";\r\nimport Stomp from 'stompjs';\r\n\r\nconst win: any = window;\r\nconst apiBaseURL = win[\"base_api_url\"];\r\n//var token = win[\"clientToken\"];\r\nlet client : any;\r\n\r\nclass WebSocketClient extends Component {\r\n\r\n constructor(props: any) {\r\n super(props);\r\n this.state = {\r\n socketName: this.props.socketName,\r\n onMesageRecieved: this.props.onMesageRecieved,\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n // socket connection\r\n //OPS-763 this.connectToWebSocket();\r\n }\r\n\r\n connectToWebSocket = () => {\r\n console.log(' ------------- connectToWebSocket ---------------');\r\n //let url = 'wss://api.mobily.com.sa/api/auctionsocket/v1/auctionws';\r\n // let url = '';\r\n // if(apiBaseURL.includes(\"mobily.com.sa\")) {\r\n // url = 'wss://api.mobily.com.sa/api/auctionsocket/v1/auctionws'\r\n // } else {\r\n // url = apiBaseURL.replace(\"http\",\"ws\") + '/auctionsocket/v1/auctionws'\r\n // }\r\n\r\n let url = apiBaseURL.replace(\"http\",\"ws\") + '/api/auctionsocket/v1/auctionws';\r\n console.log('socket url ' > url);\r\n client = Stomp.client(url);\r\n client.connect({}, this.connect_callback, this.error_callback);\r\n client.debug = function(str) {\r\n // append the debug log to a #debug div somewhere in the page using JQuery:\r\n console.log(str);\r\n };\r\n }\r\n\r\n connect_callback = () => {\r\n // called back after the client is connected and authenticated to the STOMP server\r\n console.log('Connected');\r\n client.subscribe(\"/topic/auctionUpdates\", this.message_recieved_callback);\r\n };\r\n\r\n error_callback = (error:any) => {\r\n // display the error's message header:\r\n console.log('Error');\r\n console.log(error);\r\n this.connectToWebSocket();\r\n };\r\n\r\n message_recieved_callback = (message:any) => {\r\n // called when the client receives a STOMP message from the server\r\n if (message.body) {\r\n console.log(\"got message with body \" + message.body);\r\n this.state.onMesageRecieved(message.body)\r\n } else {\r\n console.log(\"got empty message\");\r\n }\r\n };\r\n\r\n onConnectionFailed = (e) => {\r\n console.log('SOCKET ERROR > ' + e);\r\n }\r\n\r\n render() {\r\n let url = apiBaseURL + '/auctionsocket/v1/auctionws';\r\n let topics = ['/topic/auctionUpdates'];\r\n\r\n //url = \"http://localhost:8081/websocket-auctions\";\r\n //topics = ['/topic/updatedBidStatus'];\r\n \r\n return(\r\n <>\r\n /*\r\n {console.log(\"Connected\")}}\r\n onDisconnect = {() => {console.log(\"Disconnected\")}}\r\n autoReconnect = {true}\r\n onConnectFailure = {(e) => this.onConnectionFailed(e)}\r\n onMessage = {(msg) => { this.state.onMesageRecieved(msg)}}\r\n />\r\n */\r\n )\r\n }\r\n\r\n}\r\n\r\nexport default WebSocketClient;\r\n\r\n","export default __webpack_public_path__ + \"static/media/ArrowRightBlue.39ee36be.svg\";","import { useTranslation } from \"react-i18next\";\r\nimport ArrowRightBlue from \"../../imgs/ArrowRightBlue.svg\";\r\nimport \"./Questions.css\";\r\n\r\nconst Questions = () => {\r\n const { t } = useTranslation();\r\n const win: any = window;\r\n const serverURL = win[\"base_portal_url\"];\r\n const apiBaseURL = win[\"base_api_url\"];\r\n const FAQ_URL = \"/wps/portal/web/auctions/faq\";\r\n const termsAndConditions_URL =\r\n \"/wps/portal/web/auctions/terms?termsUrl=\" +\r\n apiBaseURL +\r\n \"/utility/v1/terms?module=110\";\r\n\r\n return (\r\n
\r\n
\r\n
{t(\"questionsTitle\")}
\r\n \r\n {t(\"faq\")}\r\n \"arrowRightBlue\"\r\n \r\n \r\n {t(\"termsAndConditions\")}\r\n \"arrowRightBlue\"\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default Questions;\r\n","import { Component } from \"react\";\r\nimport { withTranslation } from \"react-i18next\";\r\nimport Header from \"../../components/header/Header\";\r\nimport Auctions from \"../../components/auctions/Auctions\";\r\nimport MyAuctions from \"../../components/auctions/MyAuctions\";\r\nimport Questions from \"../../components/questions/Questions\";\r\nimport \"../../components/auctions/Auctions.css\";\r\n\r\nconst win: any = window;\r\nvar isLoggedIn = win[\"isLoggedIn\"] === \"true\";\r\n\r\nclass DetailsScreen extends Component {\r\n render() {\r\n const { t } = this.props;\r\n return (\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n}\r\nexport default withTranslation()(DetailsScreen);\r\n","import { Component } from \"react\";\r\nimport { withTranslation } from \"react-i18next\";\r\nimport Text from \"antd/lib/typography/Text\";\r\nimport \"./InfoStep.css\";\r\n\r\nclass InfoStep extends Component {\r\n render() {\r\n return (\r\n
\r\n {this.props.stepNumber}\r\n
\r\n {this.props.stepTitle}\r\n {this.props.stepSubTitle}\r\n
\r\n
\r\n );\r\n }\r\n}\r\nexport default withTranslation()(InfoStep);\r\n","import { Component } from \"react\";\r\nimport { withTranslation } from \"react-i18next\";\r\nimport Text from \"antd/lib/typography/Text\";\r\nimport { Row, Col } from \"antd/lib/grid\";\r\nimport InfoStep from \"./infostep/InfoStep\";\r\nimport \"./RegisterInfo.css\";\r\n\r\nclass RegisterInfo extends Component {\r\n render() {\r\n const { t } = this.props;\r\n return (\r\n
\r\n {t(\"registerTitle\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n}\r\nexport default withTranslation()(RegisterInfo);\r\n","import { Component } from \"react\";\r\nimport { withTranslation } from \"react-i18next\";\r\nimport RegisterInfo from \"../../components/registerinfo/RegisterInfo\";\r\nimport Auctions from \"../../components/auctions/Auctions\";\r\nimport MyAuctions from \"../../components/auctions/MyAuctions\";\r\nimport Questions from \"../../components/questions/Questions\";\r\nimport \"./Home.css\";\r\nconst win: any = window;\r\nvar isLoggedIn = win[\"isLoggedIn\"] === \"true\";\r\n\r\nclass HomeScreen extends Component {\r\n render() {\r\n const { t } = this.props;\r\n\r\n if (isLoggedIn) {\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n );\r\n } else {\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n }\r\n}\r\nexport default withTranslation()(HomeScreen);\r\n","import { Component } from \"react\";\r\nimport \"./local\";\r\nimport \"./i18n\";\r\nimport { Spin } from \"antd\";\r\nimport AuctionsContext from \"./context/AuctionsContext\";\r\nimport DetailsScreen from \"./screens/details/Details\";\r\nimport HomeScreen from \"./screens/home/Home\";\r\nimport WebSocketClient from \"./api/WebSocketClient\";\r\n\r\nconst win: any = window;\r\nvar isLoggedIn = win[\"isLoggedIn\"] === \"true\";\r\nconst serverURL = win[\"base_portal_url\"].includes(\"mobily.com.sa\")\r\n ? \"https://www.mobily.com.sa\"\r\n : win[\"base_portal_url\"];\r\nconst loginURL = win[\"loginURL\"]\r\n ? serverURL + win[\"loginURL\"]\r\n : serverURL + \"/wps/portal/web/login-page?account_type=auctions\";\r\nvar isWinner = new URLSearchParams(window.location.search).get('win') != null;\r\n\r\nclass App extends Component {\r\n constructor(props: any) {\r\n super(props);\r\n this.state = {\r\n auctionId: \"\",\r\n event: \"\",\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n const urlParams = new URLSearchParams(window.location.search);\r\n let refId = urlParams.get('refId');\r\n let edata = urlParams.get('edata');\r\n let xcoid;\r\n if(edata) {\r\n let decode = window.decodeURIComponent(atob(edata ? edata : \"\"));\r\n let params = JSON.parse(decode);\r\n xcoid = params.xcoid;\r\n }\r\n\r\n if(xcoid) {\r\n localStorage.setItem(\"xCorId\", xcoid);\r\n } else {\r\n let currentDateTime = new Date().toISOString().replace(/-|:|T/gi,'').slice(0,12);\r\n let correlationId = 'PORC_' + currentDateTime + '_' + Math.ceil(Math.random()*100000);\r\n localStorage.setItem(\"xCorId\", correlationId);\r\n }\r\n\r\n if(isWinner) {\r\n if (refId) {\r\n localStorage.setItem(\"refId\", refId);\r\n }\r\n if(!isLoggedIn) {\r\n this.handleLogin();\r\n }\r\n }\r\n }\r\n\r\n handleLogin = () => {\r\n this.setState({ showLoginPopup: false });\r\n //Navigate to login url\r\n let returnUrl = window.location.href.includes(\"myportal\")\r\n ? window.location.href\r\n : window.location.href.replace(\"portal\", \"myportal\");\r\n const newURL: any = loginURL + \"&returnUrl=\" + encodeURI(returnUrl);\r\n console.log(\"Navigate to login url > \" + newURL);\r\n window.location.href = newURL;\r\n };\r\n\r\n onMesageRecieved = (updatemsg: any) => {\r\n console.log(\"--------- socket update --------\");\r\n console.log(updatemsg);\r\n let msg = JSON.parse(updatemsg);\r\n this.setState({\r\n auctionId: msg.auctionId,\r\n event: msg.event,\r\n });\r\n };\r\n\r\n render() {\r\n var isDetails = window.location.href.indexOf(\"details\") > -1;\r\n if (isWinner && !isLoggedIn) {\r\n return ()\r\n } else {\r\n if (isDetails) {\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n } else {\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport default App;\r\n","import { ReportHandler } from 'web-vitals';\r\n\r\nconst reportWebVitals = (onPerfEntry?: ReportHandler) => {\r\n if (onPerfEntry && onPerfEntry instanceof Function) {\r\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\r\n getCLS(onPerfEntry);\r\n getFID(onPerfEntry);\r\n getFCP(onPerfEntry);\r\n getLCP(onPerfEntry);\r\n getTTFB(onPerfEntry);\r\n });\r\n }\r\n};\r\n\r\nexport default reportWebVitals;\r\n","import React, { Component } from \"react\";\r\n\r\nexport default class ErrorBoundary extends Component {\r\n constructor(props: any) {\r\n super(props);\r\n this.state = { hasError: false };\r\n }\r\n\r\n static getDerivedStateFromError(error: any) {\r\n // Update state so the next render will show the fallback UI.\r\n return { hasError: true };\r\n }\r\n\r\n componentDidCatch(error: any, info: any) {\r\n // Display fallback UI\r\n this.setState({ hasError: true });\r\n // You can also log the error to an error reporting service\r\n //logErrorToMyService(error, info);\r\n }\r\n\r\n render() {\r\n if (this.state.hasError) {\r\n // You can render any custom fallback UI\r\n return

Something went wrong.

;\r\n }\r\n return this.props.children;\r\n }\r\n}\r\n","import React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport './index.css';\r\nimport \"./index.scss\";\r\nimport App from './App';\r\nimport reportWebVitals from './reportWebVitals';\r\nimport ErrorBoundary from \"./components/errorboundry\";\r\nimport { DirectionType } from \"antd/lib/config-provider\";\r\nimport { ConfigProvider } from \"antd\";\r\n\r\nconst win: any = window;\r\nlet docDir: DirectionType | undefined = win[\"lang\"] === null || win[\"lang\"] === \"en\" ? \"ltr\" : \"rtl\";\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n// If you want to start measuring performance in your app, pass a function\r\n// to log results (for example: reportWebVitals(console.log))\r\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\r\nreportWebVitals();\r\n"],"sourceRoot":""}