{"version":3,"sources":["App.js","layout/DefaultLayout.js","serviceWorker.js","assets/icons/index.js","assets/icons/sygnet.js","assets/icons/logo.js","assets/icons/logo-negative.js","store.js","index.js","routes.js","components/AppContent.js","components/AppFooter.js","components/header/AppHeaderDropdown.js","components/AppHeader.js","components/AppSidebarNav.js","_nav.js","components/AppSidebar.js"],"names":["loading","className","Login","React","lazy","Register","Page404","Page500","App","alert","setAlert","useState","isAlertOpen","wdNoti","setWdNoti","deNoti","setDeNoti","connection","setConnection","global","BASE_API_URL","process","DepositUnfinishNotify","message","console","log","document","title","parseInt","localStorage","getItem","setItem","WithdrawRequestNotify","useEffect","initialNotiSetting","connect","HubConnectionBuilder","withUrl","skipNegotiation","transport","HttpTransportType","WebSockets","withAutomaticReconnect","build","start","then","r","on","onclose","e","catch","onAlertChange","val","Suspense","fallback","exact","path","name","render","props","onClearWdNoti","onClearDeNoti","volume","src","playing","onEnd","setTimeout","DefaultLayout","history","useHistory","expires","Date","now","async","dataToSend","client_id","grant_type","refresh_token","formBody","key","encodedKey","encodeURIComponent","encodedValue","push","join","loginUrl","result","fetch","method","body","headers","ok","json","access_token","expires_in","RedirectToLoginWhenRefreshTokenExpired","Boolean","window","location","hostname","match","icons","Object","assign","sygnet","logo","logoNegative","cilAlignCenter","cilAlignLeft","cilAlignRight","cilApplicationsSettings","cilArrowBottom","cilArrowRight","cilArrowTop","cilAsterisk","cilBan","cilBasket","cilBell","cilBold","cilBookmark","cilCalculator","cilCalendar","cilCloudDownload","cilChartPie","cilCheck","cilChevronBottom","cilChevronLeft","cilChevronRight","cilChevronTop","cilCircle","cilCheckCircle","cilCode","cilCommentSquare","cilCreditCard","cilCursor","cilCursorMove","cilDrop","cilDollar","cilEnvelopeClosed","cilEnvelopeLetter","cilEnvelopeOpen","cilEuro","cilGlobeAlt","cilGrid","cilFile","cilFullscreen","cilFullscreenExit","cilGraph","cilHome","cilInbox","cilIndentDecrease","cilIndentIncrease","cilInputPower","cilItalic","cilJustifyCenter","cilJustifyLeft","cilLaptop","cilLayers","cilLightbulb","cilList","cilListNumbered","cilListRich","cilLocationPin","cilLockLocked","cilMagnifyingGlass","cilMap","cilMediaPlay","cilMenu","cilMoon","cilNotes","cilOptions","cilPaperclip","cilPaperPlane","cilPencil","cilPeople","cilPhone","cilPrint","cilPuzzle","cilSave","cilScrubber","cilSettings","cilShare","cilShareAll","cilShareBoxed","cilShieldAlt","cilSpeech","cilSpeedometer","cilSpreadsheet","cilStar","cilSun","cilTags","cilTask","cilTrash","cilUnderline","cilUser","cilUserFemale","cilUserFollow","cilUserUnfollow","cilX","cilXCircle","cilWarning","cifUs","cifBr","cifIn","cifFr","cifEs","cifPl","cibSkype","cibFacebook","cibTwitter","cibLinkedin","cibFlickr","cibTumblr","cibXing","cibGithub","cibStackoverflow","cibYoutube","cibDribbble","cibInstagram","cibPinterest","cibVk","cibYahoo","cibBehance","cibReddit","cibVimeo","cibCcMastercard","cibCcVisa","cibCcStripe","cibCcPaypal","cibCcApplePay","cibCcAmex","cibGoogle","initialState","sidebarShow","store","createStore","state","type","rest","ReactDOM","getElementById","navigator","serviceWorker","ready","registration","unregister","SummaryDashboard","ListCustomer","CreateCustomer","ListNewCustomer","EditCustomer","AdminEditCustomer","ListDeposit","ManualDeposit","ListWithdraw","ManualWithdraw","AutoWithdraw","ListClearCredit","WithdrawCredit","ListReturnCredit","AddBonus","ListBonus","routes","component","AppContent","fluid","color","map","route","idx","from","to","memo","AppFooter","AppHeaderDropdown","variant","placement","caret","size","style","cursor","onClick","confirm","removeItem","clear","icon","AppHeader","dispatch","useDispatch","useSelector","marginRight","AppSidebarNav","items","components","CNavGroup","CNavGroupItems","CNavItem","CNavLink","CNavTitle","useLocation","role","navLink","badge","customClassName","text","navItem","item","index","split","includes","Component","NavLink","activeClassName","navGroup","toggler","visible","pathname","startsWith","String","Fragment","_nav","AppSidebar","unfoldable","sidebarUnfoldable","position","selfHiding","onHide","height","navigation"],"mappings":"6KAAA,mHASA,MAAMA,EACJ,qBAAKC,UAAU,mBAAf,SACE,qBAAKA,UAAU,kCAQbC,EAAQC,IAAMC,MAAK,IAAM,iCACzBC,EAAWF,IAAMC,MAAK,IAAM,iCAC5BE,EAAUH,IAAMC,MAAK,IAAM,iCAC3BG,EAAUJ,IAAMC,MAAK,IAAM,iCA6KlBI,IA3KH,KACV,MAAOC,EAAOC,GAAYC,oBAAS,IAC5BC,GAAeD,oBAAS,IACxBE,EAAQC,GAAaH,mBAAS,IAC9BI,EAAQC,GAAaL,mBAAS,IAE9BM,EAAYC,GAAiBP,mBAAS,MAW7CQ,EAAOC,aAAP,UAAyBC,gCAGzB,MAAMC,EAAyBC,IAC7BC,QAAQC,IAAI,2BACZC,SAASC,MAAQJ,EAEjB,IAAIR,EAASa,SAASC,aAAaC,QAAQ,wBAEtCf,GAAoB,GAAVA,GAIbc,aAAaE,QAAQ,sBAAuBhB,EAAS,GACrDA,MAJAc,aAAaE,QAAQ,sBAAuB,GAC5ChB,EAAS,GAMXS,QAAQC,IAAII,aAAaC,QAAQ,wBAEjCd,EAAUD,GACVL,GAAS,IAGLsB,EAAyBT,IAC7BC,QAAQC,IAAI,2BACZC,SAASC,MAAQJ,EAEjB,IAAIV,EAASe,SAASC,aAAaC,QAAQ,yBAEtCjB,GAIHA,IACAgB,aAAaE,QAAQ,uBAAwBlB,KAJ7CgB,aAAaE,QAAQ,uBAAwB,GAC7ClB,EAAS,GAMXW,QAAQC,IAAII,aAAaC,QAAQ,yBACjChB,EAAUD,GACVH,GAAS,IAWXuB,qBAAU,KARiB,MACzB,IAAIpB,EAASgB,aAAaC,QAAQ,wBAC9Bf,EAASc,aAAaC,QAAQ,uBAElChB,EAAUD,GACVG,EAAUD,IAIVmB,GACA,IACE,IAAIC,EACClB,IACHkB,GAAU,IAAIC,KACXC,QAAQlB,EAAOC,aAAe,yBAA0B,CACvDkB,iBAAiB,EACjBC,UAAWC,IAAkBC,aAE9BC,yBACAC,QACHzB,EAAciB,GAEdA,EACGS,QACAC,MAAMC,IACLX,EAAQY,GAAG,kBAAmBzB,GAC9Ba,EAAQY,GAAG,kBAAmBf,GAC9BG,EAAQa,SAASC,IACf/B,EAAc,MAEdJ,EAAU,GACVE,EAAU,SAGbkC,OAAOD,GAAMzB,QAAQC,IAAIwB,MAE9B,MAAOA,GACPzB,QAAQC,IAAIwB,GAGd,MAAO,KACLzB,QAAQC,IAAI,mBAOb,IAUH,MAAM0B,EAAiBC,IACrB5B,QAAQC,IAAI,iBACZf,GAAS,IAGX,OACE,qCACE,cAAC,IAAD,UACE,cAAC,IAAM2C,SAAP,CAAgBC,SAAUtD,EAA1B,SACE,eAAC,IAAD,WACE,cAAC,IAAD,CAAOuD,OAAK,EAACC,KAAK,SAASC,KAAK,aAAaC,OAASC,GAAU,cAACzD,EAAD,IAAWyD,MAC3E,cAAC,IAAD,CACEJ,OAAK,EACLC,KAAK,YACLC,KAAK,gBACLC,OAASC,GAAU,cAACtD,EAAD,IAAcsD,MAEnC,cAAC,IAAD,CAAOJ,OAAK,EAACC,KAAK,OAAOC,KAAK,WAAWC,OAASC,GAAU,cAACrD,EAAD,IAAaqD,MACzE,cAAC,IAAD,CAAOJ,OAAK,EAACC,KAAK,OAAOC,KAAK,WAAWC,OAASC,GAAU,cAACpD,EAAD,IAAaoD,MACzE,cAAC,IAAD,CACEH,KAAK,IACLC,KAAK,OACLC,OAASC,GACP,cAAC,IAAD,IACMA,EACJR,cAAeA,EACftC,OAAQe,SAASf,GACjBE,OAAQa,SAASb,GACjB6C,cAAe,KACb9C,EAAU,IAEZ+C,cAAe,KACb7C,EAAU,eAQxB,cAAC,IAAD,CACE8C,OAAQ,EACRC,IAAI,+BACJC,QAASvD,EACTwD,MAAO,KACLC,YAAW,QAER,c,oDC5Lb,mEAkMeC,IAzLQR,IAOrBnC,QAAQC,IAAIkC,GACZ,MAAMS,EAAUC,cAuIhB,OA3FApC,qBAAU,KACR,IAAIqC,EAAUzC,aAAaC,QAAQ,WA4BnC,OA3BIyC,KAAKC,MAAQF,EAAU,GACzB9C,QAAQC,IAAI,iBA9C+BgD,WAC7C,IACE,IAEIC,EAAa,CACfC,UAAW,WACXC,WAAY,gBACZC,cALkBhD,aAAaC,QAAQ,kBAQrCgD,EAAW,GACf,IAAK,IAAIC,KAAOL,EAAY,CAC1B,IAAIM,EAAaC,mBAAmBF,GAChCG,EAAeD,mBAAmBP,EAAWK,IACjDD,EAASK,KAAKH,EAAa,IAAME,GAEnCJ,EAAWA,EAASM,KAAK,KAEzB,IAAIC,EAAWlE,EAAOC,aAAe,cAEjCkE,QAAeC,MAAMF,EAAU,CACjCG,OAAQ,OACRC,KAAMX,EACNY,QAAS,CACP,eAAgB,qDAIpB,GAAIJ,EAAOK,GAAI,CACbnE,QAAQC,IAAI,0CACZ,IAAImE,QAAaN,EAAOM,OAGxB,OAFA/D,aAAaE,QAAQ,eAAgB6D,EAAKC,cAC1ChE,aAAaE,QAAQ,UAAWwC,KAAKC,MAA0B,IAAlBoB,EAAKE,aAC3C,EAEPtE,QAAQC,IAAI,4BACZ2C,EAAQe,KAAK,UAEf,SACA3D,QAAQC,IAAI,4BACZ2C,EAAQe,KAAK,YAObY,IAEAvE,QAAQC,IAAI,qBAuBP,SAGN,IA4DD,gCAGE,cAAC,IAAD,IACA,sBAAKxB,UAAU,iDAAf,UACE,cAAC,IAAD,CACEY,OAAQ8C,EAAM9C,OACdE,OAAQ4C,EAAM5C,OACdoC,cAAeQ,EAAMR,cACrBS,cAAeD,EAAMC,cACrBC,cAAeF,EAAME,gBAMvB,qBAAK5D,UAAU,wBAAf,SAQE,cAAC,IAAD,MAEF,cAAC,IAAD,a,6iCCzKY+F,QACW,cAA7BC,OAAOC,SAASC,UAEe,UAA7BF,OAAOC,SAASC,UAEhBF,OAAOC,SAASC,SAASC,MAAM,2D,wrCCkH5B,MAAMC,GAAQC,OAAOC,OAC1B,GACA,CACEC,OCpIkB,CACpB,UADoB,w7BDqIlBC,KErIgB,CAClB,UADkB,owNFsIhBC,aGtIwB,CAC1B,UAD0B,2wNHwI1B,CACEC,mBACAC,iBACAC,kBACAC,4BACAC,mBACAC,kBACAC,gBACAC,gBACAC,WACAC,cACAC,YACAC,YACAC,gBACAC,kBACAC,gBACAC,sBACAC,iBACAC,cACAC,sBACAC,oBACAC,qBACAC,mBACAC,eACAC,oBACAC,aACAC,sBACAC,mBACAC,eACAC,mBACAC,aACAC,eACAC,uBACAC,uBACAC,qBACAC,aACAC,iBACAC,aACAC,aACAC,mBACAC,uBACAC,cACAC,aACAC,cACAC,uBACAC,uBACAC,mBACAC,eACAC,sBACAC,oBACAC,eACAC,eACAC,kBACAC,aACAC,qBACAC,iBACAC,oBACAC,mBACAC,wBACAC,YACAC,kBACAC,aACAC,aACAC,cACAC,gBACAC,kBACAC,mBACAC,eACAC,eACAC,cACAC,cACAC,eACAC,aACAC,iBACAC,iBACAC,cACAC,iBACAC,mBACAC,kBACAC,eACAC,oBACAC,oBACAC,aACAC,YACAC,aACAC,aACAC,cACAC,kBACAC,aACAC,mBACAC,mBACAC,qBACAC,UACAC,gBACAC,iBAEF,CACEC,UACAC,UACAC,UACAC,UACAC,UACAC,WAEF,CACEC,aACAC,gBACAC,eACAC,gBACAC,cACAC,cACAC,YACAC,cACAC,qBACAC,eACAC,gBACAC,iBACAC,iBACAC,UACAC,aACAC,eACAC,cACAC,aACAC,oBACAC,cACAC,gBACAC,gBACAC,kBACAC,cACAC,gB,uBIvQJ,MAAMC,GAAe,CACnBC,aAAa,GAaAC,OADDC,cATM,CAACC,EAAQJ,IAAgBK,UAASC,KAE7C,QADCD,EAEG,IAAKD,KAAUE,GAEfF,I,QCCbzO,IAAMkG,MAAQA,GAEd0I,IAASrL,OACP,eAAC,KAAD,CAAUgL,MAAOA,GAAjB,SACE,eAAClO,EAAA,EAAD,MAEFkB,SAASsN,eAAe,SNmGpB,kBAAmBC,WACrBA,UAAUC,cAAcC,MAAMtM,MAAMuM,IAClCA,EAAaC,iB,oMOhEnB,MACMC,EAAmBnP,IAAMC,MAAK,IAAM,sEAEpCmP,EAAepP,IAAMC,MAAK,IAAM,4EAChCoP,EAAiBrP,IAAMC,MAAK,IAAM,qEAClCqP,EAAkBtP,IAAMC,MAAK,IAAM,4EACnCsP,EAAevP,IAAMC,MAAK,IAAM,qEAChCuP,EAAoBxP,IAAMC,MAAK,IAAM,6EAErCwP,EAAczP,IAAMC,MAAK,IAAM,4EAC/ByP,EAAgB1P,IAAMC,MAAK,IAAM,4EAEjC0P,EAAe3P,IAAMC,MAAK,IAAM,4EAChC2P,EAAiB5P,IAAMC,MAAK,IAChC,4EAGI4P,EAAe7P,IAAMC,MAAK,IAAM,4EAEhC6P,EAAkB9P,IAAMC,MAAK,IACjC,4EAGI8P,EAAiB/P,IAAMC,MAAK,IAChC,4EAGI+P,EAAmBhQ,IAAMC,MAAK,IAClC,4EAGIgQ,EAAWjQ,IAAMC,MAAK,IAAM,4EAC5BiQ,EAAYlQ,IAAMC,MAAK,IAAM,4EAmFpBkQ,MA/EA,CACb,CAAE9M,KAAM,IAAKD,OAAO,EAAME,KAAM,QAChC,CAAED,KAAM,QAASC,KAAM,kCACvB,CAAED,KAAM,uBAAwBD,OAAO,EAAME,KAAM,mDAAY8M,UAL1CpQ,IAAMC,MAAK,IAAM,+DAMtC,CAAEoD,KAAM,YAAaC,KAAM,wCAC3B,CAAED,KAAM,iBAAkBC,KAAM,2EAAgB8M,UAAWhB,GAC3D,CAAE/L,KAAM,iBAAkBC,KAAM,qEAAe8M,UAAWb,GAC1D,CAAElM,KAAM,sBAAuBC,KAAM,sEAAgB8M,UAAWZ,GAChE,CAAEnM,KAAM,eAAgBC,KAAM,wCAC9B,CAAED,KAAM,gBAAiBC,KAAM,2EAAgB8M,UAAWd,GAC1D,CAAEjM,KAAM,mBAAoBC,KAAM,qEAAe8M,UAAWf,GAE5D,CAAEhM,KAAM,gBAAiBC,KAAM,mFAC/B,CAAED,KAAM,6BAA8BC,KAAM,+DAAc8M,UAAWX,GACrE,CAAEpM,KAAM,+BAAgCC,KAAM,qDAAmB8M,UAAWV,GAC5E,CAAErM,KAAM,8BAA+BC,KAAM,+DAAc8M,UAAWT,GACtE,CAAEtM,KAAM,gCAAiCC,KAAM,qDAAmB8M,UAAWR,GAC7E,CAAEvM,KAAM,8BAA+BC,KAAM,mDAAiB8M,UAAWP,GACzE,CAAExM,KAAM,6BAA8BC,KAAM,qHAAuB8M,UAAWN,GAC9E,CAAEzM,KAAM,gCAAiCC,KAAM,yDAAa8M,UAAWL,GACvE,CACE1M,KAAM,oCACNC,KAAM,mGACN8M,UAAWJ,GAGb,CAAE3M,KAAM,SAAUC,KAAM,sEACxB,CAAED,KAAM,cAAeC,KAAM,qEAAe8M,UAAWF,GACvD,CAAE7M,KAAM,aAAcC,KAAM,yDAAa8M,UAAWH,GAGpD,CAAE5M,KAAM,qBAAsBC,KAAM,mBAAoB8M,UAAWjB,I,cCnHrE,MAAMkB,EAAa,IAEf,cAAC,IAAD,CAAYC,OAAK,EAAjB,SACE,cAAC,WAAD,CAAUnN,SAAU,cAAC,IAAD,CAAUoN,MAAM,YAApC,SACE,eAAC,IAAD,WACGJ,EAAOK,KAAI,CAACC,EAAOC,IAEhBD,EAAML,WACJ,cAAC,IAAD,CAEE/M,KAAMoN,EAAMpN,KACZD,MAAOqN,EAAMrN,MACbE,KAAMmN,EAAMnN,KACZC,OAASC,GACP,mCACE,cAACiN,EAAML,UAAP,IAAqB5M,OANpBkN,KAab,cAAC,IAAD,CAAUC,KAAK,IAAIC,GAAG,sBAOjB5Q,UAAM6Q,KAAKR,GCjC1B,MAAMS,EAAY,IAEd,eAAC,IAAD,WACE,8BAIE,sBAAMhR,UAAU,OAAhB,+FAEF,qBAAKA,UAAU,eAUNE,UAAM6Q,KAAKC,G,yBC4EXC,MAnFW,KACxB,MAAM9M,EAAUC,cAChB,OACE,eAAC,IAAD,CAAW8M,QAAQ,WAAnB,UACE,cAAC,IAAD,CAAiBC,UAAU,aAAanR,UAAU,OAAOoR,OAAO,EAAhE,SACE,cAAC,IAAD,CAAStN,IAAI,iBAAiBuN,KAAK,SAErC,eAAC,IAAD,CAAerR,UAAU,OAAOmR,UAAU,aAA1C,UACE,cAAC,IAAD,CAAiBnR,UAAU,4BAA3B,qBAqDA,eAAC,IAAD,CAEEsR,MAAO,CAAEC,OAAQ,WACjBC,QAAS,KACHxL,OAAOyL,QAAQ,8GACjB7P,aAAa8P,WAAW,iBACxB9P,aAAa8P,WAAW,gBACxB9P,aAAa8P,WAAW,QACxB9P,aAAa8P,WAAW,YACxB9P,aAAa+P,QACbxN,EAAQe,KAAK,YAVnB,UAcE,cAAC,IAAD,CAAO0M,KAAK,kBAAkB5R,UAAU,SAd1C,qBC0EO6R,MAjIG,EAAG/Q,SAAQF,SAAQsC,gBAAeS,gBAAeC,oBAQjE,MAAMO,EAAUC,cACV0N,EAAWC,cACXvD,EAAcwD,aAAarD,GAAUA,EAAMH,cACjD,OACE,eAAC,IAAD,CAASxO,UAAU,YAAnB,UAEE,eAAC,IAAD,CAAYwQ,OAAK,EAAjB,UACE,cAAC,IAAD,CACExQ,UAAU,OACVwR,QAAS,IAAMM,EAAS,CAAElD,KAAM,MAAOJ,aAAcA,IAFvD,SAIE,cAAC,IAAD,CAAOoD,KAAK,WAAWP,KAAK,SAqC9B,eAAC,IAAD,CAAYrR,UAAU,OAAtB,UACE,eAAC,IAAD,CACEsR,MAAO,CAAEW,YAAa,GACtBxB,MAAM,OACNe,QAAS,KACP5P,aAAaE,QAAQ,uBAAwB,GAE7C6B,IACAQ,EAAQe,KAAK,gCAPjB,yEAWGtE,EAAS,EACR,cAAC,IAAD,CAAQ6P,MAAM,SAASzQ,UAAU,OAAjC,SACGY,IAGH,gCAKJ,eAAC,IAAD,CACE0Q,MAAO,CAAEW,YAAa,GACtBjS,UAAU,QACVyQ,MAAM,OACNe,QAAS,KACP5P,aAAaE,QAAQ,sBAAuB,GAE5C8B,IACAO,EAAQe,KAAK,+BARjB,yEAYGpE,EAAS,EACR,cAAC,IAAD,CAAQ2P,MAAM,SAASzQ,UAAU,OAAjC,SACGc,IAGH,gCAMJ,cAAC,IAAD,CACE0Q,QAAS,KACPtO,GAAc,IAFlB,SAKE,cAAC,IAAD,CAAQmO,KAAM,OAGhB,cAAC,EAAD,UAGJ,cAAC,IAAD,Q,QC9HC,MAAMa,EAAgB,EAAGC,YAC9B,MAAMC,EAAa,CAAEC,cAAWC,mBAAgBC,aAAUC,aAAUC,eAC9DxM,EAAWyM,cACXC,EAAO/Q,aAAaC,QAAQ,QAC5B+Q,EAAU,CAACpP,EAAMoO,EAAMiB,IAEzB,qCACGjB,GAAwB,kBAATA,EAAoB,cAAC,IAAD,CAAOA,KAAMA,EAAMkB,gBAAgB,aAAgBlB,EACtFpO,GAAQA,EACRqP,GACC,cAAC,IAAD,CAAQpC,MAAOoC,EAAMpC,MAAOzQ,UAAU,UAAtC,SACG6S,EAAME,UAOXC,EAAU,CAACC,EAAMC,KACrB,GAAID,EAAKN,OACKM,EAAKN,KAAKQ,MAAM,KAEjBC,SAAST,GAClB,OAAO,6BAIX,MAAM,UAAErC,EAAF,KAAa9M,EAAb,MAAmBqP,EAAnB,KAA0BjB,KAAS/C,GAASoE,EAC5CI,EAAYjB,EAAW9B,IAAcA,EAC3C,OACE,wBAAC+C,EAAD,IACqB,aAAd/C,GAA4B,CAC/BA,UAAWgD,IACXC,gBAAiB,UAEnBzO,IAAKoO,KACDrE,GAEH+D,EAAQpP,EAAMoO,EAAMiB,KAIrBW,EAAW,CAACP,EAAMC,KACtB,MAAM,UAAE5C,EAAF,KAAa9M,EAAb,KAAmBoO,EAAnB,MAAyBO,EAAzB,GAAgCrB,KAAOjC,GAASoE,EAChDI,EAAYjB,EAAW9B,IAAcA,EAE3C,OACE,cAAC+C,EAAD,CACEI,QAASb,EAAQpP,EAAMoO,GACvB8B,QAASzN,EAAS0N,SAASC,WAAW9C,GACtCF,IAAKiD,OAAOX,MAERrE,EALN,SAOGoE,EAAKd,MAAMzB,KAAI,CAACuC,EAAMC,IACrBD,EAAKd,MAAQqB,EAASP,EAAMC,GAASF,EAAQC,EAAMC,MAJhDA,IAUX,OACE,cAAC,IAAMY,SAAP,UACG3B,GACCA,EAAMzB,KAAI,CAACuC,EAAMC,IAAWD,EAAKd,MAAQqB,EAASP,EAAMC,GAASF,EAAQC,EAAMC,Q,oBC8ZxEa,MAleF,CACX,CACEzD,UAAW,WACX9M,KAAM,YACNsN,GAAI,qBACJc,KAAM,cAAC,IAAD,CAAOA,KAAK,aAAakB,gBAAgB,aAC/CH,KAAM,cAER,CACErC,UAAW,YACX9M,KAAM,wCAoBR,CACE8M,UAAW,YACX9M,KAAM,2EACNsN,GAAI,YACJc,KAAM,aACNO,MAAO,CACL,CACE7B,UAAW,WACX9M,KAAM,2EACNsN,GAAI,iBACJ6B,KAAM,8BAER,CACErC,UAAW,WACX9M,KAAM,qEACNsN,GAAI,oBAEN,CACER,UAAW,WACX9M,KAAM,qEACNsN,GAAI,iBACJ6B,KAAM,8BAER,CACErC,UAAW,WACX9M,KAAM,sEACNsN,GAAI,sBACJ6B,KAAM,gBAIZ,CACErC,UAAW,YACX9M,KAAM,kFAER,CACE8M,UAAW,YACX9M,KAAM,iFACNsN,GAAI,gBACJc,KAAM,aACNO,MAAO,CACL,CACE7B,UAAW,WAEX9M,KAAM,iFACNsN,GAAI,6BACJ6B,KAAM,oBAER,CACErC,UAAW,WACX9M,KAAM,sDACNsN,GAAI,+BACJ6B,KAAM,sBAIZ,CACErC,UAAW,YACX9M,KAAM,iFACNsN,GAAI,gBACJc,KAAM,aACNO,MAAO,CACL,CACE7B,UAAW,WAEX9M,KAAM,iFACNsN,GAAI,8BACJ6B,KAAM,oBAER,CACErC,UAAW,WACX9M,KAAM,oDACNsN,GAAI,8BACJ6B,KAAM,oBAER,CACErC,UAAW,WACX9M,KAAM,sDACNsN,GAAI,gCACJ6B,KAAM,sBAIZ,CACErC,UAAW,YACX9M,KAAM,2EACNsN,GAAI,gBACJc,KAAM,aACNO,MAAO,CACL,CACE7B,UAAW,WACX9M,KAAM,qHACNsN,GAAI,6BACJ6B,KAAM,oBAER,CACErC,UAAW,WACX9M,KAAM,yDACNsN,GAAI,gCACJ6B,KAAM,oBAER,CACErC,UAAW,WAEX9M,KAAM,mGACNsN,GAAI,oCACJ6B,KAAM,sBAWZ,CACErC,UAAW,YACX9M,KAAM,kCAER,CACE8M,UAAW,YACX9M,KAAM,qEACNsN,GAAI,gBACJc,KAAM,aACNO,MAAO,CACL,CACE7B,UAAW,WAEX9M,KAAM,qEACNsN,GAAI,cACJ6B,KAAM,oBAER,CACErC,UAAW,WACX9M,KAAM,yDACNsN,GAAI,aACJ6B,KAAM,uBC5Jd,MAAMqB,EAAa,KACjB,MAAMlC,EAAWC,cACXkC,EAAajC,aAAarD,GAAUA,EAAMuF,oBAC1C1F,EAAcwD,aAAarD,GAAUA,EAAMH,cAEjD,OACE,eAAC,IAAD,CACE2F,SAAS,QACTC,WAAW,KACXH,WAAYA,EACZP,QAASlF,EACT6F,OAAQ,KACNvC,EAAS,CAAElD,KAAM,MAAOJ,aAAa,KANzC,UASE,eAAC,IAAD,CAAexO,UAAU,mBAAmB8Q,GAAG,IAA/C,UACE,cAAC,IAAD,CAAO9Q,UAAU,qBAAqBwD,KAAK,gBAAgB8Q,OAAQ,KACnE,cAAC,IAAD,CAAOtU,UAAU,uBAAuBwD,KAAK,SAAS8Q,OAAQ,QAEhE,cAAC,IAAD,UACE,cAAC,IAAD,UACE,cAACpC,EAAD,CAAeC,MAAOoC,QAG1B,cAAC,IAAD,CACEvU,UAAU,mBACVwR,QAAS,IAAMM,EAAS,CAAElD,KAAM,MAAOsF,mBAAoBD,UAMpD/T,UAAM6Q,KAAKiD,G","file":"static/js/main.deb62315.chunk.js","sourcesContent":["import React, { Component, useEffect, useState } from 'react'\nimport { HashRouter, Route, Switch } from 'react-router-dom'\nimport './scss/style.scss'\nimport './assets/datepickerstyles/norsedatepickerstyle.css'\nimport { HubConnection, HubConnectionBuilder, HttpTransportType } from '@microsoft/signalr'\n\nimport ReactHowler from 'react-howler'\nimport DefaultLayout from './layout/DefaultLayout'\n\nconst loading = (\n
\n
\n
\n)\n\n// Containers\n// const DefaultLayout = React.lazy(() => import('./layout/DefaultLayout'))\n\n// Pages\nconst Login = React.lazy(() => import('./views/pages/login/Login'))\nconst Register = React.lazy(() => import('./views/pages/register/Register'))\nconst Page404 = React.lazy(() => import('./views/pages/page404/Page404'))\nconst Page500 = React.lazy(() => import('./views/pages/page500/Page500'))\n\nconst App = () => {\n const [alert, setAlert] = useState(false)\n const [isAlertOpen] = useState(true)\n const [wdNoti, setWdNoti] = useState(0)\n const [deNoti, setDeNoti] = useState(0)\n\n const [connection, setConnection] = useState(null)\n // const [messages, setMessages] = useState([])\n // const [users, setUsers] = useState([])\n\n // global.BASE_API_URL = 'https://norseapi.azurewebsites.net'\n\n // global.BASE_API_URL = 'https://autoapi.kickoff-bet.com'\n // global.BASE_API_URL = 'https://autoapi.adminkob.com'\n\n // global.BASE_API_URL = 'https://jokerapi.adminkob.com'\n\n global.BASE_API_URL = `${process.env.REACT_APP_NORSE_API_URL}`\n // console.log(process.env.NORSE_API_URL)\n\n const DepositUnfinishNotify = (message) => {\n console.log('Noti => DepositUnfinish')\n document.title = message\n\n let deNoti = parseInt(localStorage.getItem('depositNotification'))\n\n if (!deNoti || deNoti == 0) {\n localStorage.setItem('depositNotification', 1)\n deNoti = 1\n } else {\n localStorage.setItem('depositNotification', deNoti + 1)\n deNoti++\n }\n\n console.log(localStorage.getItem('depositNotification'))\n\n setDeNoti(deNoti)\n setAlert(true)\n }\n\n const WithdrawRequestNotify = (message) => {\n console.log('Noti => WithdrawRequest')\n document.title = message\n\n let wdNoti = parseInt(localStorage.getItem('withdrawNotification'))\n\n if (!wdNoti) {\n localStorage.setItem('withdrawNotification', 1)\n wdNoti = 1\n } else {\n wdNoti++\n localStorage.setItem('withdrawNotification', wdNoti)\n }\n\n console.log(localStorage.getItem('withdrawNotification'))\n setWdNoti(wdNoti)\n setAlert(true)\n }\n\n const initialNotiSetting = () => {\n let wdNoti = localStorage.getItem('withdrawNotification')\n let deNoti = localStorage.getItem('depositNotification')\n\n setWdNoti(wdNoti)\n setDeNoti(deNoti)\n }\n\n useEffect(() => {\n initialNotiSetting()\n try {\n let connect\n if (!connection) {\n connect = new HubConnectionBuilder()\n .withUrl(global.BASE_API_URL + '/kobauto/notifications', {\n skipNegotiation: true,\n transport: HttpTransportType.WebSockets,\n })\n .withAutomaticReconnect()\n .build()\n setConnection(connect)\n\n connect\n .start()\n .then((r) => {\n connect.on('DepositUnfinish', DepositUnfinishNotify)\n connect.on('WithdrawRequest', WithdrawRequestNotify)\n connect.onclose((e) => {\n setConnection(null)\n // alert([])\n setWdNoti(0)\n setDeNoti(0)\n })\n })\n .catch((e) => console.log(e))\n }\n } catch (e) {\n console.log(e)\n }\n\n return () => {\n console.log('leave app.js')\n // connection.onclose((e) => {\n // setConnection(null)\n // // setMessages([])\n // // setUsers([])\n // })\n }\n }, [])\n\n // const closeConnection = async () => {\n // try {\n // await connection.stop()\n // } catch (e) {\n // console.log(e)\n // }\n // }\n\n const onAlertChange = (val) => {\n console.log('alert changed')\n setAlert(true)\n }\n\n return (\n <>\n \n \n \n } />\n }\n />\n } />\n } />\n (\n {\n setWdNoti(0)\n }}\n onClearDeNoti={() => {\n setDeNoti(0)\n }}\n />\n )}\n />\n \n \n \n {\n setTimeout(() => {\n // setAlert(false)\n }, 1000)\n }}\n />\n \n )\n}\n\nexport default App\n\n// class App extends Component {\n// render() {\n// //global.BASE_API_URL = 'https://dylan.kasetstore.com'\n\n// // global.BASE_API_URL = 'https://localhost:44392'\n\n// // global.BASE_API_URL = 'https://norseapi.azurewebsites.net'\n\n// // global.BASE_API_URL = 'https://autoapi.kickoff-bet.com'\n// // global.BASE_API_URL = 'https://autoapi.adminkob.com'\n\n// // global.BASE_API_URL = 'https://jokerapi.adminkob.com'\n// global.BASE_API_URL = `${process.env.NORSE_API_URL}`\n// console.log(process.env.NORSE_API_URL)\n\n// return (\n// \n// \n// \n// } />\n// }\n// />\n// } />\n// } />\n// }\n// />\n// \n// \n// \n// )\n// }\n// }\n\n// export default App\n","import React, { useEffect, useState } from 'react'\nimport PropTypes from 'prop-types'\nimport { useHistory } from 'react-router'\nimport { AppContent, AppSidebar, AppFooter, AppHeader } from '../components/index'\nimport { add, multiply } from './../functions/auth.js'\nimport { CButton } from '@coreui/react'\nimport ReactHowler from 'react-howler'\nimport { HubConnection, HubConnectionBuilder, HttpTransportType } from '@microsoft/signalr'\n\nconst DefaultLayout = (props) => {\n // const [alert, setAlert] = useState(false)\n // const [isAlertOpen] = useState(true)\n // const [wdNoti, setWdNoti] = useState(0)\n // const [deNoti, setDeNoti] = useState(0)\n\n // const [connection, setConnection] = useState(null)\n console.log(props)\n const history = useHistory()\n const RedirectToLoginWhenRefreshTokenExpired = async () => {\n try {\n let refresh_token = localStorage.getItem('refresh_token')\n\n let dataToSend = {\n client_id: 'norseapi',\n grant_type: 'refresh_token',\n refresh_token: refresh_token,\n }\n\n let formBody = []\n for (let key in dataToSend) {\n let encodedKey = encodeURIComponent(key)\n let encodedValue = encodeURIComponent(dataToSend[key])\n formBody.push(encodedKey + '=' + encodedValue)\n }\n formBody = formBody.join('&')\n\n var loginUrl = global.BASE_API_URL + '/auth/login'\n\n var result = await fetch(loginUrl, {\n method: 'POST',\n body: formBody,\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',\n },\n })\n\n if (result.ok) {\n console.log('refresh token not expired not redirect')\n var json = await result.json()\n localStorage.setItem('access_token', json.access_token)\n localStorage.setItem('expires', Date.now() + json.expires_in * 1000)\n return true\n } else {\n console.log('refresh expired redirect')\n history.push('/login')\n }\n } catch {\n console.log('refresh expired redirect')\n history.push('/login')\n }\n }\n useEffect(() => {\n var expires = localStorage.getItem('expires')\n if (Date.now() - expires > 0) {\n console.log('token expired')\n RedirectToLoginWhenRefreshTokenExpired()\n } else {\n console.log('token not expired')\n // const connect = new HubConnectionBuilder()\n // .withUrl(global.BASE_API_URL + '/kobauto/notifications', {\n // skipNegotiation: true,\n // transport: HttpTransportType.WebSockets,\n // })\n // .withAutomaticReconnect()\n // .build()\n\n // setConnection(connect)\n }\n\n // function checkNotification() {\n // let wdNoti = localStorage.getItem('withdrawNotification')\n\n // let deNoti = localStorage.getItem('depositNotification')\n\n // setWdNoti(wdNoti)\n // setDeNoti(deNoti)\n // }\n\n // window.addEventListener('storage', checkNotification)\n\n return () => {\n // window.removeEventListener('storage', checkNotification)\n }\n }, [])\n\n // useEffect(() => {\n // if (connection) {\n // connection\n // .start()\n // .then((r) => {\n // connection.on('DepositUnfinish', DepositUnfinishNotify)\n\n // connection.on('WithdrawRequest', WithdrawRequestNotify)\n // })\n // .catch((error) => console.log(error))\n // }\n // }, [connection])\n\n // const DepositUnfinishNotify = (message) => {\n // console.log('Noti => DepositUnfinish')\n // document.title = message\n\n // let deNoti = parseInt(localStorage.getItem('depositNotification'))\n\n // if (!deNoti || deNoti == 0) {\n // localStorage.setItem('depositNotification', 1)\n // } else {\n // localStorage.setItem('depositNotification', deNoti + 1)\n // }\n\n // console.log(localStorage.getItem('depositNotification'))\n\n // setAlert(true)\n // }\n\n // const WithdrawRequestNotify = (message) => {\n // console.log('Noti => WithdrawRequest')\n // document.title = message\n\n // let wdNoti = parseInt(localStorage.getItem('withdrawNotification'))\n\n // if (!wdNoti) {\n // localStorage.setItem('withdrawNotification', 1)\n // } else {\n // localStorage.setItem('withdrawNotification', wdNoti + 1)\n // }\n\n // console.log(localStorage.getItem('withdrawNotification'))\n\n // setAlert(true)\n // }\n\n // useEffect(() => {\n // if (connection) {\n // console.log(connection)\n // connection.on('DepositUnfinish', DepositUnfinish)\n\n // connection.off('WithdrawRequest', WithdrawRequest)\n // connection.on('WithdrawRequest', WithdrawRequest)\n // }\n // }, [isAlertOpen])\n\n return (\n
\n {/* */}\n \n
\n \n \n \n )\n}\n\nDefaultLayout.propTypes = {\n eye: PropTypes.any,\n onAlertChange: PropTypes.func,\n wdNoti: PropTypes.number,\n deNoti: PropTypes.number,\n onClearWdNoti: PropTypes.func,\n onClearDeNoti: PropTypes.func,\n}\n\nexport default DefaultLayout\n","// In production, we register a service worker to serve assets from local cache.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\n// cached resources are updated in the background.\n\n// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.\n// This link also includes instructions on opting out of this behavior.\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/),\n)\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location)\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config)\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://goo.gl/SC7cgQ',\n )\n })\n } else {\n // Is not local host. Just register service worker\n registerValidSW(swUrl, config)\n }\n })\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then((registration) => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and\n // the fresh content will have been added to the cache.\n // It's the perfect time to display a \"New content is\n // available; please refresh.\" message in your web app.\n console.log('New content is available; please refresh.')\n\n // Execute callback\n if (config.onUpdate) {\n config.onUpdate(registration)\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.')\n\n // Execute callback\n if (config.onSuccess) {\n config.onSuccess(registration)\n }\n }\n }\n }\n }\n })\n .catch((error) => {\n console.error('Error during service worker registration:', error)\n })\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then((response) => {\n // Ensure service worker exists, and that we really are getting a JS file.\n if (\n response.status === 404 ||\n response.headers.get('content-type').indexOf('javascript') === -1\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister().then(() => {\n window.location.reload()\n })\n })\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config)\n }\n })\n .catch(() => {\n console.log('No internet connection found. App is running in offline mode.')\n })\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister()\n })\n }\n}\n","import { sygnet } from './sygnet'\nimport { logo } from './logo'\nimport { logoNegative } from './logo-negative'\n\nimport {\n cibSkype,\n cibFacebook,\n cibTwitter,\n cibLinkedin,\n cibFlickr,\n cibTumblr,\n cibXing,\n cibGithub,\n cibStackoverflow,\n cibYoutube,\n cibDribbble,\n cibInstagram,\n cibPinterest,\n cibVk,\n cibYahoo,\n cibBehance,\n cibReddit,\n cibVimeo,\n cibCcMastercard,\n cibCcVisa,\n cibCcStripe,\n cibCcPaypal,\n cibCcApplePay,\n cibCcAmex,\n cibGoogle,\n} from '@coreui/icons'\nimport { cifUs, cifBr, cifIn, cifFr, cifEs, cifPl } from '@coreui/icons'\nimport {\n cilAlignCenter,\n cilAlignLeft,\n cilAlignRight,\n cilApplicationsSettings,\n cilArrowBottom,\n cilArrowRight,\n cilArrowTop,\n cilAsterisk,\n cilBan,\n cilBasket,\n cilBell,\n cilBold,\n cilBookmark,\n cilCalculator,\n cilCalendar,\n cilCloudDownload,\n cilChartPie,\n cilCheck,\n cilChevronBottom,\n cilChevronLeft,\n cilChevronRight,\n cilChevronTop,\n cilCircle,\n cilCheckCircle,\n cilCode,\n cilCommentSquare,\n cilCreditCard,\n cilCursor,\n cilCursorMove,\n cilDrop,\n cilDollar,\n cilEnvelopeClosed,\n cilEnvelopeLetter,\n cilEnvelopeOpen,\n cilEuro,\n cilGlobeAlt,\n cilGrid,\n cilFile,\n cilFullscreen,\n cilFullscreenExit,\n cilGraph,\n cilHome,\n cilInbox,\n cilIndentDecrease,\n cilIndentIncrease,\n cilInputPower,\n cilItalic,\n cilJustifyCenter,\n cilJustifyLeft,\n cilLaptop,\n cilLayers,\n cilLightbulb,\n cilList,\n cilListNumbered,\n cilListRich,\n cilLocationPin,\n cilLockLocked,\n cilMagnifyingGlass,\n cilMap,\n cilMediaPlay,\n cilMenu,\n cilMoon,\n cilNotes,\n cilOptions,\n cilPaperclip,\n cilPaperPlane,\n cilPencil,\n cilPeople,\n cilPhone,\n cilPrint,\n cilPuzzle,\n cilSave,\n cilScrubber,\n cilSettings,\n cilShare,\n cilShareAll,\n cilShareBoxed,\n cilShieldAlt,\n cilSpeech,\n cilSpeedometer,\n cilSpreadsheet,\n cilStar,\n cilSun,\n cilTags,\n cilTask,\n cilTrash,\n cilUnderline,\n cilUser,\n cilUserFemale,\n cilUserFollow,\n cilUserUnfollow,\n cilX,\n cilXCircle,\n cilWarning,\n} from '@coreui/icons'\n\nexport const icons = Object.assign(\n {},\n {\n sygnet,\n logo,\n logoNegative,\n },\n {\n cilAlignCenter,\n cilAlignLeft,\n cilAlignRight,\n cilApplicationsSettings,\n cilArrowBottom,\n cilArrowRight,\n cilArrowTop,\n cilAsterisk,\n cilBan,\n cilBasket,\n cilBell,\n cilBold,\n cilBookmark,\n cilCalculator,\n cilCalendar,\n cilCloudDownload,\n cilChartPie,\n cilCheck,\n cilChevronBottom,\n cilChevronLeft,\n cilChevronRight,\n cilChevronTop,\n cilCircle,\n cilCheckCircle,\n cilCode,\n cilCommentSquare,\n cilCreditCard,\n cilCursor,\n cilCursorMove,\n cilDrop,\n cilDollar,\n cilEnvelopeClosed,\n cilEnvelopeLetter,\n cilEnvelopeOpen,\n cilEuro,\n cilGlobeAlt,\n cilGrid,\n cilFile,\n cilFullscreen,\n cilFullscreenExit,\n cilGraph,\n cilHome,\n cilInbox,\n cilIndentDecrease,\n cilIndentIncrease,\n cilInputPower,\n cilItalic,\n cilJustifyCenter,\n cilJustifyLeft,\n cilLaptop,\n cilLayers,\n cilLightbulb,\n cilList,\n cilListNumbered,\n cilListRich,\n cilLocationPin,\n cilLockLocked,\n cilMagnifyingGlass,\n cilMap,\n cilMediaPlay,\n cilMenu,\n cilMoon,\n cilNotes,\n cilOptions,\n cilPaperclip,\n cilPaperPlane,\n cilPencil,\n cilPeople,\n cilPhone,\n cilPrint,\n cilPuzzle,\n cilSave,\n cilScrubber,\n cilSettings,\n cilShare,\n cilShareAll,\n cilShareBoxed,\n cilShieldAlt,\n cilSpeech,\n cilSpeedometer,\n cilSpreadsheet,\n cilStar,\n cilSun,\n cilTags,\n cilTask,\n cilTrash,\n cilUnderline,\n cilUser,\n cilUserFemale,\n cilUserFollow,\n cilUserUnfollow,\n cilX,\n cilXCircle,\n cilWarning,\n },\n {\n cifUs,\n cifBr,\n cifIn,\n cifFr,\n cifEs,\n cifPl,\n },\n {\n cibSkype,\n cibFacebook,\n cibTwitter,\n cibLinkedin,\n cibFlickr,\n cibTumblr,\n cibXing,\n cibGithub,\n cibStackoverflow,\n cibYoutube,\n cibDribbble,\n cibInstagram,\n cibPinterest,\n cibVk,\n cibYahoo,\n cibBehance,\n cibReddit,\n cibVimeo,\n cibCcMastercard,\n cibCcVisa,\n cibCcStripe,\n cibCcPaypal,\n cibCcApplePay,\n cibCcAmex,\n cibGoogle,\n },\n)\n","export const sygnet = [\n '160 160',\n `\n coreui logo\n \n \n \n \n \n \n`,\n]\n","export const logo = [\n '608 134',\n `\n coreui react pro\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","export const logoNegative = [\n '608 134',\n `\n coreui react pro logo\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","import { createStore } from 'redux'\n\nconst initialState = {\n sidebarShow: true,\n}\n\nconst changeState = (state = initialState, { type, ...rest }) => {\n switch (type) {\n case 'set':\n return { ...state, ...rest }\n default:\n return state\n }\n}\n\nconst store = createStore(changeState)\nexport default store\n","import 'react-app-polyfill/stable'\nimport 'core-js'\nimport React from 'react'\nimport ReactDOM from 'react-dom'\nimport App from './App'\nimport * as serviceWorker from './serviceWorker'\n\nimport { icons } from './assets/icons'\n\nimport { Provider } from 'react-redux'\nimport store from './store'\n\nReact.icons = icons\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root'),\n)\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: http://bit.ly/CRA-PWA\nserviceWorker.unregister()\n","import React from 'react'\n\n// examples\n\n// const Colors = React.lazy(() => import('./views/theme/colors/Colors'))\n// const Typography = React.lazy(() => import('./views/theme/typography/Typography'))\n\n// const Accordion = React.lazy(() => import('./views/components/base/accordion/Accordion'))\n// const Breadcrumbs = React.lazy(() => import('./views/components/base/breadcrumbs/Breadcrumbs'))\n// const Cards = React.lazy(() => import('./views/components/base/cards/Cards'))\n// const Carousels = React.lazy(() => import('./views/components/base/carousels/Carousels'))\n// const Collapses = React.lazy(() => import('./views/components/base/collapses/Collapses'))\n// const ListGroups = React.lazy(() => import('./views/components/base/list-groups/ListGroups'))\n// const Navs = React.lazy(() => import('./views/components/base/navs/Navs'))\n// const Paginations = React.lazy(() => import('./views/components/base/paginations/Paginations'))\n// const Popovers = React.lazy(() => import('./views/components/base/popovers/Popovers'))\n// const Progress = React.lazy(() => import('./views/components/base/progress/Progress'))\n// const Spinners = React.lazy(() => import('./views/components/base/spinners/Spinners'))\n// const Tables = React.lazy(() => import('./views/components/base/tables/Tables'))\n// const Tooltips = React.lazy(() => import('./views/components/base/tooltips/Tooltips'))\n\n// const Buttons = React.lazy(() => import('./views/components/buttons/buttons/Buttons'))\n// const ButtonGroups = React.lazy(() =>\n// import('./views/components/buttons/button-groups/ButtonGroups'),\n// )\n// const Dropdowns = React.lazy(() => import('./views/components/buttons/dropdowns/Dropdowns'))\n\n// const ChecksRadios = React.lazy(() => import('./views/components/forms/checks-radios/ChecksRadios'))\n// const FloatingLabels = React.lazy(() =>\n// import('./views/components/forms/floating-labels/FloatingLabels'),\n// )\n// const FormControl = React.lazy(() => import('./views/components/forms/form-control/FormControl'))\n// const InputGroup = React.lazy(() => import('./views/components/forms/input-group/InputGroup'))\n// const Layout = React.lazy(() => import('./views/components/forms/layout/Layout'))\n// const Range = React.lazy(() => import('./views/components/forms/range/Range'))\n// const Select = React.lazy(() => import('./views/components/forms/select/Select'))\n// const Validation = React.lazy(() => import('./views/components/forms/validation/Validation'))\n\n// const CoreUIIcons = React.lazy(() => import('./views/components/icons/coreui-icons/CoreUIIcons'))\n// const Flags = React.lazy(() => import('./views/components/icons/flags/Flags'))\n// const Brands = React.lazy(() => import('./views/components/icons/brands/Brands'))\n\n// const Alerts = React.lazy(() => import('./views/components/notifications/alerts/Alerts'))\n// const Badges = React.lazy(() => import('./views/components/notifications/badges/Badges'))\n// const Modals = React.lazy(() => import('./views/components/notifications/modals/Modals'))\n// const Toasts = React.lazy(() => import('./views/components/notifications/toasts/Toasts'))\n\n// const Login = React.lazy(() => import('./views/examples/pages/login/Login'))\n// const Register = React.lazy(() => import('./views/examples/pages/register/Register'))\n// const Page404 = React.lazy(() => import('./views/examples/pages/page404/Page404'))\n// const Page500 = React.lazy(() => import('./views/examples/pages/page500/Page500'))\n\n// const Widgets = React.lazy(() => import('./views/components/widgets/Widgets'))\n\n// const Charts = React.lazy(() => import('./views/components/charts/Charts'))\nconst Dashboard = React.lazy(() => import('./views/dashboard/Dashboard'))\nconst SummaryDashboard = React.lazy(() => import('./views/dashboard/SummaryDashboard'))\n\nconst ListCustomer = React.lazy(() => import('./views/customer/list/ListCustomer'))\nconst CreateCustomer = React.lazy(() => import('./views/customer/create/CreateCustomer'))\nconst ListNewCustomer = React.lazy(() => import('./views/customer/new/ListNewCustomer'))\nconst EditCustomer = React.lazy(() => import('./views/customer/edit/EditCustomer'))\nconst AdminEditCustomer = React.lazy(() => import('./views/customer/edit/AdminEditCustomer'))\n\nconst ListDeposit = React.lazy(() => import('./views/transactions/deposit/list/ListDeposit'))\nconst ManualDeposit = React.lazy(() => import('./views/transactions/deposit/manual/ManualDeposit'))\n\nconst ListWithdraw = React.lazy(() => import('./views/transactions/withdraw/list/ListWithdraw'))\nconst ManualWithdraw = React.lazy(() =>\n import('./views/transactions/withdraw/manual/ManualWithdraw'),\n)\n\nconst AutoWithdraw = React.lazy(() => import('./views/transactions/withdraw/auto/AutoWithdraw'))\n\nconst ListClearCredit = React.lazy(() =>\n import('./views/transactions/credit/clear/ListClearCredit'),\n)\n\nconst WithdrawCredit = React.lazy(() =>\n import('./views/transactions/credit/withdraw/WithdrawCredit'),\n)\n\nconst ListReturnCredit = React.lazy(() =>\n import('./views/transactions/credit/returncredit/ListReturnCredit'),\n)\n\nconst AddBonus = React.lazy(() => import('./views/bonus/add/AddBonus.js'))\nconst ListBonus = React.lazy(() => import('./views/bonus/list/ListBonus.js'))\n\nconst TestEverything = React.lazy(() => import('./views/test/TestEverything'))\n\nconst routes = [\n { path: '/', exact: true, name: 'Home' },\n { path: '/test', name: 'ทดสอบ' },\n { path: '/test/testeverything', exact: true, name: 'ทดสอบหมด', component: TestEverything },\n { path: '/customer', name: 'สมาชิก' },\n { path: '/customer/list', name: 'รายการสมาชิก', component: ListCustomer },\n { path: '/customer/edit', name: 'แก้ไขข้อมูล', component: EditCustomer },\n { path: '/customer/adminedit', name: '@แก้ไขข้อมูล', component: AdminEditCustomer },\n { path: '/newcustomer', name: 'สมาชิก' },\n { path: '/customer/new', name: 'รอการตรวจสอบ', component: ListNewCustomer },\n { path: '/customer/create', name: 'เพิ่มสมาชิก', component: CreateCustomer },\n\n { path: '/transactions', name: 'ประวัติฝาก-ถอน' },\n { path: '/transactions/deposit/list', name: 'ประวัติฝาก', component: ListDeposit },\n { path: '/transactions/deposit/manual', name: 'ฝากเงิน(Manual)', component: ManualDeposit },\n { path: '/transactions/withdraw/list', name: 'ประวัติถอน', component: ListWithdraw },\n { path: '/transactions/withdraw/manual', name: 'ถอนเงิน(Manual)', component: ManualWithdraw },\n { path: '/transactions/withdraw/auto', name: 'ถอนเงิน(Auto)', component: AutoWithdraw },\n { path: '/transactions/credit/clear', name: 'รายการเคลียร์เครดิต', component: ListClearCredit },\n { path: '/transactions/credit/withdraw', name: 'ตัดเครดิต', component: WithdrawCredit },\n {\n path: '/transactions/credit/returncredit',\n name: 'รายการคืนยอดเสีย',\n component: ListReturnCredit,\n },\n\n { path: '/bonus', name: 'ข้อมูลโบนัส' },\n { path: '/bonus/list', name: 'รายการโบนัส', component: ListBonus },\n { path: '/bonus/add', name: 'เติมโบนัส', component: AddBonus },\n\n // { path: '/dashboard', name: 'Dashboard', component: Dashboard },\n { path: '/dashboard/summary', name: 'SummaryDashboard', component: SummaryDashboard },\n // { path: '/theme', name: 'Theme', component: Colors, exact: true },\n // { path: '/theme/colors', name: 'Colors', component: Colors },\n // { path: '/theme/typography', name: 'Typography', component: Typography },\n // { path: '/base', name: 'Base', component: Cards, exact: true },\n // { path: '/base/accordion', name: 'Accordion', component: Accordion },\n // { path: '/base/breadcrumbs', name: 'Breadcrumbs', component: Breadcrumbs },\n // { path: '/base/cards', name: 'Cards', component: Cards },\n // { path: '/base/carousels', name: 'Carousel', component: Carousels },\n // { path: '/base/collapses', name: 'Collapse', component: Collapses },\n // { path: '/base/list-groups', name: 'List Groups', component: ListGroups },\n // { path: '/base/navs', name: 'Navs', component: Navs },\n // { path: '/base/paginations', name: 'Paginations', component: Paginations },\n // { path: '/base/popovers', name: 'Popovers', component: Popovers },\n // { path: '/base/progress', name: 'Progress', component: Progress },\n // { path: '/base/spinners', name: 'Spinners', component: Spinners },\n // { path: '/base/tables', name: 'Tables', component: Tables },\n // { path: '/base/tooltips', name: 'Tooltips', component: Tooltips },\n // { path: '/buttons', name: 'Buttons', component: Buttons, exact: true },\n // { path: '/buttons/buttons', name: 'Buttons', component: Buttons },\n // { path: '/buttons/dropdowns', name: 'Dropdowns', component: Dropdowns },\n // { path: '/buttons/button-groups', name: 'Button Groups', component: ButtonGroups },\n // { path: '/charts', name: 'Charts', component: Charts },\n // { path: '/forms', name: 'Forms', component: FormControl, exact: true },\n // { path: '/forms/form-control', name: 'Form Control', component: FormControl },\n // { path: '/forms/select', name: 'Select', component: Select },\n // { path: '/forms/checks-radios', name: 'Checks & Radios', component: ChecksRadios },\n // { path: '/forms/range', name: 'Range', component: Range },\n // { path: '/forms/input-group', name: 'Input Group', component: InputGroup },\n // { path: '/forms/floating-labels', name: 'Floating Labels', component: FloatingLabels },\n // { path: '/forms/layout', name: 'Layout', component: Layout },\n // { path: '/forms/validation', name: 'Validation', component: Validation },\n // { path: '/icons', exact: true, name: 'Icons', component: CoreUIIcons },\n // { path: '/icons/coreui-icons', name: 'CoreUI Icons', component: CoreUIIcons },\n // { path: '/icons/flags', name: 'Flags', component: Flags },\n // { path: '/icons/brands', name: 'Brands', component: Brands },\n // { path: '/notifications', name: 'Notifications', component: Alerts, exact: true },\n // { path: '/notifications/alerts', name: 'Alerts', component: Alerts },\n // { path: '/notifications/badges', name: 'Badges', component: Badges },\n // { path: '/notifications/modals', name: 'Modals', component: Modals },\n // { path: '/notifications/toasts', name: 'Toasts', component: Toasts },\n // // { path: '/login', name: 'Login', component: Login },\n // // { path: '/register', name: 'Register', component: Register },\n // // { path: '/404', name: '404', component: Page404 },\n // // { path: '/500', name: '500', component: Page500 },\n // { path: '/widgets', name: 'Widgets', component: Widgets },\n]\n\nexport default routes\n","import React, { Suspense } from 'react'\nimport { Redirect, Route, Switch } from 'react-router-dom'\nimport { CContainer, CSpinner } from '@coreui/react'\n\n// routes config\nimport routes from '../routes'\n\nconst AppContent = () => {\n return (\n \n }>\n \n {routes.map((route, idx) => {\n return (\n route.component && (\n (\n <>\n \n \n )}\n />\n )\n )\n })}\n \n \n \n \n )\n}\n\nexport default React.memo(AppContent)\n","import React from 'react'\nimport { CFooter } from '@coreui/react'\n\nconst AppFooter = () => {\n return (\n \n
\n {/* \n CoreUI\n */}\n © เฮง เฮง ทั้งปี\n
\n
\n {/* Powered by\n \n CoreUI for React\n */}\n
\n
\n )\n}\n\nexport default React.memo(AppFooter)\n","import React from 'react'\nimport {\n CAvatar,\n CBadge,\n CDropdown,\n CDropdownDivider,\n CDropdownHeader,\n CDropdownItem,\n CDropdownMenu,\n CDropdownToggle,\n} from '@coreui/react'\nimport CIcon from '@coreui/icons-react'\n\nimport { useHistory } from 'react-router'\n\nconst AppHeaderDropdown = () => {\n const history = useHistory()\n return (\n \n \n \n \n \n Account\n {/* \n \n Updates\n \n 42\n \n \n \n \n Messages\n \n 42\n \n \n \n \n Tasks\n \n 42\n \n \n \n \n Comments\n \n 42\n \n \n Settings\n \n \n Profile\n \n \n \n Settings\n \n \n \n Payments\n \n 42\n \n \n \n \n Projects\n \n 42\n \n \n */}\n {\n if (window.confirm('ต้องการออกจากระบบ ?')) {\n localStorage.removeItem('refresh_token')\n localStorage.removeItem('access_token')\n localStorage.removeItem('role')\n localStorage.removeItem('id_token')\n localStorage.clear()\n history.push('/login')\n }\n }}\n >\n \n Lock off\n \n \n \n )\n}\n\nexport default AppHeaderDropdown\n","import React, { useState, useEffect } from 'react'\nimport { NavLink } from 'react-router-dom'\nimport PropTypes from 'prop-types'\nimport { useSelector, useDispatch } from 'react-redux'\n\nimport { useHistory } from 'react-router'\nimport { FaBellSlash, FaBell } from 'react-icons/fa'\nimport {\n CContainer,\n CHeader,\n CHeaderDivider,\n CHeaderNav,\n CHeaderToggler,\n CButton,\n CBadge,\n} from '@coreui/react'\nimport CIcon from '@coreui/icons-react'\n\nimport { AppBreadcrumb } from './index'\nimport { AppHeaderDropdown } from './header/index'\n\nconst AppHeader = ({ deNoti, wdNoti, onAlertChange, onClearWdNoti, onClearDeNoti }) => {\n // const [wd, setWd] = useState(0)\n // const [de, setDe] = useState(0)\n\n // useEffect(() => {\n // setWd(wdNoti)\n // setDe(deNoti)\n // }, [wdNoti, deNoti])\n const history = useHistory()\n const dispatch = useDispatch()\n const sidebarShow = useSelector((state) => state.sidebarShow)\n return (\n \n {/* */}\n \n dispatch({ type: 'set', sidebarShow: !sidebarShow })}\n >\n \n \n {/* \n \n */}\n {/* \n \n \n Dashboard\n \n \n \n Users\n \n \n Settings\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n */}\n {/* */}\n\n \n {\n localStorage.setItem('withdrawNotification', 0)\n // setWd(0)\n onClearWdNoti()\n history.push('/transactions/withdraw/list')\n }}\n >\n ถอนมีปัญหา\n {wdNoti > 0 ? (\n \n {wdNoti}\n \n ) : (\n <>\n )}\n {/* */}\n {/* {alert ? 'เตือนเปิดอยู่' : 'เตือนปิดอยู่'} */}\n \n {\n localStorage.setItem('depositNotification', 0)\n // setDe(0)\n onClearDeNoti()\n history.push('/transactions/deposit/list')\n }}\n >\n ฝากมีปัญหา\n {deNoti > 0 ? (\n \n {deNoti}\n \n ) : (\n <>\n )}\n {/* */}\n {/* {alert ? 'เตือนเปิดอยู่' : 'เตือนปิดอยู่'} */}\n \n\n {\n onAlertChange(true)\n }}\n >\n \n {/* {alert ? 'เตือนเปิดอยู่' : 'เตือนปิดอยู่'} */}\n \n \n \n \n \n {/* \n \n */}\n \n )\n}\n\nAppHeader.propTypes = {\n // alert: PropTypes.bool,\n onAlertChange: PropTypes.func,\n deNoti: PropTypes.number,\n wdNoti: PropTypes.number,\n onClearWdNoti: PropTypes.func,\n onClearDeNoti: PropTypes.func,\n}\n\nexport default AppHeader\n","import React from 'react'\nimport { NavLink, useLocation } from 'react-router-dom'\nimport PropTypes from 'prop-types'\n\nimport { CBadge, CNavGroup, CNavGroupItems, CNavItem, CNavLink, CNavTitle } from '@coreui/react'\nimport CIcon from '@coreui/icons-react'\n\nexport const AppSidebarNav = ({ items }) => {\n const components = { CNavGroup, CNavGroupItems, CNavItem, CNavLink, CNavTitle }\n const location = useLocation()\n const role = localStorage.getItem('role')\n const navLink = (name, icon, badge) => {\n return (\n <>\n {icon && typeof icon === 'string' ? : icon}\n {name && name}\n {badge && (\n \n {badge.text}\n \n )}\n \n )\n }\n\n const navItem = (item, index) => {\n if (item.role) {\n var roles = item.role.split(',')\n\n if (!roles.includes(role)) {\n return <>\n }\n }\n\n const { component, name, badge, icon, ...rest } = item\n const Component = components[component] || component\n return (\n \n {navLink(name, icon, badge)}\n \n )\n }\n const navGroup = (item, index) => {\n const { component, name, icon, items, to, ...rest } = item\n const Component = components[component] || component\n\n return (\n \n {item.items.map((item, index) =>\n item.items ? navGroup(item, index) : navItem(item, index),\n )}\n \n )\n }\n\n return (\n \n {items &&\n items.map((item, index) => (item.items ? navGroup(item, index) : navItem(item, index)))}\n \n )\n}\n\nAppSidebarNav.propTypes = {\n items: PropTypes.arrayOf(PropTypes.any).isRequired,\n}\n","import React from 'react'\nimport CIcon from '@coreui/icons-react'\n\nconst _nav = [\n {\n component: 'CNavItem',\n name: 'Dashboard',\n to: '/dashboard/summary',\n icon: ,\n role: 'superadmin',\n },\n {\n component: 'CNavTitle',\n name: 'สมาชิก',\n },\n // {\n // component: 'CNavGroup',\n // name: 'สมาชิกใหม่',\n // to: '/newcustomer',\n // icon: 'cil-puzzle',\n // items: [\n // {\n // component: 'CNavItem',\n // name: 'รอการตรวจสอบ',\n // to: '/customer/new',\n // },\n // {\n // component: 'CNavItem',\n // name: 'เพิ่มสมาชิก',\n // to: '/customer/create',\n // },\n // ],\n // },\n {\n component: 'CNavGroup',\n name: 'ข้อมูลสมาชิก',\n to: '/customer',\n icon: 'cil-puzzle',\n items: [\n {\n component: 'CNavItem',\n name: 'รายการสมาชิก',\n to: '/customer/list',\n role: 'admin,superadmin,marketing',\n },\n {\n component: 'CNavItem',\n name: 'เพิ่มสมาชิก',\n to: '/customer/create',\n },\n {\n component: 'CNavItem',\n name: 'แก้ไขข้อมูล',\n to: '/customer/edit',\n role: 'admin,superadmin,marketing',\n },\n {\n component: 'CNavItem',\n name: '@แก้ไขข้อมูล',\n to: '/customer/adminedit',\n role: 'superadmin',\n },\n ],\n },\n {\n component: 'CNavTitle',\n name: 'ฝาก - ถอน - เครดิต',\n },\n {\n component: 'CNavGroup',\n name: 'ข้อมูลฝากเงิน',\n to: '/transactions',\n icon: 'cil-puzzle',\n items: [\n {\n component: 'CNavItem',\n\n name: 'รายการฝากเงิน',\n to: '/transactions/deposit/list',\n role: 'admin,superadmin',\n },\n {\n component: 'CNavItem',\n name: 'ฝากเงิน (Manual)',\n to: '/transactions/deposit/manual',\n role: 'admin,superadmin',\n },\n ],\n },\n {\n component: 'CNavGroup',\n name: 'ข้อมูลถอนเงิน',\n to: '/transactions',\n icon: 'cil-puzzle',\n items: [\n {\n component: 'CNavItem',\n\n name: 'รายการถอนเงิน',\n to: '/transactions/withdraw/list',\n role: 'admin,superadmin',\n },\n {\n component: 'CNavItem',\n name: 'ถอนเงิน (Auto)',\n to: '/transactions/withdraw/auto',\n role: 'admin,superadmin',\n },\n {\n component: 'CNavItem',\n name: 'ถอนเงิน (Manual)',\n to: '/transactions/withdraw/manual',\n role: 'admin,superadmin',\n },\n ],\n },\n {\n component: 'CNavGroup',\n name: 'ข้อมูลเครดิต',\n to: '/transactions',\n icon: 'cil-puzzle',\n items: [\n {\n component: 'CNavItem',\n name: 'รายการเคลียร์เครดิต',\n to: '/transactions/credit/clear',\n role: 'admin,superadmin',\n },\n {\n component: 'CNavItem',\n name: 'ตัดเครดิต',\n to: '/transactions/credit/withdraw',\n role: 'admin,superadmin',\n },\n {\n component: 'CNavItem',\n\n name: 'รายการคืนยอดเสีย',\n to: '/transactions/credit/returncredit',\n role: 'admin,superadmin',\n },\n ],\n },\n // {\n // component: 'CNavItem',\n // name: 'ClearCredit',\n // to: '/credit/clear/list',\n // // icon: ,\n // role: 'admin,superadmin',\n // },\n {\n component: 'CNavTitle',\n name: 'โบนัส',\n },\n {\n component: 'CNavGroup',\n name: 'ข้อมูลโบนัส',\n to: '/transactions',\n icon: 'cil-puzzle',\n items: [\n {\n component: 'CNavItem',\n\n name: 'รายการโบนัส',\n to: '/bonus/list',\n role: 'admin,superadmin',\n },\n {\n component: 'CNavItem',\n name: 'เติมโบนัส',\n to: '/bonus/add',\n role: 'admin,superadmin',\n },\n ],\n },\n // {\n // component: 'CNavItem',\n // name: 'Dashboard',\n // to: '/dashboard',\n // icon: ,\n // badge: {\n // color: 'info',\n // text: 'NEW',\n // },\n // },\n // {\n // component: 'CNavTitle',\n // name: 'Theme',\n // },\n // {\n // component: 'CNavItem',\n // name: 'Colors',\n // to: '/theme/colors',\n // icon: ,\n // },\n // {\n // component: 'CNavItem',\n // name: 'Typography',\n // to: '/theme/typography',\n // icon: ,\n // },\n // {\n // component: 'CNavTitle',\n // name: 'Components',\n // },\n // {\n // component: 'CNavGroup',\n // name: 'Base',\n // to: '/base',\n // icon: 'cil-puzzle',\n // items: [\n // {\n // component: 'CNavItem',\n\n // name: 'Accordion',\n // to: '/base/accordion',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Breadcrumb',\n // to: '/base/breadcrumbs',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Cards',\n // to: '/base/cards',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Carousel',\n // to: '/base/carousels',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Collapse',\n // to: '/base/collapses',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'List group',\n // to: '/base/list-groups',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Navs & Tabs',\n // to: '/base/navs',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Pagination',\n // to: '/base/paginations',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Popovers',\n // to: '/base/popovers',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Progress',\n // to: '/base/progress',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Spinners',\n // to: '/base/spinners',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Tables',\n // to: '/base/tables',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Tooltips',\n // to: '/base/tooltips',\n // },\n // ],\n // },\n // {\n // component: 'CNavGroup',\n // name: 'Buttons',\n // to: '/buttons',\n // icon: ,\n // items: [\n // {\n // component: 'CNavItem',\n\n // name: 'Buttons',\n // to: '/buttons/buttons',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Buttons groups',\n // to: '/buttons/button-groups',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Dropdowns',\n // to: '/buttons/dropdowns',\n // },\n // ],\n // },\n // {\n // component: 'CNavGroup',\n // name: 'Forms',\n // icon: ,\n // items: [\n // {\n // component: 'CNavItem',\n\n // name: 'Form Control',\n // to: '/forms/form-control',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Select',\n // to: '/forms/select',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Checks & Radios',\n // to: '/forms/checks-radios',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Range',\n // to: '/forms/range',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Input Group',\n // to: '/forms/input-group',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Floating Labels',\n // to: '/forms/floating-labels',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Layout',\n // to: '/forms/layout',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Validation',\n // to: '/forms/validation',\n // },\n // ],\n // },\n // {\n // component: 'CNavItem',\n // name: 'Charts',\n // to: '/charts',\n // icon: ,\n // },\n // {\n // component: 'CNavGroup',\n // name: 'Icons',\n // icon: ,\n // items: [\n // {\n // component: 'CNavItem',\n\n // name: 'CoreUI Free',\n // to: '/icons/coreui-icons',\n // badge: {\n // color: 'success',\n // text: 'NEW',\n // },\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'CoreUI Flags',\n // to: '/icons/flags',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'CoreUI Brands',\n // to: '/icons/brands',\n // },\n // ],\n // },\n // {\n // component: 'CNavGroup',\n // name: 'Notifications',\n // icon: ,\n // items: [\n // {\n // component: 'CNavItem',\n\n // name: 'Alerts',\n // to: '/notifications/alerts',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Badges',\n // to: '/notifications/badges',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Modal',\n // to: '/notifications/modals',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Toasts',\n // to: '/notifications/toasts',\n // },\n // ],\n // },\n // {\n // component: 'CNavItem',\n // name: 'Widgets',\n // to: '/widgets',\n // icon: ,\n // badge: {\n // color: 'info',\n // text: 'NEW',\n // },\n // },\n // {\n // component: 'CNavTitle',\n // name: 'Extras',\n // },\n // {\n // component: 'CNavGroup',\n // name: 'Pages',\n // icon: ,\n // items: [\n // {\n // component: 'CNavItem',\n\n // name: 'Login',\n // to: '/login',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Register',\n // to: '/register',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Error 404',\n // to: '/404',\n // },\n // {\n // component: 'CNavItem',\n\n // name: 'Error 500',\n // to: '/500',\n // },\n // ],\n // },\n]\n\nexport default _nav\n","import React from 'react'\nimport { useSelector, useDispatch } from 'react-redux'\n\nimport { CSidebar, CSidebarBrand, CSidebarNav, CSidebarToggler } from '@coreui/react'\n\nimport { AppSidebarNav } from './AppSidebarNav'\n\nimport CIcon from '@coreui/icons-react'\n\nimport SimpleBar from 'simplebar-react'\nimport 'simplebar/dist/simplebar.min.css'\n\n// sidebar nav config\nimport navigation from '../_nav'\n\nconst AppSidebar = () => {\n const dispatch = useDispatch()\n const unfoldable = useSelector((state) => state.sidebarUnfoldable)\n const sidebarShow = useSelector((state) => state.sidebarShow)\n\n return (\n {\n dispatch({ type: 'set', sidebarShow: false })\n }}\n >\n \n \n \n \n \n \n \n \n \n dispatch({ type: 'set', sidebarUnfoldable: !unfoldable })}\n />\n \n )\n}\n\nexport default React.memo(AppSidebar)\n"],"sourceRoot":""}