{"version":3,"sources":["constants/local-storage.ts","constants/auth.ts","constants/notification.ts","constants/index.ts","hooks/useFetch.tsx","hooks/useMutate.tsx","hooks/user.tsx","hooks/crud/useGetList.tsx","hooks/crud/useGetOne.tsx","hooks/crud/useUpdateOne.tsx","hooks/crud/useTable.tsx","hooks/crud/useDeleteOne.tsx","hooks/useSocket.tsx","hooks/index.ts","components/LoadingPage/index.tsx","../../common/dist/index.js","helpers/app.ts","../../common/dist/constants.js","assets/images/flags/en.svg","assets/images/flags/vi.svg","localization/vi/index.ts","localization/en/index.ts","localization/requestLocalizations.ts","localization/index.ts","helpers/localization.ts","helpers/request.ts","helpers/notification.ts","helpers/index.ts","../../common/dist/api.js","../../common/dist/countries.js","../../common/dist/helper.js","../../common/dist/signal.js","components/PrivateRoute/index.tsx","App.tsx","i18n.ts","serviceWorker.ts","index.tsx","helpers/lodash.ts","services/user.ts","services/request.ts","services/index.ts","configs/auth.ts","configs/env.ts","configs/index.ts"],"names":["local_storage","ACCESS_TOKEN","NOTIFICATION_KEY","KEY_CURRENT_USER_ID","KEY_LANGUAGE","PRICE_COLUMNS_KEY","auth","KEY_CURRENT_PERMISSIONS","KEY_CURRENT_USER","KEY_COMMISSION_CFG","api","USER_DETAIL","notification","types","danger","text","value","warning","success","info","__webpack_require__","d","__webpack_exports__","reducer","state","action","type","Object","objectSpread2","loading","data","payload","error","fetched","useFetch","promise","when","arguments","length","undefined","options","defaultValue","_useReducer","useReducer","_useReducer2","slicedToArray","_useReducer2$","dispatch","mount","useEffect","_ref","asyncToGenerator","regenerator_default","a","mark","_callee","_yield$promise","_data","wrap","_context","prev","next","sent","has","abrupt","t0","stop","apply","this","fetchData","useFetchAPI","resource","params","requestServices","userClient","get","concat","useMutate","_options$valueDefault","valueDefault","_options$inputIsSnake","inputIsSnake","_options$callback","callback","useCallback","formData","inlineCallBack","_form","humps","decamelizeKeys","_tranform","tranform","camelizeKeys","toConsumableArray","useMutateAPI","err","form","post","useMutateCrud","method","crudClient","request","url","useUserInfo","_useGlobal","useGlobal","authConstants","_useGlobal2","currentUser","setCurrentUser","_useState","useState","_useState2","setLoading","_useGlobal3","_useGlobal4","currentPermissions","setCurrentPermissions","userServices","getAccessToken","getCurrentUserInfo","then","userData","permissions","walletClient","res","respNetworks","selectedNetworkId","network_id","console","log","catch","getCurrentUserId","id","localStorage","setItem","localStorageConstants","useGetList","query","RequestQueryBuilder","create","filter","_","sort","limit","page","join","map","field","JSON","stringify","useGetOne","joins","count","setCount","refresh","s","rest","useUpdateOne","keyPath","patch","initState","filters","sorts","mappingOrderValue","order","convertSortAntdToNest","sorter","reduce","st","push","useTable","iState","initialState","setState","result","reload","changePagination","pagination","current","pageSize","changeSorter","changeFilters","item","idx","idIndex","useDeleteOne","delete","socket","socketIOClient","window","__ENV__","REACT_APP_BASE_SOCKET_URL","transports","token","on","EVENTNAME","client","TOKEN_REVOKE","logout","SocketContext","React","createContext","useSocket","useContext","useFetch_useFetch","useFetch_useFetchAPI","useMutate_useMutate","useMutate_useMutateAPI","useMutate_useMutateCrud","user_useUserInfo","useGetList_useGetList","useGetOne_useGetOne","useUpdateOne_useUpdateOne","useTable_useTable","useDeleteOne_useDeleteOne","useSocket_socket","useSocket_useSocket","antd__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_1__","react__WEBPACK_IMPORTED_MODULE_1___default","n","LoadingPage","createElement","spinning","__createBinding","o","m","k","k2","defineProperty","enumerable","__exportStar","exports","p","prototype","hasOwnProperty","call","lodash__WEBPACK_IMPORTED_MODULE_0__","moment__WEBPACK_IMPORTED_MODULE_1__","moment__WEBPACK_IMPORTED_MODULE_1___default","slugify__WEBPACK_IMPORTED_MODULE_2__","slugify__WEBPACK_IMPORTED_MODULE_2___default","roundNumber","num","initPagination","total","showSizeChanger","pageSizeOptions","formatWithCurrency","amount","currency","Intl","NumberFormat","style","format","formatCurrency","formatDateTable","day","moment","formatDateTimeTable","formatFromUnixSecond","time","generateSlug","link","slugify","replacement","lower","trim","locale","remove","generateSimpleSlug","StockType","OrderStatus","TrendType","FRAMES","ErrorCode","TransferType","Role","QueueProcessorHandler","QueueProcessor","LoginType","CONSTANTS_EXAMPLE","server","JOIN_COIN_ROOM","JOIN_COIN_POINT_ROOM","JOIN_SUMMARY_STATISTIC_ROOM","LEAVE_COIN_ROOM","COIN_SIGNAL","COIN_BATCH_SIGNAL","COIN_POINT","COIN_SUMMARY","COIN_SUMMARY_STATISTIC","module","vi","name","icon","translations","header","button","message","nav","tab","other","frame","en","requestLocalizations","regions","localization_changeLanguage","localization_getCurrentLanguage","key","flag","enFlag","antdLocale","enUS","viFlag","viUS","getCurrentLanguage","getItem","changeLanguage","language","location","helpers_localization","localize","lang","localization","newLanguage","LogicError","code","extra","_this","classCallCheck","_super","Error","normalizeParams","entries","accum","param","_param","obj","handleRequestError","_error$response","status","response","config","notificationHelper","i18next","t","denyAccess","statusCode","errorField","title","localizationHelper","des","fallbackLng","handleRequestSuccess","notificationTypes","notificationConstants","saveNewNotification","pushNotificationsForCurrentUser","Date","now","createdAt","toISOString","seen","getNotificationsForCurrentUser","currentUserId","parse","getAllUserToNotifications","putNotificationsForCurrentUser","notifications","limitedNotifications","orderBy","slice","userToNotifications","helpers_notification","description","ns","markReadAll","browserHistory","app","createBrowserHistory","_inherits","_createSuper","_regeneratorRuntime","_classCallCheck","_createClass","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","e","rejected","done","__rest","indexOf","getOwnPropertySymbols","i","propertyIsEnumerable","Api","HttpClient","ContentType","axios_1","_a","securityWorker","secure","axiosConfig","securityData","setSecurityData","_b","path","body","secureParams","requestParams","responseFormat","t1","mergeRequestParams","FormData","headers","common","Accept","put","createFormData","instance","assign","Content-Type","responseType","default","baseURL","params1","params2","defaults","input","keys","property","append","Blob","_HttpClient","_this2","authControllerLogin","Json","authControllerForgot","authControllerResetPassword","authControllerChangePassword","authControllerChangePasswordForUser","authControllerGetMe","usersControllerUploadImage","usersControllerUploadFile","permissionsControllerGetAllPermissions","permissionsControllerGrantPermissions","permissionsControllerGetPermissionsByUserId","userId","departmentsControllerGetPermissionsByUserId","departmentsControllerGrantPermissions","departmentsControllerUpdateDepartment","departmentsControllerDeleteDepartment","positionsControllerGetPermissionsByUserId","positionsControllerGrantPermissions","positionsControllerUpdatePosition","positionsControllerDeletePosition","crud","deleteOneBaseUserCrudUser","getOneBaseUserCrudUser","updateOneBaseUserCrudUser","replaceOneBaseUserCrudUser","createManyBaseUserCrudUser","getManyBaseUserCrudUser","createOneBaseUserCrudUser","countries","isNewUser","user","verifiedAt","verifyAt","diff","orderCount","SignalHelper","EG_THRESHOLD","PLC_THRESHOLD","FX_THRESHOLD","constants_1","lodash_1","isValidFX","rate","isValidPLC","isValidEG","shouldShowLongShortFXColor","frameSummary","coinCount","avgFxsummaryLong","getAvgFxLong","avgFxsummaryShort","getAvgFxShort","fxLongRate","getFxLongRate","fxShortRate","getFxShortRate","fxLongCount","getFxCountLong","fxShortCount","getFxCountShort","isValidFxLong","isValidFxShort","isLongColor","isShortColor","shouldShowLongShortPLCColor","isLongPLCColor","isShortPLCColor","plcLongRate","getPLCLongRate","pclShortRate","getPLCShortRate","shouldShowLongShortEGColor","egLongRate","getEGLongRate","egShortRate","getEGShortRate","isLongEGColor","isShortEGColor","getFxCountByTrend","trendType","Down","Up","getSummaryByTrend","getSummaryLong","getSummaryShort","getAvgFxByTrend","avg","Math","round","getPLCCountLong","getPLCCountByTrend","getPLCCountShort","getEGCountLong","getEGCountByTrend","getEGCountShort","getCoinCount","summary","fxCount","plcCount","egCount","PrivateRoute","props","Component","component","objectWithoutProperties","_excluded","react_default","react_router","render","routeProps","AdminLayout","Loadable","loader","all","bind","UserAssetLayout","UserLayout","LandingLayout","NewsLayout","RenewPassword","ForgotPassword","VerifyRegister","Page404","Page403","Page500","App","history","exact","i18n","use","initReactI18next","init","resources","lng","debug","defaultNS","keySeparator","interpolation","escapeValue","formatSeparator","react","wait","Boolean","hostname","match","ReactDOM","hooks","Provider","es","config_provider_default","src_App","document","getElementById","navigator","serviceWorker","ready","registration","unregister","require","clearAccessToken","removeItem","href","setAccessToken","BASE_API_URL","BASE_URL","BASE_CRUD_URL","axios","interceptors","requestHelper","getAuthorization","Authorization","withCredentials","errorHandler","cb","_authConstants$KEY_CU","REACT_APP_BASE_API_URL","RE_CAPTCHA_KEY","GOOGLE_RECAPTCHA_SITE_KEY","ENABLE_RECAPTCHA","_ENV__$ENABLE_RECAPT","setGlobal","extraData"],"mappings":"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,yBACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,gBACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,iCACAiC,KAAA,MACC,CACDjC,KAAA,oBACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,eACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,iBACAiC,KAAA,MACC,CACDjC,KAAA,2BACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,mBACAiC,KAAA,MACC,CACDjC,KAAA,0BACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,wCACAiC,KAAA,MACC,CACDjC,KAAA,eACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,gBACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,iBACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,qBACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,cACAiC,KAAA,MACC,CACDjC,KAAA,oBACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,8BACAiC,KAAA,MACC,CACDjC,KAAA,gBACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,gBACAiC,KAAA,MACC,CACDjC,KAAA,mBACAiC,KAAA,MACC,CACDjC,KAAA,8BACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,gBACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,oCACAiC,KAAA,MACC,CACDjC,KAAA,gCACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,4BACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,cACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,yCACAiC,KAAA,MACC,CACDjC,KAAA,qBACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,mCACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,yBACAiC,KAAA,MACC,CACDjC,KAAA,gBACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,6CACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,mBACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,kCACAiC,KAAA,MACC,CACDjC,KAAA,uBACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,cACAiC,KAAA,MACC,CACDjC,KAAA,uBACAiC,KAAA,MACC,CACDjC,KAAA,gBACAiC,KAAA,MACC,CACDjC,KAAA,cACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,iBACAiC,KAAA,MACC,CACDjC,KAAA,2BACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,kCACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,mBACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,cACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,cACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,qBACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,eACAiC,KAAA,MACC,CACDjC,KAAA,wBACAiC,KAAA,MACC,CACDjC,KAAA,cACAiC,KAAA,MACC,CACDjC,KAAA,4BACAiC,KAAA,MACC,CACDjC,KAAA,mCACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,wBACAiC,KAAA,MACC,CACDjC,KAAA,eACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,wBACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,eACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,kBACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,eACAiC,KAAA,MACC,CACDjC,KAAA,+CACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,yBACAiC,KAAA,MACC,CACDjC,KAAA,YACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,cACAiC,KAAA,MACC,CACDjC,KAAA,uBACAiC,KAAA,MACC,CACDjC,KAAA,4BACAiC,KAAA,MACC,CACDjC,KAAA,aACAiC,KAAA,MACC,CACDjC,KAAA,+BACAiC,KAAA,MACC,CACDjC,KAAA,WACAiC,KAAA,MACC,CACDjC,KAAA,cACAiC,KAAA,MACC,CACDjC,KAAA,OACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,QACAiC,KAAA,MACC,CACDjC,KAAA,sBACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,eACAiC,KAAA,MACC,CACDjC,KAAA,2BACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,SACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA,uBACAiC,KAAA,MACC,CACDjC,KAAA,iBACAiC,KAAA,MACC,CACDjC,KAAA,gBACAiC,KAAA,MACC,CACDjC,KAAA,uCACAiC,KAAA,MACC,CACDjC,KAAA,UACAiC,KAAA,MACC,CACDjC,KAAA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","file":"static/js/main.e8528fe2.chunk.js","sourcesContent":["export default {\n ACCESS_TOKEN: 'access_token',\n NOTIFICATION_KEY: 'notifications',\n KEY_CURRENT_USER_ID: 'current_user_id',\n KEY_LANGUAGE: 'constant.language',\n PRICE_COLUMNS_KEY: 'price_columns',\n};\n","export default {\n KEY_CURRENT_PERMISSIONS: 'currentPermissions' as string,\n KEY_CURRENT_USER: 'currentUser' as string,\n\n KEY_COMMISSION_CFG: 'cfgs',\n\n api: {\n USER_DETAIL: '/me' as string,\n },\n};\n","import { NotificationTypeT } from 'types';\n\nconst types = {\n danger: {\n text: 'Danger',\n value: 'danger' as NotificationTypeT,\n },\n warning: {\n text: 'Warning',\n value: 'warning' as NotificationTypeT,\n },\n success: {\n text: 'Success',\n value: 'success' as NotificationTypeT,\n },\n info: {\n text: 'Info',\n value: 'info' as NotificationTypeT,\n },\n};\n\nexport default {\n types,\n};\n","export { default as localStorageConstants } from './local-storage';\nexport { default as authConstants } from './auth';\nexport { default as notificationConstants } from './notification';\n","import humps from 'humps';\nimport { useEffect, useReducer, useState } from 'react';\nimport { has } from 'helpers/lodash';\nimport { requestServices } from 'services';\n\nexport interface StateT {\n loading: boolean;\n error: Error | null;\n data: T | null;\n fetched: boolean;\n}\n\nexport interface Action {\n type: string;\n payload?: any;\n}\n\nconst initState = (_default: any): StateT => ({\n loading: false,\n error: null,\n data: _default,\n fetched: false,\n});\n\nconst reducer = (state: StateT, action: Action) => {\n switch (action.type) {\n case 'startFetch':\n return { ...state, loading: true };\n case 'fetchSuccess':\n return {\n ...state,\n loading: false,\n data: action.payload,\n error: null,\n fetched: true,\n };\n case 'fetchError':\n return {\n ...state,\n loading: false,\n data: null,\n error: action.payload,\n fetched: true,\n };\n default:\n return state;\n }\n};\n\nexport const useFetch = (\n promise: any,\n when: any[] = [],\n options: { defaultValue: any } = { defaultValue: null },\n) => {\n const [{ data, error, loading, fetched }, dispatch] = useReducer(\n reducer,\n initState(options.defaultValue),\n );\n let mount = true;\n useEffect(() => {\n mount = true;\n return () => {\n mount = false;\n };\n }, []);\n useEffect(() => {\n const fetchData = async () => {\n dispatch({ type: 'startFetch' });\n try {\n const { data: _data } = await promise();\n if (has(_data, 'statusCode') && has(_data, 'data')) {\n if (!mount) {\n return;\n }\n dispatch({\n type: 'fetchSuccess',\n payload: _data.data,\n });\n return;\n }\n if (!mount) {\n return;\n }\n dispatch({ type: 'fetchSuccess', payload: _data });\n } catch (err) {\n if (!mount) {\n return;\n }\n dispatch({ type: 'fetchError', payload: err });\n }\n };\n fetchData();\n }, when);\n return { error, data, loading, fetched };\n};\n\nexport const useFetchAPI = (\n resource: string,\n params: any,\n when: any[] = [],\n) => {\n return useFetch(() => {\n return requestServices.userClient.get(`/${resource}`, { params });\n }, when);\n};\n\nexport default useFetch;\n","import humps from 'humps';\nimport { useCallback, useEffect, useReducer } from 'react';\nimport { has } from 'helpers/lodash';\nimport { requestServices } from 'services';\nimport { AxiosError, Method } from 'axios';\n\ninterface StateT {\n loading: boolean;\n error: Error | null;\n data: T | null;\n}\n\ninterface Action {\n type: string;\n payload?: any;\n}\n\nconst initState = (_default: any): StateT => ({\n loading: false,\n error: null,\n data: _default,\n});\n\nconst reducer = (state: StateT, action: Action) => {\n switch (action.type) {\n case 'startFetch':\n return { ...state, loading: true };\n case 'fetchSuccess':\n return { ...state, loading: false, data: action.payload };\n case 'fetchError':\n return { ...state, loading: false, error: action.payload };\n default:\n return state;\n }\n};\n\nexport const useMutate = (\n promise: any,\n when: any[] = [],\n options: {\n valueDefault?: any;\n inputIsSnake?: boolean;\n callback?: (err: any, data: any, form?: any) => void;\n } = {},\n): [StateT, (formData: any, cb?: any) => void] => {\n const {\n valueDefault = [],\n inputIsSnake = false,\n callback = (err = null, data: any = null) => { },\n } = options;\n\n const [{ data, error, loading }, dispatch] = useReducer(\n reducer,\n initState(valueDefault),\n );\n\n let mount = true;\n useEffect(() => {\n mount = true;\n return () => {\n mount = false;\n };\n }, []);\n\n const mutate = useCallback(\n (formData, inlineCallBack = () => { }) => {\n const _form = inputIsSnake ? humps.decamelizeKeys(formData) : formData;\n const fetchData = async () => {\n dispatch({ type: 'startFetch' });\n\n try {\n const { data: _data } = await promise(_form);\n\n if (has(_data, 'data')) {\n if (!mount) {\n return;\n }\n const tranform = humps.camelizeKeys(_data.data);\n dispatch({\n type: 'fetchSuccess',\n payload: tranform,\n });\n callback(null, tranform, _form);\n inlineCallBack(null, tranform);\n return;\n }\n const tranform = humps.camelizeKeys(_data);\n\n if (!mount) {\n return;\n }\n callback(null, tranform, _form);\n inlineCallBack(null, tranform);\n dispatch({ type: 'fetchSuccess', payload: tranform });\n } catch (err) {\n if (!mount) {\n return;\n }\n\n dispatch({ type: 'fetchError', payload: err });\n callback(err, null);\n inlineCallBack(err, null);\n }\n };\n fetchData();\n },\n [...when, callback],\n );\n\n return [{ error, data, loading }, mutate];\n};\n\nexport const useMutateAPI = (\n resource: string,\n when: any[] = [],\n callback = (err: AxiosError, data: any, form?: any) => { },\n) => {\n return useMutate(\n (formData: any) => {\n return requestServices.userClient.post(`/${resource}`, formData);\n },\n when,\n { valueDefault: null, callback },\n );\n};\n\nexport const useMutateCrud = (\n resource: string,\n when: any[] = [],\n callback = (err: Error, data: any) => { },\n method: Method = 'POST',\n) => {\n return useMutate(\n (formData: any) => {\n return requestServices.crudClient.request({\n url: `/${resource}`,\n data: formData,\n method,\n });\n },\n when,\n { valueDefault: null, callback },\n );\n};\n\nexport default useMutate;\n","import { authConstants, localStorageConstants } from 'constants/index';\nimport { useEffect } from 'react';\nimport { useGlobal, useState } from 'reactn';\nimport { requestServices, userServices } from 'services';\n\nexport const useUserInfo = () => {\n const [currentUser, setCurrentUser] = useGlobal(\n authConstants.KEY_CURRENT_USER,\n );\n const [loading, setLoading] = useState(true);\n const [currentPermissions, setCurrentPermissions] = useGlobal(\n authConstants.KEY_CURRENT_PERMISSIONS,\n );\n\n useEffect(() => {\n if (userServices.getAccessToken() && !currentUser) {\n setLoading(true);\n userServices\n .getCurrentUserInfo()\n .then((userData) => {\n setCurrentUser(userData.data, () => {\n setCurrentPermissions(userData.data.permissions, () => {\n requestServices.walletClient\n .request({\n url: `/networks`,\n })\n .then((res) => {\n let respNetworks = res.data.data;\n if (respNetworks.length > 0) {\n const selectedNetworkId = respNetworks[0]['id'];\n requestServices.walletClient\n .request({\n url: `/info`,\n params: {\n network_id: selectedNetworkId,\n },\n })\n .then((res) => {\n console.log('Init address success!');\n });\n }\n });\n setLoading(() => false);\n });\n });\n })\n .catch(() => {\n setLoading(() => false);\n });\n } else {\n setLoading(false);\n }\n }, [currentUser, setCurrentUser]);\n\n if (currentUser && userServices.getCurrentUserId() !== currentUser.id) {\n localStorage.setItem(\n localStorageConstants.KEY_CURRENT_USER_ID,\n currentUser.id,\n );\n }\n\n return {\n currentPermissions,\n currentUser,\n setCurrentUser,\n loading,\n };\n};\n\nexport default {\n useUserInfo,\n};\n","import * as _ from 'lodash';\nimport {\n RequestQueryBuilder,\n CondOperator,\n QueryFilter,\n QuerySort,\n} from '@nestjsx/crud-request';\nimport useFetch from 'hooks/useFetch';\nimport { requestServices } from 'services';\n\nexport interface IUseGetListOptions {\n filters?: Array;\n sorts?: Array;\n page?: number;\n limit?: number;\n joins?: string[];\n}\n\nexport const useGetList = (resource: string, options: IUseGetListOptions) => {\n const url = `/${resource}`;\n const query = RequestQueryBuilder.create({\n filter: _.get(options, 'filters', []),\n sort: _.get(options, 'sorts', []),\n limit: options.limit || 25,\n page: options.page || 0,\n join: _.get(options, 'joins', [] as string[]).map((join: string) => ({\n field: join,\n })),\n }).query(true);\n return useFetch(\n () => {\n return requestServices.crudClient.get(url + '?' + query);\n },\n [JSON.stringify(options)],\n {\n defaultValue: {},\n },\n );\n};\n","import { RequestQueryBuilder } from '@nestjsx/crud-request';\nimport useFetch from 'hooks/useFetch';\nimport { useCallback, useState } from 'reactn';\nimport { requestServices } from 'services';\n\nexport const useGetOne = (\n resource: string,\n id: number | string,\n joins: string[] = [],\n) => {\n const [count, setCount] = useState(0);\n const url = `/${resource}/${id}`;\n const query = RequestQueryBuilder.create({\n join: (joins || []).map((join: string) => ({\n field: join,\n })),\n }).query(true);\n const refresh = useCallback(() => [setCount(s => s + 1)], [setCount]);\n const rest = useFetch(\n () => {\n return requestServices.crudClient.get(url + '?' + query);\n },\n [resource, id, count],\n {\n defaultValue: null,\n },\n );\n\n return { ...rest, refresh };\n};\n","import { RequestQueryBuilder } from '@nestjsx/crud-request';\n\nimport useMutate from 'hooks/useMutate';\nimport { requestServices } from 'services';\n\nexport const useUpdateOne = (\n resource: string,\n callback?: (err: any, result: any) => void,\n keyPath?: string,\n) => {\n keyPath = keyPath || 'id';\n return useMutate(\n (_form: any) => {\n const url = `/${resource}/${_form[keyPath!]}`;\n return requestServices.crudClient.patch(url, _form);\n },\n [resource],\n {\n callback,\n },\n );\n};\n","import * as _ from 'lodash';\nimport { QuerySort, QueryFilter } from '@nestjsx/crud-request';\nimport { SorterResult } from 'antd/lib/table/interface';\nimport { useCallback } from 'react';\nimport { useEffect, useState } from 'reactn';\nimport { IUseGetListOptions, useGetList } from './useGetList';\n\nconst initState: IUseGetListOptions = {\n filters: [],\n sorts: [],\n page: 1,\n limit: 25,\n};\n\ninterface IReload {\n count: number;\n}\n\nconst mappingOrderValue = (order: string) => {\n if (order === 'ascend') return 'ASC';\n if (order === 'descend') return 'DESC';\n return undefined;\n};\n\nconst convertSortAntdToNest = (\n sorter?: SorterResult | SorterResult[],\n) => {\n let sorts: Array = [];\n if (sorter && !_.isArray(sorter)) {\n const order = mappingOrderValue((sorter as SorterResult).order as any);\n if (!order) return undefined;\n sorts = [\n {\n field: (sorter as SorterResult).field as any,\n order,\n },\n ];\n } else if (sorter && _.isArray(sorter)) {\n sorts = (sorter as SorterResult[]).reduce(\n (prev: Array, st) => {\n const order = mappingOrderValue(st.order as any);\n if (!order) return prev;\n prev.push({\n field: st.field as any,\n order,\n });\n return prev;\n },\n [] as Array,\n );\n }\n\n return sorts;\n};\n\nexport interface IHookTableResult {\n error: string;\n data?: { data: any[]; total: number };\n loading: boolean;\n changeFilters: (filters: Array) => void;\n changeSorter: (sorter?: SorterResult | SorterResult[]) => void;\n changePagination: (pagination: {\n current: number;\n pageSize: number | undefined;\n }) => void;\n resource: string;\n reload: () => void;\n state: IReload & IUseGetListOptions;\n}\n\nexport const useTable = (resource: string, iState?: IUseGetListOptions) => {\n const initialState: IReload & IUseGetListOptions = {\n ...initState,\n ...(iState || {}),\n count: 0,\n };\n const [state, setState] = useState(\n initialState,\n );\n\n const result = useGetList(resource, state);\n const reload = useCallback(() => {\n setState((state) => ({ ...state, count: state.count + 1 }));\n }, []);\n const changePagination = useCallback(\n (pagination: { current: number; pageSize: number | undefined }) => {\n const page = pagination.current;\n const limit = pagination.pageSize || 25;\n\n setState((prev) => ({ ...prev, page, limit }));\n },\n [setState],\n );\n\n const changeSorter = useCallback(\n (sorter?: SorterResult | SorterResult[]) => {\n setState((prev) => ({ ...prev, sorts: convertSortAntdToNest(sorter) }));\n },\n [setState],\n );\n\n const changeFilters = useCallback(\n (filters: Array) => {\n setState((prev) => ({\n ...prev,\n filters,\n sorts: prev.sorts,\n limit: prev.limit,\n page: 1,\n }));\n },\n [setState],\n );\n return {\n ...result,\n data: {\n ...result.data,\n data: _.map(result.data.data, (item, idx) => ({\n ...item,\n idIndex: idx + 1 + ((state.page || 1) - 1) * (state.limit || 1),\n })),\n },\n changePagination,\n changeSorter,\n changeFilters,\n reload,\n state,\n resource,\n } as IHookTableResult;\n};\n","import useMutate from 'hooks/useMutate';\nimport { requestServices } from 'services';\n\nexport const useDeleteOne = (\n resource: string,\n callback?: (err: any, result: any) => void,\n) => {\n return useMutate(\n (id: number) => {\n const url = `/${resource}/${id}`;\n return requestServices.crudClient.delete(url);\n },\n [resource],\n {\n callback,\n },\n );\n};\n","import { EVENTNAME } from '@app/common';\nimport { appHelper } from 'helpers';\nimport React, { useContext, useEffect, useRef } from 'react';\nimport { useGlobal } from 'reactn';\nimport { userServices } from 'services';\nimport socketIOClient, { Socket } from 'socket.io-client';\n\nexport const socket = socketIOClient(\n (window as any).__ENV__.REACT_APP_BASE_SOCKET_URL,\n {\n transports: ['websocket', 'polling'],\n auth: { token: userServices.getAccessToken() },\n },\n);\n\nsocket.on('connect', () => {\n socket.on(EVENTNAME.client.TOKEN_REVOKE, () => {\n userServices.logout();\n });\n});\n\nsocket.on('disconnect', () => {\n console.log(socket.id); // undefined\n});\n\nexport const SocketContext = React.createContext(socket);\n\nexport const useSocket = () => {\n const socket = useContext(SocketContext);\n return socket;\n};\n","export * from './useFetch';\nexport * from './useHandleTable';\nexport * from './useMutate';\nexport * from './user';\nexport * from './crud';\nexport * from './permissions';\nexport * from './useSocket';\nexport * from './useCommissionCfgs';\n","import { Spin } from 'antd';\nimport React from 'react';\n\nconst LoadingPage = () => {\n return ;\n};\n\nexport default LoadingPage;\n","\"use strict\";\n\nvar __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, {\n enumerable: true,\n get: function get() {\n return m[k];\n }\n });\n} : function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nvar __exportStar = this && this.__exportStar || function (m, exports) {\n for (var p in m) {\n if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n }\n};\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\n__exportStar(require(\"./constants\"), exports);\n\n__exportStar(require(\"./api\"), exports);\n\n__exportStar(require(\"./countries\"), exports);\n\n__exportStar(require(\"./helper\"), exports);\n\n__exportStar(require(\"./signal\"), exports);","import * as _ from 'lodash';\nimport { PaginationConfig } from 'antd/lib/pagination';\nimport moment from 'moment';\nimport slugify from 'slugify';\n\nconst generateSlug = (link: string, id: number) => {\n return slugify(`${link}-i${id}`, {\n replacement: '-',\n lower: true,\n trim: true,\n locale: 'vi',\n remove: /[,;<>#$%^&?*+~.()'\"!:@]/g,\n });\n};\n\nconst generateSimpleSlug = (link: string) => {\n return slugify(`${link}`, {\n replacement: '-',\n lower: true,\n trim: true,\n locale: 'vi',\n remove: /[,;<>#$%^&?*+~.()'\"!:@]/g,\n });\n};\n\nconst initPagination: PaginationConfig = {\n current: 1,\n pageSize: 10,\n total: 0,\n // showTotal: (total, range) => (\n // \n // ),\n showSizeChanger: true,\n pageSizeOptions: ['5', '10', '20', '50'],\n};\n\nconst formatWithCurrency = (amount: number, currency: string) => {\n var formatter = new Intl.NumberFormat('vi-VN', {\n style: 'currency',\n currency: currency,\n });\n\n return formatter.format(amount);\n};\n\nconst formatCurrency = (amount: number) => {\n return roundNumber(amount);\n};\n\nconst formatDateTable = (day: string) => {\n return moment(day).format('DD/MM/YYYY HH:mm');\n};\n\nconst formatDateTimeTable = (day: string) => {\n return moment(day).format('DD/MM/YYYY HH:mm:ss');\n};\n\nconst formatFromUnixSecond = (time: number | undefined) => {\n if (!time) return '';\n return moment(time * 1000).format('DD/MM/YYYY HH:mm');\n};\n\nconst roundNumber = (num: number) => _.round(num, 2);\n\nexport default {\n initPagination,\n formatWithCurrency,\n formatCurrency,\n formatDateTable,\n formatDateTimeTable,\n formatFromUnixSecond,\n roundNumber,\n generateSlug,\n generateSimpleSlug,\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.StockType = exports.OrderStatus = exports.TrendType = exports.EVENTNAME = exports.FRAMES = exports.ErrorCode = exports.TransferType = exports.Role = exports.QueueProcessorHandler = exports.QueueProcessor = exports.LoginType = exports.CONSTANTS_EXAMPLE = void 0;\nexports.CONSTANTS_EXAMPLE = \"example\";\nvar LoginType;\n\n(function (LoginType) {\n LoginType[\"BASIC\"] = \"basic\";\n LoginType[\"GOOGLE\"] = \"google\";\n LoginType[\"FACEBOOK\"] = \"facebook\";\n})(LoginType = exports.LoginType || (exports.LoginType = {}));\n\nvar QueueProcessor;\n\n(function (QueueProcessor) {\n QueueProcessor[\"EMAIL\"] = \"email\";\n})(QueueProcessor = exports.QueueProcessor || (exports.QueueProcessor = {}));\n\nvar QueueProcessorHandler;\n\n(function (QueueProcessorHandler) {\n QueueProcessorHandler[\"SEND_EMAIL\"] = \"send-email\";\n})(QueueProcessorHandler = exports.QueueProcessorHandler || (exports.QueueProcessorHandler = {}));\n\nvar Role;\n\n(function (Role) {\n Role[\"Admin\"] = \"Admin\";\n Role[\"Monitor\"] = \"Monitor\";\n Role[\"User\"] = \"User\";\n Role[\"System\"] = \"System\";\n})(Role = exports.Role || (exports.Role = {}));\n\nvar TransferType;\n\n(function (TransferType) {\n TransferType[\"Subtract\"] = \"subtract\";\n TransferType[\"Addition\"] = \"addition\";\n TransferType[\"Commission\"] = \"commission\";\n})(TransferType = exports.TransferType || (exports.TransferType = {}));\n\nvar ErrorCode;\n\n(function (ErrorCode) {\n ErrorCode[\"WRONG_EMAIL\"] = \"wrong_email\";\n ErrorCode[\"EMAIL_NOT_FOUND\"] = \"email_not_found\";\n ErrorCode[\"DUPLICATE_EMAIL\"] = \"duplicate_email\";\n ErrorCode[\"DUPLICATE_TELEGRAM\"] = \"duplicate_telegram\";\n ErrorCode[\"TELEGRAM_LINKED\"] = \"telegram_linked\";\n ErrorCode[\"DUPLICATE_EMAIL_OR_TELEGRAM\"] = \"duplicate_email_or_telegram\";\n ErrorCode[\"UNKNOWN\"] = \"unknown\";\n ErrorCode[\"WRONG_FIELD\"] = \"wrong_field\";\n ErrorCode[\"WRONG_PASSWORD\"] = \"wrong_password\";\n ErrorCode[\"EMPTY_USERNAME\"] = \"empty_username\";\n ErrorCode[\"WRONG_USERNAME\"] = \"wrong_username\";\n ErrorCode[\"WRONG_PLAN\"] = \"wrong_plan\";\n ErrorCode[\"ACCOUNT_NOT_CREATED\"] = \"account_not_created\";\n ErrorCode[\"ACCOUNT_NOT_CREATED_OR_EXPIRED\"] = \"account_not_created_or_expired\";\n ErrorCode[\"ACCOUNT_NOT_VERIFIED\"] = \"account_not_verified\";\n ErrorCode[\"NOT_INTERACTIVE_WITH_BOT_YET\"] = \"not_interactive\";\n})(ErrorCode = exports.ErrorCode || (exports.ErrorCode = {}));\n\nexports.FRAMES = [\"M5\", \"M15\", \"M30\", \"H1\", \"H4\", \"H8\", \"H12\", \"D1\", \"D3\", \"W\", \"M\"];\nexports.EVENTNAME = {\n server: {\n JOIN_COIN_ROOM: \"join-coin-room\",\n JOIN_COIN_POINT_ROOM: \"join-coin-point-room\",\n JOIN_SUMMARY_STATISTIC_ROOM: \"join-summary-statistic-room\",\n LEAVE_COIN_ROOM: \"leave-coin-room\"\n },\n client: {\n COIN_SIGNAL: \"coin-signal\",\n COIN_BATCH_SIGNAL: \"coin-batch-signal\",\n COIN_POINT: \"coin-point\",\n COIN_SUMMARY: \"coin-summary\",\n COIN_SUMMARY_STATISTIC: \"coin-summary-statistic\",\n TOKEN_REVOKE: \"token-revoke\"\n }\n};\nvar TrendType;\n\n(function (TrendType) {\n TrendType[\"Up\"] = \"UP\";\n TrendType[\"Down\"] = \"DOWN\";\n})(TrendType = exports.TrendType || (exports.TrendType = {}));\n\nvar OrderStatus;\n\n(function (OrderStatus) {\n OrderStatus[\"Created\"] = \"created\";\n OrderStatus[\"Transfered\"] = \"transfered\";\n OrderStatus[\"Finished\"] = \"finished\";\n})(OrderStatus = exports.OrderStatus || (exports.OrderStatus = {}));\n\nvar StockType;\n\n(function (StockType) {\n StockType[\"Future\"] = \"future\";\n StockType[\"Spot\"] = \"spot\";\n})(StockType = exports.StockType || (exports.StockType = {}));","module.exports = __webpack_public_path__ + \"static/media/en.0eb3abb3.svg\";","module.exports = __webpack_public_path__ + \"static/media/vi.cf0d0ed2.svg\";","import header from './header.json';\nimport button from './button.json';\nimport error from './error.json';\nimport action from './action.json';\nimport message from './message.json';\nimport nav from './nav.json';\nimport tab from './tab.json';\nimport field from './field.json';\nimport other from './other.json';\nimport frame from './frame.json';\n\nexport default {\n name: 'Tiếng Việt',\n icon: 'flag-icon flag-icon-vn',\n translations: {\n ...header,\n ...button,\n ...error,\n ...action,\n ...message,\n ...nav,\n ...tab,\n ...field,\n ...other,\n ...frame,\n },\n};\n","import header from './header.json';\nimport button from './button.json';\nimport error from './error.json';\nimport action from './action.json';\nimport message from './message.json';\nimport nav from './nav.json';\nimport tab from './tab.json';\nimport field from './field.json';\nimport other from './other.json';\nimport frame from './frame.json';\n\nexport default {\n name: 'English',\n icon: 'flag-icon flag-icon-gb',\n translations: {\n ...header,\n ...button,\n ...error,\n ...action,\n ...message,\n ...nav,\n ...tab,\n ...field,\n ...other,\n ...frame,\n },\n};\n","export default {};\n","import vi from './vi';\nimport en from './en';\nimport requestLocalizations from './requestLocalizations';\nimport { Locale } from 'antd/lib/locale-provider';\nimport { localStorageConstants } from 'constants/index';\n// Flags\nimport enFlag from 'assets/images/flags/en.svg';\nimport enUS from 'antd/lib/locale/en_US';\n\nimport viFlag from 'assets/images/flags/vi.svg';\nimport viUS from 'antd/lib/locale/vi_VN';\n\nconst regions = {\n en: {\n key: 'en',\n name: en.name,\n flag: enFlag,\n antdLocale: enUS,\n translations: en.translations,\n },\n vi: {\n key: 'vi',\n name: vi.name,\n flag: viFlag,\n antdLocale: viUS,\n translations: vi.translations,\n },\n};\n\nexport interface IRegionItem {\n key: string;\n name: string;\n flag: string;\n antdLocale: Locale;\n}\n\nconst getCurrentLanguage = () => {\n // return regions.vi.key;\n return (\n localStorage.getItem(localStorageConstants.KEY_LANGUAGE) || regions.vi.key\n );\n};\n\nconst changeLanguage = (language: string) => {\n if (language === getCurrentLanguage()) return;\n localStorage.setItem(localStorageConstants.KEY_LANGUAGE, language);\n window.location.reload();\n};\n\nexport { regions, requestLocalizations, changeLanguage, getCurrentLanguage };\n","import { regions, requestLocalizations } from 'localization';\nimport { localStorageConstants } from '../constants';\n\nconst localize = (key: string, lang?: string) => {\n const language = lang || regions.vi.key;\n const localization = requestLocalizations[key];\n if (localization && localization[language]) {\n return localization[language];\n }\n return key;\n};\n\nconst getCurrentLanguage = () => {\n // return regions.vi.key;\n let language =\n localStorage.getItem(localStorageConstants.KEY_LANGUAGE) || regions.vi.key;\n\n // check if language in localstorage exist in project or not\n if (!regions[language]) language = regions.en.key;\n\n return language;\n};\n\nconst changeLanguage = (newLanguage: string) => {\n localStorage.setItem(localStorageConstants.KEY_LANGUAGE, newLanguage);\n window.location.reload();\n};\n\nexport default {\n localize,\n getCurrentLanguage,\n changeLanguage,\n};\n","import * as _ from 'lodash';\nimport { localizationHelper, notificationHelper } from 'helpers';\nimport { userServices } from 'services';\nimport { AxiosError } from 'axios';\nimport i18next from 'i18next';\n\nconst STATUS_SUCCESS = 'success';\n\nclass LogicError extends Error {\n constructor(\n public code: string | undefined,\n message: string,\n public extra: any,\n ) {\n super(code);\n }\n}\n\nconst normalizeParams = (params: any) =>\n Object.entries(params).reduce((accum, param) => {\n const [key, value] = param;\n if (value && value !== 'all') {\n const obj = { ...accum };\n obj[key] = value;\n return obj;\n }\n return accum;\n }, {});\n\nconst handleRequestError = (error: AxiosError) => {\n const status = error && error.response && error.response.status;\n switch (status) {\n case 401:\n if (error.response?.config.url === '/login') {\n notificationHelper.error(\n i18next.t(`error.${error.response.data.message}`),\n );\n return;\n }\n\n userServices.logout();\n\n break;\n case 403:\n userServices.denyAccess();\n break;\n default: {\n if (\n error.response &&\n error.response.data &&\n error.response.data.statusCode\n ) {\n const { data } = error.response;\n const { message, statusCode, error: errorField } = data;\n\n const title = localizationHelper.localize(statusCode);\n\n if (statusCode === 400) {\n const des = `${i18next.t(`error.${message}`)}`;\n notificationHelper.error(title || errorField, des);\n return;\n }\n\n notificationHelper.error(\n title,\n i18next.t(`error.${message}`, {\n fallbackLng: i18next.t('message.errorCommon'),\n }),\n );\n } else {\n notificationHelper.error(\n 'Network request failed',\n `Network status ${status}`,\n );\n }\n }\n }\n};\n\nconst handleRequestSuccess = (data: any) => {\n if (data.code && data.code !== STATUS_SUCCESS) {\n const title = localizationHelper.localize(data.code);\n const { message } = data;\n notificationHelper.error(title, message);\n throw new LogicError(data.code, message, data.extra);\n }\n};\nexport default {\n normalizeParams,\n handleRequestError,\n handleRequestSuccess,\n};\n","import * as _ from 'lodash';\nimport { notification } from 'antd';\nimport { localStorageConstants, notificationConstants } from 'constants/index';\nimport { notificationHelper } from 'helpers/index';\nimport { userServices } from 'services';\nimport { NotificationT, NotificationTypeT } from 'types';\nimport { orderBy } from './lodash';\n\nconst MAX_PERSISTED_NOTIFICATION = 100;\nconst notificationTypes = notificationConstants.types;\n\nconst saveNewNotification = (\n title: string,\n message: string,\n type: NotificationTypeT,\n) => {\n notificationHelper.pushNotificationsForCurrentUser({\n id: `${Date.now()}`,\n title,\n message,\n createdAt: new Date().toISOString(),\n type,\n seen: false,\n });\n};\n\nconst success = (message: string, description: string = '') => {\n notification.success({ message, description });\n saveNewNotification(message, description, notificationTypes.success.value);\n};\n\nconst error = (message: any, description: any = '') => {\n if (typeof description === 'string') {\n notification.error({ message, description });\n } else {\n notification.error({ message, description: description.message || '' });\n }\n};\n\nconst warning = (message: string, description: string = '') => {\n notification.warning({ message, description });\n saveNewNotification(message, description, notificationTypes.warning.value);\n};\n\nconst getNotificationsForCurrentUser = () => {\n const currentUserId = userServices.getCurrentUserId();\n if (!currentUserId) return [];\n const userToNotifications = JSON.parse(\n localStorage.getItem(localStorageConstants.NOTIFICATION_KEY) || '{}',\n );\n return userToNotifications[currentUserId] || [];\n};\n\nconst getAllUserToNotifications = () => {\n return JSON.parse(\n localStorage.getItem(localStorageConstants.NOTIFICATION_KEY) || '{}',\n );\n};\n\nconst putNotificationsForCurrentUser = (notifications: NotificationT[]) => {\n const currentUserId = userServices.getCurrentUserId();\n const limitedNotifications = orderBy(\n notifications,\n ['createdAt'],\n ['desc'],\n ).slice(0, MAX_PERSISTED_NOTIFICATION);\n if (currentUserId) {\n const userToNotifications = getAllUserToNotifications();\n localStorage.setItem(\n localStorageConstants.NOTIFICATION_KEY,\n JSON.stringify({\n ...userToNotifications,\n [currentUserId]: limitedNotifications,\n }),\n );\n }\n};\n\nconst pushNotificationsForCurrentUser = (n: NotificationT) => {\n const currentUserId = userServices.getCurrentUserId();\n if (currentUserId) {\n const notifications: [NotificationT] = getNotificationsForCurrentUser();\n notifications.push(n);\n const ns = _.unionBy(notifications, (n) => n.id);\n putNotificationsForCurrentUser(ns);\n }\n};\n\nconst markReadAll = () => {\n const currentUserId = userServices.getCurrentUserId();\n if (currentUserId) {\n const notifications: [NotificationT] = getNotificationsForCurrentUser();\n\n const ns = _.map(notifications, (n) => {\n n.seen = true;\n return n;\n });\n putNotificationsForCurrentUser(ns);\n }\n};\n\nexport default {\n success,\n error,\n warning,\n getNotificationsForCurrentUser,\n pushNotificationsForCurrentUser,\n putNotificationsForCurrentUser,\n getAllUserToNotifications,\n markReadAll,\n};\n","import { createBrowserHistory } from 'history';\nexport { default as localizationHelper } from './localization';\nexport { default as cookieHelper } from './cookies';\nexport { default as requestHelper } from './request';\nexport { default as notificationHelper } from './notification';\nexport { default as appHelper } from './app';\n\nexport const browserHistory = createBrowserHistory();\n","\"use strict\";\n\nvar _inherits = require(\"/root/coin-automate/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/inherits\");\n\nvar _createSuper = require(\"/root/coin-automate/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/createSuper\");\n\nvar _regeneratorRuntime = require(\"/root/coin-automate/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\");\n\nvar _classCallCheck = require(\"/root/coin-automate/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/classCallCheck\");\n\nvar _createClass = require(\"/root/coin-automate/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/createClass\");\n\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\n\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n\n for (var p in s) {\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n }\n\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.Api = exports.HttpClient = exports.ContentType = void 0;\n\nvar axios_1 = require(\"axios\");\n\nvar ContentType;\n\n(function (ContentType) {\n ContentType[\"Json\"] = \"application/json\";\n ContentType[\"FormData\"] = \"multipart/form-data\";\n ContentType[\"UrlEncoded\"] = \"application/x-www-form-urlencoded\";\n})(ContentType = exports.ContentType || (exports.ContentType = {}));\n\nvar HttpClient = /*#__PURE__*/function () {\n function HttpClient() {\n var _this = this;\n\n var _a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, HttpClient);\n\n var securityWorker = _a.securityWorker,\n secure = _a.secure,\n format = _a.format,\n axiosConfig = __rest(_a, [\"securityWorker\", \"secure\", \"format\"]);\n\n this.securityData = null;\n\n this.setSecurityData = function (data) {\n _this.securityData = data;\n };\n\n this.request = function (_b) {\n return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var secure, path, type, query, format, body, params, secureParams, requestParams, responseFormat;\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n secure = _b.secure, path = _b.path, type = _b.type, query = _b.query, format = _b.format, body = _b.body, params = __rest(_b, [\"secure\", \"path\", \"type\", \"query\", \"format\", \"body\"]);\n _context.t1 = (typeof secure === \"boolean\" ? secure : this.secure) && this.securityWorker;\n\n if (!_context.t1) {\n _context.next = 6;\n break;\n }\n\n _context.next = 5;\n return this.securityWorker(this.securityData);\n\n case 5:\n _context.t1 = _context.sent;\n\n case 6:\n _context.t0 = _context.t1;\n\n if (_context.t0) {\n _context.next = 9;\n break;\n }\n\n _context.t0 = {};\n\n case 9:\n secureParams = _context.t0;\n requestParams = this.mergeRequestParams(params, secureParams);\n responseFormat = format && this.format || void 0;\n\n if (type === ContentType.FormData && body && body !== null && typeof body === \"object\") {\n requestParams.headers.common = {\n Accept: \"*/*\"\n };\n requestParams.headers.post = {};\n requestParams.headers.put = {};\n body = this.createFormData(body);\n }\n\n return _context.abrupt(\"return\", this.instance.request(Object.assign(Object.assign({}, requestParams), {\n headers: Object.assign(Object.assign({}, type && type !== ContentType.FormData ? {\n \"Content-Type\": type\n } : {}), requestParams.headers || {}),\n params: query,\n responseType: responseFormat,\n data: body,\n url: path\n })));\n\n case 14:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n };\n\n this.instance = axios_1.default.create(Object.assign(Object.assign({}, axiosConfig), {\n baseURL: axiosConfig.baseURL || \"\"\n }));\n this.secure = secure;\n this.format = format;\n this.securityWorker = securityWorker;\n }\n\n _createClass(HttpClient, [{\n key: \"mergeRequestParams\",\n value: function mergeRequestParams(params1, params2) {\n return Object.assign(Object.assign(Object.assign(Object.assign({}, this.instance.defaults), params1), params2 || {}), {\n headers: Object.assign(Object.assign(Object.assign({}, this.instance.defaults.headers || {}), params1.headers || {}), params2 && params2.headers || {})\n });\n }\n }, {\n key: \"createFormData\",\n value: function createFormData(input) {\n return Object.keys(input || {}).reduce(function (formData, key) {\n var property = input[key];\n formData.append(key, property instanceof Blob ? property : typeof property === \"object\" && property !== null ? JSON.stringify(property) : \"\".concat(property));\n return formData;\n }, new FormData());\n }\n }]);\n\n return HttpClient;\n}();\n\nexports.HttpClient = HttpClient;\n\nvar Api = /*#__PURE__*/function (_HttpClient) {\n _inherits(Api, _HttpClient);\n\n var _super = _createSuper(Api);\n\n function Api() {\n var _this2;\n\n _classCallCheck(this, Api);\n\n _this2 = _super.apply(this, arguments);\n _this2.api = {\n authControllerLogin: function authControllerLogin(data) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/login\",\n method: \"POST\",\n body: data,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n authControllerForgot: function authControllerForgot(data) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/auth/forgotpassword\",\n method: \"POST\",\n body: data,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n authControllerResetPassword: function authControllerResetPassword(data) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/auth/renewpassword\",\n method: \"POST\",\n body: data,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n authControllerChangePassword: function authControllerChangePassword(data) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/auth/changepassword\",\n method: \"POST\",\n body: data,\n secure: true,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n authControllerChangePasswordForUser: function authControllerChangePasswordForUser(id, data) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return _this2.request(Object.assign({\n path: \"/api/auth/changepassword/\".concat(id),\n method: \"POST\",\n body: data,\n secure: true,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n authControllerGetMe: function authControllerGetMe() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return _this2.request(Object.assign({\n path: \"/api/me\",\n method: \"GET\",\n secure: true,\n format: \"json\"\n }, params));\n },\n usersControllerUploadImage: function usersControllerUploadImage() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return _this2.request(Object.assign({\n path: \"/api/upload/image\",\n method: \"POST\",\n format: \"json\"\n }, params));\n },\n usersControllerUploadFile: function usersControllerUploadFile() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return _this2.request(Object.assign({\n path: \"/api/upload/file\",\n method: \"POST\",\n format: \"json\"\n }, params));\n },\n permissionsControllerGetAllPermissions: function permissionsControllerGetAllPermissions() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return _this2.request(Object.assign({\n path: \"/api/permissions\",\n method: \"GET\"\n }, params));\n },\n permissionsControllerGrantPermissions: function permissionsControllerGrantPermissions(data) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/permissions\",\n method: \"POST\",\n body: data,\n type: ContentType.Json\n }, params));\n },\n permissionsControllerGetPermissionsByUserId: function permissionsControllerGetPermissionsByUserId(userId) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/permissions/\".concat(userId),\n method: \"GET\"\n }, params));\n },\n departmentsControllerGetPermissionsByUserId: function departmentsControllerGetPermissionsByUserId() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return _this2.request(Object.assign({\n path: \"/api/departments\",\n method: \"GET\",\n format: \"json\"\n }, params));\n },\n departmentsControllerGrantPermissions: function departmentsControllerGrantPermissions(data) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/departments\",\n method: \"POST\",\n body: data,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n departmentsControllerUpdateDepartment: function departmentsControllerUpdateDepartment(id, data) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return _this2.request(Object.assign({\n path: \"/api/departments/\".concat(id),\n method: \"PATCH\",\n body: data,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n departmentsControllerDeleteDepartment: function departmentsControllerDeleteDepartment(id) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/departments/\".concat(id),\n method: \"DELETE\",\n format: \"json\"\n }, params));\n },\n positionsControllerGetPermissionsByUserId: function positionsControllerGetPermissionsByUserId() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return _this2.request(Object.assign({\n path: \"/api/positions\",\n method: \"GET\",\n format: \"json\"\n }, params));\n },\n positionsControllerGrantPermissions: function positionsControllerGrantPermissions(data) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/positions\",\n method: \"POST\",\n body: data,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n positionsControllerUpdatePosition: function positionsControllerUpdatePosition(id, data) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return _this2.request(Object.assign({\n path: \"/api/positions/\".concat(id),\n method: \"PATCH\",\n body: data,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n positionsControllerDeletePosition: function positionsControllerDeletePosition(id) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/api/positions/\".concat(id),\n method: \"DELETE\",\n format: \"json\"\n }, params));\n }\n };\n _this2.crud = {\n deleteOneBaseUserCrudUser: function deleteOneBaseUserCrudUser(id) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/crud/users/\".concat(id),\n method: \"DELETE\",\n secure: true\n }, params));\n },\n getOneBaseUserCrudUser: function getOneBaseUserCrudUser(id, query) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return _this2.request(Object.assign({\n path: \"/crud/users/\".concat(id),\n method: \"GET\",\n query: query,\n secure: true,\n format: \"json\"\n }, params));\n },\n updateOneBaseUserCrudUser: function updateOneBaseUserCrudUser(id, data) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return _this2.request(Object.assign({\n path: \"/crud/users/\".concat(id),\n method: \"PATCH\",\n body: data,\n secure: true,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n replaceOneBaseUserCrudUser: function replaceOneBaseUserCrudUser(id, data) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return _this2.request(Object.assign({\n path: \"/crud/users/\".concat(id),\n method: \"PUT\",\n body: data,\n secure: true,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n createManyBaseUserCrudUser: function createManyBaseUserCrudUser(data) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/crud/users/bulk\",\n method: \"POST\",\n body: data,\n secure: true,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n },\n getManyBaseUserCrudUser: function getManyBaseUserCrudUser(query) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/crud/users\",\n method: \"GET\",\n query: query,\n secure: true,\n format: \"json\"\n }, params));\n },\n createOneBaseUserCrudUser: function createOneBaseUserCrudUser(data) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return _this2.request(Object.assign({\n path: \"/crud/users\",\n method: \"POST\",\n body: data,\n secure: true,\n type: ContentType.Json,\n format: \"json\"\n }, params));\n }\n };\n return _this2;\n }\n\n return Api;\n}(HttpClient);\n\nexports.Api = Api;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.countries = void 0;\nexports.countries = [{\n name: \"Afghanistan\",\n code: \"AF\"\n}, {\n name: \"Åland Islands\",\n code: \"AX\"\n}, {\n name: \"Albania\",\n code: \"AL\"\n}, {\n name: \"Algeria\",\n code: \"DZ\"\n}, {\n name: \"American Samoa\",\n code: \"AS\"\n}, {\n name: \"AndorrA\",\n code: \"AD\"\n}, {\n name: \"Angola\",\n code: \"AO\"\n}, {\n name: \"Anguilla\",\n code: \"AI\"\n}, {\n name: \"Antarctica\",\n code: \"AQ\"\n}, {\n name: \"Antigua and Barbuda\",\n code: \"AG\"\n}, {\n name: \"Argentina\",\n code: \"AR\"\n}, {\n name: \"Armenia\",\n code: \"AM\"\n}, {\n name: \"Aruba\",\n code: \"AW\"\n}, {\n name: \"Australia\",\n code: \"AU\"\n}, {\n name: \"Austria\",\n code: \"AT\"\n}, {\n name: \"Azerbaijan\",\n code: \"AZ\"\n}, {\n name: \"Bahamas\",\n code: \"BS\"\n}, {\n name: \"Bahrain\",\n code: \"BH\"\n}, {\n name: \"Bangladesh\",\n code: \"BD\"\n}, {\n name: \"Barbados\",\n code: \"BB\"\n}, {\n name: \"Belarus\",\n code: \"BY\"\n}, {\n name: \"Belgium\",\n code: \"BE\"\n}, {\n name: \"Belize\",\n code: \"BZ\"\n}, {\n name: \"Benin\",\n code: \"BJ\"\n}, {\n name: \"Bermuda\",\n code: \"BM\"\n}, {\n name: \"Bhutan\",\n code: \"BT\"\n}, {\n name: \"Bolivia\",\n code: \"BO\"\n}, {\n name: \"Bosnia and Herzegovina\",\n code: \"BA\"\n}, {\n name: \"Botswana\",\n code: \"BW\"\n}, {\n name: \"Bouvet Island\",\n code: \"BV\"\n}, {\n name: \"Brazil\",\n code: \"BR\"\n}, {\n name: \"British Indian Ocean Territory\",\n code: \"IO\"\n}, {\n name: \"Brunei Darussalam\",\n code: \"BN\"\n}, {\n name: \"Bulgaria\",\n code: \"BG\"\n}, {\n name: \"Burkina Faso\",\n code: \"BF\"\n}, {\n name: \"Burundi\",\n code: \"BI\"\n}, {\n name: \"Cambodia\",\n code: \"KH\"\n}, {\n name: \"Cameroon\",\n code: \"CM\"\n}, {\n name: \"Canada\",\n code: \"CA\"\n}, {\n name: \"Cape Verde\",\n code: \"CV\"\n}, {\n name: \"Cayman Islands\",\n code: \"KY\"\n}, {\n name: \"Central African Republic\",\n code: \"CF\"\n}, {\n name: \"Chad\",\n code: \"TD\"\n}, {\n name: \"Chile\",\n code: \"CL\"\n}, {\n name: \"China\",\n code: \"CN\"\n}, {\n name: \"Christmas Island\",\n code: \"CX\"\n}, {\n name: \"Cocos (Keeling) Islands\",\n code: \"CC\"\n}, {\n name: \"Colombia\",\n code: \"CO\"\n}, {\n name: \"Comoros\",\n code: \"KM\"\n}, {\n name: \"Congo\",\n code: \"CG\"\n}, {\n name: \"Congo, The Democratic Republic of the\",\n code: \"CD\"\n}, {\n name: \"Cook Islands\",\n code: \"CK\"\n}, {\n name: \"Costa Rica\",\n code: \"CR\"\n}, {\n name: \"Cote D'Ivoire\",\n code: \"CI\"\n}, {\n name: \"Croatia\",\n code: \"HR\"\n}, {\n name: \"Cuba\",\n code: \"CU\"\n}, {\n name: \"Cyprus\",\n code: \"CY\"\n}, {\n name: \"Czech Republic\",\n code: \"CZ\"\n}, {\n name: \"Denmark\",\n code: \"DK\"\n}, {\n name: \"Djibouti\",\n code: \"DJ\"\n}, {\n name: \"Dominica\",\n code: \"DM\"\n}, {\n name: \"Dominican Republic\",\n code: \"DO\"\n}, {\n name: \"Ecuador\",\n code: \"EC\"\n}, {\n name: \"Egypt\",\n code: \"EG\"\n}, {\n name: \"El Salvador\",\n code: \"SV\"\n}, {\n name: \"Equatorial Guinea\",\n code: \"GQ\"\n}, {\n name: \"Eritrea\",\n code: \"ER\"\n}, {\n name: \"Estonia\",\n code: \"EE\"\n}, {\n name: \"Ethiopia\",\n code: \"ET\"\n}, {\n name: \"Falkland Islands (Malvinas)\",\n code: \"FK\"\n}, {\n name: \"Faroe Islands\",\n code: \"FO\"\n}, {\n name: \"Fiji\",\n code: \"FJ\"\n}, {\n name: \"Finland\",\n code: \"FI\"\n}, {\n name: \"France\",\n code: \"FR\"\n}, {\n name: \"French Guiana\",\n code: \"GF\"\n}, {\n name: \"French Polynesia\",\n code: \"PF\"\n}, {\n name: \"French Southern Territories\",\n code: \"TF\"\n}, {\n name: \"Gabon\",\n code: \"GA\"\n}, {\n name: \"Gambia\",\n code: \"GM\"\n}, {\n name: \"Georgia\",\n code: \"GE\"\n}, {\n name: \"Germany\",\n code: \"DE\"\n}, {\n name: \"Ghana\",\n code: \"GH\"\n}, {\n name: \"Gibraltar\",\n code: \"GI\"\n}, {\n name: \"Greece\",\n code: \"GR\"\n}, {\n name: \"Greenland\",\n code: \"GL\"\n}, {\n name: \"Grenada\",\n code: \"GD\"\n}, {\n name: \"Guadeloupe\",\n code: \"GP\"\n}, {\n name: \"Guam\",\n code: \"GU\"\n}, {\n name: \"Guatemala\",\n code: \"GT\"\n}, {\n name: \"Guernsey\",\n code: \"GG\"\n}, {\n name: \"Guinea\",\n code: \"GN\"\n}, {\n name: \"Guinea-Bissau\",\n code: \"GW\"\n}, {\n name: \"Guyana\",\n code: \"GY\"\n}, {\n name: \"Haiti\",\n code: \"HT\"\n}, {\n name: \"Heard Island and Mcdonald Islands\",\n code: \"HM\"\n}, {\n name: \"Holy See (Vatican City State)\",\n code: \"VA\"\n}, {\n name: \"Honduras\",\n code: \"HN\"\n}, {\n name: \"Hong Kong\",\n code: \"HK\"\n}, {\n name: \"Hungary\",\n code: \"HU\"\n}, {\n name: \"Iceland\",\n code: \"IS\"\n}, {\n name: \"India\",\n code: \"IN\"\n}, {\n name: \"Indonesia\",\n code: \"ID\"\n}, {\n name: \"Iran, Islamic Republic Of\",\n code: \"IR\"\n}, {\n name: \"Iraq\",\n code: \"IQ\"\n}, {\n name: \"Ireland\",\n code: \"IE\"\n}, {\n name: \"Isle of Man\",\n code: \"IM\"\n}, {\n name: \"Israel\",\n code: \"IL\"\n}, {\n name: \"Italy\",\n code: \"IT\"\n}, {\n name: \"Jamaica\",\n code: \"JM\"\n}, {\n name: \"Japan\",\n code: \"JP\"\n}, {\n name: \"Jersey\",\n code: \"JE\"\n}, {\n name: \"Jordan\",\n code: \"JO\"\n}, {\n name: \"Kazakhstan\",\n code: \"KZ\"\n}, {\n name: \"Kenya\",\n code: \"KE\"\n}, {\n name: \"Kiribati\",\n code: \"KI\"\n}, {\n name: \"Korea, Democratic People'S Republic of\",\n code: \"KP\"\n}, {\n name: \"Korea, Republic of\",\n code: \"KR\"\n}, {\n name: \"Kuwait\",\n code: \"KW\"\n}, {\n name: \"Kyrgyzstan\",\n code: \"KG\"\n}, {\n name: \"Lao People'S Democratic Republic\",\n code: \"LA\"\n}, {\n name: \"Latvia\",\n code: \"LV\"\n}, {\n name: \"Lebanon\",\n code: \"LB\"\n}, {\n name: \"Lesotho\",\n code: \"LS\"\n}, {\n name: \"Liberia\",\n code: \"LR\"\n}, {\n name: \"Libyan Arab Jamahiriya\",\n code: \"LY\"\n}, {\n name: \"Liechtenstein\",\n code: \"LI\"\n}, {\n name: \"Lithuania\",\n code: \"LT\"\n}, {\n name: \"Luxembourg\",\n code: \"LU\"\n}, {\n name: \"Macao\",\n code: \"MO\"\n}, {\n name: \"Macedonia, The Former Yugoslav Republic of\",\n code: \"MK\"\n}, {\n name: \"Madagascar\",\n code: \"MG\"\n}, {\n name: \"Malawi\",\n code: \"MW\"\n}, {\n name: \"Malaysia\",\n code: \"MY\"\n}, {\n name: \"Maldives\",\n code: \"MV\"\n}, {\n name: \"Mali\",\n code: \"ML\"\n}, {\n name: \"Malta\",\n code: \"MT\"\n}, {\n name: \"Marshall Islands\",\n code: \"MH\"\n}, {\n name: \"Martinique\",\n code: \"MQ\"\n}, {\n name: \"Mauritania\",\n code: \"MR\"\n}, {\n name: \"Mauritius\",\n code: \"MU\"\n}, {\n name: \"Mayotte\",\n code: \"YT\"\n}, {\n name: \"Mexico\",\n code: \"MX\"\n}, {\n name: \"Micronesia, Federated States of\",\n code: \"FM\"\n}, {\n name: \"Moldova, Republic of\",\n code: \"MD\"\n}, {\n name: \"Monaco\",\n code: \"MC\"\n}, {\n name: \"Mongolia\",\n code: \"MN\"\n}, {\n name: \"Montserrat\",\n code: \"MS\"\n}, {\n name: \"Morocco\",\n code: \"MA\"\n}, {\n name: \"Mozambique\",\n code: \"MZ\"\n}, {\n name: \"Myanmar\",\n code: \"MM\"\n}, {\n name: \"Namibia\",\n code: \"NA\"\n}, {\n name: \"Nauru\",\n code: \"NR\"\n}, {\n name: \"Nepal\",\n code: \"NP\"\n}, {\n name: \"Netherlands\",\n code: \"NL\"\n}, {\n name: \"Netherlands Antilles\",\n code: \"AN\"\n}, {\n name: \"New Caledonia\",\n code: \"NC\"\n}, {\n name: \"New Zealand\",\n code: \"NZ\"\n}, {\n name: \"Nicaragua\",\n code: \"NI\"\n}, {\n name: \"Niger\",\n code: \"NE\"\n}, {\n name: \"Nigeria\",\n code: \"NG\"\n}, {\n name: \"Niue\",\n code: \"NU\"\n}, {\n name: \"Norfolk Island\",\n code: \"NF\"\n}, {\n name: \"Northern Mariana Islands\",\n code: \"MP\"\n}, {\n name: \"Norway\",\n code: \"NO\"\n}, {\n name: \"Oman\",\n code: \"OM\"\n}, {\n name: \"Pakistan\",\n code: \"PK\"\n}, {\n name: \"Palau\",\n code: \"PW\"\n}, {\n name: \"Palestinian Territory, Occupied\",\n code: \"PS\"\n}, {\n name: \"Panama\",\n code: \"PA\"\n}, {\n name: \"Papua New Guinea\",\n code: \"PG\"\n}, {\n name: \"Paraguay\",\n code: \"PY\"\n}, {\n name: \"Peru\",\n code: \"PE\"\n}, {\n name: \"Philippines\",\n code: \"PH\"\n}, {\n name: \"Pitcairn\",\n code: \"PN\"\n}, {\n name: \"Poland\",\n code: \"PL\"\n}, {\n name: \"Portugal\",\n code: \"PT\"\n}, {\n name: \"Puerto Rico\",\n code: \"PR\"\n}, {\n name: \"Qatar\",\n code: \"QA\"\n}, {\n name: \"Reunion\",\n code: \"RE\"\n}, {\n name: \"Romania\",\n code: \"RO\"\n}, {\n name: \"Russian Federation\",\n code: \"RU\"\n}, {\n name: \"RWANDA\",\n code: \"RW\"\n}, {\n name: \"Saint Helena\",\n code: \"SH\"\n}, {\n name: \"Saint Kitts and Nevis\",\n code: \"KN\"\n}, {\n name: \"Saint Lucia\",\n code: \"LC\"\n}, {\n name: \"Saint Pierre and Miquelon\",\n code: \"PM\"\n}, {\n name: \"Saint Vincent and the Grenadines\",\n code: \"VC\"\n}, {\n name: \"Samoa\",\n code: \"WS\"\n}, {\n name: \"San Marino\",\n code: \"SM\"\n}, {\n name: \"Sao Tome and Principe\",\n code: \"ST\"\n}, {\n name: \"Saudi Arabia\",\n code: \"SA\"\n}, {\n name: \"Senegal\",\n code: \"SN\"\n}, {\n name: \"Serbia and Montenegro\",\n code: \"CS\"\n}, {\n name: \"Seychelles\",\n code: \"SC\"\n}, {\n name: \"Sierra Leone\",\n code: \"SL\"\n}, {\n name: \"Singapore\",\n code: \"SG\"\n}, {\n name: \"Slovakia\",\n code: \"SK\"\n}, {\n name: \"Slovenia\",\n code: \"SI\"\n}, {\n name: \"Solomon Islands\",\n code: \"SB\"\n}, {\n name: \"Somalia\",\n code: \"SO\"\n}, {\n name: \"South Africa\",\n code: \"ZA\"\n}, {\n name: \"South Georgia and the South Sandwich Islands\",\n code: \"GS\"\n}, {\n name: \"Spain\",\n code: \"ES\"\n}, {\n name: \"Sri Lanka\",\n code: \"LK\"\n}, {\n name: \"Sudan\",\n code: \"SD\"\n}, {\n name: \"Suriname\",\n code: \"SR\"\n}, {\n name: \"Svalbard and Jan Mayen\",\n code: \"SJ\"\n}, {\n name: \"Swaziland\",\n code: \"SZ\"\n}, {\n name: \"Sweden\",\n code: \"SE\"\n}, {\n name: \"Switzerland\",\n code: \"CH\"\n}, {\n name: \"Syrian Arab Republic\",\n code: \"SY\"\n}, {\n name: \"Taiwan, Province of China\",\n code: \"TW\"\n}, {\n name: \"Tajikistan\",\n code: \"TJ\"\n}, {\n name: \"Tanzania, United Republic of\",\n code: \"TZ\"\n}, {\n name: \"Thailand\",\n code: \"TH\"\n}, {\n name: \"Timor-Leste\",\n code: \"TL\"\n}, {\n name: \"Togo\",\n code: \"TG\"\n}, {\n name: \"Tokelau\",\n code: \"TK\"\n}, {\n name: \"Tonga\",\n code: \"TO\"\n}, {\n name: \"Trinidad and Tobago\",\n code: \"TT\"\n}, {\n name: \"Tunisia\",\n code: \"TN\"\n}, {\n name: \"Turkey\",\n code: \"TR\"\n}, {\n name: \"Turkmenistan\",\n code: \"TM\"\n}, {\n name: \"Turks and Caicos Islands\",\n code: \"TC\"\n}, {\n name: \"Tuvalu\",\n code: \"TV\"\n}, {\n name: \"Uganda\",\n code: \"UG\"\n}, {\n name: \"Ukraine\",\n code: \"UA\"\n}, {\n name: \"United Arab Emirates\",\n code: \"AE\"\n}, {\n name: \"United Kingdom\",\n code: \"GB\"\n}, {\n name: \"United States\",\n code: \"US\"\n}, {\n name: \"United States Minor Outlying Islands\",\n code: \"UM\"\n}, {\n name: \"Uruguay\",\n code: \"UY\"\n}, {\n name: \"Uzbekistan\",\n code: \"UZ\"\n}, {\n name: \"Vanuatu\",\n code: \"VU\"\n}, {\n name: \"Venezuela\",\n code: \"VE\"\n}, {\n name: \"Viet Nam\",\n code: \"VN\"\n}, {\n name: \"Virgin Islands, British\",\n code: \"VG\"\n}, {\n name: \"Virgin Islands, U.S.\",\n code: \"VI\"\n}, {\n name: \"Wallis and Futuna\",\n code: \"WF\"\n}, {\n name: \"Western Sahara\",\n code: \"EH\"\n}, {\n name: \"Yemen\",\n code: \"YE\"\n}, {\n name: \"Zambia\",\n code: \"ZM\"\n}, {\n name: \"Zimbabwe\",\n code: \"ZW\"\n}];","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.isNewUser = void 0;\n\nvar moment = require(\"moment\");\n\nvar isNewUser = function isNewUser(user) {\n if (!user || !user.verifiedAt) return false;\n var verifyAt = moment(user.verifiedAt);\n var now = moment();\n var diffNow = now.diff(verifyAt, \"seconds\") / (60 * 24 * 60);\n return diffNow <= 30 && user.orderCount === 0;\n};\n\nexports.isNewUser = isNewUser;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SignalHelper = exports.EG_THRESHOLD = exports.PLC_THRESHOLD = exports.FX_THRESHOLD = void 0;\n\nvar _ = require(\"lodash\");\n\nvar constants_1 = require(\"./constants\");\n\nvar lodash_1 = require(\"lodash\");\n\nexports.FX_THRESHOLD = 20.0;\nexports.PLC_THRESHOLD = 20.0;\nexports.EG_THRESHOLD = 20.0;\nexports.SignalHelper = {\n isValidFX: function isValidFX(rate) {\n return rate >= exports.FX_THRESHOLD;\n },\n isValidPLC: function isValidPLC(rate) {\n return rate >= exports.PLC_THRESHOLD;\n },\n isValidEG: function isValidEG(rate) {\n return rate >= exports.EG_THRESHOLD;\n },\n shouldShowLongShortFXColor: function shouldShowLongShortFXColor(frameSummary, coinCount) {\n if (coinCount === 0) {\n return false;\n }\n\n var avgFxsummaryLong = exports.SignalHelper.getAvgFxLong(frameSummary);\n var avgFxsummaryShort = exports.SignalHelper.getAvgFxShort(frameSummary);\n var fxLongRate = exports.SignalHelper.getFxLongRate(frameSummary, coinCount);\n var fxShortRate = exports.SignalHelper.getFxShortRate(frameSummary, coinCount);\n var fxLongCount = exports.SignalHelper.getFxCountLong(frameSummary);\n var fxShortCount = exports.SignalHelper.getFxCountShort(frameSummary);\n var isValidFxLong = exports.SignalHelper.isValidFX(fxLongRate);\n var isValidFxShort = exports.SignalHelper.isValidFX(fxShortRate);\n var isLongColor = isValidFxLong && (!isValidFxShort || isValidFxShort && fxLongCount > fxShortCount) && (avgFxsummaryLong || 0) >= 30;\n var isShortColor = isValidFxShort && (!isValidFxLong || isValidFxLong && fxShortCount > fxLongCount) && (avgFxsummaryShort || 0) >= 30;\n return {\n isLongColor: isLongColor,\n isShortColor: isShortColor\n };\n },\n shouldShowLongShortPLCColor: function shouldShowLongShortPLCColor(frameSummary, coinCount) {\n if (coinCount === 0) {\n return {\n isLongPLCColor: false,\n isShortPLCColor: false\n };\n }\n\n var plcLongRate = exports.SignalHelper.getPLCLongRate(frameSummary, coinCount);\n var pclShortRate = exports.SignalHelper.getPLCShortRate(frameSummary, coinCount);\n var isValidPLCLong = exports.SignalHelper.isValidPLC(plcLongRate);\n var isValidPLCShort = exports.SignalHelper.isValidPLC(pclShortRate);\n var isLongPLCColor = isValidPLCLong;\n var isShortPLCColor = isValidPLCShort;\n return {\n isLongPLCColor: isLongPLCColor,\n isShortPLCColor: isShortPLCColor\n };\n },\n shouldShowLongShortEGColor: function shouldShowLongShortEGColor(frameSummary, coinCount) {\n if (coinCount === 0) {\n return {\n isLongPLCColor: false,\n isShortPLCColor: false\n };\n }\n\n var egLongRate = exports.SignalHelper.getEGLongRate(frameSummary, coinCount);\n var egShortRate = exports.SignalHelper.getEGShortRate(frameSummary, coinCount);\n var isValidEGLong = exports.SignalHelper.isValidEG(egLongRate);\n var isValidEGShort = exports.SignalHelper.isValidEG(egShortRate);\n return {\n isLongEGColor: isValidEGLong,\n isShortEGColor: isValidEGShort\n };\n },\n getFxCountByTrend: function getFxCountByTrend(frameSummary, trendType) {\n return _.get(frameSummary, \"[\".concat(trendType, \"].fxCount\"), 0);\n },\n getFxCountLong: function getFxCountLong(frameSummary) {\n return exports.SignalHelper.getFxCountByTrend(frameSummary, constants_1.TrendType.Down);\n },\n getFxCountShort: function getFxCountShort(frameSummary) {\n return exports.SignalHelper.getFxCountByTrend(frameSummary, constants_1.TrendType.Up);\n },\n getSummaryByTrend: function getSummaryByTrend(frameSummary, trendType) {\n return _.get(frameSummary, \"[\".concat(trendType, \"].summary\"), \"--\");\n },\n getSummaryLong: function getSummaryLong(frameSummary) {\n return exports.SignalHelper.getSummaryByTrend(frameSummary, constants_1.TrendType.Down);\n },\n getSummaryShort: function getSummaryShort(frameSummary) {\n return exports.SignalHelper.getSummaryByTrend(frameSummary, constants_1.TrendType.Up);\n },\n getAvgFxLong: function getAvgFxLong(frameSummary) {\n return exports.SignalHelper.getAvgFxByTrend(frameSummary, constants_1.TrendType.Down);\n },\n getAvgFxShort: function getAvgFxShort(frameSummary) {\n return exports.SignalHelper.getAvgFxByTrend(frameSummary, constants_1.TrendType.Up);\n },\n getAvgFxByTrend: function getAvgFxByTrend(frameSummary, trendType) {\n var avg = _.get(frameSummary, \"[\".concat(trendType, \"].avgFx\"));\n\n if (avg == undefined) return undefined;\n return Math.round(avg * 10) / 10;\n },\n getPLCCountLong: function getPLCCountLong(frameSummary) {\n return exports.SignalHelper.getPLCCountByTrend(frameSummary, constants_1.TrendType.Down);\n },\n getPLCCountShort: function getPLCCountShort(frameSummary) {\n return exports.SignalHelper.getPLCCountByTrend(frameSummary, constants_1.TrendType.Up);\n },\n getEGCountLong: function getEGCountLong(frameSummary) {\n return exports.SignalHelper.getEGCountByTrend(frameSummary, constants_1.TrendType.Down);\n },\n getEGCountShort: function getEGCountShort(frameSummary) {\n return exports.SignalHelper.getEGCountByTrend(frameSummary, constants_1.TrendType.Up);\n },\n getPLCCountByTrend: function getPLCCountByTrend(frameSummary, trendType) {\n return _.get(frameSummary, \"[\".concat(trendType, \"].plcCount\")) || 0;\n },\n getEGCountByTrend: function getEGCountByTrend(frameSummary, trendType) {\n return _.get(frameSummary, \"[\".concat(trendType, \"].egCount\")) || 0;\n },\n getCoinCount: function getCoinCount(summary) {\n return _.get(summary, \"coinCount\", 0);\n },\n getFxLongRate: function getFxLongRate(frameSummary, coinCount) {\n var fxCount = exports.SignalHelper.getFxCountLong(frameSummary);\n if (coinCount === 0) return 0;\n return (0, lodash_1.round)(fxCount / coinCount * 10000) / 100;\n },\n getFxShortRate: function getFxShortRate(frameSummary, coinCount) {\n var fxCount = exports.SignalHelper.getFxCountShort(frameSummary);\n if (coinCount === 0) return 0;\n return (0, lodash_1.round)(fxCount / coinCount * 10000) / 100;\n },\n getPLCLongRate: function getPLCLongRate(frameSummary, coinCount) {\n var plcCount = exports.SignalHelper.getPLCCountLong(frameSummary);\n if (coinCount === 0) return 0;\n return (0, lodash_1.round)(plcCount / coinCount * 10000) / 100;\n },\n getPLCShortRate: function getPLCShortRate(frameSummary, coinCount) {\n var plcCount = exports.SignalHelper.getPLCCountShort(frameSummary);\n if (coinCount === 0) return 0;\n return (0, lodash_1.round)(plcCount / coinCount * 10000) / 100;\n },\n getEGLongRate: function getEGLongRate(frameSummary, coinCount) {\n var egCount = exports.SignalHelper.getEGCountLong(frameSummary);\n if (coinCount === 0) return 0;\n return (0, lodash_1.round)(egCount / coinCount * 10000) / 100;\n },\n getEGShortRate: function getEGShortRate(frameSummary, coinCount) {\n var egCount = exports.SignalHelper.getEGCountShort(frameSummary);\n if (coinCount === 0) return 0;\n return (0, lodash_1.round)(egCount / coinCount * 10000) / 100;\n }\n};","import React from 'react';\nimport { Route, RouteProps } from 'react-router-dom';\n\ninterface PropsT extends RouteProps {\n component: any;\n name?: string;\n}\n\nexport default (props: PropsT) => {\n const { component: Component, ...rest } = props;\n\n return (\n } />\n );\n};\n","import LoadingPage from 'components/LoadingPage';\nimport 'configs';\nimport { browserHistory } from 'helpers';\nimport React from 'react';\nimport Loadable from 'react-loadable';\nimport { Route, Router, Switch } from 'react-router-dom';\nimport './app.less';\nimport PrivateRoute from './components/PrivateRoute';\n\nconst loading = () => ;\n\n// Containers\nconst AdminLayout = Loadable({\n loader: () => import('./layouts/AdminLayout'),\n loading,\n});\n\nconst UserAssetLayout = Loadable({\n loader: () => import('./layouts/UserAssetLayout'),\n loading,\n});\n\n// Containers\nconst UserLayout = Loadable({\n loader: () => import('./layouts/UserLayout'),\n loading,\n});\n\n// Containers\nconst LandingLayout = Loadable({\n loader: () => import('./layouts/LandingLayout'),\n loading,\n});\n\n// Containers\nconst NewsLayout = Loadable({\n loader: () => import('./layouts/NewsLayout'),\n loading,\n});\n\n// pages\nconst Login = Loadable({\n loader: () => import('./screens/Login'),\n loading,\n});\n\nconst RenewPassword = Loadable({\n loader: () => import('./screens/RenewPassword'),\n loading,\n});\n\nconst ForgotPassword = Loadable({\n loader: () => import('./screens/ForgotPassword'),\n loading,\n});\n\nconst Register = Loadable({\n loader: () => import('./screens/Register'),\n loading,\n});\n\nconst VerifyRegister = Loadable({\n loader: () => import('./screens/VerifyRegister'),\n loading,\n});\n\nconst Page404 = Loadable({\n loader: () => import('./screens/Page404'),\n loading,\n});\n\nconst Page403 = Loadable({\n loader: () => import('./screens/Page403'),\n loading,\n});\n\nconst Page500 = Loadable({\n loader: () => import('./screens/Page500'),\n loading,\n});\n\nfunction App() {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default App;\n","import i18n from 'i18next';\nimport { regions } from 'localization';\nimport { initReactI18next } from 'react-i18next';\nimport { localizationHelper } from './helpers';\n\ni18n\n // need to testing can useTranslate function\n .use(initReactI18next)\n // initial translate object\n .init({\n // init with resources\n resources: regions,\n lng: localizationHelper.getCurrentLanguage(),\n fallbackLng: regions.en.key,\n debug: false,\n\n // have a common namespace used around the full app\n ns: ['translations'],\n defaultNS: 'translations',\n\n keySeparator: false, // we use content as keys\n\n interpolation: {\n escapeValue: false, // not needed for react!!\n formatSeparator: ',',\n },\n\n react: {\n wait: true,\n },\n });\n\nexport default i18n;\n","// This optional code is used to register a service worker.\n// register() is not called by default.\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 subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\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(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/,\n ),\n);\n\ntype Config = {\n onSuccess?: (registration: ServiceWorkerRegistration) => void;\n onUpdate?: (registration: ServiceWorkerRegistration) => void;\n};\n\nexport function register(config?: Config) {\n if ('serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(\n (process as { env: { [key: string]: string } }).env.PUBLIC_URL,\n window.location.href,\n );\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://bit.ly/CRA-PWA',\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl: string, config?: Config) {\n navigator.serviceWorker\n .register(swUrl)\n .then((registration) => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.',\n );\n\n // Execute callback\n if (config && 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 && 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: string, config?: 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 const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.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(\n 'No internet connection found. App is running in offline mode.',\n );\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 'antd/dist/antd.less';\nimport ConfigProvider from 'antd/lib/config-provider';\nimport { socket, SocketContext } from 'hooks';\nimport { getCurrentLanguage, regions } from 'localization';\nimport * as moment from 'moment';\nimport 'moment/locale/vi';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport { I18nextProvider } from 'react-i18next';\nimport App from './App';\nimport i18n from './i18n';\nimport * as serviceWorker from './serviceWorker';\nimport './themes/index.less';\n\nmoment.locale('vi');\n\nReactDOM.render(\n \n \n \n \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: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n","export const orderBy = require('lodash/orderBy');\nexport const has = require('lodash/has');\nexport const map = require('lodash/map');\n","import { cookieHelper } from 'helpers';\nimport { localStorageConstants, authConstants } from 'constants/index';\nimport { requestServices } from 'services';\nimport { browserHistory } from 'helpers';\n\nconst logout = () => {\n clearAccessToken();\n window.location.href = `/login`;\n};\n\nconst denyAccess = () => {\n browserHistory.push('/403');\n};\n\nconst getAccessToken = () =>\n localStorage.getItem(localStorageConstants.ACCESS_TOKEN);\n\nconst clearAccessToken = () => {\n localStorage.removeItem(localStorageConstants.ACCESS_TOKEN);\n};\n\nconst setAccessToken = (value: string) =>\n localStorage.setItem(localStorageConstants.ACCESS_TOKEN, value);\n\nconst getCurrentUserInfo = () => {\n return requestServices.userClient\n .get(authConstants.api.USER_DETAIL)\n .then((response) => response.data);\n};\n\nconst getCurrentUserId = () => {\n const userId = localStorage.getItem(\n localStorageConstants.KEY_CURRENT_USER_ID,\n );\n\n return userId;\n};\n\nexport default {\n logout,\n denyAccess,\n getAccessToken,\n getCurrentUserInfo,\n getCurrentUserId,\n setAccessToken,\n clearAccessToken,\n};\n","import axios, { AxiosError } from 'axios/index';\nimport { BASE_URL } from 'configs';\nimport { requestHelper } from 'helpers';\nimport { userServices } from 'services';\n\nexport const BASE_API_URL: string = `${BASE_URL}/api`;\nexport const BASE_CRUD_URL: string = `${BASE_URL}/crud`;\n\naxios.interceptors.response.use(\n (response) => response,\n (error) => {\n requestHelper.handleRequestError(error);\n return Promise.reject(error);\n },\n);\n\nconst getAuthorization = () => `Bearer ${userServices.getAccessToken()}`;\n\nconst userClient = axios.create({\n baseURL: BASE_API_URL,\n headers: {\n Authorization: getAuthorization(),\n },\n withCredentials: false,\n});\n\nuserClient.interceptors.response.use(\n (response) => response,\n (error) => {\n requestHelper.handleRequestError(error);\n return Promise.reject(error);\n },\n);\n\nconst crudClient = axios.create({\n baseURL: BASE_CRUD_URL,\n headers: {\n Authorization: getAuthorization(),\n },\n withCredentials: false,\n});\n\ncrudClient.interceptors.response.use(\n (response) => response,\n (error) => {\n requestHelper.handleRequestError(error);\n return Promise.reject(error);\n },\n);\n\nconst walletClient = axios.create({\n baseURL: `${BASE_URL}/api/wallet`,\n headers: {\n Authorization: getAuthorization(),\n },\n withCredentials: false,\n});\n\nwalletClient.interceptors.response.use(\n (response) => response,\n (error) => {\n requestHelper.handleRequestError(error);\n return Promise.reject(error);\n },\n);\n\nconst requestErrorHandler = (\n error: AxiosError | null,\n cb?: (data: any, cfg: any) => void,\n) => {\n if (!error) return;\n if (error.response) {\n // The request was made and the server responded with a status code\n // that falls out of the range of 2xx\n cb?.(error.response.data, error.config);\n return;\n }\n cb?.(null, error.config);\n // if (error.request) {\n // // The request was made but no response was received\n // // `error.request` is an instance of XMLHttpRequest in the browser and an instance of\n // // http.ClientRequest in node.js\n // console.log(error.request);\n // }\n // {\n // // Something happened in setting up the request that triggered an Error\n // console.log('Error', error.message);\n // }\n // console.log(error.config);\n};\n\n// @ts-ignore\nexport default {\n userClient,\n crudClient,\n walletClient,\n errorHandler: requestErrorHandler,\n};\n","export { default as userServices } from './user';\nexport { default as requestServices } from './request';\n","import { authConstants } from 'constants/index';\n\nexport default {\n [authConstants.KEY_CURRENT_USER]: null,\n [authConstants.KEY_CURRENT_PERMISSIONS]: null,\n};\n","export const BASE_URL =\n `${(window as any).__ENV__.REACT_APP_BASE_API_URL}` ||\n 'http://localhost:4000';\n\nexport const RE_CAPTCHA_KEY =\n `${(window as any).__ENV__.GOOGLE_RECAPTCHA_SITE_KEY}` ||\n '6LfUuY8pAAAAAIaxlI5tjTl5hhkuok4mf5TDrQ67';\n\nexport const ENABLE_RECAPTCHA =\n (window as any).__ENV__.ENABLE_RECAPTCHA ?? true;\n","// init reactN\nimport { setGlobal } from 'reactn';\nimport auth from './auth';\nexport * from './env';\nsetGlobal({\n ...auth,\n extraData: null,\n notifications: [],\n});\n"],"sourceRoot":""}