{"version":3,"sources":["assets/img/icon-info.png","assets/notification.mp3","assets/img/dnd-active.svg","assets/img/dnd-inactive.svg","assets/img/svg/maintenance.svg","translations sync /^/.//.*//common/.json$","config/page-settings.js","util/Constant.js","components/header/dropdown/notification.jsx","util/Util.js","components/header/dropdown/language.jsx","i18n.js","redux/AppAction.js","redux/FirebaseAction.js","redux/AuthAction.js","components/header/dropdown/profile.jsx","components/header/dropdown/mega.jsx","components/header/header.jsx","components/sidebar/sidebar-profile.jsx","components/sidebar/menu.jsx","components/sidebar/member-menu.jsx","components/sidebar/sidebar-nav-list.jsx","components/sidebar/sidebar-nav.jsx","components/sidebar/sidebar.jsx","util/PermissionChecker.js","redux/AuthReducer.js","redux/AppReducer.js","redux/LanguageReducer.js","redux/FirebaseReducer.js","ApplicationStore.js","redux/LanguageAction.js","util/ApiEngine.js","pages/home/Login.js","components/panel/panel.jsx","pages/home/FAQHelp.js","pages/home/Dashboard.js","pages/admin/SuperAccount.js","components/constantComponent/reactTable/ReactTable.js","components/constantComponent/button/NavigationButton.jsx","pages/admin/ManageCompany.js","pages/account/MemberDetail.js","pages/account/ManageMember.js","pages/account/ManageMember2.js","pages/account/ManageMemberPO.js","pages/account/ManageMemberCS.js","util/AudioRecorder.js","util/FileUpload.js","util/ChatUtil.js","pages/chat/chatroom.js","pages/chat/template.js","pages/home/LiveMonitor.js","pages/rewards/RewardsSetting.js","pages/rewards/RewardsSchedule.js","pages/rewards/ClaimedRewardsReport.js","pages/rewards/ForfeitedRewardsReport.js","pages/home/SportsLiveMonitor.js","pages/home/SportsTeamBetReport.js","pages/account/ManageMemberProductUsername.js","pages/report/ManageMemberFullname.js","pages/account/WalletBalance.js","pages/account/RollOverStatement.js","pages/account/ShareholdersList.js","pages/account/ShareholdersViewAccount.js","pages/account/ShareholdersProductList.js","pages/account/ShareholdersViewProduct.js","pages/account/ShareholdersViewPayout.js","pages/account/ShareholdersHuatTicket.js","pages/account/ShareholdersViewHuatTicket.js","pages/account/ShareholdersProcessSales.js","pages/account/TodayNewMembers.js","pages/account/TransferLog.js","pages/account/MemberProductMaintenance.js","pages/admin/CompanyDetail.js","pages/admin/ManageRole.js","pages/admin/RoleDetail.js","pages/admin/ChangePassword.js","pages/admin/ChangePinNumber.js","pages/admin/ManageSubAccount.js","pages/admin/SubAccountDetail.js","pages/admin/CompanyProductMaintenance.js","pages/admin/CompanyProductApiInfo.js","pages/admin/CompanyProductAccountInfo.js","pages/admin/ManageActivityLog.js","pages/transaction/Deposit.js","pages/transaction/Withdrawal.js","pages/transaction/Adjustment.js","pages/transaction/TransactionEnquiry.js","pages/account/WalletTransfer.js","pages/report/BetDetailPanel.js","pages/report/MemberManageBetDetailReport.js","pages/report/ManageProfitLossReport.js","pages/account/Product.js","pages/account/ReferralDetail.js","pages/account/BonusTracking.js","pages/account/CommissionTracking.js","pages/account/PointTracking.js","pages/report/AdjustmentReport.js","pages/account/BonusRollOverStatement.js","pages/account/MemberSportsBetLimit.js","pages/account/ManageMemberDownlineGames.js","pages/configuration/ConfigurationLanguageDetail.js","pages/configuration/ManageConfigurationLanguage.js","pages/configuration/PromotionDetail.js","pages/account/MemberPromotionStatement.js","pages/account/ViewAccount.js","pages/account/ViewProductAccount.js","pages/account/ManageIpBlock.js","pages/account/TransactionQueue.js","pages/account/ManageMobileTAC.js","pages/account/ManageMemberBirthdayReward.js","pages/account/ManageMemberWeeklyRescue.js","pages/account/ManageMemberRebate.js","pages/account/ClaimedPromotionDetail.js","pages/product/MasterProductDetail.js","pages/product/ManageMasterProduct.js","pages/product/ProductMaintenance.js","pages/product/ProductCategoryDetail.js","pages/product/ManageProductCategory.js","pages/product/AccountProductGameDetail.js","pages/product/ManageAccountProductGame.js","pages/product/Manage568WinBetLimit.js","pages/product/RetrieveMemberBetData.js","pages/configuration/bank/ManageBank.js","pages/configuration/bank/BankDetail.js","pages/configuration/bank/ManageBankAccount.js","pages/configuration/bank/BankAccountDetail.js","pages/product/ManageProductSetting.js","pages/product/ProductSettingDetail.js","pages/configuration/ManageLanguage.js","pages/configuration/LanguageDetail.js","pages/configuration/bank/ManageBankingChannel.js","pages/configuration/bank/BankingChannelDetail.js","pages/configuration/bonus/ManageBonusType.js","pages/configuration/bonus/BonusTypeDetail.js","pages/configuration/ManageInstantPaySetting.js","pages/configuration/InstantPaySettingDetail.js","pages/configuration/RejectReasonDetail.js","pages/configuration/ManageRejectReason.js","pages/configuration/sms/SmsContentDetail.js","pages/configuration/sms/ManageSmsContent.js","pages/configuration/sms/SmsSettings.js","pages/configuration/ManageAnnouncement.js","pages/configuration/AnnouncementDetail.js","pages/configuration/ManageBanner.js","pages/configuration/ManageBannerLanguage.js","pages/configuration/BannerDetail.js","pages/configuration/ManageRewardBanner.js","pages/configuration/RewardBannerDetail.js","pages/configuration/ManagePromotion.js","pages/configuration/ManageScript.js","pages/configuration/ScriptDetail.js","pages/configuration/ManageEmail.js","pages/configuration/EmailDetail.js","pages/configuration/ManageContent.js","pages/configuration/ContentDetail.js","pages/configuration/ManageVipLevel.js","pages/configuration/VipCriteriaDetail.js","pages/configuration/VipLevelDetail.js","pages/configuration/ManageRemark.js","pages/configuration/RemarkDetail.js","pages/configuration/ManageTag.js","pages/configuration/TagDetail.js","pages/configuration/bank/ManageBankPackage.js","pages/configuration/bank/BankPackageDetail.js","pages/defaultBetSetting/ManageBetSetting.js","pages/configuration/ManageContactUs.js","pages/configuration/ContactUsDetail.js","pages/configuration/ManageVipBenefit.js","pages/configuration/VipBenefitDetail.js","pages/configuration/ManageVipBenefitContent.js","pages/configuration/VipBenefitContentDetail.js","pages/configuration/ManageCommunicationChannels.js","pages/configuration/CommunicationChannelDetail.js","pages/configuration/ManageSystemSetting.js","pages/configuration/ManageRecurringJob.js","pages/configuration/ManageManualJob.js","pages/configuration/WebContent.js","pages/configuration/ManageWebContent.js","pages/configuration/ManageDepositPromotion.js","pages/configuration/DepositPromotionDetail.js","pages/configuration/ManageMarqueeTagContent.js","pages/configuration/ManageSkinSettings.js","pages/configuration/SkinSettingsDetail.js","pages/product/ManageGame.js","pages/product/GameDetail.js","pages/configuration/ManageWeeklyRescue.js","pages/configuration/WeeklyRescueDetail.js","pages/configuration/bonus/ManageBonus.js","pages/configuration/bonus/BonusDetail.js","pages/transaction/Bonus.js","pages/transaction/InstantTransaction.js","pages/transaction/TransactionDetail.js","pages/transaction/TnGSettings.js","pages/transaction/WithdrawalSettings.js","pages/transaction/AdjustmentBonusWallet.js","pages/report/ManageBetDetailReport.js","pages/report/ManageDailySummaryReport.js","pages/report/ManageChannelSummaryReport.js","pages/report/BankSummaryStatement.js","pages/report/bankSummary/BankSummaryAddCreditDebit.js","pages/report/bankSummary/BankSummaryAdjustment.js","pages/report/ManageBankSummaryReport.js","pages/report/ManageMemberReport.js","pages/report/ManageWinLossReport.js","pages/report/ManageTallyWinLossReport.js","pages/report/ManageWinLossReport3.js","pages/report/ManageBonusCommReport.js","pages/report/ManageWalletTransfer.js","pages/report/ServiceChargeReport.js","pages/report/TransactionReport.js","pages/report/WalletTransferReport.js","pages/report/ReferralReport.js","pages/report/ReferralReportDetails.js","pages/report/ShareholderProcessSalesReport.js","pages/report/ShareholderDownlineReport.js","pages/report/ProcessGameRecordReport.js","pages/report/NonProcessGameRecordReport.js","pages/report/ShareholderUnclaimReport.js","pages/report/ShareholderUnclaimReportList.js","pages/report/CommissionReportList.js","pages/report/TotalSharePayoutReport.js","pages/report/UsernameBetDetailReport.js","pages/report/TransactionSummaryReport.js","pages/report/BirthdayRewardReport.js","pages/report/GiftpaceReport.js","pages/report/ActiveMemberReport.js","pages/ipMonitor/UserIpPanel.js","pages/ipMonitor/UserIpDetailPanel.js","pages/ipMonitor/ManageIPMonitor.js","pages/home/Maintenance.js","pages/account/ManageWalletHistory.js","pages/configuration/ManageVideoTutorial.js","pages/configuration/VideoTutorialDetail.js","pages/account/ManageWalletRecon.js","pages/transaction/DepositReference.js","pages/configuration/ManageMarqueeContentLanguage.js","pages/configuration/MarqueeTagContentDeatail.js","pages/dc/ManageDCItemList.js","pages/dc/ManageDCRedemption.js","pages/dc/ManageDCItemContentLanguage.js","pages/dc/DCItemDetail.js","pages/dc/ManageDCPoints.js","pages/dc/DCPointDetail.js","pages/dc/ManageMemberDCPoints.js","pages/dc/MemberDCPointsDetail.js","pages/dc/ManageDailyCheckIn.js","pages/dc/ManageConfigurationDailyCheckIn.js","pages/dc/DailyCheckInDetail.js","pages/account/ManageMemberGamePoints.js","pages/adjustment/PointsAdjustment.js","pages/report/PointsAdjustmentReport.js","pages/report/MemberPointsReport.js","pages/configuration/ManageDepositPromotionCategory.js","pages/configuration/DepositPromotionCategoryDetail.js","pages/report/CreditRedemptionReport.js","pages/report/ReferralBonusReport.js","pages/transaction/ManageBonusDeposit.js","pages/transaction/BonusDepositDetailLanguage.js","pages/transaction/BonusDepositDetail.js","pages/home/PlayerReconciliation.js","pages/configuration/ManageChatSphere.js","pages/configuration/ManageChatSphereType.js","pages/configuration/ChatSphereTypeDetail.js","pages/configuration/ChatSphereContentLanguage.js","pages/configuration/ChatSphereDetail.js","pages/configuration/ManageChatSpherePhoneNumber.js","pages/configuration/ChatSpherePhoneNumberDetail.js","pages/account/ManageMemberBankAccount.js","pages/account/MemberBankAccountDetail.js","pages/product/CustomProductRanking.js","pages/product/CustomGamesRanking.js","pages/product/GameList.js","pages/account/ManageMLMCommission.js","pages/chat/ConfigurationLanguageDetail.js","pages/chat/ManageChatSystemTemplateLanguage.js","pages/chat/ManageChatSystemTemplate.js","pages/chat/CustomChatTemplate.js","pages/chat/ManageCustomChatTemplate.js","config/page-route.jsx","components/content/content.jsx","components/footer/footer.jsx","components/float-sub-menu/float-sub-menu-list.jsx","components/float-sub-menu/float-sub-menu.jsx","app.jsx","index.js"],"names":["module","exports","map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","PageSettings","React","createContext","ApiKey","_API_SUCCESS_KEY","_API_MESSAGE_KEY","_API_DATA_KEY","_API_CONTENT_TYPE","_API_ACCEPT","_API_APPLICATION_JSON","_API_XML_HTTP_REQUEST_KEY","_API_FORM_URLENCODED","_API_POST","_API_GET","ApiUrl","_API_LOGIN","_API_CREATE_OR_UPDATE_ACCOUNT","_API_LOGOUT","_API_GET_SUPER_COMPANY","_API_GET_ALL_COMPANY","_API_GET_ACCOUNT","_API_IS_LOGGED_IN","_API_UPDATE_PASSWORD","_API_UPDATE_PIN_NUMBER","_API_GET_SYSTEM_DATETIME","_API_GET_USER_BANK","_API_GET_BANK_DETAIL","_API_CREATE_OR_UPDATE_BANK_DETAIL","_API_GET_USER_BANK_ACCOUNT","_API_GET_BANK_ACCOUNT_DETAIL","_API_CREATE_OR_UPDATE_BANK_ACCOUNT_DETAIL","_API_GET_BANK_ACCOUNT_BY_BANK_ID","_API_GET_ROLE_BY_ID","_API_GET_USERS_ROLE","_API_CREATE_OR_UPDATE_ROLE","_API_GET_ROLE_ACCESS_DATA","_API_GET_USER_SUB_ACCOUNT","_API_CREATE_OR_UPDATE_SUB_ACCOUNT","_API_GET_ROLLOVER_RECORD","_API_RESET_ROLLOVER_RECORD","_API_GET_BONUS_ROLLOVER_RECORD","_API_RESET_BONUS_ROLLOVER_RECORD","_API_GET_LATEST_MEMBER_DATA","_API_GET_VIP_CRITERIA","_API_CREATE_OR_UPDATE_COMPANY_SETTING","_API_CREATE_OR_UPDATE_COMPANY_VIP_PLAYER_REBATE","_API_GET_TOP_MEMBER_TRANSACTION_BY_STATUS","_API_GET_USER_VIP","_API_GET_USER_VIP_BY_ID","_API_CREATE_OR_UPDATE_VIP","_API_GET_SYSTEM_SETTINGS","_API_UPDATE_SYSTEM_SETTING","_API_GET_USER_REMARK","_API_GET_USER_REMARK_BY_ID","_API_CREATE_OR_UPDATE_REMARK","_API_REMARK_TYPE","_API_REMARK_BY_TYPE","_API_GET_USER_REJECT_CODE","_API_GET_USER_REJECT_CODE_BY_ID","_API_CREATE_OR_UPDATE_REJECT_CODE","_API_GET_USER_TAG","_API_GET_USER_TAG_BY_ID","_API_CREATE_OR_UPDATE_TAG","_API_GET_PRODUCT_CATEGORY","_API_GET_PRODUCT_CATEGORY_BY_ID","_API_CREATE_OR_UPDATE_PRODUCT_CATEGORY","_API_GET_MASTER_PRODUCT","_API_GET_MASTER_PRODUCT_BY_ID","_API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA","_API_GET_NON_SEAMLESS_MASTER_PRODUCT_ASSIGNMENT_DATA","_API_CREATE_OR_UPDATE_MASTER_PRODUCT","_API_UPDATE_USER_ASSIGNMENT","_API_UPDATE_USER_PRODUCT_MAINTENANCE","_API_UPDATE_USER_PRODUCT_ACTIVENESS","_API_UPDATE_MEMBER_PRODUCT_ACTIVENESS","_API_GET_ASSIGNED_MEMBER_PRODUCT","_API_GET_ASSIGNED_MEMBER_PRODUCT_SHOW_LIST","_API_UPDATE_ALL_MEMBER_PRODUCT_ACTIVENESS","_API_UPDATE_MEMBER_PRODUCT_RATE","_API_GET_GROUP_PRODUCT_WITH_MAX_RATES","_API_UPDATE_USER_ASSIGNMENT_DETAIL","_API_GET_USER_ASSIGNMENT_DETAIL","_API_GET_PRODUCT_SETTING","_API_GET_PRODUCT_SETTING_BY_ID","_API_CREATE_OR_UPDATE_PRODUCT_SETTING","_API_GET_ACCOUNT_PRODUCT_META","_API_UPDATE_ACCOUNT_PRODUCT_META","_API_GET_PRODUCT_GAME_SETTING","_API_GET_PRODUCT_GAME_SETTING_BY_ID","_API_CREATE_OR_UPDATE_GAME_PRODUCT_SETTING","_API_GET_PRODUCT_GAME_BY_ACCOUNT_PRODUCT","_API_GET_LANGUAGE","_API_GET_LANGUAGE_BY_ID","_API_CREATE_OR_UPDATE_LANGUAGE","_API_GET_BANKING_CHANNEL","_API_GET_BANKING_CHANNEL_BY_ID","_API_CREATE_OR_UPDATE_BANKING_CHANNEL","_API_GET_BONUS_TYPE","_API_GET_BONUS_TYPE_BY_ID","_API_CREATE_OR_UPDATE_BONUS_TYPE","_API_GET_USER_BONUS","_API_GET_USER_BONUS_BY_ID","_API_CREATE_OR_UPDATE_BONUS","_API_GET_OPERATION_LOG","_API_DELETE_PRODUCT_GAME","_API_GET_PRODUCT_GAME","_API_GET_PRODUCT_GAME_BY_ID","_API_CREATE_OR_UPDATE_GAME_PRODUCT","_API_GET_USER_ANNOUNCEMENT","_API_GET_USER_ANNOUNCEMENT_BY_ID","_API_CREATE_OR_UPDATE_ANNOUNCEMENT","_API_GET_USER_BANNER","_API_GET_USER_BANNER_BY_ID","_API_CREATE_OR_UPDATE_BANNER","_API_GET_USER_REWARD_BANNER","_API_GET_USER_REWARD_BANNER_BY_ID","_API_CREATE_OR_UPDATE_REWARD_BANNER","_API_GET_USER_PROMOTION","_API_GET_USER_PROMOTION_BY_ID","_API_CREATE_OR_UPDATE_PROMOTION","_API_GET_USER_SCRIPT","_API_GET_USER_SCRIPT_BY_ID","_API_CREATE_OR_UPDATE_SCRIPT","_API_GET_USER_CONTENT","_API_GET_USER_CONTENT_BY_ID","_API_CREATE_OR_UPDATE_CONTENT","_API_GET_USER_EMAIL","_API_GET_USER_EMAIL_BY_ID","_API_CREATE_OR_UPDATE_EMAIL","_API_GET_VIP_BENEFIT","_API_GET_VIP_BENEFIT_BY_ID","_API_CREATE_OR_UPDATE_VIP_BENEFIT","_API_GET_VIP_BENEFIT_CONTENT","_API_GET_VIP_BENEFIT_CONTENT_BY_ID","_API_CREATE_OR_UPDATE_VIP_BENEFIT_CONTENT","_API_GET_VIP_CRITERIA_BY_VIP_ID","_API_CREATE_OR_UPDATE_VIP_CRITERIA","_API_GET_USER_INSTANT_PAY_SETTING","_API_GET_USER_INSTANT_PAY_SETTING_BY_ID","_API_CREATE_OR_UPDATE_INSTANT_PAY_SETTING","_API_UPDATE_INSTANT_PAY_SETTING_STATUS","_API_GET_INSTANT_PAYMENT_GATEWAY","_API_GET_INSTANT_PAY_BANK_SETTING","_API_CREATE_OR_UPDATE_INSTANT_PAY_BANK_SETTING","_API_DELETE_INSTANT_PAYBANK_SETTING","_API_GET_SKIN_SETTINGS","_API_GET_SKIN_SETTINGS_BY_ID","_API_CREATE_OR_UPDATE_SKIN_SETTINGS","_API_GET_VIDEO","_API_GET_VIDEO_BY_ID","_API_CREATE_OR_UPDATE_VIDEO","_API_GET_USER_SYSTEM_SETTINGS","_API_CREATE_OR_UPDATE_SYSTEM_SETTINGS","_API_GET_USER_MEMBER","_API_GET_USER_MEMBER_LIST","_API_GET_DOWNLINE_BY_REFERRER","_API_GET_DOWNLINE_BY_REFERRER_USING_USERNAME","_API_GET_TOTAL_REGISTERED_MEMBER_UNDER_COMPANY","_API_GET_TOTAL_REGISTERED_MEMBER_UNDER_MAIN_ACCOUNT","_API_GET_NEW_MEMBERS_LIST_UNDER_COMPANY","_API_GET_NEW_MEMBERS_LIST_UNDER_MAIN_ACCOUNT","_API_GET_MEMBER_PRODUCT_USERNAME_LIST","_API_GET_MEMBER_FULLNAME_LIST","_API_GET_USER_MEMBER_BY_ID","_API_GET_USER_MEMBER_BY_USERNAME","_API_CREATE_OR_UPDATE_MEMBER","_API_GET_MEMBER_HIERACHY","_API_GET_BLOCKED_IP_LIST","_API_DELETE_BLOCKED_IP","_API_DELETE_REFERRAL_CODE","_API_GET_USER_SMS_SETTING","_API_GET_USER_SMS_SETTING_BY_ID","_API_CREATE_OR_UPDATE_USER_SMS_SETTING","_API_GET_USER_SMS_CONTENT","_API_GET_USER_SMS_CONTENT_BY_ID","_API_CREATE_OR_UPDATE_SMS_CONTENT","_API_GET_USER_WEB_CONTENT_SETTING","_API_GET_USER_WEB_CONTENT_SETTING_BY_ID","_API_CREATE_OR_UPDATE_USER_WEB_CONTENTS","_API_GET_USER_WEB_CONTENT","_URL_CREATE_OR_UPDATE_WEB_CONTENT","_API_GET_USER_WEB_CONTENT_BY_ID","_API_GET_MARQUEE_TAG_CONTENT","_API_UPDATE_MARQUEE_TAG_CONTENT","_API_GET_MARQUEE_TAG_CONTENT_WITH_ID","_API_GET_MARQUEE_LANGUAGE","_API_CREATE_MARQUEE_CONTENT_LANGUAGE","_API_UPDATE_MARQUEE_LANGUAGE_BY_ID","_API_CREATE_TRANSACTION","_API_GET_ALL_USER_TRANSACTION","_API_GET_TRANSACTION_BY_MEMBER_ID","_API_UPDATE_TRANSACTION_STATUS","_API_GET_TOP_MEMBER_OF_TRANSACTION_BY_STATUS","_API_GET_TOTAL_TRANSACTION_AMOUNT_COUNT_BY_STATUS_TYPE","_API_GET_ALL_TOTAL_DEPOSIT_TRANSACTION_BY_TODAY","_API_GET_ALL_TOTAL_DEPOSIT_TRANSACTION_BY_TODAY_NEW","_API_GET_TRANSACTION_BY_ID","_API_GET_PREVIOUS_TRANSACTION","_API_GET_SYSTEM_BALANCE","_API_PROCESS_LOCK_TRANSACTION","_API_PROCESS_BONUS_ADJUSTMENT","_API_PROCESS_COMMISSION_ADJUSTMENT","_API_GET_DAILY_SUMMARY_REPORT","_API_GET_MEMBER_REPORT","_API_GET_BANK_SUMMARY_REPORT","_API_GET_BANK_SUMMARY_STATEMENT","_API_GET_BET_DETAIL_REPORT","_API_GET_MEMBER_BET_DETAIL_REPORT","_API_GET_PROFIT_LOSS_REPORT","_API_GET_WINLOSS_REPORT","_API_GET_TALLY_WINLOSS_REPORT","_API_GET_WINLOSS_REPORT2","_API_GET_WINLOSS_REPORT3","_API_GET_BONUS_COMMISSION_REPORT","_API_MANAGE_TRANSFER_WALLET","_API_COMMISSION_TRACKING","_API_GET_ADJUSTMENT_REPORT","_API_GET_SHAREHOLDER_PROCESS_SALES_REPORT","_API_GET_MEMBER_SHAREHOLDER_DETAIL","_API_GET_PROCESS_GAME_RECORD_REPORT","_API_GET_568_NON_PROCESS_GAME_RECORD_REPORT","_API_GET_UNCLAIMED_SALES_REPORT","_API_GET_COMISSION_REPORT","_API_GET_TOTAL_SHARE_PAYOUT_REPORT","_API_GET_TOP_WINNERS_AND_LOSERS","_API_GET_TOP_WINNERS_LOSERS","_API_GET_TRANSFER_LOG","_API_GET_IP_MONITOR_RECORD","_API_GET_USER_GROUPED_IP","_API_GET_USER_IP_DETAIL","_API_GET_USER_PRODUCT_ACCOUNT","_API_GET_PRODUCT_ACCOUNT_LOG","_API_GET_PRODUCT_ACCOUNT_BALANCE","_API_CREATE_BANK_TRANSACTION","_API_GET_API_KEY_DATA","_API_EXECUTE_RECURRING_JOB","_API_EXECUTE_MANUAL_JOB","_API_SYNC_PRODUCT_DATA","_API_SYNC_MEMBER_TO_OWNER_PRODUCT_DATA","_API_GET_NON_SEAMLESS_PRODUCT_BALANCE","_API_CREATE_WALLET_TRANSFER_TRANSACTION","_API_GET_PRODUCT_TRANSACTION","_API_TRANSFER_ALL_TO_MAIN","_API_GET_FIRST_GROUPED_PRODUCT","_API_GET_PREFERENCE_LANGUAGE","_API_CREATE_OR_UPDATE_CONFIG_LANGUAGE","_API_GET_CONFIG_LANGUAGE_BY_TYPE_ID","_API_GET_CONFIG_LANGUAGE_BY_ID","_API_GET_COMPANY_CONTACT_US","_API_GET_COMPANY_CONTACT_US_BY_ID","_API_CREATE_OR_UPDATE_COMPANY_CONTACT_US","_API_GET_MEMBER_UPLINE_PRODUCT_RATES","_API_GENERATE_REFERRAL_CODE","_API_GET_MEMBER_REFERRAL_CODES","_API_PERFORM_GAME_CALCULATION","_API_PERFORM_PRODUCT_GAME_CALCULATION","_API_ACTIVATE_SYNC","_API_TRIGGER_RANGE_SYNC","_API_ACTIVATE_SETTLEMENT_SYNC","_API_TRIGGER_SETTLEMENT_DATE","_API_CREATE_OR_UPDATE_COMMUNICATION_CHANNEL","_API_GET_COMMUNICATION_CHANNEL_DETAIL","_API_GET_COMMUNICATION_CHANNELS","_API_GET_GAME_RECORD_BY_MEMBER","_API_UPDATE_DEVICE_TOKEN","_API_GET_RECENT_NOTIFICATIONS","_API_READ_NOTIFICATION","_API_CHECK_PENDING_DEPOSIT","_API_GET_PRODUCT_GAME_PAYLOAD","_API_GET_BET_RESULT","_API_GET_API_LOG","_API_GET_CANCEL_LOG","_API_UPDATE_SHAREHOLDER_DETAIL","_API_UPDATE_SHAREHOLDER_PRODUCT","_API_UPDATE_SHAREHOLDER_PAYOUT","_API_UPDATE_SHAREHOLDER_HUAT_TICKET","_API_GET_SHAREHOLDER_MASTER_PRODUCT_DATA_LIST","_API_GET_SHAREHOLDER_MASTER_PRODUCT_DATA","_API_GET_SHAREHOLDER_ONE_PRODUCT_DATA","_API_GET_SHAREHOLDER_HUAT_TICKET","_API_UPDATE_SHAREHOLDER_PROCESS","_API_UPDATE_SHAREHOLDER_RELEASE","_API_MANUAL_RESETTLE_568_PRODUCT_GAME_RECORD_FROM_BO","_API_CLEAR_CACHE","_API_GET_MEMBER_WALLET_STATEMENT","_API_GET_MEMBER_WALLET_STATEMENT_RECON","_API_GET_TRANSACTION_QUEUE","_API_REMOVE_PLAYER_FROM_TRANSACTION_QUEUE","_API_GET_LIVE_DATA","_API_GET_SPORTS_LIVE_DATA","_API_GET_REWARDS_SETTING","_API_UPDATE_REWARDS_SETTING","_API_GET_REWARDS_SCHEDULE","_API_UPDATE_REWARDS_SCHEDULE","_API_GET_MEMBER_SPORTS_BET_LIMIT","_API_CREATE_OR_UPDATE_MEMBER_SPORTS_BET_LIMIT","_API_GET_MEMBER_DOWNLINE_GAMES_BY_MASTERPRODUCT","_API_UPDATE_DOWNLINE_MEMBER_GAME","_API_MANUAL_CANCEL_BET","_API_GET_CLAIMED_UNCLAIMED_REWARDS_REPORT","_API_GET_FORFEITED_REWARDS_REPORT","_API_GET_SPORTS_BET_REPORT","_API_UNSTUCK_SH","_API_RETRIEVE_MEMBER_GAME_DATA","_API_RESET_PRODUCT_PROCESS","_API_VERIFY_USER_TRANSACTION_PIN_NUMBER","_API_GET_MOBILE_TAC","_API_GET_TRANSACTION_SUMMARY_REPORT","_API_GET_DEPOSIT_PROMOTION","_API_GET_DEPOSIT_PROMOTION_BY_ID","_API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION","_API_GET_ACCOUNT_PRODUCT_BY_PROMOTION_ID","_API_GET_MASTER_PRODUCT_ID_NAME_BY_USER_ID","_API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_PRODUCT","_API_GET_DEPOSIT_PROMOTION_PRODUCT","_API_DELETE_DEPOSIT_PROMOTION_PRODUCT","_API_GET_MEMBER_BIRTHDAY_LIST","_API_GENERATE_BIRTHDAY_REWARD","_API_GET_MEMBER_REBATE_LIST","_API_GENERATE_REBATE_REWARD","_API_GET_WEEKLY_RESCUE","_API_GET_WEEKLY_RESCUE_BY_ID","_API_CREATE_OR_UPDATE_WEEKLY_RESCUE","_API_GET_BIRTHDAY_REWARD_REPORT","_API_GET_GIFTPACE_REPORT","_API_GET_MEMBER_WEEKLY_RESCUE","_API_GENERATE_MEMBER_WEEKLY_RESCUE","_API_GET_DAILY_CHECK_IN","_API_GET_DAILY_CHECK_IN_BY_ID","_API_CREATE_OR_UPDATE_DAILY_CHECK_IN","_API_GET_DAILY_CHECK_IN_DETAILS_BY_DCID","_API_CREATE_OR_UPDATE_DAILY_CHECK_IN_DETAILS","_API_GET_ALL_DC_ITEM","_API_GET_DC_ITEM_BY_ID","_API_CREATE_OR_UPDATE_DC_ITEM","_API_UPDATE_DC_ITEM_STATUS","_API_GET_DC_REDEMPTION_RECORD","_API_UPDATE_DC_REDEMPTION","_API_UPDATE_PROCESSING_DC_REDEMPTION","_API_GET_DC_ITEM_NAME_LIST","_API_GET_ACCOUNT_PRODUCT","_API_GET_ACCOUNT_PRODUCT_BY_PRODUCT_ID","_API_UPDATE_DC_POINTS","_API_GET_MEMBER_DC_POINTS","_API_GET_DC_POINTS_HISTORY","_API_GET_MEMBER_DAILY_RESCUE","_API_GENERATE_MEMBER_DAILY_RESCUE","_API_GET_ACTIVE_MEMBER_REPORT","_API_RESET_WALLET_ROLLOVER_RECORD","_API_CREATE_OR_UPDATE_MARQUEE_TAG_CONTENT","_API_CREATE_DCITEM_CONTENT_LANGUAGE","_API_GET_DCITEM_LANGUAGE","_API_UPDATE_DCITEM_LANGUAGE_BY_ID","_API_GET_MEMBER_GAME_POINTS","_API_GENERATE_MEMBER_GAME_POINTS","_API_GET_POINTS_HISTORY","_API_CHECK_PENDING_POINTS_REDEMPTION","_API_UPDATE_POINTS_ADJUSTMENT","_API_GET_POINTS_ADJUSTMENT_REPORT","_API_GET_OVERALL_POINTS_DETAILS","_API_GET_DEPOSIT_PROMOTION_CATEGORY","_API_GET_DEPOSIT_PROMOTION_CATEGORY_BY_ID","_API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_CATEGORY","_API_GET_DEPOSIT_PROMOTION_WITHOUT_CATEGORY","_API_GET_DEPOSIT_PROMOTION_WITH_CATEGORY","_API_GET_ALL_BANK_SUMMARY_STATEMENT","_API_GET_USER_DOMAIN","_API_GET_USER_DOMAIN_ID","_API_UPDATE_OR_CREATE_USER_DOMAIN","_API_REMOVE_USER_DOMAIN","_API_GET_MEMBER_ACCOUNT_BALANCE_JOURNEY","_API_UPDATE_WING_WEILUY_TRANSACTION_STATUS","_API_GET_MEMBER_LIST","_API_GET_CREDIT_REDEMPTION_REPORT","_API_GET_REFERRAL_BONUS_REPORT","_API_GET_ALL_BONUS_DEPOSIT","_API_GET_BONUS_DEPOSIT_BY_ID","_API_CREATE_OR_UPDATE_BONUS_DEPOSIT","_API_GET_BONUS_DEPOSIT_LANGUAGE","_API_CREATE_BONUS_DEPOSIT_LANGUAGE","_API_UPDATE_BONUS_DEPOSIT_LANGUAGE","_API_UPDATE_CANCEL_DC_REDEMPTION","_API_CLONE_DEPOSIT_PROMOTION","_API_BONUS_TRACKING","_API_POINTS_TRACKING","_API_GET_PLAYER_RECONCILIATION","_API_SEND_CHAT","_API_SEND_FILE","_API_SEND_VOICE","_API_GET_CHAT_TEMPLATE","_API_GET_CHAT_TEMPLATE_CODE","_API_CREATE_OR_UPDATE_CHAT_SYSTEM_TEMPLATE","_API_GET_CHAT_SPHERE","_API_GET_CHAT_SPHERE_BY_ID","_API_GET_CHAT_SPHERE_TYPE","_API_GET_CHAT_SPHERE_TYPE_BY_ID","_API_GET_CHAT_SPHERE_CHANNEL","_API_CREATE_OR_UPDATE_CHAT_SPHERE_TYPE","_API_GET_CHAT_SPHERE_CONTENT_BY_ID","_API_CREATE_OR_UPDATE_CHAT_SPHERE_CONTENT","_API_CREATE_CHAT_SPHERE_CONTENT_LANGUAGE","_API_UPDATE_CHAT_SPHERE_CONTENT_LANGUAGE","_API_GET_CHAT_SPHERE_CONTENT_LANGUAGE","_API_GET_CHAT_SPHERE_PHONE_NUMBER","_API_GET_CHAT_SPHERE_PHONE_NUMBER_BY_ID","_API_CREATE_OR_UPDATE_CHAT_SPHERE_PHONE_NUMBER","_API_CREATE_BONUS_WALLET_ADJUSTMENT","_API_GET_MEMBER_BANK_ACCOUNT","_API_GET_MEMBER_BANK_ACCOUNT_BY_ID","_API_UPDATE_MEMBER_BANK_ACCOUNT_BY_ID","_API_GET_BANK_BY_TRANSACTION_TYPE","_API_GET_ACCOUNT_PRODUCT_RANKING","_API_UPDATE_ACCOUNT_PRODUCT_RANKING","_API_GET_CUSTOM_PRODUCT_GAME_SETTING","_API_UPDATE_CUSTOM_PRODUCT_GAME_SETTING","_API_GET_CHAT_LIST","_API_GET_CHAT_ROOM","_API_GET_MEMBER_PROMOTION","_API_CANCEL_PROMO","_API_GET_MEMBER_CLAIMED_PROMOTION_DETAIL","_API_GET_MEMBER_COMMISSION_LIST","_API_GENERATE_MLM_COMMISSION","_API_GET_DOWNLINE_BY_REFERRER2","_API_GET_MEMBER_WITH_UNREAD_NOTIFICATIONS","_API_GET_CUSTOM_CHAT_TEMPLATE","_API_GET_CUSTOM_CHAT_TEMPLATE_CODE","_API_CREATE_OR_UPDATE_CUSTOM_CHAT_TEMPLATE","_API_UPLOAD_IMG_EDITOR","_API_GET_REFERRAL_REPORT","_API_GET_REFERRAL_REPORT_DETAILS","WebUrl","_URL_MAIN","_URL_LOGIN","_URL_DASHBOARD","_URL_HELP","_URL_SUPER_ACCOUNT","_URL_MANAGE_COMPANY","_URL_CREATE_OR_EDIT_COMPANY","_URL_COMPANY_PROFILE","_URL_CREATE_OR_UPDATE_MEMBER","_URL_MANAGE_MEMBER","_URL_CHAT_ROOM","_URL_CHAT_SYSTEM_TEMPLATE","_URL_CHAT_CUSTOM_TEMPLATE","_URL_MANAGE_MEMBER_PRODUCT_USERNAME","_URL_MANAGE_BANK","_URL_CREATE_OR_EDIT_BANK","_URL_BANK_ACCOUNT","_URL_CREATE_OR_UPDATE_BANK_ACCOUNT","_URL_MANAGE_ROLE","_URL_CREATE_OR_UPDATE_ROLE","_URL_MANAGE_SUB_ACCOUNT","_URL_CREATE_OR_UPDATE_SUB_ACCOUNT","_URL_CHANGE_PASSWORD","_URL_CHANGE_PIN_NUMBER","_URL_USER_PRODUCT","_URL_MASTER_PRODUCT","_URL_CREATE_OR_UPDATE_MASTER_PRODUCT","_URL_MANAGE_568WIN_BET_LIMIT","_URL_PRODUCT_GAME","_URL_CREATE_OR_UPDATE_PRODUCT_GAME","_URL_MANAGE_PRODUCT_GAME_SETTING","_URL_CREATE_OR_UPDATE_PRODUCT_GAME_SETTING","_URL_PRODUCT_CATEGORY","_URL_CREATE_OR_UPDATE_PRODUCT_CATEGORY","_URL_INSTANT_PAY_SETTING","_URL_CREATE_OR_UPDATE_INSTANT_PAY_SETTING","_URL_WITHDRAWAL","_URL_DEPOSIT","_URL_ADJUSTMENT","_URL_BONUS","_URL_TRANSACTION_ENQUIRY","_URL_INSTANT_TRANSFER","_URL_TNG_SETTINGS","_URL_DEPOSIT_REFERENCE","_URL_CREATE_OR_UPDATE_REJECT_REASON","_URL_MANAGE_REJECT_REASON","_URL_CREATE_OR_UPDATE_SMS_CONTENT","_URL_MANAGE_SMS_CONTENT","_URL_SMS_SETTING","_URL_VIEW_ACCOUNT","_URL_VIEW_PRODUCT_ACCOUNT","_URL_MANAGE_ACCOUNT","_URL_MANAGE_IP_BLOCK","_URL_ANNOUNCEMENT","_URL_CREATE_OR_UPDATE_ANNOUNCEMENT","_URL_BANNER","_URL_CREATE_OR_UPDATE_BANNER","_URL_REWARD_BANNER","_URL_CREATE_OR_UPDATE_REWARD_BANNER","_URL_PROMOTION","_URL_CREATE_OR_UPDATE_PROMOTION","_URL_SEO","_URL_CREATE_OR_UPDATE_SEO","_URL_SCRIPT","_URL_CREATE_OR_UPDATE_SCRIPT","_URL_EMAIL","_URL_CREATE_OR_UPDATE_EMAIL","_URL_CONTENT","_URL_CREATE_OR_UPDATE_CONTENT","_URL_WEB_CONTENT","_URL_MANAGE_WEB_CONTENT","_URL_MARQUEE_TAG_CONTENT","_URL_MARQUEE_TAG_CONTENT_LANGUAGE","_URL_MARQUEE_TAG_CONTENT_DETAIL","_URL_VIP_LEVEL","_URL_CREATE_OR_UPDATE_VIP_LEVEL","_URL_REMARK","_URL_CREATE_OR_UPDATE_REMARK","_URL_TAG","_URL_CREATE_OR_UPDATE_TAG","_URL_LANGUAGE","_URL_CREATE_OR_UPDATE_LANGUAGE","_URL_BANKING_CHANNEL","_URL_CREATE_OR_UPDATE_BANKING_CHANNEL","_URL_BONUS_TYPE","_URL_CREATE_OR_UPDATE_BONUS_TYPE","_URL_PRODUCT_SETTING","_URL_CREATE_OR_UPDATE_PRODUCT_SETTING","_URL_MANAGE_VIP_BENEFIT","_URL_CREATE_OR_UPDATE_VIP_BENEFIT","_URL_MANAGE_VIP_BENEFIT_CONTENT","_URL_CREATE_OR_UPDATE_VIP_BENEFIT_CONTENT","_URL_MANAGE_SYSTEM_SETTING","_URL_MANAGE_RECURRING_JOB","_URL_MANAGE_MANUAL_JOB","_URL_MANAGE_SKIN_SETTINGS","_URL_SKIN_SETTINGS_DETAIL","_URL_MANAGE_VIDEO_TUTORIAL","_URL_VIDEO_TUTORIAL_DETAIL","_URL_MANAGE_DEPOSIT_PROMOTION","_URL_CREATE_OR_UPDATE_DEPOSIT_PROMOTION","_URL_BANK_PACKAGE","_URL_CREATE_OR_UPDATE_BANK_PACKAGE","_URL_DEFAULT_BET_SETTING","_URL_REBATE","_URL_MANAGE_BONUS","_URL_CREATE_OR_UPDATE_BONUS","_URL_COMPANY_PRODUCT_MAINTENANCE","_URL_COMPANY_PRODUCT_API_INFO","_URL_COMPANY_PRODUCT_ACCOUNT_INFO","_URL_PROFIT_LOSS_REPORT","_URL_BET_DETAIL_REPORT","_URL_DAILY_SUMMARY_REPORT","_URL_CHANNEL_SUMMARY_REPORT","_URL_BANK_SUMMARY_REPORT","_URL_TRANSACTION_REPORT","_URL_WALLET_TRANSFER_REPORT","_URL_TRANSACTION_SUMMARY_REPORT","_URL_BIRTHDAY_REWARD_REPORT","_URL_GIFTPACE_REPORT","_URL_PROCESS_GAME_RECORD_REPORT","_URL_568_NON_PROCESS_GAME_RECORD_REPORT","_URL_SHAREHOLDERS_UNCLAIMED_REPORT","_URL_SHAREHOLDERS_UNCLAIMED_REPORT_LIST","_URL_COMISSION_REPORT_LIST","_URL_TOTAL_SHARE_PAYOUT_REPORT","_URL_USERNAME_BET_DETAIL_REPORT","_URL_MANAGE_MEMBER_FULL_NAME","_URL_REBATE_REPORT","_URL_MEMBER_REPORT","_URL_WIN_LOSS_REPORT","_URL_TALLY_WIN_LOSS_REPORT","_URL_WIN_LOSS_REPORT2","_URL_WIN_LOSS_REPORT3","_URL_BONUS_COMMISSION_REPORT","_URL_MANAGE_WALLET_REPORT","_URL_SERVICE_CHARGE_REPORT","_URL_ADJUSTMENT_REPORT","_URL_IP_MONITOR","_URL_ACTIVITY_LOG","_URL_TRANSACTION_DETAIL","_URL_MEMBER_PRORUCT_MAINTENANCE","_URL_MANAGE_CONTACT_US","_URL_CREATE_OR_UPDATE_CONTACT_US","_URL_COMMISSION_ADJUSTMENT","_URL_BONUS_ADJUSTMENT","_URL_MANAGE_COMMUNICATION","_URL_CREATE_OR_UPDATE_COMMUNICATION","_URL_SHAREHOLDERS_LIST","_URL_SHAREHOLDERS_VIEW_ACCOUNT","_URL_SHAREHOLDERS_PRODUCTS","_URL_SHAREHOLDERS_PRODUCTS_EDIT","_URL_SHAREHOLDERS_PAYOUT_EDIT","_URL_SHAREHOLDERS_PROCESS_HUAT_TICKET","_URL_SHAREHOLDERS_HUAT_TICKET_EDIT","_URL_SHAREHOLDERS_PROCESS","_URL_SHAREHOLDERS_REPORT","_URL_SHAREHOLDERS_DOWNLINE_REPORT","_URL_MAINTENANCE","_URL_MANAGE_MEMBER_WALLET_STATEMENT","_URL_MANAGE_MEMBER_WALLET_STATEMENT_RECON","_URL_TODAY_NEW_MEMBERS","_URL_TRANSFER_LOG","_URL_LIVE_MONITOR","_URL_SPORTS_LIVE_MONITOR","_URL_SPORTS_TEAM_BET_REPORT","_URL_TRANSACTION_QUEUE","_URL_WITHDRAWAL_SETTINGS","_URL_REWARDS_SETTING","_URL_REWARDS_SCHEDULE","_URL_CLAIMED_REWARDS_REPORT","_URL_FORFEITED_REWARDS_REPORT","_URL_MANAGE_MEMBER_PO","_URL_MANAGE_MEMBER_CS","_URL_RETRIEVE_MEMBER_BET_DATA","_URL_MANAGE_MOBILE_TAC","_URL_BIRTHDAY_REWARDS","_URL_MEMBER_REBATE","_URL_WEEKLY_RESCUE","_URL_WEEKLY_RESCUE_DETAIL","_URL_MEMBER_WEEKLY_RESCUE","_URL_MANAGE_DAILY_CHECK_IN","_URL_DAILY_CHECK_IN_DETAIL","_URL_MANAGE_DC_ITEM_LIST","_URL_CREATE_OR_UPDATE_DC_ITEM","_URL_MANAGE_DC_REDEMPTION","_URL_MANAGE_DC_POINTS","_URL_UPDATE_DC_POINTS","_URL_MANAGE_MEMBER_DC_POINTS","_URL_MEMBER_DC_POINTS_DETAIL","_URL_ACTIVE_MEMBER_REPORT","_URL_MEMBER_GAME_POINTS","_URL_POINTS_ADJUSTMENT","_URL_POINTS_ADJUSTMENT_REPORT","_URL_MEMBER_POINTS_REPORT","_URL_MANAGE_DEPOSIT_PROMOTION_CATEGORY","_URL_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_CATEGORY","_URL_MEMBER","_URL_CREDIT_REDEMPTION_REPORT","_URL_REFERRAL_BONUS_REPORT","_URL_BONUS_DEPOSIT","_URL_CREATE_OR_UPDATE_BONUS_DEPOSIT","_URL_PLAYER_RECONCILIATION","_URL_MANAGE_CAHE_SPHERE","_URL_MANAGE_CAHE_SPHERE_CONTENT_DETAIL","_URL_MANAGE_CAHE_SPHERE_TYPE","_URL_CHAT_SPHERE_TYPE_DETAIL","_URL_CHAT_SPHERE_CONTENT_LANGUAGE","_URL_CHAT_SPHERE_PHONE_NUMBER","_URL_CHAT_SPHERE_PHONE_NUMBER_DETAIL","_URL_ADJUSTMENT_BONUS_WALLET","_URL_MANAGE_MEMBER_BANK_ACCOUNT","_URL_MEMBER_BANK_ACCOUNT_DETAIL","_URL_MANAGE_ACCOUNT_PRODUCT_RANK","_URL_MANAGE_PRODUCT_GAME_RANK","_URL_GAME_LIST","_URL_CLAIMED_PROMOTION_DETAIL","_URL_MANAGE_MLM_COMMISSION","_URL_CHAT_SYSTEM_TEMPALTE","_URL_CHAT_CUSTOM_TEMPALTE","_URL_CREATE_OR_UPDATE_CHAT_SYSTEM_TEMPLATE","_URL_MANAGE_CUSTOM_CHAT_TEMPLATE","_URL_REFERRAL_REPORT","_URL_REFERRAL_REPORT_DETAILS","Role","_SUPER_COMPANY","_COMPANY","_CUSTOMER_SERVICE","_RISK_TEAM","_TESTING_ROLE","_SUPERVISOR","_PAYMENT_OFFICIAL_CS","Status","_ENABLED","_DISABLED","TransferBackMainWallet","MemberStatus","_INACTIVE","_ACTIVE","_BLOCKED","AccessRight","_DASHBOARD_DETAILS_PERMISSION","_SUPER_COMPANY_CONTROL_PERMISSION","_COMPANY_CONTROL_PERMISSION","_MEMBER_CONTROL_PERMISSION","_MEMBER_PRODUCT_USERNAME_PERMISSION","_MEMBER_REPORT_PERMISSION","_MANAGE_IP_BLOCK_PERMISSION","_MEMBER_WALLET_STATEMENT_PERMISSION","_NEW_MEMBER_LIST_PERMISSION","_TRANSFER_LOG_PERMISSION","_BET_DETAIL_REPORT_PERMISSION","_TRANSACTION_QUEUE_PERMISSION","_MANAGE_MEMBER_PO_PERMISSION","_MANAGE_MEMBER_CS_PERMISSION","_MANAGE_MOBILE_TAC_PERMISSION","_MANAGE_BIRTHDAY_REWRDS","_MEMBER_WEEKLY_RESCUE_PERMISSION","_MANAGE_MEMBER_WEEKLY_RESCUE","_MANAGE_MEMBER_GAME_POINTS","_MANAGE_MEMBER_BANK_ACCOUNT","_GENERATE_COMMISSION_PERMISSION","_MANUAL_CANCEL_BET_PERMISSION","_RESET_ROLLOVER_PERMISSION","_LIVE_CHAT_PERMISSION","_LIVE_CHAT_SYSTEM_TEMPLATE_PERMISSION","_LIVE_CHAT_CUSTOM_TEMPLATE_PERMISSION","_SHAREHOLDER_PERMISSION","_SHAREHOLDER_PRODUCT_SETTING_PERMISSION","_SHAREHOLDER_PROCESS_SHARE_SALES_PERMISSION","_SHAREHOLDER_REPORT_PERMISSION","_SHAREHOLDER_DOWNLINE_REPORT_PERMISSION","_SHAREHOLDER_UNCLAIMED_SALES_LIST_PERMISSION","_SHAREHOLDER_SHARE_PAYOUT_REPORT_PERMISSION","_TRANSACTION_ENQUIRY_PERMISSION","_PAYMENT_GATEWAY_APPROVAL_PERMISSION","_TRANSACTION_APPROVAL_PERMISSION","_TRANSACTION_REJECTION_PERMISSION","_BANK_SUMMARY_REPORT_PERMISSION","_DEPOSIT_TRANSACTION_PERMISSION","_WITHDRAWAL_TRANSACTION_PERMISSION","_BANK_ACCOUNT_SETTING_PERMISSION","_BONUS_DEPOSIT_PERMISSION","_INSTANT_PAY_SETTING_PERMISSION","_SERVICE_CHARGE_REPORT_PERMISSION","_ADJUSTMENT_TRANSACTION_PERMISSION","_ADJUSTMENT_REPORT_PERMISSION","_ADJUSTMENT_POINTS_PERMISSION","_POINTS_ADJUSTMENT_REPORT_PERMISSION","_COIN_ADJUSTMENT_TRANSACTION_PERMISSION","_WINLOSS_REPORT_PERMISSION","_TALLY_WINLOSS_REPORT_PERMISSION","_PROFIT_LOSS_REPORT_PERMISSION","_DAILY_SUMMARY_REPORT_PERMISSION","_BONUS_COMM_REPORT_PERMISSION","_TRANSACTION_REPORT_PERMISSION","_WALLET_TRANSFER_REPORT_PERMISSION","_COMM_REPORT_PERMISSION","_MEMBER_FULLNAME_PERMISSION","_TRANSACTION_SUMMARY_REPORT_PERMISSION","_BIRTHDAY_REWARD_REPORT_PERMISSION","_GIFTPACE_REPORT_PERMISSION","_ACTIVE_MEMBER_REPORT_PERMISSION","_MEMBER_POINTS_REPORT_PERMISSION","_CREDIT_REDEMPTION_REPORT_PERMISSION","_REFERRAL_BONUS_REPORT_PERMISSION","_REFERRAL_REPORT_PERMISSION","_IP_MONITOR_PERMISSION","_SUB_ACCOUNT_CONTROL_PERMISSION","_ROLE_CONTROL_PERMISSION","_ACTIVITY_LOG_PERMISSION","_CHANGE_PASSWORD_PERMISSION","_PRODUCT_CATEGORY_SETTING_PERMISSION","_MASTER_PRODUCT_CONTROL_PERMISSION","_PRODUCT_CONTROL_PERMISSION","_SMS_CONTENT_SETTING_PERMISSION","_SMS_SETTING_PERMISSION","_BANK_SETTING_PERMISSION","_REJECT_REASON_SETTING_PERMISSION","_VIP_SETTING_PERMISSION","_REMARK_SETTING_PERMISSION","_LANGUAGE_SETTING_PERMISSION","_MANAGE_COMMUNICATION_PERMISSION","_SYSTEM_SETTING_ACCESS","_RECURRING_JOB_PERMISSION","_DEPOSIT_PROMOTION_PERMISSION","_WEEKLY_RESCUE_PERMISSION","_DEPOSIT_PROMOTION_CATEGORY_PERMISSION","_CHAT_SPHERE_PERMISSION","_CHAT_SPHERE_TYPE_PERMISSION","_CHAT_SPHERE_PHONE_NUMBER_PERMISSION","_BANNER_SETTING_PERMISSION","_EMAIL_SETTING_PERMISSION","_CONTENT_SETTING_PERMISSION","_MARQUEE_TAG_CONTENT_PERMISSION","_MANAGE_WEB_CONTENT_SETTING_PERMISSION","_MARQUEE_TAG_CONTENT","_LIVE_MONITORING_PERMISSION","_CHAT_SYSTEM_TEMPLATE_PERMISSION","_CHAT_CUSTOM_TEMPLATE_PERMISSION","_DC_ITEM_LIST_PERMISSION","_DC_REDEMPTION_PERMISSION","_DC_POINTS_PERMISSION","_MEMBER_DC_POINTS_PERMISSION","_DAILY_CHECK_IN_PERMISSION","_READ_PERMISSION_STRING","_WRITE_PERMISSION_STRING","_READ_BIT_POSITION","_WRITE_BIT_POSITION","Transaction","_BONUS_TYPE_SELF","_BONUS_TYPE_OVERRIDE","ReadWritePermission","_NO_PERMISSION","_READ_PERMISSION","_WRITE_PERMISSION","_ALL_PERMISSION","DisplayMode","_ALL","_PUBLIC","_MEMBER","DisplayType","_SLIDER","_POPUP","DisplayDevice","_DESKTOP_MAIN","_DESKTOP_SUB","_MOBILE_POPOUT","_MOBILE_SLIDER","_DESKTOP_POPUP","Position","_HEAD","_BODY","PageTypeOption","_COMPLETE_REGISTER","_FORGET_PASSWORD","_VERIFY_EMAIL","_FORGOT_PIN","PaymentType","_PREPAID","_POSTPAID","Gender","_MALE","_FEMALE","BonusSettingType","_MAIN","_SECONDARY","BonusMethodType","_PERCENT","_AMOUNT","PanelType","_MEMBERSITE","_MOBILESITE","_BACKOFFICE","_APPS","_SYSTEM","TransactionType","_DEPOSIT","_WITHDRAWAL","_BONUS","_ADJUSTMENT","_REBATE","_UPLINE_TRANSFER","_SHAREHOLDER_CLAIM","_REFUND","_COMMISSION","_BIRTHDAY_REWARD","_VIP_COMMISSION","_REFERRAL_BONUS","_WEEKLY_RESCUE_BONUS","_DAILY_CHECK_IN","_CREDIT_REDEMPTION","SmsType","_PHONE_VERIFICATION_TYPE","_RESET_PASSWORD_VEERIFICATION_TYPE","_DEPOSIT_TYPE","_WITHDRAWAL_TYPE","_PIN_RESET","_TAC_CODE","TransactionStatus","_OPEN","_IN_REVIEW","_IN_PROGRESS","_APPROVED","_REJECTED","_AUTO_APPROVED","BonusTransactionMethod","_WITH_DEPOSIT","_WITHOUT_DEPOSIT","BankTransactionType","_CREDIT_BANK_TRANSACTION","_DEBIT_BANK_TRANSACTION","BetStatus","_PENDING_BET_STATUS","_SETTLED_BET_STATUS","_CANCELED_BET_STATUS","Language","_ENGLISH","_KHMER","LanguageKey","_PRIMARY","BankingChannel","_CHANNEL_OFFLINE_BANKING","_CHANNEL_PAYTRUST","_CHANNEL_GPAY","BankingChannelName","SessionKey","_Language","AlertTypes","_DEFAULT","_INFO","_SUCCESS","_WARNING","_DANGER","_ERROR","_INPUT","_CUSTOM","ContentTypeString","_ANNOUNCEMENT","_BANNER","_REWARD_BANNER","_PROMOTION","_SEO","_SCRIPT","_EMAIL","_CONTENT","_VIP_BENEFIT","_VIP_BENEFIT_CONTENT","_VIP_CRITERIA","_PRODUCT_CATEGORY","_VIDEO_TUTORIAL","_MARQUEE_CONTENT","_DEPOSIT_PROMOTION","_DCITEM_CONTENT","_DEPOSIT_PROMOTION_CATEGORY","_CHAT_SPHERE","AllVipOption","_VALUE","_LABEL","TransactionPriority","_NO","_YES","_FIRST_PRIORITY","LoginType","_LOGIN_TYPE_USER","_LOGIN_TYPE_MEMBER","_TICKET_STATUS","value","label","_SYNC_INTERVAL_PATTERN","_TRANSACTION_STATUS","_WALLET_GAME_TRANSACTION_TYPE","ChatSphereAction","_REGISTERATION","_RESET_PASSWORD","AdjustmentTransactionTarget","_PRIMARY_CREDIT","_BONUS_WALLET","Component","stringIsNullOrEmpty","data","createFormBody","params","formBody","property","encodedKey","encodeURIComponent","encodedValue","push","join","createMultiPartFormBody","FormData","entries","key","append","navigateTo","history","url","state","undefined","pathname","numberWithCommas","x","toString","replace","numberWithCurrencyFormat","decimal","force","CURRENCY_DECIMAL","convertedNumber","parseFloat","Math","round","Number","EPSILON","pow","toFixed","afterDecimalNumber","split","decimalDiff","length","lastIndexOf","processNumber","beginNumber","i","charAt","substr","imagePathToFileObject","imagePath","a","fetch","response","blob","file","File","isObjectEmpty","DropdownLanguage","props","i18n","useTranslation","useState","language","selectedLanguage","setSelectedLanguage","options","setOptions","languageState","useSelector","useEffect","languageOptions","languages","index","style","height","className","src","icon","name","find","handleLanguageChange","customStyles","menuList","provided","paddingTop","paddingBottom","menu","base","marginTop","changeLanguage","sessionStorage","setItem","filter","option","onChange","isSearchable","components","DropdownIndicator","IndicatorSeparator","styles","_resources","common","common_en","common_kh","use","initReactI18next","init","debug","resources","lng","getItem","fallbackLng","keySeparator","interpolation","escapeValue","_ALERT_TYPES","setBusy","message","dispatch","type","setIdle","showMessage","responseStatus","responseMessage","disabledTranslate","t","setMemberSearch","search","_FIREBASE_CONFIG","appId","appsettings","ApplicationConfig","firebaseAppId","apiKey","firebaseApiKey","messagingSenderId","firebaseMessagingSenderId","projectId","firebaseProjectId","initFirebase","firebase","apps","initializeApp","deviceToken","navigator","serviceWorker","register","then","registration","messaging","requestPermission","permission","getToken","token","method","headers","body","onMessage","payload","dataContent","catch","err","console","error","performLogin","username","password","isUser","companyCode","json","responseJson","userData","performLogout","withRouter","dropdownOpen","setDropdownOpen","_history","useHistory","_userData","authState","_dispatch","useDispatch","Dropdown","isOpen","toggle","tag","DropdownToggle","DropdownMenu","loginType","DropdownItem","onClick","userRoleId","DropdownMegaMenu","Collapse","this","collapse","UncontrolledDropdown","to","divider","Header","getRecentNotification","window","location","match","Accept","setState","notifications","toggleNotificationSound","doNotDisturb","audio","loop","pause","soundPlayed","play","Audio","notificationSound","toggleMegaMenu","bind","collapseMegaMenu","checkPendingDeposit","firebaseState","clearMessage","intervalId","setInterval","clearInterval","Consumer","toggleMobileSidebar","toggleRightSidebar","toggleMobileRightSidebar","toggleMobileTopMenu","pageHeaderLanguageBar","pageHeaderMegaMenu","pageTwoSidebar","pageTopMenu","pageSidebar","autoClose","hideProgressBar","toggleDND","connect","SidebarProfile","profileActive","handleProfileExpand","preventDefault","pageSidebarMinify","Menu","path","title","numberLabel","isDummy","children","MemberMenu","SidebarNavList","active","setActive","setClicked","fullMenu","pendingDepositCount","setPendingDepositCount","pendingPointsRedemptionCount","setPendingPointsRedemptionCount","livechatCount","setLivechatCount","checkTitle","livechatNotification","checkPendingPointsRedemption","img","alt","caret","badge","highlight","handleSidebarOnMouseOver","handleSidebarOnMouseOut","pageSidebarMinified","exact","clicked","onMouseOver","onMouseOut","expand","open","submenu","handleExpand","SidebarNav","filterMenuByPermission","usedMenu","menus","menusToShow","JSON","parse","stringify","accessString","userPermissionData","permissionArrKey","keyValuePermission","item","trim","substring","indexOf","Sidebar","toggleSidebarMinify","pageSidebarTransparent","Fragment","suppressScrollX","context","pageSidebarSearch","contextType","_permissionArrKey","checkIfPermissionExist","permissionString","isWrite","store","getState","completePermissionKey","clearPermissionData","_INITIAL_STATE","isLoggedIn","loginMessage","loginStateInitialized","isBusy","alertType","memberSearch","_busyCount","createStore","combineReducers","action","appState","max","applyMiddleware","thunk","requestConfig","Store","AppActions","interceptError","returnData","status","AuthActions","ApiEngine","axios","create","interceptors","request","config","interceptRequest","interceptResponse","_TAB_OPTIONS","useLocation","_context","useContext","useForm","handleSubmit","errors","isMemberPortal","activeTab","loadCaptchaEnginge","handleSetPageSidebar","handleSetPageHeader","handleSetPageContentFullWidth","tempUserData","includes","submitForm","validateCaptcha","loginCaptcha","background","onSubmit","viewBox","d","ref","required","placeholder","display","alignItems","minLength","maxLength","process","PanelStat","Panel","toggleExpand","toggleRemove","remove","toggleCollapse","toggleReload","reload","setTimeout","Provider","theme","PanelHeader","noButton","PanelBody","activeEventKey0","setActiveEventKey0","activeEventKey1","setActiveEventKey1","activeEventKey2","setActiveEventKey2","activeEventKey3","setActiveEventKey3","activeEventKey5","setActiveEventKey5","activeEventKey6","setActiveEventKey6","activeEventKey7","setActiveEventKey7","marginLeft","Accordion","defaultActiveKey","Item","eventKey","fontSize","fontWeight","transform","Body","margin","DashboardV1","pendingTransaction","setPendingTransaction","totalDeposit","setTotalDeposit","totalDepositData","setTotalDepositData","totalWithdrawal","setTotalWithdrawal","totalWithdrawalData","setTotalWithdrawalData","instantPaySetting","setInstantPaySetting","rejectReason","setRejectReason","topWithdrawal","setTopWithdrawal","topDeposit","setTopDeposit","moment","toDate","totalMembers","setTotalMembers","totalNewMembers","setTotalNewMembers","totalPerformDeposit","settotalPerformDeposit","topWinners","setTopWinners","topLosers","setTopLosers","topBettersCount","role1IsAllowed","getTopWinnersLosers","pendingTransactions","approvalStatus","totalCount","transactionTypeId","totalTransactionAmount","tempWinners","tempLosers","record","sort","b","winning","justifyContent","mdiAccount","size","color","totalDepositPlayers","mdiFileCheck","totalWithdrawalPlayers","deposit","memberName","memberUsername","totalTransaction","colSpan","textAlign","withdrawal","step","min","defaultValue","winners","losers","setting","image","objectFit","instantPayGatewayString","reason","description","require","SuperAccount","setUsername","setPassword","setConfirmPassword","fullName","setFullName","phone","setPhone","email","setEmail","userId","setUserId","timeZone","setTimeZone","_TIMEZONE_OPTION","confirmPassword","roleId","pattern","DefaultColumnFilter","column","filterValue","setFilter","preFilteredRows","width","target","GlobalFilter","preGlobalFilteredRows","globalFilter","setGlobalFilter","ns","ReactTable","columns","filterable","renderFooter","globalFilterable","tableStyle","defaultSortBy","minRows","getFilteredRecords","fetchUrl","showOverallInfo","postData","getOverallInfo","exportRequired","initialPageSize","fetchedData","tableData","setTableData","processedPageCount","setProcessedPageCount","totalRecordCount","setTotalRecordCount","overallInfo","setOverallInfo","defaultColumn","useMemo","Filter","pageSizeOptions","useTable","disableMultiSort","initialState","pageIndex","pageSize","sortBy","manualPagination","pageCount","autoResetPage","getExportFileBlob","fileType","fileName","post","get","allData","csvString","Papa","unparse","csvData","Blob","FileSaver","saveAs","header","c","headerNames","exportValue","compatibleData","row","obj","forEach","col","wb","XLSX","utils","book_new","ws1","json_to_sheet","book_append_sheet","writeFile","useGlobalFilter","useFilters","useGroupBy","useSortBy","useExpanded","usePagination","useRowSelect","useExportData","getTableProps","getTableBodyProps","headerGroups","footerGroups","prepareRow","page","canPreviousPage","canNextPage","pageOptions","gotoPage","nextPage","previousPage","setPageSize","exportData","filters","groupBy","expanded","selectedRowIds","startRow","calculatedPageCount","ceil","updateDisplay","boxShadow","padding","marginRight","overflow","headerGroup","getHeaderGroupProps","getHeaderProps","getSortByToggleProps","render","disableSortBy","isSorted","isSortedDesc","canFilter","getRowProps","backgroundColor","cells","cell","getCellProps","minWidth","Array","group","getFooterGroupProps","getFooterProps","disabled","float","NavigationButton","class","goBack","buttonText","ManageCompany","companyData","setCompanyData","_tableColumns","accessor","Cell","UncontrolledButtonDropdown","container","flip","right","original","disableFilters","MemberDetail","setValue","trigger","watch","formState","control","memberId","setMemberId","setMemberPin","setShareholderPin","cnFullName","setCNFullName","isPhoneVerified","setIsPhoneVerified","gender","setGender","rollOverThreshold","setRollOverThreshold","riskLevel","setRiskLevel","internalTransferLimit","setInternalTransferLimit","format","memberDateJoined","setMemberDateJoined","memberLastLogin","setMemberLastLogin","shareholderDate","setShareholderDate","isUpline","setIsUpline","memberData","setMemberData","source","setSource","campaign","setCampaign","address","setAddress","postalCode","setPostalCode","city","setCity","referralCode","setReferralCode","parentMemberId","setParentMemberId","paymentType","setPaymentType","vipOption","setVipOption","setStatus","changeRiskLvl","setChangeRiskLvl","desktopFile","setDesktopFile","mobileFile","setMobileFile","desktopImage","setDesktopImage","mobileImage","setMobileImage","isNewDesktopImage","setIsNewDesktopImage","isNewMobileImage","setIsNewMobileImage","isTestAccount","setIsTestAccount","remarkOption","setRemarkOption","blockedDate","setBlockedDate","statusOption","transferOption","transferBackToMainWallet","pinNumber","memberPin","shareholderPin","userFullName","userCNFullName","phoneNumber","paymentModeId","birthDate","vipId","vip","transferBackMainWallet","isNewDesktopFile","isNewMobileFile","remark","setParentId","setParentName","vipList","parentReferralCode","vipLevel","tempMemberData","tempRiskLvl","add","notExpiredCodes","object","startOf","isBefore","fetchRemarks","typeId","remarkList","rules","readOnly","autoComplete","position","top","submitCount","dateFormat","closeOnSelect","checked","htmlFor","defaultChecked","accept","onDrop","acceptedFiles","isDesktop","reader","FileReader","onloadend","result","readAsDataURL","logoDrop","getRootProps","getInputProps","minHeight","ManageMember","_username","_searchedMember","selectedMember","setSelectedMember","selectedMemberPhone","setSelectedMemberPhone","locationStateObj","setLocationStateObj","nodePathMembers","setNodePathMembers","labelUsername","setLabelUsername","labelUserPhone","setLabelUserPhone","usernameKeyword","memberListUrl","setMemberListUrl","classNames","bonusWallet","primaryCredit","syncProductData","getDownlineByReferrer","loadOptions","formattedData","m","unshift","hasMore","additional","nodePath","memId","memberNodePath","temp1","tempLabelUsername","userRole","href","removeItem","debounceTimeout","getDownlineBySelectedReferrer","selectedMemberFullname","setSelectedMemberFullname","selectedUplineMember","setSelectedUplineMember","selectedStatus","setSelectedStatus","labelFullname","setLabelFullname","labelUpline","setLabelUpline","labelStatus","setLabelStatus","startJoinedDate","setStartJoinedDate","endJoinedDate","setEndJoinedDate","lastLoginStartDate","setLastLoginStartDate","lastLoginEndDate","setLastLoginEndDate","searchTrigger","setSearchTrigger","balance","setBalance","balanceLabel","setBalanceLabel","uplineMemberModel","createdTime","userTimeZone","lastLogin","searchBtnHandler","apiUrl","searchAllBtnHandler","filterData","parts","v","dec","calc_num","n","Intl","NumberFormat","containerStyles","onApply","event","picker","startDate","endDate","alwaysShowCalendars","locale","timePicker","timePickerSeconds","ranges","Today","endOf","Yesterday","subtract","ManageMemberPO","setUsernameKeyword","setPhoneNumKeyword","totalData","setTotalData","navigateFromRole","ManageMemberCS","log","slice","AudioRecorder","onAudioRecorded","onAudioRecording","isRecording","setIsRecording","mediaRecorderRef","useRef","audioChunksRef","recordingTimeoutRef","cancelRecordinglRef","countDown","setCountDown","countDownRef","current","stop","startRecording","mediaDevices","getUserMedia","stream","recorder","MediaRecorder","ondataavailable","onstop","audioBlob","formData","success","alert","start","stopRecording","fill","xmlns","cx","cy","r","clip-path","FileUpload","onFileUpload","fileInputRef","handleFileChange","files","click","Display","messageType","data-type","content","controls","ChatRoom","chatList","setChatList","roomChat","setRoomChat","currentPage","setCurrentPage","currentPageRef","totalPages","setTotalPages","totalPagesRef","submitting","setSubmitting","bottomDone","setBottomDone","bottomDoneRef","chatCount","setChatCount","chatCountRef","selectedSenderID","setSelectedSenderID","selectedSenderIDRef","currentSenderId","setCurrentSenderId","roomIntervalRef","setInputValue","textareaRef","chatListBoxRef","chatListBoxRefScroll","isRecordingRef","selectedSenderData","setSelectedSenderData","transactionData","setTransactionData","promotionData","setPromotionData","rolloverData","setRolloverData","bonusRolloverData","setBonusRolloverData","memberDetail","setMemberDetail","textareaValue","setTextareaValue","membersWithUnread","setMembersWithUnread","isViewerOpen","setIsViewerOpen","currentImage","chatImg","setChatImg","templateList","setTemplateList","selectedTemplate","setSelectedTemplate","handleInput","textarea","scrollHeight","clientHeight","getSelectedChatsTemplate","calculateLocalTime","utcDateTime","utcDate","Date","offset","getTimezoneOffset","adjustedTime","getTime","day","String","getDate","padStart","month","getMonth","hours","getFullYear","getHours","minutes","getMinutes","sendMessage","messageData","ReceiverID","MessageType","Content","newMessage","sender","datetime","ok","getChat","scrollToBottom","chatListBox","scrollTop","getAllChatsTemplate","getAllChats","pageNumber","getMembersWithUnreadNotification","chat","pages","getDataBySelectedSenderId","intervalId2","chatId","URLSearchParams","contactsPanel","document","getElementById","addEventListener","handleScroll","removeEventListener","handleAudioData","sent","handleFileUpload","prevPage","senderData","member","responseJson2","formatKey","str","toUpperCase","formatValue","handleSelectChat","senderID","set","updateSelectedChat","tempList","bottom","marginBottom","whiteSpace","wordBreak","overflowWrap","borderRadius","borderStyle","borderWidth","borderColor","senderName","dateTime","count","containerRef","fillRule","clipRule","imgArray","currentIndex","onClose","closeOnClickOutside","classNamePrefix","selectedOption","targetUrl","handleSelectChange","onInput","stateString","queryString","suppressScrollY","approvalStatusString","renderApprovalStatusBadge","renderJsonData","statusHtml","ChatTemplate","contentData","setContentData","dangerouslySetInnerHTML","__html","LiveMonitor","liveData","setLiveData","isPaused","setIsPaused","isLoading","setIsLoading","setIntervalId","filterAmt","setFilterAmt","currentCategory","setCurrentCategory","currentRiskLevel","setCurrentRiskLevel","allAvailableCategory","SetAllAvailableCategory","_risk_level_color","_defaultTableColumns","riskId","date","productName","amount","getLatestData","categoryData","categoryList","category","originalTitle","tempIntervalId","flexDirection","categoryTitle","toggleCategory","classnames","toggleRiskLevel","valueAsNumber","togglePause","mdiPlayCircleOutline","mdiPauseCircleOutline","colorCode","RewardsSetting","mode","settingData","setSettingData","setCategoryData","loginUserId","setFormData","daysArr","settings","categories","o2","i2","Name","o3","i3","RewardsSchedule","scheduleData","setScheduleData","productData","setProductData","products","schedules","findIndex","isAfter","ClaimedRewardsReport","setStartDate","setEndDate","isClaimed","setIsClaimed","rewardsDataUrl","setRewardsDataUrl","getRewardsReport","_OPTION_STYLES","valueContainer","indicatorsContainer","input","isClaimedFilterList","commission","validTurnover","flexFlow","ForfeitedRewardsReport","maxDate","minDate","SportsLiveMonitor","setServerCurrentTime","_defaultColumns","betData","betId","betDataJSON","dataSegments","segment","jsonData","home","away","odds","team1","team2","Home","Away","Leagua","League","SportsTeamBetReport","setBetData","leagueList","setLeagueList","selectedLeague","setSelectedLeague","doneInit","setDoneInit","selectedDate","setSelectedDate","countdownPeriod","setCountdownPeriod","isInit","tempLeagueList","leagueName","_GET_DATA_INTERVAL_IN_MS","singleDatePicker","rowspan","verticalAlign","colspan","rowSpan","isStartWithStar","league","startsWith","isLiveBets","endsWith","matchDate","matchTotalBet","matchFTHdpTotal","matchFTOUTotal","matchHTHdpTotal","matchHTOUTotal","team1TotalBet","team1BetCount","team2TotalBet","team2BetCount","ManageMemberProductUsername","keyword","setKeyword","getMPUsernameList","ManageMemberFullname","fetchDataUrl","WalletBalance","walletDetails","setLoadingWalletFlag","wallets","setWallets","showConfirmation","setShowConfirmation","memberProductId","setMemberProductId","getWalletBalance","mpid","warning","showCancel","confirmBtnText","cancelBtnText","confirmBtnBsStyle","onConfirm","resetRollover","onCancel","wallet","rolloverTarget","rolloverBalance","RollOverStatement","setaAtiveFlag","getBonusData","paddingRight","isShareHolder","maxWidth","sharePercent","poolId","shareHolderDate","_location","setIsShareHolder","setShareHolderDate","minPercent","setMinPercent","maxPercent","setMaxPercent","setSharePercent","referralMemberId","sharepercent","ProductMaintenance","royalty","productId","setProductId","setProductName","productCode","setProductCode","setRoyalty","markup","setMarkup","grosssales","setGrosssales","setValidTurnover","winAmt","setWinAmt","setCommission","rewards","setRewards","setNetsales","payout","setPayout","setNetprofit","setDate","birthdayBonus","setBirthdayBonus","gameRebate","setGameRebate","weeklyRescue","setWeeklyRescue","memberProductBonus","setMemberProductBonus","memberPoints","setMemberPoints","totalExpenses","setTotalExpenses","grossSales","netSales","netProfit","memberPoint","_winLose","winAmount","_comm","_royalty","_rewards","getProductData","ShareholdersProcessSales","categoryTotal","setCategoryTotal","oktoprocess","setOktoprocess","setOkcount","processed","setProcessed","initPage","setInitPage","yesterday","disableFutureDt","greyStyle","border","lineRowStyle","borderTop","borderBottom","leftBorderStyle","borderLeft","rightBorderStyle","borderRight","textRightStyle","textLeftStyle","product","categoryRow","catTotal","winLose","betAmt","royaltyAmt","commissionAmt","balanceAmt","payoutAmt","netProfitAmt","categoryName","turnover","winlose","isValidDate","timeFormat","role","paddingLeft","textDecoration","setTurnover","setPoolData","poolProcessedRow","setPoolProcessedRow","released","setReleased","showConfirmationRelease","setShowConfirmationRelease","payoutStyle","netProfitStyle","balanceStyle","pool","poolRow","poolCategoryRow","poolCatTotal","el","poolName","submitProcess","submitRelease","clearSH","userSelect","unstuckSH","isNaN","TodayNewMembers","deposited","getNewMemberList","TransferLog","logData","setLogData","_TABLE_COLUMNS","getTransferLog","playerGuid","playerId","MemberProductMaintenance","accountLinked","assigned","updateProductData","CompanyDetail","getValues","clearErrors","setError","credit","setCredit","transactionPinNumber","setTransactionPinNumber","pinEntered","setPinEntered","domainList","setDomainList","selectedDomain","setSelectedDomain","isToggleDomainModal","setIsToggleDomainModal","isToggleDeleteDomainModal","setIsToggleDeleteDomainModal","requiredPassword","setRequiredPassword","requiredConfirmPassword","setRequiredConfirmPassword","isDomainValid","setIsDomainValid","toggleDomainModal","toggleDeleteDomainModal","userStatus","targetId","fetchUserDomains","onMobileChange","isValid","newNumber","countryData","fullNumber","ext","formattedNumber","validate","isEmptyNumber","updateOrCreateDomain","domainUrl","deleteDomain","nationalMode","fieldName","preferredCountries","containerClassName","inputClassName","onPhoneNumberChange","onPhoneNumberBlur","customPlaceholder","autocomplete","initialValue","secret","focus","checkPinValue","inputMode","inputStyle","inputFocusStyle","regexCriteria","Modal","ModalHeader","ModalBody","Input","domainObject","invalid","FormFeedback","ModalFooter","Button","ManageRole","bankData","setBankData","setName","setDescription","accessRightOption","setAccessRightOption","accessNumbering","setAccessNumbering","setRoleId","accessOption","innerKey","innerValue","toLowerCase","roleName","canWrite","canRead","ChangePassword","ChangePinNumber","oldTransactionPinNumber","setOldTransactionPinNumber","confirmTransactionPinNumber","setConfirmTransactionPinNumber","oldPinEntered","setOldPinEntered","confirmPinEntered","setConfirmPinEntered","formBody2","checkOldPinValue","checkConfirmPinValue","ManageSubAccount","accountData","setAccountData","isCompany","isUserAllowed","CreateSubAccount","unregister","roleOptions","setRoleOptions","restrictedIP","setRestrictedIP","roleList","GetAssignmentData","backUrl","setBackurl","reportUrl","setReportUrl","clientCode","setClientCode","clientSecret","setClientSecret","logoImage","setLogoImage","apiKeyOption","setApiKeyOption","apiData","setApiData","updateApiMeta","newData","accountProductId","reset","selected","fightPercent","setFightPercent","hotGameCount","setHotGameCount","setAccountProductId","useProxy","setUseProxy","useProxyAuthentication","setUseProxyAuthentication","proxyHost","setProxyHost","proxyPort","setProxyPort","proxyUsername","setProxyUsername","proxyPassword","setProxyPassword","passwordVisible","setPasswordVisible","isNetWin","setIsNetWin","maximumBonus","setMaximumBonus","maximumCommission","setMaximumCommission","bonus","setBonus","rank","setRank","setAccountProduct","playerComm","setPlayerComm","referrerComm","setReferrerCom","referrerUplineComm","setReferrerUplineComm","_fightOptions","generateFightOptions","isNetWinForTurnover","cursor","ManageActivityLog","setApiUrl","_operationLogTableColumns","createdByUser","userFullname","createdByMember","memberFullname","user","now","inputProps","Deposit","bankAccountOption","setBankAccountOption","bankAccountId","setBankAccountId","bonusOption","setBonusOption","bonusId","setBonusId","minDep","setMinDep","maxDep","setMaxDep","fullScreen","setFullScreen","receiptFile","setReceiptFile","receiptImage","setReceiptImage","showPinEntry","setShowPinEntry","enteredDepositData","setEnteredDepositData","enteredDepositE","setEnteredDepositE","initFormField","getUserBonus","userBonusApiUrl","bonusList","methodId","bankAccountList","bankAccount","depositStatus","bankName","accountNumber","minDeposit","minimumDeposit","maxDeposit","maximumDeposit","channel","panel","receiptReference","reference","onComplete","onPinSubmit","toggleModal","isDisabled","imageDrop","fade","contentClassName","centered","alignSelf","data-dismiss","aria-hidden","autoSelect","Withdrawal","bankOption","setBankOption","auditBankOption","setAuditBankOption","setBankName","auditBankId","setAuditBankId","auditBankAccountId","setAuditBankAccountId","memberOption","memberBalance","setMemberBalance","setMin","setMax","setStartOffTime","setEndOffTime","setWithdrawalStatus","enteredWithdrawalData","setEnteredWithdrawalData","enteredWithdrawalE","setEnteredWithdrawalE","bankList","bank","withdrawalStatus","minimumWithdrawal","maximumWithdrawal","bankAccountNumber","bankAccountHolderName","checkSystemSettings","settingsJson","keyValuePair","startTime","endTime","ReactHtmlParser","Adjustment","enteredAdjustmentData","setEnteredAdjustmentData","enteredAdjustmentE","setEnteredAdjustmentE","getMemberList","adjustmentTarget","TransactionEnquiry","calendarStartDate","setCalendarStartDate","calendarEndDate","setCalendarEndDate","withdrawalApprovalModal","setWithdrawalApprovalModal","transaction","setTransaction","showTransButton","setShowTransButton","transactionModal","setTransactionModal","transactionType","setTransactionType","transactionComponent","setTransactionComponent","initFlag","setInitFlag","transactionApiUrl","setTransactionApiUrl","receiptImages","setReceiptImages","setCurrentImage","role2IsAllowed","role3IsAllowed","role4IsAllowed","_STATUS_OPTIONS","_TRANSACTION_OPTIONS","_REWARD","_PANEL_OPTIONS","setBankingChannelOption","selectedTransaction","setSelectedTransaction","selectedPanel","setSelectedPanel","selectedDepositMethod","setSelectedDepositMethod","selectedChannel","setLabel","setActiveTab","adjustedAmount","setAdjustedAmount","adjustedAmountError","setAdjustedAmountError","openImageViewer","useCallback","toggleTab","tab","exportDatas2","setExportDatas2","wingWeiluyApprovalModal","setWingWeiluyApprovalModal","setIsNewReceiptImage","prepareReceiptImage","imgString","getUserTransaction","getBankAccount","channelResponseJson","bankingChannelList","bankingChannel","userBankResponseJson","depositMethod","isDebitTransaction","_DEBIT_TRANSACTIONS","isCreditTransaction","updateStatus","Footer","submitTime","transferTo","creditSum","reduce","sum","currentValue","debitSum","ipAddress","lockedTime","isInstant","enableAdjustment","handleWithdrawalApproval","handleWingWeiluyApproval","processLockTransaction","receipt","viewTransaction","exportToExcel","newFilteredDatas","newFilteredData","transactionDateTime","prePrimaryCreditBalance","postPrimaryCreditBalance","preBonusWalletBalance","postBonusWalletBalance","bonusWalletAmount","myButton","updateWingWeiLuyStatus","transactionId","isMulti","Nav","tabs","NavItem","NavLink","TabContent","TabPane","tabId","filename","hidden","WalletTransfer","walletTransferModal","setWalletTransferModal","nonSeamlessBalance","setNonSeamlessBalance","fromWalletBalance","setFromWalletBalance","toWalletBalance","setToWalletBalance","fromWallet","setFromWallet","toWallet","setToWallet","transactionStatus","setTransactionStatus","selectedProduct","setSelectedProduct","productList","setProductList","setPlayerId","reportData","setReportData","readSubReport","walletBefore","depositAmount","walletAfter","gameWalletBefore","gameWalletAfter","targetTransferId","accountProductOptionList","getNonSeamLessProductBalance","getProductTransactionRecord","transferAllToMain","playeid","moreThanZero","BetDetailPanel","targetDetails","setTargetDetails","showGameRecord","setShowGameRecord","showCancelLog","setShowCancelLog","showPayload","setShowPayload","showApiload","setShowApiload","cancelPayload","setCancelPayload","payLoad","setPayload","refNo","setRefNo","apiLog","setApiLog","selectedPgrIdToCancel","setSelectedPgrIdToCancel","showCancelConfirmation","setShowCancelConfirmation","showReactTable","setShowReactTable","_OVERALL_KEYS","innerHTML","viewGameRecord","viewPayload","viewApiLog","currentDateTime","viewCancelLog","statusString","totalAmount","winLoss","winLossTotal","jpc","jpcSum","filteredRows","dataRow","jpw","jpwSum","info","cancelSelectedBet","clipboard","writeText","keyboard","MemberManageBetDetailReport","setSearch","setCategoryList","selectedCategory","setSelectedCategory","categoryTabs","setCategoryTabs","initFinish","setInitFinish","productCategorys","productCategoryTabs","productCategory","tempUrl","refreshRequired","tempTabs","ManageProfitLossReport","setGroupBy","profitLossDatas","setProfitLossDatas","triggerSearch","setTriggerSearch","createdBy","setCreatedBy","filteredDatas","setFilteredDatas","firstHeader","setFirstHeader","tableRowHandler","createdByFullName","wager","wagerTotal","amountTotal","betAmount","memberProfitLoss","memberPLTotal","tax","companyProfitLoss","companyPLTotal","categoryOption","productOption","parsedUsername","groupBySearchButtonHandler","Product","setProducts","setAction","uplineProductRates","processedProducts","productResponseJson","uplineProduct","accountProductModel","maxBonus","maxCommission","useGroupRate","updateProductActiveness","actionProcessing","confirm","ReferralDetail","modalVisible","setModalVisible","referralCodes","setReferralCodes","referralCodeId","setReferralCodeId","referralCodeDetail","setReferralCodeDetail","expiryDate","setExpiryDate","memberReferralInfos","getReferralCodeDetail","productIndex","deleteReferralCode","codeIndex","BonusTracking","CommissionTracking","totalCommission","setTotalCommission","setTotalSales","vipRebate","commissionAmount","claimedTime","calcualteDetails","records","sales","salesAmount","PointTracking","points","AdjustmentReport","getAdjustmentReport","preAmount","postAmount","BonusRollOverStatement","betLimitData","setBetLimitData","betLimitStr","setBetLimitStr","initCheck","setInitCheck","selectedSportsType","setSelectedSportsType","selectedMarketType","setSelectedMarketType","selectedProductName","setSelectedProductName","mpUsername","setMpUsername","_copyRef","temp","sportsType","marketType","tempBetLimitStr","trunc","minimumBet","maximumBet","maximumBetPerMatch","tempData","betSetting","parseInt","lineHeight","rows","betLimitCode","select","execCommand","mdiContentCopy","ManageMemberDownlineGames","selectedGame","setSelectedGame","setProductOption","usernameList","setUsernameList","downlineUsername","tempValue","newArr","tempProducts","show","getDownlineGames","u","onToggle","toggleShowValue","ConfigurationLanguageDetail","_CUSTOM_CONTENT_REGISTER","_EXCLUDE_TITLE_TYPE","_EXCLUDE_CONTENT_TYPE","languageId","setLanguageId","languageDetailId","setLanguageDetailId","languageType","setLanguageType","setTitle","setContent","dataTypeId","setDataTypeId","dataDisplayDevice","setDataDisplayDevice","languageOption","setLanguageOption","languageModalVisible","setLanguageModalVisible","submit","dataId","cleanup","onFinish","languageList","initForAssignment","handleImageUpload","imageUrl","editorConfig","extraPlugins","editor","plugins","createUploadAdapter","loader","MyUploadAdapter","default","ClassicEditor","onInit","setData","getData","html","ManageConfigurationLanguage","languageDetailModalVisibility","setLanguageDetailModalVisibility","tableColumns","setTableColumns","_tableColumns2","_tableColumns3","getConfigLanguage","splice","visible","displayMode","setDisplayMode","setUrl","promotionId","setPromotionId","promotionRefId","setPromotionRefId","setVip","statePromotionId","refId","imageFile","displayModeId","MemberPromotionStatement","promoData","setPromoData","isRefund","setIsRefund","TitleTooltip","placement","OverlayTrigger","overlay","Tooltip","tooltipContent","revertNotes","cancelPromo","promoDetail","initialBalance","handleClick","isCleared","setNavigateFromRole","ViewProductAccount","productAccounts","setProductAccounts","productLogUrl","setProductLogUrl","viewProductLog","setViewProductLog","_columns","Id","sortable","viewLog","viewBalance","_logColumns","statusStr","statusClass","getProductAccount","responseSuccess","ManageIpBlock","blockedIpList","setBlockedIpList","deleteIp","queueData","setQueueData","removePlayerFromQueue","rowData","walletId","ManageMobileTAC","TACData","setTACData","tac","expireAt","usage","isClaim","selectedCheckboxes","handleCheckboxChange","setSelectedCheckboxes","prevSelected","getBirthdayMemberList","Claim","idList","zIndex","ManageMemberWeeklyRescue","showReleaseBtn","isAllowToClaim","weekStartDate","utc","weekEndDate","sumWinLoss","minLoss","rewardAmount","getMemberWeeklyRescue","amountList","startDateList","endDateList","splitId","memberList","ClaimAll","ManageMemberRebate","categoryId","getRebateMemberList","list","claimedPromo","setClaimedPromo","productCategoryData","setProductCategoryData","setVipList","VipList","queryParams","IsBonusFixed","BonusRate","RolloverRate","StartDate","EndDate","MinVipLevel","MinDeposit","MinCoinTarget","MaxWithdraw","BonusCap","MaxUsage","Remark","Rank","IsClaimable","IsMaxUsagePerDay","productCategoryId","depositPromotionProducts","MasterProductDetail","productDisplayId","setProductDisplayId","setBackUrl","regularSyncInterval","setRegularSyncInterval","selectRegularSyncPattern","setSelectRegularSyncPattern","setSettlementSyncEnabled","settlementSyncTimeHH","setSettlementSyncTimeHH","settlementSyncTimeMM","setSettlementSyncTimeMM","isNewImage","setIsNewImage","isNewBanner","setIsNewBanner","setIsNewDesktopBanner","isNewPopupBanner","setIsNewPopupBanner","isNewProviderImage","setIsNewProviderImage","isNewProductDesktopImage","setIsNewProductDesktopImage","isNewProductDesktopImageHover","setIsNewProductDesktopImageHover","isNewIcon","setIsNewIcon","isSeamless","setIsSeamless","downloadUrl","setDownloadUrl","logoFile","setLogoFile","bannerFile","setBannerFile","bannerImage","setBannerImage","bannerDesktopFile","setBannerDesktopFile","bannerDesktopImage","setBannerDesktopImage","productDesktopFile","setProductDesktopFile","productDesktopImage","setProductDesktopImage","productDesktopFileHover","setProductDesktopFileHover","productDesktopImageHover","setProductDesktopImageHover","popupBannerFile","setPopupBannerFile","popupBannerImage","setPopupBannerImage","iconFile","setIconFile","iconImage","setIconImage","hourList","setHourList","minuteList","setMinuteList","showRankInput","setShowRankInput","providerFile","setProviderFile","providerImage","setProviderImage","isNewProductImage","isNewBannerImage","isNewPopupBannerImage","isNewIconImage","regularSyncPattern","settlementSyncEnabled","supportFullPlayerGameRecords","supportAgentMode","hasOwnLobby","hideLobby","rankInGamesLobby","initHourAndMinuteList","makeNumberList","minimum","maximum","numberList","popupBannerDrop","bannerDrop","iconDrop","providerLogoDrop","bannerDesktopDrop","desktopLogoDrop","desktopLogoHoverDrop","ManageMasterProduct","targetSyncProduct","setTargetSyncProduct","showRangeModal","setShowRangeModal","showSettlementSyncSubModal","setShowSettlementSyncSubModal","settleDate","setSettleDate","productImage","startdate","productUm","ProductCategoryDetail","setCategoryId","ManageProductCategory","GameDetail","gameOption","setGameOption","recommended","setRecommended","gameId","setGameId","settingId","setSettingId","isRecommended","games","game","gameName","ManageGame","gameData","setGameData","setBetLimitSettingData","RetrieveMemberBetData","masterProductList","setMasterProductList","usernameString","setUsernameString","retrieveBetData","ManageBank","bankWebsite","renderStatus","enableDeposit","enableWithdrawal","text","statusText","bankCode","setBankCode","bankShortName","setBankShortName","setBankWebsite","bankCurrencyCode","setBankCurrencyCode","setMinimumDeposit","setMinimumWithdrawal","setMaximumDeposit","setMaximumWithdrawal","bankCountryCode","setBankCountryCode","bankAddress","setBankAddress","bankPostalCode","setBankPostalCode","bankPhone","setBankPhone","bankFax","setBankFax","instantPay","setInstantPay","bankId","setBankId","setEnableDeposit","setEnableWithdrawal","adjustment","setAdjustment","currencyCode","countryCode","fax","isNewBankLogoImage","bankAccountData","setBankAccountData","accountStatus","BankAccountDetail","setBankAccountNumber","setBankAccountHolderName","branch","setBranch","province","setProvince","setDepositStatus","setAccountStatus","accountHolderName","ManageProductSetting","productSettingData","setProductSettingData","_PRODUCT_SETTING_PERMISSION","ProductSettingDetail","minimumRebate","setMinimumRebate","maximumRebate","setMaximumRebate","rebatePercent","setRebatePercent","turnoverRate","setTurnoverRate","productSettingId","setProductSettingId","accountProductOption","setAccountProductOption","setVipId","setCategoryOption","categoryOptionList","ManageLanguage","languageData","setLanguageData","LanguageDetail","setCode","ManageBankingChannel","bankingChannelData","setBankingChannelData","_BANKING_CHANNEL_SETTING_PERMISSION","BankingChannelDetail","bankingChannelId","setBankingChannelId","ManageBonusType","bonusType","setBonusType","_BONUS_TYPE_PERMISSION","BonusTypeDetail","bonusTypeId","setBonusTypeId","ManageInstantPaySetting","GetInstantPaySetting","InstantPaySettingDetail","instantPaySettingId","setInstantPaySettingId","instantPayBankSettingId","setInstantPayBankSettingId","apiCode","setApiCode","apiSecret","setApiSecret","serviceCharge","setServiceCharge","parameter_1","setParameter_1","paymentGatewayId","setPaymentGatewayId","instantPayRank","setInstantPayRank","bankFormRegister","bankFormHandleSubmit","bankFormErrors","bankFormSetValue","paymentGatewayOption","setPaymentGatewayOption","instantPayBankSettingData","setInstantPayBankSettingData","bankSettingModal","setBankSettingModal","getInstantPayBankSetting","submitBankSettingForm","instantPayGatewayId","parameter1","paymentGatewayList","gateway","RejectReasonDetail","rejectReasonId","setRejectReasonId","ManageRejectReason","rejectReasonData","setRejectReasonData","smsContentId","setSmsContentId","cursorPosition","setCursorPosition","setLanguages","languageContent","setLanguageContent","contentError","setContentError","storedLanguageContent","storedContent","languageJson","tempLanguages","tempContents","lang","tempContent","smsTypeId","currentContentValue","processedValue","onBlur","selectionStart","ManageSmsContent","smsContentData","setSmsContentData","SmsSettings","systemName","setSystemName","systemPassword","systemUsername","ManageAnnouncement","announcementData","setAnnouncementData","vipModel","_ANNOUNCEMENT_SETTING_PERMISSION","AnnouncementDetail","announcementId","setAnnouncementId","announcementRefId","setAnnouncementRefId","pinned","setPinned","stateAnnouncementId","pinOnTop","ManageBanner","bannerData","setBannerData","ManageBannerLanguage","displayDevice","setDisplayType","bannerId","setBannerId","bannerRefId","setBannerRefId","setPage","setDisplayDevice","showExample","setShowExample","stateBannerId","tempDisplayTypeId","displayTypeId","ManageRewardBanner","_REWARD_BANNER_SETTING_PERMISSION","ManagePromotion","_PROMOTION_SETTING_PERMISSION","ScriptIndex","scriptData","setScriptData","createOrUpdateUrl","setCreateOrUpdateUrl","_SCRIPT_SETTING_PERMISSION","scriptId","setScriptId","setCategory","setPosition","positionId","isSeo","ManageEmail","emailData","setEmailData","emailId","setEmailId","pageType","setPageType","pageTypeId","ManageContent","contentId","setContentId","ManageVipLevel","vipData","setVipData","VipCriteriaDetail","vipCriteriaId","setVipCriteriaId","isPrivate","setIsPrivate","isDefault","setIsDefault","vipObtainField","setVipObtainField","vipMaintainField","setVipMaintainField","minStake","setMinStake","withinDay","setWithinDay","minMaintainStake","setMinMaintainStake","everyDay","setEveryDay","isDowngradable","setIsDowngradable","downgradeId","setDowngradeId","upgradeId","setUpgradeId","casinoRebate","setCasinoRebate","slotRebate","setSlotRebate","sportRebate","setSportRebate","fishRebate","setfishRebate","lotteryRebate","setLotteryRebate","birthdayReward","setBirthdayReward","dailyWithdrawalLimit","setDailyWithdrawalLimit","dailyTransactionCount","setDailyTransactionCount","upgradeBonus","setUpgradeBonus","criteriaData","displayBank","setParentCriteriaId","downgradeTargetId","upgradeTargetId","depositCount","isDowngrable","obtainMinDeposit","obtainWithinDayCount","isPrivateInvitation","maintainDeposit","maintainDayCount","rebateCasino","rebateSlot","maxWithdrawalAmount","maxWithdrawalCount","rebateSport","rebateFish","rebateLottery","empty","minObtainTurnover","minMaintainTurnover","maintainEveryDayCount","displayBankDetails","pointerEvents","VipLevelDetail","vipLevelId","setVipLevelId","setRemark","withdrawalLimit","setWithdrawalLimit","setImageFile","setImage","transactionPriority","setTransactionPriority","displayBankDetail","setDisplayBankDetail","priorityOption","ManageRemark","remarkData","setRemarkData","RemarkDetail","remarkId","setRemarkId","remarkTypeOptions","setRemarkTypeOptions","remarkTypeId","getRemarkType","ManageTag","tagData","setTagData","_TAG_SETTING_PERMISSION","TagDetail","setColor","tagId","setTagId","sketchBackgroundColor","prevState","data-toggle","aria-expanded","hex","ManageBankPackage","ManageBetSetting","setVipLevel","setGame","vipLevelOptions","gameOptions","ex","scope","for","ManageContactUs","contactUsData","setContactUsData","ContactUsDetail","contactUsId","setContactUsId","setText","ManageVipBenefit","vipBenefitData","setVipBenefitData","vipBenefitId","setVipBenefitId","ManageVipBenefitContent","vipBenefitContents","setVipBenefitContents","benefitContentId","setBenefitContentId","vipBenefitOption","setVipBenefitOption","vipBenefitList","benefit","vipBenefit","ManageCommunication","channelName","setChannelName","setChannelDescription","cTA","setCTA","setIsLiveChat","channelId","setChannelId","channelLanguages","setChannelLanguages","setAttachmentImage","setIsNewAttachment","channelDescription","descriptionLocalization","channelDetailResponse","l","ManageSystemSetting","systemSetting","setSystemSetting","selectedSetting","setSelectedSetting","_COLUMNS","settingValue","ManageRecurringJob","StartRecurringJob","jobName","ManageManualJob","StartManualJob","WebContent","stateWebContentId","ManageWebContent","webContentData","setWebContentData","_WEB_CONTENT_SETTING_PERMISSION","cloneDepositPromotion","getDepositPromotion","bonusRate","setBonusRate","rolloverRate","setRolloverRate","setMinDeposit","bonusCap","setBonusCap","redemption","setRedemption","depositPromotionProductData","setDepositPromotionProductData","accountFormRegister","accountFormHandleSubmit","accountFormErrors","accountFormSetValue","promotionFormRegister","promotionFormHandleSubmit","promotionFormErrors","accountProductStatus","setAccountProductStatus","setAccountProductModel","setAccountProductName","selectedMasterProductId","setSelectedMasterProductId","isCreateNewAccount","setIsCreateNewAccount","depositPromotionProductId","setDepositPromotionProductId","isBonusFixed","setIsBonusFixed","isClaimable","setIsClaimable","selectedProductCategoryId","setSelectedProductCategoryId","isMaxUsagePerDay","setIsMaxUsagePerDay","showRolloverConfirmation","setShowRolloverConfirmation","minBonusWalletTarget","setMinBonusWalletTarget","maxWithdraw","setMaxWithdraw","isRolloverFixed","setIsRolloverFixed","masterProductId","getDepositPromotionProduct","selectedViplevel","setSelectedViplevel","getMasterProduct","minVipLevel","maxUsage","mincoinTarget","ProductList","isAddProduct","submitAccountSettingForm","depositPromotionId","obj1","some","obj2","ManageMarqueeContent","marqueeTagContentData","setMarqueeTagContentData","getMarqueeTagContent","ManageSkinSettings","skinSettingData","setSkinSettingData","backgroundImage","SkinSettingsDetail","skinSettingId","setSkinSettingId","imageTopRightFile","setImageTopRightFile","imageTopRight","setImageTopRight","imageBottomLeftFile","setImageBottomLeftFile","imageBottomLeft","setImageBottomLeft","skinName","accessoryTopRightDrop","accessoryBottomLeftDrop","isNew","readGame","gameImage","setGameImage","gameFile","setGameFile","desktopImageHover","setDesktopImageHover","desktopFileHover","setDesktopFileHover","isNewDesktopImageHover","setIsNewDesktopImageHover","setGameName","gameCode","setGameCode","gameUm","setGameUm","setHidden","isNewGame","setIsNewGame","appUrl","setAppUrl","appDeepLink","setAppDeepLink","isApp","setIsApp","parameter_2","setParameter_2","parameter_3","setParameter_3","parameter_4","setParameter_4","parameter_5","setParameter_5","isFeatured","setIsFeatured","hiddenGame","isApplication","isNewGameImage","param1","param2","param3","param4","param5","getProductCategory","ManageWeeklyRescue","minlosses","rescuePercentage","WeeklyRescueDetail","weeklyRescueId","setWeeklyRescueId","minLosses","setminLosses","setRescuePercentage","setMaxBonus","ManageBonus","bonusData","setBonusData","_BONUS_SETTING_PERMISSION","BonusDetail","showPlayer","setShowPlayer","bonusRefId","setBonusRefId","setMethodId","settingTypeId","setSettingTypeId","setAmount","bonusStartTime","setBonusStartTime","bonusEndTime","setBonusEndTime","bonusDayData","setBonusDayData","bonusTypeOption","setBonusTypeOption","claimCount","setClaimCount","_DAY_MAPPER","0","1","2","3","4","5","6","stateBonusId","bonusArr","bonusTypeList","bonusDataString","isShowPlayer","maximumBonusAmount","bonusDay","isNewBonusImage","dateRange","readonly","Bonus","setMemberOption","depositTransactionOption","setDepositTransactionOption","depositIndex","setDepositIndex","depositTransactions","setDepositTransactions","_BONUS_TYPE","depositTransaction","InstantTransaction","editBtnHandler","TransactionDetail","txn","setTxn","transactionDetail","setTransactionDetail","auditDetail","setAuditDetail","systemBalance","setSystemBalance","withdrawalModal","setWithdrawalModal","showDetails","setShowDetails","fetchPreviousDataUrl","creditRemarkDetail","setCreditRemarkDetail","getTransactionDetail","vfullname","lockedByFullName","transactionDetails","memberFullName","memberCNFullName","extraDetails","concat","methodName","auditDetails","auditedFullName","auditedTime","auditRemark","creditRemark","creditRemarkDetails","PointsNeeded","Stock","LimitPerMember","ProductType","Value","CreatedTime","UpdatedTime","balanceJson","_systemBalanceColumns","approvedDeposit","approvedWithdrawal","approvedBonus","approvedAdjustment","pendingDeposit","pendingWithdrawal","pendingAdjustment","pendingBonus","_previousTransactionColumns","limit","differences","processTransaction","txnTypeId","startHour","setStartHour","startMinute","setStartMinute","endHour","setEndHour","endMinute","setEndMinute","sundayQRImageFile","setSundayQRImageFile","mondayQRImageFile","setMondayQRImageFile","tuesdayQRImageFile","setTuesdayQRImageFile","wednesdayQRImageFile","setWednesdayQRImageFile","thursdayQRImageFile","setThursdayQRImageFile","fridayQRImageFile","setFridayQRImageFile","saturdayQRImageFile","setSaturdayQRImageFile","isNewSundayQRImage","setIsNewSundayQRImage","isNewMondayQRImage","setIsNewMondayQRImage","isNewTuesdayQRImage","setIsNewTuesdayQRImage","isNewWednesdayQRImage","setIsNewWednesdayQRImage","isNewThursdayQRImage","setIsNewThursdayQRImage","isNewFridayQRImage","setIsNewFridayQRImage","isNewSaturdayQRImage","setIsNewSaturdayQRImage","sundayQR","setSundayQR","mondayQR","setMondayQR","tuesdayQR","setTuesdayQR","wednesdayQR","setWednesdayQR","thursdayQR","setThursdayQR","fridayQR","setFridayQR","saturdayQR","setSaturdayQR","QR_ImageDrop","dayInWeek","reader0","reader1","reader2","reader3","reader4","reader5","reader6","startTimeStr","endTimeStr","trueOrFalse","ManageBetDetailReport","setCurrentDateTime","ticketId","setTicketId","setBetAmt","betAmtCompare","setBetAmtCompare","winLossAmt","setWinLossAmt","winLossAmtCompare","setWinLossAmtCompare","_math_compare","updatedTime","ManageDailySummaryReport","dailySummaryDatas","setDailySummaryDatas","getDailySummaryDatas","totalRegister","firstDepositCount","firstDepositApprovalCount","firstDepositTotalAmount","firstDepositCountTotal","firstDepositApprovalCountTotal","firstDepositTotalAmountTotal","depositApprovalCount","depositTotalAmount","depositCountTotal","depositApprovalCountTotal","depositTotalAmountTotal","withdrawalCount","withdrawalApprovalCount","withdrawalTotalAmount","withdrawalCountTotal","withdrawalApprovalCountTotal","withdrawalTotalAmountTotal","adjustmentCount","adjustmentApprovalCount","adjustmentTotalAmount","adjustmentCountTotal","adjustmentTotalAmountTotal","adjustmentApprovalCountTotal","transferCount","transferApprovalCount","transferTotalAmount","transferCountTotal","transferTotalAmountTotal","transferApprovalCountTotal","rebateTotal","rebate","firstTurnover","validTurnoverTotal","secondTurnover","profitLossTotal","ManageChannelSummaryReport","firstDeposit1","firstDeposit2","firstDeposit3","deposit1","deposit2","deposit3","withdrawal1","withdrawal2","withdrawal3","adjustment1","adjustment2","adjustment3","turnover1","turnover2","profitLoss","BankSummaryStatement","statementDatas","setStatementDatas","exportDatas","setExportDatas","debit","updateFilteredDatas","newExportDatas","totalCredit","totalDebit","admin","BankSummaryAddCreditDebit","setDateTime","getBankSummaryDatas","BankSummaryAdjustment","bankAccounts","toBankAccount","setToBankAccount","fromBankAccountId","toBankAccountId","ManageBankSummaryReport","bankSummaryDatas","setBankSummaryDatas","setBankSummaryDatas2","creditModal","setCreditModal","debitModal","setDebitModal","adjustmentModal","setAdjustmentModal","statementModal","setStatementModal","modalState","setModalState","bankAccountDatas","setBankAccountDatas","getAllBankStatementDatas","updateFilteredDatas2","toggleCreditModal","toggleDebitModal","toggleAdjustmentModal","toggleStatementModal","floor","creditTotal","creditT","debitTotal","debitT","balanceTotal","balanceT","ManageMemberReport","memberReportDatas","setMemberReportDatas","getMemberReport","lastLoginDate","bonuses","claimedCommission","ClaimedCommission","unclaimedCommission","totalLoss","totalWinLose","ManageWinLossReport","viewerReportList","downlineReportList","userHierachy","setUserHierachy","_userId","ticketViewingMember","setTicketViewingMember","gameDetailUrl","setGameDetailUrl","selectedFilterMember","setSelectedFilterMember","ticketStatus","setTicketStatus","_REPORT_REF","_DOWNLINE_REPORT_REF","_gameRecordColumns","totalWin","profit","readReport","searchDownline","checkNegativeCells","from","childNodes","values","section","nodeName","tr","td","innerText","classList","startRenderLink","renderHierarchyLine","total","totalTurnover","totalWinLoss","totalBonus","totalDownline","downlineTurnOver","downlineWinLoss","downlineBonus","downlineCommission","ownTurnover","ownWinLoss","ownBonus","ownCommission","ManageTallyWinLossReport","gameType","setGametype","_GAMETYPE_OPTION","alias","totalOutstanding","totalSales","totalCancel","totalJpc","totalJpw","totalTax","ManageWinLossReport3","deleteDate","setDeleteDate","totalVTurnover","totalWinLoss_Comm","downlineVTurnOver","ownVTurnover","deleteCache","ManageBonusCommReport","allMembers","setAllMembers","vipCommission","selectedBonusMember","setSelectedBonusMember","bonusPlayerId","setBonusPlayerId","transferPlayer","targetPlayer","bonusMemberId","playebonusid","ServiceChargeReport","serviceChargePercentage","TransactionReport","WalletTransferReport","depositSum","referenceId","ReferralReportDetails","totalWithdraw","getReferralReport","ShareholderProcessSalesReport","salesData","setSalesData","textLeft","textRight","getSalesReport","Summary","setAllData","companySummaryData","setCompanySummaryData","companyCategoryTotal","setCompanyCategoryTotal","companyGrandTotal","setCompanyGrandTotal","processedData","setProcessedData","processedUserTotal","setProcessedUserTotal","processedCategoryTotal","setProcessedCategoryTotal","processedSubTotal","setProcessedSubTotal","processedGrandTotal","setProcessedGrandTotal","currentViewer","setCurrentViewer","setTemp","getShareholderDetail","summaryRows","summaryCategoryTotal","summaryGrandTotal","vsales","dataRows","userTotal","subTotal","grandTotal","summary","settlement","share","showset","getDownlineSales","uplineUser","downline","player","tempObj","companyToggle","usernameToggle","_category","j","categoryToggle","_product","k","settlementToggle","settlementCatToggle","ProcessGameRecordReport","processReportDatas","setProcessReportDatas","getProcessReport","isCreditChange","isJackpot","isProcessed","NonProcessGameRecordReport","getNonProcessReport","masterProductName","productGame","displayBetId","displayDateTime","transId","roundId","memberProduct","transferCode","ShareholderUnclaimReport","processedUplineTotal","setProcessedUplineTotal","getUnclaimDetails","performCalculations","ShareholderUnclaimReportList","claimedStatus","getReport","CommissionReportList","TotalSharePayoutReport","getPayoutReport","UsernameBetDetailReport","tableDataUrl","setTableDataUrl","TransactionSummaryReport","showDialog","setShowDialog","getSummaryTransaction","transfer","weeklyRescueBonus","creditRedemption","birthdayRewardData","setBirthdayRewardData","getBirthdayRewardSummary","GiftpaceReport","giftpaceData","setGiftpaceData","getGiftpaceReport","ActiveMemberReport","activeMemberApiUrl","setActiveMemberApiUrl","monthList","setMonthList","generateMonth","getActiveMember","totalTrans","totalBet","emptyList","year","handleEvent","reverse","UserIpPanel","groupedUserIp","setGroupedUserIp","country","_IPUserColumns","toggleNested","prepareStateForUserIpDetail","userIpDetail","setUserIpDetail","userType","_IPUserDetailColumns","ipMonitorRecords","setIpMonitorRecords","setSelectedOption","modal","setModal","nestedModal","setNestedModal","closeAll","setCloseAll","groupedState","setGroupedState","ipDetailState","setIpDetailState","searchText","setSearchText","ip","GetIpMonitorRecord","_IPColumns","rowState","dateObj","newState","assign","prepareStateForGroupedIP","onClosed","UserIpDetailPanel","Maintenance","ManageWalletHistory","walletUrl","setWalletUrl","ManageVideoTutorial","videoData","setVideoData","VideoTutorialDetail","videoId","setVideoId","ManageWalletRecon","depositReference","setDepositReference","ManageMarqueeContentLanguage","setIsOpen","platformOption","setPlatformOption","editModal","setEditModal","editPlatformId","setEditPlatformId","editLanguageId","setEditLanguageId","marqueeLanguageId","setMarqueeLanguageId","editContent","setEditContent","platformId","getLanguage","getPlatform","editSubmit","marqueeId","MarqueeTagContentDetail","marqueeTagContentId","setMarqueeTagContentId","platformMode","setPlatformMode","marRegister","marHandleSubmit","marErrors","platform","ManageDCItemList","itemData","setItemData","productType","stock","pointsNeeded","ManageDCRedemption","redemptionData","setRedemptionData","selectedItemName","setSelectedItemName","labelItemName","setLabelItemName","pointsNeededOnRedemption","redeemTime","received","processing","updateReceived","updateProcessing","updateCancel","itemName","ManageDCItemContentLanguage","dCItemContentData","setDCItemContentData","editDCItemId","setEditDCItemId","dCItemLanguageId","setDCItemLanguageId","dcItemId","dCItemId","getDCItem","DCItemDetail","itemId","setItemId","setItemName","setPointsNeeded","setStock","limitPerMember","setLimitPerMember","setProductType","voucherValue","setVoucherValue","rollOver","setRollOver","_PRODUCT_TYPE","ManageDCPoints","dailyCheckInData","setDailyCheckInData","cloneId","monthOrder","January","February","March","April","May","June","July","August","September","October","November","December","DCPointDetail","dcPoints","setDCPoints","valueInCurrency","setValueInCurrency","ManageMemberDCPoints","memberDCPtsData","setMemberDCPtsData","pointQuota","MemberDCPointsDetail","parsedTime","pointsAmount","totalPoints","ManageDailyCheckIn","ManageConfigurationDailyCheckIn","DCDId","days","isBigPrize","labelList","pointsList","isBigPrizeList","handleOnSubmit","dailyCheckInId","setDailyCheckInId","isClone","setIsClone","errorTitle","setErrorTitle","toLocaleDateString","ManageMemberGamePoints","getMemberGamePoints","totalTurnoverList","gamePointsList","gamePoints","PointsAdjustment","selectedMemberPoints","setSelectedMemberPoint","selectedMemberPointsQuota","setSelectedMemberPointsQuota","PointsAdjustmentReport","prePoints","postPoints","prePointQuota","postPointQuota","MemberPointsReport","ManageDepositPromotionCategory","setDepositPromotionId","promoWithCategory","setPromoWithCategory","promoWithoutCategory","setPromoWithoutCategory","depositPromotionCategoryId","getDepositPromotionProductWithoutCategory","getDepositPromotionProductWithCategory","deleteDepositPromotionSetting","depositPromotion","DepositPromotionList","CreditRedemptionReport","creditData","setCreditData","getCreditReport","preMemberPrimaryBalance","postMemberPrimaryBalance","productRollover","ReferralBonusReport","referrer","depositMember","memberSequence","percent","bonusAmount","ManageBonusDeposit","bonusDepositData","setBonusDepositData","BonusDepositDetailLanguage","bonusImage","setBonusImage","bonusImageFile","setBonusImageFile","popupImage","setPopupImage","popupImageFile","setPopupImageFile","bonusDepositId","setBonusDepositId","editBonusImage","setEditBonusImage","setEditBonusImageFile","editPopupImage","setEditPopupImage","setEditPopupImageFile","bonusName","setBonusName","editBonusName","setEditBonusName","strle","getBonusDepositContent","bonusImageDrop","popupImageDrop","editBonusImageDrop","editPopupImageDrop","BonusDepositDetail","rollover","setRollover","maxLimitPerMember","setMaxLimitPerMember","dayLimit","setDayLimit","setIsNewBonusImage","isNewPopupImage","setIsNewPopupImage","enteredBonusDepositData","setEnteredBonusDepositData","enteredBonusDepositE","setEnteredBonusDepositE","stateBonusDepositId","PlayerReconciliation","ManageChatSphere","chatSphereList","setChatSphereList","ManageChatSphereType","chatSphereTypeList","setChatSphereTypeList","chatSphereTypeId","setChatSphereTypeId","setChannel","channelList","setChannelList","stateId","chatSphereChannelId","ManageChatSphereContentLanguage","chatSphereContentData","setChatSphereContentData","setChatSpereContentId","chatSphereLanguageId","setChatSphereLanguageId","getChatSphereLanguage","selectedChatSphereType","setSelectedChatSphereType","chatSpherePhoneNumberList","setChatSpherePhoneNumberList","selectedPhoneNumber","setSelectedPhoneNumber","chatSphereTypeActionId","chatSpherePhoneNumberId","phoneList","ChatSphereContentLanguage","ManageChatSpherePhoneNumber","chatSpherePhoneId","setChatSpherePhoneId","setPhoneNumber","bankAccKeyword","setBankAccKeyword","getMemberBankAccount","GetRelatedBankAccount","formRegister","setAccountHolderName","setAccountNumber","setBankList","setStateId","setMemberBankDetail","CustomProductRanking","gameListString","setGameListString","placeholderEG","trimEnd","updateProductRank","line","CustomGamesRanking","setMasterProductId","productTitle","SetProductTitle","updateGameRank","mpId","calBy","setCalBy","release","setRelease","generated","selfCommAmount","downlineCommAmount","selfVTurnover","downlineVTurnover","totalVT","abs","calculateby","updateSearchParams","calculateBy","calcBy","allSuccessful","finalMessage","selectedMemberId","selfComm","dlComm","gap","ChatSystemTemplate","defaultContent","setDefaultContent","setLanguage","templateCode","templang","ManageChatSystemTemplateLanguage","CustomChatTemplate","ManageCustomChatTemplate","Boolean","loginRoute","authRequired","component","routes","Dashboard","viewOwnProfile","BankDetail","_BONUS_TYPE_SETTING_PERMISSION","ManageBankAccount","RoleDetail","SubAccountDetail","_BONUS_TRANSACTION_PERMISSION","_INSTANT_TRANSACTION_PERMISSION","_SEO_SETTING_PERMISSION","ManageScript","_BANK_PACKAGE_PERMISSION","_BET_SETTING_PERMISSION","_CHANNEL_SUMMARY_REPORT_PERMISSION","ManageWalletTransfer","ManageAccountProductGame","AccountProductGameDetail","_CONTACT_US_PERMISSION","CommunicationChannelDetail","ShareholdersList","ShareholdersViewAccount","ShareholdersProductList","ShareholdersViewProduct","_SHAREHOLDER_ADD_HUAT_PERMISSION","ShareholdersHuatTicket","ShareholdersViewPayout","ShareholdersViewHuatTicket","ShareholderDownlineReport","_PROCESS_GAME_RECORD_REPORT_PERMISSION","_NON_PROCESS_568_GAME_RECORD_REPORT_PERMISSION","_SHAREHOLDER_UNCLAIMED_SALES_PERMISSION","_SKIN_SETTING_PERMISSION","_VIDEO_TUTORIAL_PERMISSION","_TNG_SETTING_PERMISSION","_WITHDRAWAL_SETTINGS_PERMISSION","_REWARDS_PERMISSION","_RETRIEVE_GAME_DATA_PERMISSION","_MEMBER_WALLET_STATEMENT_RECON_PERMISSION","_DEPOSIT_REFERENCE_PERMISSION","ManageDepositPromotion","BirthdayRewardReport","ManageMember2","ChatSphereTypeDetail","ChatSpherePhoneNumberDetail","AdjustmentBonusWallet","ManageMemberBankAccount","MemberBankAccountDetail","GameList","ClaimedPromotionDetail","ManageMLMCommission","ManageChatSystemTemplate","ReferralReport","initRoutes","addResources","routeArray","pageTitle","i18next","on","listen","finalRoutes","filteredRoutes","route","pageContentFullWidth","pageContentClass","pageContentInverseMode","routeData","PrivateRoute","FloatSubMenuList","handleFloatSubMenuClick","FloatSubMenu","pageFloatSubMenu","pageFloatSubMenuActive","pageFloatSubMenuTop","pageFloatSubMenuLeft","pageFloatSubMenuBottom","pageFloatSubMenuLineTop","pageFloatSubMenuLineBottom","pageFloatSubMenuArrowTop","pageFloatSubMenuArrowBottom","handleFloatSubMenuOnMouseOver","handleFloatSubMenuOnMouseOut","left","App","resetTimeout","clearTimeout","startTimeout","setTimeoutAlert","localStorage","_1_HR_TIMEOUT_TIME","destroyTimeout","events","floatSubMenuRemove","floatSubMenuCalculate","pauseAudio","toast","messageContent","Title","Msg","pageSidebarToggled","handleSetPageSidebarMinified","handleSetPageSidebarWide","pageSidebarWide","handleSetPageSidebarLight","pageSidebarLight","handleSetPageSidebarTransparent","handleSetPageSidebarSearch","pageRightSidebarCollapsed","pageMobileRightSidebarToggled","handleSetPageRightSidebar","pageRightSidebar","offsetWidth","offsetLeft","currentTarget","offsetParent","getBoundingClientRect","arrowTop","arrowBottom","lineTop","lineBottom","targetTop","windowHeight","innerHeight","querySelector","offsetHeight","aBottom","pageFloatSubMenuOffset","targetHeight","handleSetPageContent","pageContent","handleSetPageContentClass","handleSetPageContentFullHeight","pageContentFullHeight","handleSetPageContentInverseMode","pageHeader","handleSetPageHeaderMegaMenu","handleSetPageHeaderLanguageBar","handleSetPageFooter","pageFooter","handleSetPageTopMenu","pageMobileTopMenu","handleSetPageTwoSidebar","handleSetPageBoxedLayout","handleSetBodyWhiteBg","timeoutAlert","pageheaderMegaMenu","hasScroll","pageRightSidebarToggled","lastDateTime","diff","updateLoginUser","resetLogin","timeout","spinner","disposeMessage","ReactDOM"],"mappings":"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","file":"static/js/main.d45da523.chunk.js","sourcesContent":["module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUBAMAAAB/pwA+AAAAMFBMVEUAAAB9fX19fX19fX18fHx8fHx+fn59fX16enp8fHx9fX16enp4eHh3d3d9fX19fX1tXtBLAAAAD3RSTlMA36+fgF/vYGDPj1AQIL+0MRL2AAAAkUlEQVQI12NgYOBpkv+pzgAG2/4DgTiIxfUfDByATH8I8xcDAzuQkr0GJDYwMAJJBSYgkcNQDyS/gBR9ZdD/DwWfGOYDBRn4gMyPDCCigBkkzAAiDCBMeRjzJ4M+mAnW1g9mgg07BtQWwAFUJsDADeSDHRLAwLAeYsMXoMtYIMwFIAc3gljZEG80zf+oeoCBAQD6u4RdPf8nFgAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"static/media/notification.755bde38.mp3\";","module.exports = __webpack_public_path__ + \"static/media/dnd-active.d3b2b1e2.svg\";","module.exports = __webpack_public_path__ + \"static/media/dnd-inactive.42980f10.svg\";","module.exports = __webpack_public_path__ + \"static/media/maintenance.9eb354c6.svg\";","var map = {\n\t\"./cn/common.json\": 732,\n\t\"./en/common.json\": 233,\n\t\"./kh/common.json\": 234\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 731;","import React from 'react';\n\nexport const PageSettings = React.createContext();","/// \n/// Author : -\n/// API related key or field when making ajax or api call\n/// \nexport class ApiKey {\n static _API_SUCCESS_KEY = \"success\";\n static _API_MESSAGE_KEY = \"message\";\n static _API_DATA_KEY = \"data\";\n\n static _API_CONTENT_TYPE = 'Content-Type';\n static _API_ACCEPT = \"Accept\";\n static _API_APPLICATION_JSON = \"application/json\";\n static _API_XML_HTTP_REQUEST_KEY = \"XMLHttpRequest\";\n static _API_FORM_URLENCODED = \"application/x-www-form-urlencoded\";\n static _API_POST = \"POST\";\n static _API_GET = \"GET\";\n}\n\n/// \n/// Author : -\n/// Url to communicate to controller\n/// \nexport class ApiUrl {\n static _API_LOGIN = \"/Account/Login\";\n static _API_CREATE_OR_UPDATE_ACCOUNT = \"/Account/CreateOrUpdateAccount\";\n static _API_LOGOUT = \"/Account/Logout\";\n static _API_GET_SUPER_COMPANY = \"/Account/GetSuperCompany\";\n static _API_GET_ALL_COMPANY = \"/Account/GetAllCompany\";\n static _API_GET_ACCOUNT = \"/Account/GetAccountById\";\n static _API_IS_LOGGED_IN = \"/Account/IsLoggedIn\";\n static _API_UPDATE_PASSWORD = \"/Account/UpdatePassword\";\n static _API_UPDATE_PIN_NUMBER = \"/Account/UpdatePinNumber\";\n static _API_GET_SYSTEM_DATETIME = \"/Account/GetSystemDateTime\";\n\n static _API_GET_USER_BANK = \"/Bank/GetUserBank\";\n static _API_GET_BANK_DETAIL = \"/Bank/GetBankDetail\";\n static _API_CREATE_OR_UPDATE_BANK_DETAIL = \"/Bank/CreateOrUpdateBank\";\n static _API_GET_USER_BANK_ACCOUNT = \"/Bank/GetUserBankAccount\";\n static _API_GET_BANK_ACCOUNT_DETAIL = \"/Bank/GetBankAccountDetail\";\n static _API_CREATE_OR_UPDATE_BANK_ACCOUNT_DETAIL = \"/Bank/CreateOrUpdateBankAccount\";\n static _API_GET_BANK_ACCOUNT_BY_BANK_ID = \"/Bank/GetBankAccountByBankId\";\n\n static _API_GET_ROLE_BY_ID = \"/Account/GetRoleById\";\n static _API_GET_USERS_ROLE = \"/Account/GetAllRoles\";\n static _API_CREATE_OR_UPDATE_ROLE = \"/Account/CreateOrUpdateRole\";\n static _API_GET_ROLE_ACCESS_DATA = \"/Account/GetRoleAccessData\";\n\n static _API_GET_USER_SUB_ACCOUNT = \"/Account/GetUserSubAccount\";\n static _API_CREATE_OR_UPDATE_SUB_ACCOUNT = \"/Account/CreateOrUpdateSubAccount\";\n static _API_GET_ROLLOVER_RECORD = \"/Transaction/GetRolloverRecord\";\n static _API_RESET_ROLLOVER_RECORD = \"/Transaction/ResetRollOverRecord\";\n static _API_GET_BONUS_ROLLOVER_RECORD = \"/Transaction/GetBonusRolloverRecord\";\n static _API_RESET_BONUS_ROLLOVER_RECORD = \"/Transaction/ResetBonusRollOverRecord\";\n\n static _API_GET_LATEST_MEMBER_DATA = \"/Transaction/GetLatestMemberData\";\n static _API_GET_VIP_CRITERIA = \"/Configuration/GetVipCriteria\";\n static _API_CREATE_OR_UPDATE_COMPANY_SETTING = \"/Configuration/CreateOrUpdateCompanySetting\";\n static _API_CREATE_OR_UPDATE_COMPANY_VIP_PLAYER_REBATE = \"/Configuration/CreateOrUpdateCompanyVipPlayerRebate\";\n static _API_GET_TOP_MEMBER_TRANSACTION_BY_STATUS = \"/Transaction/GetTopMemberTransactionByStatus\";\n\n\n static _API_GET_USER_VIP = \"/Configuration/GetUserVip\";\n static _API_GET_USER_VIP_BY_ID = \"/Configuration/GetUserVipById\";\n static _API_CREATE_OR_UPDATE_VIP = \"/Configuration/CreateOrUpdateVip\";\n\n static _API_GET_SYSTEM_SETTINGS = \"/Configuration/GetSystemSettings\";\n static _API_UPDATE_SYSTEM_SETTING = \"/Configuration/UpdateSystemSetting\";\n\n static _API_GET_USER_REMARK = \"/Configuration/GetUserRemark\";\n static _API_GET_USER_REMARK_BY_ID = \"/Configuration/GetUserRemarkById\";\n static _API_CREATE_OR_UPDATE_REMARK = \"/Configuration/CreateOrUpdateRemark\";\n static _API_REMARK_TYPE = \"/Configuration/GetRemarkType\";\n static _API_REMARK_BY_TYPE = \"/Configuration/GetRemarkByType\";\n\n\n static _API_GET_USER_REJECT_CODE = \"/Configuration/GetUserRejectCode\";\n static _API_GET_USER_REJECT_CODE_BY_ID = \"/Configuration/GetUserRejectCodeById\";\n static _API_CREATE_OR_UPDATE_REJECT_CODE = \"/Configuration/CreateOrUpdateRejectCode\";\n\n static _API_GET_USER_TAG = \"/Configuration/GetUserTag\";\n static _API_GET_USER_TAG_BY_ID = \"/Configuration/GetUserTagById\";\n static _API_CREATE_OR_UPDATE_TAG = \"/Configuration/CreateOrUpdateTag\";\n\n static _API_GET_PRODUCT_CATEGORY = \"/Product/GetProductCategory\";\n static _API_GET_PRODUCT_CATEGORY_BY_ID = \"/Product/GetProductCategoryById\";\n static _API_CREATE_OR_UPDATE_PRODUCT_CATEGORY = \"/Product/CreateOrUpdateProductCategory\";\n\n static _API_GET_MASTER_PRODUCT = \"/Product/GetMasterProduct\";\n static _API_GET_MASTER_PRODUCT_BY_ID = \"/Product/GetMasterProductById\";\n static _API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA = \"/Product/GetAssignedMasterProduct\";\n\n static _API_GET_NON_SEAMLESS_MASTER_PRODUCT_ASSIGNMENT_DATA = \"/Product/GetAssignedNonSeamlessMasterProduct\";\n\n static _API_CREATE_OR_UPDATE_MASTER_PRODUCT = \"/Product/CreateOrUpdateMasterProduct\";\n static _API_UPDATE_USER_ASSIGNMENT = \"/Product/UpdateProductAssignment\";\n static _API_UPDATE_USER_PRODUCT_MAINTENANCE = \"/Product/UpdateProductUnderMaintenance\";\n static _API_UPDATE_USER_PRODUCT_ACTIVENESS = \"/Product/UpdateUserProductActiveness\";\n static _API_UPDATE_MEMBER_PRODUCT_ACTIVENESS = \"/Product/UpdateMemberProductActiveness\";\n static _API_GET_ASSIGNED_MEMBER_PRODUCT = \"/Product/GetAssignedMemberProduct\";\n static _API_GET_ASSIGNED_MEMBER_PRODUCT_SHOW_LIST = \"/Product/GetAssignedMemberProductShowList\";\n static _API_UPDATE_ALL_MEMBER_PRODUCT_ACTIVENESS = \"/Product/UpdateAllMemberProductActiveness\";\n static _API_UPDATE_MEMBER_PRODUCT_RATE = \"/Product/UpdateMemberProductRate\";\n static _API_GET_GROUP_PRODUCT_WITH_MAX_RATES = \"/Product/GetGroupedProductWithMaxRates\"\n\n static _API_UPDATE_USER_ASSIGNMENT_DETAIL = \"/Product/UpdateProductAssignmentDetail\";\n static _API_GET_USER_ASSIGNMENT_DETAIL = \"/Product/GetProductAssignmentDetail\";\n\n static _API_GET_PRODUCT_SETTING = \"/Product/GetUserProductSetting\";\n static _API_GET_PRODUCT_SETTING_BY_ID = \"/Product/GetUserProductSettingById\";\n static _API_CREATE_OR_UPDATE_PRODUCT_SETTING = \"/Product/CreateOrUpdateInstantPaySetting\";\n\n static _API_GET_ACCOUNT_PRODUCT_META = \"/Product/GetAccountProductMeta\";\n static _API_UPDATE_ACCOUNT_PRODUCT_META = \"/Product/UpdateAccountProductMeta\";\n\n static _API_GET_PRODUCT_GAME_SETTING = \"/Product/GetProductGameSetting\";\n static _API_GET_PRODUCT_GAME_SETTING_BY_ID = \"/Product/GetProductGameSettingById\";\n static _API_CREATE_OR_UPDATE_GAME_PRODUCT_SETTING = \"/Product/CreateOrUpdateProductGameSetting\";\n static _API_GET_PRODUCT_GAME_BY_ACCOUNT_PRODUCT = \"/Product/GetProductGameByAccountProduct\";\n\n static _API_GET_LANGUAGE = \"/Configuration/GetLanguage\";\n static _API_GET_LANGUAGE_BY_ID = \"/Configuration/GetLanguageById\";\n static _API_CREATE_OR_UPDATE_LANGUAGE = \"/Configuration/CreateOrUpdateLanguage\";\n\n static _API_GET_BANKING_CHANNEL = \"/Configuration/GetBankingChannel\";\n static _API_GET_BANKING_CHANNEL_BY_ID = \"/Configuration/GetBankingChannelById\";\n static _API_CREATE_OR_UPDATE_BANKING_CHANNEL = \"/Configuration/CreateOrUpdateBankingChannel\";\n\n static _API_GET_BONUS_TYPE = \"/Configuration/GetBonusType\";\n static _API_GET_BONUS_TYPE_BY_ID = \"/Configuration/GetBonusTypeById\";\n static _API_CREATE_OR_UPDATE_BONUS_TYPE = \"/Configuration/CreateOrUpdateBonusType\";\n\n static _API_GET_USER_BONUS = \"/Configuration/GetUserBonus\";\n static _API_GET_USER_BONUS_BY_ID = \"/Configuration/GetUserBonusById\";\n static _API_CREATE_OR_UPDATE_BONUS = \"/Configuration/CreateOrUpdateBonus\";\n static _API_GET_OPERATION_LOG = \"/Configuration/GetOperationLog\";\n\n static _API_DELETE_PRODUCT_GAME = \"/Product/DeleteProductGame\";\n static _API_GET_PRODUCT_GAME = \"/Product/GetProductGame\";\n static _API_GET_PRODUCT_GAME_BY_ID = \"/Product/GetProductGameById\";\n static _API_CREATE_OR_UPDATE_GAME_PRODUCT = \"/Product/CreateOrUpdateProductGame\";\n\n static _API_GET_USER_ANNOUNCEMENT = \"/Configuration/GetUserAnnouncement\";\n static _API_GET_USER_ANNOUNCEMENT_BY_ID = \"/Configuration/GetUserAnnouncementById\";\n static _API_CREATE_OR_UPDATE_ANNOUNCEMENT = \"/Configuration/CreateOrUpdateAnnouncement\";\n\n static _API_GET_USER_BANNER = \"/Configuration/GetUserBanner\";\n static _API_GET_USER_BANNER_BY_ID = \"/Configuration/GetUserBannerById\";\n static _API_CREATE_OR_UPDATE_BANNER = \"/Configuration/CreateOrUpdateBanner\";\n\n static _API_GET_USER_REWARD_BANNER = \"/Configuration/GetUserRewardBanner\";\n static _API_GET_USER_REWARD_BANNER_BY_ID = \"/Configuration/GetUserRewardBannerById\";\n static _API_CREATE_OR_UPDATE_REWARD_BANNER = \"/Configuration/CreateOrUpdateRewardBanner\";\n\n static _API_GET_USER_PROMOTION = \"/Configuration/GetUserPromotion\";\n static _API_GET_USER_PROMOTION_BY_ID = \"/Configuration/GetUserPromotionById\";\n static _API_CREATE_OR_UPDATE_PROMOTION = \"/Configuration/CreateOrUpdatePromotion\";\n\n static _API_GET_USER_SCRIPT = \"/Configuration/GetUserScript\";\n static _API_GET_USER_SCRIPT_BY_ID = \"/Configuration/GetUserScriptById\";\n static _API_CREATE_OR_UPDATE_SCRIPT = \"/Configuration/CreateOrUpdateScript\";\n\n static _API_GET_USER_CONTENT = \"/Configuration/GetUserContent\";\n static _API_GET_USER_CONTENT_BY_ID = \"/Configuration/GetUserContentById\";\n static _API_CREATE_OR_UPDATE_CONTENT = \"/Configuration/CreateOrUpdateContent\";\n\n static _API_GET_USER_EMAIL = \"/Configuration/GetUserEmail\";\n static _API_GET_USER_EMAIL_BY_ID = \"/Configuration/GetUserEmailById\";\n static _API_CREATE_OR_UPDATE_EMAIL = \"/Configuration/CreateOrUpdateEmail\";\n\n static _API_GET_VIP_BENEFIT = \"/Configuration/GetVipBenefit\";\n static _API_GET_VIP_BENEFIT_BY_ID = \"/Configuration/GetVipBenefitById\";\n static _API_CREATE_OR_UPDATE_VIP_BENEFIT = \"/Configuration/CreateOrUpdateVipBenefit\";\n\n static _API_GET_VIP_BENEFIT_CONTENT = \"/Configuration/GetVipBenefitContent\";\n static _API_GET_VIP_BENEFIT_CONTENT_BY_ID = \"/Configuration/GetVipBenefitContentById\";\n static _API_CREATE_OR_UPDATE_VIP_BENEFIT_CONTENT = \"/Configuration/CreateOrUpdateVipBenefitContent\";\n static _API_GET_VIP_CRITERIA_BY_VIP_ID = \"/Configuration/GetVipCriteriaByVipId\";\n\n static _API_CREATE_OR_UPDATE_VIP_CRITERIA = \"/Configuration/CreateOrUpdateVipCriteria\";\n\n static _API_GET_USER_INSTANT_PAY_SETTING = \"/Configuration/GetUserInstantPaySetting\";\n static _API_GET_USER_INSTANT_PAY_SETTING_BY_ID = \"/Configuration/GetUserInstantPaySettingById\";\n static _API_CREATE_OR_UPDATE_INSTANT_PAY_SETTING = \"/Configuration/CreateOrUpdateInstantPaySetting\";\n static _API_UPDATE_INSTANT_PAY_SETTING_STATUS = \"/Configuration/UpdateInstantPaySettingStatus\";\n static _API_GET_INSTANT_PAYMENT_GATEWAY = \"/Configuration/GetInstantPayGateway\";\n static _API_GET_INSTANT_PAY_BANK_SETTING = \"/Configuration/GetInstantPayBankSetting\";\n static _API_CREATE_OR_UPDATE_INSTANT_PAY_BANK_SETTING = \"/Configuration/CreateOrUpdateInstantPayBankSetting\";\n static _API_DELETE_INSTANT_PAYBANK_SETTING = \"/Configuration/DeleteInstantPayBankSetting\";\n\n static _API_GET_SKIN_SETTINGS = \"/Configuration/GetSkinSettings\";\n static _API_GET_SKIN_SETTINGS_BY_ID = \"/Configuration/GetSkinSettingsById\";\n static _API_CREATE_OR_UPDATE_SKIN_SETTINGS = \"/Configuration/CreateOrUpdateSkinSettings\";\n\n static _API_GET_VIDEO = \"/Configuration/GetVideo\";\n static _API_GET_VIDEO_BY_ID = \"/Configuration/GetVideoById\";\n static _API_CREATE_OR_UPDATE_VIDEO = \"/Configuration/CreateOrUpdateVideo\";\n\n static _API_GET_USER_SYSTEM_SETTINGS = \"/Configuration/GetUserSystemSettings\";\n static _API_CREATE_OR_UPDATE_SYSTEM_SETTINGS = \"/Configuration/CreateOrUpdateSystemSettings\";\n\n static _API_GET_USER_MEMBER = \"`/GetUserMember\";\n static _API_GET_USER_MEMBER_LIST = \"/Account/GetUserMemberList\";\n static _API_GET_DOWNLINE_BY_REFERRER = \"/Account/GetDownlineByReferrer\";\n\n static _API_GET_DOWNLINE_BY_REFERRER_USING_USERNAME = \"/Account/GetDownlineByReferrerUsingUsername\";\n\n static _API_GET_TOTAL_REGISTERED_MEMBER_UNDER_COMPANY = \"/Account/GetTotalRegisteredMemberUnderCompany\";\n static _API_GET_TOTAL_REGISTERED_MEMBER_UNDER_MAIN_ACCOUNT = \"/Account/GetTotalRegisteredMemberUnderMainAccount\";\n static _API_GET_NEW_MEMBERS_LIST_UNDER_COMPANY = \"/Account/GetNewMembersListUnderCompany\";\n static _API_GET_NEW_MEMBERS_LIST_UNDER_MAIN_ACCOUNT = \"/Account/GetNewMembersListUnderMainAccount\";\n\n\n static _API_GET_MEMBER_PRODUCT_USERNAME_LIST = \"/Account/GetMemberProductUsernameList\";\n static _API_GET_MEMBER_FULLNAME_LIST = \"/Account/GetMemberFullnameList\";\n\n static _API_GET_USER_MEMBER_BY_ID = \"/Account/GetUserMemberById\";\n static _API_GET_USER_MEMBER_BY_USERNAME = \"/Account/GetUserMemberByUsername\";\n static _API_CREATE_OR_UPDATE_MEMBER = \"/Account/CreateOrUpdateMember\";\n static _API_GET_MEMBER_HIERACHY = \"/Account/GetMemberHierachy\";\n static _API_GET_BLOCKED_IP_LIST = \"/Account/GetBlockedIpList\";\n static _API_DELETE_BLOCKED_IP = \"/Account/DeleteBlockedIp\";\n\n static _API_DELETE_REFERRAL_CODE = \"/Account/DeleteReferralCode\";\n\n static _API_GET_USER_SMS_SETTING = \"/Configuration/GetUserSmsSetting\";\n static _API_GET_USER_SMS_SETTING_BY_ID = \"/Configuration/GetUserSmsSettingById\";\n static _API_CREATE_OR_UPDATE_USER_SMS_SETTING = \"/Configuration/CreateOrUpdateSmsSetting\";\n\n static _API_GET_USER_SMS_CONTENT = \"/Configuration/GetUserSmsContent\";\n static _API_GET_USER_SMS_CONTENT_BY_ID = \"/Configuration/GetUserSmsContentById\";\n static _API_CREATE_OR_UPDATE_SMS_CONTENT = \"/Configuration/CreateOrUpdateSmsContent\";\n\n static _API_GET_USER_WEB_CONTENT_SETTING = \"/Configuration/GetUserWebContentSetting\";\n static _API_GET_USER_WEB_CONTENT_SETTING_BY_ID = \"/Configuration/GetUserWebContentSettingById\";\n static _API_CREATE_OR_UPDATE_USER_WEB_CONTENTS = \"/Configuration/CreateOrUpdateWebContents\";\n\n static _API_GET_USER_WEB_CONTENT = \"/Configuration/GetUserWebContent\";\n static _URL_CREATE_OR_UPDATE_WEB_CONTENT = \"/configure/CreateOrUpdateWebContent\";\n static _API_GET_USER_WEB_CONTENT_BY_ID = \"/Configuration/GetUserManageWebContentById\";\n static _API_GET_MARQUEE_TAG_CONTENT = \"/Configuration/GetMarqueeTagContent\";\n static _API_UPDATE_MARQUEE_TAG_CONTENT = \"/Configuration/UpdateMarqueeTagContent\";\n static _API_GET_MARQUEE_TAG_CONTENT_WITH_ID = \"/Configuration/GetMarqueeTagContentWithId\";\n static _API_GET_MARQUEE_LANGUAGE = \"/Configuration/GetMarqueeLanguage\";\n static _API_CREATE_MARQUEE_CONTENT_LANGUAGE = \"/Configuration/CreateMarqueeContentLanguage\";\n static _API_UPDATE_MARQUEE_LANGUAGE_BY_ID = \"/Configuration/UpdateMarqueeLanguageById\";\n\n static _API_CREATE_TRANSACTION = \"/Transaction/CreateTransaction\";\n static _API_GET_ALL_USER_TRANSACTION = \"/Transaction/GetAllUserTransactions\";\n static _API_GET_TRANSACTION_BY_MEMBER_ID = \"/Transaction/GetTransactionByMemberId\";\n static _API_UPDATE_TRANSACTION_STATUS = \"/Transaction/UpdateTransactionStatus\";\n static _API_GET_TOP_MEMBER_OF_TRANSACTION_BY_STATUS = \"/Home/GetTopMemberOfTransactionByStatus\";\n static _API_GET_TOTAL_TRANSACTION_AMOUNT_COUNT_BY_STATUS_TYPE = \"/Home/GetTotalTransactionAmountAndCountByStatusAndType\";\n static _API_GET_ALL_TOTAL_DEPOSIT_TRANSACTION_BY_TODAY = \"/Home/GetAllTotalDepositTransactionByToday\";\n static _API_GET_ALL_TOTAL_DEPOSIT_TRANSACTION_BY_TODAY_NEW = \"/Home/GetAllTotalDepositTransactionByTodayNew\";\n static _API_GET_TRANSACTION_BY_ID = \"/Transaction/GetTransactionById\";\n static _API_GET_PREVIOUS_TRANSACTION = \"/Transaction/GetPreviousTransaction\";\n static _API_GET_SYSTEM_BALANCE = \"/Transaction/GetSystemBalance\";\n static _API_PROCESS_LOCK_TRANSACTION = \"/Transaction/ProcessLockTransaction\";\n static _API_PROCESS_BONUS_ADJUSTMENT = \"/Transaction/ProcessBonusAdjustment\";\n static _API_PROCESS_COMMISSION_ADJUSTMENT = \"/Transaction/ProcessCommissionAdjustment\";\n\n static _API_GET_DAILY_SUMMARY_REPORT = \"/Report/GetDailySummaryReport\";\n static _API_GET_MEMBER_REPORT = \"/Report/GetMemberReport\";\n static _API_GET_BANK_SUMMARY_REPORT = \"/Report/GetBankSummaryReport\";\n static _API_GET_BANK_SUMMARY_STATEMENT = \"/Report/GetBankSummaryStatement\";\n static _API_GET_BET_DETAIL_REPORT = \"/Report/GetBetDetailReport\";\n static _API_GET_MEMBER_BET_DETAIL_REPORT = \"/Report/GetMemberBetDetailReport\";\n static _API_GET_PROFIT_LOSS_REPORT = \"/Report/GetProfitLossReport\";\n static _API_GET_WINLOSS_REPORT = \"/Report/GetWinlossReport\";\n static _API_GET_TALLY_WINLOSS_REPORT = \"/Report/GetTallyWinlossReport\";\n static _API_GET_WINLOSS_REPORT2 = \"/Report/GetWinlossReport2\";\n static _API_GET_WINLOSS_REPORT3 = \"/Report/GetWinlossReport3\";\n static _API_GET_BONUS_COMMISSION_REPORT = \"/Report/GetBonusCommissionReport\";\n static _API_MANAGE_TRANSFER_WALLET = \"/Report/GetWalletTransfer\";\n static _API_COMMISSION_TRACKING = \"/Report/GetCommissionTracking\";\n static _API_GET_ADJUSTMENT_REPORT = \"/Report/GetAdjustmentReport\";\n\n static _API_GET_SHAREHOLDER_PROCESS_SALES_REPORT = \"/Report/GetShareholderProcessSalesReport\";\n static _API_GET_MEMBER_SHAREHOLDER_DETAIL = \"/Report/GetMemberShareholderDetail\";\n\n static _API_GET_PROCESS_GAME_RECORD_REPORT = \"/Report/GetProcessGameRecordReport\";\n static _API_GET_568_NON_PROCESS_GAME_RECORD_REPORT = \"/Report/Get568NonProcessGameRecordReport\";\n\n static _API_GET_UNCLAIMED_SALES_REPORT = \"/Report/GetUnclaimedSalesReport\";\n static _API_GET_COMISSION_REPORT = \"/Report/GetComissionReport\";\n\n static _API_GET_TOTAL_SHARE_PAYOUT_REPORT = \"/Report/GetTotalSharePayoutReport\";\n\n static _API_GET_TOP_WINNERS_AND_LOSERS = \"/Report/GetTopWinnersAndLosers\";\n static _API_GET_TOP_WINNERS_LOSERS = \"/Report/GetTopWinnersLosers\";\n\n static _API_GET_TRANSFER_LOG = \"/Report/GetTransferLog\";\n\n static _API_GET_IP_MONITOR_RECORD = \"/Account/GetIpMonitorRecord\";\n static _API_GET_USER_GROUPED_IP = \"/Account/GetUserGroupedIpDetail\";\n static _API_GET_USER_IP_DETAIL = \"/Account/GetUserIpDetail\";\n\n static _API_GET_USER_PRODUCT_ACCOUNT = \"/Account/GetUserProductAccount\";\n static _API_GET_PRODUCT_ACCOUNT_LOG = \"/Account/GetProductAccountLog\";\n static _API_GET_PRODUCT_ACCOUNT_BALANCE = \"/Account/GetProductAccountBalance\";\n\n static _API_CREATE_BANK_TRANSACTION = \"/Transaction/CreateBankTransaction\";\n\n static _API_GET_API_KEY_DATA = \"/Configuration/GetApiKeyData\";\n\n static _API_EXECUTE_RECURRING_JOB = \"/Configuration/ExecuteRecurringJob\";\n static _API_EXECUTE_MANUAL_JOB = \"/Configuration/ExecuteManualJob\";\n\n static _API_SYNC_PRODUCT_DATA = \"/Product/SyncProductAgainstUser\";\n static _API_SYNC_MEMBER_TO_OWNER_PRODUCT_DATA = \"/Product/SyncMemberToOwnerProduct\";\n static _API_GET_NON_SEAMLESS_PRODUCT_BALANCE = \"/Product/GetNonSeamlessProductBalance\";\n static _API_CREATE_WALLET_TRANSFER_TRANSACTION = \"/Transaction/CreateWalletTransferTransaction\";\n static _API_GET_PRODUCT_TRANSACTION = \"/Transaction/GetProductTransactionRecord\";\n static _API_TRANSFER_ALL_TO_MAIN = \"/Transaction/TransferAllBalanceToMain\";\n static _API_GET_FIRST_GROUPED_PRODUCT = \"/Product/GetFirstGroupedProduct\";\n\n static _API_GET_PREFERENCE_LANGUAGE = \"/Preference/GetLanguage\";\n static _API_CREATE_OR_UPDATE_CONFIG_LANGUAGE = \"/Configuration/CreateOrUpdateConfigLanguage\";\n static _API_GET_CONFIG_LANGUAGE_BY_TYPE_ID = \"/Configuration/GetConfigLanguageByTypeId\";\n static _API_GET_CONFIG_LANGUAGE_BY_ID = \"/Configuration/GetConfigLanguageById\";\n static _API_GET_COMPANY_CONTACT_US = \"/Configuration/GetCompanyContactUs\";\n static _API_GET_COMPANY_CONTACT_US_BY_ID = \"/Configuration/GetCompanyContactUsById\";\n static _API_CREATE_OR_UPDATE_COMPANY_CONTACT_US = \"/Configuration/CreateOrUpdateCompanyContactUs\";\n\n static _API_GET_MEMBER_UPLINE_PRODUCT_RATES = \"/Account/GetUplineProductRates\";\n static _API_GENERATE_REFERRAL_CODE = \"/Account/GenerateReferralCode\";\n static _API_GET_MEMBER_REFERRAL_CODES = \"/Account/GetMemberReferralCodes\";\n static _API_PERFORM_GAME_CALCULATION = \"/Configuration/PerformGameCalculation\";\n static _API_PERFORM_PRODUCT_GAME_CALCULATION = \"/Configuration/PerformProductGameCalculation\";\n static _API_ACTIVATE_SYNC = \"/Configuration/SyncGameRecords\";\n static _API_TRIGGER_RANGE_SYNC = \"/Configuration/TriggerRangeSyncData\";\n static _API_ACTIVATE_SETTLEMENT_SYNC = \"/Configuration/SettleBets\";\n static _API_TRIGGER_SETTLEMENT_DATE = \"/Configuration/RerunSettleBets\";\n\n static _API_CREATE_OR_UPDATE_COMMUNICATION_CHANNEL = \"/Configuration/CreateOrUpdateCommunicationChannel\";\n static _API_GET_COMMUNICATION_CHANNEL_DETAIL = \"/Configuration/GetCommunicationChannelById\";\n static _API_GET_COMMUNICATION_CHANNELS = \"/Configuration/GetCommunicationChannel\";\n\n static _API_GET_GAME_RECORD_BY_MEMBER = \"/Product/GetProductGameRecordByMember\";\n static _API_UPDATE_DEVICE_TOKEN = \"/Account/UpdateDeviceToken\";\n static _API_GET_RECENT_NOTIFICATIONS = \"/Account/RetrieveRecentNotification\";\n static _API_READ_NOTIFICATION = \"/Account/ReadNotification\";\n\n static _API_CHECK_PENDING_DEPOSIT = \"/Transaction/CheckPendingDeposit\";\n static _API_GET_PRODUCT_GAME_PAYLOAD = \"/Product/GetProductGamePayload\";\n static _API_GET_BET_RESULT = \"/Product/GetBetResult\";\n static _API_GET_API_LOG = \"/Product/GetApiLog\";\n static _API_GET_CANCEL_LOG = \"/Product/GetCancelLog\";\n\n\n static _API_UPDATE_SHAREHOLDER_DETAIL = \"/Account/UpdateShareholderMember\";\n static _API_UPDATE_SHAREHOLDER_PRODUCT = \"/Account/UpdateShareholderProduct\";\n static _API_UPDATE_SHAREHOLDER_PAYOUT = \"/Account/UpdateShareholderPayout\";\n static _API_UPDATE_SHAREHOLDER_HUAT_TICKET = \"/Account/UpdateShareholderHuat\";\n static _API_GET_SHAREHOLDER_MASTER_PRODUCT_DATA_LIST = \"/Product/GetShareholderMasterProductList\";\n static _API_GET_SHAREHOLDER_MASTER_PRODUCT_DATA = \"/Product/GetShareholderMasterProduct\";\n static _API_GET_SHAREHOLDER_ONE_PRODUCT_DATA = \"/Product/GetShareholderOneProduct\";\n static _API_GET_SHAREHOLDER_HUAT_TICKET = \"/Product/GetShareholderHuatTicket\";\n static _API_UPDATE_SHAREHOLDER_PROCESS = \"/Account/ProcessShareholderPayout\";\n static _API_UPDATE_SHAREHOLDER_RELEASE = \"/Account/ReleaseShareholderPayout\";\n\n static _API_MANUAL_RESETTLE_568_PRODUCT_GAME_RECORD_FROM_BO = \"/Transaction/ManualResettle568ProductGameRecordFromBo\";\n\n static _API_CLEAR_CACHE = \"/Report/ClearCacheWinLoss\";\n\n static _API_GET_MEMBER_WALLET_STATEMENT = \"/Transaction/GetMemberWalletStatement\";\n\n static _API_GET_MEMBER_WALLET_STATEMENT_RECON = \"/Transaction/GetMemberWalletStatementRecon\";\n\n static _API_GET_TRANSACTION_QUEUE = \"/Transaction/GetTransactionQueue\";\n static _API_REMOVE_PLAYER_FROM_TRANSACTION_QUEUE = \"/Transaction/RemovePlayerFromTransactionQueue\";\n\n static _API_GET_LIVE_DATA = \"/Report/GetLiveData\";\n static _API_GET_SPORTS_LIVE_DATA = \"/Report/GetSportsLiveData\";\n\n static _API_GET_REWARDS_SETTING = \"/Product/GetRewardsSetting\";\n static _API_UPDATE_REWARDS_SETTING = \"/Product/UpdateRewardsSetting\";\n static _API_GET_REWARDS_SCHEDULE = \"/Product/GetRewardsSchedule\";\n static _API_UPDATE_REWARDS_SCHEDULE = \"/Product/UpdateRewardsSchedule\";\n\n static _API_GET_MEMBER_SPORTS_BET_LIMIT = \"/Product/GetMemberSportsBetLimit\";\n static _API_CREATE_OR_UPDATE_MEMBER_SPORTS_BET_LIMIT = \"/Product/CreateOrUpdateMemberSportsBetLimit\";\n\n static _API_GET_MEMBER_DOWNLINE_GAMES_BY_MASTERPRODUCT = \"/Account/GetMemberDownlineGameByMasterProduct\";\n static _API_UPDATE_DOWNLINE_MEMBER_GAME = \"/Product/UpdateDownlineMemberGame\";\n\n static _API_MANUAL_CANCEL_BET = \"/Account/ManualCancelBet\";\n\n static _API_GET_CLAIMED_UNCLAIMED_REWARDS_REPORT = \"/Report/GetClaimedRewardsReport\";\n static _API_GET_FORFEITED_REWARDS_REPORT = \"/Report/GetForfeitedRewardsReport\";\n\n static _API_GET_SPORTS_BET_REPORT = \"/Report/GetSportsBetReport\";\n\n static _API_UNSTUCK_SH = \"/Transaction/UnstuckSH\";\n\n static _API_RETRIEVE_MEMBER_GAME_DATA = \"/Product/RetrieveMemberGameData\";\n static _API_RESET_PRODUCT_PROCESS = \"/Product/ResetProductProcess\";\n\n static _API_VERIFY_USER_TRANSACTION_PIN_NUMBER = \"/Account/VerifyUserTransactionPinNumber\";\n static _API_GET_MEMBER_SPORTS_BET_LIMIT = \"/Product/GetMemberSportsBetLimit\";\n static _API_CREATE_OR_UPDATE_MEMBER_SPORTS_BET_LIMIT = \"/Product/CreateOrUpdateMemberSportsBetLimit\";\n\n static _API_GET_MEMBER_DOWNLINE_GAMES_BY_MASTERPRODUCT = \"/Account/GetMemberDownlineGameByMasterProduct\";\n static _API_UPDATE_DOWNLINE_MEMBER_GAME = \"/Product/UpdateDownlineMemberGame\";\n\n static _API_MANUAL_CANCEL_BET = \"/Account/ManualCancelBet\";\n\n static _API_GET_CLAIMED_UNCLAIMED_REWARDS_REPORT = \"/Report/GetClaimedRewardsReport\";\n static _API_GET_FORFEITED_REWARDS_REPORT = \"/Report/GetForfeitedRewardsReport\";\n\n static _API_GET_SPORTS_BET_REPORT = \"/Report/GetSportsBetReport\";\n\n static _API_UNSTUCK_SH = \"/Transaction/UnstuckSH\";\n\n static _API_RETRIEVE_MEMBER_GAME_DATA = \"/Product/RetrieveMemberGameData\";\n static _API_RESET_PRODUCT_PROCESS = \"/Product/ResetProductProcess\";\n\n static _API_GET_MOBILE_TAC = \"/Account/GetMobileTAC\";\n\n static _API_GET_TRANSACTION_SUMMARY_REPORT = \"/Transaction/GetTransactionSummaryRep\";\n\n static _API_GET_DEPOSIT_PROMOTION = \"/Configuration/GetDepositPromotion\";\n static _API_GET_DEPOSIT_PROMOTION_BY_ID = \"/Configuration/GetDepositPromotionById\";\n static _API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION = \"/Configuration/CreateOrUpdateDepositPromotion\";\n\n static _API_GET_ACCOUNT_PRODUCT_BY_PROMOTION_ID = \"/Configuration/GetAccountProductByPromotionId\";\n\n static _API_GET_MASTER_PRODUCT_ID_NAME_BY_USER_ID = \"/Product/GetMasterProductIdNameByUserId\";\n\n static _API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_PRODUCT = \"/Product/CreateOrUpdateDepositPromotionProduct\";\n static _API_GET_DEPOSIT_PROMOTION_PRODUCT = \"/Product/GetDepositPromotionProduct\";\n static _API_DELETE_DEPOSIT_PROMOTION_PRODUCT = \"/Product/DeleteDepositPromotionProduct\";\n\n static _API_GET_MEMBER_BIRTHDAY_LIST = \"/Account/GetMemberBirthdayList\";\n static _API_GENERATE_BIRTHDAY_REWARD = \"/Account/GenerateBirthdayReward\";\n\n static _API_GET_MEMBER_REBATE_LIST = \"/Account/GetMemberRebateList\";\n static _API_GENERATE_REBATE_REWARD = \"/Account/GenerateRebateReward\";\n static _API_GET_WEEKLY_RESCUE = \"/Configuration/GetWeeklyRescue\";\n static _API_GET_WEEKLY_RESCUE_BY_ID = \"/Configuration/GetWeeklyRescueById\";\n static _API_CREATE_OR_UPDATE_WEEKLY_RESCUE = \"/Configuration/CreateOrUpdateWeeklyRescue\";\n\n static _API_GET_BIRTHDAY_REWARD_REPORT = \"/Account/GetBirthdayRewardRep\";\n static _API_GET_GIFTPACE_REPORT = \"/Report/GetGiftpaceRep\";\n static _API_GET_MEMBER_WEEKLY_RESCUE = \"/Account/GetMemberWeeklyRescue\";\n static _API_GENERATE_MEMBER_WEEKLY_RESCUE = \"/Account/GenerateMemberWeeklyRescue\";\n\n static _API_GET_DAILY_CHECK_IN = \"/Configuration/GetDailyCheckIn\";\n static _API_GET_DAILY_CHECK_IN_BY_ID = \"/Configuration/GetDailyCheckInById\";\n static _API_CREATE_OR_UPDATE_DAILY_CHECK_IN = \"/Configuration/CreateOrUpdateDailyCheckIn\";\n static _API_GET_DAILY_CHECK_IN_DETAILS_BY_DCID = \"/Configuration/GetDailyCheckInDetailsByDCId\";\n static _API_CREATE_OR_UPDATE_DAILY_CHECK_IN_DETAILS = \"/Configuration/CreateOrUpdateDailyCheckInDetails\"\n\n static _API_GET_ALL_DC_ITEM = \"/Product/GetAllDCItem\";\n static _API_GET_DC_ITEM_BY_ID = \"/Product/GetDCItemById\";\n static _API_CREATE_OR_UPDATE_DC_ITEM = \"/Product/CreateOrUpdateDCItem\";\n static _API_UPDATE_DC_ITEM_STATUS = \"/Product/UpdateDCItemStatus\";\n static _API_GET_DC_REDEMPTION_RECORD = \"/Product/GetDCRedemptionRecord\";\n static _API_UPDATE_DC_REDEMPTION = \"/Product/UpdateDCRedemption\";\n static _API_UPDATE_PROCESSING_DC_REDEMPTION = \"/Product/UpdateDCProccessingRedemption\";\n static _API_GET_DC_ITEM_NAME_LIST = \"/Product/GetDCItemNameList\";\n static _API_GET_ACCOUNT_PRODUCT = \"/Product/GetAccountProduct\";\n static _API_GET_ACCOUNT_PRODUCT_BY_PRODUCT_ID = \"/Product/GetAccountProductByProductId\";\n static _API_UPDATE_DC_POINTS = \"/Product/UpdateDCPoints\";\n static _API_GET_MEMBER_DC_POINTS = \"/Product/GetMemberDCPoints\";\n static _API_GET_DC_POINTS_HISTORY = \"/Transaction/GetDCPointsHistory\";\n\n static _API_GET_MEMBER_DAILY_RESCUE = \"/Account/GetMemberDailyRescue\";\n static _API_GENERATE_MEMBER_DAILY_RESCUE = \"/Account/GenerateMemberDailyRescue\";\n static _API_GET_ACTIVE_MEMBER_REPORT = \"/Report/GetActiveMemberReport\";\n static _API_RESET_WALLET_ROLLOVER_RECORD = \"/Transaction/ResetWalletRollOverRecord\";\n static _API_CREATE_OR_UPDATE_MARQUEE_TAG_CONTENT = \"/Configuration/CreateOrUpdateMarqueeTagContent\";\n static _API_CREATE_DCITEM_CONTENT_LANGUAGE = \"/Configuration/CreateDCItemContentLanguage\";\n static _API_GET_DCITEM_LANGUAGE = \"/Configuration/GetDCItemLanguage\";\n static _API_UPDATE_DCITEM_LANGUAGE_BY_ID = \"/Configuration/UpdateDCItemLanguageById\";\n static _API_GET_MEMBER_GAME_POINTS = \"/Account/GetMemberGamePoints\";\n static _API_GENERATE_MEMBER_GAME_POINTS = \"/Account/GenerateMemberGamePoints\";\n static _API_GET_POINTS_HISTORY = \"/Transaction/GetPointsHistory\";\n static _API_CHECK_PENDING_POINTS_REDEMPTION = \"/Transaction/CheckPendingPointsRedemption\";\n static _API_UPDATE_POINTS_ADJUSTMENT = \"/Transaction/UpdatePointsAdjustment\";\n static _API_GET_POINTS_ADJUSTMENT_REPORT = \"/Report/GetPointsAdjustmentReport\";\n static _API_GET_OVERALL_POINTS_DETAILS = \"/Transaction/GetOverallPointsDetail\";\n\n static _API_GET_DEPOSIT_PROMOTION_CATEGORY = \"/Configuration/GetDepositPromotionCategory\";\n static _API_GET_DEPOSIT_PROMOTION_CATEGORY_BY_ID = \"/Configuration/GetDepositPromotionCategoryById\";\n static _API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_CATEGORY = \"/Configuration/CreateOrUpdateDepositPromotionCategory\";\n static _API_GET_DEPOSIT_PROMOTION_WITHOUT_CATEGORY = \"/Configuration/GetDepositPromotionWithoutCategory\";\n static _API_GET_DEPOSIT_PROMOTION_WITH_CATEGORY = \"/Configuration/GetDepositPromotionWithCategory\";\n static _API_GET_ALL_BANK_SUMMARY_STATEMENT = \"/Report/GetAllBankSummaryStatement\";\n\n static _API_GET_USER_DOMAIN = \"/Account/GetUserDomain\";\n static _API_GET_USER_DOMAIN_ID = \"/Account/GetUserDomainID\";\n static _API_UPDATE_OR_CREATE_USER_DOMAIN =\n \"/Account/UpdateOrCreateUserDomain\";\n static _API_REMOVE_USER_DOMAIN = \"/Account/RemoveDomain\";\n\n static _API_GET_MEMBER_ACCOUNT_BALANCE_JOURNEY = \"/Report/GetMemberAccountBalanceJourney\";\n\n static _API_UPDATE_WING_WEILUY_TRANSACTION_STATUS = \"/Transaction/UpdateWingWeiluyTransactionStatus\";\n static _API_GET_MEMBER_LIST = \"/Account/GetMemberList\";\n static _API_GET_CREDIT_REDEMPTION_REPORT = \"/Report/GetCreditRedemptionReport\";\n static _API_GET_REFERRAL_BONUS_REPORT = \"/Report/GetReferralBonusReport\";\n static _API_GET_ALL_BONUS_DEPOSIT = \"/Transaction/GetAllBonusDeposit\";\n static _API_GET_BONUS_DEPOSIT_BY_ID = \"/Transaction/GetBonusDepositById\";\n static _API_CREATE_OR_UPDATE_BONUS_DEPOSIT = \"/Transaction/CreateOrUpdateBonusDeposit\";\n static _API_GET_BONUS_DEPOSIT_LANGUAGE = \"/Configuration/GetBonusDepositLanguage\";\n static _API_CREATE_BONUS_DEPOSIT_LANGUAGE = \"/Configuration/CreateBonusDepositLanguage\";\n static _API_UPDATE_BONUS_DEPOSIT_LANGUAGE = \"/Configuration/UpdateBonusDepositLanguage\";\n\n static _API_UPDATE_CANCEL_DC_REDEMPTION = \"/Product/UpdateDCCancelRedemption\";\n\n static _API_CLONE_DEPOSIT_PROMOTION = \"/Configuration/CloneDepositPromotion\";\n static _API_BONUS_TRACKING = \"/Report/GetBonusTracking\";\n static _API_POINTS_TRACKING = \"/Report/GetPointsTracking\";\n static _API_GET_PLAYER_RECONCILIATION = \"/Transaction/GetPlayerReconciliation\";\n\n\n static _API_SEND_CHAT = \"/api/chat/member/send\";\n static _API_SEND_FILE = \"/api/chat/member/file\";\n static _API_SEND_VOICE = \"/api/chat/member/voice\";\n static _API_GET_CHAT_TEMPLATE = \"/api/chat/template/all\";\n static _API_GET_CHAT_TEMPLATE_CODE = \"/api/chat/template/get\";\n static _API_CREATE_OR_UPDATE_CHAT_SYSTEM_TEMPLATE = \"/api/chat/template/save\";\n\n //ChatSphere\n static _API_GET_CHAT_SPHERE = \"/Configuration/GetChatSphere\";\n static _API_GET_CHAT_SPHERE_BY_ID = \"/Configuration/GetChatSphereById\";\n static _API_GET_CHAT_SPHERE_TYPE = \"/Configuration/GetChatSphereType\";\n static _API_GET_CHAT_SPHERE_TYPE_BY_ID = \"/Configuration/GetChatSphereTypeById\";\n static _API_GET_CHAT_SPHERE_CHANNEL = \"/Configuration/GetChatSphereChannel\";\n static _API_CREATE_OR_UPDATE_CHAT_SPHERE_TYPE = \"/Configuration/CreateOrUpdateChatSphereType\";\n static _API_GET_CHAT_SPHERE_CONTENT_BY_ID = \"/Configuration/GetChatSphereContentById\";\n static _API_CREATE_OR_UPDATE_CHAT_SPHERE_CONTENT = \"/Configuration/CreateOrUpdateChatSphereContent\";\n static _API_CREATE_CHAT_SPHERE_CONTENT_LANGUAGE = \"/Configuration/CreateChatSphereContentLanguage\";\n static _API_UPDATE_CHAT_SPHERE_CONTENT_LANGUAGE = \"/Configuration/UpdateChatSphereContentLanguageById\";\n static _API_GET_CHAT_SPHERE_CONTENT_LANGUAGE = \"/Configuration/GetChatSphereLanguage\";\n static _API_GET_CHAT_SPHERE_PHONE_NUMBER = \"/Configuration/GetChatSpherePhoneNumber\";\n static _API_GET_CHAT_SPHERE_PHONE_NUMBER_BY_ID = \"/Configuration/GetChatSpherePhoneNumberById\";\n static _API_CREATE_OR_UPDATE_CHAT_SPHERE_PHONE_NUMBER = \"/Configuration/CreateOrUpdateChatSpherePhoneNumber\";\n\n static _API_CREATE_BONUS_WALLET_ADJUSTMENT = \"/Transaction/CreateBonusWalletAdjustment\";\n static _API_GET_MEMBER_BANK_ACCOUNT = \"/Account/GetMemberBankAccount\";\n static _API_GET_MEMBER_BANK_ACCOUNT_BY_ID = \"/Account/GetMemberBankAccountById\";\n static _API_UPDATE_MEMBER_BANK_ACCOUNT_BY_ID = \"/Account/UpdateMemberBankAccount\";\n\n static _API_GET_BANK_BY_TRANSACTION_TYPE = \"/Configuration/GetBankByTransactionType\";\n\n static _API_GET_ACCOUNT_PRODUCT_RANKING = \"/Product/GetAccountProductRanking\";\n static _API_UPDATE_ACCOUNT_PRODUCT_RANKING = \"/Product/UpdateAccountProductRanking\";\n\n static _API_GET_CUSTOM_PRODUCT_GAME_SETTING = \"/Product/GetCustomProductGameSetting\";\n static _API_UPDATE_CUSTOM_PRODUCT_GAME_SETTING = \"/Product/UpdateCustomProductGameSetting\";\n\n\n static _API_LOGIN = \"/Account/Login\";\n static _API_GET_CHAT_LIST = \"/api/chat/list\"\n static _API_GET_CHAT_ROOM = \"/api/chat/room\"\n\n static _API_GET_MEMBER_PROMOTION = \"/Account/GetMemberPromotions\";\n static _API_CANCEL_PROMO = \"/Account/CancelPromotion\";\n static _API_GET_MEMBER_CLAIMED_PROMOTION_DETAIL = \"/Account/GetMemberClaimedPromotionDetail\";\n\n static _API_GET_MEMBER_COMMISSION_LIST = \"/Account/GetMemberCommissionList\";\n static _API_GENERATE_MLM_COMMISSION = \"/Account/GenerateMLMCommission\";\n\n static _API_GET_DOWNLINE_BY_REFERRER2 = \"/Account/GetDownlineByReferrer2\";\n\n static _API_READ_NOTIFICATION = \"/Account/ReadNotification\";\n static _API_GET_MEMBER_WITH_UNREAD_NOTIFICATIONS = \"/Account/RetrieveMembersWithUnreadNotification\";\n\n // Custom Chat Template\n static _API_GET_CUSTOM_CHAT_TEMPLATE = \"/api/custom/chat/template/all\";\n static _API_GET_CUSTOM_CHAT_TEMPLATE_CODE = \"/api/custom/chat/template/get\";\n static _API_CREATE_OR_UPDATE_CUSTOM_CHAT_TEMPLATE = \"/api/custom/chat/template/save\";\n\n static _API_UPLOAD_IMG_EDITOR = \"/Configuration/UploadImageFromEditor\";\n\n static _API_GET_REFERRAL_REPORT = \"/Report/GetReferralReport\";\n static _API_GET_REFERRAL_REPORT_DETAILS = \"/Report/GetReferredMemberSummary\";\n\n}\n\n/// \n/// Author : -\n/// Url to navigate to pages\n/// \nexport class WebUrl {\n static _URL_MAIN = \"/\";\n static _URL_LOGIN = \"/login\";\n static _URL_DASHBOARD = \"/dashboard\";\n static _URL_HELP = \"/help\";\n static _URL_SUPER_ACCOUNT = \"/admin/superAccount\";\n static _URL_MANAGE_COMPANY = \"/admin/manageCompany\";\n static _URL_CREATE_OR_EDIT_COMPANY = \"/admin/companyDetail\";\n static _URL_COMPANY_PROFILE = \"/admin/companyProfile\";\n static _URL_CREATE_OR_UPDATE_MEMBER = \"/account/memberDetail\";\n static _URL_MANAGE_MEMBER = \"/account/manageMember\";\n static _URL_CHAT_ROOM = \"/chat/charoom\";\n static _URL_CHAT_SYSTEM_TEMPLATE = \"/chat/systemTemplate\";\n static _URL_CHAT_CUSTOM_TEMPLATE = \"/chat/customTemplate\";\n\n static _URL_MANAGE_MEMBER_PRODUCT_USERNAME = \"/account/manageMemberMPUsername\";\n\n static _URL_MANAGE_BANK = \"/configure/manageBank\";\n static _URL_CREATE_OR_EDIT_BANK = \"/configure/bankDetail\";\n static _URL_BANK_ACCOUNT = \"/transaction/bankAccounts\";\n static _URL_CREATE_OR_UPDATE_BANK_ACCOUNT = \"/configure/bankAccountDetail\";\n static _URL_MANAGE_ROLE = \"/admin/manageRoles\";\n static _URL_CREATE_OR_UPDATE_ROLE = \"/account/roleDetail\";\n static _URL_MANAGE_SUB_ACCOUNT = \"/admin/manageSubAccount\";\n static _URL_CREATE_OR_UPDATE_SUB_ACCOUNT = \"/account/subAccountDetail\";\n static _URL_CHANGE_PASSWORD = \"/admin/changePassword\";\n static _URL_CHANGE_PIN_NUMBER = \"/admin/changePinNumber\";\n static _URL_USER_PRODUCT = \"/product/userProducts\";\n static _URL_MASTER_PRODUCT = \"/product/masterProducts\";\n static _URL_CREATE_OR_UPDATE_MASTER_PRODUCT = \"/product/masterProductsDetail\";\n static _URL_MANAGE_568WIN_BET_LIMIT = \"/product/manage568WinBetLimit\";\n\n static _URL_PRODUCT_GAME = \"/product/productGame\";\n static _URL_CREATE_OR_UPDATE_PRODUCT_GAME = \"/product/productGameDetail\";\n\n static _URL_MANAGE_PRODUCT_GAME_SETTING = \"/product/manageProductGameSetting\";\n static _URL_CREATE_OR_UPDATE_PRODUCT_GAME_SETTING = \"/product/productGameSettingDetail\";\n\n static _URL_PRODUCT_CATEGORY = \"/product/category\";\n static _URL_CREATE_OR_UPDATE_PRODUCT_CATEGORY = \"/product/categoryDetail\";\n static _URL_INSTANT_PAY_SETTING = \"/paymentgateway/InstantPaySettings\";\n static _URL_CREATE_OR_UPDATE_INSTANT_PAY_SETTING = \"/configure/instantPaySettingsDetail\";\n static _URL_WITHDRAWAL = \"/transaction/withdrawal\";\n static _URL_DEPOSIT = \"/transaction/deposit\";\n static _URL_ADJUSTMENT = \"/adjustment/adjustment\";\n static _URL_BONUS = \"/transaction/bonus\";\n static _URL_TRANSACTION_ENQUIRY = \"/transaction/transactionEnquiry\";\n static _URL_INSTANT_TRANSFER = \"/transaction/instantTransaction\";\n\n static _URL_TNG_SETTINGS = \"/transaction/TnGSettings\";\n static _URL_DEPOSIT_REFERENCE = \"/transaction/DepositReference\";\n\n static _URL_CREATE_OR_UPDATE_REJECT_REASON = \"/configure/rejectReasonDetail\";\n static _URL_MANAGE_REJECT_REASON = \"/configure/manageRejectReason\";\n static _URL_CREATE_OR_UPDATE_SMS_CONTENT = \"/configure/smsContentDetail\";\n static _URL_MANAGE_SMS_CONTENT = \"/configure/manageSmsContent\";\n static _URL_SMS_SETTING = \"/configure/smsSettings\";\n static _URL_VIEW_ACCOUNT = \"/account/viewAccount\";\n static _URL_VIEW_PRODUCT_ACCOUNT = \"/account/view-product-account\";\n static _URL_MANAGE_ACCOUNT = \"/account/manageAccount\";\n static _URL_MANAGE_IP_BLOCK = \"/account/manage-ip-block\";\n\n static _URL_ANNOUNCEMENT = \"/content/announcement\";\n static _URL_CREATE_OR_UPDATE_ANNOUNCEMENT = \"/content/announcementDetail\";\n static _URL_BANNER = \"/content/banner\";\n static _URL_CREATE_OR_UPDATE_BANNER = \"/content/bannerDetail\";\n static _URL_REWARD_BANNER = \"/content/rewardBanner\";\n static _URL_CREATE_OR_UPDATE_REWARD_BANNER = \"/content/rewardBannerDetail\";\n static _URL_PROMOTION = \"/content/promotion\";\n static _URL_CREATE_OR_UPDATE_PROMOTION = \"/content/promotionDetail\";\n static _URL_SEO = \"/content/seo\";\n static _URL_CREATE_OR_UPDATE_SEO = \"/content/seoDetail\";\n static _URL_SCRIPT = \"/content/script\";\n static _URL_CREATE_OR_UPDATE_SCRIPT = \"/content/scriptDetail\";\n static _URL_EMAIL = \"/content/email\";\n static _URL_CREATE_OR_UPDATE_EMAIL = \"/content/emailDetail\";\n static _URL_CONTENT = \"/content/content\";\n static _URL_CREATE_OR_UPDATE_CONTENT = \"/content/contentDetail\";\n static _URL_WEB_CONTENT = \"/configure/WebContent\";\n static _URL_MANAGE_WEB_CONTENT = \"/configure/ManageWebContent\";\n static _URL_CREATE_OR_UPDATE_WEB_CONTENT = \"/configure/webContent\";\n static _URL_MARQUEE_TAG_CONTENT = \"/content/marqueeTagContent\";\n static _URL_MARQUEE_TAG_CONTENT_LANGUAGE = \"/content/marqueeTagContentLanguage\";\n static _URL_MARQUEE_TAG_CONTENT_DETAIL = \"/content/marqueeTagContentDetail\";\n static _URL_VIP_LEVEL = \"/configure/vipLevel\";\n static _URL_CREATE_OR_UPDATE_VIP_LEVEL = \"/configure/vipLevelDetail\";\n static _URL_REMARK = \"/configure/remark\";\n static _URL_CREATE_OR_UPDATE_REMARK = \"/configure/remarkDetail\";\n static _URL_TAG = \"/configure/tag\";\n static _URL_CREATE_OR_UPDATE_TAG = \"/configure/tagDetail\";\n static _URL_LANGUAGE = \"/configure/language\";\n static _URL_CREATE_OR_UPDATE_LANGUAGE = \"/configure/languageDetail\";\n static _URL_BANKING_CHANNEL = \"/configure/bankingChannel\";\n static _URL_CREATE_OR_UPDATE_BANKING_CHANNEL = \"/configure/bankingChannelDetail\";\n static _URL_BONUS_TYPE = \"/configure/bonusType\";\n static _URL_CREATE_OR_UPDATE_BONUS_TYPE = \"/configure/bonusTypeDetail\";\n static _URL_PRODUCT_SETTING = \"/configure/productSetting\";\n static _URL_CREATE_OR_UPDATE_PRODUCT_SETTING = \"/configure/productSettingDetail\";\n static _URL_MANAGE_VIP_BENEFIT = \"/configure/vipBenefit\";\n static _URL_CREATE_OR_UPDATE_VIP_BENEFIT = \"/configure/vipBenefitDetail\";\n static _URL_MANAGE_VIP_BENEFIT_CONTENT = \"/configure/vipBenefitContent\";\n static _URL_CREATE_OR_UPDATE_VIP_BENEFIT_CONTENT = \"/configure/vipBenefitContentDetail\";\n static _URL_MANAGE_SYSTEM_SETTING = \"/configure/manage-system-settings\";\n static _URL_MANAGE_RECURRING_JOB = \"/configure/manageRecurringJob\";\n static _URL_MANAGE_MANUAL_JOB = \"/configure/manageManualJob\";\n\n static _URL_MANAGE_SKIN_SETTINGS = \"/configure/ManageSkinSettings\";\n static _URL_SKIN_SETTINGS_DETAIL = \"/configure/SkinSettingsDetail\";\n\n static _URL_MANAGE_VIDEO_TUTORIAL = \"/configure/ManageVideoTutorial\";\n static _URL_VIDEO_TUTORIAL_DETAIL = \"/configure/VideoTutorialDetail\";\n\n static _URL_MANAGE_DEPOSIT_PROMOTION = \"/configure/ManageDepositPromotion\";\n static _URL_CREATE_OR_UPDATE_DEPOSIT_PROMOTION = \"/configure/DepositPromotionDetail\";\n\n static _URL_BANK_PACKAGE = \"/configure/bankPackage\";\n static _URL_CREATE_OR_UPDATE_BANK_PACKAGE = \"/configure/bankPackageDetail\";\n static _URL_DEFAULT_BET_SETTING = \"/configure/defaultBetSetting\";\n static _URL_REBATE = \"/configure/rebate\";\n\n static _URL_CREATE_OR_UPDATE_MASTER_PRODUCT = \"/product/masterProductDetail\";\n static _URL_MANAGE_BONUS = \"/configure/manageBonus\";\n static _URL_CREATE_OR_UPDATE_BONUS = \"/configure/bonusDetail\";\n static _URL_COMPANY_PRODUCT_MAINTENANCE = \"/admin/companyProductMaintenance\";\n static _URL_COMPANY_PRODUCT_API_INFO = \"/admin/companyProductApiInfo\";\n static _URL_COMPANY_PRODUCT_ACCOUNT_INFO = \"/admin/companyProductAccountInfo\";\n\n static _URL_PROFIT_LOSS_REPORT = \"/report/profitLossReport\";\n static _URL_BET_DETAIL_REPORT = \"/account/betDetailReport\";\n static _URL_DAILY_SUMMARY_REPORT = \"/report/dailySummaryReport\";\n static _URL_CHANNEL_SUMMARY_REPORT = \"/report/channelSummaryReport\";\n static _URL_BANK_SUMMARY_REPORT = \"/report/bankSummaryReport\";\n static _URL_TRANSACTION_REPORT = \"/report/transactionReport\";\n static _URL_WALLET_TRANSFER_REPORT = \"/report/walletTransferReport\";\n static _URL_TRANSACTION_SUMMARY_REPORT = \"/report/transactionSummaryReport\";\n static _URL_BIRTHDAY_REWARD_REPORT = \"/report/birthdayRewardReport\";\n static _URL_GIFTPACE_REPORT = \"/report/giftpaceReport\";\n\n static _URL_PROCESS_GAME_RECORD_REPORT = \"/report/ProcessGameRecordReport\";\n static _URL_568_NON_PROCESS_GAME_RECORD_REPORT = \"/report/NonProcessGameRecordReport\";\n\n static _URL_SHAREHOLDERS_UNCLAIMED_REPORT = \"/report/ShareholderUnclaimReport\";\n static _URL_SHAREHOLDERS_UNCLAIMED_REPORT_LIST = \"/report/ShareholderUnclaimReportList\";\n static _URL_COMISSION_REPORT_LIST = \"/report/ComissionReportList\";\n\n static _URL_TOTAL_SHARE_PAYOUT_REPORT = \"/report/TotalSharePayoutReport\";\n\n static _URL_USERNAME_BET_DETAIL_REPORT = \"/report/UsernameBetDetailReport\";\n\n static _URL_MANAGE_MEMBER_FULL_NAME = \"/report/manageMemberFullname\";\n\n static _URL_REBATE_REPORT = \"/report/rebateReport\";\n static _URL_MEMBER_REPORT = \"/account/memberReport\";\n static _URL_WIN_LOSS_REPORT = \"/report/winLossReport\";\n static _URL_TALLY_WIN_LOSS_REPORT = \"/report/tallywinLossReport\";\n static _URL_WIN_LOSS_REPORT2 = \"/report/winLossReport2\";\n static _URL_WIN_LOSS_REPORT3 = \"/report/winLossReport3\";\n static _URL_BONUS_COMMISSION_REPORT = \"/report/bonusCommReport\";\n static _URL_MANAGE_WALLET_REPORT = \"/account/manageWalletTransferReport\";\n static _URL_SERVICE_CHARGE_REPORT = \"/paymentgateway/serviceChargeReport\";\n static _URL_ADJUSTMENT_REPORT = \"/adjustment/adjustmentReport\";\n\n static _URL_IP_MONITOR = \"/tool/ipMonitor\";\n static _URL_ACTIVITY_LOG = \"/admin/activityLog\";\n static _URL_TRANSACTION_DETAIL = \"/transaction/transactionDetail\";\n static _URL_MEMBER_PRORUCT_MAINTENANCE = \"/member/productMaintenance\";\n static _URL_MANAGE_CONTACT_US = \"/content/contactUs\";\n static _URL_CREATE_OR_UPDATE_CONTACT_US = \"/content/contactUsDetail\";\n\n static _URL_COMMISSION_ADJUSTMENT = \"/adjustment/commissionAdjustment\";\n static _URL_BONUS_ADJUSTMENT = \"/adjustment/bonusAdjustment\";\n\n static _URL_MANAGE_COMMUNICATION = \"/configuration/manageCommunicationChannels\";\n static _URL_CREATE_OR_UPDATE_COMMUNICATION = \"/configuration/communicationChannelDetail\";\n\n static _URL_SHAREHOLDERS_LIST = \"/shareholder/list\";\n static _URL_SHAREHOLDERS_VIEW_ACCOUNT = \"/shareholder/viewAccount\";\n static _URL_SHAREHOLDERS_PRODUCTS = \"/shareholder/products\";\n static _URL_SHAREHOLDERS_PRODUCTS_EDIT = \"/shareholder/viewProduct\";\n static _URL_SHAREHOLDERS_PAYOUT_EDIT = \"/shareholder/viewPayout\";\n static _URL_SHAREHOLDERS_PROCESS_HUAT_TICKET = \"/shareholder/huatTickets\"\n static _URL_SHAREHOLDERS_HUAT_TICKET_EDIT = \"/shareholder/viewHuatTicket\";\n static _URL_SHAREHOLDERS_PROCESS = \"/shareholder/process\";\n static _URL_SHAREHOLDERS_REPORT = \"/shareholder/report\";\n\n static _URL_SHAREHOLDERS_DOWNLINE_REPORT = \"/shareholder/downlineReport\";\n\n static _URL_MAINTENANCE = \"/maintenance\";\n\n static _URL_MANAGE_MEMBER_WALLET_STATEMENT = \"/account/manageWalletHistory\";\n static _URL_MANAGE_MEMBER_WALLET_STATEMENT_RECON = \"/account/manageWalletRecon\";\n\n static _URL_TODAY_NEW_MEMBERS = \"/account/TodayNewMembers\";\n static _URL_TRANSFER_LOG = \"/account/TransferLog\";\n\n static _URL_LIVE_MONITOR = \"/liveMonitor\";\n static _URL_SPORTS_LIVE_MONITOR = \"/sportsLiveMonitor\";\n\n static _URL_SPORTS_TEAM_BET_REPORT = \"/sportsTeamBetReport\";\n\n static _URL_TRANSACTION_QUEUE = \"/account/queue\";\n\n static _URL_WITHDRAWAL_SETTINGS = \"/transaction/withdrawalSettings\";\n\n static _URL_REWARDS_SETTING = \"/rewardsSetting\";\n static _URL_REWARDS_SCHEDULE = \"/rewardsSchedule\";\n static _URL_CLAIMED_REWARDS_REPORT = \"/claimedRewardsReport\";\n static _URL_FORFEITED_REWARDS_REPORT = \"/forfeitedRewardsReport\";\n\n static _URL_MANAGE_MEMBER_PO = \"/manageMemberPO\";\n static _URL_MANAGE_MEMBER_CS = \"/manageMemberCS\";\n\n static _URL_RETRIEVE_MEMBER_BET_DATA = \"/retrieveMemberBetData\";\n\n static _URL_MANAGE_MOBILE_TAC = \"/manageMobileTAC\";\n\n static _URL_BIRTHDAY_REWARDS = \"/dailytask/manageBirthdayReward\";\n static _URL_MEMBER_REBATE = \"/dailytask/manageMemberRebate\";\n\n static _URL_WEEKLY_RESCUE = \"/configure/manageWeeklyRescue\";\n static _URL_WEEKLY_RESCUE_DETAIL = \"/configure/weeklyRescueDetail\";\n static _URL_MEMBER_WEEKLY_RESCUE = \"/dailytask/manageMemberWeeklyRescue\";\n static _URL_MANAGE_DAILY_CHECK_IN = \"/dc/manageDailyCheckIn\";\n static _URL_DAILY_CHECK_IN_DETAIL = \"/dc/dailyCheckInDetail\";\n\n static _URL_BIRTHDAY_REWARDS = \"/dailytask/manageBirthdayReward\";\n static _URL_MEMBER_REBATE = \"/dailytask/manageMemberRebate\";\n\n static _URL_WEEKLY_RESCUE = \"/configure/manageWeeklyRescue\";\n static _URL_WEEKLY_RESCUE_DETAIL = \"/configure/weeklyRescueDetail\";\n static _URL_MEMBER_WEEKLY_RESCUE = \"/dailytask/manageMemberWeeklyRescue\";\n static _URL_MANAGE_DAILY_CHECK_IN = \"/dc/manageDailyCheckIn\";\n static _URL_DAILY_CHECK_IN_DETAIL = \"/dc/dailyCheckInDetail\";\n\n static _URL_MANAGE_DC_ITEM_LIST = \"/dc/manageDCItemList\";\n static _URL_CREATE_OR_UPDATE_DC_ITEM = \"/dc/dcItemDetail\";\n static _URL_MANAGE_DC_REDEMPTION = \"/dc/manageDCRedemption\";\n static _URL_MANAGE_DC_POINTS = \"/dc/manageDCPoints\";\n static _URL_UPDATE_DC_POINTS = \"/dc/dcPointDetails\";\n static _URL_MANAGE_MEMBER_DC_POINTS = \"/dc/manageMemberDCPoints\";\n static _URL_MEMBER_DC_POINTS_DETAIL = \"/dc/memberDCPointsDetail\";\n static _URL_ACTIVE_MEMBER_REPORT = \"/report/activeMemberReport\";\n static _URL_MEMBER_GAME_POINTS = \"/dailytask/manageMemberGamePoints\";\n static _URL_POINTS_ADJUSTMENT = \"/adjustment/pointsAdjustment\";\n static _URL_POINTS_ADJUSTMENT_REPORT = \"/adjustment/pointsAdjustmentReport\";\n static _URL_MEMBER_POINTS_REPORT = \"/report/memberPointsReport\";\n\n static _URL_MANAGE_DEPOSIT_PROMOTION_CATEGORY = \"/configure/ManageDepositPromotionCategory\";\n static _URL_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_CATEGORY = \"/configure/DepositPromotionCategoryDetail\";\n static _URL_MEMBER = \"/account/members\";\n static _URL_CREDIT_REDEMPTION_REPORT = \"/report/creditRedemptionReport\";\n static _URL_REFERRAL_BONUS_REPORT = \"/report/referralBonusReport\";\n static _URL_BONUS_DEPOSIT = \"/transaction/ManageBonusDeposit\";\n static _URL_CREATE_OR_UPDATE_BONUS_DEPOSIT = \"/transaction/BonusDepositDetail\";\n static _URL_PLAYER_RECONCILIATION = \"/playerReconciliation\";\n\n //Chatsphere\n static _URL_MANAGE_CAHE_SPHERE = \"/configure/manageChatSphere\";\n static _URL_MANAGE_CAHE_SPHERE_CONTENT_DETAIL = \"/configure/ChatSphereContentDetail\";\n static _URL_MANAGE_CAHE_SPHERE_TYPE = \"/configure/manageChatSphereType\";\n static _URL_CHAT_SPHERE_TYPE_DETAIL = \"/configure/chatSphereTypeDetail\";\n static _URL_CHAT_SPHERE_CONTENT_LANGUAGE = \"/configure/chatSphereContentLanguage\";\n static _URL_CHAT_SPHERE_PHONE_NUMBER = \"/configure/ManageChatSpherePhoneNumber\";\n static _URL_CHAT_SPHERE_PHONE_NUMBER_DETAIL = \"/configure/chatSpherePhoneNumberDetail\";\n\n static _URL_ADJUSTMENT_BONUS_WALLET = \"/adjustment/bonusWallet\";\n\n static _URL_MANAGE_MEMBER_BANK_ACCOUNT = \"/account/manageMemberBankAccount\";\n static _URL_MEMBER_BANK_ACCOUNT_DETAIL = \"/account/memberBankAccountDetail\";\n\n static _URL_MANAGE_ACCOUNT_PRODUCT_RANK = \"/product/manageAccountProductRank\";\n static _URL_MANAGE_PRODUCT_GAME_RANK = \"/product/manageProductGameRank\";\n static _URL_GAME_LIST = \"/product/GameList\";\n\n static _URL_CLAIMED_PROMOTION_DETAIL = \"/account/claimed-promotion-detail\";\n\n static _URL_MANAGE_MLM_COMMISSION = \"/account/ManageMLMCommission\";\n static _URL_CHAT_SYSTEM_TEMPALTE = \"/content/chatSystemTemplate\";\n static _URL_CHAT_CUSTOM_TEMPALTE = \"/content/chatCustomTemplate\";\n static _URL_CREATE_OR_UPDATE_CHAT_SYSTEM_TEMPLATE = \"/chat/manageSystemTemplate\";\n static _URL_MANAGE_CUSTOM_CHAT_TEMPLATE = \"/chat/create-update-custom-template\";\n\n static _URL_REFERRAL_REPORT = \"/report/referralReport\"\n static _URL_REFERRAL_REPORT_DETAILS = \"/report/referralReportDetails\"\n\n}\n\n/// \n/// Author : -\n/// this is following the value from db, please do not change it unless it is really needed\n/// \nexport class Role {\n static _SUPER_COMPANY = 1;\n static _COMPANY = 2;\n static _CUSTOMER_SERVICE = 3;\n static _RISK_TEAM = 6;\n static _TESTING_ROLE = 8;\n static _SUPERVISOR = 9;\n static _PAYMENT_OFFICIAL_CS = 10; //7 for staging\n}\n\n/// \n/// Author : -\n/// \nexport class Status {\n static _ENABLED = 1;\n static _DISABLED = 0;\n}\n/// \n/// Author : -\n/// \nexport class TransferBackMainWallet {\n static _ENABLED = 1;\n static _DISABLED = 0;\n}\n\n/// \n/// Author : -\n/// Do not change, require to follow datafieldlib\n/// \nexport class MemberStatus {\n static _INACTIVE = 0;\n static _ACTIVE = 1;\n static _BLOCKED = -1;\n}\n\n/// \n/// Author : -\n/// this value needed to be tally to value in server, do not change recklessly\n/// \nexport class AccessRight {\n static _DASHBOARD_DETAILS_PERMISSION = \"1.\";\n\n static _SUPER_COMPANY_CONTROL_PERMISSION = \"99.\";\n static _COMPANY_CONTROL_PERMISSION = \"99.1\";\n\n static _MEMBER_CONTROL_PERMISSION = \"2.1\";\n static _MEMBER_PRODUCT_USERNAME_PERMISSION = \"2.2\";\n static _MEMBER_REPORT_PERMISSION = \"2.3\";\n static _MANAGE_IP_BLOCK_PERMISSION = \"2.4\";\n static _MEMBER_WALLET_STATEMENT_PERMISSION = \"2.5\";\n static _NEW_MEMBER_LIST_PERMISSION = \"2.6\";\n static _TRANSFER_LOG_PERMISSION = \"2.7\";\n static _BET_DETAIL_REPORT_PERMISSION = \"2.8\";\n static _TRANSACTION_QUEUE_PERMISSION = \"2.9\";\n static _MANAGE_MEMBER_PO_PERMISSION = \"2.10\";\n static _MANAGE_MEMBER_CS_PERMISSION = \"2.11\";\n //static _MEMBER_WALLET_STATEMENT_RECON_PERMISSION = \"2.12\";\n static _MANAGE_MOBILE_TAC_PERMISSION = \"2.12\";\n static _MANAGE_BIRTHDAY_REWRDS = \"2.13\";\n static _MEMBER_WEEKLY_RESCUE_PERMISSION = \"2.14\";\n static _MANAGE_MEMBER_WEEKLY_RESCUE = \"2.15\";\n static _MANAGE_MEMBER_GAME_POINTS = \"2.16\";\n static _MANAGE_MEMBER_BANK_ACCOUNT = \"2.17\";\n static _GENERATE_COMMISSION_PERMISSION = \"2.18\";\n\n static _MANUAL_CANCEL_BET_PERMISSION = \"2.8.1\";\n static _RESET_ROLLOVER_PERMISSION = \"2.1.1\";\n\n static _LIVE_CHAT_PERMISSION = \"0.0\"\n static _LIVE_CHAT_SYSTEM_TEMPLATE_PERMISSION = \"0.1\"\n static _LIVE_CHAT_CUSTOM_TEMPLATE_PERMISSION = \"0.2\"\n\n static _SHAREHOLDER_PERMISSION = \"3.1\";\n static _SHAREHOLDER_PRODUCT_SETTING_PERMISSION = \"3.2\";\n //static _SHAREHOLDER_ADD_HUAT_PERMISSION = \"3.3\";\n static _SHAREHOLDER_PROCESS_SHARE_SALES_PERMISSION = \"3.3\";\n static _SHAREHOLDER_REPORT_PERMISSION = \"3.4\";\n static _SHAREHOLDER_DOWNLINE_REPORT_PERMISSION = \"3.5\";\n //static _SHAREHOLDER_UNCLAIMED_SALES_PERMISSION = \"3.7\";\n static _SHAREHOLDER_UNCLAIMED_SALES_LIST_PERMISSION = \"3.6\";\n static _SHAREHOLDER_SHARE_PAYOUT_REPORT_PERMISSION = \"3.7\";\n\n //static _TNG_SETTING_PERMISSION = \"4.1\";\n static _TRANSACTION_ENQUIRY_PERMISSION = \"4.1\";\n static _PAYMENT_GATEWAY_APPROVAL_PERMISSION = \"4.1.1\";\n static _TRANSACTION_APPROVAL_PERMISSION = \"4.1.2\";\n static _TRANSACTION_REJECTION_PERMISSION = \"4.1.3\";\n static _BANK_SUMMARY_REPORT_PERMISSION = \"4.2\";\n static _DEPOSIT_TRANSACTION_PERMISSION = \"4.3\";\n static _WITHDRAWAL_TRANSACTION_PERMISSION = \"4.4\";\n // static _WITHDRAWAL_SETTINGS_PERMISSION = \"4.5\";\n static _BANK_ACCOUNT_SETTING_PERMISSION = \"4.5\";\n //static _BANKING_CHANNEL_SETTING_PERMISSION = \"4.8\";\n //static _DEPOSIT_REFERENCE_PERMISSION = \"4.9\";\n static _BONUS_DEPOSIT_PERMISSION = \"4.6\";\n\n static _INSTANT_PAY_SETTING_PERMISSION = \"5.1\";\n static _SERVICE_CHARGE_REPORT_PERMISSION = \"5.2\";\n\n static _ADJUSTMENT_TRANSACTION_PERMISSION = \"6.1\";\n //static _COMMISSION_ADJUSTMENT_PERMISSION = \"6.2\";\n //static _BONUS_ADJUSTMENT_PERMISSION = \"6.3\";\n static _ADJUSTMENT_REPORT_PERMISSION = \"6.2\";\n static _ADJUSTMENT_POINTS_PERMISSION = \"6.3\";\n static _POINTS_ADJUSTMENT_REPORT_PERMISSION = \"6.4\";\n static _COIN_ADJUSTMENT_TRANSACTION_PERMISSION = \"6.5\";\n //static _INSTANT_TRANSACTION_PERMISSION = \"6.6\";\n\n static _WINLOSS_REPORT_PERMISSION = \"7.1\";\n static _TALLY_WINLOSS_REPORT_PERMISSION = \"7.2\";\n static _PROFIT_LOSS_REPORT_PERMISSION = \"7.3\";\n static _DAILY_SUMMARY_REPORT_PERMISSION = \"7.4\";\n static _BONUS_COMM_REPORT_PERMISSION = \"7.5\";\n static _TRANSACTION_REPORT_PERMISSION = \"7.6\";\n static _WALLET_TRANSFER_REPORT_PERMISSION = \"7.7\";\n //static _PROCESS_GAME_RECORD_REPORT_PERMISSION = \"7.8\";\n //static _NON_PROCESS_568_GAME_RECORD_REPORT_PERMISSION = \"7.9\";\n static _COMM_REPORT_PERMISSION = \"7.8\";\n static _MEMBER_FULLNAME_PERMISSION = \"7.9\";\n //static _CHANNEL_SUMMARY_REPORT_PERMISSION = \"7.10\";\n //static _REBATE_REPORT_PERMISSION = \"7.13\";\n static _TRANSACTION_SUMMARY_REPORT_PERMISSION = \"7.10\";\n static _BIRTHDAY_REWARD_REPORT_PERMISSION = \"7.11\";\n static _GIFTPACE_REPORT_PERMISSION = \"7.12\";\n static _ACTIVE_MEMBER_REPORT_PERMISSION = \"7.13\";\n static _MEMBER_POINTS_REPORT_PERMISSION = \"7.14\";\n static _CREDIT_REDEMPTION_REPORT_PERMISSION = \"7.15\";\n static _REFERRAL_BONUS_REPORT_PERMISSION = \"7.16\";\n static _REFERRAL_REPORT_PERMISSION = \"7.17\";\n\n static _IP_MONITOR_PERMISSION = \"8.1\";\n\n static _SUB_ACCOUNT_CONTROL_PERMISSION = \"9.1\";\n static _ROLE_CONTROL_PERMISSION = \"9.2\";\n static _ACTIVITY_LOG_PERMISSION = \"9.3\";\n static _CHANGE_PASSWORD_PERMISSION = \"9.4\";\n\n static _PRODUCT_CATEGORY_SETTING_PERMISSION = \"10.1\";\n static _MASTER_PRODUCT_CONTROL_PERMISSION = \"10.2\";\n static _PRODUCT_CONTROL_PERMISSION = \"10.3\";\n //static _RETRIEVE_GAME_DATA_PERMISSION = \"10.4\";\n\n static _SMS_CONTENT_SETTING_PERMISSION = \"11.1\";\n static _SMS_SETTING_PERMISSION = \"11.2\";\n //static _BONUS_SETTING_PERMISSION = \"11.3\";\n static _BANK_SETTING_PERMISSION = \"11.3\";\n static _REJECT_REASON_SETTING_PERMISSION = \"11.4\";\n // static _PRODUCT_SETTING_PERMISSION = \"11.5\";\n static _VIP_SETTING_PERMISSION = \"11.5\";\n //static _VIP_BENEFIT_TITLE_PERMISSION = \"11.8\";\n //static _VIP_BENEFIT_CONTENT_PERMISSION = \"11.9\";\n static _REMARK_SETTING_PERMISSION = \"11.6\";\n //static _TAG_SETTING_PERMISSION = \"11.11\";\n static _LANGUAGE_SETTING_PERMISSION = \"11.7\";\n // static _BONUS_TYPE_SETTING_PERMISSION = \"11.8\";\n static _MANAGE_COMMUNICATION_PERMISSION = \"11.8\";\n static _SYSTEM_SETTING_ACCESS = \"11.9\";\n static _RECURRING_JOB_PERMISSION = \"11.10\";\n //static _MANUAL_JOB_PERMISSION = \"11.17\";\n //static _SKIN_SETTING_PERMISSION = \"11.18\";\n //static _VIDEO_TUTORIAL_PERMISSION = \"11.19\";\n //static _BANK_PACKAGE_PERMISSION = \"11.20\";\n //static _BET_SETTING_PERMISSION = \"11.21\";\n //static _REBATE_SETTING_PERMISSION = \"11.22\";\n static _DEPOSIT_PROMOTION_PERMISSION = \"11.11\";\n static _WEEKLY_RESCUE_PERMISSION = \"11.12\";\n static _DEPOSIT_PROMOTION_CATEGORY_PERMISSION = \"11.13\";\n static _CHAT_SPHERE_PERMISSION = \"11.15\";\n static _CHAT_SPHERE_TYPE_PERMISSION = \"11.16\";\n // static _DAILY_CHECK_IN_PERMISSION = \"11.15\";\n static _CHAT_SPHERE_PHONE_NUMBER_PERMISSION = \"11.17\";\n\n //static _ANNOUNCEMENT_SETTING_PERMISSION = \"12.1\";\n static _BANNER_SETTING_PERMISSION = \"12.1\";\n //static _PROMOTION_SETTING_PERMISSION = \"12.3\";\n //static _SEO_SETTING_PERMISSION = \"12.4\";\n //static _SCRIPT_SETTING_PERMISSION = \"12.5\";\n static _EMAIL_SETTING_PERMISSION = \"12.2\";\n static _CONTENT_SETTING_PERMISSION = \"12.3\";\n // static _CONTACT_US_PERMISSION = \"12.4\";\n static _MARQUEE_TAG_CONTENT_PERMISSION = \"12.4\";\n //static _REWARD_BANNER_SETTING_PERMISSION = \"12.9\";\n //static _WEB_CONTENT_SETTING_PERMISSION = \"12.10\";\n static _MANAGE_WEB_CONTENT_SETTING_PERMISSION = \"12.11\";\n static _MARQUEE_TAG_CONTENT = \"12.12\";\n static _LIVE_MONITORING_PERMISSION = \"13.\";\n static _CHAT_SYSTEM_TEMPLATE_PERMISSION = \"12.15\";\n static _CHAT_CUSTOM_TEMPLATE_PERMISSION = \"12.16\";\n\n\n //static _REWARDS_PERMISSION = \"14.\";\n //static _NEW_PAGE_PERMISSION = \"14.5\";\n //static _REWARD_SCHEDULES = \"Reward Schedules\";\n //static _REWARD_SETTING = \"Reward Setting\";\n\n static _DC_ITEM_LIST_PERMISSION = \"14.1\";\n static _DC_REDEMPTION_PERMISSION = \"14.2\";\n static _DC_POINTS_PERMISSION = \"14.3\";\n static _MEMBER_DC_POINTS_PERMISSION = \"14.4\";\n static _DAILY_CHECK_IN_PERMISSION = \"14.3\";\n\n static _READ_PERMISSION_STRING = \"(READ)\";\n static _WRITE_PERMISSION_STRING = \"(WRITE)\";\n static _READ_BIT_POSITION = 1;\n static _WRITE_BIT_POSITION = 0;\n}\n\nexport class Transaction {\n static _BONUS_TYPE_SELF = \"Own\";\n static _BONUS_TYPE_OVERRIDE = \"Override\";\n}\n\nexport class ReadWritePermission {\n static _NO_PERMISSION = 0;\n static _READ_PERMISSION = 1;\n static _WRITE_PERMISSION = 2;\n static _ALL_PERMISSION = 3;\n}\n\n/// \n/// Author : -\n/// this value have to match with backend\n/// \nexport class DisplayMode {\n static _ALL = 3;\n static _PUBLIC = 2;\n static _MEMBER = 1;\n}\n\n/// \n/// Author : -\n/// this value have to match with backend\n/// \nexport class DisplayType {\n static _SLIDER = 2;\n static _POPUP = 1;\n}\n\n/// \n/// Author : -\n/// this value have to match with backend\n/// \nexport class DisplayDevice {\n static _DESKTOP_MAIN = 0;\n static _DESKTOP_SUB = 1;\n static _MOBILE_POPOUT = 2;\n static _MOBILE_SLIDER = 3;\n static _DESKTOP_POPUP = 4;\n}\n\n/// \n/// Author : -\n/// this value have to match with backend\n/// \nexport class Position {\n static _HEAD = 2;\n static _BODY = 1;\n}\n\n/// \n/// Author : -\n/// this value have to match with backend\n/// \nexport class PageTypeOption {\n static _COMPLETE_REGISTER = 3;\n static _FORGET_PASSWORD = 2;\n static _VERIFY_EMAIL = 1;\n static _FORGOT_PIN = 4;\n}\n\n/// \n/// Author : -\n/// this value have to match with backend\n/// \nexport class PaymentType {\n static _PREPAID = 2;\n static _POSTPAID = 1;\n}\n\n/// \n/// Author : -\n/// this value have to match with backend\n/// \nexport class Gender {\n static _MALE = 1;\n static _FEMALE = 0;\n}\n\n/// \n/// Author : -\n/// this value have to match with backend\n/// \nexport class BonusSettingType {\n static _MAIN = 2;\n static _SECONDARY = 1;\n}\n\n/// \n/// Author : -\n/// this value have to match with backend\n/// \nexport class BonusMethodType {\n static _PERCENT = 2;\n static _AMOUNT = 1;\n}\n\n/// \n/// Author : -\n/// \nexport class PanelType {\n static _MEMBERSITE = \"MemberSite\";\n static _MOBILESITE = \"MobileSite\";\n static _BACKOFFICE = \"BackOffice\";\n static _APPS = \"Apps\";\n static _SYSTEM = \"Systems\";\n}\n\n/// \n/// Author : -\n/// \nexport class TransactionType {\n static _DEPOSIT = 1;\n static _WITHDRAWAL = 2;\n static _BONUS = 3;\n static _ADJUSTMENT = 4;\n static _REBATE = 5;\n static _UPLINE_TRANSFER = 6;\n static _SHAREHOLDER_CLAIM = 7;\n static _REFUND = 8;\n //static _SHAREHOLDER = 9;\n static _COMMISSION = 9;\n static _BIRTHDAY_REWARD = 10;\n static _VIP_COMMISSION = 11;\n static _REFERRAL_BONUS = 12;\n static _WEEKLY_RESCUE_BONUS = 13;\n static _DAILY_CHECK_IN = 999;\n static _CREDIT_REDEMPTION = 14;\n}\n\n/// \n/// Author : -\n/// \nexport class SmsType {\n static _PHONE_VERIFICATION_TYPE = 1;\n static _RESET_PASSWORD_VEERIFICATION_TYPE = 2;\n static _DEPOSIT_TYPE = 3;\n static _WITHDRAWAL_TYPE = 4;\n static _PIN_RESET = 5;\n static _TAC_CODE = 6;\n}\n\n/// \n/// Author : -\n/// \nexport class TransactionStatus {\n static _OPEN = 0;\n static _IN_REVIEW = 1;\n static _IN_PROGRESS = 2;\n static _APPROVED = 3;\n static _REJECTED = 4;\n static _AUTO_APPROVED = 5;\n}\n\n/// \n/// Author : -\n/// \nexport class BonusTransactionMethod {\n static _WITH_DEPOSIT = 1;\n static _WITHOUT_DEPOSIT = 0;\n}\n\n/// \n/// Author : -\n/// \nexport class BankTransactionType {\n static _CREDIT_BANK_TRANSACTION = 1;\n static _DEBIT_BANK_TRANSACTION = 2;\n}\n\n/// \n/// Author : -\n/// \nexport class BetStatus {\n static _PENDING_BET_STATUS = 0;\n static _SETTLED_BET_STATUS = 1;\n static _CANCELED_BET_STATUS = 2;\n}\n\n/// \n/// Author : -\n/// \nexport class Language {\n static _ENGLISH = \"en\";\n static _KHMER = \"kh\"\n}\n\n/// \n/// Author : -\n/// \nexport class LanguageKey {\n static _PRIMARY = \"common\";\n}\n\n/// \n/// Author : -\n/// \nexport class BankingChannel {\n static _CHANNEL_OFFLINE_BANKING = 1;\n static _CHANNEL_PAYTRUST = 2;\n static _CHANNEL_GPAY = 3;\n}\n\nexport class BankingChannelName {\n static _CHANNEL_PAYTRUST = \"PayTrust\";\n}\n\n/// \n/// Author : -\n/// \nexport class SessionKey {\n static _Language = \"language\";\n}\n\n/// \n/// Author: -\n/// \nexport class AlertTypes {\n static _DEFAULT = 'default';\n static _INFO = 'info';\n static _SUCCESS = 'success';\n static _WARNING = 'warning';\n static _DANGER = 'danger';\n static _ERROR = 'error';\n static _INPUT = 'input';\n static _CUSTOM = 'custom';\n}\n\n/// \n/// Author : -\n/// \nexport class ContentTypeString {\n static _ANNOUNCEMENT = \"Announcement\";\n static _BANNER = \"Banner\";\n static _REWARD_BANNER = \"RewardBanner\";\n static _PROMOTION = \"Promotion\";\n static _SEO = \"SEO\";\n static _SCRIPT = \"Script\";\n static _EMAIL = \"Email\";\n static _CONTENT = \"ContentTemplate\";\n static _BONUS = \"Bonus\";\n static _VIP_BENEFIT = \"VipBenefit\";\n static _VIP_BENEFIT_CONTENT = \"VipBenefitContent\";\n static _VIP_CRITERIA = \"VipCriteria\";\n static _PRODUCT_CATEGORY = \"ProductCategory\";\n static _VIDEO_TUTORIAL = \"VideoTutorial\";\n static _MARQUEE_CONTENT = \"MarqueeContent\";\n static _DEPOSIT_PROMOTION = \"DepositPromotion\";\n static _DCITEM_CONTENT = \"MarqueeContent\";\n static _DEPOSIT_PROMOTION_CATEGORY = \"DepositPromotionCategory\";\n static _CHAT_SPHERE = \"ChatSphere\";\n}\n\n/// \n/// Author : -\n/// \nexport class AllVipOption {\n static _VALUE = 0;\n static _LABEL = \"ALL\";\n}\n\n/// \n/// Author : -\n/// \nexport class TransactionPriority {\n static _NO = 0;\n static _YES = 1;\n static _FIRST_PRIORITY = 2;\n}\n\n/// \n/// Author: -\n/// \nexport class LoginType {\n static _LOGIN_TYPE_USER = 1;\n static _LOGIN_TYPE_MEMBER = 2;\n}\n\nexport const _TICKET_STATUS = [\n { value: \"\", label: \"ALL\" },\n { value: \"0\", label: \"PENDING\" },\n { value: \"1\", label: \"SETTLED\" },\n { value: \"2\", label: \"CANCELLED\" }\n];\n\nexport const _SYNC_INTERVAL_PATTERN = [\n { value: 0, label: \"Inactive\" },\n { value: 1, label: \"Full\" },\n { value: 2, label: \"Pending & Cancelled\" },\n { value: 3, label: \"Settled\" }\n];\n\nexport const _TRANSACTION_STATUS = [\n { value: \"0\", label: \"ALL\" },\n { value: \"1\", label: \"SUCCESSFUL\" },\n { value: \"2\", label: \"FAILED\" }\n];\n\nexport const _WALLET_GAME_TRANSACTION_TYPE = [\n { value: \"0\", label: \"ALL\" },\n { value: \"1\", label: \"TO GAME\" },\n { value: \"2\", label: \"TO WALLET\" }\n];\n\n/// \n/// Author : -\n/// \nexport class ChatSphereAction {\n static _REGISTERATION = \"Registration\";\n static _RESET_PASSWORD = \"Reset Password\";\n}\n\nexport const DEFAULT_PAGE_SIZE = 100;\n\nexport class AdjustmentTransactionTarget {\n static _PRIMARY_CREDIT = 1;\n static _BONUS_WALLET = 2;\n}\n\n\n\n","import React from 'react';\nimport { Dropdown, DropdownToggle, DropdownMenu, DropdownItem } from 'reactstrap';\nimport { ApiKey, ApiUrl } from \"../../../util/Constant\";\n\nclass DropdownNotification extends React.Component {\n constructor(props) {\n super(props);\n\n this.toggle = this.toggle.bind(this);\n this.state = {\n dropdownOpen: false,\n };\n }\n\n toggle() {\n this.setState(prevState => ({\n dropdownOpen: !prevState.dropdownOpen\n }));\n\n if (!this.state.dropdownOpen) {\n fetch(ApiUrl._API_READ_NOTIFICATION, {\n method: ApiKey._API_GET,\n headers: {\n \"Accept\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n }\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n this.props.readNotification();\n }\n });\n }\n }\n\n render() {\n return (\n \n \n \n {\n this.props.notifications.filter(n => !n.isRead).length > 0 && \n {this.props.notifications.filter(n => !n.isRead).length}\n }\n \n \n NOTIFICATIONS ({this.props.notifications.filter(n => !n.isRead).length})\n {\n this.props.notifications.map((notif) => {\n return \n
\n
{notif.title}
\n

{notif.description}

\n
{notif.createdDateTime}
\n
\n
\n })\n }\n
\n
\n );\n }\n};\n\nexport default DropdownNotification;\n","import { fetch } from 'whatwg-fetch';\n/// \n/// Author : -\n/// To Check if it is empty or null string\n/// \nexport function stringIsNullOrEmpty(data) {\n return data == null || data == '';\n}\n\n/// \n/// Author : -\n/// Convert array into form that use to post data\n/// \nexport function createFormBody(params) {\n let formBody = [];\n\n for (let property in params) {\n let encodedKey = encodeURIComponent(property);\n let encodedValue = encodeURIComponent(params[property]);\n formBody.push(encodedKey + \"=\" + encodedValue);\n }\n\n formBody = formBody.join(\"&\");\n return formBody;\n}\n\n/// \n/// Author : -\n/// Convert array into form that use to post data\n/// \nexport function createMultiPartFormBody(params) {\n var formBody = new FormData();\n\n for (const [key, value] of Object.entries(params)) {\n formBody.append(key, value);\n }\n\n return formBody;\n}\n\n/// \n/// Author : -\n/// Used to Navigation to certain path\n/// \nexport function navigateTo(history, url, state) {\n if (state !== undefined) {\n history.push({\n pathname: url,\n state: state\n });\n }\n else {\n history.push(url);\n }\n}\n\n/// \n/// Author : -\n/// Used to Navigate to previous path\n/// \nexport function navigateBack(history) {\n history.goBack();\n}\n\n/// \n/// Author : -\n/// \nexport const dataTableFilterCaseInsensitive = (filter, row) => {\n const id = filter.pivotId || filter.id;\n if (row[id] !== null && typeof row[id] === 'string') {\n return (\n row[id] !== undefined ?\n String(row[id].toLowerCase()).startsWith(filter.value.toLowerCase()) : true\n )\n }\n else {\n return (\n String(row[filter.id]) === filter.value\n )\n }\n}\n\n/// \n/// Author : -\n/// \nexport function numberWithCommas(x) {\n return x.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\n/// \n/// Author : \n/// \nexport function numberWithCurrencyFormat(value, decimal = 2, force = false) {\n const CURRENCY_DECIMAL = 2;\n var convertedNumber = parseFloat((Math.round((value + Number.EPSILON) * Math.pow(10, decimal))) / Math.pow(10, decimal)).toFixed(decimal).toString().replace(/\\d(?=(\\d{3})+\\.)/g, '$&,');\n\n if (decimal > CURRENCY_DECIMAL) {\n let afterDecimalNumber = convertedNumber.split('.');\n let decimalDiff = decimal - CURRENCY_DECIMAL;\n if (afterDecimalNumber.length == 2 && convertedNumber.lastIndexOf('0') == (convertedNumber.length - 1)) {\n let processNumber = afterDecimalNumber[1];\n let beginNumber = !force ? processNumber.length - 1 : processNumber;\n for (let i = beginNumber; (i > 0 && decimalDiff > 0); i--) {\n if (processNumber.charAt(i) == '0') {\n processNumber = processNumber.substr(0, i) + processNumber.substr(i + 1);\n }\n else {\n break;\n }\n decimalDiff--;\n }\n convertedNumber = afterDecimalNumber[0] + \".\" + processNumber;\n }\n }\n\n return convertedNumber\n}\n\n/// \n/// Author : -\n/// \nexport async function imagePathToFileObject(imagePath) {\n const response = await fetch(imagePath);\n const blob = await response.blob();\n const file = new File([blob], imagePath);\n return file;\n}\n\n/// \n/// Author: -\n/// \nexport function isObjectEmpty(data) {\n return Object.keys(data).length === 0;\n}","import React, { useState, useEffect } from 'react';\nimport Select from 'react-select';\nimport { useTranslation } from 'react-i18next';\nimport { SessionKey } from \"../../../util/Constant\";\nimport { stringIsNullOrEmpty } from '../../../util/Util';\nimport { useSelector } from 'react-redux';\n\n/// \n/// Author : -\n/// \nconst DropdownLanguage = props => {\n const { i18n } = useTranslation();\n const [selectedLanguage, setSelectedLanguage] = useState(i18n.language);\n const [options, setOptions] = useState([]);\n const languageState = useSelector(state => state.languageState);\n /// \n /// Author : -\n /// \n useEffect(() => {\n let languageOptions = [];\n languageState.languages.map((language, index) => {\n languageOptions.push({ value: language.code, label:
{language.name}
});\n });\n\n setOptions(languageOptions);\n let selectedLanguage = languageState.languages.find(language => language.code == i18n.language)\n\n if (stringIsNullOrEmpty(selectedLanguage) && languageState.languages.length > 0) {\n handleLanguageChange({ value: languageState.languages[0].code });\n }\n }, [languageState.languages]);\n\n const customStyles = {\n menuList: (provided, state) => ({\n ...provided,\n paddingTop: 0,\n paddingBottom: 0,\n }),\n menu: base => ({\n ...base,\n marginTop: 0\n })\n }\n\n /// \n /// Author: -\n /// \n const handleLanguageChange = (e) => {\n setSelectedLanguage(e.value);\n i18n.changeLanguage(e.value);\n sessionStorage.setItem(SessionKey._Language, e.value);\n }\n\n return (\n
  • \n option.value == selectedLanguage)}\n onChange={handleLanguageChange}\n options={options}\n className={\"lang-selector\"}\n isSearchable={false}\n components={{ DropdownIndicator: () => null, IndicatorSeparator: () => null }}\n styles={customStyles}\n />\n
  • \n );\n}\n\nexport default DropdownLanguage;\n","import i18n from \"i18next\";\nimport { initReactI18next } from \"react-i18next\";\n\nimport { Language, SessionKey } from \"./util/Constant\";\n\nimport common_en from \"./translations/en/common.json\";\nimport common_kh from \"./translations/kh/common.json\";\n\nconst _resources = {};\n\n_resources[Language._ENGLISH] = { common: common_en };\n_resources[Language._KHMER] = { common: common_kh };\n\ni18n\n .use(initReactI18next) // passes i18n down to react-i18next\n .init({\n debug: false,\n resources: _resources,\n lng: sessionStorage.getItem(SessionKey._Language) || Language._DEFAULT,\n fallbackLng: [Language._DEFAULT, Language._ENGLISH, Language._KHMER],\n keySeparator: false,\n\n interpolation: {\n escapeValue: false // react already safes from xss\n }\n });\n\nexport default i18n;","import i18n from '../i18n';\nexport const _BUSY = 'busy';\nexport const _IDLE = 'idle';\nexport const _MEMBER_SEARCH = '';\n\nexport const _ALERT_TYPES = {\n SUCCESS: 'success',\n ERROR: 'error',\n NONE: 'none'\n};\n\n/// \n/// Author : -\n/// \nexport const setBusy = (message) => {\n return async dispatch => {\n dispatch({\n type: _BUSY,\n message: message\n });\n }\n}\n\n/// \n/// Author : -\n/// this function is to only update user status to logout\n/// \nexport const setIdle = () => {\n return async dispatch => {\n dispatch({\n type: _IDLE\n });\n }\n}\n\n/// \n/// Author: -\n/// \n// decide to pop up as success / error type alert will depend on response status\nexport const showMessage = (responseStatus, responseMessage, disabledTranslate = false) => {\n return async dispatch => {\n dispatch({\n type: responseStatus == true ? _ALERT_TYPES.SUCCESS : _ALERT_TYPES.ERROR,\n message: disabledTranslate ? responseMessage:i18n.t(responseMessage)\n });\n }\n}\n\n/// \n/// Author: -\n/// \n// close pop up\nexport const disposeMessage = () => {\n return async dispatch => {\n dispatch({\n type: _ALERT_TYPES.NONE\n });\n }\n}\n\n/// \n/// Author: -\n/// \n// maintain member search\nexport const setMemberSearch = (search) => {\n return async dispatch => {\n dispatch({\n type: _MEMBER_SEARCH,\n value: search\n });\n }\n}","import appsettings from \"../appsettings-fe.json\";\nimport firebase from \"firebase\";\nimport { createFormBody } from \"../util/Util\";\nimport { ApiUrl, ApiKey } from \"../util/Constant\";\n\nconst _FIREBASE_CONFIG = {\n appId: appsettings.ApplicationConfig.firebaseAppId,\n apiKey: appsettings.ApplicationConfig.firebaseApiKey,\n messagingSenderId: appsettings.ApplicationConfig.firebaseMessagingSenderId,\n projectId: appsettings.ApplicationConfig.firebaseProjectId,\n};\n\nexport const _INIT_CONFIG = \"initConfig\";\nexport const _UPDATE_CONTENT = \"updateContent\";\nexport const _CLEAR_MESSAGE = \"clearMessage\";\n\nexport function initFirebase() {\n return async (dispatch) => {\n if (!firebase.apps.length) {\n firebase.initializeApp(_FIREBASE_CONFIG);\n }\n\n var deviceToken = \"\";\n\n try {\n navigator.serviceWorker\n .register(\"/firebase-messaging-sw.js\")\n .then((registration) => {\n const messaging = firebase.messaging();\n\n messaging\n .requestPermission()\n .then(function (permission) {\n return messaging.getToken();\n })\n .then(function (token) {\n deviceToken = token;\n\n fetch(ApiUrl._API_UPDATE_DEVICE_TOKEN, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: createFormBody({\n deviceToken: deviceToken,\n }),\n });\n\n messaging.onMessage(async (payload) => {\n dispatch({\n type: _UPDATE_CONTENT,\n dataContent: payload.data,\n });\n });\n })\n .catch((err) => {\n console.error(err);\n });\n });\n } catch (error) {\n console.error(error);\n }\n\n dispatch({\n type: _INIT_CONFIG,\n });\n };\n}\n\nexport const clearMessage = () => {\n return async (dispatch) => {\n dispatch({\n type: _CLEAR_MESSAGE,\n });\n };\n};\n","import { createFormBody } from \"../util/Util\";\nimport { ApiKey, ApiUrl } from \"../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"./AppAction\";\nimport { initFirebase } from '../redux/FirebaseAction';\nimport i18n from '../i18n';\nimport { fetch } from 'whatwg-fetch';\n\nexport const _LOGIN_SUCCESS = 'LoginSuccess';\nexport const _LOGIN_FAILED = 'LoginFailed';\nexport const _LOGOUT = 'Logout';\n\n/// \n/// Author : -\n/// expose login action as function to be called from classes\n/// \nexport function performLogin(username, password, isUser = true, companyCode) {\n return async dispatch => {\n dispatch({\n type: _LOGOUT\n });\n\n let params = {\n \"username\": username,\n \"password\": password,\n \"isUser\": isUser,\n \"companyCode\": companyCode\n };\n\n let formBody = createFormBody(params);\n dispatch(setBusy());\n const response = await fetch(ApiUrl._API_LOGIN, {\n method: ApiKey._API_POST,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n body: formBody\n });\n\n const responseJson = await response.json();\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n var userData = responseJson[ApiKey._API_DATA_KEY];\n dispatch({\n type: _LOGIN_SUCCESS,\n userData: userData,\n });\n\n dispatch(initFirebase());\n }\n else {\n dispatch({\n type: _LOGIN_FAILED,\n message: responseJson[ApiKey._API_MESSAGE_KEY],\n });\n dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], i18n.t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n dispatch(setIdle());\n }\n}\n\n/// \n/// Author : -\n/// this function is to only update user status to login if it is already considered authenticated in cookie\n/// \nexport const updateLoginUser = (userData) => {\n return async dispatch => {\n dispatch(initFirebase());\n dispatch({\n type: _LOGIN_SUCCESS,\n userData: userData\n });\n }\n}\n\n/// \n/// Author : -\n/// expose logout action as function to be called from classes\n/// \nexport const performLogout = () => {\n return async dispatch => {\n const response = await fetch(ApiUrl._API_LOGOUT, {\n method: ApiKey._API_POST,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n }\n });\n\n await response.json();\n\n dispatch({\n type: _LOGOUT\n });\n }\n}\n\n/// \n/// Author : -\n/// this function is to only update user status to logout\n/// \nexport const resetLogin = () => {\n return async dispatch => {\n dispatch({\n type: _LOGOUT\n });\n }\n}","import React, { useState } from 'react';\nimport { Dropdown, DropdownToggle, DropdownMenu, DropdownItem } from 'reactstrap';\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { performLogout } from \"../../../redux/AuthAction.js\";\nimport { withRouter } from 'react-router';\nimport { WebUrl, Role, LanguageKey, LoginType } from \"../../../util/Constant\";\nimport { useHistory } from 'react-router-dom';\nimport { useTranslation } from 'react-i18next';\n\n/// \n/// Author : -\n/// \nconst DropdownProfile = props => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [dropdownOpen, setDropdownOpen] = useState(false);\n\tconst _history = useHistory();\n\tconst _userData = useSelector(state => state.authState.userData);\n\tconst _dispatch = useDispatch();\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggle = () => {\n\t\tsetDropdownOpen(!dropdownOpen);\n\t}\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{_userData.username} \n\t\t\t\n\t\t\t\n\t\t\t\t{_userData.loginType == LoginType._LOGIN_TYPE_USER && <> _history.push(_userData.userRoleId == Role._SUPER_COMPANY ? WebUrl._URL_SUPER_ACCOUNT : WebUrl._URL_COMPANY_PROFILE)}>{t(\"EDIT_PROFILE\")}\n\t\t\t\t _history.push(WebUrl._URL_CHANGE_PASSWORD)}>{t(\"CHANGE_PASSWORD\")}\n\t\t\t\t _history.push(WebUrl._URL_CHANGE_PIN_NUMBER)}>{t(\"CHANGE_PIN_NUMBER\")}\n\t\t\t\t
    }\n\t\t\t\t _dispatch(performLogout())}>{t(\"LOGOUT\")}\n\t\t\t
    \n\t\t
    \n\t);\n}\n\nexport default withRouter(DropdownProfile);\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { UncontrolledDropdown, DropdownToggle, DropdownMenu, DropdownItem, Collapse } from 'reactstrap';\n\nclass DropdownMegaMenu extends React.Component {\n\trender() {\n\t\treturn (\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t)\n\t}\n}\n\nexport default DropdownMegaMenu;\n","import React from \"react\";\nimport { Link } from \"react-router-dom\";\nimport DropdownNotification from \"./dropdown/notification.jsx\";\nimport DropdownLanguage from \"./dropdown/language.jsx\";\nimport DropdownProfile from \"./dropdown/profile.jsx\";\nimport DropdownMegaMenu from \"./dropdown/mega.jsx\";\nimport { PageSettings } from \"./../../config/page-settings.js\";\nimport \"../../assets/css/custom.css\";\nimport { fetch } from \"whatwg-fetch\";\nimport { ApiKey, ApiUrl, WebUrl } from \"../../util/Constant\";\nimport { connect } from \"react-redux\";\nimport { clearMessage } from \"../../redux/FirebaseAction\";\nimport { ToastContainer } from \"react-toastify\";\nimport notificationSound from \"../../assets/notification.mp3\";\nimport Icon from \"@mdi/react\";\nimport { mdiCircleSlice8 } from \"@mdi/js\";\nimport DND_ACTIVE from \"./../../assets/img/dnd-active.svg\";\nimport DND_INACTIVE from \"./../../assets/img/dnd-inactive.svg\";\n\nclass Header extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.audio = new Audio(notificationSound);\n\t\tthis.toggleMegaMenu = this.toggleMegaMenu.bind(this);\n\t\tthis.state = {\n\t\t\tsoundPlayed: false,\n\t\t\tcollapseMegaMenu: false,\n\t\t\tdoNotDisturb: window.sessionStorage.getItem(\"doNotDisturb\"),\n\t\t\tnotifications: [],\n\t\t};\n\t\tthis.checkPendingDeposit = this.checkPendingDeposit.bind(this);\n\t}\n\n\ttoggleMegaMenu() {\n\t\tthis.setState({ collapseMegaMenu: !this.state.collapseMegaMenu });\n\t}\n\n\tgetRecentNotification = () => {\n\t\tif (!window.location.pathname.match(/login/)) {\n\t\t\tfetch(ApiUrl._API_GET_RECENT_NOTIFICATIONS, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\tAccept: ApiKey._API_APPLICATION_JSON,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tnotifications: responseJson[ApiKey._API_DATA_KEY],\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t};\n\n\tgetRecentNotification = () => {\n\t\tif (!window.location.pathname.match(/login/)) {\n\t\t\tfetch(ApiUrl._API_GET_RECENT_NOTIFICATIONS, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\tAccept: ApiKey._API_APPLICATION_JSON,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tthis.setState({\n\t\t\t\t\t\t\tnotifications: responseJson[ApiKey._API_DATA_KEY],\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t};\n\n\ttoggleNotificationSound = (data) => {\n\t\tif (!this.state.doNotDisturb) {\n\t\t\tif (data > 0) {\n\t\t\t\tthis.audio.loop = true;\n\t\t\t\tthis.audio.play();\n\t\t\t\tthis.state.soundPlayed = true;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.audio.loop = false;\n\t\t\tthis.audio.pause();\n\t\t\tthis.state.soundPlayed = false;\n\t\t}\n\t};\n\n\tcheckPendingDeposit() {\n\t\tif (\n\t\t\twindow.location.pathname !== \"/login\" &&\n\t\t\twindow.location.pathname !== \"/liveMonitor\" &&\n\t\t\twindow.location.pathname !== \"/sportsLiveMonitor\"\n\t\t) {\n\t\t\tfetch(ApiUrl._API_CHECK_PENDING_DEPOSIT, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\tAccept: ApiKey._API_APPLICATION_JSON,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tthis.toggleNotificationSound(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\tfetch(ApiUrl._API_CHECK_PENDING_POINTS_REDEMPTION, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\tAccept: ApiKey._API_APPLICATION_JSON,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tthis.toggleNotificationSound(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t}\n\n\ttoggleDND() {\n\t\tif (this.state.doNotDisturb) {\n\t\t\t//turn off doNotDisturb\n\t\t\twindow.sessionStorage.setItem(\"doNotDisturb\", false);\n\t\t\tthis.audio.loop = true;\n\t\t\tthis.audio.play();\n\t\t\tthis.state.soundPlayed = true;\n\t\t} else {\n\t\t\t//turn on doNotDisturb\n\t\t\twindow.sessionStorage.setItem(\"doNotDisturb\", true);\n\t\t\tthis.audio.loop = false;\n\t\t\tthis.audio.pause();\n\t\t\tthis.state.soundPlayed = false;\n\t\t}\n\t\tthis.setState({ doNotDisturb: !this.state.doNotDisturb });\n\t}\n\n\tcomponentDidUpdate() {\n\t\tif (this.props.firebaseState.dataContent != null) {\n\t\t\tthis.getRecentNotification();\n\t\t\tthis.checkPendingDeposit();\n\t\t\tthis.props.clearMessage();\n\t\t}\n\t}\n\n\tcomponentDidMount() {\n\t\tthis.getRecentNotification();\n\t\tthis.checkPendingDeposit();\n\t\tvar intervalId = setInterval(this.checkPendingDeposit, 180000);\n\t\tthis.setState({ intervalId: intervalId });\n\t}\n\n\tcomponentWillUnmount() {\n\t\tclearInterval(this.state.intervalId);\n\t\tthis.audio.loop = false;\n\t\tthis.audio.pause();\n\t\tthis.state.soundPlayed = false;\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t\n\t\t\t\t{({\n\t\t\t\t\ttoggleMobileSidebar,\n\t\t\t\t\ttoggleRightSidebar,\n\t\t\t\t\ttoggleMobileRightSidebar,\n\t\t\t\t\ttoggleMobileTopMenu,\n\t\t\t\t\tpageHeaderLanguageBar,\n\t\t\t\t\tpageHeaderMegaMenu,\n\t\t\t\t\tpageTwoSidebar,\n\t\t\t\t\tpageTopMenu,\n\t\t\t\t\tpageSidebar,\n\t\t\t\t}) => (\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{pageTwoSidebar && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t COMMAND CENTER\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t{pageHeaderMegaMenu && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{pageTopMenu && pageSidebar && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{!pageSidebar && pageTopMenu && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{pageSidebar && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t{pageHeaderMegaMenu && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t{!this.state.doNotDisturb && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t);\n\t}\n}\n\nconst mapStateToProps = (state) => ({\n\t...state,\n});\n\nexport default connect(mapStateToProps, {\n\tclearMessage: clearMessage,\n})(Header);\n","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport { PageSettings } from './../../config/page-settings.js';\nimport { connect } from \"react-redux\";\nimport { WebUrl, Role, LoginType } from \"../../util/Constant\";\n\nclass SidebarProfile extends React.Component {\n\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tprofileActive: 0\n\t\t};\n\t\tthis.handleProfileExpand = this.handleProfileExpand.bind(this);\n\t}\n\n\thandleProfileExpand(e) {\n\t\te.preventDefault();\n\t\tthis.setState(state => ({\n\t\t\tprofileActive: !this.state.profileActive,\n\t\t}));\n\t}\n \n render() {\n\t\treturn (\n\t\t\t\n\t\t\t\t{({pageSidebarMinify}) => (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\n\t\t)\n\t}\n}\n\nconst mapStateToProps = state => ({\n ...state\n});\n\nexport default connect(\n mapStateToProps,\n null\n)(SidebarProfile);","import { WebUrl, AccessRight } from \"../../util/Constant\";\n\n/// \n/// Author : -\n/// \nconst Menu = [\n {\n path: '/dailytask', title: 'DAILY_TASKS', numberLabel: \"\", isDummy: true,\n children: [\n { path: WebUrl._URL_BIRTHDAY_REWARDS, title: 'VIP_BIRTHDAY_BONUS', numberLabel: \"2.13 \", permission: AccessRight._MANAGE_BIRTHDAY_REWRDS + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MEMBER_REBATE, title: 'VIP_COMMISSION', numberLabel: \"2.14 \", permission: AccessRight._MANAGE_BIRTHDAY_REWRDS + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MEMBER_WEEKLY_RESCUE, title: 'VIP_WEEKLY_RESCUE_BONUS', numberLabel: \"2.15 \", permission: AccessRight._MANAGE_MEMBER_WEEKLY_RESCUE + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MEMBER_GAME_POINTS, title: 'MEMBER_GAME_POINTS', numberLabel: \"2.16 \", permission: AccessRight._MANAGE_MEMBER_GAME_POINTS + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SHAREHOLDERS_PROCESS, title: 'SHAREHOLDERS_PROCESS', numberLabel: \"3.4 \", permission: AccessRight._SHAREHOLDER_PROCESS_SHARE_SALES_PERMISSION + AccessRight._READ_PERMISSION_STRING }, \n { path: WebUrl._URL_MANAGE_DC_REDEMPTION, title: 'REDEMPTIONS', numberLabel: \"14.2 \", permission: AccessRight._DC_REDEMPTION_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_MLM_COMMISSION, title: 'COMMISSION_AND_REBATE', numberLabel: \"2.18 \", permission: AccessRight._GENERATE_COMMISSION_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n\n\n ]\n },\n { \n\n path: WebUrl._URL_CHAT_ROOM, title: 'LIVECHAT', numberLabel: \"0.0\", permission: AccessRight._LIVE_CHAT_PERMISSION + AccessRight._READ_PERMISSION_STRING \n },\n {\n path: WebUrl._URL_DASHBOARD, title: 'DASHBOARD', numberLabel:\"1. \", isDummy: false, permission: AccessRight._DASHBOARD_DETAILS_PERMISSION + AccessRight._READ_PERMISSION_STRING\n },\n {\n path: WebUrl._URL_MANAGE_COMPANY, title: 'COMPANY', numberLabel: \"99. \", isDummy: false, permission: AccessRight._COMPANY_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING\n },\n {\n path: '/account', title: 'MANAGE_MEMBERS', numberLabel: \"2. \", isDummy: true,\n children: [\n { path: WebUrl._URL_MANAGE_MEMBER, title: 'MANAGE_ACCOUNTS', numberLabel: \"2.1 \", permission: AccessRight._MEMBER_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_MEMBER_PRODUCT_USERNAME, title: 'MANAGE_MEMBER_PRODUCT_USERNAME', numberLabel: \"2.2 \", permission: AccessRight._MEMBER_PRODUCT_USERNAME_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MEMBER_REPORT, title: 'MEMBER_REPORT_TITLE', numberLabel: \"2.3 \", permission: AccessRight._MEMBER_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_IP_BLOCK, title: 'MANAGE_IP_BLOCK', numberLabel: \"2.4 \", permission: AccessRight._MANAGE_IP_BLOCK_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_MEMBER_WALLET_STATEMENT, title: 'MEMBER_WALLET_STATEMENT', numberLabel: \"2.5 \", permission: AccessRight._MEMBER_WALLET_STATEMENT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_TODAY_NEW_MEMBERS, title: 'NEW_MEMBERS_7_DAYS', numberLabel: \"2.6 \", permission: AccessRight._NEW_MEMBER_LIST_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_TRANSFER_LOG, title: 'TRANSFER_LOG', numberLabel: \"2.7 \", permission: AccessRight._TRANSFER_LOG_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n //{ path: WebUrl._URL_MANAGE_WALLET_REPORT, title: 'WALLET_TRANSFER_REPORT', numberLabel: \"2.8 \", permission: AccessRight._WALLET_TRANSFER_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_BET_DETAIL_REPORT, title: 'BET_DETAIL_REPORT_TITLE', numberLabel: \"2.8 \", permission: AccessRight._BET_DETAIL_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_TRANSACTION_QUEUE, title: 'MANAGE_TRANSACTION_QUEUE', numberLabel: \"2.9 \", permission: AccessRight._TRANSACTION_QUEUE_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_MEMBER_PO, title: 'MANAGE_ACCOUNTS_PO', numberLabel: \"2.10 \", permission: AccessRight._MANAGE_MEMBER_PO_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_MEMBER_CS, title: 'MANAGE_ACCOUNTS_CS', numberLabel: \"2.11 \", permission: AccessRight._MANAGE_MEMBER_CS_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_MANAGE_MEMBER_WALLET_STATEMENT_RECON, title: 'MEMBER_WALLET_STATEMENT_RECON', numberLabel: \"2.12 \", permission: AccessRight._MEMBER_WALLET_STATEMENT_RECON_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_MOBILE_TAC, title: 'MANAGE_MOBILE_TAC', numberLabel: \"2.12 \", permission: AccessRight._MANAGE_MOBILE_TAC_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_BIRTHDAY_REWARDS, title: 'VIP_BIRTHDAY_BONUS', numberLabel: \"2.13 \", permission: AccessRight._MANAGE_BIRTHDAY_REWRDS + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MEMBER_REBATE, title: 'VIP_COMMISSION', numberLabel: \"2.14 \", permission: AccessRight._MANAGE_BIRTHDAY_REWRDS + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MEMBER_WEEKLY_RESCUE, title: 'VIP_WEEKLY_RESCUE_BONUS', numberLabel: \"2.15 \", permission: AccessRight._MANAGE_MEMBER_WEEKLY_RESCUE + AccessRight._READ_PERMISSION_STRING }, \n { path: WebUrl._URL_MEMBER_GAME_POINTS, title: 'MEMBER_GAME_POINTS', numberLabel: \"2.16 \", permission: AccessRight._MANAGE_MEMBER_GAME_POINTS + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_MEMBER_BANK_ACCOUNT, title: 'MANAGE_MEMBER_BANK_ACCOUNT', numberLabel: \"2.17 \", permission: AccessRight._MANAGE_MEMBER_BANK_ACCOUNT + AccessRight._READ_PERMISSION_STRING },\n ]\n },\n {\n path: '/shareholder', title: 'SHAREHOLDERS_LIST', numberLabel: \"3. \", isDummy: true, permission: AccessRight._SHAREHOLDER_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n children: [\n { path: WebUrl._URL_SHAREHOLDERS_LIST, title: 'SHAREHOLDERS', numberLabel: \"3.1 \", permission: AccessRight._SHAREHOLDER_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SHAREHOLDERS_PRODUCTS, title: 'SHAREHOLDERS_PRODUCTS', numberLabel: \"3.2 \", permission: AccessRight._SHAREHOLDER_PRODUCT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_SHAREHOLDERS_PROCESS_HUAT_TICKET, title: 'SHAREHOLDERS_PROCESS_HUAT_TICKET', numberLabel: \"3.3 \", permission: AccessRight._SHAREHOLDER_ADD_HUAT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SHAREHOLDERS_PROCESS, title: 'SHAREHOLDERS_PROCESS', numberLabel: \"3.3 \", permission: AccessRight._SHAREHOLDER_PROCESS_SHARE_SALES_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SHAREHOLDERS_REPORT, title: 'SHAREHOLDERS_REPORT', numberLabel: \"3.4 \", permission: AccessRight._SHAREHOLDER_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SHAREHOLDERS_DOWNLINE_REPORT, title: 'SHAREHOLDERS_DOWNLINE_REPORT', numberLabel: \"3.5 \", permission: AccessRight._SHAREHOLDER_DOWNLINE_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_SHAREHOLDERS_UNCLAIMED_REPORT, title: 'SHAREHOLDER_UNCLAIM_REPORT', numberLabel: \"3.7 \", permission: AccessRight._SHAREHOLDER_UNCLAIMED_SALES_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SHAREHOLDERS_UNCLAIMED_REPORT_LIST, title: 'SHAREHOLDER_UNCLAIM_REPORT_LIST', numberLabel: \"3.6 \", permission: AccessRight._SHAREHOLDER_UNCLAIMED_SALES_LIST_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_TOTAL_SHARE_PAYOUT_REPORT, title: 'TOTAL_SHARE_PAYOUT_REPORT', numberLabel: \"3.7 \", permission: AccessRight._SHAREHOLDER_SHARE_PAYOUT_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n ]\n },\n {\n path: '/transaction', title: 'ONLINE_BANKING', numberLabel: \"4. \", isDummy: true,\n children: [\n // { path: WebUrl._URL_TNG_SETTINGS, title: 'TNG_SETTINGS', numberLabel: \"4.1 \", permission: AccessRight._TNG_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_TRANSACTION_ENQUIRY, title: 'TRANSACTION_ENQUIRY_TITLE', numberLabel: \"4.1 \", permission: AccessRight._TRANSACTION_ENQUIRY_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_BANK_SUMMARY_REPORT, title: 'BANK_SUMMARY_REPORT_TITLE', numberLabel: \"4.2 \", permission: AccessRight._BANK_SUMMARY_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_DEPOSIT, title: 'DEPOSIT', numberLabel: \"4.3 \", permission: AccessRight._DEPOSIT_TRANSACTION_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_WITHDRAWAL, title: 'WITHDRAWAL', numberLabel: \"4.4 \", permission: AccessRight._WITHDRAWAL_TRANSACTION_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_WITHDRAWAL_SETTINGS, title: 'WITHDRAWAL_SETTING', numberLabel: \"4.5 \", permission: AccessRight._WITHDRAWAL_SETTINGS_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_BANK_ACCOUNT, title: 'BANK_ACCOUNTS', numberLabel: \"4.5 \", permission: AccessRight._BANK_ACCOUNT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n //{ path: WebUrl._URL_DEPOSIT_REFERENCE, title: 'DEPOSIT_REFERENCE', numberLabel: \"4.9 \", permission: AccessRight._DEPOSIT_REFERENCE_PERMISSION + AccessRight._READ_PERMISSION_STRING }\n { path: WebUrl._URL_BONUS_DEPOSIT, title: 'BONUS_DEPOSIT', numberLabel: \"4.6 \", permission: AccessRight._BONUS_DEPOSIT_PERMISSION + AccessRight._READ_PERMISSION_STRING }\n ]\n },\n {\n path: '/paymentgateway', title: 'PAYMENT_GATEWAY', numberLabel: \"5. \", isDummy: true,\n children: [\n { path: WebUrl._URL_INSTANT_PAY_SETTING, title: 'PAYMENT_GATEWAY_SETTINGS', numberLabel: \"5.1 \", permission: AccessRight._INSTANT_PAY_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SERVICE_CHARGE_REPORT, title: 'SERVICE_CHARGE_REPORT', numberLabel: \"5.2 \", permission: AccessRight._SERVICE_CHARGE_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n ]\n },\n {\n path: '/adjustment', title: 'ADJUSTMENT', numberLabel: \"6. \", isDummy: true, permission: AccessRight._ADJUSTMENT_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n children: [\n { path: WebUrl._URL_ADJUSTMENT, title: 'ADJUSTMENT', numberLabel: \"6.1 \", permission: AccessRight._ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_ADJUSTMENT_REPORT, title: 'ADJUSTMENT_REPORT', numberLabel: \"6.2 \", permission: AccessRight._ADJUSTMENT_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING }, //, permission: AccessRight._ADJUSTMENT_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING\n { path: WebUrl._URL_POINTS_ADJUSTMENT, title: 'ADJUSTMENT_MEMBER_POINTS', numberLabel: \"6.3 \", permission: AccessRight._ADJUSTMENT_POINTS_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_POINTS_ADJUSTMENT_REPORT, title: 'ADJUSTMENT_POINTS_REPORT', numberLabel: \"6.4 \", permission: AccessRight._POINTS_ADJUSTMENT_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n //{ path: WebUrl._URL_COMMISSION_ADJUSTMENT, title: 'COMMISSION_ADJUSTMENT', numberLabel: \"6.2 \", permission: AccessRight._COMMISSION_ADJUSTMENT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING },\n //{ path: WebUrl._URL_BONUS_ADJUSTMENT, title: 'BONUS_ADJUSTMENT', numberLabel: \"6.3 \", permission: AccessRight._BONUS_ADJUSTMENT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING }, \n { path: WebUrl._URL_ADJUSTMENT_BONUS_WALLET, title: 'ADJUSTMENT_BONUS_WALLET', numberLabel: \"6.5 \", permission: AccessRight._COIN_ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n ]\n },\n {\n path: '/report', title: 'REPORT', numberLabel: \"7. \", isDummy: true,\n children: [\n //{ path: WebUrl._URL_WIN_LOSS_REPORT2, title: 'WINLOSS_REPORT', permission: AccessRight._PROFIT_LOSS_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n //{ path: WebUrl._URL_WIN_LOSS_REPORT2, title: 'WINLOSS_REPORT2', permission: AccessRight._PROFIT_LOSS_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_WIN_LOSS_REPORT3, title: 'WINLOSS_REPORT', numberLabel: \"7.1 \", permission: AccessRight._WINLOSS_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_TALLY_WIN_LOSS_REPORT, title: 'TALLY_WINLOSS_REPORT', numberLabel: \"7.2 \", permission: AccessRight._TALLY_WINLOSS_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_PROFIT_LOSS_REPORT, title: 'PROFIT_LOSS_REPORT_TITLE', numberLabel: \"7.3 \", permission: AccessRight._PROFIT_LOSS_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_DAILY_SUMMARY_REPORT, title: 'DAILY_SUMMARY_REPORT_TITLE', numberLabel: \"7.4 \", permission: AccessRight._DAILY_SUMMARY_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_BONUS_COMMISSION_REPORT, title: 'BONUS_COMMISSION_REPORT', numberLabel: \"7.5 \", permission: AccessRight._BONUS_COMM_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_TRANSACTION_REPORT, title: 'TRANSACTION_REPORT', numberLabel: \"7.6 \", permission: AccessRight._TRANSACTION_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_WALLET_TRANSFER_REPORT, title: 'WALLET_TRANSFER_REPORTS', numberLabel: \"7.7 \", permission: AccessRight._WALLET_TRANSFER_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n //{ path: WebUrl._URL_PROCESS_GAME_RECORD_REPORT, title: 'PROCESS_GAME_RECORD_REPORT', numberLabel: \"7.8 \", permission: AccessRight._PROCESS_GAME_RECORD_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n //{ path: WebUrl._URL_568_NON_PROCESS_GAME_RECORD_REPORT, title: '568_NON_PROCESS_GAME_RECORD_REPORT', numberLabel: \"7.9 \", permission: AccessRight._NON_PROCESS_568_GAME_RECORD_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_COMISSION_REPORT_LIST, title: 'NORMAL_COMMISSION_REPORT_LIST', numberLabel: \"7.8 \", permission: AccessRight._COMM_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_MEMBER_FULL_NAME, title: 'MANAGE_MEMBER_FULL_NAME', numberLabel: \"7.9 \", permission: AccessRight._MEMBER_FULLNAME_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_TRANSACTION_SUMMARY_REPORT, title: 'TRANSACTION_SUMMARY_REPORT', numberLabel: \"7.10 \", permission: AccessRight._TRANSACTION_SUMMARY_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_BIRTHDAY_REWARD_REPORT, title: 'BIRTHDAY_REWARD_REPORT', numberLabel: \"7.11 \", permission: AccessRight._BIRTHDAY_REWARD_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_GIFTPACE_REPORT, title: 'GIFTPACE_REPORT', numberLabel: \"7.12 \", permission: AccessRight._GIFTPACE_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_ACTIVE_MEMBER_REPORT, title: 'ACTIVE_MEMBER_REPORT', numberLabel: \"7.13 \", permission: AccessRight._ACTIVE_MEMBER_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MEMBER_POINTS_REPORT, title: 'MEMBER_POINTS_REPORT', numberLabel: \"7.14 \", permission: AccessRight._MEMBER_POINTS_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_CREDIT_REDEMPTION_REPORT, title: 'CREDIT_REDEMPTION_REPORT', numberLabel: \"7.15 \", permission: AccessRight._CREDIT_REDEMPTION_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_REFERRAL_BONUS_REPORT, title: 'REFERRAL_BONUS_REPORT', numberLabel: \"7.16 \", permission: AccessRight._REFERRAL_BONUS_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_REFERRAL_REPORT, title: 'REFERRAL_REPORT_TITLE', numberLabel: \"7.17 \", permission: AccessRight._REFERRAL_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n ]\n },\n {\n path: '/tool', title: 'TOOL', numberLabel: \"8. \", isDummy: true,\n children: [\n { path: WebUrl._URL_IP_MONITOR, title: 'IP_MONITOR', numberLabel: \"8.1 \", permission: AccessRight._IP_MONITOR_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n ]\n },\n {\n path: '/admin', title: 'ADMIN', numberLabel: \"9. \", isDummy: true,\n children: [\n { path: WebUrl._URL_MANAGE_SUB_ACCOUNT, title: 'SUB_ACCOUNTS', numberLabel: \"9.1 \", permission: AccessRight._SUB_ACCOUNT_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_ROLE, title: 'MANAGE_ROLES', numberLabel: \"9.2 \", permission: AccessRight._ROLE_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_ACTIVITY_LOG, title: 'ACTIVITY_LOG', numberLabel: \"9.3 \", permission: AccessRight._ACTIVITY_LOG_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_CHANGE_PASSWORD, title: 'CHANGE_PASSWORD', numberLabel: \"9.4 \", permission: AccessRight._CHANGE_PASSWORD_PERMISSION + AccessRight._READ_PERMISSION_STRING }\n ]\n },\n {\n path: '/product', title: 'PRODUCTS', numberLabel: \"10. \", isDummy: true,\n children: [\n { path: WebUrl._URL_PRODUCT_CATEGORY, title: 'PRODUCT_CATEGORY', numberLabel: \"10.1 \", permission: AccessRight._PRODUCT_CATEGORY_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MASTER_PRODUCT, title: 'MASTER_PRODUCTS', numberLabel: \"10.2 \", permission: AccessRight._MASTER_PRODUCT_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_USER_PRODUCT, title: 'PRODUCTS', numberLabel: \"10.3 \", permission: AccessRight._PRODUCT_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_RETRIEVE_MEMBER_BET_DATA, title: 'RETRIEVE_MEMBER_BET_DATA', numberLabel: \"10.4 \", permission: AccessRight._RETRIEVE_GAME_DATA_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n ]\n },\n {\n path: '/configure', title: 'CONFIGURATION', numberLabel: \"11. \", isDummy: true,\n children: [\n { path: WebUrl._URL_MANAGE_SMS_CONTENT, title: 'MANAGE_SMS_CONTENT', numberLabel: \"11.1 \", permission: AccessRight._SMS_CONTENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SMS_SETTING, title: 'SMS_SETTINGS', numberLabel: \"11.2 \", permission: AccessRight._SMS_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_MANAGE_BONUS, title: 'MANAGE_BONUS', numberLabel: \"11.3 \", permission: AccessRight._BONUS_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING},\n { path: WebUrl._URL_MANAGE_BANK, title: 'MANAGE_BANKS', numberLabel: \"11.3 \", permission: AccessRight._BANK_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING},\n { path: WebUrl._URL_MANAGE_REJECT_REASON, title: 'MANAGE_REJECT_REASON', numberLabel: \"11.4 \", permission: AccessRight._REJECT_REASON_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_PRODUCT_SETTING, title: 'PRODUCT_SETTING_TITLE', numberLabel: \"11.5 \", permission: AccessRight._PRODUCT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_VIP_LEVEL, title: 'MANAGE_VIP_LEVEL', numberLabel: \"11.5 \", permission: AccessRight._VIP_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_MANAGE_VIP_BENEFIT, title: 'VIP_BENEFIT_TITLE', numberLabel: \"11.8 \", permission: AccessRight._VIP_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_MANAGE_VIP_BENEFIT_CONTENT, title: 'VIP_BENEFIT_CONTENT', numberLabel: \"11.9 \", permission: AccessRight._VIP_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_REMARK, title: 'MANAGE_REMARK', numberLabel: \"11.6 \", permission: AccessRight._REMARK_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_TAG, title: 'MANAGE_TAG', numberLabel: \"11.11 \", permission: AccessRight._TAG_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_LANGUAGE, title: 'MANAGE_LANGUAGE', numberLabel: \"11.7 \", permission: AccessRight._LANGUAGE_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_BONUS_TYPE, title: 'MANAGE_BONUS_TYPE', numberLabel: \"11.9 \", permission: AccessRight._BONUS_TYPE_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_COMMUNICATION, title: 'COMMUNICATION_CHANNELS', numberLabel: \"11.8 \", permission: AccessRight._MANAGE_COMMUNICATION_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_SYSTEM_SETTING, title: 'MANAGE_SYSTEM_SETTING', numberLabel: \"11.9 \", permission: AccessRight._SYSTEM_SETTING_ACCESS + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_RECURRING_JOB, title: 'RECURRING_JOBS', numberLabel: \"11.10 \", permission: AccessRight._RECURRING_JOB_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n //{ path: WebUrl._URL_MANAGE_MANUAL_JOB, title: 'MANUAL_JOBS', numberLabel: \"11.17 \", permission: AccessRight._RECURRING_JOB_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n //{ path: WebUrl._URL_MANAGE_SKIN_SETTINGS, title: 'MANAGE_SKIN_SETTINGS', numberLabel: \"11.18 \", permission: AccessRight._SKIN_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n //{ path: WebUrl._URL_MANAGE_VIDEO_TUTORIAL, title: 'MANAGE_VIDEO_TUTORIAL', numberLabel: \"11.19 \", permission: AccessRight._VIDEO_TUTORIAL_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_DEPOSIT_PROMOTION, title: 'MANAGE_DEPOSIT_PROMOTION', numberLabel: \"11.11 \", permission: AccessRight._DEPOSIT_PROMOTION_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_WEEKLY_RESCUE, title: 'MANAGE_WEEKLY_RESCUE', numberLabel: \"11.12 \", permission: AccessRight._WEEKLY_RESCUE_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_DEPOSIT_PROMOTION_CATEGORY, title: 'MANAGE_DEPOSIT_PROMOTION_CATEGORY', numberLabel: \"11.13 \", permission: AccessRight._DEPOSIT_PROMOTION_CATEGORY_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_CAHE_SPHERE, title: 'MANAGE_CHAT_SPHERE', numberLabel: \"11.15 \", permission: AccessRight._CHAT_SPHERE_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_CAHE_SPHERE_TYPE, title: 'MANAGE_CHAT_SPHERE_ACTION_TYPE', numberLabel: \"11.16 \", permission: AccessRight._CHAT_SPHERE_TYPE_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_CHAT_SPHERE_PHONE_NUMBER, title: 'MANAGE_CHAT_SPHERE_PHONE_NUMBER', numberLabel: \"11.17 \", permission: AccessRight._CHAT_SPHERE_PHONE_NUMBER_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_MANAGE_DAILY_CHECK_IN, title: 'MANAGE_DAILY_CHECK_IN', numberLabel: \"11.19 \", permission: AccessRight._DAILY_CHECK_IN_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n ]\n },\n {\n path: '/content', title: 'CONTENT', numberLabel: \"12. \", isDummy: true,\n children: [\n // { path: WebUrl._URL_ANNOUNCEMENT, title: 'ANNOUNCEMENT', numberLabel: \"12.1 \", permission: AccessRight._ANNOUNCEMENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_BANNER, title: 'BANNER', numberLabel: \"12.1 \", permission: AccessRight._BANNER_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_PROMOTION, title: 'PROMOTION', numberLabel: \"12.3 \", permission: AccessRight._PROMOTION_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_SEO, title: 'SEO', numberLabel: \"12.4 \", permission: AccessRight._SEO_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_SCRIPT, title: 'SCRIPT', numberLabel: \"12.5 \", permission: AccessRight._SCRIPT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_EMAIL, title: 'EMAIL', numberLabel: \"12.2 \", permission: AccessRight._EMAIL_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_CONTENT, title: 'CONTENT', numberLabel: \"12.3 \", permission: AccessRight._CONTENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_MANAGE_CONTACT_US, title: 'CONTACT_US', numberLabel: \"12.4 \", permission: AccessRight._CONTACT_US_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_REWARD_BANNER, title: 'REWARD_BANNERS', numberLabel: \"12.9 \", permission: AccessRight._REWARD_BANNER_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING }, \n // { path: WebUrl._URL_MANAGE_WEB_CONTENT, title: 'MANAGE_WEB_CONTENTS', numberLabel: \"12.10 \", permission: AccessRight._MANAGE_WEB_CONTENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MARQUEE_TAG_CONTENT, title: 'MANAGE_MARQUEE_TAG_CONTENT', numberLabel: \"12.4 \", permission: AccessRight._MARQUEE_TAG_CONTENT + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_CHAT_SYSTEM_TEMPALTE, title: 'CHAT_SYSTEM_TEMPLATE', numberLabel: \"12.15 \", permission: AccessRight._CHAT_SYSTEM_TEMPLATE_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_CHAT_CUSTOM_TEMPALTE, title: 'CHAT_CUSTOM_TEMPLATE', numberLabel: \"12.16 \", permission: AccessRight._CHAT_CUSTOM_TEMPLATE_PERMISSION + AccessRight._READ_PERMISSION_STRING }\n ]\n },\n {\n path: '/riskControl', title: 'RISK_CONTROL', numberLabel: \"13. \", isDummy: true, permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n children: [\n { path: WebUrl._URL_LIVE_MONITOR, title: 'LIVE_MONITOR', numberLabel: \"13.1 \", permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SPORTS_LIVE_MONITOR, title: 'SPORTS_LIVE_MONITOR', numberLabel: \"13.2 \", permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_SPORTS_TEAM_BET_REPORT, title: 'SPORTS_TEAM_BET_REPORT', numberLabel: \"13.3 \", permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_PLAYER_RECONCILIATION, title: 'PLAYER_RECONCILIATION', numberLabel: \"13.4 \", permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING }\n ]\n },\n // {\n // path: '/reward', title: 'REWARDS', numberLabel: \"14. \", isDummy: true, permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n // children: [\n\n // { path: WebUrl._URL_REWARDS_SETTING, title: 'REWARDS_SETTING', numberLabel: \"14.1 \", permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // { path: WebUrl._URL_REWARDS_SCHEDULE, title: 'REWARDS_SCHEDULES', numberLabel: \"14.2 \", permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING }, \n // { path: WebUrl._URL_CLAIMED_REWARDS_REPORT, title: 'CLAIMED_UNCLAIMED_REWARDS_REPORT', numberLabel: \"14.3 \", permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING }, \n // { path: WebUrl._URL_FORFEITED_REWARDS_REPORT, title: 'FORFEITED_REWARDS_REPORT', numberLabel: \"14.4 \", permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n // // { path: WebUrl._URL_FORFEITED_REWARDS_REPORT, title: 'FORFEITED_REWARDS_REPORT', numberLabel: \"14.5 \", permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING }, \n // ]\n // },\n {\n path: '/dc', title: 'CHECK_IN_POINTS', numberLabel: \"14. \", isDummy: true/*, permission: AccessRight._DC_ITEM_LIST_PERMISSION + AccessRight._READ_PERMISSION_STRING*/,\n children: [\n\n { path: WebUrl._URL_MANAGE_DC_ITEM_LIST, title: 'REDEMPTION_ITEMS', numberLabel: \"14.1 \", permission: AccessRight._DC_ITEM_LIST_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_DC_REDEMPTION, title: 'REDEMPTIONS', numberLabel: \"14.2 \", permission: AccessRight._DC_REDEMPTION_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_DC_POINTS, title: 'CHECK_IN_POINT_SETTINGS', numberLabel: \"14.3 \", permission: AccessRight._DC_POINTS_PERMISSION + AccessRight._WRITE_PERMISSION_STRING },\n { path: WebUrl._URL_MANAGE_MEMBER_DC_POINTS, title: 'MEMBER_POINTS', numberLabel: \"14.4 \", permission: AccessRight._MEMBER_DC_POINTS_PERMISSION + AccessRight._READ_PERMISSION_STRING },\n ]\n },\n {\n path: WebUrl._URL_HELP, title: 'HELP', numberLabel: \"\", isDummy: false/*, permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING*/\n }\n]\n\nexport default Menu;","import { WebUrl } from \"../../util/Constant\";\n\n/// \n/// Author : -\n/// \nconst MemberMenu = [\n {\n path: '/report', icon: 'far fa-file-alt', title: 'REPORT', isDummy: true,\n children: [\n { path: WebUrl._URL_WIN_LOSS_REPORT, title: 'WINLOSS_REPORT' },\n ]\n },\n]\n\nexport default MemberMenu;\n","import React, { useState, useEffect } from \"react\";\nimport { Route, Link } from \"react-router-dom\";\nimport { PageSettings } from \"./../../config/page-settings.js\";\nimport { useSelector } from \"react-redux\";\nimport { LanguageKey, ApiKey, ApiUrl, WebUrl } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport menus from \"./menu.jsx\";\nimport MemberMenu from \"./member-menu.jsx\";\n\n/// \n/// Author : -\n/// \nconst SidebarNavList = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [active, setActive] = useState(-1);\n\tconst [clicked, setClicked] = useState(-1);\n\tconst [numberLabel, setNumberLabel] = useState(\"\");\n\tconst [subNumberLabel, setSubNumberLabel] = useState(\"\");\n\tconst [fullMenu, setFullMenu] = useState(props.fullMenu);\n\tconst [childMenuArr, setChildMenuArr] = useState([]);\n\tconst state = useSelector((state) => state);\n\tconst [pendingDepositCount, setPendingDepositCount] = useState(\"\");\n\tconst [pendingPointsRedemptionCount, setPendingPointsRedemptionCount] =\n\t\tuseState(\"\");\n\tconst [livechatCount, setLivechatCount] = useState(\"\");\n\n\tuseEffect(() => {\n\t\t//addNumbering();\n\t\tcheckTitle();\n\t\tsetInterval(checkTitle, 60000);\n\t}, []);\n\n\tconst checkTitle = () => {\n\t\tif (props.data.title === \"ONLINE_BANKING\") {\n\t\t\tcheckPendingDeposit();\n\t\t}\n\t\tif (props.data.title === \"LIVECHAT\") {\n\t\t\tlivechatNotification();\n\t\t}\n\n\t\tif (\n\t\t\tprops.data.title === \"DAILY_TASKS\" ||\n\t\t\tprops.data.title === \"CHECK_IN_POINTS\" ||\n\t\t\tprops.data.title === \"REDEMPTIONS\"\n\t\t) {\n\t\t\tcheckPendingPointsRedemption();\n\t\t}\n\t};\n\n\tconst checkPendingDeposit = async () => {\n\t\tawait fetch(ApiUrl._API_CHECK_PENDING_DEPOSIT, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\tAccept: ApiKey._API_APPLICATION_JSON,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetPendingDepositCount(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tconst livechatNotification = async () => {\n\t\tawait fetch(ApiUrl._API_GET_RECENT_NOTIFICATIONS, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\tAccept: ApiKey._API_APPLICATION_JSON,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetLivechatCount(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tconst checkPendingPointsRedemption = async () => {\n\t\tawait fetch(ApiUrl._API_CHECK_PENDING_POINTS_REDEMPTION, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\tAccept: ApiKey._API_APPLICATION_JSON,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetPendingPointsRedemptionCount(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tconst addNumbering = () => {\n\t\tif (typeof fullMenu !== \"undefined\") {\n\t\t\tfullMenu.map((menu, index) => {\n\t\t\t\tif (\n\t\t\t\t\tprops.data.children ||\n\t\t\t\t\tprops.data.title === \"DASHBOARD\" ||\n\t\t\t\t\tprops.data.title === \"COMPANY\"\n\t\t\t\t) {\n\t\t\t\t\tif (props.data.title === menu.title) {\n\t\t\t\t\t\tsetNumberLabel(index + 1 + \". \");\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (menu.children) {\n\t\t\t\t\t\tmenu.children.map((childMenu, i) => {\n\t\t\t\t\t\t\tif (props.data.title === childMenu.title) {\n\t\t\t\t\t\t\t\tsetSubNumberLabel(index + 1 + \".\" + (i + 1));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst handleExpand = (e, i, match) => {\n\t\te.preventDefault();\n\t\tsetActive(active === i ? -1 : i);\n\t\tsetClicked(1);\n\t};\n\n\tvar icon = props.data.icon && ;\n\tvar img = props.data.img && (\n\t\t
    \n\t\t\t\"\"\n\t\t
    \n\t);\n\tvar caret = props.data.children && !props.data.badge && (\n\t\t\n\t);\n\tvar label = props.data.label && (\n\t\t{props.data.label}\n\t);\n\tvar badge = props.data.badge && (\n\t\t{props.data.badge}\n\t);\n\tvar title = props.data.title && (\n\t\t\n\t\t\t\n\t\t\t\t{\n\t\t\t\t\tprops.data\n\t\t\t\t\t\t.numberLabel /*props.data.children || props.data.title === \"DASHBOARD\" || props.data.title === \"COMPANY\" ? numberLabel : subNumberLabel*/\n\t\t\t\t}\n\t\t\t\n\t\t\t{t(props.data.title)} {label}\n\t\t\t{props.data.title === \"ONLINE_BANKING\" && pendingDepositCount > 0 && (\n\t\t\t\t{pendingDepositCount}\n\t\t\t)}\n\t\t\t{props.data.title === \"LIVECHAT\" && livechatCount > 0 && (\n\t\t\t\t{livechatCount}\n\t\t\t)}\n\t\t\t{(props.data.title === \"DAILY_TASKS\" ||\n\t\t\t\tprops.data.title === \"CHECK_IN_POINTS\" ||\n\t\t\t\tprops.data.title === \"REDEMPTIONS\") &&\n\t\t\t\tpendingPointsRedemptionCount > 0 && (\n\t\t\t\t\t\n\t\t\t\t\t\t{pendingPointsRedemptionCount}\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\n\t);\n\tvar highlight = props.data.highlight && (\n\t\t\n\t);\n\n\treturn (\n\t\t\n\t\t\t{({\n\t\t\t\thandleSidebarOnMouseOver,\n\t\t\t\thandleSidebarOnMouseOut,\n\t\t\t\tpageSidebarMinified,\n\t\t\t}) => {\n\t\t\t\treturn (\n\t\t\t\t\t {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{props.data.children ? (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\thandleSidebarOnMouseOver(e, props.data)\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tonMouseOut={(e) => handleSidebarOnMouseOut(e, props.data)}\n\t\t\t\t\t\t\t\t\t\t\tonClick={props.expand}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{caret} {badge} {img} {icon} {title} {highlight}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t) : props.data.path === WebUrl._URL_LIVE_MONITOR ||\n\t\t\t\t\t\t\t\t\t props.data.path === WebUrl._URL_SPORTS_LIVE_MONITOR ? (\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\twindow.open(props.data.path);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{caret} {img} {icon} {badge} {title} {highlight}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{caret} {img} {icon} {badge} {title} {highlight}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t{props.data.children && (\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{props.data.children &&\n\t\t\t\t\t\t\t\t\t\t\t\tprops.data.children.map((submenu, i) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t handleExpand(e, i, match)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tactive={i === props.active}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclicked={props.clicked}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfullMenu={props.fullMenu}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}}\n\t\t\n\t);\n};\n\nexport default SidebarNavList;\n","import React from 'react';\nimport { Route } from 'react-router-dom';\nimport SidebarNavList from './sidebar-nav-list.jsx';\nimport menus from './menu.jsx';\nimport MemberMenu from './member-menu.jsx';\nimport { connect } from \"react-redux\";\nimport { AccessRight, Status, LoginType } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty } from '../../util/Util.js';\n\nclass SidebarNav extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n active: -1,\n clicked: -1,\n menusToShow: JSON.parse(JSON.stringify(menus)),\n fullMenu: []\n };\n }\n\n filterMenuByPermission = () => {\n var usedMenu = this.props.authState.userData.loginType == LoginType._LOGIN_TYPE_MEMBER ? MemberMenu : menus;\n \n this.state.menusToShow = JSON.parse(JSON.stringify(usedMenu));\n if (this.props.authState.userData.accessString !== undefined) {\n var userPermissionData = this.props.authState.userData.accessString.split(\";\");\n var permissionArrKey = [];\n\n for (var i = 0; i < userPermissionData.length; i++) {\n var keyValuePermission = userPermissionData[i].split(\":\");\n if (keyValuePermission.length == 2) {\n if (keyValuePermission[1][AccessRight._READ_BIT_POSITION] == Status._ENABLED.toString()) {\n permissionArrKey.push(keyValuePermission[0] + AccessRight._READ_PERMISSION_STRING);\n }\n if (keyValuePermission[1][AccessRight._WRITE_BIT_POSITION] == Status._ENABLED.toString()) {\n permissionArrKey.push(keyValuePermission[0] + AccessRight._WRITE_PERMISSION_STRING);\n }\n }\n }\n //first filter away non use children\n for (var i = 0; i < this.state.menusToShow.length; i++) {\n if (this.state.menusToShow[i].children) {\n this.state.menusToShow[i].children = this.state.menusToShow[i].children.filter(item => {\n //let permission = item['permission'];\n //let temp = permission.substring(0, permission.indexOf(AccessRight._READ_PERMISSION_STRING));\n //let temp1 = temp.split(' ');\n //let match = '';\n //temp1.map((word) => {\n // match += word.charAt(0);\n //});\n //if (match !== undefined) {\n // match += AccessRight._READ_PERMISSION_STRING;\n // return permissionArrKey.filter(item => item == match).length != 0;\n //}\n //console.log(item['numberLabel'].trim())\n //console.log(item[\"permission\"])\n if (item[\"permission\"]) {\n let permission = item['numberLabel'].trim();\n if (permission.substring(0, permission.indexOf(\".\")) === \"13\") {\n permission = \"13.\";\n }\n //else if (permission.substring(0, permission.indexOf(\".\")) === \"14\") {\n // permission = \"14.\";\n //}\n if (permission !== undefined && permission !== \"\") {\n permission += AccessRight._READ_PERMISSION_STRING;\n return permissionArrKey.filter(item => item == permission).length != 0;\n }\n else {\n return true;\n } \n } \n else {\n return true;\n }\n });\n }\n }\n\n //secondly filter away parent\n this.state.menusToShow = this.state.menusToShow.filter(item => {\n if (!item.children || item.children.length == 0) {\n if (item.isDummy) {\n return false;\n }\n else {\n //let permission = item.permission;\n //let match = '';\n //if (permission !== undefined){\n // let temp = permission.substring(0, permission.indexOf(AccessRight._READ_PERMISSION_STRING));\n // let temp1 = temp.split(' ');\n // temp1.map((word) => {\n // match += word.charAt(0);\n // });\n //}\n //if (!stringIsNullOrEmpty(match)) {\n // match += AccessRight._READ_PERMISSION_STRING;\n // return permissionArrKey.filter(item => item == match).length != 0;\n //}\n let permission = item.numberLabel.trim();\n if (permission !== undefined && permission !== \"\") {\n permission += AccessRight._READ_PERMISSION_STRING;\n return permissionArrKey.filter(item => item == permission).length != 0;\n }\n else {\n return true;\n }\n }\n }\n else {\n return true;\n }\n });\n this.state.fullMenu = this.state.menusToShow;\n }\n }\n\n handleExpand(e, i, match) {\n e.preventDefault();\n\n if (this.state.clicked === -1 && match) {\n this.setState(state => ({\n active: -1,\n clicked: 1\n }));\n } else {\n this.setState(state => ({\n active: (this.state.active === i ? -1 : i),\n clicked: 1\n }));\n }\n }\n\n render() {\n this.filterMenuByPermission();\n\n return (\n \n );\n }\n}\n\nconst mapStateToProps = state => ({\n ...state\n});\n\nexport default connect(\n mapStateToProps,\n null\n)(SidebarNav);","import React from 'react';\nimport { Link } from 'react-router-dom';\nimport PerfectScrollbar from 'react-perfect-scrollbar';\nimport { PageSettings } from './../../config/page-settings.js';\nimport SidebarProfile from './sidebar-profile.jsx';\nimport SidebarNav from './sidebar-nav.jsx';\n\nclass Sidebar extends React.Component {\n\tstatic contextType = PageSettings;\n\t\n\trender() {\n\t\treturn (\n\t\t\t\n\t\t\t\t{({toggleSidebarMinify, toggleMobileSidebar, pageSidebarTransparent}) => (\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{!this.context.pageSidebarSearch && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{/* \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t */}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t)\n\t}\n}\n\nexport default Sidebar;\n","import store from \"../ApplicationStore.js\";\nimport { AccessRight, Status } from \"./Constant\";\n\n//variable here will be long live throughout the process, this is intented\nvar _permissionArrKey = [];\n\n/// \n/// Author : -\n/// \nexport function checkIfPermissionExist(permissionString, isWrite) {\n //let temp = permissionString.split(' ');\n //let match = '';\n //temp.map((word) => {\n // match += word.charAt(0);\n //});\n if (_permissionArrKey.length == 0 && store.getState()[\"authState\"][\"userData\"][\"accessString\"] !== undefined) {\n var userPermissionData = store.getState()[\"authState\"][\"userData\"][\"accessString\"].split(\";\");\n for (var i = 0; i < userPermissionData.length; i++) {\n var keyValuePermission = userPermissionData[i].split(\":\");\n if (keyValuePermission.length == 2) {\n if (keyValuePermission[1][AccessRight._READ_BIT_POSITION] == Status._ENABLED.toString()) {\n _permissionArrKey.push(keyValuePermission[0] + AccessRight._READ_PERMISSION_STRING);\n }\n if (keyValuePermission[1][AccessRight._WRITE_BIT_POSITION] == Status._ENABLED.toString()) {\n _permissionArrKey.push(keyValuePermission[0] + AccessRight._WRITE_PERMISSION_STRING);\n }\n }\n }\n }\n\n var completePermissionKey = permissionString + (isWrite ? AccessRight._WRITE_PERMISSION_STRING : AccessRight._READ_PERMISSION_STRING);\n //var completePermissionKey = match + (isWrite ? AccessRight._WRITE_PERMISSION_STRING : AccessRight._READ_PERMISSION_STRING);\n return _permissionArrKey.filter(item => item == completePermissionKey).length != 0;\n}\n\n/// \n/// Author : -\n/// this expected to be call on logout so that next login can fetch new data\n/// \nexport function clearPermissionData() {\n _permissionArrKey = [];\n}","import { _LOGIN_SUCCESS, _LOGIN_FAILED, _LOGOUT } from './AuthAction';\nimport { clearPermissionData } from \"../util/PermissionChecker\"\n\nconst _INITIAL_STATE = {\n userData: {},\n isLoggedIn: false,\n loginMessage: \"\",\n loginStateInitialized:false,\n};\n\n/// \n/// Author : -\n/// \nexport default (state = _INITIAL_STATE, action) => {\n switch (action.type) {\n case _LOGIN_SUCCESS:\n return {\n userData: action.userData,\n isLoggedIn: true,\n loginMessage: \"\",\n loginStateInitialized:true\n }\n break;\n case _LOGIN_FAILED:\n return {\n loginMessage: action.message,\n isLoggedIn: false,\n userData: {},\n loginStateInitialized :true\n }\n break;\n case _LOGOUT:\n clearPermissionData();\n return {\n userData: {},\n isLoggedIn: false,\n loginMessage: \"\",\n loginStateInitialized:true,\n };\n break;\n default:\n return state;\n break;\n }\n};\n","import { _IDLE, _BUSY, _ALERT_TYPES, _MEMBER_SEARCH } from './AppAction';\nimport { stringIsNullOrEmpty } from '../util/Util'\n\nconst _INITIAL_STATE = {\n isBusy: false,\n message: \"Please Wait\",\n alertType: _ALERT_TYPES.NONE,\n responseMessage: '',\n memberSearch: ''\n};\n\nvar _busyCount = 0;\n\n/// \n/// Author : -\n/// \nexport default (state = _INITIAL_STATE, action) => {\n switch (action.type) {\n case _BUSY:\n _busyCount++;\n return {\n ...state,\n isBusy: true,\n message: stringIsNullOrEmpty(action.message) ? _INITIAL_STATE.message : action.message\n }\n break;\n case _IDLE:\n _busyCount = Math.max(--_busyCount, 0);\n return {\n ...state,\n isBusy: (_busyCount != 0),\n }\n break;\n case _ALERT_TYPES.SUCCESS:\n return {\n ...state,\n alertType: _ALERT_TYPES.SUCCESS,\n responseMessage: action.message\n };\n break;\n case _ALERT_TYPES.ERROR:\n return {\n ...state,\n alertType: _ALERT_TYPES.ERROR,\n responseMessage: action.message\n };\n break;\n case _ALERT_TYPES.NONE:\n return {\n ...state,\n alertType: _ALERT_TYPES.NONE,\n responseMessage: ''\n };\n break;\n case _MEMBER_SEARCH:\n return {\n ...state,\n memberSearch: stringIsNullOrEmpty(action.value) ? _INITIAL_STATE.memberSearch : action.value\n };\n break;\n default:\n return state;\n break;\n }\n};\n","import { _SAVE_LANGUAGE } from './LanguageAction';\n\nconst _INITIAL_STATE = {\n languages : []\n};\n\n/// \n/// Author : -\n/// \nexport default (state = _INITIAL_STATE, action) => {\n switch (action.type) {\n case _SAVE_LANGUAGE:\n return {\n languages: action.languages\n }\n break;\n default:\n return state;\n break;\n }\n};","import { _INIT_CONFIG, _UPDATE_CONTENT, _CLEAR_MESSAGE } from './FirebaseAction.js';\n\nconst _INITIAL_STATE = {\n key: '',\n dataContent: null,\n};\n\nexport default (state = _INITIAL_STATE, action) => {\n switch (action.type) {\n case _INIT_CONFIG:\n return {\n ...state\n }\n break;\n case _UPDATE_CONTENT:\n return {\n ...state,\n dataContent: action.dataContent\n }\n break;\n case _CLEAR_MESSAGE:\n return {\n ...state,\n dataContent: null\n }\n default:\n return state;\n break;\n }\n};","import { createStore, applyMiddleware, combineReducers } from \"redux\";\nimport authReducer from \"./redux/AuthReducer\";\nimport appReducer from \"./redux/AppReducer\";\nimport languageReducer from \"./redux/LanguageReducer\";\nimport FirebaseReducer from \"./redux/FirebaseReducer\";\nimport thunk from 'redux-thunk';\n\n/// \n/// Author : -\n/// \nconst store = createStore(combineReducers({\n authState: authReducer,\n appState: appReducer,\n languageState: languageReducer,\n firebaseState: FirebaseReducer\n}), applyMiddleware(thunk));\n\nexport default store;","export const _SAVE_LANGUAGE = \"saveLanguage\";\n\n/// \n/// Author : -\n/// \nexport const addLanguage = (languages) => {\n return async dispatch => {\n dispatch({\n type: _SAVE_LANGUAGE,\n languages: languages\n });\n }\n}","/// \n/// Author: -\n/// \nimport axios from 'axios';\nimport { ApiKey } from './Constant.js';\nimport * as AppActions from '../redux/AppAction';\nimport * as AuthActions from '../redux/AuthAction';\nimport Store from '../ApplicationStore';\n\nconst _HTTP_CODE_UNAUTHORIZED = 401;\nconst _HTTP_CODE_FORBIDDEN = 403;\n\n/// \n/// Author: -\n/// \nasync function interceptRequest(requestConfig) {\n Store.dispatch(AppActions.setBusy());\n return requestConfig;\n}\n\n/// \n/// Author: -\n/// \nfunction interceptResponse(response) {\n Store.dispatch(AppActions.setIdle());\n return response.data;\n}\n\n/// \n/// Author: -\n/// \nfunction interceptError(error) {\n var returnData = {};\n\n Store.dispatch(AppActions.setIdle());\n\n if (error.response.status == _HTTP_CODE_UNAUTHORIZED || error.response.status == _HTTP_CODE_FORBIDDEN) {\n Store.dispatch(AuthActions.performLogout());\n Store.dispatch(AppActions.showMessage(false, \"UNAUTHORIZED\"));\n returnData = {\n \"success\": false,\n \"message\": \"UNAUTHORIZED\"\n }\n }\n\n return returnData;\n}\n\nconst ApiEngine = axios.create({\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n});\n\nApiEngine.interceptors.request.use(\n config => interceptRequest(config),\n error => interceptError(error),\n);\n\nApiEngine.interceptors.response.use(\n response => interceptResponse(response),\n error => interceptError(error),\n);\n\nexport default ApiEngine;","import React, { useState, useEffect, useContext } from \"react\";\n//import \"react-simple-keyboard/build/css/index.css\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tWebUrl,\n\tLanguageKey,\n\tRole,\n\tAccessRight,\n} from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation, withRouter } from \"react-router-dom\";\nimport moment from \"moment\";\n//import ContentHeader from \"components/content/header\";\n\nimport \"../../assets/css/custom.css\";\nimport appsettings from \"../../appsettings-fe.json\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useForm } from \"react-hook-form\";\nimport { PageSettings } from \"./../../config/page-settings.js\";\nimport { performLogin } from \"../../redux/AuthAction.js\";\nimport { showMessage } from \"../../redux/AppAction.js\";\nimport {\n\tloadCaptchaEnginge,\n\tLoadCanvasTemplateNoReload,\n\tvalidateCaptcha,\n} from \"react-simple-captcha\";\nimport store from \"./../../ApplicationStore.js\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker.js\";\n\nconst Login = (props) => {\n\tvar { t } = useTranslation(LanguageKey._PRIMARY);\n\tvar _history = useHistory();\n\tvar _location = useLocation();\n\n\tconst _TAB_OPTIONS = {\n\t\tUSER: 1,\n\t\tMEMBER: 2,\n\t};\n\n\tconst _captcha_length = 4;\n\tconst _context = useContext(PageSettings);\n\tconst _dispatch = useDispatch();\n\tconst { isLoggedIn } = useSelector((state) => ({\n\t\tisLoggedIn: state.authState.isLoggedIn,\n\t}));\n\n\tconst { register, handleSubmit, errors } = useForm();\n\tconst [activeTab, setActiveTab] = useState(\n\t\tappsettings.ApplicationConfig.isMemberPortal == \"true\"\n\t\t\t? _TAB_OPTIONS[\"MEMBER\"]\n\t\t\t: _TAB_OPTIONS[\"USER\"]\n\t);\n\n\tuseEffect(() => {\n\t\tloadCaptchaEnginge(_captcha_length, \"black\", \"white\", \"numbers\");\n\t\t_context.handleSetPageSidebar(false);\n\t\t_context.handleSetPageHeader(false);\n\t\t_context.handleSetPageContentFullWidth(true);\n\n\t\treturn () => {\n\t\t\t_context.handleSetPageSidebar(true);\n\t\t\t_context.handleSetPageHeader(true);\n\t\t\t_context.handleSetPageContentFullWidth(false);\n\t\t};\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tif (isLoggedIn) {\n\t\t\tlet tempUserData = store.getState()[\"authState\"][\"userData\"];\n\t\t\tif (tempUserData[\"userRole\"].includes(\"Customer Service\")) {\n\t\t\t\t_history.push(WebUrl._URL_TRANSACTION_REPORT); //7.6\n\t\t\t} else if (tempUserData[\"userRole\"].includes(\"Payment Official\")) {\n\t\t\t\t_history.push(WebUrl._URL_TRANSACTION_ENQUIRY); //4.2\n\t\t\t} else if (\n\t\t\t\t!checkIfPermissionExist(AccessRight._DASHBOARD_DETAILS_PERMISSION)\n\t\t\t) {\n\t\t\t\t_history.push(WebUrl._URL_HELP);\n\t\t\t} else {\n\t\t\t\t_history.push(WebUrl._URL_MAIN);\n\t\t\t}\n\t\t}\n\t}, [isLoggedIn]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tvar temp = validateCaptcha(data.loginCaptcha);\n\t\tif (temp === true) {\n\t\t\tawait _dispatch(\n\t\t\t\tperformLogin(\n\t\t\t\t\tdata.username,\n\t\t\t\t\tdata.password,\n\t\t\t\t\tactiveTab == _TAB_OPTIONS[\"USER\"],\n\t\t\t\t\tdata.companyCode ?? \"\"\n\t\t\t\t)\n\t\t\t);\n\t\t} else {\n\t\t\t_dispatch(showMessage(false, \"CAPTCHA_FAILED\"));\n\t\t}\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\tCOMMAND CENTER\n\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{/*

    \n\t\t\t\t\t\t\t\t\t\t\t\t\tOKGO admin\n\t\t\t\t\t\t\t\t\t\t\t\t

    */}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.username && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.username.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.password && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.password.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.loginCaptcha && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.loginCaptcha.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t\t{/*
    */}\n\t\t\t\t\t\t\t\t\t\t\t\t{activeTab == _TAB_OPTIONS[\"MEMBER\"] && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.companyCode && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.companyCode.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\tVer. {process.env.REACT_APP_VERSION}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\nexport default withRouter(Login);\n","import React from 'react';\n\nconst PanelStat = React.createContext();\n\nclass Panel extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\t\n\t\tthis.toggleExpand = () => {\n\t\t\tthis.setState(state => ({\n\t\t\t\texpand: !this.state.expand\n\t\t\t}));\n\t\t}\n\t\t\n\t\tthis.toggleRemove = () => {\n\t\t\tthis.setState(state => ({\n\t\t\t\tremove: !this.state.remove\n\t\t\t}));\n\t\t}\n\t\t\n\t\tthis.toggleCollapse = () => {\n\t\t\tthis.setState(state => ({\n\t\t\t\tcollapse: !this.state.collapse\n\t\t\t}));\n\t\t}\n\t\t\n\t\tthis.toggleReload = () => {\n\t\t\tif (this.state.reload !== true) {\n\t\t\t\tthis.setState(state => ({\n\t\t\t\t\treload: true\n\t\t\t\t}));\n\t\t\t\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.setState(state => ({\n\t\t\t\t\t\treload: false\n\t\t\t\t\t}));\n\t\t\t\t}, 2000);\n\t\t\t}\n\t\t}\n\t\t\n\t\tthis.state = {\n\t\t\texpand: false,\n\t\t\tcollapse: false,\n\t\t\treload: false,\n\t\t\tremove: false,\n\t\t\ttoggleExpand: this.toggleExpand,\n\t\t\ttoggleReload: this.toggleReload,\n\t\t\ttoggleRemove: this.toggleRemove,\n\t\t\ttoggleCollapse: this.toggleCollapse\n\t\t}\n\t}\n\trender() {\n\t\treturn (\n\t\t\t\n\t\t\t\t{(!this.state.remove &&\n\t\t\t\t\t
    \n\t\t\t\t\t\t{ this.props.children }\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t);\n\t}\n};\n\nclass PanelHeader extends React.Component {\n\trender() {\n\t\treturn (\n\t\t\t
    \n\t\t\t\t

    { this.props.children }

    \n\t\t\t\t{(!this.props.noButton &&\n\t\t\t\t\t\n\t\t\t\t\t\t{({ toggleExpand, toggleRemove, toggleCollapse, toggleReload }) => (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{/*   \n\t\t\t\t\t\t\t\t  \n\t\t\t\t\t\t\t\t  \n\t\t\t\t\t\t\t\t */}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t)\n\t}\n}\n\nclass PanelBody extends React.Component {\n\trender() {\n\t\treturn (\n\t\t\t\n\t\t\t\t{({ collapse, reload }) => (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{ this.props.children }\n\t\t\t\t\t\t\n\t\t\t\t\t\t{(reload && \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t);\n\t}\n};\n\nclass PanelFooter extends React.Component {\n\trender() {\n\t\treturn (\n\t\t\t
    \n\t\t\t\t{ this.props.children }\n\t\t\t
    \n\t\t);\n\t}\n};\n\nexport { Panel, PanelHeader, PanelBody, PanelFooter };\n","import React, { useState, useEffect, useContext } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport Accordion from 'react-bootstrap/Accordion';\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useTranslation } from \"react-i18next\";\nimport { LanguageKey } from \"../../util/Constant.js\";\n\nconst FAQHelp = (props) => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [activeEventKey0, setActiveEventKey0] = useState(false);\n const [activeEventKey1, setActiveEventKey1] = useState(false);\n const [activeEventKey2, setActiveEventKey2] = useState(false);\n const [activeEventKey3, setActiveEventKey3] = useState(false);\n const [activeEventKey4, setActiveEventKey4] = useState(false);\n const [activeEventKey5, setActiveEventKey5] = useState(false);\n const [activeEventKey6, setActiveEventKey6] = useState(false);\n const [activeEventKey7, setActiveEventKey7] = useState(false);\n\n return (\n
    \n

    \n {t(\"FAQ\")}\n

    \n \n
    \n
    \n \n \n setActiveEventKey0(!activeEventKey0)}>\n
    Cannot approve deposit/withdrawal
    {\">\"}
    \n \n 1) Please check \"Manage Transaction Queue\" (2.9) to see if the player is stuck in queue, then clear it. Please wait a few minutes if the player is not showing in the queue page.

    \n
    \n
    \n
    \n setActiveEventKey1(!activeEventKey1)}>\n
    Player's bet(s) missing or pending
    {\">\"}
    \n \n 1) Log on to Vendor's Backoffice to check if the player's bet is also pending over there.

    \n 2) If not, contact the IT team about the issue.\n
    \n
    \n
    \n setActiveEventKey2(!activeEventKey2)}>\n
    Set MasterProduct to UM (UM = Under Maintenance)
    {\">\"}
    \n \n 1) Go to \"Products Page\" (10.3).

    \n 2) Click on Game UM button to set it on/off.

    \n
    \n
    \n
    \n setActiveEventKey3(!activeEventKey3)}>\n
    Add promotion banners (optional)
    {\">\"}
    \n \n 1) Go to \"Banner\" Page (12.2).

    \n 2) Click on \"Add Banner\" button at the top right of the page.

    \n 3) Insert all relevant details and click submit.

    \n 4) There is currently 1 type of banner location to select from.

    \n 5) For banner in Mobile Dashboard Banner, location = Dashboard Banner Popup.

    \n 6) After create banner successfully, click on language tab.

    \n 7) Click on \"Language\" button and insert relevant details to create banner for different language.

    \n
    \n
    \n
    \n setActiveEventKey5(!activeEventKey5)}>\n
    Create or update product promotion
    {\">\"}
    \n \n 1) Go to \"Manage Deposit Promotion\" (11.17).

    \n 2) Click on \"Add Promotion\", fill in all the details then submit.

    \n 3) After submit successfully, click on \"Add Product\" at the bottom.

    \n 4) Select the product to apply the new promotion.

    \n
    \n
    \n
    \n setActiveEventKey6(!activeEventKey6)}>\n
    How to change company logo
    {\">\"}
    \n \n 1) Go to \"Members\" (2.1), then find member you want to update (only able to apply on most top upline).

    \n 2) Select member and click \"Edit\".

    \n 3) Update logo by dragging file or select file to upload.

    \n 4) Click \"Submit\".

    \n
    \n
    \n
    \n setActiveEventKey7(!activeEventKey7)}>\n
    How to calculate weekly rescue rebate
    {\">\"}
    \n \n 1) Go to \"Tally Win Lose Report\" (7.2), get player's lost amount for specific week.

    \n 2) Get Player VIP Level.

    \n 3) Calculate rescue amount (lose amount x rebate percentage).

    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n )\n}\n\nexport default withRouter(FAQHelp);","import React, { useState, useEffect } from \"react\";\nimport { Link } from \"react-router-dom\";\nimport {\n Panel,\n PanelHeader,\n PanelBody,\n} from \"./../../components/panel/panel.jsx\";\nimport {\n ApiUrl,\n ApiKey,\n TransactionType,\n TransactionStatus,\n LanguageKey,\n Role,\n AccessRight,\n WebUrl\n} from \"../../util/Constant\";\nimport { numberWithCommas, stringIsNullOrEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport moment from \"moment\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { mdiAccount, mdiFileCheck } from '@mdi/js';\nimport Icon from '@mdi/react';\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker.js\";\n\nconst DashboardV1 = (props) => {\n var _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [pendingTransaction, setPendingTransaction] = useState(0);\n const [totalDeposit, setTotalDeposit] = useState(0);\n const [totalDepositData, setTotalDepositData] = useState([]);\n const [totalWithdrawal, setTotalWithdrawal] = useState(0);\n const [totalWithdrawalData, setTotalWithdrawalData] = useState([]);\n const [instantPaySetting, setInstantPaySetting] = useState([]);\n const [rejectReason, setRejectReason] = useState([]);\n const [topWithdrawal, setTopWithdrawal] = useState([]);\n const [topDeposit, setTopDeposit] = useState([]);\n const [startDate, setStartDate] = useState(moment().toDate());\n const [totalMembers, setTotalMembers] = useState(0);\n const [totalNewMembers, setTotalNewMembers] = useState(0);\n const [totalPerformDeposit, settotalPerformDeposit] = useState(0);\n const [topWinners, setTopWinners] = useState([]);\n const [topLosers, setTopLosers] = useState([]);\n const [topBettersCount, setTopBettersCount] = useState(30);\n let role1IsAllowed = checkIfPermissionExist(\n AccessRight._DASHBOARD_DETAILS_PERMISSION,\n true\n );\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n setInterval(init, 60000);\n // getTopBetters(topBettersCount);\n getTopWinnersLosers(topBettersCount);\n }, []);\n\n const getTopBetters = async (value) => {\n {\n setTopBettersCount(value);\n await fetch(ApiUrl._API_GET_TOP_WINNERS_AND_LOSERS + \"?count=\" + value, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n let tempWinners = [];\n let tempLosers = [];\n data[\"winners\"].map((record, index) => {\n if (record['winning'] >= 0) {\n tempWinners.push(record);\n }\n })\n data[\"losers\"].map((record, index) => {\n if (record['winning'] < 0) {\n tempLosers.push(record);\n }\n })\n setTopWinners(tempWinners);\n setTopLosers(tempLosers);\n }\n });\n }\n }\n /// \n /// Author : -\n /// \n\n \n const init = async () => {\n await fetch(ApiUrl._API_GET_TOTAL_TRANSACTION_AMOUNT_COUNT_BY_STATUS_TYPE, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (!stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY])) {\n let pendingTransactions = 0;\n responseJson[ApiKey._API_DATA_KEY].map((data, index) => {\n if (data.approvalStatus == TransactionStatus._OPEN) {\n pendingTransactions += data.totalCount;\n } else if (data.approvalStatus == TransactionStatus._APPROVED) {\n if (data.transactionTypeId == TransactionType._DEPOSIT) {\n setTotalDepositData(data);\n setTotalDeposit(data.totalTransactionAmount);\n } else if (\n data.transactionTypeId == TransactionType._WITHDRAWAL\n ) {\n setTotalWithdrawalData(data);\n setTotalWithdrawal(data.totalTransactionAmount);\n }\n }\n });\n setPendingTransaction(pendingTransactions);\n }\n }\n });\n\n await fetch(\n ApiUrl._API_GET_TOP_MEMBER_OF_TRANSACTION_BY_STATUS +\n \"?status=\" +\n TransactionStatus._APPROVED,\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n responseJson[ApiKey._API_DATA_KEY].map((data, index) => {\n if (data[\"transactionTypeId\"] == TransactionType._DEPOSIT) {\n setTopDeposit(data[\"values\"]);\n } else if (\n data[\"transactionTypeId\"] == TransactionType._WITHDRAWAL\n ) {\n setTopWithdrawal(data[\"values\"]);\n }\n });\n }\n });\n\n await fetch(ApiUrl._API_GET_USER_INSTANT_PAY_SETTING + \"?all=true\", {\n method: ApiKey._API_GET_USER_INSTANT_PAY_SETTING,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setInstantPaySetting(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n\n await fetch(ApiUrl._API_GET_USER_REJECT_CODE + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setRejectReason(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n {\n await fetch(ApiUrl._API_GET_TOTAL_REGISTERED_MEMBER_UNDER_MAIN_ACCOUNT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setTotalMembers(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n\n await fetch(ApiUrl._API_GET_TOTAL_REGISTERED_MEMBER_UNDER_MAIN_ACCOUNT, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setTotalNewMembers(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n\n await fetch(ApiUrl._API_GET_ALL_TOTAL_DEPOSIT_TRANSACTION_BY_TODAY_NEW, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n settotalPerformDeposit(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n };\n\n const getTopWinnersLosers = async (value) => {\n await fetch(ApiUrl._API_GET_TOP_WINNERS_LOSERS + \"?count=\" + value, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\n let data = responseJson[ApiKey._API_DATA_KEY];\n\n let tempWinners = [];\n let tempLosers = [];\n data.map((record, index) => {\n if (record['winning'] > 0) {\n tempWinners.push(record);\n }else{\n tempLosers.push(record);\n tempLosers.sort((a, b) => a.winning - b.winning);\n\n }\n })\n // data.map((record, index) => {\n // if (record['winning'] < 0) {\n // tempLosers.push(record);\n // }\n // })\n setTopWinners(tempWinners);\n setTopLosers(tempLosers);\n }\n });\n }\n /// \n /// Author : -\n /// \n async function performRewardCalculation() {\n var responseJson = await ApiEngine.post(\n ApiUrl._API_PERFORM_GAME_CALCULATION +\n \"?date=\" +\n moment(startDate).format(\"YYYY-MM-DD\")\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n\n return (\n
    \n
      \n
    1. \n {t(\"HOME\")}\n
    2. \n
    3. {t(\"DASHBOARD\")}
    4. \n
    \n

    {t(\"DASHBOARD\")}

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

    {t(\"PENDING_TRANSACTIONS\")}

    \n

    {numberWithCommas(pendingTransaction)}

    \n
    \n
    \n \n {t(\"VIEW_DETAIL\")}{\" \"}\n \n \n
    \n
    \n
    \n {role1IsAllowed ?
    \n
    \n
    \n \n
    \n
    \n
    \n

    {t(\"TOTAL_DEPOSIT\")}

    \n
    \n
    \n
    \n \n {t(\"TOTAL_DEPOSIT_PLAYERS\")}\n
    \n
    {totalDepositData.totalDepositPlayers ? totalDepositData.totalDepositPlayers : \"0\"}
    \n
    \n
    \n
    \n \n {t(\"TOTAL_DEPOSIT_APPROVED\")}\n
    \n
    {totalDepositData.totalCount ? totalDepositData.totalCount : \"0\"}
    \n
    \n
    \n
    \n

    {numberWithCommas(totalDeposit)}

    \n
    \n
    \n \n {t(\"VIEW_DETAIL\")}{\" \"}\n \n \n
    \n
    \n
    : <>}\n {role1IsAllowed ?
    \n
    \n
    \n \n
    \n
    \n
    \n

    {t(\"TOTAL_WITHDRAWAL\")}

    \n
    \n
    \n
    \n \n {t(\"TOTAL_WITHDRAWAL_PLAYERS\")}\n
    \n
    {totalWithdrawalData.totalWithdrawalPlayers ? totalWithdrawalData.totalWithdrawalPlayers : \"0\"}
    \n
    \n
    \n
    \n \n {t(\"TOTAL_WITHDRAWAL_APPROVED\")}\n
    \n
    {totalWithdrawalData.totalCount ? totalWithdrawalData.totalCount : \"0\"}
    \n
    \n
    \n
    \n

    {totalWithdrawal > 0 ? \"-\" : \"\"}{numberWithCommas(totalWithdrawal)}

    \n
    \n
    \n \n {t(\"VIEW_DETAIL\")}{\" \"}\n \n \n
    \n
    \n
    : <>}\n {role1IsAllowed ?
    \n
    \n
    \n \n
    \n
    \n

    {t(\"TOTAL_MEMBERS_REGISTERED\")}

    \n

    {totalMembers}

    \n
    \n
    \n \n {t(\"VIEW_DETAIL\")}{\" \"}\n \n \n
    \n
    \n
    : <>}\n {role1IsAllowed ?
    \n
    \n
    \n \n
    \n
    \n

    {t(\"NEW_MEMBERS_IN_7_DAYS / DEPOSITED_MEMBER\")}

    \n

    {totalNewMembers} / {totalPerformDeposit}

    \n
    \n
    \n \n {t(\"VIEW_DETAIL\")}{\" \"}\n \n \n
    \n
    \n
    : <>} \n
    \n {role1IsAllowed ?
    \n
    \n
    \n
    \n \n {t(\"TOP_DEPOSIT\")}\n \n \n \n {topDeposit.length > 0 ? (\n topDeposit.map((deposit, index) => {\n return (\n \n \n \n \n );\n })\n ) : (\n \n \n \n )}\n \n
    {deposit.memberName + \" (\" + deposit.memberUsername + \") \"}\n {numberWithCommas(deposit.totalTransaction)}\n
    \n {t(\"NO_RECORD\")}\n
    \n
    \n
    \n
    \n
    \n \n {t(\"TOP_WITHDRAWAL\")}\n \n \n \n {topWithdrawal.length > 0 ? (\n topWithdrawal.map((withdrawal, index) => {\n return (\n \n \n \n \n );\n })\n ) : (\n \n \n \n )}\n \n
    {withdrawal.memberName + \" (\" + withdrawal.memberUsername + \") \"}\n {numberWithCommas(withdrawal.totalTransaction)}\n
    \n {t(\"NO_RECORD\")}\n
    \n
    \n
    \n
    \n
    \n \n {t(\"TOP\")} getTopWinnersLosers(topBettersCount)} />{t(\"WINNER\")}\n \n \n \n {topWinners.length > 0 ? (\n topWinners.map((winners, index) => {\n return (\n \n \n \n \n );\n })\n ) : (\n \n \n \n )}\n \n
    {winners.username}\n {numberWithCurrencyFormat(winners.winning, 2, true)}\n
    \n {t(\"NO_RECORD\")}\n
    \n
    \n
    \n
    \n
    \n \n {t(\"TOP_LOSER\", { value: topBettersCount })}\n \n \n \n {topLosers.length > 0 ? (\n topLosers.map((losers, index) => {\n return (\n \n \n \n \n );\n })\n ) : (\n \n \n \n )}\n \n
    {losers.username}\n {numberWithCurrencyFormat(losers.winning, 2, true)}\n
    \n {t(\"NO_RECORD\")}\n
    \n
    \n
    \n
    \n
    \n \n {t(\"INSTANT_PAY_SETTINGS\")}\n \n
    \n \n \n \n \n \n \n \n \n \n {instantPaySetting.length > 0 ? (\n instantPaySetting.map((setting, index) => {\n return (\n \n \n \n \n \n );\n })\n ) : (\n \n \n \n )}\n \n
    {t(\"NAME\")}{t(\"STATUS\")}
    \n {!stringIsNullOrEmpty(setting.image) ? (\n \n ) : (\n - \n )}\n {setting.instantPayGatewayString}\n {setting.status ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n {t(\"NO_RECORD\")}\n
    \n
    \n
    \n
    \n
    \n
    \n \n {t(\"REJECT_REASONS\")}\n \n
      \n {rejectReason.length > 0 ? (\n rejectReason.map((reason, index) => {\n return (\n
    • \n \n
      {index + 1}.
      \n
      \n {reason.description}\n
      \n \n
    • \n );\n })\n ) : (\n
    • \n
      {t(\"NO_RECORD\")}
      \n
    • \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    :<>}\n
    \n
    \n
    \n
    \n \n
    \n
    \n

    {t(\"DAILY_TASKS\")} ({t(\"BY\")} 12:00 p.m. {t(\"DAILY\")})

    \n {t(\"VIP_BIRTHDAY_BONUS\")}
    \n {t(\"VIP_WEEKLY_RESCUE_BONUS\")}
    \n {t(\"VIP_COMMISSION\")}
    \n {t(\"MEMBER_GAME_POINTS\")}
    \n {t(\"SHAREHOLDERS_PROCESS\")}
    \n {t(\"POINTS_REDEMPTION\")}\n
    \n
    \n \n {t(\"VIEW_DETAIL\")}{\" \"}\n \n \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default DashboardV1;","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useForm } from \"react-hook-form\";\nimport { createFormBody } from \"../../util/Util\";\nimport { ApiKey, ApiUrl, Role, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport Select from \"react-select\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\nrequire(\"codemirror/mode/xml/xml.js\");\nrequire(\"codemirror/mode/javascript/javascript.js\");\n\n/// \n/// Author : -\n/// \nconst SuperAccount = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors } = useForm();\n const [username, setUsername] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [confirmPassword, setConfirmPassword] = useState(\"\");\n const [fullName, setFullName] = useState(\"\");\n const [phone, setPhone] = useState(\"\");\n const [email, setEmail] = useState(\"\");\n const [userId, setUserId] = useState(\"\");\n const [timeZone, setTimeZone] = useState();\n\n var _TIMEZONE_OPTION = [\n { label: \"(GMT-11:00) Pago Pago\", value: -11 },\n { label: \"(GMT-10:00) Pacific/Honolulu\", value: -10 },\n { label: \"(GMT-08:00) America/Los_Angeles\", value: -8 },\n { label: \"(GMT-07:00) America/Denver\", value: -7 },\n { label: \"(GMT-06:00) America/Chicago\", value: -6 },\n { label: \"(GMT-05:00) America/New_York\", value: -5 },\n { label: \"(GMT-04:00) America/Guyana\", value: -4 },\n { label: \"(GMT-03:00) America/Santiago\", value: -3 },\n { label: \"(GMT-02:00) America/Sao_Paulo\", value: -2 },\n { label: \"(GMT-01:00) Atlantic/Azores\", value: -1 },\n { label: \"(GMT+00:00) Europe/London\", value: 0 },\n { label: \"(GMT+01:00) Europe/Berlin\", value: 1 },\n { label: \"(GMT+02:00) Europe/Athens\", value: 2 },\n { label: \"(GMT+03:00) Europe/Istanbul\", value: 3 },\n { label: \"(GMT+04:00) Europe/Samara\", value: 4 },\n { label: \"(GMT+05:00) Asia/Karachi\", value: 5 },\n { label: \"(GMT+06:00) Asia/Dhaka\", value: 6 },\n { label: \"(GMT+07:00) Asia/Bangkok\", value: 7 },\n { label: \"(GMT+08:00) Asia/Singapore\", value: 8 },\n { label: \"(GMT+09:00) Asia/Seoul\", value: 9 },\n { label: \"(GMT+10:00) Asia/Magadan\", value: 10 },\n { label: \"(GMT+11:00) Australia/Sydney\", value: 11 },\n { label: \"(GMT+12:00) Pacific/Majuro\", value: 12 },\n { label: \"(GMT+13:00) Pacific/Auckland\", value: 13 },\n { label: \"(GMT+14:00) Pacific/Apia\", value: 14 },\n ];\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n if (data.password != data.confirmPassword) {\n _dispatch(\n showMessage(false, t(\"CONFIRM_PASSWORD_AND_PASSWORD_IS_NOT_TALLY\"))\n );\n return;\n }\n\n let params = {\n username: data.username,\n password: data.password,\n email: data.email,\n phone: data.phone,\n fullName: data.fullName,\n roleId: 1,\n //role: data.fullName,\n id: userId,\n timeZone: timeZone\n };\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_ACCOUNT, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_SUPER_COMPANY, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setUsername(responseJson[ApiKey._API_DATA_KEY][\"username\"]);\n setPhone(responseJson[ApiKey._API_DATA_KEY][\"phoneNumber\"]);\n setFullName(responseJson[ApiKey._API_DATA_KEY][\"userFullName\"]);\n setPassword(responseJson[ApiKey._API_DATA_KEY][\"password\"]);\n setConfirmPassword(responseJson[ApiKey._API_DATA_KEY][\"password\"]);\n setEmail(responseJson[ApiKey._API_DATA_KEY][\"email\"]);\n setUserId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setTimeZone(responseJson[ApiKey._API_DATA_KEY][\"timeZone\"]);\n }\n });\n }, []);\n\n return (\n
    \n

    {t(\"MANAGE_SUPER_COMPANY\")}

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n {errors.username && (\n
    \n {t(errors.username.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.password && (\n
    \n {t(errors.password.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.confirmPassword && (\n
    \n {t(errors.confirmPassword.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n \n {errors.fullName && (\n
    \n {t(errors.fullName.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.phone && (\n
    \n {t(errors.phone.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.email && (\n
    \n {t(errors.email.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n option.value == timeZone\n )[0] !== undefined\n ? _TIMEZONE_OPTION.filter(\n (option) => option.value == timeZone\n )[0].label\n : \"\"\n }\n value={_TIMEZONE_OPTION.filter(\n (option) => option.value == timeZone\n )}\n onChange={(e) => {\n setTimeZone(e.value);\n }}\n />\n {errors.timeZone && (\n
    \n {t(errors.timeZone.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default SuperAccount;\n","import React, { useEffect, useState } from \"react\";\nimport {\n useTable,\n usePagination,\n useSortBy,\n useFilters,\n useGroupBy,\n useExpanded,\n useRowSelect,\n useGlobalFilter,\n} from \"react-table\";\nimport { LanguageKey, ApiKey } from \"../../../util/Constant\";\nimport {\n stringIsNullOrEmpty,\n isObjectEmpty,\n numberWithCurrencyFormat,\n} from \"../../../util/Util\";\nimport { useTranslation, Translation } from \"react-i18next\";\nimport { showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport ApiEngine from \"../../../util/ApiEngine\";\nimport { useExportData } from \"react-table-plugins\";\nimport Papa from \"papaparse\";\nimport XLSX from \"xlsx\";\nimport FileSaver from \"file-saver\";\n\n// Define a default UI for filtering\nconst DefaultColumnFilter = ({\n column: { filterValue, preFilteredRows, setFilter },\n}) => {\n return (\n {\n setFilter(e.target.value || undefined); // Set undefined to remove the filter entirely\n }}\n />\n );\n};\n\n/// \n/// A default UI for Global Filtering\n/// \nconst GlobalFilter = ({\n preGlobalFilteredRows,\n globalFilter,\n setGlobalFilter,\n}) => {\n return (\n \n {(t, { i18n }) => (\n \n {\n setGlobalFilter(e.target.value || undefined);\n }}\n placeholder={t(\"SEARCH_HERE\")}\n />\n \n )}\n \n );\n};\n\n/// \n/// table provided option for filter, global filter, minimum rows, and footer\n/// \nconst ReactTable = ({\n className = \"\",\n columns,\n data,\n filterable = false,\n renderFooter = false,\n globalFilterable = true,\n tableStyle,\n defaultSortBy,\n minRows = 0,\n getFilteredRecords,\n fetchUrl,\n showOverallInfo = false,\n postData,\n getOverallInfo,\n exportRequired = false,\n initialPageSize = 10,\n fetchedData = null,\n}) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [tableData, setTableData] = useState([]);\n const [processedPageCount, setProcessedPageCount] = useState(0);\n const [totalRecordCount, setTotalRecordCount] = useState(0);\n const [overallInfo, setOverallInfo] = useState({});\n const _dispatch = useDispatch();\n\n const defaultColumn = React.useMemo(\n () => ({\n Filter: DefaultColumnFilter,\n }),\n []\n );\n\n ///default page size option for select\n const pageSizeOptions = React.useMemo(() => {\n return [10, 20, 30, 40, 50, 999, 9999];\n }, []);\n\n /// \n /// Author: -\n /// \n function getExportFileBlob({ columns, data, fileType, fileName }) {\n var response = null;\n if (!stringIsNullOrEmpty(fetchUrl)) {\n if (postData != null) {\n postData[\"start\"] = 0;\n postData[\"start\"] = totalRecordCount;\n\n response = ApiEngine.post(fetchUrl, postData);\n } else {\n fetchUrl += fetchUrl.indexOf(\"?\") != -1 ? \"&\" : \"?\";\n\n response = ApiEngine.get(\n fetchUrl + \"start=\" + 0 + \"&count=\" + totalRecordCount\n );\n }\n\n response.then(function (responseJson) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n var allData =\n responseJson[ApiKey._API_DATA_KEY][ApiKey._API_DATA_KEY];\n\n if (fileType === \"csv\") {\n const csvString = Papa.unparse(allData);\n var csvData = new Blob([csvString], { type: \"text/csv\" });\n FileSaver.saveAs(csvData, `${fileName}.csv`);\n } else if (fileType === \"xlsx\") {\n const header = columns.map((c) => c.id);\n const headerNames = columns.map((c) => t(c.exportValue));\n\n const compatibleData = allData.map((row) => {\n const obj = {};\n header.forEach((col, index) => {\n obj[headerNames[index]] = row[col];\n });\n return obj;\n });\n\n let wb = XLSX.utils.book_new();\n let ws1 = XLSX.utils.json_to_sheet(compatibleData, {\n headerNames,\n });\n XLSX.utils.book_append_sheet(wb, ws1, \"React Table Data\");\n XLSX.writeFile(wb, `${fileName}.xlsx`);\n }\n return false;\n }\n });\n }\n }\n\n const {\n getTableProps,\n getTableBodyProps,\n headerGroups,\n footerGroups,\n prepareRow,\n page,\n canPreviousPage,\n canNextPage,\n pageOptions,\n pageCount,\n gotoPage,\n nextPage,\n previousPage,\n setPageSize,\n preGlobalFilteredRows,\n setGlobalFilter,\n exportData,\n state: {\n globalFilter,\n pageIndex,\n pageSize,\n sortBy,\n groupBy,\n expanded,\n filters,\n selectedRowIds,\n },\n } = useTable(\n {\n columns,\n data: tableData,\n defaultColumn,\n disableMultiSort: true,\n initialState: {\n pageIndex: 0,\n pageSize: initialPageSize,\n sortBy: defaultSortBy != null ? defaultSortBy : [],\n },\n manualPagination: !stringIsNullOrEmpty(fetchUrl),\n pageCount: processedPageCount,\n autoResetPage: stringIsNullOrEmpty(fetchUrl),\n getExportFileBlob,\n autoResetPage: false,\n },\n useGlobalFilter,\n useFilters,\n useGroupBy,\n useSortBy,\n useExpanded,\n usePagination,\n useRowSelect,\n useExportData\n );\n\n /// used to get the filtered record\n useEffect(() => {\n if (getFilteredRecords != null) {\n getFilteredRecords({ page });\n }\n }, [globalFilter, filters, pageSize, pageIndex]);\n\n /// \n /// used to pass the overallInfo to front\n /// \n useEffect(() => {\n if (getOverallInfo != null) {\n getOverallInfo(overallInfo);\n }\n }, [overallInfo]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (fetchUrl == null) {\n setTableData(data);\n }\n }, [data]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (fetchUrl == null) {\n setProcessedPageCount(Math.ceil(tableData.length / pageSize));\n }\n }, [tableData]);\n\n /// \n /// Author : -\n /// used for triggering the fetch data function\n /// \n useEffect(() => {\n updateDisplay();\n }, [fetchUrl, pageSize, pageIndex]);\n\n /// \n /// Author : -\n /// \n async function updateDisplay() {\n if (!stringIsNullOrEmpty(fetchUrl)) {\n const startRow = pageSize * pageIndex;\n\n if (postData != null) {\n postData[\"start\"] = startRow;\n postData[\"count\"] = pageSize;\n\n var responseJson = await ApiEngine.post(fetchUrl, postData);\n } else {\n fetchUrl += fetchUrl.indexOf(\"?\") != -1 ? \"&\" : \"?\";\n\n var responseJson = await ApiEngine.get(\n fetchUrl + \"start=\" + startRow + \"&count=\" + pageSize\n );\n }\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setTableData(responseJson[ApiKey._API_DATA_KEY][ApiKey._API_DATA_KEY]);\n\n if (fetchedData != null) {\n fetchedData(responseJson[ApiKey._API_DATA_KEY]);\n }\n\n let calculatedPageCount = Math.ceil(\n responseJson[ApiKey._API_DATA_KEY][\"totalCount\"] / pageSize\n );\n setProcessedPageCount(calculatedPageCount);\n setTotalRecordCount(responseJson[ApiKey._API_DATA_KEY][\"totalCount\"]);\n setOverallInfo(responseJson[ApiKey._API_DATA_KEY][\"overallInfo\"] ?? {});\n\n if (calculatedPageCount < pageIndex) {\n gotoPage(Math.max(calculatedPageCount - 1, 0));\n }\n if (responseJson[ApiKey._API_DATA_KEY][\"totalCount\"] < pageSize) {\n gotoPage(0);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n responseJson[ApiKey._API_MESSAGE_KEY]\n )\n );\n }\n } else {\n setProcessedPageCount(Math.ceil(tableData.length / pageSize));\n }\n }\n\n // Render the UI for your table\n return (\n
    \n {!isObjectEmpty(overallInfo) && showOverallInfo && (\n
    \n {Object.keys(overallInfo).map((key, index) => {\n return (\n \n \n {t(key)}:{\" \"}\n = 0 ? \"success\" : \"danger\")\n }\n >\n {numberWithCurrencyFormat(parseFloat(overallInfo[key]), 3)}\n \n \n
    \n );\n })}\n
    \n )}\n {totalRecordCount > 0 && exportRequired && (\n
    \n
    \n {\n exportData(\"xlsx\", true);\n }}\n >\n \n \n {\n exportData(\"csv\", true);\n }}\n >\n \n \n
    \n
    \n )}\n {globalFilterable && (\n
    \n
    \n
    \n \n
    \n
    \n )}\n
    \n \n \n {headerGroups.map((headerGroup) => (\n \n {headerGroup.headers.map((column) => (\n \n
    \n \n {t(column.render(\"Header\"))}\n {column.disableSortBy ==\n true ? null : column.isSorted ? (\n column.isSortedDesc ? (\n \n ) : (\n \n )\n ) : (\n \n )}\n \n
    \n {/* Render the columns filter UI */}\n
    \n {filterable && column.canFilter\n ? column.render(\"Filter\")\n : null}\n
    \n \n ))}\n \n ))}\n \n \n {page.map((row, index) => {\n prepareRow(row);\n return (\n \n {row.cells.map((cell) => {\n return (\n \n {cell.render(\"Cell\")}\n \n );\n })}\n \n );\n })}\n {page.length === 0 ? (\n \n \n {t(\"NO_DATA_FOUND\")}\n \n \n ) : (\n minRows > 0 &&\n [\n ...Array(\n pageSize <= minRows\n ? pageSize - page.length\n : Math.max(0, minRows - page.length)\n ),\n ].map((x, i) => (\n \n {[...Array(page[0].cells.length)].map((a, b) => (\n \n ))}\n \n ))\n )}\n \n {renderFooter && (\n \n {footerGroups.map((group) => (\n \n {group.headers.map((column) => (\n \n {column.render(\"Footer\")}\n \n ))}\n \n ))}\n \n )}\n \n
    \n
    \n gotoPage(0)}\n disabled={!canPreviousPage}\n >\n {\"<<\"}\n {\" \"}\n previousPage()}\n disabled={!canPreviousPage}\n >\n {\"<\"}\n {\" \"}\n nextPage()}\n disabled={!canNextPage}\n >\n {\">\"}\n {\" \"}\n gotoPage(processedPageCount - 1)}\n disabled={!canNextPage}\n >\n {\">>\"}\n {\" \"}\n
    \n \n {t(\"PAGE\")}{\" \"}\n \n {pageIndex + 1} of {pageOptions.length}\n {\" \"}\n \n \n | {t(\"GO_TO_PAGE\")}:{\" \"}\n {\n const page = e.target.value ? Number(e.target.value) - 1 : 0;\n gotoPage(page);\n }}\n style={{ width: \"100px\" }}\n />\n {\" \"}\n setPageSize(Number(e.target.value))}\n >\n {pageSizeOptions.map((pageSize) => (\n \n ))}\n \n
    \n
    \n \n );\n};\n\nexport default ReactTable;\n","import React from 'react';\nimport { stringIsNullOrEmpty } from \"../../../util/Util\";\n\n/// \n/// Author : -\n/// Used to create the navigation button\n/// It will form different button based on the existence of url\n/// \nconst NavigationButton = (props) => {\n if (!stringIsNullOrEmpty(props.url)) {\n return (\n \n );\n }\n else {\n return (\n \n );\n }\n}\n\nexport default NavigationButton","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiKey,\n ApiUrl,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageCompany = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [companyData, setCompanyData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n },\n {\n Header: \"FULLNAME\",\n accessor: \"userFullName\",\n },\n {\n Header: \"MOBILE\",\n accessor: \"phoneNumber\",\n },\n {\n Header: \"EMAIL\",\n accessor: \"email\",\n },\n {\n Header: \"INITIAL_CREDIT\",\n accessor: \"credit\",\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._COMPANY_CONTROL_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_EDIT_COMPANY,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n {\n navigateTo(\n _history,\n WebUrl._URL_COMPANY_PRODUCT_MAINTENANCE,\n row.original\n );\n }}\n >\n {t(\"EDIT_PRODUCTS\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_ALL_COMPANY, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setCompanyData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"COMPANIES\")}\n {checkIfPermissionExist(\n AccessRight._COMPANY_CONTROL_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageCompany;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tStatus,\n\tPaymentType,\n\tGender,\n\tLanguageKey,\n\tMemberStatus,\n\tTransferBackMainWallet,\n\tRole,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport moment from \"moment\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport DateTime from \"react-datetime\";\nimport { useTranslation } from \"react-i18next\";\nimport Select from \"react-select\";\nimport IntlTelInput from \"react-intl-tel-input\";\nimport \"react-intl-tel-input/dist/main.css\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Dropzone from \"react-dropzone\";\nimport CreatableSelect from \"react-select/creatable\";\n\n/// \n/// Author : -\n/// \nconst MemberDetail = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _dispatch = useDispatch();\n\tconst {\n\t\tregister,\n\t\thandleSubmit,\n\t\terrors,\n\t\tsetValue,\n\t\twatch,\n\t\ttrigger,\n\t\tformState,\n\t\tcontrol,\n\t} = useForm();\n\n\tconst [username, setUsername] = useState(\"\");\n\tconst [password, setPassword] = useState(\"\");\n\tconst [memberId, setMemberId] = useState(\"\");\n\n\tconst [confirmPassword, setConfirmPassword] = useState(\"\");\n\tconst [memberPin, setMemberPin] = useState(\"\");\n\tconst [shareholderPin, setShareholderPin] = useState(\"\");\n\tconst [fullName, setFullName] = useState(\"\");\n\tconst [cnFullName, setCNFullName] = useState(\"\");\n\tconst [phone, setPhone] = useState(\"\");\n\tconst [isPhoneVerified, setIsPhoneVerified] = useState(false);\n\tconst [email, setEmail] = useState(\"\");\n\tconst [gender, setGender] = useState(\"\");\n\tconst [rollOverThreshold, setRollOverThreshold] = useState(\"\");\n\tconst [riskLevel, setRiskLevel] = useState(\"\");\n\tconst [internalTransferLimit, setInternalTransferLimit] = useState(0);\n\tconst [memberDateJoined, setMemberDateJoined] = useState(\n\t\tmoment().format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [memberLastLogin, setMemberLastLogin] = useState(\n\t\tmoment().format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [shareholderDate, setShareholderDate] = useState(\n\t\tmoment().format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [isUpline, setIsUpline] = useState(false);\n\tconst [timeZone, setTimeZone] = useState(0);\n\tconst [memberData, setMemberData] = useState([]);\n\tconst [source, setSource] = useState(\"\");\n\tconst [campaign, setCampaign] = useState(\"\");\n\tconst [address, setAddress] = useState(\"\");\n\tconst [postalCode, setPostalCode] = useState(\"\");\n\tconst [state, setState] = useState(\"\");\n\tconst [city, setCity] = useState(\"\");\n\tconst [referralCode, setReferralCode] = useState(\"\");\n\tconst [parentMemberId, setParentMemberId] = useState(\"\");\n\n\tconst [paymentType, setPaymentType] = useState(\"\");\n\tconst [vipOption, setVipOption] = useState([]);\n\tconst [status, setStatus] = useState(1);\n\tconst [changeRiskLvl, setChangeRiskLvl] = useState(false);\n\n\tconst [desktopFile, setDesktopFile] = useState([]);\n\tconst [mobileFile, setMobileFile] = useState([]);\n\tconst [desktopImage, setDesktopImage] = useState();\n\tconst [mobileImage, setMobileImage] = useState();\n\tconst [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n\tconst [isNewMobileImage, setIsNewMobileImage] = useState(false);\n\tconst [isTestAccount, setIsTestAccount] = useState(false);\n\tconst [remarkOption, setRemarkOption] = useState([]);\n\tconst [blockedDate, setBlockedDate] = useState(\n\t\tnull\n\t);\n\tconst statusOption = Object.keys(MemberStatus).map((status, index) => {\n\t\treturn {\n\t\t\tlabel: t(status.substr(status.indexOf(\"_\") + 1)),\n\t\t\tvalue: MemberStatus[status],\n\t\t};\n\t});\n\n\tconst [transferBackToMainWallet, setTransferBackToMainWallet] = useState(\"\");\n\tconst transferOption = Object.keys(TransferBackMainWallet).map(\n\t\t(transferBackToMainWallet, index) => {\n\t\t\treturn {\n\t\t\t\tlabel: t(\n\t\t\t\t\ttransferBackToMainWallet.substr(\n\t\t\t\t\t\ttransferBackToMainWallet.indexOf(\"_\") + 1\n\t\t\t\t\t)\n\t\t\t\t),\n\t\t\t\tvalue: TransferBackMainWallet[transferBackToMainWallet],\n\t\t\t};\n\t\t}\n\t);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tif (data.password != data.confirmPassword) {\n\t\t\t_dispatch(\n\t\t\t\tshowMessage(false, t(\"CONFIRM_PASSWORD_AND_PASSWORD_IS_NOT_TALLY\"))\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\t\tlet params = {\n\t\t\tusername: data.username,\n\t\t\tpassword: data.password,\n\t\t\tpinNumber: data.memberPin,\n\t\t\tshareholderPin: data.shareholderPin,\n\t\t\tuserFullName: data.fullName,\n\t\t\tuserCNFullName: data.cnFullName,\n\t\t\tphoneNumber: data.phone,\n\t\t\temail: data.email,\n\t\t\tpaymentModeId: data.paymentType,\n\t\t\trollOverThreshold: data.rollOverThreshold,\n\t\t\tstatus: data.status,\n\t\t\tbirthDate: data.birthDate,\n\t\t\tvipId: data.vip,\n\t\t\triskLevel: changeRiskLvl ? data.riskLevel : memberData[\"riskLevel\"],\n\t\t\tinternalTransferLimit: data.internalTransferLimit,\n\t\t\ttransferBackMainWallet:\n\t\t\t\ttypeof data.transferBackMainWallet !== \"undefined\"\n\t\t\t\t\t? data.transferBackMainWallet\n\t\t\t\t\t: 0,\n\t\t\tisNewDesktopFile: isNewDesktopImage,\n\t\t\tisNewMobileFile: isNewMobileImage,\n\t\t\tisTestAccount: isTestAccount,\n\t\t\tremark: data.remark,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(memberId)) {\n\t\t\tparams[\"id\"] = memberId;\n\t\t} else if (!stringIsNullOrEmpty(referralCode)) {\n\t\t\tparams[\"referralCode\"] = referralCode;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(parentMemberId)) {\n\t\t\tparams[\"referralMember\"] = parentMemberId;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(desktopFile)) {\n\t\t\tparams[\"desktopFile\"] = desktopFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(desktopImage)) {\n\t\t\tparams[\"desktopImageRemoved\"] = true;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(mobileFile)) {\n\t\t\tparams[\"mobileFile\"] = mobileFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(mobileImage)) {\n\t\t\tparams[\"mobileImageRemoved\"] = true;\n\t\t}\n\n\t\t//let tempIsPhoneVerified = true;\n\t\t//if (data.phone !== phone){\n\t\t// params['isPhoneVerify'] = false;\n\t\t// tempIsPhoneVerified = false;\n\t\t//}\n\n\t\tlet formBody = createMultiPartFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_MEMBER, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t//setIsPhoneVerified(tempIsPhoneVerified);\n\t\t\t\t\tsetMemberId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\tprops.setParentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\tprops.setParentName(data.username);\n\t\t\t\t}\n\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t\tinit();\n\t\t\t});\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, [props.id, props.parentMemberId]);\n\tuseEffect(()=>{\n\t\tif(status < 1) {\n\t\t\t\n\t\t\tif(status == -1){\n\t\t\t\tfetchRemarks(3);\n\t\t\t\tsetValue(\"remark\",'');\n\t\t\t}else{\n\t\t\t\tfetchRemarks(2);\n\t\t\t\tsetValue(\"remark\",'');\n\n\t\t\t}\n\n\t\t\n\t\t}\n\t\t\n\t},[status]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\t_dispatch(setBusy());\n\n\t\ttry {\n\t\t\tvar vipList = [];\n\t\t\tvar parentReferralCode = \"\";\n\t\t\tvar parentMemberId = props.parentMemberId ?? \"\";\n\n\t\t\tvar responseJson = await ApiEngine.get(ApiUrl._API_GET_USER_VIP);\n\n\t\t\tif (!responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\n\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (vipLevel) {\n\t\t\t\tvipList.push({ label: vipLevel.name, value: vipLevel.id });\n\t\t\t});\n\n\t\t\tsetVipOption(vipList);\n\n\t\t\tif (props.id) {\n\t\t\t\tresponseJson = await ApiEngine.get(\n\t\t\t\t\tApiUrl._API_GET_USER_MEMBER_BY_ID + \"?id=\" + props.id\n\t\t\t\t);\n\n\t\t\t\tif (!responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t\t}\n\t\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY];\n\t\t\t\tsetIsUpline(data[\"isUpline\"]);\n\t\t\t\tsetTimeZone(data[\"userTimeZone\"]);\n\t\t\t\tlet tempMemberData = data[\"memberData\"];\n\t\t\t\tsetMemberData(tempMemberData);\n\t\t\t\tsetMemberId(tempMemberData[\"id\"]);\n\t\t\t\tsetUsername(tempMemberData[\"username\"]);\n\t\t\t\tsetPassword(tempMemberData[\"password\"]);\n\t\t\t\tsetConfirmPassword(tempMemberData[\"password\"]);\n\t\t\t\tsetMemberPin(tempMemberData[\"pinNumber\"]);\n\t\t\t\tsetShareholderPin(tempMemberData[\"shareholderPin\"]);\n\t\t\t\tsetFullName(tempMemberData[\"userFullName\"]);\n\t\t\t\tsetCNFullName(tempMemberData[\"userCNFullName\"]);\n\t\t\t\tsetPhone(tempMemberData[\"phoneNumber\"]);\n\t\t\t\tsetIsPhoneVerified(tempMemberData[\"isPhoneVerify\"]);\n\t\t\t\tsetValue(\"phone\", tempMemberData[\"phoneNumber\"]);\n\t\t\t\tsetEmail(tempMemberData[\"email\"]);\n\t\t\t\tsetRollOverThreshold(tempMemberData[\"rollOverThreshold\"]);\n\t\t\t\tsetGender(tempMemberData[\"gender\"] ? Gender._MALE : Gender._FEMALE);\n\n\t\t\t\tsetSource(tempMemberData[\"utmSource\"]);\n\t\t\t\tsetCampaign(tempMemberData[\"utmCampaign\"]);\n\t\t\t\tsetAddress(tempMemberData[\"address\"]);\n\t\t\t\tsetPostalCode(tempMemberData[\"postalCode\"]);\n\t\t\t\tsetState(tempMemberData[\"state\"]);\n\t\t\t\tsetCity(tempMemberData[\"city\"]);\n\t\t\t\tsetPaymentType(tempMemberData[\"paymentModeId\"]);\n\t\t\t\tsetInternalTransferLimit(tempMemberData[\"internalTransferLimit\"]);\n\t\t\t\tsetValue(\"birthDate\", tempMemberData[\"birthDateString\"]);\n\t\t\t\tsetValue(\"vip\", tempMemberData[\"vipId\"]);\n\t\t\t\tsetValue(\"status\", tempMemberData[\"status\"]);\n\t\t\t\tsetStatus(tempMemberData[\"status\"])\n\t\t\t\tsetValue(\"remark\", tempMemberData[\"remark\"]);\n\t\t\t\tsetValue(\n\t\t\t\t\t\"transferBackMainWallet\",\n\t\t\t\t\ttempMemberData[\"transferBackMainWallet\"]\n\t\t\t\t);\n\t\t\t\tsetIsTestAccount(tempMemberData[\"isTestAccount\"]);\n\t\t\t\tlet tempRiskLvl = tempMemberData[\"riskLevel\"];\n\t\t\t\tif (tempRiskLvl === -99) {\n\t\t\t\t\tsetRiskLevel(0);\n\t\t\t\t} else {\n\t\t\t\t\tsetRiskLevel(tempRiskLvl);\n\t\t\t\t}\n\t\t\t\tsetMemberDateJoined(\n\t\t\t\t\tmoment(tempMemberData[\"createdTime\"])\n\t\t\t\t\t\t.add(data[\"userTimeZone\"], \"hour\")\n\t\t\t\t\t\t.format(\"YYYY-MM-DD HH:mm:ss\")\n\t\t\t\t);\n\t\t\t\tsetMemberLastLogin(\n\t\t\t\t\tmoment(tempMemberData[\"lastLogin\"])\n\t\t\t\t\t\t.add(data[\"userTimeZone\"], \"hour\")\n\t\t\t\t\t\t.format(\"YYYY-MM-DD HH:mm:ss\")\n\t\t\t\t);\n\t\t\t\tsetShareholderDate(\n\t\t\t\t\tmoment(tempMemberData[\"shareHolderDate\"]).format(\n\t\t\t\t\t\t\"YYYY-MM-DD HH:mm:ss\"\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t\tif(tempMemberData[\"blockUpdatedTime\"]){\n\t\t\t\t\tsetBlockedDate(\n\t\t\t\t\t\tmoment(tempMemberData[\"blockUpdatedTime\"])\n\t\t\t\t\t\t\t.add(data[\"userTimeZone\"], \"hour\")\n\t\t\t\t\t\t\t.format(\"YYYY-MM-DD HH:mm:ss\")\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t\n\n\t\t\t\tif (tempMemberData[\"parentReferralCodeModel\"]) {\n\t\t\t\t\tparentReferralCode =\n\t\t\t\t\t\ttempMemberData[\"parentReferralCodeModel\"][\"code\"];\n\t\t\t\t\tparentMemberId =\n\t\t\t\t\t\ttempMemberData[\"parentReferralCodeModel\"][\"memberId\"];\n\t\t\t\t\tsetReferralCode(parentReferralCode);\n\t\t\t\t}\n\n\t\t\t\tsetDesktopImage(tempMemberData[\"logo\"]);\n\t\t\t} else {\n\t\t\t\tsetChangeRiskLvl(true);\n\t\t\t}\n\n\t\t\tsetParentMemberId(parentMemberId);\n\n\t\t\tif (!stringIsNullOrEmpty(parentMemberId)) {\n\t\t\t\tresponseJson = await ApiEngine.get(\n\t\t\t\t\tApiUrl._API_GET_MEMBER_REFERRAL_CODES +\n\t\t\t\t\t\t\"?ShowDetails=false&MemberId=\" +\n\t\t\t\t\t\tparentMemberId\n\t\t\t\t);\n\n\t\t\t\tif (!responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tstringIsNullOrEmpty(parentReferralCode) &&\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"length\"] > 0\n\t\t\t\t) {\n\t\t\t\t\tlet notExpiredCodes = responseJson[ApiKey._API_DATA_KEY].filter(\n\t\t\t\t\t\t(object) => {\n\t\t\t\t\t\t\treturn moment()\n\t\t\t\t\t\t\t\t.startOf(\"day\")\n\t\t\t\t\t\t\t\t.isBefore(moment(object[\"expiryDate\"]));\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\n\t\t\t\t\tif (notExpiredCodes.length > 0) {\n\t\t\t\t\t\tsetReferralCode(notExpiredCodes[0][\"code\"]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (errorMessage) {\n\t\t\t_dispatch(showMessage(false, t(errorMessage)));\n\t\t} finally {\n\t\t\t_dispatch(setIdle());\n\t\t}\n\t}\n\n\t/// \n\t/// Author -\n\t/// \n\tconst onMobileChange = (isValid, newNumber, countryData, fullNumber, ext) => {\n\t\tlet formattedNumber = fullNumber.split(/[- ]+/).join(\"\").replace(\"+\", \"\");\n\t\tsetPhone(formattedNumber);\n\n\t\tsetValue(\"phone\", formattedNumber);\n\t\t//if (isValid) {\n\t\t// setValue(\"phone\", formattedNumber);\n\t\t//}\n\t\t//else {\n\t\t// var isEmptyNumber = stringIsNullOrEmpty(formattedNumber);\n\t\t// setValue(\"phone\", isEmptyNumber ? \"\" : \"INVALID_PHONE\");\n\t\t//}\n\n\t\ttrigger(\"phone\");\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst logoDrop = (acceptedFiles, isDesktop) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tif (isDesktop) {\n\t\t\t\tsetDesktopFile(file);\n\t\t\t} else {\n\t\t\t\tsetMobileFile(file);\n\t\t\t}\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tif (isDesktop) {\n\t\t\t\t\tsetIsNewDesktopImage(true);\n\t\t\t\t\tsetDesktopImage(reader.result);\n\t\t\t\t} else {\n\t\t\t\t\tsetIsNewMobileImage(true);\n\t\t\t\t\tsetMobileImage(reader.result);\n\t\t\t\t}\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\tconst fetchRemarks = async (typeId) =>{\n\t\tlet responseJson = await ApiEngine.get(ApiUrl._API_REMARK_BY_TYPE + \"?type=\" + typeId);\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t const remarkList = [];\n\t\t responseJson[ApiKey._API_DATA_KEY].forEach(function (remark) {\n\t\t\tremarkList.push({\n\t\t\t label: remark.description,\n\t\t\t value: remark.description,\n\t\t\t});\n\t\t });\n\t\t setRemarkOption(remarkList);\n\t\t}\n\t}\n\t\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t
    {memberId && t(\"EDIT_MEMBER_DETAIL\")}
    \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t (\n\t\t\t\t\t\t\t\t\t\t\t\t option.value == value\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetStatus(e.value)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\trules={{ required: \"PLEASE_SELECT_STATUS\" }}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{errors.status && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.status.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tstatus < 1 && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t option.value == value\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? remarkOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == value\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: value ? value:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tt(\"PLEASE_ENTER_REMARK\")\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={remarkOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == value\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e, { action }) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tswitch (action) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase \"select-option\":\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrigger(\"remark\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase \"create-option\":\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tremarkOption.push(e);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrigger(\"remark\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\trules={{ required: \"PLEASE_SELECT_STATUS\" }}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.remark && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.remark.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.username && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.username.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.fullName && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.fullName.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.cnFullName && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.cnFullName.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{isPhoneVerified && (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t{errors.phone && formState.submitCount > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.phone.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.email && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.email.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.password && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.password.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.confirmPassword && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.confirmPassword.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.memberPin && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.memberPin.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.shareholderPin && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.shareholderPin.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t (\n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (e instanceof moment) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.format(\"YYYY-MM-DD\"));\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\trules={{ required: \"PLEASE_ENTER_VALID_DATE\" }}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{errors.birthDate && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.birthDate.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t setGender(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\tvalue={gender}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.address && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.address.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.postalCode && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.postalCode.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.state && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.state.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.city && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.city.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.source && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.source.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.campaign && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.campaign.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{memberLastLogin + \" GMT+\" + timeZone + \":00\"}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{memberDateJoined + \" GMT+\" + timeZone + \":00\"}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{blockedDate ? blockedDate + \" GMT+\" + timeZone + \":00\" : null}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    {shareholderDate}
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t setIsTestAccount(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\tchecked={isTestAccount}\n\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{errors.isTestAccount && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.isTestAccount.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t setPaymentType(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\tvalue={paymentType}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.rollOverThreshold && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.rollOverThreshold.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t (\n\t\t\t\t\t\t\t\t\t\t\t\t option.value == value\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? vipOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == value\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={vipOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == value\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\trules={{ required: \"PLEASE_SELECT_VIP_LEVEL\" }}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{errors.vip && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.vip.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t (\n\t\t\t\t\t\t\t\t\t\t\t\t option.value == value\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{errors.transferBackMainWallet && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.transferBackMainWallet.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t setChangeRiskLvl(!changeRiskLvl)}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(\"CHECK_TO_CHANGE\", { value: t(\"RISK_LEVEL\") })}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{errors.riskLevel && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.riskLevel.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t setInternalTransferLimit(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t{isUpline && (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, true)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(desktopImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetDesktopImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetDesktopFile();\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(referralCode) && (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default MemberDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tnavigateTo,\n\tstringIsNullOrEmpty,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tAccessRight,\n\tWebUrl,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n\tRole,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { showMessage, setMemberSearch } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\n\n/// \n/// Author : -\n/// \nconst ManageMember = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\n\tvar _username = useSelector(\n\t\t(state) => state[\"authState\"][\"userData\"][\"username\"]\n\t);\n\tvar _searchedMember = useSelector((state) => state.appState.memberSearch);\n\tconst _dispatch = useDispatch();\n\tconst [memberData, setMemberData] = useState([]);\n\tconst _userData = useSelector((state) => state.authState.userData);\n\tconst _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\n\tconst [selectedMember, setSelectedMember] = useState(\"\");\n\tconst [selectedMemberPhone, setSelectedMemberPhone] = useState(\"\");\n\tconst [locationStateObj, setLocationStateObj] = useState();\n\tconst [memberId, setMemberId] = useState(\"\");\n\tconst [nodePathMembers, setNodePathMembers] = useState([]);\n\tconst [labelUsername, setLabelUsername] = useState(\"All\");\n\tconst [labelUserPhone, setLabelUserPhone] = useState(\"All\");\n\tconst [usernameKeyword, setUsernameKeyword] = useState(\"\");\n\tconst [phoneNumKeyword, setPhoneNumKeyword] = useState(\"\");\n\tconst [memberListUrl, setMemberListUrl] = useState(\n\t\t`${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`\n\t);\n\tconst [tableData, setTableData] = useState([]);\n\tconst [formattedDataList, setFormattedDataList] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t 0\n\t\t\t\t\t\t\t\t\t? nodePathMembers[nodePathMembers.length - 1].id !=\n\t\t\t\t\t\t\t\t\t row.original.id\n\t\t\t\t\t\t\t\t\t: true,\n\t\t\t\t\t\t})}\n\t\t\t\t\t\tonClick={() => setSelectedMember(row.original.id)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{row.original.username}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"FULLNAME\",\n\t\t\taccessor: \"userFullName\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"EMAIL\",\n\t\t\taccessor: \"email\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"Bonus Wallet\",\n\t\t\taccessor: \"bonusWallet\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.bonusWallet),\n\t\t\t\t\t\t\t3\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"WALLET\",\n\t\t\taccessor: \"primaryCredit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.primaryCredit),\n\t\t\t\t\t\t\t3\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"PHONE\",\n\t\t\taccessor: \"phoneNumber\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{row.original.status == 1 ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"SUSPENDED\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(\n\t\t\t\t\tAccessRight._MEMBER_CONTROL_PERMISSION,\n\t\t\t\t\ttrue\n\t\t\t\t) && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\t\tWebUrl._URL_VIEW_ACCOUNT,\n\t\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\t\tWebUrl._URL_VIEW_PRODUCT_ACCOUNT,\n\t\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t(\"VIEW_PRODUCT_ACCOUNT\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t syncProductData(row.original)}>\n\t\t\t\t\t\t\t\t\t{t(\"SYNC_PRODUCT\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\t\tWebUrl._URL_MEMBER_PRORUCT_MAINTENANCE,\n\t\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"VIEW_PRODUCT\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\t/// \n\t/// Author : Wong\n\t/// \n\tuseEffect(() => {\n\t\tlet nodePath = [];\n\t\tlet memId = \"\";\n\t\tif (tableData.memberNodePath) {\n\t\t\tif (tableData.memberNodePath.length > 0) {\n\t\t\t\tnodePath = tableData.memberNodePath;\n\t\t\t\tmemId = nodePath[nodePath.length - 1].id;\n\t\t\t}\n\t\t}\n\n\t\tsetNodePathMembers(nodePath);\n\t\tsetMemberId(memId);\n\t\tsetLocationStateObj({\n\t\t\tparentMemberId: memId,\n\t\t});\n\t\tif (!stringIsNullOrEmpty(_searchedMember)) {\n\t\t\tsessionStorage.setItem(_SELECTED_MEMBER_KEY, _searchedMember);\n\t\t\tsetSelectedMember(_searchedMember);\n\t\t\tlet temp1 =\n\t\t\t\ttableData && tableData[\"data\"] && tableData[\"data\"].length > 0\n\t\t\t\t\t? tableData[\"data\"].find((x) => x.id == _searchedMember)\n\t\t\t\t\t: {};\n\t\t\tlet tempLabelUsername =\n\t\t\t\ttableData &&\n\t\t\t\ttableData[\"data\"] &&\n\t\t\t\ttableData[\"data\"].length > 0 &&\n\t\t\t\ttypeof temp1 !== \"undefined\"\n\t\t\t\t\t? temp1.username\n\t\t\t\t\t: \"All\";\n\t\t\tsetLabelUsername(tempLabelUsername);\n\t\t}\n\t}, [tableData]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tsessionStorage.setItem(_SELECTED_MEMBER_KEY, selectedMember);\n\t\t_dispatch(setMemberSearch(selectedMember));\n\t\tgetDownlineByReferrer(selectedMember);\n\t}, [selectedMember]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tsessionStorage.setItem(_SELECTED_MEMBER_KEY, selectedMemberPhone);\n\t\tgetDownlineByReferrer(selectedMemberPhone);\n\t}, [selectedMemberPhone]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function getDownlineByReferrer(memberId = \"\") {\n\t\tsetMemberListUrl(\n\t\t\t`${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`\n\t\t);\n\t}\n\n\tasync function getDownlineBySelectedReferrer() {\n\t\tlet responseJson = await ApiEngine.get(\n\t\t\tApiUrl._API_GET_DOWNLINE_BY_REFERRER_USING_USERNAME +\n\t\t\t\t\"?username=\" +\n\t\t\t\tusernameKeyword\n\t\t);\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY];\n\t\t\tsetTableData(data[\"data\"]);\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function syncProductData(data) {\n\t\tvar responseJson = await ApiEngine.post(\n\t\t\t`${ApiUrl._API_SYNC_MEMBER_TO_OWNER_PRODUCT_DATA}?id=${data[\"id\"]}`\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t}\n\n\t/// \n\t/// Author : Wong\n\t/// \n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tsetMemberData(data);\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({label:\"All\", value:\"\"})\n\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\t/// \n\t/// Author : Wong\n\t/// \n\tasync function getMemberPhoneList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.phoneNumber, value: m.id };\n\t\t\t});\n\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"MANAGE_ACCOUNT\")}\n\t\t\t\t{checkIfPermissionExist(AccessRight._MEMBER_CONTROL_PERMISSION, true) &&\n\t\t\t\t\t_userData.userRole == \"Company\" &&\n\t\t\t\t\t_userData.userRole == \"Marketing Manager\" && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetSelectedMember(\"\");\n\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{_username}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{nodePathMembers.map((m, index) => {\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{index == 0 && \">\"}\n\t\t\t\t\t\t\t\t\t\t\t setSelectedMember(m.id)}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{m.username}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{index != nodePathMembers.length - 1 && \">\"}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tsetLabelUsername(e.label);\n\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedMember(e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t{/*
    {t(\"KEY_KEYWORD_TO_CONTINUE\")}
    */}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tsetLabelUserPhone(e.label);\n\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedMemberPhone(e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t { getDownlineBySelectedReferrer() }}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t setTableData(data)}\n\t\t\t\t\t\t\t\t\tfilterable\n\t\t\t\t\t\t\t\t\tcolumns={_tableColumns}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default ManageMember;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton.jsx\";\nimport {\n\tnavigateTo,\n\tstringIsNullOrEmpty,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util.js\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tAccessRight,\n\tWebUrl,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n\tRole,\n} from \"../../util/Constant.js\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker.js\";\nimport { showMessage, setBusy, setIdle } from \"../../redux/AppAction.js\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\nimport moment from \"moment\";\nimport { DateRangePicker } from \"react-bootstrap-daterangepicker\";\n\n/// \n/// Author : -\n/// \nconst ManageMember = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tconst [memberData, setMemberData] = useState([]);\n\tconst _userData = useSelector((state) => state.authState.userData);\n\n\tconst _SELECTED_USERNAME_KEY = \"selectedUsernameKey\";\n\tconst _SELECTED_FULLNAME_KEY = \"selectedFullnameKey\";\n\tconst _SELECTED_MOBILE_KEY = \"selectedMobileKey\";\n\tconst _SELECTED_UPLINE_KEY = \"selectedUplineKey\";\n\tconst _SELECTED_STATUS_KEY = \"selectedStatusKey\";\n\n\tconst [selectedMember, setSelectedMember] = useState(\"\");\n\tconst [selectedMemberFullname, setSelectedMemberFullname] = useState(\"\");\n\tconst [selectedMemberPhone, setSelectedMemberPhone] = useState(\"\");\n\tconst [selectedUplineMember, setSelectedUplineMember] = useState(\"\");\n\tconst [selectedStatus, setSelectedStatus] = useState(\"\");\n\tconst [locationStateObj, setLocationStateObj] = useState();\n\n\tconst [labelUsername, setLabelUsername] = useState(\"All\");\n\tconst [labelFullname, setLabelFullname] = useState(\"All\");\n\tconst [labelUserPhone, setLabelUserPhone] = useState(\"All\");\n\tconst [labelUpline, setLabelUpline] = useState(\"All\");\n\tconst [labelStatus, setLabelStatus] = useState(\"All\");\n\tconst [startJoinedDate, setStartJoinedDate] = useState();\n\tconst [endJoinedDate, setEndJoinedDate] = useState();\n\tconst [lastLoginStartDate, setLastLoginStartDate] = useState();\n\tconst [lastLoginEndDate, setLastLoginEndDate] = useState();\n\tconst [searchTrigger, setSearchTrigger] = useState(\"\");\n\tconst [balance, setBalance] = useState();\n\tconst [balanceLabel, setBalanceLabel] = useState();\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn {row.original.username};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"FULLNAME\",\n\t\t\taccessor: \"userFullName\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"MOBILE\",\n\t\t\taccessor: \"phoneNumber\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"BALANCE\",\n\t\t\taccessor: \"primaryCredit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.primaryCredit),\n\t\t\t\t\t\t\t3\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"DIRECT_UPLINE\",\n\t\t\taccessor: \"uplineMemberModel\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn {row.original.uplineMemberModel?.username};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"DATE_JOINED\",\n\t\t\taccessor: \"createdTime\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{moment(row.original.createdTime)\n\t\t\t\t\t\t\t.add(_userData.userTimeZone, \"hour\")\n\t\t\t\t\t\t\t.format(\"YYYY-MM-DD HH:mm:ss\") +\n\t\t\t\t\t\t\t\" GMT+\" +\n\t\t\t\t\t\t\t_userData.userTimeZone +\n\t\t\t\t\t\t\t\":00\"}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"PREVIOUS_LOGIN\",\n\t\t\taccessor: \"lastLogin\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{moment(row.original.lastLogin)\n\t\t\t\t\t\t\t.add(_userData.userTimeZone, \"hour\")\n\t\t\t\t\t\t\t.format(\"YYYY-MM-DD HH:mm:ss\") +\n\t\t\t\t\t\t\t\" GMT+\" +\n\t\t\t\t\t\t\t_userData.userTimeZone +\n\t\t\t\t\t\t\t\":00\"}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{row.original.status == 1 ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"SUSPENDED\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(\n\t\t\t\t\tAccessRight._MEMBER_CONTROL_PERMISSION,\n\t\t\t\t\ttrue\n\t\t\t\t) && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\t\tWebUrl._URL_VIEW_ACCOUNT,\n\t\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\t\tWebUrl._URL_VIEW_PRODUCT_ACCOUNT,\n\t\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t(\"VIEW_PRODUCT_ACCOUNT\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t syncProductData(row.original)}>\n\t\t\t\t\t\t\t\t\t{t(\"SYNC_PRODUCT\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\t\tWebUrl._URL_MEMBER_PRORUCT_MAINTENANCE,\n\t\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"VIEW_PRODUCT\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\tconst init = async () => {\n\t\tlet responseJson = await ApiEngine.get(\n\t\t\tApiUrl._API_GET_MEMBER_LIST + \"?directUserOnly=true\"\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsetMemberData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t}\n\t};\n\n\tconst searchBtnHandler = async () => {\n\t\tlet apiUrl = ApiUrl._API_GET_MEMBER_LIST + \"?directUserOnly=true\";\n\n\t\tif (selectedMember !== \"\") {\n\t\t\tapiUrl += \"&memberId=\" + selectedMember;\n\t\t}\n\n\t\tif (selectedMemberFullname !== \"\") {\n\t\t\tapiUrl += \"&userFullName=\" + selectedMemberFullname;\n\t\t}\n\n\t\tif (selectedMemberPhone !== \"\") {\n\t\t\tapiUrl += \"&phoneNumber=\" + selectedMemberPhone;\n\t\t}\n\n\t\tif (selectedUplineMember !== \"\") {\n\t\t\tapiUrl += \"&upline=\" + selectedUplineMember;\n\t\t}\n\n\t\tif (\n\t\t\t!stringIsNullOrEmpty(startJoinedDate) &&\n\t\t\t!stringIsNullOrEmpty(endJoinedDate)\n\t\t) {\n\t\t\tapiUrl += \"&startJoinedDate=\" + startJoinedDate;\n\t\t\tapiUrl += \"&endJoinedDate=\" + endJoinedDate;\n\t\t}\n\n\t\tif (\n\t\t\t!stringIsNullOrEmpty(lastLoginStartDate) &&\n\t\t\t!stringIsNullOrEmpty(lastLoginEndDate)\n\t\t) {\n\t\t\tapiUrl += \"&lastLoginStartDate=\" + lastLoginStartDate;\n\t\t\tapiUrl += \"&lastLoginEndDate=\" + lastLoginEndDate;\n\t\t}\n\n\t\tif (selectedStatus !== \"\") {\n\t\t\tapiUrl += \"&status=\" + selectedStatus;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(balance)) {\n\t\t\tapiUrl += \"&balance=\" + balance;\n\t\t}\n\n\t\tsetSearchTrigger(apiUrl);\n\t};\n\n\tconst searchAllBtnHandler = async () => {\n\t\tsetSelectedMember(\"\");\n\t\tsetSelectedMemberFullname(\"\");\n\t\tsetSelectedMemberPhone(\"\");\n\t\tsetSelectedUplineMember(\"\");\n\t\tsetSelectedStatus(\"\");\n\t\tsetStartJoinedDate();\n\t\tsetEndJoinedDate();\n\t\tsetLastLoginStartDate();\n\t\tsetLastLoginEndDate();\n\t\tsetBalance();\n\t\tsetBalanceLabel(\"\");\n\n\t\tsetLabelUsername(\"All\");\n\t\tsetLabelFullname(\"All\");\n\t\tsetLabelUserPhone(\"All\");\n\t\tsetLabelUpline(\"All\");\n\t\tsetLabelStatus(\"All\");\n\n\t\tlet apiUrl = ApiUrl._API_GET_MEMBER_LIST + \"?directUserOnly=true\";\n\t\tsetSearchTrigger(apiUrl);\n\t};\n\n\tuseEffect(async () => {\n\t\t_dispatch(setBusy());\n\t\tlet responseJson = await ApiEngine.get(searchTrigger);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsetMemberData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t}\n\n\t\t_dispatch(setIdle());\n\t}, [searchTrigger]);\n\n\tasync function syncProductData(data) {\n\t\tvar responseJson = await ApiEngine.post(\n\t\t\t`${ApiUrl._API_SYNC_MEMBER_TO_OWNER_PRODUCT_DATA}?id=${data[\"id\"]}`\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t}\n\n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: \"\" });\n\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tasync function getMemberFullnameList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet filterData = data.filter((m) => {\n\t\t\t\tif (!stringIsNullOrEmpty(m.userFullName))\n\t\t\t\t\treturn { label: m.userFullName, value: m.id };\n\t\t\t});\n\n\t\t\tlet formattedData = filterData.map((m) => {\n\t\t\t\treturn { label: m.userFullName, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: \"\" });\n\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tasync function getMemberPhoneList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.phoneNumber, value: m.id };\n\t\t\t});\n\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tconst handleJoinedEvent = (event, picker) => {\n\t\tsetStartJoinedDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndJoinedDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\tasync function getMemberUplineList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\t\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: \"\" });\n\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tconst handleLastLoginEvent = (event, picker) => {\n\t\tsetLastLoginStartDate(\n\t\t\tmoment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\")\n\t\t);\n\t\tsetLastLoginEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\tasync function getMemberStatus(search, loadOptions, { page }) {\n\t\tlet formattedData = [\n\t\t\t{\n\t\t\t\tlabel: t(\"ACTIVE\"),\n\t\t\t\tvalue: \"1\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: t(\"SUSPENDED\"),\n\t\t\t\tvalue: \"0\",\n\t\t\t},\n\t\t];\n\n\t\treturn {\n\t\t\toptions: formattedData,\n\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\tadditional: {\n\t\t\t\tpage: page + 1,\n\t\t\t},\n\t\t};\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"MANAGE_ACCOUNT\")}\n\t\t\t\t{checkIfPermissionExist(AccessRight._MEMBER_CONTROL_PERMISSION, true) &&\n\t\t\t\t\t_userData.userRole == \"Company\" &&\n\t\t\t\t\t_userData.userRole == \"Marketing Manager\" && (\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_USERNAME_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_USERNAME_KEY);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tsetLabelUsername(e.label);\n\t\t\t\t\t\t\t\t\t\tsetSelectedMember(e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_FULLNAME_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_FULLNAME_KEY);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tsetLabelFullname(e.label);\n\t\t\t\t\t\t\t\t\t\tsetSelectedMemberFullname(e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_MOBILE_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_MOBILE_KEY);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tsetLabelUserPhone(e.label);\n\t\t\t\t\t\t\t\t\t\tsetSelectedMemberPhone(e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tlet parts = e.target.value.split(\".\");\n\t\t\t\t\t\t\t\t\tlet v = parts[0].replace(/\\D/g, \"\"),\n\t\t\t\t\t\t\t\t\t\tdec = parts[1];\n\t\t\t\t\t\t\t\t\tlet calc_num = Number(dec !== undefined ? v + \".\" + dec : v);\n\n\t\t\t\t\t\t\t\t\tlet n = new Intl.NumberFormat(\"en-EN\").format(v);\n\t\t\t\t\t\t\t\t\tn = dec !== undefined ? n + \".\" + dec : n;\n\n\t\t\t\t\t\t\t\t\tsetBalance(calc_num);\n\t\t\t\t\t\t\t\t\tsetBalanceLabel(n);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tvalue={balanceLabel}\n\t\t\t\t\t\t\t\tpattern=\"[0-9.,]+\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_UPLINE_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_UPLINE_KEY);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tsetLabelUpline(e.label);\n\t\t\t\t\t\t\t\t\t\tsetSelectedUplineMember(e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_STATUS_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_STATUS_KEY);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tsetLabelStatus(e.label);\n\t\t\t\t\t\t\t\t\t\tsetSelectedStatus(e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsearchAllBtnHandler();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"RESET\")}\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsearchBtnHandler();\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"FILTER\")}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default ManageMember;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n navigateTo,\n stringIsNullOrEmpty,\n numberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport {\n ApiKey,\n ApiUrl,\n AccessRight,\n WebUrl,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n Role,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { showMessage, setMemberSearch } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\n\n/// \n/// Author : -\n/// \nconst ManageMemberPO = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n var _searchedMember = useSelector((state => state.appState.memberSearch));\n const _dispatch = useDispatch();\n const [memberData, setMemberData] = useState([]);\n\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\n const [selectedMember, setSelectedMember] = useState(\"\");\n const [selectedMemberPhone, setSelectedMemberPhone] = useState(\"\");\n const [locationStateObj, setLocationStateObj] = useState();\n const [memberId, setMemberId] = useState(\"\");\n const [nodePathMembers, setNodePathMembers] = useState([]);\n const [labelUsername, setLabelUsername] = useState(\"All\");\n const [labelUserPhone, setLabelUserPhone] = useState(\"All\");\n const [usernameKeyword, setUsernameKeyword] = useState(\"\");\n const [phoneNumKeyword, setPhoneNumKeyword] = useState(\"\");\n const [memberListUrl, setMemberListUrl] = useState(\n `${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`\n );\n const [tableData, setTableData] = useState([]);\n const [totalData, setTotalData] = useState({});\n const [formattedDataList, setFormattedDataList] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n 0\n ? nodePathMembers[nodePathMembers.length - 1].id !=\n row.original.id\n : true,\n })}\n onClick={() => setSelectedMember(row.original.id)}\n >\n {row.original.username}\n \n );\n },\n },\n {\n Header: \"FULLNAME\",\n accessor: \"userFullName\",\n minWidth: 100,\n },\n {\n Header: \"EMAIL\",\n accessor: \"email\",\n minWidth: 100,\n },\n {\n Header: \"WALLET\",\n accessor: \"primaryCredit\",\n Cell: ({ row }) => {\n return (\n <>\n {numberWithCurrencyFormat(\n parseFloat(row.original.primaryCredit),\n 3\n )}\n \n );\n },\n minWidth: 100,\n },\n {\n Header: \"PHONE\",\n accessor: \"phoneNumber\",\n minWidth: 100,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return (\n \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n \n );\n },\n minWidth: 100,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._MEMBER_CONTROL_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(_history, WebUrl._URL_VIEW_ACCOUNT, {\n id: row.original.id,\n username: row.original.username,\n parentMemberId: row.original.parentMemberId,\n navigateFromRole: \"PO\"\n });\n }}>{t(\"EDIT\")}\n { navigateTo(_history, WebUrl._URL_VIEW_PRODUCT_ACCOUNT, row.original); }}>{t(\"VIEW_PRODUCT_ACCOUNT\")}\n syncProductData(row.original)}>\n {t(\"SYNC_PRODUCT\")}\n \n {\n navigateTo(\n _history,\n WebUrl._URL_MEMBER_PRORUCT_MAINTENANCE,\n row.original\n );\n }}\n >\n {t(\"VIEW_PRODUCT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : Wong\n /// \n useEffect(() => {\n if (!stringIsNullOrEmpty(_searchedMember)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, _searchedMember);\n setSelectedMember(_searchedMember);\n let temp1 = totalData && totalData['data'] && totalData['data'].length > 0 ? totalData['data'].find(x => x.id == _searchedMember) : {};\n let tempLabelUsername = totalData && totalData['data'] && totalData['data'].length > 0 && typeof (temp1) !== \"undefined\" ? temp1.username : \"All\";\n setLabelUsername(tempLabelUsername);\n }\n }, [totalData]);\n\n async function getDownlineBySelectedReferrer() {\n if (sessionStorage.getItem(_SELECTED_MEMBER_KEY)) {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n let responseJson = await ApiEngine.get(ApiUrl._API_GET_USER_MEMBER_BY_USERNAME + \"?username=\" + usernameKeyword);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTotalData(data);\n setTableData(data[\"data\"]);\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, data[\"data\"][0][\"id\"]);\n setLabelUsername(data[\"data\"][0][\"username\"]);\n setSelectedMember(data[\"data\"][0][\"id\"]);\n }\n }\n\n /// \n /// Author : -\n /// \n async function syncProductData(data) {\n var responseJson = await ApiEngine.post(\n `${ApiUrl._API_SYNC_MEMBER_TO_OWNER_PRODUCT_DATA}?id=${data[\"id\"]}`\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n setMemberData(data);\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberPhoneList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.phoneNumber, value: m.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    \n {t(\"MANAGE_ACCOUNT\")}\n {checkIfPermissionExist(\n AccessRight._MEMBER_CONTROL_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n
    \n
    \n
    \n
    \n
    \n \n {\n setUsernameKeyword(e.target.value);\n }}\n />\n
    {t(\"KEY_KEYWORD_TO_CONTINUE\")}
    \n
    \n
    \n
    \n
    \n \n {\n setPhoneNumKeyword(e.target.value);\n }}\n />\n
    \n
    \n {
    \n \n
    }\n
    \n \n \n \n
    \n
    \n
    \n
    \n );\n};\n\nexport default ManageMemberPO;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n navigateTo,\n stringIsNullOrEmpty,\n numberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport {\n ApiKey,\n ApiUrl,\n AccessRight,\n WebUrl,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n Role,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { showMessage, setMemberSearch } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport classNames from \"classnames\";\n\n/// \n/// Author : -\n/// \nconst ManageMemberCS = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n var _searchedMember = useSelector((state => state.appState.memberSearch));\n const _dispatch = useDispatch();\n const [memberData, setMemberData] = useState([]);\n\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\n const [selectedMember, setSelectedMember] = useState(\"\");\n const [selectedMemberPhone, setSelectedMemberPhone] = useState(\"\");\n const [locationStateObj, setLocationStateObj] = useState();\n const [memberId, setMemberId] = useState(\"\");\n const [nodePathMembers, setNodePathMembers] = useState([]);\n const [labelUsername, setLabelUsername] = useState(\"All\");\n const [labelUserPhone, setLabelUserPhone] = useState(\"All\");\n const [usernameKeyword, setUsernameKeyword] = useState(\"\");\n const [phoneNumKeyword, setPhoneNumKeyword] = useState(\"\");\n const [tableData, setTableData] = useState([]);\n const [totalData, setTotalData] = useState({});\n const [formattedDataList, setFormattedDataList] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n 0\n ? nodePathMembers[nodePathMembers.length - 1].id !=\n row.original.id\n : true,\n })}\n onClick={() => setSelectedMember(row.original.id)}\n >\n {row.original.username}\n \n );\n },\n },\n {\n Header: \"FULLNAME\",\n accessor: \"userFullName\",\n minWidth: 100,\n },\n {\n Header: \"EMAIL\",\n accessor: \"email\",\n minWidth: 100,\n },\n {\n Header: \"WALLET\",\n accessor: \"primaryCredit\",\n Cell: ({ row }) => {\n return (\n <>\n {numberWithCurrencyFormat(\n parseFloat(row.original.primaryCredit),\n 3\n )}\n \n );\n },\n minWidth: 100,\n },\n {\n Header: \"PHONE\",\n accessor: \"phoneNumber\",\n minWidth: 100,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return (\n \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n \n );\n },\n minWidth: 100,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._MANAGE_MEMBER_CS_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(_history, WebUrl._URL_VIEW_ACCOUNT, {\n id: row.original.id,\n username: row.original.username,\n parentMemberId: row.original.parentMemberId,\n navigateFromRole: \"CS\"\n });\n }}>{t(\"EDIT\")}\n { navigateTo(_history, WebUrl._URL_VIEW_PRODUCT_ACCOUNT, row.original); }}>{t(\"VIEW_PRODUCT_ACCOUNT\")}\n syncProductData(row.original)}>\n {t(\"SYNC_PRODUCT\")}\n \n {\n navigateTo(\n _history,\n WebUrl._URL_MEMBER_PRORUCT_MAINTENANCE,\n row.original\n );\n }}\n >\n {t(\"VIEW_PRODUCT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : Wong\n /// \n useEffect(() => {\n let nodePath = [];\n let memId = \"\";\n if (totalData.memberNodePath) {\n if (totalData.memberNodePath.length > 0) {\n nodePath = totalData.memberNodePath;\n memId = nodePath[nodePath.length - 1].id;\n }\n }\n\n setNodePathMembers(nodePath);\n setMemberId(memId);\n setLocationStateObj({\n parentMemberId: memId,\n });\n if (!stringIsNullOrEmpty(_searchedMember)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, _searchedMember);\n setSelectedMember(_searchedMember);\n let temp1 = totalData && totalData['data'] && totalData['data'].length > 0 ? totalData['data'].find(x => x.id == _searchedMember) : {};\n let tempLabelUsername = totalData && totalData['data'] && totalData['data'].length > 0 && typeof (temp1) !== \"undefined\" ? temp1.username : \"All\";\n setLabelUsername(tempLabelUsername);\n }\n }, [totalData]);\n\n /// \n /// Author : -\n /// \n async function getDownlineByReferrer(memberId = \"\") {\n let responseJson = await ApiEngine.get(`${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n console.log(data);\n setTotalData(data);\n //take only first data (index 0)\n setTableData(data[\"data\"].slice(0, 1));\n }\n }\n\n async function getDownlineBySelectedReferrer() {\n if (sessionStorage.getItem(_SELECTED_MEMBER_KEY)) {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n let responseJson = await ApiEngine.get(ApiUrl._API_GET_USER_MEMBER_BY_USERNAME + \"?username=\" + usernameKeyword);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTotalData(data);\n setTableData(data[\"data\"]);\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, data[\"data\"][0][\"id\"]);\n setLabelUsername(data[\"data\"][0][\"username\"]);\n setSelectedMember(data[\"data\"][0][\"id\"]);\n }\n }\n\n /// \n /// Author : -\n /// \n async function syncProductData(data) {\n var responseJson = await ApiEngine.post(\n `${ApiUrl._API_SYNC_MEMBER_TO_OWNER_PRODUCT_DATA}?id=${data[\"id\"]}`\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n setMemberData(data);\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberPhoneList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.phoneNumber, value: m.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    \n {t(\"MANAGE_ACCOUNT\")}\n {checkIfPermissionExist(\n AccessRight._MEMBER_CONTROL_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n
    \n
    \n <>\n
    \n {\n setSelectedMember(\"\");\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }}\n >\n {_username}\n \n {nodePathMembers.map((m, index) => {\n return (\n <>\n {index == 0 && \">\"}\n {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, m.id);\n _dispatch(setMemberSearch(m.id));\n getDownlineByReferrer(m.id);\n }}\n >\n {m.username}\n \n {index != nodePathMembers.length - 1 && \">\"}\n \n );\n })}\n
    \n
    \n \n
    \n
    \n
    \n \n {\n setUsernameKeyword(e.target.value);\n }}\n />\n
    {t(\"KEY_KEYWORD_TO_CONTINUE\")}
    \n
    \n
    \n
    \n
    \n \n {\n setPhoneNumKeyword(e.target.value);\n }}\n />\n
    \n
    \n {
    \n \n
    }\n
    \n \n \n \n
    \n
    \n
    \n
    \n );\n};\n\nexport default ManageMemberCS;","import React, { useState, useEffect, useRef } from 'react';\nimport axios from 'axios';\n\nfunction AudioRecorder({ url, memberId, onAudioRecorded, onAudioRecording, disabled }) {\n const [isRecording, setIsRecording] = useState(false);\n const mediaRecorderRef = useRef(null);\n const audioChunksRef = useRef([]);\n const recordingTimeoutRef = useRef(null);\n const cancelRecordinglRef = useRef(null);\n const [countDown, setCountDown] = useState(0);\n const countDownRef = useRef(0);\n\n useEffect(() => {\n // Clean up and potentially stop recording on component unmount\n return () => {\n if (mediaRecorderRef.current && isRecording) {\n mediaRecorderRef.current.stop();\n }\n };\n }, [isRecording]);\n\n const startRecording = async () => {\n if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {\n try {\n\n if (onAudioRecording) {\n onAudioRecording(true);\n }\n\n const stream = await navigator.mediaDevices.getUserMedia({ audio: true });\n const recorder = new MediaRecorder(stream);\n\n recorder.ondataavailable = (event) => {\n audioChunksRef.current.push(event.data);\n };\n\n recorder.onstop = async () => {\n\n if (!cancelRecordinglRef.current) {\n\n try {\n if (onAudioRecorded) {\n onAudioRecorded(false);\n }\n\n const audioBlob = new Blob(audioChunksRef.current, { type: 'audio/ogg; codecs=opus' });\n\n // Here you can also prepare the audioBlob for uploading, e.g., via FormData\n const formData = new FormData();\n formData.append('file', audioBlob, 'audio.ogg');\n formData.append('memberId', memberId);\n\n\n const response = await axios.post(url, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n\n // Call the callback function with the response data\n if (response['data'].success) {\n if (onAudioRecorded) {\n onAudioRecorded(true);\n }\n\n }\n\n } catch (error) {\n console.error('Error uploading file:', error);\n console.log(error);\n alert('Error uploading file');\n }\n\n }\n else {\n if (onAudioRecorded) {\n onAudioRecorded(true);\n }\n }\n };\n\n mediaRecorderRef.current = recorder;\n audioChunksRef.current = [];\n recorder.start();\n setIsRecording(true);\n countDownRef.current = 30;\n setCountDown(30);\n\n recordingTimeoutRef.current = setInterval(() => {\n countDownRef.current--;\n setCountDown(i => i - 1);\n if (countDownRef.current <= 0)\n stopRecording();\n }, 1000);\n // KT CHANGE TO COUNTDOWN\n\n } catch (error) {\n console.error('Error accessing audio devices:', error);\n }\n } else {\n alert('Audio recording is not supported in this browser.');\n }\n };\n\n const stopRecording = () => {\n if (onAudioRecording) {\n onAudioRecording(false);\n }\n cancelRecordinglRef.current = false;\n if (mediaRecorderRef.current) {\n mediaRecorderRef.current.stop();\n setIsRecording(false);\n clearInterval(recordingTimeoutRef.current);\n }\n };\n \n const cancelRecording = () => {\n if (onAudioRecording) {\n onAudioRecording(false);\n }\n cancelRecordinglRef.current = true;\n if (mediaRecorderRef.current) {\n mediaRecorderRef.current.stop();\n setIsRecording(false);\n clearInterval(recordingTimeoutRef.current);\n }\n };\n \n return (\n
    \n {!isRecording && \n \n \n \n \n \n }\n {isRecording && \n <>\n
    {countDown}s
    \n
    \n
    \n
    \n
    \n
    \n \n }\n
    \n );\n}\n\nexport default AudioRecorder;\n","import React, { useRef } from 'react';\nimport axios from 'axios';\n\nfunction FileUpload({ url, memberId, onFileUpload, disabled }) {\n const fileInputRef = useRef(null);\n \n const handleFileChange = async (event) => {\n const file = event.target.files[0];\n if (!file) {\n //alert('Please select a file to upload.');\n return;\n }\n\n const formData = new FormData();\n formData.append('file', file);\n formData.append('memberId', memberId);\n \n\n try {\n if (onFileUpload) {\n onFileUpload(false);\n }\n\n const response = await axios.post(url, formData, {\n headers: {\n 'Content-Type': 'multipart/form-data',\n },\n });\n \n // Call the callback function with the response data\n if (response['data'].success) {\n if (onFileUpload) {\n onFileUpload(true);\n }\n }\n\n // Reset the file input after upload\n fileInputRef.current.value = '';\n } catch (error) {\n console.error('Error uploading file:', error);\n alert('Error uploading file');\n }\n };\n \n return (\n
    \n \n
    \n
    \n
    !disabled && fileInputRef.current && fileInputRef.current.click()}>\n \n
    \n
    \n
    \n
    \n );\n}\n\nexport default FileUpload;\n","import React from 'react';\n/// \n/// Author : -\n/// To Check Chat Content Type And Display Accordingly\n/// \nexport function Display(data) {\n //return hehe;\n if(data.messageType == \"Text\")\n {\n return
    {data.content}
    ;\n }\n else if(data.messageType == \"Image\")\n {\n return
    ;\n }\n else if(data.messageType == \"Voice\")\n {\n return
    ;\n }\n else\n {\n return data.content;\n }\n}\n","import React, { useState, useEffect, useRef } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport { useSelector, useDispatch } from \"react-redux\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tnavigateTo,\n\tstringIsNullOrEmpty,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tWebUrl,\n\tTransactionStatus,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { showMessage, showToast, setBusy } from \"../../redux/AppAction\";\nimport AudioRecorder from \"../../util/AudioRecorder\";\nimport FileUpload from \"../../util/FileUpload\";\nimport { Display } from \"../../util/ChatUtil\";\nimport \"./ChatRoom.css\";\nimport { map, debounce, find, filter, upperCase } from \"lodash\";\nimport moment from \"moment\";\nimport PerfectScrollbar from \"react-perfect-scrollbar\";\nimport queryString from \"query-string\";\nimport ImageViewer from \"react-simple-image-viewer\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport Select from \"react-select\";\nimport { useTranslation } from \"react-i18next\";\n\n/// \n/// Author : -\n/// \nconst ChatRoom = (props) => {\n\tlet _history = useHistory();\n\tconst { control } = useForm();\n\tconst { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n\tvar { isLoggedIn } = useSelector((state) => state.authState);\n\tconst [chatList, setChatList] = useState([]);\n\tconst [roomChat, setRoomChat] = useState([]);\n\n\tconst [currentPage, setCurrentPage] = useState(1);\n\tconst currentPageRef = useRef(currentPage);\n\tconst [totalPages, setTotalPages] = useState(1);\n\tconst totalPagesRef = useRef(totalPages);\n\tconst pageSize = 15; // Set your desired page size here\n\n\tconst [submitting, setSubmitting] = useState(false);\n\tconst [chatLoading, setChatLoading] = useState(false);\n\tconst [bottomDone, setBottomDone] = useState(true);\n\tconst bottomDoneRef = useRef(bottomDone);\n\tconst [chatCount, setChatCount] = useState(0);\n\tconst chatCountRef = useRef(chatCount);\n\tconst _dispatch = useDispatch();\n\n\tconst [selectedSenderID, setSelectedSenderID] = useState(\"\");\n\tconst selectedSenderIDRef = useRef(selectedSenderID);\n\tconst [currentSenderId, setCurrentSenderId] = useState(\"\");\n\tvar intervalId = null;\n\tconst roomIntervalRef = useRef(intervalId);\n\n\tconst [messages, setMessages] = useState([]);\n\tconst [inputValue, setInputValue] = useState(\"\");\n\tconst textareaRef = useRef(null);\n\tconst chatListBoxRef = useRef(null);\n\tconst chatListBoxRefScroll = useRef(null);\n\tconst [inputHeight, setInputHeight] = useState(\"1px\");\n\n\tconst [isRecording, setIsRecording] = useState(false);\n\tconst isRecordingRef = useRef(isRecording);\n\tconst [selectedSenderData, setSelectedSenderData] = useState([]);\n\tconst [transactionData, setTransactionData] = useState([]);\n\tconst [promotionData, setPromotionData] = useState([]);\n\tconst [rolloverData, setRolloverData] = useState([]);\n\tconst [bonusRolloverData, setBonusRolloverData] = useState([]);\n\tconst [memberDetail, setMemberDetail] = useState();\n\tconst [textareaValue, setTextareaValue] = useState(\"\");\n\tconst [membersWithUnread, setMembersWithUnread] = useState([]);\n\tconst [isViewerOpen, setIsViewerOpen] = useState(false);\n\tconst [currentImage, setCurrentImage] = useState(0);\n\tconst [chatImg, setChatImg] = useState([]);\n\tconst [templateList, setTemplateList] = useState([]);\n\tconst [selectedTemplate, setSelectedTemplate] = useState(\"\");\n\n\tconst handleInput = () => {\n\t\tconst textarea = textareaRef.current;\n\t\tif (textarea) {\n\t\t\ttextarea.style.height = \"1px\"; // Reset height\n\t\t\ttextarea.style.height = `${textarea.scrollHeight}px`; // Set height to scrollHeight\n\t\t\tif (textarea.scrollHeight < textarea.clientHeight) {\n\t\t\t\ttextarea.style.height = \"1px\"; // Ensure it can shrink back to one row\n\t\t\t}\n\n\t\t\tsetTextareaValue(textarea.value.trim());\n\t\t}\n\t};\n\n\tconst handleSelectChange = (selectedOption) => {\n\t\tif (selectedOption.value === \"open_new_tab\") {\n\t\t\tconst targetUrl = `${WebUrl._URL_MANAGE_CUSTOM_CHAT_TEMPLATE}`;\n\n\t\t\t// Open the URL in a new tab\n\t\t\twindow.open(targetUrl, \"_blank\");\n\t\t\treturn;\n\t\t}\n\n\t\tsetSelectedTemplate(selectedOption.value);\n\t\tsetTextareaValue(selectedOption.value.trim());\n\t\tsetTimeout(handleInput, 0);\n\t};\n\n\tuseEffect(() => {\n\t\thandleInput();\n\t}, [textareaValue]);\n\n\tuseEffect(() => {\n\t\tgetSelectedChatsTemplate(selectedTemplate);\n\t}, [selectedTemplate]);\n\n\tconst calculateLocalTime = (utcDateTime) => {\n\t\tconst months = [\n\t\t\t\"Jan\",\n\t\t\t\"Feb\",\n\t\t\t\"Mar\",\n\t\t\t\"Apr\",\n\t\t\t\"May\",\n\t\t\t\"Jun\",\n\t\t\t\"Jul\",\n\t\t\t\"Aug\",\n\t\t\t\"Sep\",\n\t\t\t\"Oct\",\n\t\t\t\"Nov\",\n\t\t\t\"Dec\",\n\t\t];\n\t\tconst utcDate = new Date(utcDateTime); // Parse UTC date time\n\t\tconst offset = utcDate.getTimezoneOffset(); // Get offset in minutes\n\n\t\tconst adjustedTime = new Date(utcDate.getTime() - offset * 60 * 1000); // Subtract the offset\n\n\t\t// Extract components of the adjusted local time\n\t\tconst day = String(adjustedTime.getDate()).padStart(2, \"0\"); // Get day with leading zero\n\t\tconst monthIndex = adjustedTime.getMonth(); // Get month index\n\t\tconst month = months[monthIndex]; // Get month abbreviation\n\t\tconst year = adjustedTime.getFullYear(); // Get full year\n\t\tconst hours = String(adjustedTime.getHours()).padStart(2, \"0\"); // Get hours with leading zero\n\t\tconst minutes = String(adjustedTime.getMinutes()).padStart(2, \"0\"); // Get minutes with leading zero\n\n\t\t// Construct the formatted local time string\n\t\tconst localTimeString = `${day} ${month}, ${hours}:${minutes}`;\n\n\t\treturn localTimeString;\n\t};\n\n\tconst sendMessage = async (e) => {\n\t\te.preventDefault();\n\n\t\tif (selectedSenderID === \"\") {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst content = textareaValue;\n\t\tif (content == \"\") {\n\t\t\treturn false;\n\t\t}\n\t\tsetSubmitting(true);\n\n\t\tconst messageData = {\n\t\t\tReceiverID: selectedSenderID,\n\t\t\tMessageType: \"Text\",\n\t\t\tContent: content,\n\t\t};\n\n\t\ttry {\n\t\t\ttextareaRef.current.value = \"\";\n\t\t\tconst newMessage = {\n\t\t\t\tname: \"Sending...\",\n\t\t\t\tsender: \"User\",\n\t\t\t\tdatetime: \"\",\n\t\t\t\tcontent: content,\n\t\t\t\tmessageType: \"Text\",\n\t\t\t};\n\t\t\tsetRoomChat([...roomChat, newMessage]);\n\t\t\tconst response = await fetch(ApiUrl._API_SEND_CHAT, {\n\t\t\t\tmethod: \"POST\",\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t\t},\n\t\t\t\tbody: JSON.stringify(messageData),\n\t\t\t});\n\n\t\t\tif (response.ok) {\n\t\t\t\ttextareaRef.current.value = \"\";\n\t\t\t\thandleInput();\n\t\t\t\tsetInputValue(\"\");\n\t\t\t\tsetSelectedTemplate(\"\");\n\t\t\t\tgetChat();\n\t\t\t} else {\n\t\t\t\t// Handle errors, such as displaying a message to the user\n\t\t\t\talert(\"Failed to send message.\");\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Error sending message:\", error);\n\t\t\talert(\"An error occurred while sending the message.\");\n\t\t}\n\n\t\tsetSubmitting(false);\n\t};\n\n\tuseEffect(() => {\n\t\tchatCountRef.current = chatCount;\n\t}, [chatCount]);\n\n\tuseEffect(() => {\n\t\tbottomDoneRef.current = bottomDone;\n\t}, [bottomDone]);\n\n\tconst scrollToBottom = () => {\n\t\tif (bottomDoneRef.current) return;\n\t\tconst chatListBox = chatListBoxRefScroll.current;\n\t\tif (chatListBox) {\n\t\t\tchatListBox.scrollTop = chatListBox.scrollHeight;\n\t\t}\n\t\tsetBottomDone(true);\n\t\thandleInput();\n\t};\n\n\tconst getChat = async () => {\n\t\tif (\n\t\t\t!selectedSenderIDRef ||\n\t\t\tstringIsNullOrEmpty(selectedSenderIDRef.current)\n\t\t)\n\t\t\treturn false;\n\n\t\tgetAllChatsTemplate();\n\n\t\tlet apiUrl = `${ApiUrl._API_GET_CHAT_ROOM}`;\n\t\tapiUrl += \"?id=\" + selectedSenderIDRef.current;\n\n\t\tawait fetch(apiUrl, {\n\t\t\tmethod: \"GET\",\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tif (\n\t\t\t\t\t\tchatCount > 0 &&\n\t\t\t\t\t\tchatCountRef.current ===\n\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].length &&\n\t\t\t\t\t\tcurrentSenderId === selectedSenderID\n\t\t\t\t\t)\n\t\t\t\t\t\treturn;\n\t\t\t\t\tsetCurrentSenderId(selectedSenderID);\n\t\t\t\t\tsetChatCount(responseJson[ApiKey._API_DATA_KEY].length);\n\t\t\t\t\tsetRoomChat([...responseJson[ApiKey._API_DATA_KEY]]);\n\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\tscrollToBottom();\n\t\t\t\t\t}, 100);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tconst getAllChats = async (pageNumber) => {\n\t\tlet apiUrl = `${ApiUrl._API_GET_CHAT_LIST}`;\n\t\tapiUrl += `?languageId=1&pageNumber=${currentPageRef.current}&pageSize=${pageSize}`;\n\n\t\ttry {\n\t\t\tconst response = await fetch(apiUrl, { method: \"GET\" });\n\t\t\tconst responseJson = await response.json();\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tgetMembersWithUnreadNotification();\n\t\t\t\tsetChatList(responseJson[ApiKey._API_DATA_KEY].chat);\n\t\t\t\tsetTotalPages(responseJson[ApiKey._API_DATA_KEY].pages);\n\t\t\t\ttotalPagesRef.current = responseJson[ApiKey._API_DATA_KEY].pages;\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Error fetching chat list:\", error);\n\t\t}\n\t};\n\n\tconst getMembersWithUnreadNotification = () => {\n\t\t// I'm sorry I had to do it this way because doing this in EF Core required major change to DB tables ChatRooms and ChatMessages - Chris\n\t\ttry {\n\t\t\tif (!window.location.pathname.match(/login/)) {\n\t\t\t\tfetch(ApiUrl._API_GET_MEMBER_WITH_UNREAD_NOTIFICATIONS, {\n\t\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\t\theaders: {\n\t\t\t\t\t\tAccept: ApiKey._API_APPLICATION_JSON,\n\t\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\t\t.then((response) => response.json())\n\t\t\t\t\t.then((responseJson) => {\n\t\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\t\tsetMembersWithUnread(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Error fetching chat list unread status:\", error);\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\t//_dispatch(showToast({ Title: \"Testing Title\", Body: \"Testing Body \"+Math.random() } ));\n\t\tselectedSenderIDRef.current = selectedSenderID;\n\t\tsetBottomDone(false);\n\n\t\tif (roomIntervalRef.current !== null) {\n\t\t\tclearInterval(roomIntervalRef.current);\n\t\t}\n\n\t\troomIntervalRef.current = setInterval(getChat, 5000);\n\t\tgetChat();\n\n\t\tif (!stringIsNullOrEmpty(selectedSenderID)) {\n\t\t\tgetDataBySelectedSenderId(selectedSenderID);\n\t\t}\n\t\treturn () => clearInterval(roomIntervalRef.current);\n\t}, [selectedSenderID]);\n\n\tvar intervalId2 = null;\n\tuseEffect(() => {\n\t\tgetAllChats();\n\t\t// Get the query parameter from the URL and load the corresponding chat\n\t\tconst queryParams = new URLSearchParams(window.location.search);\n\t\tconst chatId = queryParams.get(\"chatId\") || \"\";\n\t\tsetSelectedSenderID(chatId);\n\n\t\tif (intervalId2 !== null) {\n\t\t\tclearInterval(intervalId2);\n\t\t}\n\t\tintervalId2 = setInterval(getAllChats, 5000);\n\n\t\tconst contactsPanel = document.getElementById(\"contacts-panel\");\n\t\tcontactsPanel.addEventListener(\"scroll\", handleScroll);\n\n\t\treturn () => {\n\t\t\tcontactsPanel.removeEventListener(\"scroll\", handleScroll);\n\t\t\tclearInterval(intervalId2);\n\t\t};\n\t}, []);\n\n\tconst handleAudioData = async (sent) => {\n\t\tif (!sent) {\n\t\t\tconst newMessage = {\n\t\t\t\tname: \"Sending...\",\n\t\t\t\tsender: \"User\",\n\t\t\t\tdatetime: \"\",\n\t\t\t\tcontent: \"Uploading file...\",\n\t\t\t\tmessageType: \"Text\",\n\t\t\t};\n\t\t\tsetRoomChat([...roomChat, newMessage]);\n\t\t} else {\n\t\t\thandleInput();\n\t\t\tsetBottomDone(false);\n\t\t\tgetChat();\n\t\t}\n\t};\n\n\tconst handleAudioRecording = (status) => {\n\t\tif (status) {\n\t\t\tsetIsRecording(true);\n\t\t\tisRecordingRef.current = true;\n\t\t} else {\n\t\t\tsetIsRecording(false);\n\t\t\tisRecordingRef.current = false;\n\t\t}\n\t};\n\n\tconst handleFileUpload = async (sent) => {\n\t\tif (!sent) {\n\t\t\tconst newMessage = {\n\t\t\t\tname: \"Sending...\",\n\t\t\t\tsender: \"User\",\n\t\t\t\tdatetime: \"\",\n\t\t\t\tcontent: \"Uploading file...\",\n\t\t\t\tmessageType: \"Text\",\n\t\t\t};\n\t\t\tsetRoomChat([...roomChat, newMessage]);\n\t\t} else {\n\t\t\tsetBottomDone(false);\n\t\t\tgetChat();\n\t\t}\n\t};\n\n\tconst handleScroll = (event) => {\n\t\tconst contactsPanel = event.target;\n\t\tif (\n\t\t\tcontactsPanel.scrollTop + contactsPanel.clientHeight >=\n\t\t\tcontactsPanel.scrollHeight\n\t\t) {\n\t\t\t// Reached the bottom of the scroll container\n\t\t\tif (currentPageRef.current < totalPagesRef.current) {\n\t\t\t\tsetCurrentPage((prevPage) => prevPage + 1); // Load next page\n\t\t\t\tcurrentPageRef.current = currentPageRef.current + 1;\n\n\t\t\t\tgetAllChats();\n\n\t\t\t\tif (intervalId2 !== null) {\n\t\t\t\t\tclearInterval(intervalId2);\n\t\t\t\t}\n\t\t\t\tintervalId2 = setInterval(getAllChats, 5000);\n\t\t\t}\n\t\t}\n\t};\n\n\tasync function getDataBySelectedSenderId(selectedSenderID) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_DOWNLINE_BY_REFERRER2}?memberId=${selectedSenderID}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tconst senderData = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\n\t\t\tlet member = {\n\t\t\t\tmemberId: selectedSenderID,\n\t\t\t\tusername: senderData[0]?.[\"username\"],\n\t\t\t};\n\t\t\tsetMemberDetail(member);\n\t\t\tsetSelectedSenderData(senderData);\n\n\t\t\tvar responseJson2 = await ApiEngine.get(\n\t\t\t\t`${ApiUrl._API_GET_LATEST_MEMBER_DATA}?username=${senderData[0]?.[\"username\"]}`\n\t\t\t);\n\n\t\t\tif (responseJson2[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetTransactionData(responseJson2[ApiKey._API_DATA_KEY][\"transaction\"]);\n\t\t\t\tsetPromotionData(responseJson2[ApiKey._API_DATA_KEY][\"promotion\"]);\n\t\t\t\tsetRolloverData(responseJson2[ApiKey._API_DATA_KEY][\"rollover\"]);\n\t\t\t\tsetBonusRolloverData(\n\t\t\t\t\tresponseJson2[ApiKey._API_DATA_KEY][\"bonusRollover\"]\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst renderApprovalStatusBadge = (status, approvalStatusString) => {\n\t\tswitch (status) {\n\t\t\tcase TransactionStatus._APPROVED:\n\t\t\t\treturn Approved;\n\t\t\tcase TransactionStatus._REJECTED:\n\t\t\t\treturn Rejected;\n\t\t\tdefault:\n\t\t\t\treturn (\n\t\t\t\t\t{approvalStatusString}\n\t\t\t\t);\n\t\t}\n\t};\n\n\t// Helper function to render JSON as HTML\n\tconst renderJsonData = (data) => {\n\t\treturn (\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t
      \n\t\t\t\t\t{Object.entries(data).map(([key, value]) => (\n\t\t\t\t\t\t
    1. \n\t\t\t\t\t\t\t{formatKey(key)} : {formatValue(key, value)}\n\t\t\t\t\t\t
    2. \n\t\t\t\t\t))}\n\t\t\t\t
    \n\t\t\t
    \n\t\t);\n\t};\n\n\t// Helper function to format keys\n\tconst formatKey = (key) => {\n\t\treturn key\n\t\t\t.replace(/([A-Z])/g, \" $1\")\n\t\t\t.replace(/^./, (str) => str.toUpperCase());\n\t};\n\n\t// Helper function to format values, especially dates\n\tconst formatValue = (key, value) => {\n\t\tif (key === \"StartDate\" || key === \"EndDate\") {\n\t\t\treturn moment(value).format(\"YYYY-MM-DD HH:mm:ss\");\n\t\t}\n\t\tif (typeof value === \"boolean\") {\n\t\t\treturn value ? \"True\" : \"False\";\n\t\t}\n\t\treturn value;\n\t};\n\n\tconst updateSelectedChat = (senderID) => {\n\t\tconst params = new URLSearchParams(window.location.search);\n\t\tparams.set(\"chatId\", senderID);\n\t\t_history.replace({ search: params.toString() });\n\t};\n\n\tconst handleSelectChat = (senderID) => {\n\t\tif (senderID != selectedSenderID) {\n\t\t\tsetSelectedSenderID(senderID);\n\t\t\tupdateSelectedChat(senderID);\n\t\t} else setSelectedSenderID(\"\");\n\t};\n\n\tconst handleClick = () => {\n\t\t// Create the URL with query parameters\n\t\tconst stateString = queryString.stringify(memberDetail);\n\t\tconst targetUrl = `${WebUrl._URL_VIEW_ACCOUNT}?${stateString}`;\n\n\t\t// Open the URL in a new tab\n\t\twindow.open(targetUrl, \"_blank\");\n\t};\n\n\tconst closeImageViewer = () => {\n\t\tsetIsViewerOpen(false);\n\t};\n\n\tconst getAllChatsTemplate = async () => {\n\t\ttry {\n\t\t\tfetch(ApiUrl._API_GET_CUSTOM_CHAT_TEMPLATE + \"?all=true\", {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY];\n\t\t\t\t\t\tconst tempList = [];\n\t\t\t\t\t\tdata.map((data) => {\n\t\t\t\t\t\t\ttempList.push({\n\t\t\t\t\t\t\t\tlabel: data.title,\n\t\t\t\t\t\t\t\tvalue: data.code,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\ttempList.push({\n\t\t\t\t\t\t\tlabel: \"(Add New Template)\",\n\t\t\t\t\t\t\tvalue: \"open_new_tab\",\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tsetTemplateList(tempList);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t} catch (error) {\n\t\t\tconsole.error(\"Error fetching chat template:\", error);\n\t\t}\n\t};\n\n\tasync function getSelectedChatsTemplate(value) {\n\t\tif (!stringIsNullOrEmpty(value)) {\n\t\t\tvar apiUrl = ApiUrl._API_GET_CUSTOM_CHAT_TEMPLATE_CODE;\n\t\t\tapiUrl += \"?code=\" + value;\n\t\t\tawait fetch(apiUrl, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tsetTextareaValue(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t}\n\n\tconst customStyles = {\n\t\tmenu: (provided) => ({\n\t\t\t...provided,\n\t\t\tbottom: \"100%\",\n\t\t\ttop: \"auto\",\n\t\t\tright: \"-10px\",\n\t\t\tmarginBottom: \"8px\",\n\t\t\twidth: \"auto\",\n\t\t}),\n\t\tmenuList: (provided) => ({\n\t\t\t...provided,\n\t\t\twhiteSpace: \"normal\",\n\t\t\twordBreak: \"break-word\",\n\t\t\toverflowWrap: \"break-word\",\n\t\t}),\n\t\toption: (provided) => ({\n\t\t\t...provided,\n\t\t\tfontSize: \"12px\",\n\t\t\twhiteSpace: \"normal\",\n\t\t\twordBreak: \"break-word\",\n\t\t\toverflowWrap: \"break-word\",\n\t\t}),\n\t\tcontrol: (provided) => ({\n\t\t\t...provided,\n\t\t\tposition: \"absolute\",\n\t\t\ttop: \"-10px\",\n\t\t\tright: \"-10px\",\n\t\t\tminWidth: \"150px\",\n\t\t\twidth: \"auto\",\n\t\t\tfontSize: \"12px\",\n\t\t\tbackgroundColor: \"unset\",\n\t\t\tborderRadius: \"unset\",\n\t\t\tborderStyle: \"unset\",\n\t\t\tborderWidth: 0,\n\t\t\tborderColor: \"unset\",\n\t\t\tboxShadow: \"none\",\n\t\t}),\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{/* */}\n\t\t\t\t{chatList.map((chat) => (\n\t\t\t\t\t {\n\t\t\t\t\t\t\thandleSelectChat(chat.senderID);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    {chat.senderName}
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{chat.dateTime !== \"\" && calculateLocalTime(chat.dateTime)}\n\t\t\t\t\t\t\t\t{membersWithUnread &&\n\t\t\t\t\t\t\t\t\tmembersWithUnread.find(\n\t\t\t\t\t\t\t\t\t\t(member) => member.senderID === chat.senderID\n\t\t\t\t\t\t\t\t\t) && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\tmembersWithUnread.find(\n\t\t\t\t\t\t\t\t\t\t\t\t\t(member) => member.senderID === chat.senderID\n\t\t\t\t\t\t\t\t\t\t\t\t).count\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    {Display(chat)}
    \n\t\t\t\t\t
    \n\t\t\t\t))}\n\t\t\t\t{/* */}\n\t\t\t
    \n\t\t\t{selectedSenderID !== \"\" && (\n\t\t\t\t<>\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tchatListBoxRefScroll.current = ref;\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{roomChat &&\n\t\t\t\t\t\t\t\t\t\troomChat.map((chat, index) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{chat.sender === \"Member\" && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{/* 👤 */}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{chat.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{chat.dateTime !== \"\" &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcalculateLocalTime(chat.dateTime)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (chat.messageType == \"Image\") {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetIsViewerOpen(true);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlet imgArray = [];\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\timgArray.push(chat.content);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetChatImg(imgArray);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{Display(chat)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t{isViewerOpen && (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t{!isRecordingRef.current && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{!isRecordingRef.current && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toptions={templateList}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tselectedTemplate === \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? t(\"SELECT_TEMPLATE\")\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: templateList.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toption.value ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tselectedTemplate\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={selectedTemplate}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleSelectChange(e);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetTextareaValue(e.target.value)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{!isRecordingRef.current && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{selectedSenderData && selectedSenderData.length > 0 && (\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    Username\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{selectedSenderData[0][\"username\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    Full Name{selectedSenderData[0][\"userFullName\"]}
    Phone{selectedSenderData[0][\"phoneNumber\"]}
    Date Registered{selectedSenderData[0][\"createdTime\"]}
    Total Downline123123
    Balance{selectedSenderData[0][\"walletBalance\"]}
    Bonus Balance{selectedSenderData[0][\"bonusBalance\"]}
    \n\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    DepositWithdrawTurnover
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(selectedSenderData[0][\"depositTotal\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(selectedSenderData[0][\"withdrawalTotal\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(selectedSenderData[0][\"betValidTotal\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    BonusCommissionAdjustment
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(selectedSenderData[0][\"bonusTotal\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(selectedSenderData[0][\"commissionTotal\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(selectedSenderData[0][\"adjustmentTotal\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t)}\n\n\n\t\t\t\t\t\t\t{transactionData && transactionData.length > 0 && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{map(transactionData, (data, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    IDTimeTypeAmountStatus
    {data[\"id\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{moment(data[\"transactionDateTime\"]).format(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"YYYY-MM-DD HH:mm:ss\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{data[\"transactionType\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(data[\"amount\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{renderApprovalStatusBadge(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata[\"approvalStatus\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata[\"approvalStatusString\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{promotionData && promotionData.length > 0 && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{map(promotionData, (data, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    PromotionTimeAmount
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{stringIsNullOrEmpty(data[\"remark\"])\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: renderJsonData(JSON.parse(data[\"remark\"]))}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{moment(data[\"transactionDateTime\"]).format(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"YYYY-MM-DD HH:mm:ss\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(data[\"amount\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{rolloverData && rolloverData.length > 0 && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{map(rolloverData, (data, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvar statusHtml = \"\";\n\t\t\t\t\t\t\t\t\t\t\t\t\tstatusHtml =\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata[\"isLatestRecord\"] == 1 ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{data[\"status\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{data[\"status\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    TimeAmountProgressStatus
    {data[\"date\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(data[\"amount\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{data[\"isLatestRecord\"] == 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? data[\"rolloverProgress\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: data[\"rolloverTarget\"]}{\" \"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/ {data[\"rolloverTarget\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{statusHtml}
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t{bonusRolloverData && bonusRolloverData.length > 0 && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{map(bonusRolloverData, (data, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvar statusHtml = \"\";\n\t\t\t\t\t\t\t\t\t\t\t\t\tstatusHtml =\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata[\"isLatestRecord\"] == 1 ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{data[\"status\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{data[\"status\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    TimeAmountProgressStatus
    {data[\"createdTime\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(data[\"bonusAmount\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata[\"rolloverTarget\"] -\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdata[\"rolloverBalance\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t).toFixed(3)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/ {data[\"rolloverTarget\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{statusHtml}
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t)}\n\t\t\n\t);\n};\n\nexport default ChatRoom;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\n// import \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ChatTemplate = (props) => {\n let _history = useHistory();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [contentData, setContentData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"Title\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"Default\",\n accessor: \"defaultContent\",\n disableSortBy: true,\n },\n {\n Header: \"My Setting\",\n accessor: \"myContent\",\n disableSortBy: true,\n Cell: ({ cell }) =>
    \n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._CONTENT_SETTING_PERMISSION,\n true\n ) && (\n
    \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_CHAT_SYSTEM_TEMPLATE,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_CHAT_TEMPLATE + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setContentData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n
    \n {t(\"Chat System Template\")}\n
    \n
    \n

    \n \n \n \n
    \n );\n};\n\nexport default ChatTemplate;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport {\n ApiUrl,\n ApiKey,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { useDispatch } from \"react-redux\";\nimport Icon from '@mdi/react';\nimport classnames from 'classnames';\nimport { mdiPauseCircleOutline, mdiPlayCircleOutline } from '@mdi/js';\n\n\nconst LiveMonitor = props => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [liveData, setLiveData] = useState([]);\n const [dataToDisplay, setDataToDisplay] = useState([]);\n const [isPaused, setIsPaused] = useState(false);\n const [isLoading, setIsLoading] = useState(true);\n const [intervalId, setIntervalId] = useState();\n const [filterAmt, setFilterAmt] = useState(0);\n const [currentCategory, setCurrentCategory] = useState(\"All\");\n const [currentRiskLevel, setCurrentRiskLevel] = useState(-1);\n const [allAvailableCategory, SetAllAvailableCategory] = useState([]);\n\n const _risk_level_color = [\n { value: -1, label: \"normal\" },\n { value: -99, label: \"purple\"},\n { value: 0, label: \"normal\" },\n { value: 1, label: \"yellow\" },\n { value: 2, label: \"green\" },\n { value: 3, label: \"red\" },\n { value: 4, label: \"blue\" },\n { value: 5, label: \"grey\" }\n ];\n\n const _defaultTableColumns = [\n\n {\n Header: t(\"ID\") + \" (\" + t(\"RISK_LEVEL_SHORT\") + \") \",\n accessor: \"id\",\n Cell: ({ row }) => {\n let riskId = _risk_level_color.find(x => x.value === row.original.riskLevel);\n return (\n
    \n {row.original.id + \" (\" + (riskId.value === -99 ? \"New\" : riskId.value) + \") \"}\n
    \n );\n },\n },\n //{\n // Header: \"Description\",\n // Cell: ({ row }) => {\n // return (\n //
    x.value === row.original.riskLevel).label)}>\n // {row.original.betId}\n //
    \n // );\n // },\n //},\n {\n Header: t(\"DATE\"),\n accessor: \"date\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n
    x.value === row.original.riskLevel).label)}>{row.original.date}
    \n );\n },\n },\n {\n Header: t(\"USERNAME\"),\n accessor: \"memberUsername\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n
    x.value === row.original.riskLevel).label)}>{row.original.memberUsername}
    \n );\n },\n },\n {\n Header: t(\"PRODUCT_NAME\"),\n accessor: \"productName\",\n Cell: ({ row }) => {\n return (\n
    x.value === row.original.riskLevel).label)}>{row.original.productName}
    \n );\n },\n },\n //{\n // Header: t(\"PLAYERID\"),\n // accessor: \"username\",\n // minWidth: 100,\n // Cell: ({ row }) => {\n // return (\n //
    x.value === row.original.riskLevel).label)}>{row.original.username}
    \n // );\n // },\n //},\n //{\n // Header: t(\"GAME_NAME\"),\n // accessor: \"gameName\",\n // minWidth: 100,\n // Cell: ({ row }) => {\n // return (\n //
    x.value === row.original.riskLevel).label)}>{row.original.gameName}
    \n // );\n // },\n //},\n {\n Header: t(\"BET_AMOUNT\"),\n accessor: \"amount\",\n minWidth: 100,\n Cell: ({ row }) => {\n return
    x.value === row.original.riskLevel).label)}>{row.original.amount.toFixed(2)}
    ;\n },\n },\n ];\n\n useEffect(() => {\n //getLatestData();\n //let tempIntervalId = setInterval(() => getLatestData(), 5000);\n //setIntervalId(tempIntervalId);\n }, []);\n\n const getLatestData = async () => {\n var apiUrl = ApiUrl._API_GET_LIVE_DATA + \"?amount=\" + filterAmt + \"&category=\" + currentCategory + \"&riskLevel=\" + currentRiskLevel;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Accept\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n }\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_DATA_KEY] != null) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setLiveData(data);\n var categoryApiUrl = ApiUrl._API_GET_PRODUCT_CATEGORY + \"?all=true\";\n fetch(categoryApiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Accept\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n }\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let categoryData = responseJson[ApiKey._API_DATA_KEY];\n let categoryList = [];\n categoryData.map((category, index) => {\n //if (category.originalTitle === \"All\" || data.filter(x => x.categoryName === category.originalTitle).length > 0) {\n categoryList.push(category.originalTitle);\n //}\n });\n SetAllAvailableCategory(categoryList);\n }\n });\n }\n else {\n setLiveData([]);\n }\n }\n });\n setIsLoading(false);\n }\n\n useEffect(() => {\n //let tempData = liveData.filter(x => (x.categoryName === currentCategory || currentCategory === \"All\") && x.amount >= filterAmt);\n //setDataToDisplay(tempData);\n clearInterval(intervalId);\n getLatestData();\n if (!isPaused) {\n let tempIntervalId = setInterval(() => {\n setIsLoading(true);\n getLatestData();\n }, 10000);\n setIntervalId(tempIntervalId);\n }\n }, [filterAmt, currentCategory, currentRiskLevel]);\n\n /// \n /// Author : -\n /// \n const toggleCategory = (categoryTitle) => {\n if (currentCategory !== categoryTitle) {\n setCurrentCategory(categoryTitle);\n }\n }\n\n const toggleRiskLevel = (riskLevel) => {\n if (currentRiskLevel !== riskLevel) {\n setCurrentRiskLevel(riskLevel);\n }\n }\n\n const togglePause = () => {\n let tempIsPaused = isPaused;\n if (tempIsPaused === false) { //clear loop before pausing\n clearInterval(intervalId);\n }\n else { //start back loop before resume\n getLatestData();\n let tempIntervalId = setInterval(() => {\n setIsLoading(true);\n getLatestData();\n }, 5000);\n setIntervalId(tempIntervalId);\n }\n setIsPaused(!isPaused);\n }\n\n return (\n <>\n
    \n
    \n
    \n {allAvailableCategory.length > 0 &&
    \n {t(\"FILTER_BY\") + \" \" + t(\"CATEGORY\") + \" : \"}\n {allAvailableCategory.map((categoryTitle, index) => {\n return (<>\n
    toggleCategory(categoryTitle)} className={\"live-data-category \" + classnames({ active: currentCategory === categoryTitle })}>{categoryTitle}
    \n {index !== (allAvailableCategory.length - 1) &&
    }\n )\n })}\n
    }\n
    \n {t(\"FILTER_BY\") + \" \" + t(\"RISK_LEVEL\") + \" : \"}\n {_risk_level_color.map((riskLevel, index) => {\n return (<>\n
    toggleRiskLevel(riskLevel.value)} className={\"live-data-risk-level \" + classnames({ active: currentRiskLevel === riskLevel.value })}>{riskLevel.value === -1 ? \"All\" : riskLevel.value === -99 ? \"New\" : riskLevel.value}
    \n {index !== (_risk_level_color.length - 1) &&
    }\n )\n })}\n
    \n
    \n
    \n \n
    \n {\n clearInterval(intervalId);\n setFilterAmt(e.target.valueAsNumber);\n }}\n />\n
    \n
    togglePause()} style={{ marginLeft: \"25px\" }}>\n \n
    \n
    \n
    \n
    \n
    \n
    {isLoading && {t(\"LOADING_NEW_DATA\")}}
    \n \n
    \n
    \n
    Legend :
    \n
    \n {_risk_level_color.filter(x => x.label !== \"normal\").map((riskLevel, index) => {\n return (\n
    \n
    \n
    {\"- \" + (riskLevel.value === -99 ? t(\"NEW_MEMBER\") : t(\"RISK_LEVEL\") + \" (\" + riskLevel.value + \") \")}
    \n
    \n )\n })}\n
    \n
    \n
    \n \n )\n}\n\nexport default LiveMonitor;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport \"../../assets/css/reward.css\";\n\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, createFormBody } from \"../../util/Util\";\n\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport moment from \"moment\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \n\nconst RewardsSetting = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors, setValue, watch } = useForm({ mode: \"onBlur\" });\n\n let _history = useHistory();\n const [settingData, setSettingData] = useState([]);\n const [categoryData, setCategoryData] = useState([]);\n const { loginUserId } = useSelector((state) => ({\n loginUserId: state.authState.userData.userId,\n }));\n\n const [formData, setFormData] = useState({});\n\n const daysArr = ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'];\n\n /// \n /// Author : -\n /// \n function updateProductData() {\n\n _dispatch(setBusy());\n fetch(ApiUrl._API_GET_REWARDS_SETTING, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSettingData(responseJson[ApiKey._API_DATA_KEY].data.settings);\n setCategoryData(responseJson[ApiKey._API_DATA_KEY].data.categories);\n }\n });\n\n _dispatch(setIdle());\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n updateProductData();\n\n }, []);\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let formBody = createFormBody(formData);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_UPDATE_REWARDS_SETTING,\n formBody\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n };\n\n /// \n /// Author : -\n /// \n function preSubmit() {\n handleSubmit(submitForm)();\n }\n\n return (\n
    \n

    {t(\"Rewards Setting\")}

    \n\n \n \n
    \n
    \n \n \n \n \n {\n daysArr.length > 0 && <>\n \n \n \n \n \n \n \n \n }\n \n \n \n {\n categoryData.length > 0 && categoryData.map(\n (o, i) => {\n return (\n Object.entries(settingData[o.title]).length > 0 && <>\n \n \n \n {\n Object.entries(settingData[o.title]).map(\n (o2, i2) => {\n\n return (\n <>\n \n \n {\n Object.entries(daysArr).map(\n (o3, i3) => {\n return (\n <>\n \n \n )\n }\n )\n }\n\n \n \n )\n /*\n Object.entries(o2).map(\n (o3, i3) => {\n }\n )*/\n }\n )\n }\n \n )\n }\n )\n }\n \n
    {daysArr[0]}{daysArr[1]}{daysArr[2]}{daysArr[3]}{daysArr[4]}{daysArr[5]}{daysArr[6]}
    {o.title}
    \n {\n o2[1].Name\n }\n \n {\n <>\n {\n parseFloat(e.target.value) < 0 ?\n (e.target.value = 0) : (parseFloat(e.target.value) > (o2[1].Name == \"JJVIP\" ? 2 : 0.4) ?\n e.target.value = (o2[1].Name == \"JJVIP\" ? 2 : 0.4) : e.preventDefault());\n\n e.target.name = o.id + \"-\" + o2[0] + \"-\" + o3[1];\n setFormData({...formData, [o.id + \"-\" + o2[0] + \"-\" + o3[1]]: e.target.value });\n }}\n defaultValue={o2[1][o3[1]]}\n style={{ textAlign: \"right\" }} />\n\n {errors[o.id + \"-\" + o2[0] + \"-\" + o3[1]] && (\n
    \n {t(errors[o.id + \"-\" + o2[0] + \"-\" + o3[1]].message)}\n
    \n )}\n \n }\n
    \n
    \n\n
    \n
    \n
    \n
    \n preSubmit()}\n className=\"btn btn-primary\"\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default RewardsSetting;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, createFormBody } from \"../../util/Util\";\n\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport moment from \"moment\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \n\nconst RewardsSchedule = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors, setValue, watch } = useForm({ mode: \"onBlur\" });\n\n const [formData, setFormData] = useState({});\n\n let _history = useHistory();\n const [scheduleData, setScheduleData] = useState([]);\n const [categoryData, setCategoryData] = useState([]);\n const [productData, setProductData] = useState([]);\n const { loginUserId } = useSelector((state) => ({\n loginUserId: state.authState.userData.userId,\n }));\n\n /// \n /// Author : -\n /// \n function updateProductData() {\n\n _dispatch(setBusy());\n fetch(ApiUrl._API_GET_REWARDS_SCHEDULE, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductData(responseJson[ApiKey._API_DATA_KEY].data.products);\n setCategoryData(responseJson[ApiKey._API_DATA_KEY].data.categories);\n setScheduleData(responseJson[ApiKey._API_DATA_KEY].data.schedules);\n }\n });\n\n _dispatch(setIdle());\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n updateProductData();\n\n }, []);\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n console.log(data);\n let formBody = createFormBody(data);\n console.log(formBody);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_UPDATE_REWARDS_SCHEDULE,\n formBody\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n };\n\n /// \n /// Author : -\n /// \n function preSubmit() {\n handleSubmit(submitForm)();\n }\n\n return (\n
    \n

    {t(\"Rewards Schedules\")}

    \n\n \n \n
    \n
    \n \n \n \n \n {\n Object.keys(scheduleData).length > 0 && Object.entries(scheduleData).map(\n (o, i) => {\n return (\n \n )\n }\n )\n }\n \n \n \n {\n categoryData.length > 0 && categoryData.map(\n (o, i) => {\n return (\n <>\n \n \n \n <>\n {\n Object.entries(Object.entries(productData)[Object.keys(productData).findIndex(c => c == o.title)][1]) && Object.entries(Object.entries(productData)[Object.keys(productData).findIndex(c => c == o.title)][1]).length > 0 && Object.entries(Object.entries(productData)[Object.keys(productData).findIndex(c => c == o.title)][1]).map(\n (o2, i2) => {\n return (\n \n \n {\n Object.entries(scheduleData).map(\n (o3, i3) => {\n return ()\n }\n )\n }\n \n )\n }\n )\n }\n \n \n )\n }\n )\n }\n \n
    {moment(o[0], \"YYYY-MM-DD\").format(\"DD/MM/YYYY\")}
    {moment(o[0], \"YYYY-MM-DD\").format(\"dddd\")}
    {o.title}
    {o2[1]}{\n moment(o3[0], \"YYYY-MM-DD\").isAfter(moment(), \"d\") ? {\n parseFloat(e.target.value) < 0 ?\n (e.target.value = 0) : (parseFloat(e.target.value) > (o2[1] == \"JJVIP\" ? 2 : 1) ?\n e.target.value = (o2[1] == \"JJVIP\" ? 2 : 1) : e.preventDefault());\n\n //console.log(formData);\n //setFormData({ ...formData, [o.id + \"|\" + o3[0] + \"|\" + o2[0]]: e.target.value });\n //console.log(formData);\n\n }}\n defaultValue={o3[1][o.title][o2[0]]}\n style={{ textAlign: \"center\", width: \"80px\" }} />:\n o3[1][o.title][o2[0]]\n }
    \n
    \n\n
    \n
    \n
    \n
    \n preSubmit()}\n className=\"btn btn-primary\"\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default RewardsSchedule;\n","import React, { useState, useEffect } from 'react';\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { useTranslation } from \"react-i18next\";\nimport { useDispatch } from 'react-redux';\nimport { setBusy, setIdle, showMessage } from '../../redux/AppAction';\nimport { ApiKey, ApiUrl, LanguageKey } from '../../util/Constant';\nimport Select from \"react-select\";\nimport { numberWithCurrencyFormat } from '../../util/Util';\n\nconst ClaimedRewardsReport = () => {\n const _dispatch = useDispatch();\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [startDate, setStartDate] = useState(moment().format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().format(\"YYYY-MM-DD\"));\n const [isClaimed, setIsClaimed] = useState(true);\n const [rewardsDataUrl, setRewardsDataUrl] = useState(ApiUrl._API_GET_CLAIMED_UNCLAIMED_REWARDS_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate + \"&claimed=\" + isClaimed);\n\n useEffect(() => {\n getRewardsReport();\n }, []);\n\n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n const isClaimedFilterList = [\n {\n label: t(\"IS_CLAIMED\"),\n value: true\n },\n {\n label: t(\"IS_UNCLAIMED\"),\n value: false\n }\n ];\n\n const _tableColumns = [\n {\n Header: t(\"ID\"),\n accessor: \"id\",\n },\n {\n Header: t(\"MEMBER_USERNAME\"),\n accessor: \"memberUsername\",\n },\n {\n Header: t(\"PRODUCT_NAME\"),\n accessor: \"productName\",\n },\n {\n Header: t(\"CATEGORY_NAME\"),\n accessor: \"categoryTitle\",\n },\n {\n Header: t(\"AMOUNT\"),\n accessor: \"amount\",\n Cell: ({ row }) => {\n return {numberWithCurrencyFormat(row.original.amount, 2, true)}\n }\n },\n {\n Header: t(\"COMMISSION\"),\n accessor: \"commission\",\n Cell: ({ row }) => {\n return {numberWithCurrencyFormat(row.original.commission, 2, true)}\n }\n },\n {\n Header: t(\"VALID_TURNOVER\"),\n accessor: \"validTurnover\",\n Cell: ({ row }) => {\n return {numberWithCurrencyFormat(row.original.validTurnover, 2, true)}\n }\n },\n ];\n\n const getRewardsReport = async () => {\n _dispatch(setBusy());\n let apiUrl = ApiUrl._API_GET_CLAIMED_UNCLAIMED_REWARDS_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate + \"&claimed=\" + isClaimed;\n setRewardsDataUrl(apiUrl);\n _dispatch(setIdle());\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"CLAIMED_UNCLAIMED_REWARDS_REPORT\")}

    \n \n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n item.value == isClaimed\n ).value}\n placeholder={isClaimedFilterList.find(\n (item) => item.value == isClaimed\n ).label}\n options={isClaimedFilterList}\n onChange={(e) => {\n setIsClaimed(e.value);\n }}\n />\n
    \n
    \n
    \n getRewardsReport()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n )\n}\n\nexport default ClaimedRewardsReport;","import React, { useState, useEffect } from 'react';\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { useTranslation } from \"react-i18next\";\nimport { useDispatch } from 'react-redux';\nimport { setBusy, setIdle, showMessage } from '../../redux/AppAction';\nimport { ApiKey, ApiUrl, LanguageKey } from '../../util/Constant';\nimport Select from \"react-select\";\nimport { numberWithCurrencyFormat } from '../../util/Util';\n\nconst ForfeitedRewardsReport = () => {\n const _dispatch = useDispatch();\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [startDate, setStartDate] = useState(moment().add(-7, 'days').format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().add(-7, 'days').format(\"YYYY-MM-DD\"));\n const [isClaimed, setIsClaimed] = useState(true);\n const [rewardsDataUrl, setRewardsDataUrl] = useState(ApiUrl._API_GET_CLAIMED_UNCLAIMED_REWARDS_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate + \"&claimed=\" + isClaimed);\n\n useEffect(() => {\n getRewardsReport();\n }, []);\n\n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n const _tableColumns = [\n {\n Header: t(\"ID\"),\n accessor: \"id\",\n },\n {\n Header: t(\"MEMBER_USERNAME\"),\n accessor: \"memberUsername\",\n },\n {\n Header: t(\"PRODUCT_NAME\"),\n accessor: \"productName\",\n },\n {\n Header: t(\"CATEGORY_NAME\"),\n accessor: \"categoryTitle\",\n },\n {\n Header: t(\"AMOUNT\"),\n accessor: \"amount\",\n Cell: ({ row }) => {\n return {numberWithCurrencyFormat(row.original.amount, 2, true)}\n }\n },\n {\n Header: t(\"COMMISSION\"),\n accessor: \"commission\",\n Cell: ({ row }) => {\n return {numberWithCurrencyFormat(row.original.commission, 2, true)}\n }\n },\n {\n Header: t(\"VALID_TURNOVER\"),\n accessor: \"validTurnover\",\n Cell: ({ row }) => {\n return {numberWithCurrencyFormat(row.original.validTurnover, 2, true)}\n }\n },\n ];\n\n const getRewardsReport = async () => {\n _dispatch(setBusy());\n let apiUrl = ApiUrl._API_GET_CLAIMED_UNCLAIMED_REWARDS_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate + \"&claimed=\" + isClaimed;\n setRewardsDataUrl(apiUrl);\n _dispatch(setIdle());\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"FORFEITED_REWARDS_REPORT\")}

    \n \n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n getRewardsReport()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n )\n}\n\nexport default ForfeitedRewardsReport;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport {\n ApiUrl,\n ApiKey,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { useDispatch } from \"react-redux\";\nimport Icon from '@mdi/react';\nimport classnames from 'classnames';\nimport { mdiPauseCircleOutline, mdiPlayCircleOutline } from '@mdi/js';\nimport { numberWithCurrencyFormat, stringIsNullOrEmpty } from \"../../util/Util\";\nimport moment from 'moment';\n\nconst SportsLiveMonitor = props => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [liveData, setLiveData] = useState([]);\n const [dataToDisplay, setDataToDisplay] = useState([]);\n const [isPaused, setIsPaused] = useState(false);\n const [isLoading, setIsLoading] = useState(true);\n const [intervalId, setIntervalId] = useState(0);\n const [filterAmt, setFilterAmt] = useState(0);\n const [currentCategory, setCurrentCategory] = useState(\"All\");\n const [currentRiskLevel, setCurrentRiskLevel] = useState(-1);\n const [allAvailableCategory, SetAllAvailableCategory] = useState([]);\n const [serverCurrentTime, setServerCurrentTime] = useState(moment());\n const [parlayBetDetails, setParlayBetDetails] = useState([]);\n\n const _risk_level_color = [\n { value: -1, label: \"normal\" },\n { value: -99, label: \"purple\" },\n { value: 0, label: \"normal\" },\n { value: 1, label: \"yellow\" },\n { value: 2, label: \"green\" },\n { value: 3, label: \"red\" },\n { value: 4, label: \"blue\" },\n { value: 5, label: \"grey\" }\n ];\n\n // const _defaultColumns = [\n // {\n // Header: t(\"DATE\"),\n // accessor: \"date\",\n // minWidth: 150,\n // Cell: ({ row }) => {\n // return (<>\n // {!stringIsNullOrEmpty(row.original.betData) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\" }}>\n //
    {row.original.date}
    \n //
    \n // :\n //
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n // );\n // },\n // },\n // {\n // Header: t(\"USERNAME\") + \" (\" + t(\"RISK_LEVEL_SHORT\") + \")\",\n // accessor: \"memberUsername\",\n // minWidth: 100,\n // Cell: ({ row }) => {\n // let betId = row.original.betId;\n // if (betId.includes(\"-\")) { betId = betId.substring(betId.indexOf(\"-\") + 1, betId.length); }\n // return (\n //
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\" }}>\n //
    {row.original.memberUsername}
    \n //
    {\"(\" + (row.original.riskLevel === -99 ? \"New\" : row.original.riskLevel) + \")\"}
    \n //
    \n // )\n // },\n // },\n // //{\n // // Header: t(\"PLAYER_ID\") + \" (\" + t(\"BET_ID\") + \")\",\n // // accessor: \"username\",\n // // minWidth: 100,\n // // Cell: ({ row }) => {\n // // let betId = row.original.betId;\n // // if (betId.includes(\"-\")) {\n // // if (row.original.productName === \"SABA Sports\") {\n // // betId = betId.substring(0, betId.indexOf(\"-\"));\n // // }\n // // else {\n // // betId = betId.substring(betId.indexOf(\"-\") + 1, betId.length);\n // // }\n // // }\n // // return (\n // //
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\" }}>\n // //
    {row.original.username}
    \n // //
    {\"(\" + betId + \")\"}
    \n // //
    \n // // );\n // // },\n // //},\n // {\n // Header: t(\"PRODUCT\"),\n // accessor: \"productName\",\n // minWidth: 110,\n // Cell: ({ row }) => {\n // return (\n //
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\", alignItems: \"center\" }}>\n //
    {row.original.productName}
    \n //
    \n // );\n // },\n // },\n // {\n // Header: t(\"BET\")/* + \" (\" + t(\"HANDICAP_SHORT\") + \")\"*/,\n // accessor: \"betOption\",\n // minWidth: 100,\n // Cell: ({ row }) => {\n // let team1 = \"\";\n // let team2 = \"\";\n // let playerBet = \"\";\n // let matchStarted = false;\n // let isParlayBet = false;\n // let isHTBet = false;\n // let isOverUnderHdpBet = false;\n // let isTotalGoalBet = false;\n // let betDataJSON = {};\n // if (!stringIsNullOrEmpty(row.original.betData)) {\n // betDataJSON = JSON.parse(row.original.betData);\n // if (betDataJSON.subBet.length > 0) {\n // isParlayBet = betDataJSON.subBet.length > 1;\n // playerBet = betDataJSON.subBet[0].betOption;\n // team1 = (betDataJSON.subBet[0].match).substring(0, (betDataJSON.subBet[0].match).indexOf(\" vs \"));\n // team2 = (betDataJSON.subBet[0].match).substring((betDataJSON.subBet[0].match).indexOf(\"vs \") + 3, (betDataJSON.subBet[0].match).length);\n // matchStarted = moment(betDataJSON.subBet[0].kickOffTime).add(12, 'hours') < serverCurrentTime;\n // isHTBet = betDataJSON.subBet[0].marketType.includes('First Half') || betDataJSON.subBet[0].marketType.includes('FirstHalf') || betDataJSON.subBet[0].marketType.includes('1H');\n // isOverUnderHdpBet = playerBet.includes(\"Over\") || playerBet.includes(\"Under\") || playerBet.includes(\"over\") || playerBet.includes(\"under\") || betDataJSON.subBet[0].marketType.includes(\"Hdp\") || betDataJSON.subBet[0].marketType.includes(\"Handicap\") || betDataJSON.subBet[0].marketType.includes(\"hdp\") || betDataJSON.subBet[0].marketType.includes(\"handicap\");\n // }\n // }\n // let displayPlayerBet = playerBet;\n // //regex checking\n // let tempRegexChk = /[0-9]+[-][0-9]+/;\n // if (playerBet.match(tempRegexChk)) {\n // isTotalGoalBet = betDataJSON.subBet.filter(x => x.marketType.includes(\"Total Goal\")).length > 0;\n // if (!isTotalGoalBet) {\n // displayPlayerBet = playerBet.substring(0, playerBet.indexOf(\"-\")) + \":\" + playerBet.substring(playerBet.indexOf(\"-\") + 1, playerBet.length);\n // }\n // }\n // //others\n // let tempPlayerBet = playerBet.trim();\n // if (!isOverUnderHdpBet) {\n // if (tempPlayerBet === \"away\") {\n // displayPlayerBet = \"2\";\n // }\n // else if (tempPlayerBet === \"home\") {\n // displayPlayerBet = \"1\";\n // }\n // else if (tempPlayerBet === \"even\" || tempPlayerBet === \"draw\") {\n // displayPlayerBet = \"X\";\n // }\n // else {\n // if (tempPlayerBet === \"o\") {\n // displayPlayerBet = \"AOS\";\n // }\n // else if (tempPlayerBet === \"da\" || tempPlayerBet === \"dd\" || tempPlayerBet === \"ha\" || tempPlayerBet === \"hd\" || tempPlayerBet === \"hh\") {\n // displayPlayerBet = tempPlayerBet.toUpperCase();\n // }\n // }\n // }\n // else if (playerBet === team1) {\n // displayPlayerBet = \"home\";\n // }\n // else if (playerBet === team2) {\n // displayPlayerBet = \"away\";\n // }\n // return (<>\n // {(!stringIsNullOrEmpty(row.original.betData) && JSON.parse(row.original.betData).subBet.length > 0) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\", textAlign: \"center\" }}>\n //
    \n // {isHTBet && {\"HT : \"}}{isParlayBet ? openParlayBetDetails(betDataJSON.subBet)}>{\"Parlay\"} : displayPlayerBet}{!isParlayBet && matchStarted && {\"@ \" + betDataJSON.subBet[0].liveScore}}\n //
    \n // {!isParlayBet && isOverUnderHdpBet &&
    {\"(\"}{numberWithCurrencyFormat(betDataJSON.subBet[0].hdp, 2, true)}{\")\"}
    }\n //
    \n // :\n //
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n // );\n // },\n // },\n // {\n // Header: t(\"ODDS\"),\n // accessor: \"odds\",\n // minWidth: 50,\n // Cell: ({ row }) => {\n // let betDataJSON = {};\n // if (!stringIsNullOrEmpty(row.original.betData)) {\n // betDataJSON = JSON.parse(row.original.betData);\n // }\n // if (stringIsNullOrEmpty(betDataJSON.oddsStyle))\n // {\n // betDataJSON.oddsStyle = \" \";\n // }\n // return (<>\n // {!stringIsNullOrEmpty(row.original.betData) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", justifyContent: \"flex-end\" }}>\n // {numberWithCurrencyFormat(betDataJSON.odds, 2, true)}{\" (\" + betDataJSON.oddsStyle.substring(0, 1) + \")\"}\n //
    \n // :\n //
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n // );\n // },\n // },\n // {\n // Header: t(\"STAKE\"),\n // accessor: \"stake\",\n // minWidth: 50,\n // Cell: ({ row }) => {\n // let betDataJSON = {};\n // if (!stringIsNullOrEmpty(row.original.betData)) {\n // betDataJSON = JSON.parse(row.original.betData);\n // }\n // return (<>\n // {!stringIsNullOrEmpty(row.original.betData) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", justifyContent: \"flex-end\" }}>\n // {numberWithCurrencyFormat(betDataJSON.stake, 2, true)}\n //
    \n // :\n //
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n // );\n // },\n // },\n // {\n // Header: t(\"EVENT\"),\n // accessor: \"event\",\n // minWidth: 300,\n // Cell: ({ row }) => {\n // let betDataJSON = {};\n // let team1 = \"\";\n // let team2 = \"\";\n // if (!stringIsNullOrEmpty(row.original.betData)) {\n // betDataJSON = JSON.parse(row.original.betData);\n // if (betDataJSON.subBet.length > 0) {\n // team1 = (betDataJSON.subBet[0].match).substring(0, (betDataJSON.subBet[0].match).indexOf(\" vs \"));\n // team2 = (betDataJSON.subBet[0].match).substring((betDataJSON.subBet[0].match).indexOf(\" vs \") + 3, (betDataJSON.subBet[0].match).length);\n // }\n // }\n // return (<>\n // {!stringIsNullOrEmpty(row.original.betData) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\", textAlign: \"center\" }}>\n // {!stringIsNullOrEmpty(team1) &&
    {team1}
    {\" vs \"}
    {team2}
    }\n //
    {betDataJSON.subBet[0].league}
    \n //
    \n // :\n //
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n // );\n // },\n // },\n // //{\n // // Header: t(\"DATE\") + \" (\" + t(\"IP\") + \")\",\n // // accessor: \"date\",\n // // minWidth: 150,\n // // Cell: ({ row }) => {\n // // let betDataJSON = {};\n // // if (!stringIsNullOrEmpty(row.original.betData)) {\n // // betDataJSON = JSON.parse(row.original.betData);\n // // }\n // // return (<>\n // // {!stringIsNullOrEmpty(row.original.betData) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\" }}>\n // //
    {row.original.date}
    \n // //
    {\"(\" + betDataJSON.ip + \")\"}
    \n // //
    \n // // :\n // //
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n // // );\n // // },\n // //},\n //];\n\n\n const _defaultColumns = [\n {\n Header: t(\"DATE\"),\n accessor: \"date\",\n minWidth: 150,\n Cell: ({ row }) => {\n return (<>\n {!stringIsNullOrEmpty(row.original.betData) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\" }}>\n
    {row.original.date}
    \n
    \n :\n
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n );\n },\n },\n {\n Header: t(\"USERNAME\") + \" (\" + t(\"RISK_LEVEL_SHORT\") + \")\",\n accessor: \"memberUsername\",\n minWidth: 100,\n Cell: ({ row }) => {\n let betId = row.original.betId;\n if (betId.includes(\"-\")) { betId = betId.substring(betId.indexOf(\"-\") + 1, betId.length); }\n return (\n
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\" }}>\n
    {row.original.memberUsername}
    \n
    {\"(\" + (row.original.riskLevel === -99 ? \"New\" : row.original.riskLevel) + \")\"}
    \n
    \n )\n },\n },\n //{\n // Header: t(\"PLAYER_ID\") + \" (\" + t(\"BET_ID\") + \")\",\n // accessor: \"username\",\n // minWidth: 100,\n // Cell: ({ row }) => {\n // let betId = row.original.betId;\n // if (betId.includes(\"-\")) {\n // if (row.original.productName === \"SABA Sports\") {\n // betId = betId.substring(0, betId.indexOf(\"-\"));\n // }\n // else {\n // betId = betId.substring(betId.indexOf(\"-\") + 1, betId.length);\n // }\n // }\n // return (\n //
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\" }}>\n //
    {row.original.username}
    \n //
    {\"(\" + betId + \")\"}
    \n //
    \n // );\n // },\n //},\n {\n Header: t(\"PRODUCT\"),\n accessor: \"productName\",\n minWidth: 110,\n Cell: ({ row }) => {\n return (\n
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\", alignItems: \"center\" }}>\n
    {row.original.productName}
    \n
    \n );\n },\n },\n {\n Header: t(\"BET\")/* + \" (\" + t(\"HANDICAP_SHORT\") + \")\"*/,\n accessor: \"betOption\",\n minWidth: 100,\n Cell: ({ row }) => {\n let team1 = \"\";\n let team2 = \"\";\n let playerBet = \"\";\n let matchStarted = false;\n let isParlayBet = false;\n let isHTBet = false;\n let isOverUnderHdpBet = false;\n let isTotalGoalBet = false;\n let betDataJSON = {};\n if (!stringIsNullOrEmpty(row.original.betData)) {\n\n const dataSegments = row.original.betData.split(\"|\").filter(segment => segment.length > 0);\n\n // Initialize an empty object to store the converted data\n const jsonData = {};\n\n // Loop through data segments and convert them into key-value pairs\n dataSegments.forEach(segment => {\n const [key, value] = segment.split(\":\");\n jsonData[key] = value;\n });\n\n // Convert the object to JSON format\n betDataJSON = JSON.stringify(jsonData, null, 2);\n\n if (betDataJSON.length > 0) {\n team1 = betDataJSON.home;\n team2 = betDataJSON.away;\n }\n }\n \n return (<>\n {(!stringIsNullOrEmpty(row.original.betData)) ?\n
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\", textAlign: \"center\" }}>\n {(betDataJSON==\"{}\") ? row.original.betData : betDataJSON}\n
    \n :\n
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n );\n },\n },\n {\n Header: t(\"ODDS\"),\n accessor: \"odds\",\n minWidth: 50,\n Cell: ({ row }) => {\n let betDataJSON = {};\n if (!stringIsNullOrEmpty(row.original.betData)) {\n const dataSegments = row.original.betData.split(\"|\").filter(segment => segment.length > 0);\n\n // Initialize an empty object to store the converted data\n const jsonData = {};\n\n // Loop through data segments and convert them into key-value pairs\n dataSegments.forEach(segment => {\n const [key, value] = segment.split(\":\");\n jsonData[key] = value;\n });\n\n // Convert the object to JSON format\n betDataJSON = jsonData;\n }\n return (<>\n {!stringIsNullOrEmpty(row.original.betData) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", justifyContent: \"flex-end\" }}>\n {betDataJSON.odds}\n
    \n :\n
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n );\n },\n },\n {\n Header: t(\"STAKE\"),\n accessor: \"stake\",\n minWidth: 50,\n Cell: ({ row }) => {\n\n return (<>\n {!stringIsNullOrEmpty(row.original.amount) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", justifyContent: \"flex-end\" }}>\n {numberWithCurrencyFormat(row.original.amount, 2, true)}\n
    \n :\n
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n );\n },\n },\n {\n Header: t(\"EVENT\"),\n accessor: \"event\",\n minWidth: 300,\n Cell: ({ row }) => {\n let betDataJSON = {};\n let team1 = \"\";\n let team2 = \"\";\n if (!stringIsNullOrEmpty(row.original.betData)) {\n\n const dataSegments = row.original.betData.split(\"|\").filter(segment => segment.length > 0);\n\n // Initialize an empty object to store the converted data\n const jsonData = {};\n\n // Loop through data segments and convert them into key-value pairs\n dataSegments.forEach(segment => {\n const [key, value] = segment.split(\":\");\n jsonData[key] = value;\n });\n\n // Convert the object to JSON format\n betDataJSON = jsonData;\n\n if (Object.keys(jsonData).length > 0) {\n console.log(betDataJSON.Home)\n team1 = betDataJSON.Home;\n team2 = betDataJSON.Away;\n }\n }\n return (<>\n {!stringIsNullOrEmpty(row.original.betData) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\", textAlign: \"center\" }}>\n {!stringIsNullOrEmpty(team1) &&
    {team1}
    {\" vs \"}
    {team2}
    }\n
    {!stringIsNullOrEmpty(betDataJSON.Leagua) ? betDataJSON.Leagua : !stringIsNullOrEmpty(betDataJSON.League) ? betDataJSON.League : row.original.betData }
    \n
    \n :\n
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n );\n },\n },\n //{\n // Header: t(\"DATE\") + \" (\" + t(\"IP\") + \")\",\n // accessor: \"date\",\n // minWidth: 150,\n // Cell: ({ row }) => {\n // let betDataJSON = {};\n // if (!stringIsNullOrEmpty(row.original.betData)) {\n // betDataJSON = JSON.parse(row.original.betData);\n // }\n // return (<>\n // {!stringIsNullOrEmpty(row.original.betData) ?
    x.value === row.original.riskLevel).label)} style={{ display: \"flex\", flexDirection: \"column\" }}>\n //
    {row.original.date}
    \n //
    {\"(\" + betDataJSON.ip + \")\"}
    \n //
    \n // :\n //
    x.value === row.original.riskLevel).label)}>{t(\"LOADING\")}
    }\n // );\n // },\n //},\n ];\n\n const getLatestData = async () => {\n setIsLoading(true);\n var apiUrl = ApiUrl._API_GET_SPORTS_LIVE_DATA + \"?amount=\" + filterAmt + \"&riskLevel=\" + currentRiskLevel;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Accept\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n }\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_DATA_KEY] != null) {\n let data = responseJson[ApiKey._API_DATA_KEY]['data'];\n setLiveData(data);\n setServerCurrentTime(moment(responseJson[ApiKey._API_DATA_KEY]['currentDateTime']));\n }\n else {\n setLiveData([]);\n }\n }\n });\n setIsLoading(false);\n }\n\n useEffect(() => {\n clearInterval(intervalId);\n getLatestData();\n if (!isPaused) {\n let tempIntervalId = setInterval(() => getLatestData(), 20000);\n setIntervalId(tempIntervalId);\n }\n }, [filterAmt, currentRiskLevel]);\n\n /// \n /// Author : -\n /// \n const toggleCategory = (categoryTitle) => {\n if (currentCategory !== categoryTitle) {\n setCurrentCategory(categoryTitle);\n }\n }\n\n const toggleRiskLevel = (riskLevel) => {\n if (currentRiskLevel !== riskLevel) {\n setCurrentRiskLevel(riskLevel);\n }\n }\n\n const togglePause = () => {\n let tempIsPaused = isPaused;\n if (tempIsPaused === false) { //clear loop before pausing\n clearInterval(intervalId);\n }\n else { //start back loop before resume\n getLatestData();\n let tempIntervalId = setInterval(() => getLatestData(), 20000);\n setIntervalId(tempIntervalId);\n }\n setIsPaused(!isPaused);\n }\n\n const openParlayBetDetails = (betDetailList) => {\n let betDetailToDisplay = \"\";\n betDetailList.map((detail, index) => {\n betDetailToDisplay += (index+1) + \". \" + JSON.stringify(detail) + \"\\n\\n\";\n });\n betDetailToDisplay = betDetailToDisplay.replaceAll(',', \",\\n\");\n var myWindow = window.open(\"\", \"_blank\", \"toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=400,height=400\");\n myWindow.document.write(\"
    \" + betDetailToDisplay + \"
    \");\n }\n\n return (\n <>\n
    \n
    \n
    \n
    \n {t(\"FILTER_BY\") + \" \" + t(\"RISK_LEVEL\") + \" : \"}\n {_risk_level_color.map((riskLevel, index) => {\n return (<>\n
    toggleRiskLevel(riskLevel.value)} className={\"live-data-risk-level \" + classnames({ active: currentRiskLevel === riskLevel.value })}>{riskLevel.value === -1 ? \"All\" : riskLevel.value === -99 ? \"New\" : riskLevel.value}
    \n {index !== (_risk_level_color.length - 1) &&
    }\n )\n })}\n
    \n
    \n
    \n \n
    \n {\n clearInterval(intervalId);\n setFilterAmt(e.target.valueAsNumber);\n }}\n />\n
    \n
    togglePause()} style={{ marginLeft: \"25px\" }}>\n \n
    \n
    \n
    \n
    \n
    \n
    {isLoading && {t(\"LOADING_NEW_DATA\")}}
    \n \n
    \n
    \n
    Legend :
    \n
    \n {_risk_level_color.filter(x => x.label !== \"normal\").map((riskLevel, index) => {\n return (\n
    \n
    \n
    {\"- \" + (riskLevel.value === -99 ? t(\"NEW_MEMBER\") : t(\"RISK_LEVEL\") + \" (\" + riskLevel.value + \") \")}
    \n
    \n )\n })}\n
    \n
    \n
    \n \n )\n}\n\nexport default SportsLiveMonitor;","import React from 'react';\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useTranslation } from \"react-i18next\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { useEffect } from 'react';\nimport ApiEngine from '../../util/ApiEngine';\nimport { useState } from 'react';\nimport { numberWithCurrencyFormat, stringIsNullOrEmpty } from '../../util/Util';\nimport moment from 'moment';\nimport Select from \"react-select\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\n\nconst SportsTeamBetReport = () => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [betData, setBetData] = useState([]);\n const [leagueList, setLeagueList] = useState([]);\n const [selectedLeague, setSelectedLeague] = useState(\"\");\n const [doneInit, setDoneInit] = useState(false);\n const [selectedDate, setSelectedDate] = useState(moment().format('YYYY-MM-DD'));\n const [countdownPeriod, setCountdownPeriod] = useState(0);\n const [intervalId, setIntervalId] = useState();\n\n const _GET_DATA_INTERVAL_IN_MS = 90000;\n const _SECONDS_IN_MS = 1000;\n\n /// \n /// Author : -\n /// \n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n const _tableColumns = [\n {\n id: \"league\",\n Header: t(\"LEAGUE\"),\n accessor: \"league\",\n Cell: ({ row }) => {\n return ({row.original.league})\n }\n },\n {\n id: \"match\",\n Header: t(\"MATCH\"),\n accessor: \"match\",\n Cell: ({ row }) => {\n return ({row.original.match})\n }\n },\n {\n id: \"matchDate\",\n Header: t(\"MATCH_DATE\"),\n accessor: \"matchDate\",\n Cell: ({ row }) => {\n return ({moment(row.original.matchDate).format('YYYY-MM-DD HH:mm:ss')})\n }\n },\n {\n id: \"matchTotalBet\",\n Header: t(\"MATCH_TOTAL_BET\") + \" (RM)\",\n accessor: \"matchTotalBet\",\n Cell: ({ row }) => {\n return ({numberWithCurrencyFormat(row.original.matchTotalBet, 2, true)})\n }\n },\n {\n id: \"matchHTHdpTotal\",\n Header: t(\"MATCH_HT_HDP_TOTAL\") + \" (RM)\",\n accessor: \"matchHTHdpTotal\",\n Cell: ({ row }) => {\n return ({numberWithCurrencyFormat(row.original.matchHTHdpTotal, 2, true)})\n }\n },\n {\n id: \"matchFTHdpTotal\",\n Header: t(\"MATCH_FT_HDP_TOTAL\") + \" (RM)\",\n accessor: \"matchFTHdpTotal\",\n Cell: ({ row }) => {\n return ({numberWithCurrencyFormat(row.original.matchFTHdpTotal, 2, true)})\n }\n },\n {\n id: \"matchHTOUTotal\",\n Header: t(\"MATCH_HT_OU_TOTAL\") + \" (RM)\",\n accessor: \"matchHTOUTotal\",\n Cell: ({ row }) => {\n return ({numberWithCurrencyFormat(row.original.matchHTOUTotal, 2, true)})\n }\n },\n {\n id: \"matchFTOUTotal\",\n Header: t(\"MATCH_FT_OU_TOTAL\") + \" (RM)\",\n accessor: \"matchFTOUTotal\",\n Cell: ({ row }) => {\n return ({numberWithCurrencyFormat(row.original.matchFTOUTotal, 2, true)})\n }\n },\n {\n id: \"team1\",\n Header: t(\"TEAM_1\"),\n accessor: \"team1\",\n Cell: ({ row }) => {\n return ({row.original.team1})\n }\n },\n {\n id: \"team1TotalBet\",\n Header: t(\"TEAM_1_TOTAL_BET\"),\n accessor: \"team1TotalBet\",\n Cell: ({ row }) => {\n return ({numberWithCurrencyFormat(row.original.team1TotalBet)})\n }\n },\n {\n id: \"team1BetCount\",\n Header: t(\"TEAM_1_BET_COUNT\"),\n accessor: \"team1BetCount\",\n Cell: ({ row }) => {\n return ({row.original.team1BetCount})\n }\n },\n {\n id: \"team2\",\n Header: t(\"TEAM_2\"),\n accessor: \"team2\",\n Cell: ({ row }) => {\n return ({row.original.team2})\n }\n },\n {\n id: \"team2TotalBet\",\n Header: t(\"TEAM_2_TOTAL_BET\"),\n accessor: \"team2TotalBet\",\n Cell: ({ row }) => {\n return ({numberWithCurrencyFormat(row.original.team2TotalBet)})\n }\n },\n {\n id: \"team2BetCount\",\n Header: t(\"TEAM_2_BET_COUNT\"),\n accessor: \"team2BetCount\",\n Cell: ({ row }) => {\n return ({row.original.team2BetCount})\n }\n }\n ];\n\n useEffect(() => {\n init(true);\n }, []);\n\n /// \n /// Author:\n /// \n useEffect(() => {\n if (countdownPeriod > 0) {\n setTimeout(() => {\n let tempPeriod = countdownPeriod - 1;\n setCountdownPeriod(tempPeriod);\n }, _SECONDS_IN_MS);\n }\n else if (doneInit) {\n init(false);\n }\n }, [countdownPeriod]);\n\n const init = async (isInit) => {\n setDoneInit(false);\n let apiUrl = ApiUrl._API_GET_SPORTS_BET_REPORT + \"?league=\" + selectedLeague + \"&date=\" + selectedDate;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Accept\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n }\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n if (data != null) {\n setBetData(data[\"data\"]);\n if (isInit) {\n let tempLeagueList = [];\n tempLeagueList.push({ label: \"All\", value: \"\" });\n data[\"leagueList\"].map((leagueName, index) => {\n tempLeagueList.push({ label: leagueName, value: leagueName });\n });\n setLeagueList(tempLeagueList);\n }\n }\n setDoneInit(true);\n setCountdownPeriod(_GET_DATA_INTERVAL_IN_MS / _SECONDS_IN_MS);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setSelectedDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"SPORTS_TEAM_BET_REPORT\")}

    \n \n \n
    \n
    \n
    \n \n name.value == selectedLeague\n )}\n options={leagueList}\n onChange={(e) => {\n setSelectedLeague(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n \n \n \n \n
    \n
    \n
    \n {\n init(false);\n }}\n >\n {t(\"SEARCH\")}\n \n
    \n {!doneInit &&
    {countdownPeriod > 0 && <>{countdownPeriod} {t(\"SECOND\")}
    }{t(\"LOADING_NEW_DATA\")}
    {t(\"MAY_TAKE_AWHILE_DUE_TO_MANY_TICKETS\")}
    }\n
    \n {<>{betData.length > 0 ?
    \n
    {doneInit && t(\"AMOUNT_FROM_PENDING_BETS_ONLY\")}
    \n
    \n {\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {betData.map((row, index) => {\n let isStartWithStar = row.league.startsWith(\"*\");\n let isLiveBets = row.league.endsWith(\"(Live Bets)\") ? \" \" : \"\";\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n )\n })}\n \n
    {t(\"LEAGUE\")}{t(\"MATCH\")}
    {t(\"MATCH_NAME\")}{t(\"MATCH_DATE\")}{t(\"TOTAL_BET\") + \" (RM)\"}{t(\"FT\")}{t(\"HT\")}{t(\"HOME\")}{t(\"AWAY\")}{<>{t(\"OU_TOTAL\")}
    {\"(\" + t(\"FT\") + \" + \" + t(\"HT\") + \")\"}}
    {t(\"HDP_TOTAL\") + \" (RM)\"}{t(\"OU_TOTAL\") + \" (RM)\"}{t(\"HDP_TOTAL\") + \" (RM)\"}{t(\"OU_TOTAL\") + \" (RM)\"}{t(\"TOTAL_BET\") + \" (RM)\"}{t(\"BET_COUNT\")}{t(\"TOTAL_BET\") + \" (RM)\"}{t(\"BET_COUNT\")}
    {row.league}{row.team1}{\" (\" + t(\"HOME\") + \")\"} vs {row.team2}{\" (\" + t(\"AWAY\") + \")\"}{row.matchDate}{numberWithCurrencyFormat(row.matchTotalBet, 2, true)}{numberWithCurrencyFormat(row.matchFTHdpTotal, 2, true)}{numberWithCurrencyFormat(row.matchFTOUTotal, 2, true)}{numberWithCurrencyFormat(row.matchHTHdpTotal, 2, true)}{numberWithCurrencyFormat(row.matchHTOUTotal, 2, true)}{numberWithCurrencyFormat(row.team1TotalBet, 2, true)}{row.team1BetCount}{numberWithCurrencyFormat(row.team2TotalBet, 2, true)}{row.team2BetCount}{numberWithCurrencyFormat(parseFloat(row.matchFTOUTotal) + parseFloat(row.matchHTOUTotal), 2, true)}
    }\n {/**/}\n
    \n
    :\n \n \n {t(\"NO_DATA_FOUND\")}\n \n }}\n
    \n
    \n
    \n )\n}\n\nexport default SportsTeamBetReport;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n navigateTo,\n stringIsNullOrEmpty,\n numberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport {\n ApiKey,\n ApiUrl,\n AccessRight,\n WebUrl,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\n\n/// \n/// Author : -\n/// \nconst ManageMemberProductUsername = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n\n const _dispatch = useDispatch();\n const [memberData, setMemberData] = useState([]);\n\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\n const [keyword, setKeyword] = useState(\"\");\n const [selectedUsername, setSelectedUsername] = useState(\"\");\n const [locationStateObj, setLocationStateObj] = useState();\n const [memberId, setMemberId] = useState(\"\");\n const [nodePathMembers, setNodePathMembers] = useState([]);\n const [labelUsername, setLabelUsername] = useState(\"All [ productUsername - memberUsername (product) ]\");\n const [memberListUrl, setMemberListUrl] = useState(\n `${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`\n );\n const [tableData, setTableData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n minWidth: 100,\n //Cell: ({ row }) => {\n // return (\n // 0\n // ? nodePathMembers[nodePathMembers.length - 1].id !=\n // row.original.id\n // : true,\n // })}\n // onClick={() => setSelectedUsername(row.original.id)}\n // >\n // {row.original.username}\n // \n // );\n //},\n },\n {\n Header: \"MEMBER_PRODUCT_USERNAME\",\n accessor: \"memberProductUsername\",\n minWidth: 100,\n },\n {\n Header: \"FULLNAME\",\n accessor: \"userFullName\",\n minWidth: 100,\n },\n {\n Header: \"EMAIL\",\n accessor: \"email\",\n minWidth: 100,\n },\n {\n Header: \"WALLET\",\n accessor: \"primaryCredit\",\n Cell: ({ row }) => {\n return (\n <>\n {numberWithCurrencyFormat(\n parseFloat(row.original.primaryCredit),\n 3\n )}\n \n );\n },\n minWidth: 100,\n },\n {\n Header: \"PHONE\",\n accessor: \"phoneNumber\",\n minWidth: 100,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return (\n \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n \n );\n },\n minWidth: 100,\n },\n //{\n // id: \"action\",\n // Header: \"\",\n // Cell: ({ row }) =>\n // checkIfPermissionExist(\n // AccessRight._MEMBER_CONTROL_PERMISSION,\n // true\n // ) && (\n //
    \n // \n // \n // \n // \n // \n // { navigateTo(_history, WebUrl._URL_VIEW_ACCOUNT, row.original); }}>{t(\"EDIT\")}\n // { navigateTo(_history, WebUrl._URL_VIEW_PRODUCT_ACCOUNT, row.original); }}>{t(\"VIEW_PRODUCT_ACCOUNT\")}\n // syncProductData(row.original)}>\n // {t(\"SYNC_PRODUCT\")}\n // \n // {\n // navigateTo(\n // _history,\n // WebUrl._URL_MEMBER_PRORUCT_MAINTENANCE,\n // row.original\n // );\n // }}\n // >\n // {t(\"VIEW_PRODUCT\")}\n // \n // \n // \n //
    \n // ),\n // disableSortBy: true,\n // disableFilters: true,\n // width: 100,\n // style: { overflow: \"visible\" },\n //},\n ];\n\n /// \n /// Author : Wong\n /// \n //useEffect(() => {\n // let nodePath = [];\n // let memId = \"\";\n // if (tableData.memberNodePath) {\n // if (tableData.memberNodePath.length > 0) {\n // nodePath = tableData.memberNodePath;\n // memId = nodePath[nodePath.length - 1].id;\n // }\n // }\n\n // setNodePathMembers(nodePath);\n // setMemberId(memId);\n // setLocationStateObj({\n // parentMemberId: memId,\n // });\n //}, [tableData]);\n\n /// \n /// Author : -\n /// \n //useEffect(() => {\n // sessionStorage.setItem(_SELECTED_MEMBER_KEY, selectedUsername);\n // getDownlineByReferrer(selectedUsername);\n //}, [selectedUsername]);\n\n /// \n /// Author : -\n /// \n //async function getDownlineByReferrer(memberId = \"\") {\n // setMemberListUrl(\n // `${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`\n // );\n //}\n\n /// \n /// Author : -\n /// \n //async function syncProductData(data) {\n // var responseJson = await ApiEngine.post(\n // `${ApiUrl._API_SYNC_MEMBER_TO_OWNER_PRODUCT_DATA}?id=${data[\"id\"]}`\n // );\n // _dispatch(\n // showMessage(\n // responseJson[ApiKey._API_SUCCESS_KEY],\n // t(responseJson[ApiKey._API_MESSAGE_KEY])\n // )\n // );\n //}\n\n /// \n /// Author : Wong\n /// \n async function formergetMPUsernameList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_MEMBER_PRODUCT_USERNAME_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let mpUsernameList = [];\n data.map((m) => {\n m.usernameList.map((u, index) => {\n mpUsernameList.push({ productName: m.masterProductNameList[index], username: m.username, mpUsername: u, id: m.id });\n })\n });\n let formattedData = mpUsernameList.map((player) => {\n return { label: player.mpUsername + ' - ' + player.username + \" (\" + player.productName + \")\", value: player.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n /// \n /// Author : Wong\n /// \n async function getMPUsernameList() {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_MEMBER_PRODUCT_USERNAME_LIST}?keyword=${keyword}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTableData(data);\n }\n }\n\n return (\n
    \n

    \n {t(\"MANAGE_MEMBER_PRODUCT_USERNAME\")}\n

    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n setKeyword(e.target.value);\n }}\n />\n \n
    \n
    {t(\"KEY_MP_USERNAME_TO_CONTINUE\")}
    \n {/* {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabelUsername(e.label);\n setSelectedUsername(e.value);\n }}\n />*/}\n
    \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n );\n};\n\nexport default ManageMemberProductUsername;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n navigateTo,\n stringIsNullOrEmpty,\n numberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport {\n ApiKey,\n ApiUrl,\n AccessRight,\n WebUrl,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\n\n/// \n/// Author : -\n/// \nconst ManageMemberFullname = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n\n const _dispatch = useDispatch();\n const [memberData, setMemberData] = useState([]);\n\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\n const [keyword, setKeyword] = useState(\"\");\n const [selectedFullname, setSelectedFullname] = useState(\"\");\n const [locationStateObj, setLocationStateObj] = useState();\n const [memberId, setMemberId] = useState(\"\");\n const [nodePathMembers, setNodePathMembers] = useState([]);\n const [label, setLabel] = useState(\"All [ Fullname - memberUsername ]\");\n const [memberListUrl, setMemberListUrl] = useState(\n `${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`\n );\n const [tableData, setTableData] = useState([]);\n const [fetchDataUrl, setFetchDataUrl] = useState(ApiUrl._API_GET_MEMBER_FULLNAME_LIST);\n\n let _tableColumns = [\n {\n Header: \"MEMBER_FULLNAME\",\n accessor: \"userFullName\",\n minWidth: 100,\n },\n {\n Header: \"MEMBER_USERNAME\",\n accessor: \"username\",\n minWidth: 100,\n },\n {\n Header: \"UPLINE_USERNAME\",\n accessor: \"uplineUsername\",\n minWidth: 100,\n },\n {\n Header: \"UPLINE_FULLNAME\",\n accessor: \"uplineFullname\",\n minWidth: 100,\n },\n {\n Header: \"MEMBER_STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return (\n \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n \n );\n },\n minWidth: 100,\n },\n //{\n // id: \"action\",\n // Header: \"\",\n // Cell: ({ row }) =>\n // checkIfPermissionExist(\n // AccessRight._MEMBER_CONTROL_PERMISSION,\n // true\n // ) && (\n //
    \n // \n // \n // \n // \n // \n // { navigateTo(_history, WebUrl._URL_VIEW_ACCOUNT, row.original); }}>{t(\"EDIT\")}\n // { navigateTo(_history, WebUrl._URL_VIEW_PRODUCT_ACCOUNT, row.original); }}>{t(\"VIEW_PRODUCT_ACCOUNT\")}\n // syncProductData(row.original)}>\n // {t(\"SYNC_PRODUCT\")}\n // \n // {\n // navigateTo(\n // _history,\n // WebUrl._URL_MEMBER_PRORUCT_MAINTENANCE,\n // row.original\n // );\n // }}\n // >\n // {t(\"VIEW_PRODUCT\")}\n // \n // \n // \n //
    \n // ),\n // disableSortBy: true,\n // disableFilters: true,\n // width: 100,\n // style: { overflow: \"visible\" },\n //},\n ];\n\n /// \n /// Author : Wong\n /// \n //useEffect(() => {\n // let nodePath = [];\n // let memId = \"\";\n // if (tableData.memberNodePath) {\n // if (tableData.memberNodePath.length > 0) {\n // nodePath = tableData.memberNodePath;\n // memId = nodePath[nodePath.length - 1].id;\n // }\n // }\n\n // setNodePathMembers(nodePath);\n // setMemberId(memId);\n // setLocationStateObj({\n // parentMemberId: memId,\n // });\n //}, [tableData]);\n\n /// \n /// Author : -\n /// \n //useEffect(() => {\n // sessionStorage.setItem(_SELECTED_MEMBER_KEY, selectedFullname);\n // getDownlineByReferrer(selectedFullname);\n //}, [selectedFullname]);\n\n /// \n /// Author : -\n /// \n //async function getDownlineByReferrer(memberId = \"\") {\n // setMemberListUrl(\n // `${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`\n // );\n //}\n\n /// \n /// Author : -\n /// \n //async function syncProductData(data) {\n // var responseJson = await ApiEngine.post(\n // `${ApiUrl._API_SYNC_MEMBER_TO_OWNER_PRODUCT_DATA}?id=${data[\"id\"]}`\n // );\n // _dispatch(\n // showMessage(\n // responseJson[ApiKey._API_SUCCESS_KEY],\n // t(responseJson[ApiKey._API_MESSAGE_KEY])\n // )\n // );\n //}\n\n /// \n /// Author : Wong\n /// \n async function formergetUserFullnameList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((player) => {\n return { label: player.userFullName + \" - \" + player.username, value: player.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n //getUserFullnameList();\n }, []);\n\n async function getUserFullnameList() {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_MEMBER_FULLNAME_LIST}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTableData(data);\n }\n }\n\n return (\n
    \n

    \n {t(\"MANAGE_MEMBER_FULL_NAME\")}\n

    \n \n
    \n
    \n {/*
    \n
    \n
    \n {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabel(e.label);\n setSelectedFullname(e.value);\n }}\n />\n
    \n
    \n
    */}\n \n \n \n
    \n
    \n
    \n
    \n );\n};\n\nexport default ManageMemberFullname;\n","import React, { useState, useEffect } from \"react\";\nimport 'react-datepicker/dist/react-datepicker.css';\nimport { useTranslation } from \"react-i18next\";\nimport { ApiKey, ApiUrl, AccessRight, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport { useForm } from \"react-hook-form\";\nimport { stringIsNullOrEmpty, isObjectEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { func } from \"prop-types\";\n\n/// \n/// Author : -\n/// \nconst WalletBalance = props => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [walletDetails, setWalletDetails] = useState(false);\n const _dispatch = useDispatch();\n const [loadingWalletFlag, setLoadingWalletFlag] = useState(true);\n const [wallets, setWallets] = useState([]);\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [memberProductId, setMemberProductId] = useState(0);\n\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n\n\n getWalletBalance()\n\n }, [walletDetails]);\n\n\n async function getWalletBalance() {\n ApiEngine.get(ApiUrl._API_GET_NON_SEAMLESS_PRODUCT_BALANCE + \"?memberId=\" + props.id).then((responseJson) => {\n if (!responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(\"hi\" + responseJson[ApiKey._API_SUCCESS_KEY])\n } else {\n setWallets(responseJson[ApiKey._API_DATA_KEY]);\n setLoadingWalletFlag(false);\n }\n })\n }\n\n async function handleSubmit(mpid) {\n setMemberProductId(mpid);\n setShowConfirmation(true);\n }\n\n /// \n /// Author : -\n /// \n async function resetRollover() {\n var responseJson = await ApiEngine.get(ApiUrl._API_RESET_WALLET_ROLLOVER_RECORD + \"?mpid=\" + memberProductId);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getWalletBalance()\n } else {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getWalletBalance()\n }\n }\n\n\n\n\n return (\n
    \n {showConfirmation && (\n {\n resetRollover();\n setShowConfirmation(false);\n }}\n onCancel={() => {\n setShowConfirmation(false);\n setMemberProductId(0);\n }}\n >\n {t(\"UNABLE_TO_REVERT\")}\n \n )}\n \n \n \n \n \n \n \n {wallets.filter(x => x.productName != \"Account Balance\").map((wallet, index) => {\n return (\n \n \n \n \n \n )\n }\n )\n }\n\n
    \n Wallet Info
    {t(\"CATEGORY\")}{t(\"BALANCE\")}{t(\"ROLLOVER_PROGRESS\")}
    {wallet.productName}{parseFloat(wallet.balance).toFixed(2)}{parseFloat((wallet.rolloverTarget - wallet.rolloverBalance)).toFixed(2)} / {parseFloat(wallet.rolloverTarget).toFixed(2)}\n
    \n { parseFloat(wallet.rolloverBalance).toFixed(2) > 0 ? handleSubmit(wallet.mpid) : setShowConfirmation(false) }}\n >{parseFloat(wallet.rolloverBalance).toFixed(2) > 0 ? t(\"ACTIVE\") : t(\"\")}\n
    \n
    \n )\n}\n\nexport default WalletBalance;\n","import React, { useState, useEffect, useContext } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { ApiKey, ApiUrl, WebUrl, TransactionType, TransactionStatus, LanguageKey, AccessRight } from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\"\nimport { setBusy, setIdle, showMessage } from '../../redux/AppAction';\n\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\n\nconst RollOverStatement = props => {\n let _history = useHistory();\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [transactionData, setTransactionData] = useState([]);\n const _dispatch = useDispatch();\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [activeFlag, setaAtiveFlag] = useState(\"\");\n let role1IsAllowed = checkIfPermissionExist(\n AccessRight._RESET_ROLLOVER_PERMISSION,\n true\n );\n\n async function resetRollover(status) {\n if (status == \"Active\") {\n var responseJson = await ApiEngine.get(ApiUrl._API_RESET_ROLLOVER_RECORD + \"?memberId=\" + props.id);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getBonusData();\n }\n else\n {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getBonusData();\n }\n }\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n getBonusData();\n }, [])\n\n /// \n /// Author : -\n /// \n async function getBonusData() {\n var responseJson = await ApiEngine.get(ApiUrl._API_GET_ROLLOVER_RECORD + \"?memberId=\" + props.id);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setTransactionData(responseJson[ApiKey._API_DATA_KEY]);\n }\n }\n\n \n\n \n\n return (\n <>\n {showConfirmation && (\n {\n resetRollover(\"Active\");\n setShowConfirmation(false);\n }}\n onCancel={() => {\n setShowConfirmation(false);\n }}\n >\n {t(\"UNABLE_TO_REVERT\")}\n \n )}\n
    \n {\n transactionData.map((item) => {\n var statusHtml = \"\";\n statusHtml = item[\"isLatestRecord\"] == 1 ?\n { item[\"status\"] !== \"Cleared\" && role1IsAllowed ? setShowConfirmation(true) && setaAtiveFlag(item[\"status\"]) : setaAtiveFlag(item[\"status\"]) }}\n >{item[\"status\"]} :\n {item[\"status\"]};\n\n return (\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {item[\"date\"]}{statusHtml}
    {t(\"AMOUNT\")}{item[\"amount\"]}
    {t(\"ROLLOVER_PROGRESS\")}{item[\"isLatestRecord\"] == 1 ? item[\"rolloverProgress\"] : item[\"rolloverTarget\"]} / {item[\"rolloverTarget\"]}
    \n
    \n );\n })\n }\n
    \n \n );\n};\n\nexport default RollOverStatement;","import React, { useState, useEffect, useRef, useCallback } from 'react';\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { Panel, PanelBody } from './../../components/panel/panel.jsx';\nimport { useHistory } from \"react-router-dom\";\nimport { UncontrolledButtonDropdown, DropdownToggle, DropdownMenu, DropdownItem } from 'reactstrap';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport NavigationButton from '../../components/constantComponent/button/NavigationButton';\nimport { navigateTo, stringIsNullOrEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { ApiKey, ApiUrl, AccessRight, WebUrl, LanguageKey, DEFAULT_PAGE_SIZE } from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { setBusy, setIdle, showMessage } from '../../redux/AppAction';\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from 'react-i18next';\nimport ApiEngine from '../../util/ApiEngine';\nimport { AsyncPaginate } from 'react-select-async-paginate';\nimport { useForm, Controller } from \"react-hook-form\";\nimport classNames from 'classnames';\n\n/// \n/// Author : -\n/// \nconst ManageMember = props => {\n\n const { register, handleSubmit, errors, setValue, watch, trigger, formState, control } = useForm();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n\n var _username = useSelector(state => state['authState']['userData']['username']);\n\n const _dispatch = useDispatch();\n const [memberData, setMemberData] = useState([]);\n\n const _SELECTED_MEMBER_KEY = 'selectedMemberKey';\n\n const [selectedMember, setSelectedMember] = useState('');\n const [locationStateObj, setLocationStateObj] = useState();\n const [memberId, setMemberId] = useState('');\n const [nodePathMembers, setNodePathMembers] = useState([]);\n const [memberListUrl, setMemberListUrl] = useState(`${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`);\n const [tableData, setTableData] = useState([]);\n\n\n const OPTIONS = [\n { value: 'all', label: 'All' },\n { value: 'vip', label: 'VIP' },\n { value: 'bonus_hunter', label: 'Bonus Hunter' },\n { value: 'duplicated_fullname', label: 'Duplicated FullName' },\n { value: 'second_user_id', label: 'Second User ID' },\n { value: 'no_welcome_bonus', label: 'NO Welcome Bonus Allowed' },\n { value: 'no_free_credit', label: 'No Free Credit' },\n { value: 'duplicated_ip', label: 'Duplicated IP' },\n { value: 'attention_betting', label: 'ATTENTION betting on SBO / IBC' },\n { value: 'claimed_50', label: 'Already Claim 50%' },\n ];\n\n const FILTER_OPTION = [\n { value: 'username', label: 'Username' },\n { value: 'fullname', label: 'FullName' },\n { value: 'phone', label: 'Phone' },\n { value: 'email', label: 'Email' },\n { value: 'agent', label: 'Agent' },\n { value: 'affiliate', label: 'Affiliate' },\n { value: 'channel', label: 'Channel' },\n { value: 'source', label: 'Source' },\n { value: 'campaign', label: 'Campaign' },\n { value: 'bankaccount', label: 'BankAccount' },\n ];\n\n let _tableColumns = [\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n minWidth: 100,\n Cell: ({ row }) => {\n return {row.original.username};\n }\n },\n {\n Header: \"SHAREHOLDER\",\n accessor: \"isShareHolder\",\n Cell: ({ row }) => {\n return {row.original.isShareHolder ? Yes : No}\n },\n disableFilters: true,\n width: 80,\n minWidth: 10,\n maxWidth: 80\n },\n {\n Header: \"SHARE %\",\n accessor: \"sharePercent\",\n Cell: ({ row }) => {\n return <>{(row.original.isShareHolder ?
    \n {row.original.sharePercent}\n
    \n :\n \"\"\n )}\n },\n disableFilters: true,\n width: 80,\n minWidth: 10,\n maxWidth: 80\n },\n {\n Header: \"PRIVATE POOL?\",\n accessor: \"poolId\",\n Cell: ({ row }) => {\n return <>{(row.original.poolId > 0 ? Yes : No)}\n },\n disableFilters: true,\n width: 80,\n minWidth: 10,\n maxWidth: 80\n },\n {\n Header: \"SHAREHOLDER DATE\",\n accessor: \"shareHolderDate\",\n Cell: ({ row }) => {\n return <>{((row.original.isShareHolder && row.original.shareHolderDate != null) ?
    \n {row.original.shareHolderDate}
    \n :\n \"\"\n )}\n },\n disableFilters: true,\n minWidth: 100\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n checkIfPermissionExist(AccessRight._MEMBER_CONTROL_PERMISSION, true) &&
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_VIEW_ACCOUNT,\n row.original\n );\n }}\n >\n \n {t(\"EDIT_SH_DETAIL\")}\n \n \n {\n (row.original.isShareHolder &&\n {\n navigateTo(\n _history,\n WebUrl._URL_COMPANY_PRODUCT_ACCOUNT_INFO,\n row.original\n );\n }}\n >\n {t(\"VIEW DOWNLINE SH\")}\n \n )}\n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" }\n }\n ]\n\n /// \n /// Author : Wong\n /// \n useEffect(() => {\n let nodePath = [];\n let memId = '';\n if (tableData.memberNodePath) {\n if (tableData.memberNodePath.length > 0) {\n nodePath = tableData.memberNodePath;\n memId = nodePath[nodePath.length - 1].id;\n }\n }\n\n setNodePathMembers(nodePath);\n setMemberId(memId);\n setLocationStateObj({\n parentMemberId: memId\n });\n }, [tableData]);\n\n\n /*/// \n /// Author : -\n /// \n function updateMemberSH(data) {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_UPDATE_USER_SH +\n \"?userId=\" +\n loginUserId +\n \"&memberId=\" +\n data[\"Id\"] +\n \"&enable=\" +\n !data[\"isShareHolder\"],\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n getDownlineByReferrer(selectedMember);\n }\n _dispatch(setIdle());\n });\n\n }*/\n /// \n /// Author : -\n /// \n useEffect(() => {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, selectedMember);\n getDownlineByReferrer(selectedMember);\n }, [selectedMember]);\n\n /// \n /// Author : -\n /// \n async function getDownlineByReferrer(memberId = '') {\n setMemberListUrl(`${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`);\n }\n\n /// \n /// Author : -\n /// \n async function syncProductData(data) {\n var responseJson = await ApiEngine.post(`${ApiUrl._API_SYNC_MEMBER_TO_OWNER_PRODUCT_DATA}?id=${data[\"id\"]}`);\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(`${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY]['data'];\n let formattedData = data.map((m) => { return { label: m.username, value: m.id } });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1\n }\n };\n }\n }\n\n return (\n
    \n

    {t(\"SHAREHOLDERS_LIST\")}

    \n \n
    \n
    \n \n setTableData(data)} filterable columns={_tableColumns} />\n \n
    \n
    \n
    \n
    \n )\n}\n\nexport default ManageMember;","import React, { useState, useEffect, useMemo } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { createFormBody } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useTranslation } from \"react-i18next\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \nconst AccountShareHolder = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors, setValue, watch } = useForm({ mode: \"onBlur\" });\n const [isShareHolder, setIsShareHolder] = useState(false);\n const [shareHolderDate, setShareHolderDate] = useState(null);\n const [minPercent, setMinPercent] = useState(0);\n const [maxPercent, setMaxPercent] = useState(0);\n const [sharePercent, setSharePercent] = useState(0);\n const [commission, setCommission] = useState();\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [username, setUsername] = useState('');\n const [memberId, setMemberId] = useState('');\n\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n\n /// \n /// Author : -\n /// \n function init() {\n if (_location.state) {\n console.log(_location.state);\n setMemberId(_location.state.id);\n setUsername(_location.state.username);\n\n console.log(_location.state.id);\n console.log('vs');\n console.log(_location.state.referralMemberId);\n\n if (_location.state.id == _location.state.referralMemberId) {\n setMinPercent(10)\n setMaxPercent(80);\n }\n else {\n setMinPercent(10);\n setMaxPercent(80);\n }\n\n setSharePercent(_location.state.sharePercent);\n setIsShareHolder(_location.state.isShareHolder);\n setShareHolderDate(_location.state.shareHolderDate);\n\n if (_location.state.shareHolderDate == null) {\n setSharePercent(80);\n }\n }\n else {\n _history.push(\"/shareholder/ShareholdersList\")\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n memberId: memberId,\n isShareHolder: data.isShareHolder,\n sharePercent: data.sharepercent,\n };\n\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_UPDATE_SHAREHOLDER_DETAIL,\n formBody\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSharePercent(watch(\"sharepercent\"));\n _history.push(\"/shareholder/ShareholdersList\");\n }\n };\n\n /// \n /// Author : -\n /// \n function preSubmit() {\n if (sharePercent != watch(\"sharepercent\")) {\n setShowConfirmation(true);\n } else {\n handleSubmit(submitForm)();\n }\n }\n\n return (\n
    \n {showConfirmation && (\n {\n setShowConfirmation(false);\n handleSubmit(submitForm)();\n }}\n onCancel={() => {\n setShowConfirmation(false);\n }}\n >\n )}\n

    \n {t(\"SHAREHOLDER_VIEW_ACCOUNT\")}\n \n

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

    {t(\"MEMBER_DETAIL\")}

    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n\n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n setIsShareHolder(e.target.checked)}\n value={isShareHolder}\n checked={isShareHolder}\n ref={register}\n />\n \n
    \n
    \n
    \n\n
    \n
    \n \n\n
    \n setSharePercent(e.target.value)}\n readOnly={!isShareHolder}\n />\n {errors.sharepercent && errors.sharepercent.type == \"max\" && (\n
    \n {t(errors.sharepercent.message, {\n value: maxPercent,\n })}\n
    \n )}\n {errors.sharepercent && errors.sharepercent.type == \"min\" && (\n
    \n {t(errors.sharepercent.message, {\n value: minPercent,\n })}\n
    \n )}\n
    \n
    \n\n {shareHolderDate != null &&
    \n
    \n
    \n
    \n

    {t(\"SH_DETAILS\")}

    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n }\n
    \n
    \n
    \n
    \n preSubmit()}\n className=\"btn btn-primary\"\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(AccountShareHolder);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ProductMaintenance = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n let _history = useHistory();\n const [productData, setProductData] = useState([]);\n const { loginUserId } = useSelector((state) => ({\n loginUserId: state.authState.userData.userId,\n }));\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"productName\",\n },\n {\n Header: \"ROYALTY\",\n accessor: \"royalty\",\n Cell: ({ row }) => (\n <>\n { row.original.id > 0 &&
    {row.original.royalty}%
    }\n \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n /*{\n Header: \"MARK UP\",\n accessor: \"markup\",\n Cell: ({ row }) => (\n
    {row.original.markup}%
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },*/\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n <>\n { row.original.id > 0 &&
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"MAINTENANCE\")}\n \n )}\n
    }\n \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n <>\n { row.original.id > 0 &&
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_PRODUCTS_EDIT,\n row.original\n );\n }}\n >\n \n {t(\"EDIT_ROYALTY\")}\n \n \n \n \n
    }\n \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n function updateProductData() {\n fetch(ApiUrl._API_GET_SHAREHOLDER_MASTER_PRODUCT_DATA_LIST, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductData(responseJson[ApiKey._API_DATA_KEY].data);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n updateProductData();\n }, []);\n\n return (\n
    \n

    {t(\"SHAREHOLDERS_PRODUCTS\")}

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ProductMaintenance;\n","import React, { useState, useEffect, useMemo } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { createFormBody } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useTranslation } from \"react-i18next\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \nconst AccountShareHolderViewProduct = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors, setValue, watch } = useForm({ mode: \"onBlur\" });\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [productId, setProductId] = useState('');\n const [productName, setProductName] = useState('');\n const [productCode, setProductCode] = useState('');\n const [status, setStatus] = useState(null);\n const [royalty, setRoyalty] = useState(0);\n const [markup, setMarkup] = useState(0);\n\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n\n /// \n /// Author : -\n /// \n function init() {\n if (_location.state) {\n console.log(_location.state);\n setProductId(_location.state.id);\n setProductName(_location.state.productName);\n setProductCode(_location.state.productCode);\n setStatus(_location.state.status);\n\n setRoyalty(_location.state.royalty);\n setMarkup(_location.state.markup);\n\n /*\n setMemberId(_location.state.id);\n setUsername(_location.state.username);\n\n console.log(_location.state.id);\n console.log('vs');\n console.log(_location.state.referralMemberId);\n\n if (_location.state.id == _location.state.referralMemberId) {\n setMinPercent(5)\n setMaxPercent(100);\n }\n else {\n setMinPercent(5);\n setMaxPercent(100);\n }\n\n setSharePercent(_location.state.sharePercent);\n setIsShareHolder(_location.state.isShareHolder);\n setShareHolderDate(_location.state.shareHolderDate);\n\n if (_location.state.shareHolderDate == null) {\n setSharePercent(100);\n }*/\n }\n else {\n _history.push(\"/shareholder/products\")\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n productId: productId,\n royalty: data.royalty,\n markup: data.markup\n };\n\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_UPDATE_SHAREHOLDER_PRODUCT,\n formBody\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _history.push(WebUrl._URL_SHAREHOLDERS_PRODUCTS);\n }\n };\n\n /// \n /// Author : -\n /// \n function preSubmit() {\n if (royalty != watch(\"royalty\") || markup != watch(\"markup\")) {\n setShowConfirmation(true);\n } else {\n handleSubmit(submitForm)();\n }\n }\n\n return (\n
    \n {showConfirmation && (\n {\n setShowConfirmation(false);\n handleSubmit(submitForm)();\n }}\n onCancel={() => {\n setShowConfirmation(false);\n }}\n >\n )}\n

    \n {t(\"SHAREHOLDER_VIEW_PRODUCT\")}\n \n

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

    {t(\"PRODUCT_DETAIL\")}

    \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n
    \n\n
    \n
    \n \n \n
    \n
    \n\n
    \n
    \n \n
    \n {status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"MAINTENANCE\")}\n \n )}\n
    \n
    \n\n
    \n \n
    \n
    \n \n\n
    \n setRoyalty(e.target.value)}\n />\n {errors.royalty && (\n
    \n {t(errors.royalty.message)}\n
    \n )}\n
    \n
    \n\n\n
    \n
    \n \n\n
    \n setMarkup(e.target.value)}\n />\n {errors.markup && (\n
    \n {t(errors.markup.message)}\n
    \n )}\n
    \n
    \n\n\n
    \n
    \n
    \n
    \n preSubmit()}\n className=\"btn btn-primary\"\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(AccountShareHolderViewProduct);\n","import React, { useState, useEffect, useMemo } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\n\nimport { createFormBody } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \nconst AccountShareHolderViewPayout = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors, setValue, watch } = useForm({ mode: \"onBlur\" });\n const [productId, setProductId] = useState('');\n const [productName, setProductName] = useState('');\n const [productCode, setProductCode] = useState('');\n const [status, setStatus] = useState(null);\n const [royalty, setRoyalty] = useState(0);\n const [markup, setMarkup] = useState(0);\n const [grosssales, setGrosssales] = useState(0);\n const [validTurnover, setValidTurnover] = useState(0);\n\n const [winAmt, setWinAmt] = useState(0);\n const [commission, setCommission] = useState(0);\n const [rewards, setRewards] = useState(0);\n const [balance, setBalance] = useState(0);\n\n const [netsales, setNetsales] = useState(0);\n const [payout, setPayout] = useState(null);\n const [netprofit, setNetprofit] = useState('');\n const [date, setDate] = useState('');\n\n const [birthdayBonus, setBirthdayBonus] = useState(0);\n const [gameRebate, setGameRebate] = useState(0);\n const [weeklyRescue, setWeeklyRescue] = useState(0);\n const [memberProductBonus, setMemberProductBonus] = useState(0);\n const [memberPoints, setMemberPoints] = useState(0);\n const [totalExpenses, setTotalExpenses] = useState(0);\n\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n\n /// \n /// Author : -\n /// \n function init() {\n if (_location.state) {\n setDate(_location.state.date);\n setProductId(_location.state.id);\n setProductName(_location.state.productName);\n setProductCode(_location.state.productCode);\n setStatus(_location.state.status);\n\n getProductData(_location.state.date, _location.state.id);\n\n }\n else {\n _history.push(WebUrl._URL_SHAREHOLDERS_PROCESS)\n }\n }\n\n\n\n /// \n /// Author : -\n /// \n function getProductData(date, productId) {\n _dispatch(setBusy());\n fetch(ApiUrl._API_GET_SHAREHOLDER_ONE_PRODUCT_DATA + \"?date=\" + date + \"&productId=\" + productId, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"][0];\n\n if (typeof (data) !== \"undefined\" && data.id == productId) {\n setMarkup(data.markup);\n setGrosssales(data.grossSales);\n setValidTurnover(data.validTurnover);\n setNetsales(data.netSales);\n setNetprofit(data.netProfit);\n setMemberPoints(data.memberPoint);\n setMemberProductBonus(data.memberProductBonus);\n setGameRebate(data.gameRebate);\n setBirthdayBonus(data.birthdayBonus);\n setWeeklyRescue(data.weeklyRescue);\n setTotalExpenses(data.totalExpenses);\n let _winLose = data.winAmount - data.grossSales;\n setWinAmt(_winLose);\n let _comm = data.validTurnover * data.commission / 100;\n setCommission(_comm);\n let _royalty = _winLose * data.royalty / 100;\n setRoyalty(_royalty);\n let _rewards = data.rewards;\n setBalance(_royalty + _comm + _rewards);\n setRewards(_rewards);\n\n if (data.payout > 0)\n setPayout(data.payout);\n else {\n setPayout(data.validTurnover + (_royalty + _comm + _rewards));\n }\n }\n else if (productId == 0) {\n }\n }\n _dispatch(setIdle());\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n payout: data.payout,\n productId: productId,\n date: date\n };\n\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_UPDATE_SHAREHOLDER_PAYOUT,\n formBody\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _history.push({\n pathname: WebUrl._URL_SHAREHOLDERS_PROCESS,\n state: { date: date }\n });\n }\n };\n\n /// \n /// Author : -\n /// \n function preSubmit() {\n handleSubmit(submitForm)();\n }\n\n return (\n
    \n

    \n {t(\"SHAREHOLDER_VIEW_SALES\")}\n \n

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

    {t(\"PRODUCT_DETAIL\")} - {date}

    \n
    \n
    \n\n\n
    \n
    \n \n \n
    \n\n
    \n \n \n
    \n\n\n
    \n \n
    \n {status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"MAINTENANCE\")}\n \n )}\n
    \n\n
    \n {\n productId == 0 && <>\n
    \n
    \n
    \n \n
    \n \n
    \n\n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n

    {t(\"MARKETING_EXPENSES\")}

    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n\n
    \n \n
    \n \n
    \n\n
    \n \n
    \n \n
    \n\n
    \n
    \n
    \n \n
    \n \n
    \n\n
    \n \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n\n\n
    \n\n \n }\n {\n productId > 0 && <>\n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n
    \n\n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n
    \n
    \n \n
    \n \n
    \n
    \n \n }\n\n
    \n
    \n
    \n \n\n
    \n\n {\n setPayout(e.target.value);\n (productId == 0) ?\n setNetprofit(- e.target.value)\n :\n setNetprofit(validTurnover - e.target.value)\n }\n }\n />\n {errors.payout && (\n
    \n {t(errors.payout.message)}\n
    \n )}\n
    \n\n
    \n\n\n
    \n
    \n
    \n
    \n preSubmit()}\n className=\"btn btn-primary\"\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(AccountShareHolderViewPayout);\n","\nimport React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { createFormBody } from \"../../util/Util\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\nimport DateTime from 'react-datetime';\nimport moment from \"moment\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\n\n/// \n/// Author : -\n/// \n\nconst ShareholdersProcessSales = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const _location = useLocation();\n let _history = useHistory();\n const [productData, setProductData] = useState([]);\n const [categoryData, setCategoryData] = useState({});\n const [categoryTotal, setCategoryTotal] = useState({});\n const [date, setDate] = useState(moment().add(-1, \"days\").format(\"DD-MM-YYYY\"));\n const [oktoprocess, setOktoprocess] = useState(true);\n const [okcount, setOkcount] = useState(0);\n const [processed, setProcessed] = useState(false);\n const { loginUserId } = useSelector((state) => ({\n loginUserId: state.authState.userData.userId,\n }));\n const { handleSubmit, control } = useForm({ mode: \"onBlur\" });\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [initPage, setInitPage] = useState(true);\n\n\n const yesterday = moment().subtract(1, 'day');\n const disableFutureDt = current => {\n return current.isBefore(yesterday);\n };\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"productName\",\n Cell: ({ row }) => (\n
    \n
    {row.original.productName}
    \n { row.original.id > 0 && <>\n
    Royalty: {row.original.royalty}%
    \n
    Markup: {row.original.markup}%
    \n \n }\n\n
    \n ),\n disableSortBy: true,\n },\n {\n Header: \"TURNOVER\",\n accessor: \"netSales\",\n Cell: ({ row }) => (\n
    \n
    \n \n
    \n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"PAYOUT\",\n accessor: \"payout\",\n Cell: ({ row }) => (\n
    \n { row.original.payout == null ?\n NOT_SET\n :\n \n }\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"NET PROFIT\",\n accessor: \"netProfit\",\n Cell: ({ row }) => (\n
    \n\n { row.original.payout == null ? NOT_SET : }\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n {\n !processed && \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_PAYOUT_EDIT,\n row.original\n );\n }}\n >\n \n {t(\"EDIT_PAYOUT\")}\n \n \n \n \n }\n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n const tableStyle = {\n border: \"2px solid #000000\"\n };\n\n const greyStyle = {\n border: \"none\",\n background: \"lightgrey\"\n };\n\n const lineRowStyle = {\n borderTop: \"2px solid #000000\",\n borderBottom: \"2px solid #000000\",\n fontWeight: \"bold\"\n };\n\n const leftBorderStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n borderLeft: \"2px solid #000000\",\n textAlign: \"right\"\n };\n\n const rightBorderStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n borderRight: \"2px solid #000000\",\n textAlign: \"right\"\n };\n\n const payoutStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n textAlign: \"right\",\n background: \"#d9edf7\"\n };\n\n const netProfitStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n borderLeft: \"2px solid #000000\",\n textAlign: \"right\",\n background: \"#fcf8e3\"\n };\n\n const balanceStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n textAlign: \"right\",\n background: \"#fcf8e3\"\n };\n\n const textRightStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n textAlign: \"right\"\n };\n\n const textLeftStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n textAlign: \"left\"\n };\n\n /// \n /// Author : -\n /// \n function getProductData(date) {\n _dispatch(setBusy());\n setOkcount(0);\n fetch(ApiUrl._API_GET_SHAREHOLDER_HUAT_TICKET + \"?date=\" + date, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProcessed(responseJson[ApiKey._API_DATA_KEY].processed);\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n setOktoprocess(true);\n responseJson[ApiKey._API_DATA_KEY].data.map((product, index) => {\n if (product.payout == null)\n setOktoprocess(false);\n });\n setProductData(data);\n\n let categoryRow = {};\n let catTotal = {};\n\n data.map((e, i) => {\n let winLose = e.winAmount - e.betAmt;\n let royaltyAmt = winLose * (e.royalty / 100);\n let commissionAmt = e.validTurnover * (e.commission / 100);\n let balanceAmt = royaltyAmt + commissionAmt;\n var payoutAmt = e.payout;\n let netProfitAmt = 0;\n if (e.payout > 0) {\n netProfitAmt = e.validTurnover;\n netProfitAmt -= e.payout;\n }\n\n\n if (!categoryRow[e.categoryName]) {\n categoryRow[e.categoryName] = {};\n if (typeof (e.categoryName) !== \"undefined\") {\n catTotal[e.categoryName] = { turnover: 0, validTurnover: 0, winlose: 0, royalty: 0, commission: 0, balance: 0, payout: 0, netProfit: 0 };\n }\n else {\n catTotal[e.categoryName] = { turnover: e.grossSales, validTurnover: e.validTurnover, payout: e.payout, netProfit: e.netProfit };\n }\n }\n if (e.productName !== \"Settlement\") {\n if (!categoryRow[e.categoryName][e.productName]) {\n categoryRow[e.categoryName][e.productName] = { turnover: e.grossSales, validTurnover: e.validTurnover, winlose: winLose, royalty: royaltyAmt, balance: balanceAmt, payout: payoutAmt, commission: commissionAmt, netProfit: netProfitAmt };\n }\n }\n if (typeof (e.categoryName) !== \"undefined\") {\n catTotal[e.categoryName].turnover += e.grossSales;\n catTotal[e.categoryName].validTurnover += e.validTurnover;\n catTotal[e.categoryName].winlose += winLose;\n catTotal[e.categoryName].royalty += royaltyAmt;\n catTotal[e.categoryName].balance += balanceAmt;\n catTotal[e.categoryName].payout += payoutAmt;\n catTotal[e.categoryName].commission += commissionAmt;\n catTotal[e.categoryName].netProfit += netProfitAmt;\n }\n })\n setCategoryData(categoryRow);\n setCategoryTotal(catTotal);\n }\n setInitPage(false);\n _dispatch(setIdle());\n });\n }\n\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n if (_location.state.date != \"\") {\n setDate(_location.state.date);\n getProductData(_location.state.date);\n }\n }\n }, []);\n\n\n\n function preSubmit() {\n setShowConfirmation(true);\n }\n\n return (\n
    \n

    {t(\"SHAREHOLDERS_PRODUCTS_ADD_HUAT_TICKET\")}

    \n \n \n

    VT/WinAmt For (\n {\n if (e instanceof moment) {\n setDate(e.format(\"DD-MM-YYYY\"));\n getProductData(e.format(\"DD-MM-YYYY\"));\n onChange(e.format(\"DD-MM-YYYY\"));\n }\n else {\n onChange('');\n }\n }} />\n )}\n onChange={(value) => {\n setDate(value);\n }}\n />\n

    \n\n\n {\n !processed ? (productData.length > 0 && oktoprocess ?
    \n
    \n :\n
    {initPage ? \"Please select date to continue.\" : \"VT/WinAmt are optional and can leave 0 if not required.\"}
    ) :
    {date} sales processed.
    \n }\n\n \n \n \n \n \n \n \n \n \n\n {Object.keys(categoryData) && Object.keys(categoryData).length > 0 &&\n Object.keys(categoryData).map((categoryName, i) => {\n if (typeof (categoryTotal[categoryName]) !== \"undefined\") {\n return (\n <>\n {\n categoryName !== \"undefined\" && <>\n \n \n \n \n \n \n \n \n }\n\n {Object.keys(categoryData[categoryName]) && Object.keys(categoryData[categoryName]).length > 0 &&\n Object.keys(categoryData[categoryName]).map((product, i) => {\n return (\n \n \n \n \n \n \n \n )\n })\n }\n \n )\n }\n })\n }\n \n
    NameTurnoverV.TurnoverWin/Loss
    {categoryName} TOTAL{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].turnover), 3, true)}{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].validTurnover), 3, true)}{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].winlose), 3, true)}
    {i+1}. {product}{numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].turnover), 3, true)}{numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].validTurnover), 3, true)}{numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].winlose), 3, true)}{\n !processed && <>\n {\n categoryData[categoryName][product].payout == null ?\n {\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_HUAT_TICKET_EDIT,\n productData.filter((option) => option.productName === product)[0]\n );\n }} href=\"#set\">Edit\n : \n {\n console.log(productData.filter((option) => option.productName === product)[0]);\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_HUAT_TICKET_EDIT,\n productData.filter((option) => option.productName === product)[0]\n );\n }} href=\"#set\">{numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].payout), 3, true)}\n }\n \n } {processed && numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].payout),3,true)}\n
    \n\n \n\n \n \n );\n};\n\nexport default ShareholdersProcessSales;","import React, { useState, useEffect, useMemo } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { createFormBody } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useTranslation } from \"react-i18next\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \nconst AccountShareHolderHuatTicket = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors, setValue, watch } = useForm({ mode: \"onBlur\" });\n const [productId, setProductId] = useState('');\n const [productName, setProductName] = useState('');\n const [productCode, setProductCode] = useState('');\n const [status, setStatus] = useState(null);\n const [royalty, setRoyalty] = useState(0);\n const [markup, setMarkup] = useState(0);\n\n const [grosssales, setGrosssales] = useState(0);\n const [validTurnover, setValidTurnover] = useState(0);\n const [winAmt, setWinAmt] = useState(0);\n const [turnover, setTurnover] = useState(0);\n\n const [commission, setCommission] = useState(0);\n const [balance, setBalance] = useState(0);\n\n const [date, setDate] = useState('');\n\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n\n /// \n /// Author : -\n /// \n function init() {\n if (_location.state) {\n\n setProductId(_location.state.id);\n setProductName(_location.state.productName);\n setProductCode(_location.state.productCode);\n setStatus(_location.state.status);\n\n setWinAmt(_location.state.winAmount);\n setTurnover(_location.state.grossSales);\n setValidTurnover(_location.state.validTurnover);\n setDate(_location.state.date);\n \n }\n else {\n _history.push(WebUrl._URL_SHAREHOLDERS_PROCESS_HUAT_TICKET)\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n turnover: data.turnover,\n winAmt: data.winAmt,\n validTurnover: data.validTurnover,\n productId: productId,\n date: date\n };\n\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_UPDATE_SHAREHOLDER_HUAT_TICKET,\n formBody\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _history.push({\n pathname: WebUrl._URL_SHAREHOLDERS_PROCESS_HUAT_TICKET,\n state: { date: date }\n });\n }\n };\n\n /// \n /// Author : -\n /// \n function preSubmit() {\n handleSubmit(submitForm)();\n }\n\n return (\n
    \n

    \n Shareholder Edit Huat VT/WinAmt\n \n

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

    {t(\"PRODUCT_DETAIL\")} - { date }

    \n
    \n
    \n \n \n
    \n
    \n \n \n
    \n\n
    \n \n \n
    \n\n\n
    \n \n
    \n {status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"MAINTENANCE\")}\n \n )}\n
    \n\n
    \n {\n productId > 0 && <>\n
    \n
    \n
    \n \n
    \n {\n setTurnover(e.target.value);\n }\n }\n />\n {errors.turnover && (\n
    \n {t(errors.turnover.message)}\n
    \n )}\n
    \n
    \n \n
    \n {\n setValidTurnover(e.target.value);\n }\n }\n />\n {errors.validTurnover && (\n
    \n {t(errors.validTurnover.message)}\n
    \n )}\n
    \n
    \n \n
    \n {\n setWinAmt(e.target.value);\n }\n }\n />\n {errors.winAmt && (\n
    \n {t(errors.winAmt.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n preSubmit()}\n className=\"btn btn-primary\"\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n
    \n \n }\n\n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(AccountShareHolderHuatTicket);\n","\nimport React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { createFormBody } from \"../../util/Util\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\nimport DateTime from 'react-datetime';\nimport moment from \"moment\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\n\n/// \n/// Author : -\n/// \n\nconst ShareholdersProcessSales = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const _location = useLocation();\n let _history = useHistory();\n const [productData, setProductData] = useState([]);\n const [poolData, setPoolData] = useState([]);\n const [categoryData, setCategoryData] = useState({});\n const [poolProcessedRow, setPoolProcessedRow] = useState({});\n \n const [poolCategoryData, setPoolCategoryData] = useState({});\n const [categoryTotal, setCategoryTotal] = useState({});\n const [date, setDate] = useState(moment().add(-1, \"days\").format(\"DD-MM-YYYY\"));\n const [oktoprocess, setOktoprocess] = useState(true);\n const [okcount, setOkcount] = useState(0);\n const [processed, setProcessed] = useState(false);\n const [released, setReleased] = useState(false);\n const { loginUserId } = useSelector((state) => ({\n loginUserId: state.authState.userData.userId,\n }));\n const { handleSubmit, control } = useForm({ mode: \"onBlur\" });\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [showConfirmationRelease, setShowConfirmationRelease] = useState(false);\n const [initPage, setInitPage] = useState(true);\n\n\n const yesterday = moment().subtract(1, 'day');\n const disableFutureDt = current => {\n return current.isBefore(yesterday);\n };\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"productName\",\n Cell: ({ row }) => (\n
    \n
    {row.original.productName}
    \n { row.original.id > 0 && <>\n
    Royalty: {row.original.royalty}%
    \n
    Markup: {row.original.markup}%
    \n \n }\n\n
    \n ),\n disableSortBy: true,\n },\n {\n Header: \"TURNOVER\",\n accessor: \"netSales\",\n Cell: ({ row }) => (\n
    \n
    \n \n
    \n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"PAYOUT\",\n accessor: \"payout\",\n Cell: ({ row }) => (\n
    \n { row.original.payout == null ?\n NOT_SET\n :\n \n }\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"NET PROFIT\",\n accessor: \"netProfit\",\n Cell: ({ row }) => (\n
    \n\n { row.original.payout == null ? NOT_SET : }\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n {\n !processed && \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_PAYOUT_EDIT,\n row.original\n );\n }}\n >\n \n {t(\"EDIT_PAYOUT\")}\n \n \n \n \n }\n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n const tableStyle = {\n border: \"2px solid #000000\"\n };\n\n const greyStyle = {\n border: \"none\",\n background: \"lightgrey\"\n };\n\n const lineRowStyle = {\n borderTop: \"2px solid #000000\",\n borderBottom: \"2px solid #000000\",\n fontWeight: \"bold\"\n };\n\n const leftBorderStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n borderLeft: \"2px solid #000000\",\n textAlign: \"right\"\n };\n\n const rightBorderStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n borderRight: \"2px solid #000000\",\n textAlign: \"right\"\n };\n\n const payoutStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n textAlign: \"right\",\n background: \"#d9edf7\"\n };\n\n const netProfitStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n borderLeft: \"2px solid #000000\",\n textAlign: \"right\",\n background: \"#fcf8e3\"\n };\n\n const balanceStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n textAlign: \"right\",\n background: \"#fcf8e3\"\n };\n\n const textRightStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n textAlign: \"right\"\n };\n\n const textLeftStyle = {\n border: \"none\",\n borderColor: \"#000000\",\n textAlign: \"left\"\n };\n\n /// \n /// Author : -\n /// \n function getProductData(date) {\n setProductData([]);\n setPoolData([]);\n _dispatch(setBusy());\n setOkcount(0);\n fetch(ApiUrl._API_GET_SHAREHOLDER_MASTER_PRODUCT_DATA + \"?date=\" + date, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProcessed(responseJson[ApiKey._API_DATA_KEY].processed);\n setReleased(responseJson[ApiKey._API_DATA_KEY].released);\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let pool = responseJson[ApiKey._API_DATA_KEY][\"pool\"];\n setOktoprocess(true);\n responseJson[ApiKey._API_DATA_KEY].data.map((product, index) => {\n if (product.payout == null)\n setOktoprocess(false);\n });\n setProductData(data);\n setPoolData(pool);\n let categoryRow = {};\n let catTotal = {};\n\n data.map((e, i) => {\n let winLose = e.winAmount - e.betAmt;\n let royaltyAmt = winLose * (e.royalty / 100);\n let commissionAmt = e.validTurnover * (e.commission / 100);\n let balanceAmt = 0;\n balanceAmt = royaltyAmt + commissionAmt + e.rewards;\n var payoutAmt = e.payout;\n let netProfitAmt = 0;\n if (e.payout > 0) {\n netProfitAmt = e.validTurnover;\n netProfitAmt -= e.payout;\n }\n\n if (!categoryRow[e.categoryName]) {\n categoryRow[e.categoryName] = {};\n if (typeof (e.categoryName) !== \"undefined\") {\n catTotal[e.categoryName] = { turnover: 0, validTurnover: 0, winlose: 0, royalty: 0, commission: 0, balance: 0, payout: 0, netProfit: 0, rewards: 0 };\n }\n else {\n catTotal[e.categoryName] = { turnover: e.grossSales, validTurnover: e.validTurnover, payout: e.payout, netProfit: e.netProfit, rewards: e.rewards };\n }\n }\n if (e.productName !== \"Settlement\") {\n if (!categoryRow[e.categoryName][e.productName]) {\n categoryRow[e.categoryName][e.productName] = { turnover: e.grossSales, validTurnover: e.validTurnover, winlose: winLose, royalty: royaltyAmt, balance: balanceAmt, payout: payoutAmt, commission: commissionAmt, netProfit: netProfitAmt, rewards: e.rewards};\n }\n }\n if (typeof (e.categoryName) !== \"undefined\") {\n catTotal[e.categoryName].turnover += e.grossSales;\n catTotal[e.categoryName].validTurnover += e.validTurnover;\n catTotal[e.categoryName].winlose += winLose;\n catTotal[e.categoryName].royalty += royaltyAmt;\n catTotal[e.categoryName].balance += balanceAmt;\n catTotal[e.categoryName].payout += payoutAmt;\n catTotal[e.categoryName].commission += commissionAmt;\n catTotal[e.categoryName].netProfit += netProfitAmt;\n catTotal[e.categoryName].rewards += e.rewards;\n }\n })\n setCategoryData(categoryRow);\n setCategoryTotal(catTotal);\n \n\n let poolRow = [];\n let poolCategoryRow = {};\n let poolCatTotal = {};\n\n pool.map((el, i) =>{\n poolCategoryRow = {};\n poolCatTotal = {};\n el.data.map((e, i) =>{\n let winLose = e.winAmount - e.betAmt;\n let royaltyAmt = winLose * (e.royalty / 100);\n let commissionAmt = e.validTurnover * (e.commission / 100);\n let balanceAmt = 0;\n balanceAmt = royaltyAmt + commissionAmt + e.rewards;\n var payoutAmt = e.payout;\n let netProfitAmt = 0;\n if (e.payout > 0) {\n netProfitAmt = e.validTurnover;\n netProfitAmt -= e.payout;\n }\n\n if (!poolRow[el.poolName]) {\n poolRow[el.poolName] = {categoryRow: poolCategoryRow, catTotal: poolCatTotal};\n }\n\n if (!poolRow[el.poolName].categoryRow[e.categoryName]) {\n poolRow[el.poolName].categoryRow[e.categoryName] = {};\n if (typeof (e.categoryName) !== \"undefined\") {\n poolRow[el.poolName].catTotal[e.categoryName] = { turnover: 0, validTurnover: 0, winlose: 0, royalty: 0, commission: 0, balance: 0, payout: 0, netProfit: 0, rewards: 0 };\n }\n else {\n poolRow[el.poolName].catTotal[e.categoryName] = { turnover: e.grossSales, validTurnover: e.validTurnover, payout: e.payout, netProfit: e.netProfit, rewards: e.rewards };\n }\n }\n if (e.productName !== \"Settlement\") {\n if (!poolRow[el.poolName].categoryRow[e.categoryName][e.productName]) {\n poolRow[el.poolName].categoryRow[e.categoryName][e.productName] = { turnover: e.grossSales, validTurnover: e.validTurnover, winlose: winLose, royalty: royaltyAmt, balance: balanceAmt, payout: payoutAmt, commission: commissionAmt, netProfit: netProfitAmt, rewards: e.rewards};\n }\n }\n if (typeof (e.categoryName) !== \"undefined\") {\n poolRow[el.poolName].catTotal[e.categoryName].turnover += e.grossSales;\n poolRow[el.poolName].catTotal[e.categoryName].validTurnover += e.validTurnover;\n poolRow[el.poolName].catTotal[e.categoryName].winlose += winLose;\n poolRow[el.poolName].catTotal[e.categoryName].royalty += royaltyAmt;\n poolRow[el.poolName].catTotal[e.categoryName].balance += balanceAmt;\n poolRow[el.poolName].catTotal[e.categoryName].payout += payoutAmt;\n poolRow[el.poolName].catTotal[e.categoryName].commission += commissionAmt;\n poolRow[el.poolName].catTotal[e.categoryName].netProfit += netProfitAmt;\n poolRow[el.poolName].catTotal[e.categoryName].rewards += e.rewards;\n }\n });\n });\n \n console.log('poolRow');\n console.log(poolRow);\n setPoolProcessedRow(poolRow);\n\n }\n setInitPage(false);\n _dispatch(setIdle());\n });\n }\n\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n if (_location.state.date != \"\") {\n setDate(_location.state.date);\n getProductData(_location.state.date);\n }\n }\n }, []);\n\n\n\n function preSubmit() {\n setShowConfirmation(true);\n }\n\n function preSubmitReleased() {\n setShowConfirmationRelease(true);\n }\n\n const submitProcess = async (data, e) => {\n let params = { date: date };\n\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_UPDATE_SHAREHOLDER_PROCESS,\n formBody\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n getProductData(date);\n }\n };\n\n const submitRelease = async (data, e) => {\n let params = { date: date };\n\n setReleased(true);\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_UPDATE_SHAREHOLDER_RELEASE,\n formBody\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n };\n\n async function unstuckSH() {\n let apiUrl = ApiUrl._API_UNSTUCK_SH;\n fetch(apiUrl, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: createFormBody({ date: date })\n })\n .then((response) => response.json())\n .then((responseJson) => {\n console.log(responseJson[ApiKey._API_SUCCESS_KEY]);\n console.log(responseJson[ApiKey._API_MESSAGE_KEY]);\n });\n }\n\n const clearSH = async (productName) => {\n let responseJson = await ApiEngine.post(ApiUrl._API_RESET_PRODUCT_PROCESS, createFormBody({ \"productName\": productName, \"date\": date }));\n if (responseJson[ApiKey._API_SUCCESS_KEY]){\n window.location.reload();\n }\n }\n\n return (\n
    \n {showConfirmation && (\n {\n setShowConfirmation(false);\n handleSubmit(submitProcess)();\n }}\n onCancel={() => {\n setShowConfirmation(false);\n }}\n >\n )}\n\n {showConfirmationRelease && (\n {\n setShowConfirmationRelease(false);\n handleSubmit(submitRelease)();\n }}\n onCancel={() => {\n setShowConfirmationRelease(false);\n }}\n >\n )}\n\n

    {t(\"SHAREHOLDERS_PRODUCTS_SALES_PROCESS\")}

    \n \n \n

    \n
    Process\n \n (\n {\n if (e instanceof moment) {\n setDate(e.format(\"DD-MM-YYYY\"));\n getProductData(e.format(\"DD-MM-YYYY\"));\n onChange(e.format(\"DD-MM-YYYY\"));\n }\n else {\n onChange('');\n }\n }} />\n )}\n onChange={(value) => {\n setDate(value);\n }}\n />\n
    sales\n

    \n {processed &&
    unstuckSH()}>Unstuck
    }\n \n\n\n\n\n {// display message depending whether processed or released yet\n (!processed && !released) ?\n (productData.length > 0 && oktoprocess ?\n
    \n
    \n All payout entered, please click\n \n to begin shares payout process.\n
    \n
    \n :\n
    \n {initPage ? \"Please select date to continue.\" : \"Please enter all payouts to proceed to process.\"}\n
    )\n : (processed && !released) ?\n
    \n
    \n All payout processed, please click\n \n to begin shares payout process.\n
    \n
    \n :\n
    \n {date} sales processed.\n
    \n }\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n {Object.keys(categoryData) && Object.keys(categoryData).length > 0 &&\n Object.keys(categoryData).map((categoryName, i) => {\n if (typeof (categoryTotal[categoryName]) !== \"undefined\") {\n return (\n <>\n {\n categoryName === \"undefined\" && <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n }\n\n {\n categoryName !== \"undefined\" && <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n }\n\n {Object.keys(categoryData[categoryName]) && Object.keys(categoryData[categoryName]).length > 0 &&\n Object.keys(categoryData[categoryName]).map((product, i) => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n )\n })\n }\n \n )\n }\n })\n }\n \n
    NameTurnoverV.TurnoverWin/LossRoyaltyCommRewardBalancePayoutNet Profit
    {t(\"Settlement\")} {!processed &&
    clearSH(\"Settlement\")}>{t(\"DELETE\")}
    }
    {\n categoryTotal[categoryName].turnover != null ?\n numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].turnover), 3, true)\n :\n \"-\"\n }{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].validTurnover), 3, true)}NILNILNILNILNIL{\n !processed && <>\n {categoryTotal[categoryName].payout !== null ?\n {\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_PAYOUT_EDIT,\n productData.filter((option) => option.productName == 'Settlement')[0]\n );\n }} href=\"#set\">{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].payout), 3, true)}\n :\n {\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_PAYOUT_EDIT,\n productData.filter((option) => option.productName == 'Settlement')[0]\n );\n }} href=\"#set\">Please set here\n }\n \n }{processed && numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].payout), 3, true)}{categoryTotal[categoryName].netProfit !== null ? numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].payout*-1), 3, true) : \"NIL\"}
    {categoryName} TOTAL{\n\n categoryTotal[categoryName].turnover != null ?\n numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].turnover), 3, true)\n :\n \"-\"\n }{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].validTurnover), 3, true)}{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].winlose), 3, true)}{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].royalty), 3, true)}{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].commission), 3, true)}{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].rewards), 3, true)}{numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].balance), 3, true)}{\n isNaN(categoryTotal[categoryName].payout) ?\n \"NIL\"\n :\n numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].payout), 3, true)\n }{categoryTotal[categoryName].netProfit !== null ? numberWithCurrencyFormat(parseFloat(categoryTotal[categoryName].netProfit), 3, true) : {t(\"NOT_SET\")}}
    {i + 1}. {product}{!processed &&
    clearSH(product)}>{t(\"DELETE\")}
    }
    {\n\n categoryData[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].turnover), 3, true)\n :\n \"-\"\n }{\n categoryData[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].validTurnover), 3, true)\n :\n \"-\"\n }{\n categoryData[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].winlose), 3, true)\n :\n \"-\"\n }{\n categoryData[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].royalty), 3, true)\n :\n \"-\"\n }{\n categoryData[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].commission), 3, true)\n :\n \"-\"\n }{\n categoryData[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].rewards), 3, true)\n :\n \"-\"\n }{\n categoryData[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].balance), 3, true)\n :\n \"-\"\n }{\n !processed && <>\n {\n categoryData[categoryName][product].payout == null ?\n {\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_PAYOUT_EDIT,\n productData.filter((option) => option.productName === product)[0]\n );\n }} href=\"#set\">Please set here\n : \n {\n console.log(productData.filter((option) => option.productName === product)[0]);\n navigateTo(\n _history,\n WebUrl._URL_SHAREHOLDERS_PAYOUT_EDIT,\n productData.filter((option) => option.productName === product)[0]\n );\n }} href=\"#set\">{numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].payout), 3, true)}\n }\n \n } {processed && numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].payout),3,true)}\n {\n categoryData[categoryName][product].payout > 0 ? numberWithCurrencyFormat(parseFloat(categoryData[categoryName][product].validTurnover-categoryData[categoryName][product].payout), 3, true) : \"\"\n }
    \n\n {\n processed &&\n
    \n {poolProcessedRow && Object.keys(poolProcessedRow).length > 0 &&\n Object.keys(poolProcessedRow).map((poolName, i) => (\n
    \n

    {poolName}

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {console.log('start')}\n {console.log(poolName)}\n {poolProcessedRow[poolName] && Object.keys(poolProcessedRow[poolName].categoryRow).length > 0 &&\n Object.keys(poolProcessedRow[poolName].categoryRow).map((categoryName, i) => {\n console.log('poolName');\n console.log(poolProcessedRow[poolName]);\n console.log(poolProcessedRow[poolName].catTotal);\n \n if (typeof (poolProcessedRow[poolName].catTotal[categoryName]) !== \"undefined\") {\n return (\n <>\n {\n categoryName === \"undefined\" && <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n }\n \n {\n categoryName !== \"undefined\" && <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n }\n\n {Object.keys(poolProcessedRow[poolName].categoryRow[categoryName]) && Object.keys(poolProcessedRow[poolName].categoryRow[categoryName]).length > 0 &&\n Object.keys(poolProcessedRow[poolName].categoryRow[categoryName]).map((product, i) => {\n console.log(product);\n console.log(poolProcessedRow[poolName].categoryRow[categoryName][product]);\n \n return (\n \n \n \n \n \n \n \n \n \n \n \n \n )\n })\n }\n\n \n \n\n \n )\n }\n })\n }\n \n
    NameTurnoverV.TurnoverWin/LossRoyaltyCommRewardBalancePayoutNet Profit
    {t(\"Settlement\")} {!processed &&
    clearSH(\"Settlement\")}>{t(\"DELETE\")}
    }
    {\n poolProcessedRow[poolName].catTotal[categoryName].turnover != null ?\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].turnover), 3, true)\n :\n \"-\"\n }{numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].validTurnover), 3, true)}NILNILNILNILNIL{processed && numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].payout), 3, true)}{poolProcessedRow[poolName].catTotal[categoryName].netProfit !== null ? numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].payout*-1), 3, true) : \"NIL\"}
    {categoryName} TOTAL{\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].turnover), 3, true)\n }{numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].validTurnover), 3, true)}{numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].winlose), 3, true)}{numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].royalty), 3, true)}{numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].commission), 3, true)}{numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].rewards), 3, true)}{numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].balance), 3, true)}{\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].payout), 3, true)\n }{numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].catTotal[categoryName].netProfit), 3, true)}
    {i + 1}. {product}{!processed &&
    clearSH(product)}>{t(\"DELETE\")}
    }
    {\n\n poolProcessedRow[poolName].categoryRow[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].categoryRow[categoryName][product].turnover), 3, true)\n :\n \"-\"\n }{\n poolProcessedRow[poolName].categoryRow[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].categoryRow[categoryName][product].validTurnover), 3, true)\n :\n \"-\"\n }{\n poolProcessedRow[poolName].categoryRow[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].categoryRow[categoryName][product].winlose), 3, true)\n :\n \"-\"\n }{\n poolProcessedRow[poolName].categoryRow[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].categoryRow[categoryName][product].royalty), 3, true)\n :\n \"-\"\n }{\n poolProcessedRow[poolName].categoryRow[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].categoryRow[categoryName][product].commission), 3, true)\n :\n \"-\"\n }{\n poolProcessedRow[poolName].categoryRow[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].categoryRow[categoryName][product].rewards), 3, true)\n :\n \"-\"\n }{\n poolProcessedRow[poolName].categoryRow[categoryName][product].turnover != null ?\n numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].categoryRow[categoryName][product].balance), 3, true)\n :\n \"-\"\n }{processed && numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].categoryRow[categoryName][product].payout),3,true)}\n {\n poolProcessedRow[poolName].categoryRow[categoryName][product].payout > 0 ? numberWithCurrencyFormat(parseFloat(poolProcessedRow[poolName].categoryRow[categoryName][product].validTurnover-poolProcessedRow[poolName].categoryRow[categoryName][product].payout), 3, true) : \"\"\n }
    \n
    \n ))\n }\n
    \n }\n \n\n \n \n );\n};\n\nexport default ShareholdersProcessSales;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tAccessRight,\n\tWebUrl,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport moment from \"moment\";\n\n/// \n/// Author : -\n/// \nconst TodayNewMembers = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\n\tconst _dispatch = useDispatch();\n\tconst [tableData, setTableData] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"FULLNAME\",\n\t\t\taccessor: \"userFullName\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"Upline\",\n\t\t\taccessor: \"upline\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"EMAIL\",\n\t\t\taccessor: \"email\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"PHONE\",\n\t\t\taccessor: \"phoneNumber\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CREATED_TIME\",\n\t\t\taccessor: \"createdTime\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{moment(row.original.createdTime)\n\t\t\t\t\t\t\t.add(8, \"hours\")\n\t\t\t\t\t\t\t.format(\"YYYY-MM-DD HH:mm:ss\")}\n\t\t\t\t\t
    \n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"DEPOSITED\",\n\t\t\taccessor: \"deposited\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn
    {row.original.deposited ? t(\"YES\") : t(\"NO\")}
    ;\n\t\t\t},\n\t\t},\n\t];\n\n\tuseEffect(() => {\n\t\tgetNewMemberList();\n\t}, []);\n\n\tconst getNewMemberList = async () => {\n\t\tlet apiUrl = ApiUrl._API_GET_NEW_MEMBERS_LIST_UNDER_MAIN_ACCOUNT;\n\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY];\n\t\t\tsetTableData(data);\n\t\t}\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"NEW_MEMBERS_7_DAYS\")}

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default TodayNewMembers;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey, DEFAULT_PAGE_SIZE } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { numberWithCurrencyFormat, stringIsNullOrEmpty } from \"../../util/Util\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\n\nconst TransferLog = () => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n\n const [initPage, setInitPage] = useState(true);\n const [logData, setLogData] = useState([]);\n const [startDate, setStartDate] = useState(moment().startOf('day').format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().endOf('day').format(\"YYYY-MM-DD\"));\n const [labelUsername, setLabelUsername] = useState(\"All\");\n const [selectedMember, setSelectedMember] = useState(\"\");\n const [memberId, setMemberId] = useState(\"\");\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n const [memberListUrl, setMemberListUrl] = useState(\n `${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`\n );\n\n const _TABLE_COLUMNS = [\n {\n Header: \"CREATED_TIME\",\n accessor: \"createdTime\",\n Cell: ({ row }) => {\n return (\n <>\n {moment(row.original.createdTime).format('YYYY-MM-DD HH:mm:ss:sss')}\n \n );\n },\n },\n {\n Header: \"Value\",\n accessor: \"value\"\n }\n ]\n\n const getTransferLog = async (playerGuid) => {\n let playerId = playerGuid;\n let apiUrl = ApiUrl._API_GET_TRANSFER_LOG + \"?startDate=\" + startDate + \"&endDate=\" + endDate;\n if (!stringIsNullOrEmpty(playerId)) {\n apiUrl += \"&player=\" + playerId;\n }\n\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setLogData(data);\n }\n else {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n setInitPage(false);\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n /// \n /// Author : -\n /// \n async function getDownlineByReferrer(memberId = \"\") {\n setMemberListUrl(\n `${ApiUrl._API_GET_DOWNLINE_BY_REFERRER}?memberId=${memberId}`\n );\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, selectedMember);\n getDownlineByReferrer(selectedMember);\n }, [selectedMember]);\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"TRANSFER_LOG\")}

    \n \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n getTransferLog()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabelUsername(e.label);\n setSelectedMember(e.value);\n getTransferLog(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n {!initPage ? :
    {t(\"SELECT_DATE_AND_CONTINUE\")}
    }\n
    \n
    \n
    \n
    \n
    \n
    \n )\n}\n\nexport default TransferLog;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport { useLocation } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst MemberProductMaintenance = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const _location = useLocation();\n const [productData, setProductData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"productName\",\n },\n {\n Header: \"CODE\",\n accessor: \"productCode\",\n },\n {\n Header: \"LINK_STATUS\",\n accessor: \"accountLinked\",\n Cell: ({ row }) => (\n
    \n {row.original.accountLinked == 1 ? (\n \n {t(\"LINKED\")}\n \n ) : (\n \n {t(\"UNLINK\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.assigned == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"MAINTENANCE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n updateProductAssignment(row.original);\n }}\n >\n {row.original.assigned ? t(\"DEACTIVATE\") : t(\"ACTIVATE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n function updateProductAssignment(data) {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_UPDATE_MEMBER_PRODUCT_ACTIVENESS +\n \"?memberId=\" +\n _location.state[\"id\"] +\n \"&accountProductId=\" +\n data[\"accountProductId\"] +\n \"&enable=\" +\n !data[\"assigned\"] +\n \"&assignment=true\",\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n updateProductData();\n }\n _dispatch(setIdle());\n });\n }\n\n /// \n /// Author : -\n /// \n function updateProductData() {\n fetch(\n ApiUrl._API_GET_ASSIGNED_MEMBER_PRODUCT +\n \"?memberId=\" +\n _location.state[\"id\"],\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n updateProductData();\n }, []);\n\n return (\n
    \n

    {t(\"MEMBER_PRODUCT_MAINTENANCE\")}

    \n \n \n \n \n \n
    \n );\n};\n\nexport default MemberProductMaintenance;\n","import React, { useState, useEffect } from \"react\";\nimport {\n\tPanel,\n\tPanelBody,\n\tPanelHeader,\n} from \"./../../components/panel/panel.jsx\";\nimport { useForm } from \"react-hook-form\";\nimport { ApiKey, ApiUrl, Role, Status, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport Select from \"react-select\";\nimport IntlTelInput from \"react-intl-tel-input\";\nimport \"react-intl-tel-input/dist/main.css\";\nimport { fetch } from \"whatwg-fetch\";\nimport PinInput from \"react-pin-input\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n\tButton,\n\tDropdownItem,\n\tDropdownMenu,\n\tDropdownToggle,\n\tFormFeedback,\n\tInput,\n\tModal,\n\tModalBody,\n\tModalFooter,\n\tModalHeader,\n\tUncontrolledButtonDropdown,\n} from \"reactstrap\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\n\n/// \n/// Author : -\n/// \nconst CompanyDetail = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _location = useLocation();\n\tconst _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tconst {\n\t\tregister,\n\t\thandleSubmit,\n\t\terrors,\n\t\tsetValue,\n\t\tgetValues,\n\t\ttrigger,\n\t\tformState,\n\t\tsetError,\n\t\tclearErrors,\n\t} = useForm();\n\tconst [username, setUsername] = useState(\"\");\n\tconst [password, setPassword] = useState(\"\");\n\tconst [confirmPassword, setConfirmPassword] = useState(\"\");\n\tconst [fullName, setFullName] = useState(\"\");\n\tconst [phone, setPhone] = useState(\"\");\n\tconst [email, setEmail] = useState(\"\");\n\tconst [userId, setUserId] = useState(\"\");\n\tconst [status, setStatus] = useState(true);\n\tconst [credit, setCredit] = useState(0);\n\tconst [timeZone, setTimeZone] = useState();\n\tconst { userRoleId, loginUserId } = useSelector((state) => ({\n\t\tuserRoleId: state.authState.userData.userRoleId,\n\t\tloginUserId: state.authState.userData.userId,\n\t}));\n\tconst [transactionPinNumber, setTransactionPinNumber] = useState(\"\");\n\tconst [pinEntered, setPinEntered] = useState(false);\n\tconst [domainList, setDomainList] = useState([]);\n\tconst [selectedDomain, setSelectedDomain] = useState();\n\tconst [isToggleDomainModal, setIsToggleDomainModal] = useState(false);\n\tconst [isToggleDeleteDomainModal, setIsToggleDeleteDomainModal] =\n\t\tuseState(false);\n\tconst [requiredPassword, setRequiredPassword] = useState(false);\n\tconst [requiredConfirmPassword, setRequiredConfirmPassword] = useState(false);\n\n\tconst [domainUrl, setDomainUrl] = useState(null);\n\tconst [isDomainValid, setIsDomainValid] = useState(true);\n\tconst [isPhoneValid, setIsPhoneValid] = useState(true);\n\n\tvar _TIMEZONE_OPTION = [\n\t\t{ label: \"(GMT-11:00) Pago Pago\", value: -11 },\n\t\t{ label: \"(GMT-10:00) Pacific/Honolulu\", value: -10 },\n\t\t{ label: \"(GMT-08:00) America/Los_Angeles\", value: -8 },\n\t\t{ label: \"(GMT-07:00) America/Denver\", value: -7 },\n\t\t{ label: \"(GMT-06:00) America/Chicago\", value: -6 },\n\t\t{ label: \"(GMT-05:00) America/New_York\", value: -5 },\n\t\t{ label: \"(GMT-04:00) America/Guyana\", value: -4 },\n\t\t{ label: \"(GMT-03:00) America/Santiago\", value: -3 },\n\t\t{ label: \"(GMT-02:00) America/Sao_Paulo\", value: -2 },\n\t\t{ label: \"(GMT-01:00) Atlantic/Azores\", value: -1 },\n\t\t{ label: \"(GMT+00:00) Europe/London\", value: 0 },\n\t\t{ label: \"(GMT+01:00) Europe/Berlin\", value: 1 },\n\t\t{ label: \"(GMT+02:00) Europe/Athens\", value: 2 },\n\t\t{ label: \"(GMT+03:00) Europe/Istanbul\", value: 3 },\n\t\t{ label: \"(GMT+04:00) Europe/Samara\", value: 4 },\n\t\t{ label: \"(GMT+05:00) Asia/Karachi\", value: 5 },\n\t\t{ label: \"(GMT+06:00) Asia/Dhaka\", value: 6 },\n\t\t{ label: \"(GMT+07:00) Asia/Bangkok\", value: 7 },\n\t\t{ label: \"(GMT+08:00) Asia/Singapore\", value: 8 },\n\t\t{ label: \"(GMT+09:00) Asia/Seoul\", value: 9 },\n\t\t{ label: \"(GMT+10:00) Asia/Magadan\", value: 10 },\n\t\t{ label: \"(GMT+11:00) Australia/Sydney\", value: 11 },\n\t\t{ label: \"(GMT+12:00) Pacific/Majuro\", value: 12 },\n\t\t{ label: \"(GMT+13:00) Pacific/Auckland\", value: 13 },\n\t\t{ label: \"(GMT+14:00) Pacific/Apia\", value: 14 },\n\t];\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"Domain Url\",\n\t\t\taccessor: \"domainUrl\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t toggleDomainModal(row.original.id)}>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t toggleDeleteDomainModal(row.original.id)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"DELETE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tasync function checkPinValue(data, e) {\n\t\t// check if pin has 4 digits (valid pin)\n\t\t// if true then save pin\n\t\tif (data.length == 4) {\n\t\t\tsetPinEntered(true);\n\t\t} else {\n\t\t\tsetPinEntered(false);\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tif (data.password) {\n\t\t\tif (data.password != data.confirmPassword) {\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(false, t(\"CONFIRM_PASSWORD_AND_PASSWORD_IS_NOT_TALLY\"))\n\t\t\t\t);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tif (!pinEntered && transactionPinNumber != \"\") {\n\t\t\t_dispatch(showMessage(false, t(\"INVALID_PIN_NUMBER\")));\n\t\t\treturn;\n\t\t}\n\n\t\tlet params = {\n\t\t\tusername: data.username,\n\t\t\t// password: data.password,\n\t\t\temail: data.email,\n\t\t\tphoneNumber: phone,\n\t\t\tuserFullName: data.fullName,\n\t\t\tcredit: data.credit != undefined ? data.credit : credit,\n\t\t\troleId: data.role,\n\t\t\ttimeZone: data.timeZone,\n\t\t\tuserStatus: data.status ? Status._ENABLED : Status._DISABLED,\n\t\t\ttransactionPinNumber: transactionPinNumber,\n\t\t};\n\n\t\tif (requiredPassword) {\n\t\t\tparams = {\n\t\t\t\t...params,\n\t\t\t\tpassword: data.password,\n\t\t\t};\n\t\t}\n\n\t\tif (Role._COMPANY != userRoleId) {\n\t\t\tparams[\"isDownline\"] = Status._ENABLED;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(userId)) {\n\t\t\tparams[\"id\"] = userId;\n\t\t}\n\n\t\tif (Role._SUPER_COMPANY == userRoleId) {\n\t\t\tparams[\"isCreateOrUpdateCompany\"] = true;\n\t\t}\n\n\t\tlet formBody = createFormBody(params);\n\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_ACCOUNT, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetUserId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tregister({ name: \"timeZone\" }, { required: \"PLEASE_ENTER_TIMEZONE\" });\n\t\tregister({ name: \"phone\" }, { required: \"PLEASE_ENTER_PHONE\" });\n\n\t\t//register(\n\t\t// { name: \"phone\" },\n\t\t// {\n\t\t// required: \"PLEASE_ENTER_PHONE\",\n\t\t// validate: {\n\t\t// exist: (value) => value != \"INVALID_PHONE\" || \"INVALID_PHONE\",\n\t\t// },\n\t\t// }\n\t\t//);\n\n\t\tsetRequiredConfirmPassword(\"PLEASE_ENTER_CONFIRM_PASSWORD\");\n\t\tsetRequiredPassword(\"PLEASE_ENTER_PASSWORD\");\n\t\tvar targetId = \"\";\n\n\t\tif (_location.state) {\n\t\t\tvar targetId = _location.state.id;\n\t\t\tsetUserId(_location.state.id);\n\t\t}\n\n\t\tif (props[\"viewOwnProfile\"]) {\n\t\t\ttargetId = loginUserId;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(targetId)) {\n\t\t\tsetRequiredConfirmPassword(false);\n\t\t\tsetRequiredPassword(false);\n\t\t\tvar apiUrl = ApiUrl._API_GET_ACCOUNT;\n\t\t\tapiUrl += \"?userId=\" + targetId;\n\n\t\t\tfetch(apiUrl, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tsetUsername(responseJson[ApiKey._API_DATA_KEY][\"username\"]);\n\t\t\t\t\t\tsetPhone(responseJson[ApiKey._API_DATA_KEY][\"phoneNumber\"]);\n\t\t\t\t\t\tsetFullName(responseJson[ApiKey._API_DATA_KEY][\"userFullName\"]);\n\t\t\t\t\t\tsetPassword(responseJson[ApiKey._API_DATA_KEY][\"password\"]);\n\t\t\t\t\t\tsetConfirmPassword(responseJson[ApiKey._API_DATA_KEY][\"password\"]);\n\t\t\t\t\t\tsetCredit(responseJson[ApiKey._API_DATA_KEY][\"credit\"]);\n\t\t\t\t\t\tsetEmail(responseJson[ApiKey._API_DATA_KEY][\"email\"]);\n\t\t\t\t\t\tsetUserId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][\"userStatus\"]);\n\t\t\t\t\t\tsetValue(\n\t\t\t\t\t\t\t\"timeZone\",\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"timeZone\"]\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetTimeZone(responseJson[ApiKey._API_DATA_KEY][\"timeZone\"]);\n\t\t\t\t\t\tsetValue(\n\t\t\t\t\t\t\t\"phone\",\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"phoneNumber\"]\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\tfetchUserDomains(targetId);\n\t\t}\n\t}, []);\n\n\t/// \n\t/// Author -\n\t/// \n\tconst fetchUserDomains = async (id) => {\n\t\tlet fetchUrl = ApiUrl._API_GET_USER_DOMAIN;\n\t\tfetchUrl += \"?UserId=\" + id;\n\t\tvar responseJson = await ApiEngine.get(fetchUrl);\n\t\tsetDomainList(responseJson[ApiKey._API_DATA_KEY]);\n\t};\n\tconst onMobileChange = (isValid, newNumber, countryData, fullNumber, ext) => {\n\t\tsetPhone(newNumber);\n\t\tlet formattedNumber = fullNumber.split(/[- ]+/).join(\"\").replace(\"+\", \"\");\n\n\t\tregister(\"phone\", {\n\t\t\tvalidate: (value) => {\n\t\t\t\tif (!isValid) {\n\t\t\t\t\treturn \"INVALID_PHONE\";\n\t\t\t\t} else {\n\t\t\t\t\tclearErrors(\"phone\");\n\t\t\t\t}\n\t\t\t},\n\t\t});\n\t\tif (isValid) {\n\t\t\tsetValue(\"phone\", formattedNumber);\n\t\t} else {\n\t\t\tvar isEmptyNumber = stringIsNullOrEmpty(formattedNumber);\n\t\t\tsetValue(\"phone\", isEmptyNumber ? \"\" : \"INVALID_PHONE\");\n\t\t}\n\n\t\ttrigger(\"phone\");\n\t};\n\tconst onChangePassword = (e) => {\n\t\tlet value = e.target.value;\n\t\tif (userId) {\n\t\t\tif (value) {\n\t\t\t\tsetRequiredConfirmPassword(\"PLEASE_ENTER_CONFIRM_PASSWORD\");\n\t\t\t\tsetRequiredPassword(\"PLEASE_ENTER_PASSWORD\");\n\t\t\t} else {\n\t\t\t\tsetRequiredConfirmPassword(false);\n\t\t\t\tsetRequiredPassword(false);\n\t\t\t}\n\t\t}\n\t};\n\n\tconst onChangeConfirmPassword = (e) => {\n\t\tlet value = e.target.value;\n\t\tif (userId) {\n\t\t\tif (value) {\n\t\t\t\tsetRequiredConfirmPassword(\"PLEASE_ENTER_CONFIRM_PASSWORD\");\n\t\t\t\tsetRequiredPassword(\"PLEASE_ENTER_PASSWORD\");\n\t\t\t} else {\n\t\t\t\tsetRequiredConfirmPassword(false);\n\t\t\t\tsetRequiredPassword(false);\n\t\t\t}\n\t\t}\n\t};\n\tconst onChangeDomainUrl = (e) => {\n\t\tlet value = e.target.value;\n\t\tif (value) {\n\t\t\tsetIsDomainValid(true);\n\t\t} else {\n\t\t\tsetIsDomainValid(false);\n\t\t}\n\t\tlet domainObject = {\n\t\t\t...selectedDomain,\n\t\t\tdomainUrl: value,\n\t\t};\n\t\tsetSelectedDomain(domainObject);\n\t};\n\tconst toggleDomainModal = async (id = null) => {\n\t\tif (id) {\n\t\t\tlet fetchUrl = ApiUrl._API_GET_USER_DOMAIN_ID;\n\t\t\tfetchUrl += \"?Id=\" + id;\n\t\t\tvar responseJson = await ApiEngine.get(fetchUrl);\n\t\t\tsetSelectedDomain(responseJson[ApiKey._API_DATA_KEY]);\n\t\t} else {\n\t\t\tsetSelectedDomain(null);\n\t\t}\n\t\tsetIsToggleDomainModal(!isToggleDomainModal);\n\t};\n\tconst toggleDeleteDomainModal = async (id = null) => {\n\t\tif (id) {\n\t\t\tlet fetchUrl = ApiUrl._API_GET_USER_DOMAIN_ID;\n\t\t\tfetchUrl += \"?Id=\" + id;\n\t\t\tvar responseJson = await ApiEngine.get(fetchUrl);\n\t\t\tsetSelectedDomain(responseJson[ApiKey._API_DATA_KEY]);\n\t\t} else {\n\t\t\tsetSelectedDomain(null);\n\t\t}\n\t\tsetIsToggleDeleteDomainModal(!isToggleDeleteDomainModal);\n\t};\n\tconst updateOrCreateDomain = async () => {\n\t\tif (selectedDomain?.domainUrl) {\n\t\t\tlet params = {\n\t\t\t\tid: selectedDomain.id ? selectedDomain.id : null,\n\t\t\t\tdomainUrl: selectedDomain.domainUrl,\n\t\t\t\tuserId: userId,\n\t\t\t};\n\t\t\tlet formBody = createFormBody(params);\n\t\t\tlet responseJson = await ApiEngine.post(\n\t\t\t\tApiUrl._API_UPDATE_OR_CREATE_USER_DOMAIN,\n\t\t\t\tformBody\n\t\t\t);\n\t\t\tif (userId) {\n\t\t\t\tfetchUserDomains(userId);\n\t\t\t}\n\t\t\tsetIsToggleDomainModal(false);\n\t\t\t_dispatch(\n\t\t\t\tshowMessage(\n\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t)\n\t\t\t);\n\t\t} else {\n\t\t\tsetIsDomainValid(false);\n\t\t}\n\t};\n\tconst deleteDomain = async () => {\n\t\tlet params = {\n\t\t\tid: selectedDomain.id,\n\t\t};\n\n\t\tlet formBody = createFormBody(params);\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_REMOVE_USER_DOMAIN,\n\t\t\tformBody\n\t\t);\n\n\t\tfetchUserDomains(userId);\n\t\tsetIsToggleDeleteDomainModal(false);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"COMPANY_DETAIL\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.username && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.username.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.fullName && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.fullName.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn placeholder.split(/[- ]+/).join(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\tdefaultValue={phone}\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={phone}\n\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.phone && formState.submitCount > 0 && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.phone.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.email && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.email.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.password && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.password.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.confirmPassword && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.confirmPassword.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{userRoleId == Role._SUPER_COMPANY && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.credit && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.credit.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t option.value == timeZone\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? _TIMEZONE_OPTION.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == timeZone\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={_TIMEZONE_OPTION.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == timeZone\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"timeZone\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetTimeZone(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tclearErrors(\"timeZone\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tregister({ name: \"timeZone\" }, { required: false });\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.timeZone && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.timeZone.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{userRoleId == Role._SUPER_COMPANY && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setStatus(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetTransactionPinNumber(value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tcheckPinValue(value, index);\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\tinputMode=\"numeric\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tinputStyle={{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tborder: \"0\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tmargin: \"0px 10px\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\twidth: \"40px\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\theight: \"40px\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tbackgroundColor: \"transparent\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tborderBottom: \"2px solid #002e6c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\tinputFocusStyle={{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tborderBottom: \"2px solid #FFC159\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\tregexCriteria={/^[ 0-9_@./#&+-]*$/}\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.transactionPinNumber && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.transactionPinNumber.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\n\t\t\t{userRoleId == Role._SUPER_COMPANY && (\n\t\t\t\t<>\n\t\t\t\t\t{!stringIsNullOrEmpty(userId) && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t(\"DOMAIN_URL\")}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t toggleDomainModal()}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAdd Domain\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t toggleDomainModal()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t toggleDomainModal()}>\n\t\t\t\t\t\t\t\t\t{selectedDomain ? \"Edit Domain\" : \"Add Domain\"}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{isDomainValid ? (\n\t\t\t\t\t\t\t\t\t\t\"\"\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tCannot be empty\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tupdateOrCreateDomain();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tSave\n\t\t\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t toggleDeleteDomainModal()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t toggleDeleteDomainModal()}>\n\t\t\t\t\t\t\t\t\tDelete Domain\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{t(\"ARE_YOU_SURE_DELETE\")} {selectedDomain?.domainUrl}?\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tdeleteDomain();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tDelete\n\t\t\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t\t\t toggleDeleteDomainModal()}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tCancel\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t)}\n\t\t
    \n\t);\n};\n\nexport default CompanyDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n WebUrl,\n ApiUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageRole = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [bankData, setBankData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"roleName\",\n },\n {\n Header: \"DESCRIPTION\",\n accessor: \"description\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return (\n \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n \n );\n },\n minWidth: 100,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._ROLE_CONTROL_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_ROLE,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USERS_ROLE, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"ROLES\")}\n {checkIfPermissionExist(\n AccessRight._SUB_ACCOUNT_CONTROL_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageRole;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { useDispatch } from \"react-redux\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\n\n/// \n/// Author : -\n/// \n\nconst EditRole = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors } = useForm();\n\n const [name, setName] = useState(\"\");\n const [description, setDescription] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [accessRightOption, setAccessRightOption] = useState({});\n const [accessNumbering, setAccessNumbering] = useState({});\n const [roleId, setRoleId] = useState(\"\");\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n var apiUrl = ApiUrl._API_GET_ROLE_ACCESS_DATA;\n var accessOption = {};\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n accessOption = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n setAccessNumbering(responseJson[ApiKey._API_DATA_KEY][\"numberingPair\"]);\n }\n });\n\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_ROLE_BY_ID;\n apiUrl += \"?roleId=\" + _location.state[\"id\"];\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n Object.keys(accessOption).map((key, value) => { \n Object.keys(accessOption[key]).map((innerKey, innerValue) => {\n accessOption[key][innerKey] =\n responseJson[ApiKey._API_DATA_KEY][\n innerKey[0].toLowerCase() + innerKey[1].toLowerCase() +\n innerKey.substr(2).replace(/\\s+/g, \"\")\n ];\n });\n });\n setName(responseJson[ApiKey._API_DATA_KEY][\"roleName\"]);\n setDescription(responseJson[ApiKey._API_DATA_KEY][\"description\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setRoleId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n }\n setAccessRightOption(accessOption);\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n roleName: data.roleName,\n description: data.description,\n status: data.status,\n };\n\n if (!stringIsNullOrEmpty(roleId)) {\n params[\"id\"] = roleId;\n }\n\n Object.keys(data).map((key, value) => {\n params[key] = data[key];\n });\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_ROLE, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setRoleId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n return (\n
    \n

    \n {roleId ? t(\"EDIT_ROLE\") : t(\"ADD_NEW_ROLE\")}\n \n

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

    {t(\"ROLE_INFORMATION\")}

    \n
    \n
    \n
    \n \n \n {errors.roleName && (\n
    \n {t(errors.roleName.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.description && (\n
    \n {t(errors.description.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n

    {t(\"FUNCTION_LIST\")}

    \n
    \n {Object.keys(accessRightOption).map((key, value) => {\n return (\n
    \n
    \n
    \n {t(key.toUpperCase())}\n
    \n
    \n
    \n \n \n \n \n \n \n \n \n {Object.keys(accessRightOption[key]).map(\n (innerKey, innerValue) => {\n //var accessString =\n // \"00\" +\n // accessRightOption[key][\n // innerKey\n // ].toString(2);\n //accessString = accessString.substr(\n // accessString.length - 2\n //);\n console.log(accessNumbering)\n console.log(innerKey)\n console.log(accessNumbering[innerKey])\n var canWrite = checkIfPermissionExist(\n accessNumbering[innerKey],\n true\n );\n var canRead = checkIfPermissionExist(\n accessNumbering[innerKey],\n false\n );\n\n return (\n \n \n \n \n );\n }\n )}\n \n
    \n {t(\"PERMISSION\")}\n \n {t(\"ACCESS_LEVEL\")}\n
    \n {\" \"}\n {t(\n innerKey\n .toUpperCase()\n .replace(/ /g, \"_\")\n )}\n \n \n {canWrite && canRead && (\n \n )}\n {canWrite && (\n \n )}\n {canRead && (\n \n )}\n \n \n
    \n
    \n
    \n
    \n
    \n );\n })}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(EditRole);","import React from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useForm } from \"react-hook-form\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ChangePassword = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors } = useForm();\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n if (data.password != data.confirmPassword) {\n _dispatch(\n showMessage(false, t(\"CONFIRM_PASSWORD_AND_PASSWORD_IS_NOT_TALLY\"))\n );\n return;\n }\n\n let params = {\n password: data.password,\n };\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_UPDATE_PASSWORD, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n return (\n
    \n

    {t(\"CHANGE_PASSWORD\")}

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.password && (\n
    \n {t(errors.password.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.confirmPassword && (\n
    \n {t(errors.confirmPassword.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default ChangePassword;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useForm } from \"react-hook-form\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport PinInput from 'react-pin-input';\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \n\nconst ChangePinNumber = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors } = useForm();\n\n const [oldTransactionPinNumber, setOldTransactionPinNumber] = useState(\"\");\n const [transactionPinNumber, setTransactionPinNumber] = useState(\"\");\n const [confirmTransactionPinNumber, setConfirmTransactionPinNumber] = useState(\"\");\n const [oldPinEntered, setOldPinEntered] = useState(false);\n const [pinEntered, setPinEntered] = useState(false);\n const [confirmPinEntered, setConfirmPinEntered] = useState(false);\n\n /// \n /// Author : -\n /// \n async function checkPinValue(data, e) {\n // check if pin has 4 digits (valid pin)\n // if true then save pin\n if (data.length == 4) {\n setPinEntered(true);\n }\n else {\n setPinEntered(false);\n }\n\n }\n\n /// \n /// Author : -\n /// \n async function checkOldPinValue(data, e) {\n // check if pin has 4 digits (valid pin)\n // if true then save pin\n if (data.length == 4) {\n setOldPinEntered(true);\n }\n else {\n setOldPinEntered(false);\n }\n\n }\n\n /// \n /// Author : -\n /// \n async function checkConfirmPinValue(data, e) {\n // check if pin has 4 digits (valid pin)\n // if true then save pin\n if (data.length == 4) {\n setConfirmPinEntered(true);\n }\n else {\n setConfirmPinEntered(false);\n }\n\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n if (!pinEntered || !oldPinEntered || !confirmPinEntered) {\n _dispatch(\n showMessage(false, t(\"INVALID_PIN_NUMBER\"))\n );\n return;\n }\n\n if (transactionPinNumber != confirmTransactionPinNumber) {\n _dispatch(\n showMessage(false, t(\"CONFIRM_PIN_NUMBER_AND_PIN_NUMBER_IS_NOT_TALLY\"))\n );\n return;\n }\n\n // verify old pin\n let params = { transactionPinNumber: oldTransactionPinNumber };\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(ApiUrl._API_VERIFY_USER_TRANSACTION_PIN_NUMBER, formBody);\n if (!responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(showMessage(false, t(\"INCORRECT_OLD_PIN_NUMBER\")));\n return;\n }\n\n // update new pin\n let params2 = {\n transactionPinNumber: transactionPinNumber,\n };\n\n let formBody2 = createFormBody(params2);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_UPDATE_PIN_NUMBER, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody2,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n return (\n
    \n

    {t(\"CHANGE_PIN_NUMBER\")}

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n {\n setOldTransactionPinNumber(value);\n checkOldPinValue(value, index);\n }}\n inputMode=\"numeric\"\n inputStyle={{ border: \"0\", margin: \"0px 10px\", width: \"40px\", height: \"40px\", backgroundColor: \"transparent\", borderBottom: \"2px solid #002e6c\" }}\n inputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\n regexCriteria={/^[ 0-9_@./#&+-]*$/}\n />\n {errors.transactionPinNumber && (\n
    \n {t(errors.transactionPinNumber.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n {\n setTransactionPinNumber(value);\n checkPinValue(value, index);\n }}\n inputMode=\"numeric\"\n inputStyle={{ border: \"0\", margin: \"0px 10px\", width: \"40px\", height: \"40px\", backgroundColor: \"transparent\", borderBottom: \"2px solid #002e6c\" }}\n inputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\n regexCriteria={/^[ 0-9_@./#&+-]*$/}\n />\n {errors.transactionPinNumber && (\n
    \n {t(errors.transactionPinNumber.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n {\n setConfirmTransactionPinNumber(value);\n checkConfirmPinValue(value, index);\n }}\n inputMode=\"numeric\"\n inputStyle={{ border: \"0\", margin: \"0px 10px\", width: \"40px\", height: \"40px\", backgroundColor: \"transparent\", borderBottom: \"2px solid #002e6c\" }}\n inputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\n regexCriteria={/^[ 0-9_@./#&+-]*$/}\n />\n {errors.transactionPinNumber && (\n
    \n {t(errors.transactionPinNumber.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default ChangePinNumber;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport {\n Panel,\n PanelHeader,\n PanelBody,\n} from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiKey,\n ApiUrl,\n WebUrl,\n AccessRight,\n LanguageKey,\n Role,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { useSelector } from \"react-redux\";\n\n/// \n/// Author : -\n/// \n\nconst ManageSubAccount = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [accountData, setAccountData] = useState([]);\n const _userData = useSelector((state) => state.authState.userData);\n const isCompany = _userData.userRoleId === Role._SUPER_COMPANY || _userData.userRoleId === Role._COMPANY;\n const isUserAllowed = _userData.userRoleId === Role._SUPERVISOR;\n\n let _tableColumns = [\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n },\n {\n Header: \"FULLNAME\",\n accessor: \"userFullName\",\n },\n {\n Header: \"ROLES\",\n accessor: \"roleName\",\n },\n {\n Header: \"STATUS\",\n accessor: \"userStatus\",\n Cell: ({ row }) => {\n return (\n \n {row.original.userStatus == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n \n );\n },\n minWidth: 100,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._SUB_ACCOUNT_CONTROL_PERMISSION,\n true\n ) && (isCompany || isUserAllowed) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_SUB_ACCOUNT,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_SUB_ACCOUNT, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setAccountData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_SUB_ACCOUNT\")}\n {checkIfPermissionExist(\n AccessRight._SUB_ACCOUNT_CONTROL_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageSubAccount;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport { useForm } from \"react-hook-form\";\nimport { ApiKey, ApiUrl, Status, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport IntlTelInput from \"react-intl-tel-input\";\nimport \"react-intl-tel-input/dist/main.css\";\nimport { fetch } from \"whatwg-fetch\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport PinInput from 'react-pin-input';\n\n/// \n/// Author : -\n/// \n\nconst CreateSubAccount = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _location = useLocation();\n const _dispatch = useDispatch();\n const _history = useHistory();\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n trigger,\n formState,\n setValue,\n } = useForm();\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n const [roleOptions, setRoleOptions] = useState([]);\n\n const [status, setStatus] = useState(true);\n const [username, setUsername] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [confirmPassword, setConfirmPassword] = useState(\"\");\n const [fullName, setFullName] = useState(\"\");\n const [phone, setPhone] = useState(\"\");\n const [email, setEmail] = useState(\"\");\n const [userId, setUserId] = useState(\"\");\n const [timeZone, setTimeZone] = useState(7);\n const [transactionPinNumber, setTransactionPinNumber] = useState(\"\");\n const [pinEntered, setPinEntered] = useState(false);\n\n const [roleId, setRoleId] = useState(\"\");\n const [restrictedIP, setRestrictedIP] = useState(\"\");\n\n var _TIMEZONE_OPTION = [\n { label: \"(GMT-11:00) Pago Pago\", value: -11 },\n { label: \"(GMT-10:00) Pacific/Honolulu\", value: -10 },\n { label: \"(GMT-08:00) America/Los_Angeles\", value: -8 },\n { label: \"(GMT-07:00) America/Denver\", value: -7 },\n { label: \"(GMT-06:00) America/Chicago\", value: -6 },\n { label: \"(GMT-05:00) America/New_York\", value: -5 },\n { label: \"(GMT-04:00) America/Guyana\", value: -4 },\n { label: \"(GMT-03:00) America/Santiago\", value: -3 },\n { label: \"(GMT-02:00) America/Sao_Paulo\", value: -2 },\n { label: \"(GMT-01:00) Atlantic/Azores\", value: -1 },\n { label: \"(GMT+00:00) Europe/London\", value: 0 },\n { label: \"(GMT+01:00) Europe/Berlin\", value: 1 },\n { label: \"(GMT+02:00) Europe/Athens\", value: 2 },\n { label: \"(GMT+03:00) Europe/Istanbul\", value: 3 },\n { label: \"(GMT+04:00) Europe/Samara\", value: 4 },\n { label: \"(GMT+05:00) Asia/Karachi\", value: 5 },\n { label: \"(GMT+06:00) Asia/Dhaka\", value: 6 },\n { label: \"(GMT+07:00) Asia/Bangkok\", value: 7 },\n { label: \"(GMT+08:00) Asia/Singapore\", value: 8 },\n { label: \"(GMT+09:00) Asia/Seoul\", value: 9 },\n { label: \"(GMT+10:00) Asia/Magadan\", value: 10 },\n { label: \"(GMT+11:00) Australia/Sydney\", value: 11 },\n { label: \"(GMT+12:00) Pacific/Majuro\", value: 12 },\n { label: \"(GMT+13:00) Pacific/Auckland\", value: 13 },\n { label: \"(GMT+14:00) Pacific/Apia\", value: 14 },\n ];\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n if (data.password != data.confirmPassword) {\n _dispatch(\n showMessage(false, t(\"CONFIRM_PASSWORD_AND_PASSWORD_IS_NOT_TALLY\"))\n );\n return;\n }\n if (!pinEntered && transactionPinNumber != \"\") {\n _dispatch(\n showMessage(false, t(\"INVALID_PIN_NUMBER\"))\n );\n return;\n }\n\n let params = {\n username: data.username,\n password: data.password,\n email: data.email,\n phoneNumber: stringIsNullOrEmpty(data.phone) ? \"\" : data.phone,\n userFullName: data.fullName,\n roleId: roleId,\n userStatus: data.status ? Status._ENABLED : Status._DISABLED,\n timeZone: timeZone,\n restrictedIP: !stringIsNullOrEmpty(data.restrictedIP) ? data.restrictedIP : '',\n transactionPinNumber: transactionPinNumber\n };\n\n if (!stringIsNullOrEmpty(userId)) {\n params[\"id\"] = userId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_ACCOUNT, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setUserId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"roleId\" }, { required: \"PLEASE_SELECT_ROLE\" });\n //register(\n // { name: \"phone\" },\n // {\n // required: \"PLEASE_ENTER_PHONE\",\n // validate: {\n // exist: (value) => value != \"INVALID_PHONE\" || \"INVALID_PHONE\",\n // },\n // }\n //);\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n var apiUrl = ApiUrl._API_GET_USERS_ROLE;\n if (_location.state) {\n await fetch(ApiUrl._API_GET_ACCOUNT + \"?userId=\" + _location.state[\"id\"], {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setStatus(\n responseJson[ApiKey._API_DATA_KEY][\"userStatus\"] ==\n Status._ENABLED\n );\n setUsername(responseJson[ApiKey._API_DATA_KEY][\"username\"]);\n setFullName(responseJson[ApiKey._API_DATA_KEY][\"userFullName\"]);\n setPhone(responseJson[ApiKey._API_DATA_KEY][\"phoneNumber\"]);\n setTimeZone(responseJson[ApiKey._API_DATA_KEY][\"timeZone\"]);\n setValue(\n \"timeZone\",\n responseJson[ApiKey._API_DATA_KEY][\"timeZone\"]\n );\n setValue(\n \"phone\",\n responseJson[ApiKey._API_DATA_KEY][\"phoneNumber\"]\n );\n setEmail(responseJson[ApiKey._API_DATA_KEY][\"email\"]);\n setUserId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setRoleId(responseJson[ApiKey._API_DATA_KEY][\"roleId\"]);\n setRestrictedIP(responseJson[ApiKey._API_DATA_KEY][\"restrictedIP\"]);\n unregister(\"roleId\");\n }\n });\n }\n\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const roleList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (role) {\n roleList.push({ label: role.roleName, value: role.id });\n });\n\n setRoleOptions(roleList);\n }\n });\n }\n\n /// \n /// Author -\n /// \n const onMobileChange = (isValid, newNumber, countryData, fullNumber, ext) => {\n setPhone(newNumber);\n let formattedNumber = fullNumber.split(/[- ]+/).join(\"\").replace(\"+\", \"\");\n\n if (isValid) {\n setValue(\"phone\", formattedNumber);\n } else {\n var isEmptyNumber = stringIsNullOrEmpty(formattedNumber);\n setValue(\"phone\", isEmptyNumber ? \"\" : \"INVALID_PHONE\");\n }\n\n trigger(\"phone\");\n };\n\n async function checkPinValue(data, e) {\n // check if pin has 4 digits (valid pin)\n // if true then save pin\n if (data.length == 4) {\n setPinEntered(true);\n }\n else {\n setPinEntered(false);\n }\n /*await delay(60000)*/\n\n }\n\n return (\n
    \n

    \n {t(\"SUB_ACCOUNT_DETAIL\")}\n \n

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

    {t(\"PERSONAL_INFORMATION\")}

    \n
    \n
    \n
    \n \n \n {errors.username && (\n
    \n {t(errors.username.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.password && (\n
    \n {t(errors.password.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.confirmPassword && (\n
    \n {t(errors.confirmPassword.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.fullName && (\n
    \n {t(errors.fullName.message)}\n
    \n )}\n
    \n
    \n {/*
    \n
    \n \n {\n return placeholder.split(/[- ]+/).join(\"\");\n }}\n defaultValue={phone}\n value={phone}\n ref={register}\n />\n {errors.phone && formState.submitCount > 0 && (\n
    \n {t(errors.phone.message)}\n
    \n )}\n
    \n
    */}\n
    \n
    \n \n \n {errors.email && (\n
    \n {t(errors.email.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.restrictedIP && (\n
    \n {t(errors.restrictedIP.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n option.value == roleId\n )[0] !== undefined\n ? roleOptions.filter(\n (option) => option.value == roleId\n )[0].label\n : \"\"\n }\n value={roleOptions.filter(\n (option) => option.value == roleId\n )}\n onChange={(e) => {\n unregister(\"roleId\");\n setRoleId(e.value);\n }}\n />\n {errors.roleId && (\n
    \n {t(errors.roleId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n option.value == timeZone\n )[0] !== undefined\n ? _TIMEZONE_OPTION.filter(\n (option) => option.value == timeZone\n )[0].label\n : \"\"\n }\n value={_TIMEZONE_OPTION.filter(\n (option) => option.value == timeZone\n )}\n onChange={(e) => {\n setValue(\"timeZone\", e.value);\n setTimeZone(e.value);\n }}\n />\n {errors.timeZone && (\n
    \n {t(errors.timeZone.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n \n {\n setTransactionPinNumber(value);\n checkPinValue(value, index);\n }}\n inputMode=\"numeric\"\n inputStyle={{ border: \"0\", margin: \"0px 10px\", width: \"40px\", height: \"40px\", backgroundColor: \"transparent\", borderBottom: \"2px solid #002e6c\" }}\n inputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\n regexCriteria={/^[ 0-9_@./#&+-]*$/}\n />\n {/*errors.transactionPinNumber && (\n
    \n {t(errors.transactionPinNumber.message)}\n
    \n )*/}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default CreateSubAccount;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { useLocation } from \"react-router-dom\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport { ApiUrl, ApiKey, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst CompanyProductMaintenance = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const [productData, setProductData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"PRODUCT_NAME\",\n accessor: \"productName\",\n style: {\n whiteSpace: \"unset\",\n wordBreak: \"break-word\",\n },\n },\n {\n Header: \"SHORT_CODE\",\n accessor: \"productCode\",\n },\n {\n Header: \"STATUS\",\n accessor: \"assigned\",\n Cell: ({ row }) => (\n
    \n {row.original.assigned == 1 ? (\n \n {t(\"ENABLED\")}\n \n ) : (\n \n {t(\"DISABLED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n updateProductAssignment(row.original);\n }}\n >\n {row.original.assigned ? t(\"DEACTIVATE\") : t(\"ACTIVATE\")}\n \n {row.original.assigned && (\n {\n navigateTo(\n _history,\n WebUrl._URL_COMPANY_PRODUCT_API_INFO,\n row.original\n );\n }}\n >\n {t(\"EDIT_API_INFO\")}\n \n )}\n {row.original.assigned && (\n {\n navigateTo(\n _history,\n WebUrl._URL_COMPANY_PRODUCT_ACCOUNT_INFO,\n row.original\n );\n }}\n >\n \n {t(\"EDIT_ACCOUNT_INFORMATION\")}\n \n \n )}\n {row.original.assigned && (\n syncProductData(row.original)}>\n {t(\"SYNC_PRODUCT\")}\n \n )}\n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n GetAssignmentData();\n }, []);\n\n /// \n /// Author : -\n /// \n function GetAssignmentData() {\n fetch(\n ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA +\n \"?companyId=\" +\n _location.state[\"id\"],\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n function updateProductAssignment(data) {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_UPDATE_USER_ASSIGNMENT +\n \"?userId=\" +\n _location.state[\"id\"] +\n \"&productId=\" +\n data[\"productId\"] +\n \"&enable=\" +\n !data[\"assigned\"] +\n \"&assignment=true\",\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n GetAssignmentData();\n }\n });\n }\n\n /// \n /// Author : -\n /// \n function syncProductData(data) {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_SYNC_PRODUCT_DATA +\n \"?userId=\" +\n _location.state[\"id\"] +\n \"&productId=\" +\n data[\"productId\"],\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n }\n\n return (\n
    \n

    \n {t(\"COMPANY_PRODUCT_MAINTENANCE\")}{\" \"}\n \n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default withRouter(CompanyProductMaintenance);\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { useDispatch } from \"react-redux\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst CompanyProductApiInfo = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const META_COUNT = 8;\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors } = useForm();\n\n const [productId, setProductId] = useState(\"\");\n const [productName, setProductName] = useState(\"\");\n const [productCode, setProductCode] = useState(\"\");\n const [backUrl, setBackurl] = useState(\"\");\n const [reportUrl, setReportUrl] = useState(\"\");\n const [clientCode, setClientCode] = useState(\"\");\n const [clientSecret, setClientSecret] = useState(\"\");\n\n const [logoImage, setLogoImage] = useState();\n const [apiKeyOption, setApiKeyOption] = useState([]);\n\n const [apiData, setApiData] = useState([]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n setProductId(_location.state[\"product\"][\"productId\"]);\n setProductName(_location.state[\"product\"][\"productName\"]);\n setProductCode(_location.state[\"product\"][\"productCode\"]);\n setClientCode(_location.state[\"product\"][\"clientCode\"]);\n setClientSecret(_location.state[\"product\"][\"clientSecret\"]);\n setBackurl(_location.state[\"product\"][\"backUrl\"]);\n setReportUrl(_location.state[\"product\"][\"reportUrl\"]);\n\n if (!stringIsNullOrEmpty(_location.state[\"product\"][\"productImage\"])) {\n setLogoImage(_location.state[\"product\"][\"productImage\"]);\n }\n updateApiMeta();\n }, []);\n\n /// \n /// Author : -\n /// \n async function updateApiMeta() {\n await fetch(\n ApiUrl._API_GET_ACCOUNT_PRODUCT_META +\n \"?accountProductId=\" +\n _location.state[\"id\"],\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n var newData = [];\n for (var i = 0; i < META_COUNT; i++) {\n if (responseJson[ApiKey._API_DATA_KEY].length > i) {\n newData[i] = {\n name: \"Parameter \" + (i + 1),\n key: responseJson[ApiKey._API_DATA_KEY][i][\"metaData\"],\n value: responseJson[ApiKey._API_DATA_KEY][i][\"metaTypeId\"],\n };\n } else {\n newData[i] = {\n name: \"Parameter \" + (i + 1),\n key: \"\",\n value: \"\",\n };\n }\n }\n\n //this is done intentionally to force refresh on select\n setApiData([]);\n setApiData(newData);\n }\n });\n\n await fetch(ApiUrl._API_GET_API_KEY_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setApiKeyOption(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n accountProductId: _location.state[\"id\"],\n };\n\n Object.keys(data).map((key, value) => {\n params[key] = data[key];\n });\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_UPDATE_ACCOUNT_PRODUCT_META, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n e.target.reset();\n updateApiMeta();\n }\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n return (\n
    \n

    \n {productName ? t(\"EDIT_PRODUCT_API_INFO\") : t(\"ADD_PRODUCT_API_INFO\")}\n \n

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

    {t(\"PRODUCT_INFO\")}

    \n
    \n
    \n
    \n \n \n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\"READONLY_LOGO\")}\n

    \n {!stringIsNullOrEmpty(logoImage) && (\n \n )}\n
    \n \n )}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n\n
    \n
    \n \n \n
    \n
    \n\n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n

    {t(\"API_INFORMATION\")}

    \n
    \n
    \n \n \n \n \n \n \n \n \n \n {Object.keys(apiData).map((key, value) => {\n return (\n \n \n \n \n \n );\n })}\n \n
    {t(\"PARAMETER\")}{t(\"DATA\")}\n {t(\"METADATA\")}/{t(\"REMARK\")}\n
    {apiData[key].name}\n \n \n \n {Object.keys(apiKeyOption).map(\n (innerKey, innerValue) => {\n return (\n \n {apiKeyOption[innerKey][\"name\"]}\n \n );\n }\n )}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n );\n};\n\nexport default withRouter(CompanyProductApiInfo);\n","import React, { useState, useEffect, useMemo } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useTranslation } from \"react-i18next\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \n\nconst CompanyProductAccountInfo = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors, setValue, watch } = useForm();\n const [fightPercent, setFightPercent] = useState(\"\");\n const [hotGameCount, setHotGameCount] = useState(\"\");\n const [accountProductId, setAccountProductId] = useState(\"\");\n const [useProxy, setUseProxy] = useState(false);\n const [useProxyAuthentication, setUseProxyAuthentication] = useState(false);\n const [proxyHost, setProxyHost] = useState(\"\");\n const [proxyPort, setProxyPort] = useState(0);\n const [proxyUsername, setProxyUsername] = useState(\"\");\n const [proxyPassword, setProxyPassword] = useState(\"\");\n const [passwordVisible, setPasswordVisible] = useState(false);\n const [isNetWin, setIsNetWin] = useState(false);\n const [maximumBonus, setMaximumBonus] = useState(0);\n const [maximumCommission, setMaximumCommission] = useState(0);\n const [bonus, setBonus] = useState();\n const [rank, setRank] = useState();\n const [commission, setCommission] = useState();\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [accountProduct, setAccountProduct] = useState([]);\n const [playerComm, setPlayerComm] = useState(0);\n const [referrerComm, setReferrerCom] = useState(0);\n const [referrerUplineComm, setReferrerUplineComm] = useState(0);\n\n const _MIN_PORT_RANGE = 0;\n const _MAX_PORT_RANGE = 65535;\n const _PASSWORD_ICON = {\n position: \"absolute\",\n top: \"37.5px\",\n right: \"20px\",\n cursor: \"pointer\",\n };\n\n /// \n /// Author : -\n /// \n const generateFightOptions = () => {\n let options = [];\n for (var i = 100; i >= 0; i--) {\n options.push();\n }\n return options;\n };\n\n const _fightOptions = useMemo(() => generateFightOptions(), []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_ASSIGNMENT_DETAIL;\n apiUrl += \"?accountProductId=\" + _location.state.id;\n let responseJson = await ApiEngine.get(apiUrl);\n console.log(responseJson[ApiKey._API_DATA_KEY])\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setAccountProduct(responseJson[ApiKey._API_DATA_KEY]);\n setAccountProductId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setHotGameCount(responseJson[ApiKey._API_DATA_KEY][\"hotGameCount\"]);\n setFightPercent(responseJson[ApiKey._API_DATA_KEY][\"fightPercent\"]);\n setUseProxy(responseJson[ApiKey._API_DATA_KEY][\"useProxy\"]);\n setUseProxyAuthentication(\n responseJson[ApiKey._API_DATA_KEY][\"useProxyAuthentication\"]\n );\n setProxyHost(responseJson[ApiKey._API_DATA_KEY][\"proxyHost\"]);\n setProxyPort(responseJson[ApiKey._API_DATA_KEY][\"proxyPort\"]);\n setProxyUsername(responseJson[ApiKey._API_DATA_KEY][\"proxyUsername\"]);\n setProxyPassword(responseJson[ApiKey._API_DATA_KEY][\"proxyPassword\"]);\n setIsNetWin(responseJson[ApiKey._API_DATA_KEY][\"isNetWinForTurnover\"]);\n setBonus(responseJson[ApiKey._API_DATA_KEY][\"bonus\"]);\n setRank(responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setCommission(responseJson[ApiKey._API_DATA_KEY][\"commission\"]);\n setValue(\"bonus\", responseJson[ApiKey._API_DATA_KEY][\"bonus\"]);\n setValue(\"rank\", responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setValue(\n \"commission\",\n responseJson[ApiKey._API_DATA_KEY][\"commission\"]\n );\n setMaximumBonus(responseJson[ApiKey._API_DATA_KEY][\"product\"][\"bonus\"]);\n setMaximumCommission(\n responseJson[ApiKey._API_DATA_KEY][\"product\"][\"commission\"]\n );\n setPlayerComm(responseJson[ApiKey._API_DATA_KEY][\"playerComm\"]);\n setReferrerCom(responseJson[ApiKey._API_DATA_KEY][\"referrerComm\"]);\n setReferrerUplineComm(responseJson[ApiKey._API_DATA_KEY][\"referrerUplineComm\"])\n }\n }\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n fightPercent: data.fightPercent,\n hotGameCount: data.hotGameCount,\n accountProductId: _location.state[\"id\"],\n useProxy: data.useProxy,\n proxyHost: data.proxyHost,\n proxyPort: data.proxyPort,\n useProxyAuthentication: data.useProxyAuthentication,\n proxyUsername: data.proxyUsername,\n proxyPassword: data.proxyPassword,\n isNetWinForTurnover: isNetWin,\n bonus: data.bonus,\n rank: data.rank,\n commission: data.commission,\n playerComm: data.playerComm,\n referrerComm: data.referrerComm,\n referrerUplineComm: data.referrerUplineComm\n };\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_UPDATE_USER_ASSIGNMENT_DETAIL,\n formBody\n );\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBonus(watch(\"bonus\"));\n setCommission(watch(\"commission\"));\n }\n };\n\n /// \n /// Author : -\n /// \n function preSubmit() {\n if (bonus != watch(\"bonus\") || commission != watch(\"commission\")) {\n setShowConfirmation(true);\n } else {\n handleSubmit(submitForm)();\n }\n }\n\n return (\n
    \n {showConfirmation && (\n {\n setShowConfirmation(false);\n handleSubmit(submitForm)();\n }}\n onCancel={() => {\n setShowConfirmation(false);\n }}\n >\n )}\n

    \n {t(\"EDIT_PRODUCT_ACCOUNT_INFORMATION\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n \n setFightPercent(e.target.value)}\n value={fightPercent}\n >\n {_fightOptions}\n \n
    \n
    \n \n \n {errors.hotGameCount && (\n
    \n {t(errors.hotGameCount.message)}\n
    \n )}\n
    \n
    \n \n
    \n setIsNetWin(e.target.checked)}\n value={false}\n checked={isNetWin}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.commission && (\n
    \n {t(errors.commission.message, {\n value: maximumCommission,\n })}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n \n {errors.bonus && (\n
    \n {t(errors.bonus.message, { value: maximumBonus })}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n \n {errors.rank && (\n
    \n {t(errors.rank.message)}\n
    \n )}\n
    \n
    \n
    \n\n
    \n
    \n
    \n

    {t(\"PROXY_SETTINGS\")}

    \n
    \n
    \n
    \n setUseProxy(e.target.checked)}\n value={useProxy}\n checked={useProxy}\n ref={register}\n />\n \n
    \n
    \n
    \n\n
    \n
    \n \n \n
    \n\n
    \n \n \n {errors.proxyPort && (\n
    \n {t(errors.proxyPort.message)}\n
    \n )}\n
    \n
    \n\n
    \n
    \n
    \n
    {t(\"USE_PROXY_AUTHENTICATION\")}
    \n
    \n
    \n
    \n \n setUseProxyAuthentication(e.target.checked)\n }\n value={useProxyAuthentication}\n checked={useProxyAuthentication}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n\n
    \n \n \n {\n setPasswordVisible(!passwordVisible);\n }}\n >\n
    \n
    \n\n
    \n\n
    \n
    \n
    \n \n
    \n setPlayerComm(e.target.value)}\n />\n {errors.commission && (\n
    \n {t(errors.commission.message, {\n value: maximumCommission,\n })}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n setReferrerCom(e.target.value)}\n />\n {errors.bonus && (\n
    \n {t(errors.bonus.message, { value: maximumBonus })}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n setReferrerUplineComm(e.target.value)}\n />\n {errors.bonus && (\n
    \n {t(errors.bonus.message, { value: maximumBonus })}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n preSubmit()}\n className=\"btn btn-primary\"\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(CompanyProductAccountInfo);\n","import React, { useState } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport { ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport DateTime from \"react-datetime\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\n\n/// \n/// Author : -\n/// \nconst ManageActivityLog = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const { register, handleSubmit, errors, setValue, control } = useForm();\n const [apiUrl, setApiUrl] = useState(\"\");\n\n let _operationLogTableColumns = [\n {\n Header: t(\"ID\"),\n accessor: \"id\",\n disableSortBy: true,\n },\n {\n Header: t(\"ACTION\"),\n accessor: \"actionKey\",\n disableSortBy: true,\n },\n {\n Header: t(\"VALUE\"),\n accessor: \"value\",\n disableSortBy: true,\n style: {\n wordBreak: \"break-word\",\n },\n minWidth: 300,\n },\n {\n Header: t(\"MODIFIED_DATE\"),\n accessor: \"createdTime\",\n disableSortBy: true,\n },\n {\n Header: t(\"MODIFIED_BY_USER\"),\n Cell: ({ row }) => {\n return !stringIsNullOrEmpty(row.original.createdByUser) ? (\n
    \n {row.original.userFullname}({row.original.createdByUser})\n
    \n ) : (\n
    -
    \n );\n },\n },\n {\n Header: t(\"MODIFIED_BY_MEMBER\"),\n Cell: ({ row }) => {\n return !stringIsNullOrEmpty(row.original.createdByMember) ? (\n
    \n {row.original.memberFullname} ({row.original.createdByMember})\n
    \n ) : (\n
    -
    \n );\n },\n },\n {\n Header: t(\"IP_ADDRESS\"),\n accessor: \"ipAddress\",\n disableSortBy: true,\n },\n ];\n\n /// \n /// Author : -\n /// \n async function submitForm(data) {\n setApiUrl(\n ApiUrl._API_GET_OPERATION_LOG +\n \"?ActionKey=\" +\n data.action +\n \"&Value=\" +\n data.value +\n \"&CreatedBy=\" +\n data.user +\n \"&CreatedByMember=\" +\n data.member +\n \"&CreatedTime=\" +\n (data.date ?? \"\") +\n \"&v=\" +\n Date.now()\n );\n }\n\n return (\n
    \n

    {t(\"ACTIVITY_LOG\")}

    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n {\n return (\n {\n if (e instanceof moment) {\n onChange(e.format(\"YYYY-MM-DD\"));\n } else {\n onChange(\"\");\n }\n }}\n />\n );\n }}\n />\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n );\n};\n\nexport default ManageActivityLog;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n TransactionType,\n PanelType,\n LanguageKey,\n BankingChannel,\n BonusMethodType,\n DEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody, createFormBody } from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\nimport PinInput from 'react-pin-input';\nimport { Modal, ModalHeader, ModalBody } from \"reactstrap\";\n\n/// \n/// Author : -\n/// \n\nconst Deposit = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n reset,\n setValue,\n trigger,\n } = useForm();\n const [bankAccountOption, setBankAccountOption] = useState([]);\n const [bankAccountId, setBankAccountId] = useState(\"\");\n const [memberOption, setMemberOption] = useState([]);\n const [memberId, setMemberId] = useState(\"\");\n const [bonusOption, setBonusOption] = useState([]);\n const [bonusId, setBonusId] = useState(\"\");\n const [minDep, setMinDep] = useState(0);\n const [maxDep, setMaxDep] = useState(0);\n\n const [fullScreen, setFullScreen] = useState(false);\n\n const [receiptFile, setReceiptFile] = useState([]);\n const [receiptImage, setReceiptImage] = useState();\n const [selectedMember, setSelectedMember] = useState();\n\n const [showPinEntry, setShowPinEntry] = useState(false);\n\n const [enteredDepositData, setEnteredDepositData] = useState({});\n const [enteredDepositE, setEnteredDepositE] = useState({});\n\n /// \n /// Author : -\n /// Used to set logo\n /// \n const imageDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setReceiptFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setReceiptImage(reader.result);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"memberId\" }, { required: \"PLEASE_SELECT_USER\" });\n register(\n { name: \"bankAccountId\" },\n { required: \"PLEASE_SELECT_BANK_ACCOUNT\" }\n );\n /// For The Size Difference of Modal And Page\n if (props.id) {\n setFullScreen(true);\n }\n init();\n initFormField();\n }, []);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (!stringIsNullOrEmpty(memberId)) {\n getUserBonus();\n }\n }, [memberId]);\n\n const getUserBonus = async () => {\n var userBonusApiUrl = ApiUrl._API_GET_USER_BONUS;\n userBonusApiUrl += \"?dayCheck=\" + true + \"&memberId=\" + memberId;\n await fetch(userBonusApiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bonusList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bonus) {\n bonusList.push({\n label:\n bonus.title +\n \" (\" +\n bonus.amount +\n (bonus.methodId == BonusMethodType._PERCENT ? \"%\" : \"\") +\n \")\",\n value: bonus.id,\n });\n });\n\n setBonusOption(bonusList);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n _dispatch(setBusy());\n await fetch(ApiUrl._API_GET_USER_BANK_ACCOUNT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankAccountList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bankAccount) {\n if (bankAccount.depositStatus) {\n bankAccountList.push({\n label: bankAccount.bankName + \" - \" + bankAccount.accountNumber,\n value: bankAccount.id,\n minDeposit: bankAccount.minimumDeposit,\n maxDeposit: bankAccount.maximumDeposit,\n });\n }\n });\n\n setBankAccountOption(bankAccountList);\n if (bankAccountList.length == 0) {\n _dispatch(showMessage(false, t(\"NO_BANK_ACCOUNT_WITH_DEPOSIT_STATUS_OPEN\")));\n }\n }\n });\n\n _dispatch(setIdle());\n }\n\n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n (page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id, balance: m.primaryCredit };\n\n });\n { console.log(formattedData) }\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n /// \n /// Author : -\n /// \n const initFormField = () => {\n if (stringIsNullOrEmpty(props.id)) {\n setMemberId(\"\");\n setValue(\"memberId\", \"\");\n } else {\n setMemberId(props.id);\n setValue(\"memberId\", props.id);\n }\n setValue(\"bankAccountId\", \"\");\n setBankAccountId(\"\");\n setBonusId(\"\");\n setReceiptFile([]);\n setReceiptImage();\n setBonusOption([]);\n };\n\n /// \n /// Author : -\n /// Editted : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n transactionTypeId: TransactionType._DEPOSIT,\n memberId: memberId,\n amount: data.amount,\n channel: BankingChannel._CHANNEL_OFFLINE_BANKING,\n panel: PanelType._BACKOFFICE,\n bankAccountId: bankAccountId,\n receiptReference: data.reference,\n };\n\n if (!stringIsNullOrEmpty(bonusId)) {\n params[\"bonusId\"] = bonusId;\n }\n\n if (!stringIsNullOrEmpty(receiptFile)) {\n params[\"receipt\"] = receiptFile;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_TRANSACTION, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n e.target.reset();\n window.location.reload();\n initFormField();\n\n if (props.onComplete != null) {\n props.onComplete();\n }\n }\n else {\n setShowPinEntry(false);\n }\n });\n };\n\n async function onPinSubmit(data, e) {\n // verify pin\n let params = { transactionPinNumber: data };\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(ApiUrl._API_VERIFY_USER_TRANSACTION_PIN_NUMBER, formBody);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n submitForm(enteredDepositData, enteredDepositE);\n }\n else {\n _dispatch(showMessage(false, t(\"INCORRECT\") + \" \" + t(\"PIN_NUMBER\")));\n setShowPinEntry(false);\n }\n }\n\n async function checkPinValue(data, e) {\n // check if pin has 4 digits (valid pin)\n // if true then submit pin\n if (data.length == 4) {\n onPinSubmit(data);\n }\n\n }\n\n async function onSubmit(data, e) {\n setEnteredDepositData(data);\n setEnteredDepositE(e);\n\n setShowPinEntry(true);\n /*\n let tempStatus = await checkSystemSettings();\n if (tempStatus) {\n setShowPinEntry(true);\n }\n else {\n _dispatch(showMessage(false, t(\"DEPOSIT\") + \" \" + t(\"CURRENTLY_OFFLINE\")));\n // props.parentInit();\n }*/\n }\n\n return (\n
    \n

    \n {t(\"DEPOSIT\")}{\" \"}\n {props.id ? (\n {\n props.toggleModal(false);\n }}\n >\n \n \n ) : (\n \n )}\n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n {\n setValue(\"memberId\", e.value);\n setMemberId(e.value);\n setSelectedMember(e);\n trigger(\"memberId\");\n }}\n />\n {errors.memberId && (\n
    \n {t(errors.memberId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == bankAccountId\n )[0] !== undefined\n ? bankAccountOption.filter(\n (option) => option.value == bankAccountId\n )[0].label\n : \"\"\n }\n value={bankAccountOption.filter(\n (option) => option.value == bankAccountId\n )}\n onChange={(e) => {\n setValue(\"bankAccountId\", e.value);\n setBankAccountId(e.value);\n setMinDep(e.minDeposit);\n setMaxDep(e.maxDeposit);\n trigger(\"bankAccountId\");\n }}\n />\n {errors.bankAccountId && (\n
    \n {t(errors.bankAccountId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.amount && (\n
    \n {t(errors.amount.message)}\n
    \n )}\n {\n (minDep != 0 && maxDep != 0) &&\n
    * Min: {minDep}/ Max: {maxDep}
    \n }\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.reference && (\n
    \n {t(errors.reference.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == bonusId\n )[0] !== undefined\n ? bonusOption.filter(\n (option) => option.value == bonusId\n )[0].label\n : \"\"\n }\n value={bonusOption.filter(\n (option) => option.value == bonusId\n )}\n onChange={(e) => {\n unregister(\"bonusId\");\n setBonusId(e.value);\n }}\n />\n {errors.bonusId && (\n
    \n {t(errors.bonusId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n imageDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(receiptImage) && (\n \n )}\n
    \n \n )}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n \n
    \n
    \n \n {t(\"ENTER_YOUR_PIN\")}\n {\n checkPinValue(value, index);\n }}\n inputMode=\"numeric\"\n inputStyle={{ border: \"0\", margin: \"0px 10px\", width: \"40px\", height: \"40px\", backgroundColor: \"transparent\", borderBottom: \"2px solid #002e6c\" }}\n inputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\n regexCriteria={/^[ 0-9_@./#&+-]*$/}\n />\n {/**/}\n {/*
    {invalidPin && t(\"PIN_DOES_NOT_MATCH\")}{!invalidPin &&  }
    */}\n\n
    \n
    \n
    \n
    \n \n );\n};\n\nexport default Deposit;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n TransactionType,\n PanelType,\n ExternalUrl,\n LanguageKey,\n BankingChannel,\n DEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport ReactHtmlParser from \"react-html-parser\";\n\nimport PinInput from 'react-pin-input';\nimport { Modal, ModalHeader, ModalBody } from \"reactstrap\";\n\nimport moment from \"moment\";\n/*import { setBusy, setIdle, showResponseMessage } from \"../../redux/AppAction\";*/\n\n/// \n/// Author : -\n/// \n\nconst Withdrawal = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setValue,\n trigger,\n } = useForm();\n const [bankOption, setBankOption] = useState([]);\n const [auditBankOption, setAuditBankOption] = useState([]);\n const [bankAccountOption, setBankAccountOption] = useState([]);\n const [bankName, setBankName] = useState(\"\");\n const [auditBankId, setAuditBankId] = useState(\"\");\n const [auditBankAccountId, setAuditBankAccountId] = useState(\"\");\n const [memberOption, setMemberOption] = useState([]);\n const [memberId, setMemberId] = useState(\"\");\n const [memberBalance, setMemberBalance] = useState(\"\");\n const [fullScreen, setFullScreen] = useState(false);\n const [selectedMember, setSelectedMember] = useState();\n const [min, setMin] = useState(0);\n const [max, setMax] = useState(0);\n\n const [showPinEntry, setShowPinEntry] = useState(false);\n\n const [startOffTime, setStartOffTime] = useState(\"\");\n const [endOffTime, setEndOffTime] = useState(\"\");\n const [withdrawalStatus, setWithdrawalStatus] = useState(true);\n const [enteredWithdrawalData, setEnteredWithdrawalData] = useState({});\n const [enteredWithdrawalE, setEnteredWithdrawalE] = useState({});\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"memberId\" }, { required: \"PLEASE_SELECT_MEMBER\" });\n register({ name: \"bankName\" }, { required: \"PLEASE_SELECT_BANK\" });\n register({ name: \"auditBankId\" }, { required: \"PLEASE_SELECT_BANK\" });\n register(\n { name: \"auditBankAccountId\" },\n { required: \"PLEASE_SELECT_BANK_ACCOUNT\" }\n );\n\n /// For The Size Difference of Modal And Page\n if (props.id) {\n setFullScreen(true);\n }\n\n init();\n initFormField();\n }, []);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (!stringIsNullOrEmpty(auditBankId)) {\n var apiUrl = ApiUrl._API_GET_BANK_ACCOUNT_BY_BANK_ID;\n apiUrl += \"?bankId=\" + auditBankId + \"&all=true\";//\"&withdrawal=\" + true;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankAccountList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bankAccount) {\n if (bankAccount.withdrawalStatus) {\n bankAccountList.push({\n label: bankAccount.accountNumber,\n value: bankAccount.id,\n min: bankAccount.minimumWithdrawal,\n max: bankAccount.maximumWithdrawal,\n });\n }\n });\n\n setBankAccountOption(bankAccountList);\n if (bankAccountList.length == 0) {\n _dispatch(showMessage(false, t(\"NO_BANK_ACCOUNT_WITH_WITHDRAWAL_STATUS_OPEN\")));\n }\n }\n });\n }\n }, [auditBankId]);\n\n /// \n /// Author : -\n /// Editted : -\n /// Added fetch to get IP\n /// \n async function init() {\n _dispatch(setBusy());\n await fetch(ApiUrl._API_GET_USER_BANK, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bank) {\n bankList.push({ label: bank.bankName, value: bank.id });\n });\n setAuditBankOption(bankList);\n setBankOption(bankList);\n }\n });\n\n _dispatch(setIdle());\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n (page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id, balance: m.primaryCredit };\n\n });\n { console.log(formattedData) }\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n /// \n /// Author : -\n /// \n const initFormField = () => {\n /*if (stringIsNullOrEmpty(props.id)) {\n setMemberId(\"\");\n setValue(\"memberId\", \"\");\n } else {\n setMemberId(props.id);\n setValue(\"memberId\", props.id);\n }*/\n setSelectedMember(\"\");\n setMemberId(\"\");\n setValue(\"memberId\", \"\");\n setMemberBalance(\"\");\n setBankAccountOption([]);\n setAuditBankId(\"\");\n setAuditBankAccountId(\"\");\n setBankName(\"\");\n setValue(\"auditBankId\", \"\");\n setValue(\"auditBankAccountId\", \"\");\n setValue(\"bankName\", \"\");\n };\n\n /// \n /// Author : -\n /// Editted : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n transactionTypeId: TransactionType._WITHDRAWAL,\n memberId: memberId,\n amount: data.amount,\n channel: BankingChannel._CHANNEL_OFFLINE_BANKING,\n panel: PanelType._BACKOFFICE,\n bankName: bankName,\n bankAccountNumber: data.bankAccountNumber,\n bankAccountHolderName: data.bankAccountHolderName,\n auditBankAccountId: auditBankAccountId,\n };\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_TRANSACTION, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n e.target.reset();\n //initFormField();\n window.location.reload();\n\n if (props.onComplete != null) {\n props.onComplete();\n }\n }\n else {\n setShowPinEntry(false);\n }\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n async function checkSystemSettings() {\n let settingsJson = await ApiEngine.get(ApiUrl._API_GET_USER_SYSTEM_SETTINGS + \"?type=withdrawal\");\n if (settingsJson[ApiKey._API_SUCCESS_KEY] && settingsJson[ApiKey._API_DATA_KEY] != null) {\n let data = settingsJson[ApiKey._API_DATA_KEY];\n let startTime;\n let endTime;\n let status = false;\n data.map((keyValuePair, index) => {\n if (keyValuePair['key'] === \"WithdrawalStartTime\") {\n startTime = keyValuePair['value'];\n }\n if (keyValuePair['key'] === \"WithdrawalEndTime\") {\n endTime = keyValuePair['value'];\n }\n if (keyValuePair['key'] === \"WithdrawalStatus\") {\n status = keyValuePair['value'] === 'true';\n }\n });\n if (moment(startTime) >= moment(endTime)) {\n setStartOffTime(endTime);\n setEndOffTime(startTime);\n }\n else {\n setStartOffTime(startTime);\n setEndOffTime(endTime);\n }\n\n setWithdrawalStatus(status);\n\n return status;\n }\n }\n \n async function onPinSubmit(data, e) {\n // verify pin\n let params = { transactionPinNumber: data };\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(ApiUrl._API_VERIFY_USER_TRANSACTION_PIN_NUMBER, formBody);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n submitForm(enteredWithdrawalData, enteredWithdrawalE);\n }\n else {\n _dispatch(showMessage(false, t(\"INCORRECT\") + \" \" + t(\"PIN_NUMBER\")));\n setShowPinEntry(false);\n }\n }\n\n async function checkPinValue(data, e) {\n // check if pin has 4 digits (valid pin)\n // if true then submit pin\n if (data.length == 4) {\n onPinSubmit(data);\n }\n \n }\n\n async function onSubmit(data, e) {\n setEnteredWithdrawalData(data);\n setEnteredWithdrawalE(e);\n \n //setShowPinEntry(true);\n \n let tempStatus = await checkSystemSettings();\n if (tempStatus) {\n setShowPinEntry(true);\n }\n else {\n _dispatch(showMessage(false, t(\"WITHDRAWAL\") + \" \" + t(\"CURRENTLY_OFFLINE\")));\n // props.parentInit();\n }\n }\n\n return (\n
    \n

    \n {t(\"WITHDRAWAL\")}\n {props.id ? (\n {\n props.toggleModal(false);\n }}\n >\n \n \n ) : (\n \n )}\n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n {\n setValue(\"memberId\", e.value);\n setMemberId(e.value);\n setMemberBalance(e.balance);\n setSelectedMember(e);\n trigger(\"memberId\");\n }}\n />\n {errors.memberId && (\n
    \n {t(errors.memberId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.label == bankName\n )[0] !== undefined\n ? bankOption.filter(\n (option) => option.label == bankName\n )[0].label\n : \"\"\n }\n value={bankOption.filter(\n (option) => option.label == bankName\n )}\n onChange={(e) => {\n setValue(\"bankName\", e.value);\n setBankName(e.label);\n trigger(\"bankName\");\n }}\n />\n {errors.bankName && (\n
    \n {t(errors.bankName.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.bankAccountNumber && (\n
    \n {t(errors.bankAccountNumber.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.bankAccountHolderName && (\n
    \n {t(errors.bankAccountHolderName.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == auditBankId\n )[0] !== undefined\n ? auditBankOption.filter(\n (option) => option.value == auditBankId\n )[0].label\n : \"\"\n }\n value={auditBankOption.filter(\n (option) => option.value == auditBankId\n )}\n onChange={(e) => {\n setValue(\"auditBankId\", e.value);\n setAuditBankId(e.value);\n \n trigger(\"auditBankId\");\n }}\n />\n {errors.auditBankId && (\n
    \n {t(errors.auditBankId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == auditBankAccountId\n )[0] !== undefined\n ? bankAccountOption.filter(\n (option) => option.value == auditBankAccountId\n )[0].label\n : \"\"\n }\n value={bankAccountOption.filter(\n (option) => option.value == auditBankAccountId\n )}\n onChange={(e) => {\n setValue(\"auditBankAccountId\", e.value);\n setAuditBankAccountId(e.value);\n setMin(e.min);\n setMax(e.max);\n trigger(\"auditBankAccountId\");\n }}\n />\n {errors.auditBankAccountId && (\n
    \n {t(errors.auditBankAccountId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.amount && (\n
    \n {t(errors.amount.message, {\n value:\n memberOption.filter(\n (option) => option.value == memberId\n )[0] !== undefined\n ? memberOption.filter(\n (option) => option.value == memberId\n )[0].balance\n : 0,\n })}\n \n
    \n )}\n {\n (min != 0 && max != 0) &&\n
    * Min: {min}/ Max: {max}
    \n }\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n {t(\"ENTER_YOUR_PIN\")}\n {\n checkPinValue(value, index);\n }}\n inputMode=\"numeric\"\n inputStyle={{ border: \"0\", margin: \"0px 10px\", width: \"40px\", height: \"40px\", backgroundColor: \"transparent\", borderBottom: \"2px solid #002e6c\" }}\n inputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\n regexCriteria={/^[ 0-9_@./#&+-]*$/}\n />\n {/**/}\n {/*
    {invalidPin && t(\"PIN_DOES_NOT_MATCH\")}{!invalidPin &&  }
    */}\n\n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default Withdrawal;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport CreatableSelect from \"react-select/creatable\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n TransactionType,\n PanelType,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n AdjustmentTransactionTarget\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\nimport PinInput from 'react-pin-input';\nimport { Modal, ModalHeader, ModalBody } from \"reactstrap\";\n\n/// \n/// Author : -\n/// \nconst Adjustment = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setValue,\n trigger,\n control,\n } = useForm();\n const [memberOption, setMemberOption] = useState([]);\n const [memberId, setMemberId] = useState(\"\");\n const [fullScreen, setFullScreen] = useState(false);\n const [remarkOption, setRemarkOption] = useState([]);\n const [selectedMember, setSelectedMember] = useState();\n\n const [showPinEntry, setShowPinEntry] = useState(false);\n\n const [enteredAdjustmentData, setEnteredAdjustmentData] = useState({});\n const [enteredAdjustmentE, setEnteredAdjustmentE] = useState({});\n\n /// \n /// Author : -\n /// Editted : -\n /// \n useEffect(() => {\n register({ name: \"memberId\" }, { required: \"PLEASE_SELECT_MEMBER\" });\n\n /// For The Size Difference of Modal And Page\n if (props.id) {\n setFullScreen(true);\n }\n\n init();\n initFormField();\n }, []);\n\n /// \n /// Author : -\n /// Editted : - (Added Fetch to get IP Address)\n /// \n async function init() {\n try {\n _dispatch(setBusy());\n let responseJson = await ApiEngine.get(ApiUrl._API_GET_USER_REMARK);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const remarkList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (remark) {\n remarkList.push({\n label: remark.description,\n value: remark.description,\n });\n });\n\n setRemarkOption(remarkList);\n } else {\n throw t(responseJson[ApiKey._API_MESSAGE_KEY]);\n }\n } catch (error) {\n _dispatch(showMessage(false, error));\n } finally {\n _dispatch(setIdle());\n }\n }\n\n /// \n /// Author : -\n /// \n const initFormField = () => {\n if (stringIsNullOrEmpty(props.id)) {\n setMemberId(\"\");\n setValue(\"memberId\", \"\");\n getMemberList(\"\", null, { page: 1 });\n setSelectedMember(null);\n } else {\n setMemberId(props.id);\n setValue(\"memberId\", props.id);\n }\n setValue(\"remark\", \"\");\n };\n\n /// \n /// Author : -\n /// Editted : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n transactionTypeId: TransactionType._ADJUSTMENT,\n memberId: memberId,\n amount: data.amount,\n panel: PanelType._BACKOFFICE,\n remark: data.remark,\n adjustmentTarget: AdjustmentTransactionTarget._PRIMARY_CREDIT\n };\n\n let formBody = createFormBody(params);\n\n let responseJson = await ApiEngine.post(\n ApiUrl._API_CREATE_TRANSACTION,\n formBody\n );\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n e.target.reset();\n initFormField();\n\n if (props.onComplete != null) {\n props.onComplete();\n }\n }\n\n setShowPinEntry(false);\n };\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n (page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id, balance: m.primaryCredit };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n async function onPinSubmit(data, e) {\n // verify pin\n let params = { transactionPinNumber: data };\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(ApiUrl._API_VERIFY_USER_TRANSACTION_PIN_NUMBER, formBody);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n submitForm(enteredAdjustmentData, enteredAdjustmentE);\n }\n else {\n _dispatch(showMessage(false, t(\"INCORRECT\") + \" \" + t(\"PIN_NUMBER\")));\n setShowPinEntry(false);\n }\n }\n\n async function checkPinValue(data, e) {\n // check if pin has 4 digits (valid pin)\n // if true then submit pin\n if (data.length == 4) {\n onPinSubmit(data);\n }\n\n }\n\n async function onSubmit(data, e) {\n setEnteredAdjustmentData(data);\n setEnteredAdjustmentE(e);\n\n setShowPinEntry(true);\n }\n\n return (\n
    \n

    \n {t(\"ADJUSTMENT\")}{\" \"}\n {props.id ? (\n {\n props.toggleModal(false);\n }}\n >\n \n \n ) : (\n \n )}\n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n {\n setValue(\"memberId\", e.value);\n setMemberId(e.value);\n setSelectedMember(e);\n trigger(\"memberId\");\n }}\n />\n {errors.memberId && (\n
    \n {t(errors.memberId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n parseFloat(value) != 0 ||\n \"PLEASE_DO_NOT_ENTER_ZERO\",\n min: {\n value: selectedMember\n ? selectedMember.balance * -1\n : 0,\n message: \"PLEASE_ENTER_VALUE_NOT_LESS_THAN\",\n },\n })}\n />\n {errors.amount && (\n
    \n {t(errors.amount.message, {\n value: selectedMember\n ? selectedMember.balance * -1\n : 0,\n })}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n return (\n option.value == value\n )[0] !== undefined\n ? remarkOption.filter(\n (option) => option.value == value\n )[0].label\n : t(\"PLEASE_ENTER_REMARK\")\n }\n value={remarkOption.filter(\n (option) => option.value == value\n )}\n onChange={(e, { action }) => {\n switch (action) {\n case \"select-option\":\n onChange(e.value);\n trigger(\"remark\");\n break;\n case \"create-option\":\n remarkOption.push(e);\n onChange(e.value);\n trigger(\"remark\");\n break;\n }\n }}\n />\n );\n }}\n />\n {errors.remark && (\n
    \n {t(errors.remark.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n {t(\"ENTER_YOUR_PIN\")}\n {\n checkPinValue(value, index);\n }}\n inputMode=\"numeric\"\n inputStyle={{ border: \"0\", margin: \"0px 10px\", width: \"40px\", height: \"40px\", backgroundColor: \"transparent\", borderBottom: \"2px solid #002e6c\" }}\n inputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\n regexCriteria={/^[ 0-9_@./#&+-]*$/}\n />\n {/**/}\n {/*
    {invalidPin && t(\"PIN_DOES_NOT_MATCH\")}{!invalidPin &&  }
    */}\n\n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default Adjustment;\n","import React, { useState, useEffect, useMemo, useCallback } from 'react';\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { Panel, PanelHeader, PanelBody } from './../../components/panel/panel.jsx';\nimport { useHistory } from \"react-router-dom\";\nimport { UncontrolledButtonDropdown, DropdownToggle, DropdownMenu, DropdownItem, Modal, ModalBody, ModalFooter, ModalHeader, TabContent, TabPane, Nav, NavItem, NavLink } from 'reactstrap';\nimport classnames from 'classnames';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport Select from 'react-select';\nimport DateRangePicker from 'react-bootstrap-daterangepicker';\nimport moment from 'moment';\nimport { navigateTo } from '../../util/Util';\nimport { ApiKey, ApiUrl, WebUrl, AccessRight, TransactionType, TransactionStatus, PanelType, LanguageKey, DEFAULT_PAGE_SIZE, ReadWritePermission, Role } from '../../util/Constant';\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { stringIsNullOrEmpty, createFormBody, numberWithCurrencyFormat, createMultiPartFormBody } from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from 'react-i18next';\nimport Deposit from './Deposit.js';\nimport Withdrawal from './Withdrawal.js';\nimport Adjustment from './Adjustment.js';\nimport ApiEngine from '../../util/ApiEngine';\nimport ImageViewer from 'react-simple-image-viewer';\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport { checkIfPermissionExist } from '../../util/PermissionChecker';\nimport { CSVLink } from \"react-csv\";\nimport Dropzone from \"react-dropzone\";\n\n\n/// \n/// Author : -\n/// \n\nconst TransactionEnquiry = props => {\n const _DEPOSIT = 1;\n const _WITHDRAWAL = 2;\n const _ADJUSTMENT = 3;\n const _NORMAL_TRANSACTION_TAB = 1;\n const _GATEWAY_TRANSACTION_TAB = 2;\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors } = useForm();\n const [calendarStartDate, setCalendarStartDate] = useState(moment().startOf('day').format(\"YYYY-MM-DD HH:mm:ss\"));\n const [calendarEndDate, setCalendarEndDate] = useState(moment().endOf('day').format(\"YYYY-MM-DD HH:mm:ss\"));\n const [withdrawalApprovalModal, setWithdrawalApprovalModal] = useState(false);\n const [auditBankOption, setAuditBankOption] = useState([]);\n const [auditBankId, setAuditBankId] = useState('');\n const [auditBankAccountId, setAuditBankAccountId] = useState('');\n const [transaction, setTransaction] = useState();\n const [bankAccountOption, setBankAccountOption] = useState([]);\n const [showTransButton, setShowTransButton] = useState(false);\n const [transactionModal, setTransactionModal] = useState(false);\n const [transactionType, setTransactionType] = useState();\n const [transactionComponent, setTransactionComponent] = useState();\n const [memberId, setMemberId] = useState();\n const [initFlag, setInitFlag] = useState(false);\n const [transactionApiUrl, setTransactionApiUrl] = useState(\"\");\n const [receiptImages, setReceiptImages] = useState([]);\n const [currentImage, setCurrentImage] = useState([]);\n const [isViewerOpen, setIsViewerOpen] = useState(false);\n const [roles, setRoles] = useState([]);\n const _userData = useSelector((state) => state.authState.userData);\n const isCompany = _userData.userRoleId === Role._SUPER_COMPANY || _userData.userRoleId === Role._COMPANY;\n let role1IsAllowed = checkIfPermissionExist(\n AccessRight._PAYMENT_GATEWAY_APPROVAL_PERMISSION,\n true\n );\n let role2IsAllowed = checkIfPermissionExist(\n AccessRight._TRANSACTION_QUEUE_PERMISSION,\n true\n );\n let role3IsAllowed = checkIfPermissionExist(\n AccessRight._TRANSACTION_APPROVAL_PERMISSION,\n true\n );\n let role4IsAllowed = checkIfPermissionExist(\n AccessRight._TRANSACTION_REJECTION_PERMISSION,\n true\n );\n\n const _STATUS_OPTIONS = [\n { value: TransactionStatus._OPEN, label: 'Open' },\n { value: TransactionStatus._APPROVED, label: 'Approved' },\n { value: TransactionStatus._REJECTED, label: 'Rejected' },\n ];\n\n const _TRANSACTION_OPTIONS = [\n { value: TransactionType._DEPOSIT, label: 'Deposit' },\n { value: TransactionType._WITHDRAWAL, label: 'Withdrawal' },\n { value: TransactionType._UPLINE_TRANSFER, label: 'Transfer' },\n { value: TransactionType._SHAREHOLDER_CLAIM, label: 'Shareholder Claim' },\n { value: TransactionType._COMMISSION, label: 'Commission' },\n { value: TransactionType._REWARD, label: \"Reward Claim\" },\n { value: TransactionType._BIRTHDAY_REWARD, label: \"Birthday Reward\" },\n { value: TransactionType._VIP_COMMISSION, label: \"VIP Commission\" },\n /*{ value: TransactionType._WEEKLY_RESCUE_BONUS, label: \"Weekly Rescue\" },\n { value: TransactionType._CREDIT_REDEMPTION, label: \"Credit Redemption\" },*/\n { value: TransactionType._REFERRAL_BONUS, label: 'Referral Bonus' },\n ];\n\n const _PANEL_OPTIONS = [\n { value: PanelType._MEMBERSITE, label: 'MemberSite' },\n { value: PanelType._BACKOFFICE, label: 'BackOffice' },\n ];\n\n const _DEPOSIT_METHODS = [\n { value: 'Bank', label: 'Bank' },\n { value: 'TOPKASH', label: 'TOPKASH' },\n { value: 'HuiOne', label: 'HuiOne' },\n { value: 'Crypto', label: 'Crypto Wallets' },\n { value: 'Wing Weiluy', label: 'Wing Weiluy' },\n ];\n\n const [bankingChannelOption, setBankingChannelOption] = useState([]);\n const [selectedStatus, setSelectedStatus] = useState([{ value: TransactionStatus._OPEN, label: 'Open' }]);\n const [selectedTransaction, setSelectedTransaction] = useState(_TRANSACTION_OPTIONS);\n const [selectedPanel, setSelectedPanel] = useState(_PANEL_OPTIONS);\n const [selectedDepositMethod, setSelectedDepositMethod] = useState([]);\n const [selectedChannel, setSelectedChannel] = useState([]);\n const [username, setUsername] = useState(\"\");\n const [label, setLabel] = useState(\"\");\n const [bank, Setbank] = useState(\"\");\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n const [activeTab, setActiveTab] = useState(_NORMAL_TRANSACTION_TAB);\n const [adjustedAmount, setAdjustedAmount] = useState(0);\n const [adjustedAmountError, setAdjustedAmountError] = useState(false);\n\n\n const openImageViewer = useCallback((index) => {\n setCurrentImage(index);\n setIsViewerOpen(true);\n }, []);\n\n const closeImageViewer = () => {\n setCurrentImage(0);\n setIsViewerOpen(false);\n };\n\n const toggleTab = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n }\n\n let _exportHeaders2 = [\n { label: \"Transaction DateTime\", key: \"transactionDateTime\" },\n { label: \"Action\", key: \"action\" },\n { label: \"Amount\", key: \"amount\" },\n { label: \"Account Balance Before\", key: \"prePrimaryCreditBalance\" },\n { label: \"Account Balance After\", key: \"postPrimaryCreditBalance\" },\n { label: \" \", key: \" \" },\n { label: \"Bonus Wallet Amount\", key: \"bonusWalletAmount\" },\n { label: \"Bonus Wallet Before\", key: \"preBonusWalletBalance\" },\n { label: \"Bonus Wallet After\", key: \"postBonusWalletBalance\" },\n ];\n\n const [exportDatas2, setExportDatas2] = useState([]);\n\n const [wingWeiluyApprovalModal, setWingWeiluyApprovalModal] = useState(false);\n const [receiptImage, setReceiptImage] = useState();\n const [receiptFile, setReceiptFile] = useState([]);\n const [isNewReceiptImage, setIsNewReceiptImage] = useState(false);\n\n\n useEffect(() => {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, username);\n }, [username]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n console.log(props);\n init();\n register({ name: 'auditBankId' }, { required: \"PLEASE_SELECT_BANK\" });\n register({ name: 'auditBankAccountId' }, { required: \"PLEASE_SELECT_BANK_ACCOUNT\" });\n }, [props.username]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (initFlag) {\n getUserTransaction(activeTab);\n }\n }, [initFlag]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n switch (transactionType) {\n case _DEPOSIT:\n setTransactionComponent();\n break;\n case _WITHDRAWAL:\n setTransactionComponent();\n break;\n case _ADJUSTMENT:\n setTransactionComponent();\n break;\n default:\n setTransactionComponent();\n break;\n }\n }, [transactionType]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (!stringIsNullOrEmpty(auditBankId)) {\n getBankAccount();\n }\n }, [auditBankId])\n\n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n /// \n /// Author : -\n /// \n async function getBankAccount() {\n var apiUrl = ApiUrl._API_GET_BANK_ACCOUNT_BY_BANK_ID;\n apiUrl += \"?bankId=\" + auditBankId + \"&withdrawal=\" + true;\n let responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankAccountList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bankAccount) {\n if (bankAccount.withdrawalStatus) {\n bankAccountList.push({ label: bankAccount.accountNumber, value: bankAccount.id });\n }\n });\n\n setBankAccountOption(bankAccountList);\n }\n else {\n _dispatch(showMessage(false, t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n }\n\n function prepareReceiptImage(imgString) {\n if (imgString != null) {\n let imgArray = [];\n //imgString = \"../..\" + imgString;\n imgArray.push(imgString);\n setReceiptImages(imgArray);\n openImageViewer(0);\n }\n else {\n _dispatch(showMessage(false, t('NO_RECEIPT_FOUND')));\n }\n }\n\n\n /// \n /// Author : -\n /// \n const init = async () => {\n if (props.username && props.id) {\n setUsername(props.username);\n setMemberId(props.id);\n setLabel(props.username);\n if (isCompany || _userData.userRoleId === Role._PAYMENT_OFFICIAL_CS) { setShowTransButton(true); }\n }\n try {\n let channelResponseJson = await ApiEngine.get(ApiUrl._API_GET_BANKING_CHANNEL);\n if (channelResponseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankingChannelList = [];\n channelResponseJson[ApiKey._API_DATA_KEY].forEach(function (bankingChannel) {\n bankingChannelList.push({ label: bankingChannel.name, value: bankingChannel.name });\n });\n\n setBankingChannelOption(bankingChannelList);\n }\n else {\n throw channelResponseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n let userBankResponseJson = await ApiEngine.get(ApiUrl._API_GET_USER_BANK);\n if (userBankResponseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankList = [];\n userBankResponseJson[ApiKey._API_DATA_KEY].forEach(function (bank) {\n bankList.push({ label: bank.bankName, value: bank.id });\n });\n setAuditBankOption(bankList);\n }\n else {\n throw userBankResponseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n setInitFlag(true);\n }\n catch (ex) {\n _dispatch(showMessage(false, t(ex)));\n }\n }\n\n /// \n /// Author : -\n /// \n const getUserTransaction = async (tab) => {\n let status = [];\n let transactionType = [];\n let channel = [];\n let panel = [];\n let depositMethod = [];\n if (!stringIsNullOrEmpty(selectedStatus)) {\n selectedStatus.map((selected) => {\n status.push(selected.value);\n })\n }\n if (!stringIsNullOrEmpty(selectedTransaction)) {\n selectedTransaction.map((selected) => {\n transactionType.push(selected.value);\n })\n }\n if (!stringIsNullOrEmpty(selectedChannel)) {\n selectedChannel.map((selected) => {\n channel.push(selected.value);\n })\n }\n if (!stringIsNullOrEmpty(selectedPanel)) {\n selectedPanel.map((selected) => {\n panel.push(selected.value);\n })\n }\n\n if (!stringIsNullOrEmpty(selectedDepositMethod)) {\n selectedDepositMethod.map((selected) => {\n depositMethod.push(selected.value);\n })\n }\n\n let fetchUrl = ApiUrl._API_GET_ALL_USER_TRANSACTION;\n fetchUrl += \"?startDate=\" + calendarStartDate + \"&endDate=\" + calendarEndDate + \"&approvalStatus=\" + status + \"&isGatewayTrans=\" + (tab === _GATEWAY_TRANSACTION_TAB ? true : false);\n fetchUrl += \"&transactionType=\" + transactionType + \"&depositMethod=\" + depositMethod + \"&bankingChannel=\" + channel + \"&panel=\" + panel + \"&v=\" + Date.now();\n if (username !== \"\") {\n fetchUrl += \"&username=\" + (label == \"All\" ? \"\" : label);\n }\n setTransactionApiUrl(fetchUrl);\n }\n\n // If is debit transaction and searched username is not row's username (means transffered to this searched username)\n // If is debit transaction and searched username is empty (viewing from overview)\n // If is transfer transaction and searched username is row's username (means transferred to this searched username)\n const isDebitTransaction = (transaction) => {\n return (_DEBIT_TRANSACTIONS.indexOf(transaction.transactionTypeId) >= 0 && transaction.memberUsername == username) ||\n (_DEBIT_TRANSACTIONS.indexOf(transaction.transactionTypeId) >= 0 && stringIsNullOrEmpty(username)) ||\n (transaction.transactionTypeId == TransactionType._UPLINE_TRANSFER && transaction.memberUsername == username) ||\n (transaction.transactionTypeId == TransactionType._WITHDRAWAL);\n }\n\n // If is not debit transaction \n // If it is transfer type and username is not transaction username and searched username is not empty (viewing from account)\n const isCreditTransaction = (transaction) => {\n return _DEBIT_TRANSACTIONS.indexOf(transaction.transactionTypeId) < 0 ||\n (transaction.transactionTypeId == TransactionType._UPLINE_TRANSFER && transaction.memberUsername != username && !stringIsNullOrEmpty(username))\n }\n\n /// \n /// Author : -\n /// \n const updateStatus = async (transaction, status, auditBankAccountId) => {\n let apiUrl = ApiUrl._API_UPDATE_TRANSACTION_STATUS\n apiUrl += \"?transactionId=\" + transaction.id + \"&status=\" + status;\n if (!stringIsNullOrEmpty(auditBankAccountId)) {\n apiUrl += \"&auditBankAccountId=\" + auditBankAccountId;\n }\n\n let responseJson = await ApiEngine.post(apiUrl);\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getUserTransaction(activeTab);\n }\n\n const _DEBIT_TRANSACTIONS = [TransactionType._WITHDRAWAL, TransactionType._UPLINE_TRANSFER];\n\n let _tableColumns = [\n {\n id: \"id\",\n Header: \"ID\",\n accessor: \"id\",\n minWidth: 100,\n Footer: () => {\n return {t(\"TOTAL\")}: \n },\n },\n {\n Header: t(\"DATE\"),\n accessor: \"submitTime\",\n style: {\n whiteSpace: 'unset',\n wordBreak: 'break-word'\n },\n Cell: ({ row }) => {\n return <>{moment(row.original.submitTime).format(\"YYYY-MM-DD HH:mm:ss\")}\n },\n minWidth: 100\n },\n {\n Header: t(\"USERNAME\"),\n accessor: \"memberUsername\",\n minWidth: 100,\n },\n {\n Header: t(\"EN_FULLNAME\"),\n accessor: \"memberFullName\",\n minWidth: 100\n },\n /*{\n Header: t(\"CN_FULLNAME\"),\n accessor: \"memberCNFullName\",\n minWidth: 100\n },*/\n {\n Header: t(\"TYPE\"),\n accessor: \"transactionType\",\n minWidth: 100,\n Cell: ({ row }) => {\n if (row.original.transactionTypeId == 6 && row.original.transferTo != username) {\n return <>{t(row.original.transactionType + \" To \" + row.original.transferTo)}\n\n }\n else if (row.original.transactionTypeId == 6 && row.original.transferTo == username) {\n return <>{t(row.original.transactionType + \" To \" + row.original.transferTo)}\n\n }\n else if (row.original.transactionTypeId == 1) {\n return <>{t(row.original.transactionType)}
    {t(row.original.bank)}
    \n }\n else {\n return <>{t(row.original.transactionType)}\n }\n }\n },\n {\n Header: t(\"STATUS\"),\n accessor: \"approvalStatusString\",\n Cell: ({ row }) => {\n switch (row.original.approvalStatus) {\n case TransactionStatus._APPROVED:\n return {t(\"APPROVED\")}\n break;\n case TransactionStatus._REJECTED:\n return {t(\"REJECTED\")}\n break;\n default:\n return {t(row.original.approvalStatusString)}\n break;\n }\n },\n minWidth: 100\n },\n {\n id: \"credit\",\n Header: t(\"CREDIT\"),\n accessor: \"amount\",\n minWidth: 100,\n Cell: ({ row }) => {\n if (isCreditTransaction(row.original)) {\n return <>{numberWithCurrencyFormat(parseFloat(row.original.amount), 3)}\n }\n else {\n return <>\n }\n },\n Footer: ({ page }) => {\n const creditSum = page.reduce((sum, currentValue) => {\n if (currentValue.original.amount && isCreditTransaction(currentValue.original)) {\n return sum + parseFloat(currentValue.original.amount);\n }\n else {\n return sum;\n }\n }, 0);\n return {numberWithCurrencyFormat(parseFloat(creditSum), 3)}\n }\n },\n /*{\n id: \"serviceChargePercentage\",\n Header: t(\"SERVICE_CHARGE_PERCENTAGE\"),\n accessor: \"serviceCharge\",\n minWidth: 100,\n Cell: ({ row }) => {\n return <>{numberWithCurrencyFormat(parseFloat(row.original.serviceChargePercentage))}\n },\n Footer: ''\n },\n {\n id: \"serviceCharge\",\n Header: t(\"SERVICE_CHARGE\"),\n accessor: \"serviceCharge\",\n minWidth: 100,\n Cell: ({ row }) => {\n return <>{numberWithCurrencyFormat(parseFloat(row.original.serviceCharge))}\n },\n Footer: ({ page }) => {\n const creditSum = page.reduce((sum, currentValue) => {\n if (currentValue.original.serviceCharge) {\n return sum + parseFloat(currentValue.original.serviceCharge);\n }\n else {\n return sum;\n }\n }, 0);\n return {numberWithCurrencyFormat(parseFloat(creditSum))}\n }\n },*/\n {\n id: \"debit\",\n Header: t(\"DEBIT\"),\n accessor: \"amount\",\n minWidth: 100,\n Cell: ({ row }) => {\n if (isDebitTransaction(row.original)) {\n return <>-{numberWithCurrencyFormat(parseFloat(row.original.amount))}\n }\n else {\n return <>\n }\n },\n Footer: ({ page }) => {\n const debitSum = page.reduce((sum, currentValue) => {\n if (currentValue.original.amount && isDebitTransaction(currentValue.original)) {\n return sum + (parseFloat(currentValue.original.amount) * -1);\n }\n else {\n return sum;\n }\n }, 0);\n return {numberWithCurrencyFormat(parseFloat(debitSum))}\n }\n },\n {\n Header: t(\"IP\"),\n accessor: \"ipAddress\",\n Cell: ({ row }) => {\n return {row.original.ipAddress}\n },\n width: 150\n },\n {\n Header: t(\"AUDITOR\"),\n accessor: \"auditedFullName\",\n minWidth: 100\n },\n {\n Header: t(\"CHANNEL\"),\n accessor: \"channel\",\n minWidth: 100\n },\n /*{\n Header: t(\"PANEL\"),\n accessor: \"panel\",\n Cell: ({ row }) => {\n return <>{t(row.original.panel.toUpperCase())}\n },\n minWidth: 100\n },*/\n {\n Header: t(\"LOCKED_BY\"),\n accessor: \"lockedByFullName\",\n },\n {\n Header: t(\"LOCKED_TIME\"),\n accessor: \"lockedTime\",\n minWidth: 100,\n Cell: ({ row }) => {\n return <>{!stringIsNullOrEmpty(row.original.lockedTime) ? moment(row.original.lockedTime).format(\"YYYY-MM-DD HH:mm:ss\") : \"\"}\n },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n {row.original.approvalStatus == TransactionStatus._OPEN && <>\n {/*for non adjustment payment*/}\n {row.original.isInstant !== true && role3IsAllowed && row.original.enableAdjustment !== true && < DropdownItem onClick={() => { row.original.transactionTypeId == TransactionType._WITHDRAWAL ? handleWithdrawalApproval(row.original) : updateStatus(row.original, TransactionStatus._APPROVED, null); }}>{t(\"APPROVE\")}}\n {/*for adjustment payment*/}\n {row.original.isInstant !== true && role3IsAllowed && row.original.enableAdjustment == true && < DropdownItem onClick={() => { handleWingWeiluyApproval(row.original) }}>{t(\"APPROVE\")}}\n {row.original.isInstant !== true ?\n <>{role4IsAllowed ? { updateStatus(row.original, TransactionStatus._REJECTED, null) }}>{t(\"REJECT\")} : <>}\n :\n <>{role1IsAllowed ? { updateStatus(row.original, TransactionStatus._REJECTED, null) }}>{t(\"REJECT\")} : <>}\n }\n }\n { processLockTransaction(row.original, true) }}>{t(\"VIEW_TRANSACTION\")}\n {(row.original.transactionTypeId == TransactionType._DEPOSIT || (row.original.transactionTypeId == TransactionType._WITHDRAWAL && row.original.receipt !=null)) && <>\n { processLockTransaction(row.original, false) }}>{t(\"VIEW_RECEIPT\")}\n }\n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" }\n }\n ]\n\n /// \n /// Author : -\n /// \n async function processLockTransaction(transaction, viewTransaction = true) {\n try {\n let responseJson = await ApiEngine.post(ApiUrl._API_PROCESS_LOCK_TRANSACTION + \"?transactionId=\" + transaction[\"id\"]);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (viewTransaction) {\n navigateTo(_history, WebUrl._URL_TRANSACTION_DETAIL, transaction);\n }\n else if (transaction.receipt.indexOf('.pdf') != -1) {\n // for download receipt if pdf\n window.open(transaction.receipt)\n }\n else {\n /// for view receipt\n prepareReceiptImage(transaction.receipt);\n }\n }\n else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n }\n catch (error) {\n _dispatch(showMessage(false, error));\n }\n }\n\n /// \n /// Author : -\n /// \n const handleWithdrawalApproval = (transaction) => {\n setTransaction(transaction);\n setWithdrawalApprovalModal(!withdrawalApprovalModal)\n }\n\n const handleWingWeiluyApproval = (transaction) => {\n setTransaction(transaction);\n setWingWeiluyApprovalModal(!wingWeiluyApprovalModal)\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setCalendarStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setCalendarEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n }\n\n /// \n /// Author : -\n /// \n const submitForm = (data, e) => {\n updateStatus(transaction, TransactionStatus._APPROVED, auditBankAccountId);\n setWithdrawalApprovalModal(!withdrawalApprovalModal)\n setTransaction();\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n setAuditBankAccountId('');\n setAuditBankId('');\n register({ name: 'auditBankId' }, { required: \"PLEASE_SELECT_BANK\" });\n register({ name: 'auditBankAccountId' }, { required: \"PLEASE_SELECT_BANK_ACCOUNT\" });\n }, [withdrawalApprovalModal])\n\n const exportToExcel = async () => {\n let status = [];\n let newFilteredDatas = [];\n let apiUrl =\n ApiUrl._API_GET_MEMBER_ACCOUNT_BALANCE_JOURNEY;\n\n apiUrl += \"?memberId=\" + props.id;\n\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n }).then((response) => response.json()).then((responseJson) => {\n console.log(responseJson[ApiKey._API_DATA_KEY])\n\n responseJson[ApiKey._API_DATA_KEY].map((item, index) => {\n let newFilteredData = {\n transactionDateTime: moment(item.transactionDateTime).format(\"YYYY-MM-DD HH:mm:ss\") ,\n action: item.action,\n amount: item.amount,\n prePrimaryCreditBalance: item.prePrimaryCreditBalance,\n postPrimaryCreditBalance: item.postPrimaryCreditBalance,\n preBonusWalletBalance: item.preBonusWalletBalance,\n postBonusWalletBalance: item.postBonusWalletBalance,\n bonusWalletAmount: item.bonusWalletAmount\n };\n\n newFilteredDatas.push(newFilteredData)\n })\n }, []);\n setExportDatas2(newFilteredDatas);\n\n var myButton = document.getElementById('csvBtn');\n\n if (newFilteredDatas.length > 0) {\n myButton.click();\n }\n\n };\n\n const handleAdjustedAmountChange = (event) => {\n const adjustedAmount = event.target.value;\n setAdjustedAmount(event.target.value)\n // Check if the entered age is within the desired range\n if (adjustedAmount < transaction.amount * 90 / 100 || adjustedAmount > transaction.amount * 110 / 100) {\n setAdjustedAmountError(true)\n } else {\n setAdjustedAmountError(false)\n }\n };\n\n const updateWingWeiLuyStatus = async (transaction, status) => {\n\n let params = {\n transactionId: transaction.id,\n status: status,\n amount: adjustedAmount,\n }\n\n if (!stringIsNullOrEmpty(receiptFile)) {\n params[\"receiptFile\"] = receiptFile;\n }\n\n let formBody = createMultiPartFormBody(params);\n\n _dispatch(setBusy());\n\n\n fetch(ApiUrl._API_UPDATE_WING_WEILUY_TRANSACTION_STATUS, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getUserTransaction(activeTab);\n setWingWeiluyApprovalModal(false);\n });\n }\n\n const logoDrop = (acceptedFiles, isDesktop) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n\n setReceiptFile(file);\n\n const reader = new FileReader();\n reader.onloadend = () => {\n setIsNewReceiptImage(true);\n setReceiptImage(reader.result);\n \n };\n reader.readAsDataURL(file);\n }\n };\n\n\n return (\n
    \n

    {t(\"TRANSACTION_ENQUIRY\") + (stringIsNullOrEmpty(props.username) ? \"\" : \" - \" + props.username)}

    \n \n
    \n
    \n \n
    \n { setWithdrawalApprovalModal(!withdrawalApprovalModal) }} centered={true}>\n
    \n { setWithdrawalApprovalModal(!withdrawalApprovalModal) }}>{t(\"PLEASE_SELECT_AUDIT_BANK_ACCOUNT\")}\n \n
    \n
    \n
    \n \n
    \n option.value == auditBankAccountId)[0] !== undefined) ? (bankAccountOption.filter(option => option.value == auditBankAccountId)[0].label) : \"\"}\n value={bankAccountOption.filter(option => option.value == auditBankAccountId)}\n onChange={(e) => {\n unregister('auditBankAccountId');\n setAuditBankAccountId(e.value);\n }} />\n {errors.auditBankAccountId &&
    {t(errors.auditBankAccountId.message)}
    }\n
    \n
    \n
    \n
    \n
    \n \n {' '}\n \n \n
    \n
    \n {wingWeiluyApprovalModal &&\n
    \n { setWingWeiluyApprovalModal(!wingWeiluyApprovalModal); setAdjustedAmount(0); setAdjustedAmountError(false); setTransaction() }} centered={true}>\n { setWingWeiluyApprovalModal(!wingWeiluyApprovalModal); setAdjustedAmount(0); setAdjustedAmountError(false); setTransaction() }}>{t(\"PLEASE_ENTER_ADJUSTED_AMOUNT\")}\n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {adjustedAmount == 0 || adjustedAmountError &&
    {'Adjusted amount must be a number between 10% ± of ' + transaction.amount}
    }\n
    \n
    \n
    \n {transaction.transactionTypeId == TransactionType._WITHDRAWAL &&\n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles, true)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(receiptImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setReceiptImage(\"\");\n setReceiptFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n }\n
    \n \n \n {' '}\n \n \n \n {/*Transaction Modal*/}\n { setTransactionModal(!transactionModal) }} size=\"lg\" centered={true}>\n \n {transactionComponent}\n \n \n
    \n }\n {/*Transaction Modal*/}\n { setTransactionModal(!transactionModal) }} size=\"lg\" centered={true}>\n \n {transactionComponent}\n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedStatus}\n options={_STATUS_OPTIONS}\n isMulti\n onChange={(e) => {\n setSelectedStatus(e)\n }}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedTransaction}\n options={_TRANSACTION_OPTIONS}\n isMulti\n onChange={(e) => {\n setSelectedTransaction(e)\n }}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedDepositMethod}\n options={_DEPOSIT_METHODS}\n isMulti\n onChange={(e) => {\n setSelectedDepositMethod(e)\n }}\n />\n
    \n
    \n
    \n {/*
    \n
    \n
    \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedChannel}\n options={bankingChannelOption}\n isMulti\n onChange={(e) => {\n setSelectedChannel(e)\n }}\n />\n
    \n
    \n
    */}\n
    \n
    \n
    \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedPanel}\n options={_PANEL_OPTIONS}\n isMulti\n onChange={(e) => {\n setSelectedPanel(e)\n }}\n />\n
    \n
    \n
    \n {stringIsNullOrEmpty(props.username) &&
    \n
    \n
    \n \n
    \n {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabel(e.label);\n setUsername(e.label);\n console.log(e)\n }}\n />\n
    \n
    }\n
    \n \n
    \n
    \n {showTransButton &&
    \n
    \n \n \n\n
    \n
    }\n
    \n \n \n \n <>\n \n \n \n <>\n \n \n \n {!stringIsNullOrEmpty(props.username) && \n
    \n \n \n \n \n
    \n }\n \n {isViewerOpen && (\n \n )}\n \n
    \n
    \n\n \n \n )\n}\n\nexport default TransactionEnquiry;","import React, { useState } from \"react\";\nimport Select from \"react-select\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Modal, ModalHeader, ModalBody } from \"reactstrap\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n _TRANSACTION_STATUS,\n _WALLET_GAME_TRANSACTION_TYPE,\n} from \"../../util/Constant\";\nimport {\n createFormBody,\n stringIsNullOrEmpty,\n numberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport { useEffect } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\n\n/// \n/// Author : -\n/// \n\nconst WalletTransfer = (props) => {\n const { register, handleSubmit, errors, setValue, trigger } = useForm();\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [walletTransferModal, setWalletTransferModal] = useState(false);\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [memberId, setMemberId] = useState(\"\");\n const [nonSeamlessBalance, setNonSeamlessBalance] = useState([]);\n const [fromWalletBalance, setFromWalletBalance] = useState(0);\n const [toWalletBalance, setToWalletBalance] = useState(0);\n const [fromWallet, setFromWallet] = useState();\n const [toWallet, setToWallet] = useState();\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n const [walletTransactions, setWalletTransactions] = useState([]);\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [transactionStatus, setTransactionStatus] = useState();\n const ALL_OPTION_LABEL = \"All\";\n const ALL_OPTION_VALUE = \"all\";\n const [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n const [productList, setProductList] = useState([]);\n const [playerId, setPlayerId] = useState();\n const [transactionType, setTransactionType] = useState();\n const [reportData, setReportData] = useState([]);\n\n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n let _tableColumns = [\n {\n Header: \"TRANSACTION_ID\",\n accessor: \"id\",\n Cell: ({ row }) => {\n return (\n {\n readSubReport(row.original.id);\n }}\n >\n {row.original.id}\n \n );\n },\n disableSortBy: true,\n },\n {\n Header: \"DATE\",\n accessor: \"createdTime\",\n disableSortBy: true,\n },\n {\n Header: \"GAME_NAME\",\n accessor: \"productName\",\n disableSortBy: true,\n },\n {\n Header: \"TRASFER_PLAYER\",\n accessor: \"transferPlayer\",\n disableSortBy: true,\n },\n {\n Header: \"WALLET_BEFORE_BALANCE\",\n accessor: \"walletBefore\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.walletBefore));\n },\n disableSortBy: true,\n },\n {\n Header: \"TRANSFER_OUT\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(\n -parseFloat(row.original.depositAmount)\n );\n },\n disableSortBy: true,\n },\n {\n Header: \"WALLET_AFTER_BALANCE\",\n accessor: \"walletAfter\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.walletAfter));\n },\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n disableSortBy: true,\n },\n {\n Header: \"GAME_WALLET_BEFORE_BALANCE\",\n accessor: \"gameWalletBefore\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(\n parseFloat(row.original.gameWalletBefore)\n );\n },\n disableSortBy: true,\n },\n {\n Header: \"AMOUNT\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.depositAmount));\n },\n disableSortBy: true,\n },\n {\n Header: \"BONUS\",\n accessor: \"bonus\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.bonus));\n },\n disableSortBy: true,\n },\n {\n Header: \"GAME_WALLET_AFTER_BALANCE\",\n accessor: \"gameWalletAfter\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(\n parseFloat(row.original.gameWalletAfter)\n );\n },\n disableSortBy: true,\n },\n ];\n\n async function readSubReport(targetTransferId) {\n try {\n var apiUrl =\n ApiUrl._API_MANAGE_TRANSFER_WALLET +\n \"?dateFrom=\" +\n startDate +\n \"&dateTo=\" +\n endDate +\n \"&searchDownline=\" +\n true;\n\n if (!stringIsNullOrEmpty(targetTransferId)) {\n apiUrl += \"&targetTransferId=\" + targetTransferId;\n apiUrl += \"&isSubReport=\" + true;\n }\n\n var responseJson = await ApiEngine.get(apiUrl);\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setReportData(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n } catch (error) {\n _dispatch(showMessage(false, t(error)));\n }\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (props.id) {\n setMemberId(props.id);\n getNonSeamLessProductBalance();\n getProductTransactionRecord();\n register({ name: \"fromWallet\" }, { required: \"PLEASE_SELECT_WALLET\" });\n register({ name: \"toWallet\" }, { required: \"PLEASE_SELECT_WALLET\" });\n }\n }, [props.id]);\n\n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n await fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const accountProductOptionList = [\n { label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n accountProductOptionList.push({\n label: option.productName,\n value: option.productId,\n });\n });\n\n setProductList(accountProductOptionList);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const getNonSeamLessProductBalance = async () => {\n await fetch(\n ApiUrl._API_GET_NON_SEAMLESS_PRODUCT_BALANCE + \"?memberId=\" + props.id,\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let nonSeamlessBalance = [];\n responseJson[ApiKey._API_DATA_KEY].map((product, index) => {\n nonSeamlessBalance.push({\n label: product.productName,\n value: product.productId,\n balance: product.balance,\n });\n });\n setNonSeamlessBalance(nonSeamlessBalance);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n const getProductTransactionRecord = async () => {\n try {\n var apiUrl =\n ApiUrl._API_MANAGE_TRANSFER_WALLET +\n \"?dateFrom=\" +\n startDate +\n \"&dateTo=\" +\n endDate +\n \"&searchDownline=\" +\n true;\n\n apiUrl += \"&memberId=\" + props.id;\n\n if (selectedProduct != ALL_OPTION_VALUE) {\n apiUrl += \"&masterProductId=\" + selectedProduct;\n }\n\n if (transactionType != ALL_OPTION_VALUE) {\n apiUrl += \"&transactionTypeId=\" + transactionType;\n }\n\n if (transactionType != ALL_OPTION_VALUE) {\n apiUrl += \"&targetStatus=\" + transactionStatus;\n }\n\n if (!stringIsNullOrEmpty(playerId)) {\n apiUrl += \"&playerId=\" + playerId;\n }\n\n var responseJson = await ApiEngine.get(apiUrl);\n\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setReportData(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n } catch (error) {\n _dispatch(showMessage(false, t(error)));\n }\n };\n\n /// \n /// Author : -\n /// \n const transferAllToMain = async () => {\n let params = {\n memberId: memberId,\n };\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n await fetch(ApiUrl._API_TRANSFER_ALL_TO_MAIN, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n getNonSeamLessProductBalance();\n }\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n getProductTransactionRecord();\n });\n };\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n fromWallet: data.fromWallet.value,\n toWallet: data.toWallet.value,\n amount: data.amount,\n memberId: memberId,\n };\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n await fetch(ApiUrl._API_CREATE_WALLET_TRANSFER_TRANSACTION, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n getNonSeamLessProductBalance();\n }\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n getProductTransactionRecord();\n });\n };\n\n return (\n
    \n
    \n {showConfirmation && (\n {\n setShowConfirmation(false);\n transferAllToMain();\n }}\n onCancel={() => {\n setShowConfirmation(false);\n }}\n >\n {t(\"UNABLE_TO_REVERT\")}\n \n )}\n
    \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n {\n setPlayerId(e.target.value);\n }}\n />\n
    \n
    \n
    \n
    \n \n product.value == selectedProduct\n )}\n options={productList}\n onChange={(e) => {\n setSelectedProduct(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n \n x[\"value\"] == transactionStatus\n )}\n onChange={(e) => {\n setTransactionStatus(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n \n x[\"value\"] == transactionType\n )}\n onChange={(e) => {\n setTransactionType(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n getProductTransactionRecord()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n {\n setWalletTransferModal(!walletTransferModal);\n }}\n >\n {t(\"CREDIT_TRANSFER\")}\n \n {\n setShowConfirmation(true);\n }}\n >\n {t(\"TRANSFER_ALL_TO_MAIN\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n {\n setWalletTransferModal(!walletTransferModal);\n }}\n size=\"lg\"\n centered={true}\n >\n {\n setWalletTransferModal(!walletTransferModal);\n }}\n >\n {t(\"WALLET_TRANSFER\")}\n \n \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n {\n setValue(\"fromWallet\", e);\n setFromWallet(e);\n setFromWalletBalance(e.balance);\n trigger(\"fromWallet\");\n }}\n />\n {errors.fromWallet && (\n
    \n {t(errors.fromWallet.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n {parseFloat(fromWalletBalance).toFixed(2)}\n
    \n
    \n
    \n
    \n \n
    \n
    \n {\n setValue(\"toWallet\", e);\n setToWallet(e);\n setToWalletBalance(e.balance);\n trigger(\"toWallet\");\n }}\n />\n {errors.toWallet && (\n
    \n {t(errors.toWallet.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n {parseFloat(toWalletBalance).toFixed(2)}\n
    \n
    \n
    \n
    \n \n
    \n
    \n \n parseFloat(value) > 0 ||\n \"PLEASE_ENTER_VALUE_MORE_THAN_ZERO\",\n },\n })}\n />\n {errors.amount && (\n
    \n {t(errors.amount.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n \n );\n};\n\nexport default WalletTransfer;\n","import React, { useState, useEffect } from \"react\";\nimport moment from \"moment\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { BetStatus, LanguageKey, ApiKey, ApiUrl, ReadWritePermission, AccessRight } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from \"reactstrap\";\nimport { isObjectEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\n\n/// \n/// Author : -\n/// \nconst BetDetailPanel = (props) => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [filteredDatas, setFilteredDatas] = useState([]);\n const [targetDetails, setTargetDetails] = useState({});\n const [showGameRecord, setShowGameRecord] = useState(false);\n const [showCancelLog, setShowCancelLog] = useState(false);\n const [showPayload, setShowPayload] = useState(false);\n const [showApiload, setShowApiload] = useState(false);\n const [cancelPayload, setCancelPayload] = useState();\n const [payLoad, setPayload] = useState(\"\");\n const [refNo, setRefNo] = useState(\"\");\n const [username, setUsername] = useState(\"\");\n const [apiLog, setApiLog] = useState([]);\n const [overallInfo, setOverallInfo] = useState({});\n const [selectedPgrIdToCancel, setSelectedPgrIdToCancel] = useState(0);\n const [showCancelConfirmation, setShowCancelConfirmation] = useState(false);\n const [showReactTable, setShowReactTable] = useState(true);\n let role1IsAllowed = checkIfPermissionExist(\n AccessRight._MANUAL_CANCEL_BET_PERMISSION,\n true\n );\n const _OVERALL_KEYS = {\n AMOUNT: \"TOTAL_AMOUNT\",\n WIN: \"TOTAL_WIN\",\n };\n\n const _defaultTableColumns = [\n\n {\n Header: t(\"ID\"),\n accessor: \"id\",\n },\n {\n Header: \"Description\",\n Cell: ({ row }) => {\n return (\n
    \n {\n viewGameRecord(row.original);\n }}\n >\n {\" \"}\n {row.original.betId}\n
    \n {\n viewPayload(row.original);\n }}\n >\n CheckPayload\n \n {\n viewApiLog(row.original);\n }}\n >\n API Log\n \n {moment(row.original.date) > moment(props.currentDateTime).startOf('day') && moment(row.original.date) < moment(props.currentDateTime).endOf('day') && {\n viewCancelLog(row.original);\n }}\n >\n Cancel Log\n }\n
    \n );\n },\n Footer: () => {\n return (\n \n {t(\"GRAND TOTAL\")}: \n \n );\n },\n Footer: () => {\n return (\n \n {t(\"GRAND TOTAL\")}: \n \n );\n },\n },\n {\n Header: t(\"PRODUCT_NAME\"),\n accessor: \"productName\",\n },\n {\n Header: t(\"DATE\"),\n accessor: \"date\",\n minWidth: 100,\n },\n {\n Header: t(\"STATEMENT_DATE\"),\n accessor: \"updatedTime\",\n minWidth: 100,\n },\n\n {\n Header: t(\"USERNAME\"),\n accessor: \"memberUsername\",\n minWidth: 100,\n },\n {\n Header: t(\"PLAYERID\"),\n accessor: \"username\",\n minWidth: 100,\n },\n {\n Header: t(\"GAME_NAME\"),\n accessor: \"gameName\",\n minWidth: 100,\n },\n {\n Header: t(\"STATUS\"),\n accessor: \"statusString\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (<>\n
    \n {row.original.statusString}\n {row.original.statusString === \"Pending\" && role1IsAllowed && }\n
    \n )\n }\n },\n {\n Header: t(\"BET_AMOUNT\"),\n accessor: \"amount\",\n minWidth: 100,\n Cell: ({ row }) => {\n return
    {row.original.amount.toFixed(3)}
    ;\n },\n Footer: () => {\n let totalAmount = 0;\n if (!isObjectEmpty(overallInfo) && overallInfo[_OVERALL_KEYS.AMOUNT]) {\n totalAmount = parseFloat(overallInfo[_OVERALL_KEYS.AMOUNT]);\n }\n return (\n
    \n {numberWithCurrencyFormat(totalAmount, 3)}\n
    \n );\n },\n },\n {\n Header: t(\"WIN_LOSS\"),\n accessor: \"winAmount\",\n minWidth: 100,\n Cell: ({ row }) => {\n let winLoss =\n parseFloat(row.original.winAmount) - parseFloat(row.original.amount);\n if (row.original.status == BetStatus._SETTLED_BET_STATUS) {\n return (\n
    \n {numberWithCurrencyFormat(winLoss, 3, true)}\n
    \n );\n } else {\n return <>0;\n }\n },\n Footer: () => {\n let winLossTotal = 0;\n if (\n !isObjectEmpty(overallInfo) &&\n overallInfo[_OVERALL_KEYS.WIN] &&\n overallInfo[_OVERALL_KEYS.AMOUNT]\n ) {\n winLossTotal =\n parseFloat(overallInfo[_OVERALL_KEYS.WIN]) -\n parseFloat(overallInfo[_OVERALL_KEYS.AMOUNT]);\n }\n return (\n
    \n {numberWithCurrencyFormat(winLossTotal, 3, true)}\n
    \n );\n },\n },\n {\n Header: t(\"Jpc\"),\n accessor: \"jpc\",\n id: \"jpc\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n
    {numberWithCurrencyFormat(parseFloat(row.original.jpc), 3, true)}
    \n );\n },\n Footer: ({ row, column }) => {\n let jpcSum = 0;\n column.filteredRows.map((dataRow, index) => {\n jpcSum += parseFloat(dataRow.original.jpc);\n });\n return (\n
    {numberWithCurrencyFormat(parseFloat(jpcSum), 3, true)}
    \n );\n },\n },\n {\n Header: t(\"Jpw\"),\n accessor: \"jpw\",\n id: \"jpw\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n
    {numberWithCurrencyFormat(parseFloat(row.original.jpw), 3, true)}
    \n );\n },\n Footer: ({ row, column }) => {\n let jpwSum = 0;\n column.filteredRows.map((dataRow, index) => {\n jpwSum += parseFloat(dataRow.original.jpw);\n });\n return (\n
    {numberWithCurrencyFormat(parseFloat(jpwSum), 3, true)}
    \n );\n },\n },\n ];\n\n useEffect(() => {\n }, [props.fetchUrl]);\n\n function handleCancelBet(rowData) {\n setSelectedPgrIdToCancel(rowData.original.id);\n setShowCancelConfirmation(true);\n }\n\n async function cancelSelectedBet() {\n let responseJson = await ApiEngine.get(ApiUrl._API_MANUAL_CANCEL_BET + \"?id=\" + selectedPgrIdToCancel);\n if (responseJson[ApiKey._API_SUCCESS_KEY]){\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n setShowReactTable(false);\n setTimeout(() => setShowReactTable(true), 1);\n }\n }\n\n function viewGameRecord(item) {\n let apiUrl = ApiUrl._API_GET_PRODUCT_GAME_PAYLOAD + \"?betId=\" + item.betId;\n fetch(apiUrl, {\n method: ApiKey._API_POST,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n //body: formBody\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_DATA_KEY] != null && responseJson[ApiKey._API_DATA_KEY]['url'] != null) {\n if (responseJson[ApiKey._API_DATA_KEY]['url'].substring(0, 4) !== \"http\" && responseJson[ApiKey._API_DATA_KEY]['url'].substring(0, 2) !== \"//\") {\n var win = window.open(\"\", \"Title\", \"toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=780,height=200,top=200,left=200\");\n win.document.body.innerHTML = responseJson[ApiKey._API_DATA_KEY]['url'];\n //\n }\n else {\n window.open(responseJson[ApiKey._API_DATA_KEY]['url']);\n }\n }\n else {\n setTargetDetails(item);\n setShowGameRecord(true);\n }\n }\n }, []);\n /*setTargetDetails(item);\n setShowGameRecord(true);*/\n }\n function viewPayload(item) {\n let apiUrl = ApiUrl._API_GET_BET_RESULT + \"?betId=\" + item.betId;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n //body: formBody\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_DATA_KEY] != null) {\n setPayload(responseJson[ApiKey._API_DATA_KEY]);\n setShowPayload(true);\n }\n else {\n setTargetDetails(item);\n setShowGameRecord(true);\n }\n\n }\n }, []);\n /*setTargetDetails(item);\n setShowGameRecord(true);*/\n }\n\n function viewApiLog(item) {\n let apiUrl = ApiUrl._API_GET_API_LOG + \"?betId=\" + item.betId;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n //body: formBody\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_DATA_KEY] != null) {\n setApiLog(responseJson[ApiKey._API_DATA_KEY]);\n responseJson[ApiKey._API_DATA_KEY].map((log, index) => {\n setUsername(log.username)\n setRefNo(log.refNo)\n })\n setShowApiload(true);\n }\n else {\n setTargetDetails(item);\n setShowApiload(true);\n }\n\n }\n }, []);\n /*setTargetDetail,s(item);\n setShowGameRecord(true);*/\n }\n\n function viewCancelLog(item) {\n let apiUrl = ApiUrl._API_GET_CANCEL_LOG + \"?betId=\" + item.betId;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n //body: formBody\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_DATA_KEY] != null) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setCancelPayload(data);\n setShowCancelLog(true);\n }\n else {\n setTargetDetails(item);\n setShowGameRecord(true);\n }\n\n }\n }, []);\n }\n\n /// \n /// Author : -\n /// \n function getOverallInfo(info) {\n setOverallInfo(info);\n }\n\n function copyPayload() {\n navigator.clipboard.writeText(cancelPayload);\n }\n\n return (\n
    \n {showReactTable && }\n {showCancelConfirmation && (\n {\n setShowCancelConfirmation(false);\n cancelSelectedBet();\n }}\n onCancel={() => {\n setShowCancelConfirmation(false);\n }}\n >\n )}\n setShowGameRecord(false)}\n >\n \n
    \n                        {payLoad}\n                    
    \n
    \n\n \n setShowPayload(false)}\n >\n {t(\"CLOSE\")}\n \n \n \n setShowCancelLog(false)}\n >\n \n
    \n                        {cancelPayload && cancelPayload}\n                    
    \n\n
    \n\n \n copyPayload()}\n >\n {t(\"COPY\")}\n \n setShowCancelLog(false)}\n >\n {t(\"CLOSE\")}\n \n \n \n setShowGameRecord(false)}\n >\n \n
    \n                        
    RefNo:{refNo}
    PlayerId:{username}\n {apiLog.map((log, index) => {\n return (<>\n
    ClassTag:{log['classTag']} - {log['date']} GMT+0
    Req: {log['request']}
    Res: {log['response']}\n
    \n

    \n )\n })}\n
    \n
    \n
    \n\n \n setShowApiload(false)}\n >\n {t(\"CLOSE\")}\n \n \n \n\n setShowGameRecord(false)}\n style={{ paddingBottom: \"100px\" }}\n className=\"modal-lg\"\n keyboard={true}\n >\n setShowGameRecord(false)}>\n {t(\"SUMMARY\")}\n \n \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {t(\"DATE\")}{t(\"DESCRIPTION\")}{t(\"SETTLED_ON\")}{t(\"USERNAME\")}{t(\"PLAYERID\")}{t(\"GAME\")}{t(\"REMARK\")}{t(\"AMOUNT\")}{t(\"STATUS\")}{t(\"STRIKE\")}{t(\"NET_PROFIT\")}
    {targetDetails[\"date\"]}{targetDetails[\"betId\"]}{targetDetails[\"updatedTime\"]}{targetDetails[\"memberUsername\"]}{targetDetails[\"username\"]}{targetDetails[\"gameName\"]}\n \n {targetDetails[\"remark\"]}\n \n \n {numberWithCurrencyFormat(\n parseFloat(targetDetails[\"amount\"])\n )}\n {targetDetails[\"statusString\"]}{targetDetails[\"winAmount\"]}\n {numberWithCurrencyFormat(\n parseFloat(targetDetails[\"winAmount\"]) -\n parseFloat(targetDetails[\"amount\"])\n )}\n
    \n
    \n
    \n \n setShowGameRecord(false)}\n >\n {t(\"CLOSE\")}\n \n \n \n
    \n );\n};\n\nexport default BetDetailPanel;","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport Select from \"react-select\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport BetDetailPanel from \"./BetDetailPanel.js\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst MemberManageBetDetailReport = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const ALL_OPTION_LABEL = \"All\";\n const ALL_OPTION_VALUE = \"all\";\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [search, setSearch] = useState(false);\n const [activeTab, setActiveTab] = useState(0);\n const [productList, setProductList] = useState([]);\n const [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n const [categoryList, setCategoryList] = useState([]);\n const [selectedCategory, setSelectedCategory] = useState(ALL_OPTION_VALUE);\n const [categoryTabs, setCategoryTabs] = useState([]);\n const [username, setUsername] = useState(\"\");\n const [initFinish, setInitFinish] = useState(false);\n const [searchTrigger, setSearchTrigger] = useState(Date.now());\n\n /// \n /// Author : -\n /// \n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n /// \n /// Author : -\n /// \n const toggleTab = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (initFinish && props.id) {\n setUsername(props.username);\n setSearch(true);\n searchBtnHandler();\n }\n }, [initFinish]);\n\n /// \n /// Author : -\n /// \n const init = async () => {\n await fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const accountProductOptionList = [\n { label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n accountProductOptionList.push({\n label: option.productName,\n value: option.productId,\n });\n });\n\n setProductList(accountProductOptionList);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n\n await fetch(ApiUrl._API_GET_PRODUCT_CATEGORY, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const productCategorys = [\n { label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n ];\n const productCategoryTabs = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (\n productCategory,\n index\n ) {\n productCategorys.push({\n label: productCategory.title,\n value: productCategory.id,\n });\n /// the data below will be passed to reacttable\n productCategoryTabs.push({\n label: productCategory.title,\n id: productCategory.id,\n fetchUrl: \"\",\n tempUrl: \"\",\n display: true,\n refreshRequired: true,\n });\n });\n setCategoryTabs(productCategoryTabs);\n setCategoryList(productCategorys);\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n\n setInitFinish(true);\n };\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (initFinish) {\n setCategoryTabs(\n categoryTabs.map((x) => {\n if (activeTab == x.id && x.refreshRequired && x.display) {\n return {\n ...x,\n fetchUrl: x.tempUrl + \"&v=\" + Date.now(),\n refreshRequired: false,\n };\n } else {\n return { ...x };\n }\n })\n );\n }\n }, [searchTrigger]);\n\n /// \n /// Author : -\n /// \n const searchBtnHandler = async () => {\n let apiUrl =\n ApiUrl._API_GET_MEMBER_BET_DETAIL_REPORT +\n \"?memberId=\" +\n props.id +\n \"&startDate=\" +\n startDate +\n \"&endDate=\" +\n endDate +\n \"&GroupDateRequired=false\" \n\n if (selectedProduct != ALL_OPTION_VALUE) {\n apiUrl += \"&productId=\" + selectedProduct;\n }\n\n let tempTabs = categoryTabs.map((x) => {\n if (selectedCategory == ALL_OPTION_VALUE || selectedCategory == x.id) {\n return {\n ...x,\n tempUrl: apiUrl + \"&categoryId=\" + x.id,\n display: true,\n refreshRequired: true,\n };\n } else {\n return {\n ...x,\n tempUrl: apiUrl + \"&categoryId=\" + x.id,\n display: false,\n refreshRequired: true,\n };\n }\n });\n\n setCategoryTabs(tempTabs);\n\n setActiveTab(\n tempTabs.filter((x) => x.display).length > 0\n ? tempTabs.filter((x) => x.display)[0]?.id\n : 0\n );\n setSearchTrigger(Date.now());\n };\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(props.id) && t(\"BET_DETAIL_REPORT\")}\n

    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n product.value == selectedProduct\n )}\n options={productList}\n onChange={(e) => {\n setSelectedProduct(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n category.value == selectedCategory\n )}\n options={categoryList}\n onChange={(e) => {\n setSelectedCategory(e.value);\n }}\n />\n
    \n
    \n \n \n
    \n \n
    \n
    \n \n \n \n
    \n {\n setUsername(e.target.value);\n }}\n readOnly={!stringIsNullOrEmpty(props.username)}\n />\n
    \n
    \n \n
    \n {\n setSearch(true);\n searchBtnHandler();\n }}\n >\n {t(\"SEARCH\")}\n \n
    \n \n
    \n \n \n \n \n {search && (\n \n
    \n \n \n {categoryTabs.map((category, index) => {\n return (\n \n

    {category.label}

    \n \n
    \n );\n })}\n \n
    \n \n )}\n \n );\n};\n\nexport default MemberManageBetDetailReport;\n","import React, { useState, useEffect, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport Select from \"react-select\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageProfitLossReport = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const ALL_OPTION_LABEL = \"All\";\n const ALL_OPTION_VALUE = \"all\";\n const MEMBER_GROUP_STRING = \"Member\";\n const DATE_GROUP_STRING = \"Date\";\n const CATEGORY_GROUP_STRING = \"Category\";\n const PRODUCT_GROUP_STRING = \"Product\";\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [productList, setProductList] = useState([]);\n const [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n const [categoryList, setCategoryList] = useState([]);\n const [selectedCategory, setSelectedCategory] = useState(ALL_OPTION_VALUE);\n const [username, setUsername] = useState(\"\");\n const [groupBy, setGroupBy] = useState(\"\");\n const [profitLossDatas, setProfitLossDatas] = useState([]);\n const [triggerSearch, setTriggerSearch] = useState(false);\n const [createdBy, setCreatedBy] = useState(\"\");\n const [filteredDatas, setFilteredDatas] = useState([]);\n const [firstHeader, setFirstHeader] = useState(\"ACCOUNT\");\n\n /// \n /// Author : -\n /// \n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n let _tableColumns = [\n {\n Header: t(firstHeader),\n accessor: \"account\",\n Cell: ({ row }) => {\n if (row.original.memberUsername != ALL_OPTION_LABEL) {\n setFirstHeader(\"ACCOUNT\");\n return <>{row.original.memberUsername};\n } else if (\n groupBy == DATE_GROUP_STRING &&\n row.original.memberUsername == ALL_OPTION_LABEL\n ) {\n setFirstHeader(\"DATE\");\n return (\n {\n e.preventDefault();\n tableRowHandler(row.original, \"Date\");\n }}\n >\n {moment(row.original.dateTime).format(\"YYYY-MM-DD\")}\n \n );\n } else if (stringIsNullOrEmpty(createdBy)) {\n setFirstHeader(\"COMPANY\");\n return (\n {\n e.preventDefault();\n tableRowHandler(row.original, \"Account\");\n }}\n >\n {row.original.createdByFullName}\n \n );\n } else {\n setFirstHeader(\"DATE\");\n return (\n {\n e.preventDefault();\n tableRowHandler(row.original, \"Date\");\n }}\n >\n {moment(startDate).format(\"YYYY-MM-DD\")}\n \n );\n }\n },\n Footer: () => {\n return (\n \n Total: \n \n );\n },\n },\n {\n Header: t(\"PRODUCT\"),\n accessor: \"productName\",\n Cell: ({ row }) => {\n if (\n selectedProduct != ALL_OPTION_VALUE &&\n !stringIsNullOrEmpty(selectedProduct)\n ) {\n return <>{row.original.productName};\n } else {\n return (\n {\n e.preventDefault();\n tableRowHandler(row.original, \"Product\");\n }}\n >\n {row.original.productName}\n \n );\n }\n },\n },\n {\n Header: t(\"CATEGORY\"),\n accessor: \"categoryName\",\n Cell: ({ row }) => {\n if (\n selectedCategory != ALL_OPTION_VALUE &&\n !stringIsNullOrEmpty(selectedCategory)\n ) {\n return <>{row.original.categoryName};\n } else {\n return (\n {\n e.preventDefault();\n tableRowHandler(row.original, \"Category\");\n }}\n >\n {row.original.categoryName}\n \n );\n }\n },\n },\n {\n Header: t(\"Bet Count\"),\n accessor: \"wager\",\n minWidth: 100,\n Cell: ({ row, value }) => {\n if (row.original.wager < 0) {\n return

    {numberWithCurrencyFormat(value)}

    \n } else {\n return

    {value}

    \n }\n },\n Footer: () => {\n let wagerTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i] && filteredDatas[i].original.wager) {\n wagerTotal += parseFloat(filteredDatas[i].original.wager);\n }\n }\n return (\n \n {wagerTotal}\n \n );\n },\n },\n {\n Header: t(\"Turnover\"),\n accessor: \"turnover\",\n Cell: ({ row }) => {\n if (row.original.turnover < 0) {\n return (\n

    {row.original.turnover.toFixed(3)}

    \n );\n } else {\n return

    {row.original.turnover.toFixed(3)}

    ;\n }\n },\n Footer: () => {\n let amountTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i] && filteredDatas[i].original.turnover) {\n amountTotal += parseFloat(filteredDatas[i].original.turnover);\n }\n }\n return (\n \n {amountTotal.toFixed(3)}\n \n );\n },\n },\n {\n Header: t(\"V.Turnover\"),\n accessor: \"validTurnover\",\n Cell: ({ row }) => {\n if (row.original.validTurnover < 0) {\n return (\n

    {row.original.validTurnover.toFixed(3)}

    \n );\n } else {\n return

    {row.original.validTurnover.toFixed(3)}

    ;\n }\n },\n Footer: () => {\n let amountTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i] && filteredDatas[i].original.validTurnover) {\n amountTotal += parseFloat(filteredDatas[i].original.validTurnover);\n }\n }\n return (\n \n {amountTotal.toFixed(3)}\n \n );\n },\n },\n {\n Header: t(\"BET_AMOUNT\"),\n accessor: \"betAmount\",\n Cell: ({ row }) => {\n if (row.original.betAmount < 0) {\n return (\n

    {row.original.betAmount.toFixed(3)}

    \n );\n } else {\n return

    {row.original.betAmount.toFixed(3)}

    ;\n }\n },\n Footer: () => {\n let amountTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i] && filteredDatas[i].original.betAmount) {\n amountTotal += parseFloat(filteredDatas[i].original.betAmount);\n }\n }\n return (\n \n {amountTotal.toFixed(3)}\n \n );\n },\n },\n {\n Header: t(\"MEMBER_PROFIT_LOSS\"),\n accessor: \"memberProfitLoss\",\n Cell: ({ row }) => {\n if (row.original.memberProfitLoss < 0) {\n return (\n

    \n {row.original.memberProfitLoss.toFixed(3)}\n

    \n );\n } else {\n return

    {row.original.memberProfitLoss.toFixed(3)}

    ;\n }\n },\n Footer: () => {\n let memberPLTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i] && filteredDatas[i].original.memberProfitLoss) {\n memberPLTotal += parseFloat(\n filteredDatas[i].original.memberProfitLoss\n );\n }\n }\n return (\n \n {memberPLTotal.toFixed(3)}\n \n );\n },\n },\n {\n Header: t(\"TAX\"),\n accessor: \"tax\",\n Cell: ({ row }) => {\n if (row.original.tax < 0) {\n return (\n

    \n {row.original.tax.toFixed(3)}\n

    \n );\n } else {\n return

    {row.original.tax.toFixed(3)}

    ;\n }\n },\n Footer: () => {\n let amountTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i] && filteredDatas[i].original.tax) {\n amountTotal += parseFloat(filteredDatas[i].original.tax);\n }\n }\n return (\n \n {amountTotal.toFixed(3)}\n \n );\n },\n },\n {\n Header: t(\"JPC\"),\n accessor: \"jpc\",\n Cell: ({ row }) => {\n if (row.original.jpc < 0) {\n return (\n

    \n {row.original.jpc.toFixed(3)}\n

    \n );\n } else {\n return

    {row.original.jpc.toFixed(3)}

    ;\n }\n },\n //Footer: () => {\n // let companyPLTotal = 0;\n // for (let i = 0; i <= filteredDatas.length; i++) {\n // if (filteredDatas[i] && filteredDatas[i].original.companyProfitLoss) {\n // companyPLTotal += parseFloat(\n // filteredDatas[i].original.companyProfitLoss\n // );\n // }\n // }\n // return (\n // \n // {companyPLTotal.toFixed(3)}\n // \n // );\n //},\n },\n {\n Header: t(\"JPW\"),\n accessor: \"jpw\",\n Cell: ({ row }) => {\n if (row.original.jpw < 0) {\n return (\n

    \n {row.original.jpw.toFixed(3)}\n

    \n );\n } else {\n return

    {row.original.jpw.toFixed(3)}

    ;\n }\n },\n //Footer: () => {\n // let companyPLTotal = 0;\n // for (let i = 0; i <= filteredDatas.length; i++) {\n // if (filteredDatas[i] && filteredDatas[i].original.companyProfitLoss) {\n // companyPLTotal += parseFloat(\n // filteredDatas[i].original.companyProfitLoss\n // );\n // }\n // }\n // return (\n // \n // {companyPLTotal.toFixed(3)}\n // \n // );\n //},\n },\n {\n Header: t(\"COMPANY_PROFIT_LOSS\"),\n accessor: \"companyProfitLoss\",\n Cell: ({ row }) => {\n if (row.original.companyProfitLoss < 0) {\n return (\n

    \n {row.original.companyProfitLoss.toFixed(3)}\n

    \n );\n } else {\n return

    {row.original.companyProfitLoss.toFixed(3)}

    ;\n }\n },\n Footer: () => {\n let companyPLTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i] && filteredDatas[i].original.companyProfitLoss) {\n companyPLTotal += parseFloat(\n filteredDatas[i].original.companyProfitLoss\n );\n }\n }\n return (\n \n {companyPLTotal.toFixed(3)}\n \n );\n },\n },\n ];\n\n /// \n /// Author : -\n /// \n const tableRowHandler = (row, type) => {\n if (type == \"Date\") {\n if (!stringIsNullOrEmpty(row.dateTime)) {\n setStartDate(\n moment(row.dateTime).startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n setEndDate(\n moment(row.dateTime).endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n }\n\n if (row.categoryName != ALL_OPTION_LABEL) {\n let categoryOption = categoryList.find(\n (category) => category.label == row.categoryName\n );\n setSelectedCategory(categoryOption.value);\n }\n\n if (row.productName != ALL_OPTION_LABEL) {\n let productOption = productList.find(\n (product) => product.label == row.productName\n );\n setSelectedProduct(productOption.value);\n }\n setGroupBy(MEMBER_GROUP_STRING);\n } else if (type == \"Account\") {\n if (row.categoryName != ALL_OPTION_LABEL) {\n let categoryOption = categoryList.find(\n (category) => category.label == row.categoryName\n );\n setSelectedCategory(categoryOption.value);\n }\n\n if (row.productName != ALL_OPTION_LABEL) {\n let productOption = productList.find(\n (product) => product.label == row.productName\n );\n setSelectedProduct(productOption.value);\n }\n setCreatedBy(row.createdByFullName);\n setGroupBy(DATE_GROUP_STRING);\n } else if (type == \"Product\") {\n if (\n !stringIsNullOrEmpty(row.dateTime) &&\n row.memberUsername == ALL_OPTION_LABEL\n ) {\n setStartDate(\n moment(row.dateTime).startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n setEndDate(\n moment(row.dateTime).endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n }\n\n if (\n !stringIsNullOrEmpty(row.memberUsername) &&\n row.memberUsername != ALL_OPTION_LABEL\n ) {\n setUsername(row.memberUsername);\n }\n\n if (row.categoryName != ALL_OPTION_LABEL) {\n let categoryOption = categoryList.find(\n (category) => category.label == row.categoryName\n );\n setSelectedCategory(categoryOption.value);\n }\n\n if (row.productName == ALL_OPTION_LABEL) {\n setGroupBy(PRODUCT_GROUP_STRING);\n } else {\n let productOption = productList.find(\n (product) => product.label == row.productName\n );\n setSelectedProduct(productOption.value);\n }\n } else if (type == \"Category\") {\n if (\n !stringIsNullOrEmpty(row.dateTime) &&\n row.memberUsername == ALL_OPTION_LABEL\n ) {\n setStartDate(\n moment(row.dateTime).startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n setEndDate(\n moment(row.dateTime).endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n }\n\n if (\n !stringIsNullOrEmpty(row.memberUsername) &&\n row.memberUsername != ALL_OPTION_LABEL\n ) {\n setUsername(row.memberUsername);\n }\n\n if (row.productName != ALL_OPTION_LABEL) {\n let productOption = productList.find(\n (product) => product.label == row.productName\n );\n setSelectedProduct(productOption.value);\n }\n\n if (row.categoryName == ALL_OPTION_LABEL) {\n setGroupBy(CATEGORY_GROUP_STRING);\n } else {\n let categoryOption = categoryList.find(\n (category) => category.label == row.categoryName\n );\n setSelectedCategory(categoryOption.value);\n }\n }\n setTriggerSearch(!triggerSearch);\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (props.id) {\n setUsername(props.username);\n searchBtnHandler(props.username);\n }\n }, [props.id]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n if (props.id) {\n setUsername(props.username);\n searchBtnHandler(props.username);\n }\n }, []);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (!stringIsNullOrEmpty(username)) {\n searchBtnHandler(username);\n }\n }, [triggerSearch]);\n\n /// \n /// Author : -\n /// this is used to get the latest filtered record from reacttable\n /// \n const getFilteredRecords = useCallback(({ page }) => {\n setFilteredDatas(page);\n }, []);\n\n /// \n /// Author : -\n /// \n const init = async () => {\n await fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const accountProductOptionList = [\n { label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n accountProductOptionList.push({\n label: option.productName,\n value: option.productId,\n });\n });\n\n setProductList(accountProductOptionList);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n\n await fetch(ApiUrl._API_GET_PRODUCT_CATEGORY, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const productCategorys = [\n { label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (\n productCategory\n ) {\n productCategorys.push({\n label: productCategory.title,\n value: productCategory.id,\n });\n });\n setCategoryList(productCategorys);\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n };\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n const searchBtnHandler = async (parsedUsername) => {\n let apiUrl =\n ApiUrl._API_GET_PROFIT_LOSS_REPORT +\n \"?startDate=\" +\n startDate +\n \"&endDate=\" +\n endDate;\n\n if (selectedProduct != ALL_OPTION_VALUE) {\n apiUrl += \"&productId=\" + selectedProduct;\n }\n\n if (selectedCategory != ALL_OPTION_VALUE) {\n apiUrl += \"&categoryId=\" + selectedCategory;\n }\n\n if (!stringIsNullOrEmpty(parsedUsername)) {\n apiUrl += \"&username=\" + parsedUsername;\n }\n\n if (!stringIsNullOrEmpty(groupBy)) {\n apiUrl += \"&groupBy=\" + groupBy;\n }\n\n if (!stringIsNullOrEmpty(createdBy)) {\n apiUrl += \"&createdBy=\" + createdBy;\n }\n\n _dispatch(setBusy());\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_DATA_KEY] != null) {\n setProfitLossDatas(responseJson[ApiKey._API_DATA_KEY]);\n }\n else {\n setProfitLossDatas([]);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n };\n\n /// \n /// Author : -\n /// \n const groupBySearchButtonHandler = (type) => {\n setSelectedCategory(ALL_OPTION_VALUE);\n setSelectedProduct(ALL_OPTION_VALUE);\n setUsername(\"\");\n setCreatedBy(\"\");\n\n setGroupBy(type);\n setTriggerSearch(!triggerSearch);\n };\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(props.id) && t(\"PROFIT_LOSS_REPORT\")}\n

    \n \n \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n product.value == selectedProduct\n )}\n options={productList}\n onChange={(e) => {\n setSelectedProduct(e.value);\n }}\n />\n
    \n
    \n \n \n
    \n \n \n
    \n \n \n \n
    \n
    \n category.value == selectedCategory\n )}\n options={categoryList}\n onChange={(e) => {\n setSelectedCategory(e.value);\n }}\n />\n
    \n
    \n \n \n
    \n \n \n
    \n \n \n \n
    \n {\n setUsername(e.target.value);\n }}\n />\n
    \n \n \n
    \n {\n searchBtnHandler(username);\n }}\n >\n {t(\"SEARCH\")}\n \n
    \n {stringIsNullOrEmpty(props.id) && (\n
    \n {\n groupBySearchButtonHandler(DATE_GROUP_STRING);\n }}\n >\n {t(\"DATE\")}\n \n {\n groupBySearchButtonHandler(PRODUCT_GROUP_STRING);\n }}\n className=\"btn btn-primary\"\n >\n {t(\"PRODUCT\")}\n \n {\n groupBySearchButtonHandler(CATEGORY_GROUP_STRING);\n }}\n className=\"btn btn-primary\"\n >\n {t(\"CATEGORY\")}\n \n {\n groupBySearchButtonHandler(MEMBER_GROUP_STRING);\n }}\n className=\"btn btn-primary\"\n >\n {t(\"USERNAME\")}\n \n
    \n )}\n \n
    \n \n \n \n \n );\n};\n\nexport default ManageProfitLossReport;","import React, { useState, useEffect } from \"react\";\nimport 'react-datepicker/dist/react-datepicker.css';\nimport { useTranslation } from \"react-i18next\";\nimport { ApiKey, ApiUrl, AccessRight, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport { useForm } from \"react-hook-form\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \nconst Product = props => {\n const _ACTIVE_ALL = 1;\n const _SUSPEND_ALL = 2;\n const { register, handleSubmit, errors, watch, trigger, setValue, getValues } = useForm({ mode: \"onChange\" });\n const [products, setProducts] = useState([]);\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [action, setAction] = useState('');\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, [])\n\n /// \n /// Author : -\n /// \n async function init() {\n let responseJson = await ApiEngine.get(ApiUrl._API_GET_MEMBER_UPLINE_PRODUCT_RATES + \"?memberId=\" + props.id);\n let uplineProductRates = [];\n let processedProducts = [];\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n uplineProductRates = responseJson[ApiKey._API_DATA_KEY];\n }\n\n let productResponseJson = await ApiEngine.get(ApiUrl._API_GET_ASSIGNED_MEMBER_PRODUCT + \"?memberId=\" + props.id + \"&ignoreAccountProductStatus=true\");\n if (productResponseJson[ApiKey._API_SUCCESS_KEY]) {\n productResponseJson[ApiKey._API_DATA_KEY].map((product) => {\n let uplineProduct = uplineProductRates.filter(i => i.accountProductId == product.accountProductId)[0];\n processedProducts.push({\n id: product.id,\n productId: product.accountProductModel.productId,\n accountProductId: product.accountProductId,\n productName: product.productName,\n assigned: product.assigned,\n bonus: product.bonus,\n commission: product.commission,\n maxBonus: (uplineProduct != null) ? uplineProduct.bonus : 0,\n maxCommission: (uplineProduct != null) ? uplineProduct.commission : 0,\n useGroupRate: product.accountProductModel.product.useGroupRate,\n status: product.status\n });\n })\n }\n \n setProducts(processedProducts);\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (products.length > 0) {\n products.map((product) => {\n setValue(\"bonus-\" + product.id, product.bonus);\n setValue(\"commission-\" + product.id, product.commission);\n setValue(\"wallet-\" + product.id, product.id);\n })\n }\n }, [products])\n\n /// \n /// Author : -\n /// \n const updateProductActiveness = async (status, accountProductId) => {\n let responseJson = await ApiEngine.post(ApiUrl._API_UPDATE_MEMBER_PRODUCT_ACTIVENESS + \"?memberId=\" + props.id + \"&accountProductId=\" + accountProductId + \"&enable=\" + status + \"&assignment=true\");\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n init();\n }\n else {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n }\n\n /// \n /// Author : -\n /// \n const actionProcessing = async (confirm) => {\n setShowConfirmation(false);\n\n if (!confirm) {\n return;\n }\n\n let apiUrl = ApiUrl._API_UPDATE_ALL_MEMBER_PRODUCT_ACTIVENESS + \"?memberId=\" + props.id;\n apiUrl += \"&enable=\" + (action == _ACTIVE_ALL);\n\n let responseJson = await ApiEngine.post(apiUrl);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n init();\n }\n\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n\n /// \n /// Author : -\n /// \n const onSubmit = async (product) => {\n var result;\n result = await trigger(['bonus-' + product.id, 'commission-' + product.id]);\n if (!result) {\n return;\n }\n\n let params = {\n id: product.id, //memberProductId\n productId: product.productId, //masterProductId\n accountProductId: product.accountProductId\n }\n\n params['bonus-' + product.productId] = getValues(\"bonus-\" + product.id);\n params['commission-' + product.productId] = getValues(\"commission-\" + product.id);\n let responseJson = await ApiEngine.post(ApiUrl._API_UPDATE_MEMBER_PRODUCT_RATE, createFormBody(params));\n\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n init();\n }\n }\n\n return (\n
    \n {\n showConfirmation && { actionProcessing(true) }}\n onCancel={() => { actionProcessing(false) }}>\n \n }\n
    \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {products.map((product, index) => {\n return
    \n
    \n
    \n {product.productName}{product.useGroupRate && \" *\"}\n
    \n
    \n
    \n {/* */}\n {\n !product.status ?\n \n : \n }\n
    \n
    \n
    \n
    \n })}\n
    \n
    \n
    \n )\n}\n\nexport default Product;","import React, { useEffect, useState } from \"react\";\nimport { Modal, ModalBody, ModalFooter, ModalHeader } from \"reactstrap\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport {\n\tcreateFormBody,\n\tstringIsNullOrEmpty,\n\tisObjectEmpty,\n} from \"../../util/Util\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { useForm } from \"react-hook-form\";\nimport moment from \"moment\";\nimport DateTime from \"react-datetime\";\n\n/// \n/// Author : -\n/// \nconst ReferralDetail = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst { register, handleSubmit, errors, setValue } = useForm();\n\tconst [modalVisible, setModalVisible] = useState(false);\n\tconst [products, setProducts] = useState([]);\n\tconst [referralCodes, setReferralCodes] = useState([]);\n\tconst [referralCodeId, setReferralCodeId] = useState();\n\tconst [referralCodeDetail, setReferralCodeDetail] = useState({});\n\tconst [expiryDate, setExpiryDate] = useState(null);\n\tvar _dispatch = useDispatch();\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst init = async () => {\n\t\tlet responseJson = await ApiEngine.get(\n\t\t\tApiUrl._API_GET_MEMBER_REFERRAL_CODES + \"?memberId=\" + props.id\n\t\t);\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsetReferralCodes(responseJson[ApiKey._API_DATA_KEY]);\n\t\t}\n\n\t\tlet productResponseJson = await ApiEngine.get(\n\t\t\tApiUrl._API_GET_GROUP_PRODUCT_WITH_MAX_RATES + \"?memberId=\" + props.id\n\t\t);\n\n\t\tif (productResponseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsetProducts(productResponseJson[ApiKey._API_DATA_KEY]);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function getReferralCodeDetail() {\n\t\tlet responseJson = await ApiEngine.get(\n\t\t\tApiUrl._API_GET_MEMBER_REFERRAL_CODES +\n\t\t\t\t\"?id=\" +\n\t\t\t\treferralCodeId +\n\t\t\t\t\"&memberId=\" +\n\t\t\t\tprops.id\n\t\t);\n\n\t\tif (\n\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY] &&\n\t\t\tresponseJson[ApiKey._API_DATA_KEY].length > 0\n\t\t) {\n\t\t\tsetModalVisible(true);\n\t\t\tsetReferralCodeDetail(responseJson[ApiKey._API_DATA_KEY][0]);\n\t\t\tsetExpiryDate(\n\t\t\t\tmoment(responseJson[ApiKey._API_DATA_KEY][0][\"expiryDate\"]).format(\n\t\t\t\t\t\"YYYY-MM-DD\"\n\t\t\t\t)\n\t\t\t);\n\t\t} else {\n\t\t\t_dispatch(showMessage(false, t(responseJson[ApiKey._API_MESSAGE_KEY])));\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tif (!modalVisible) {\n\t\t\tsetReferralCodeId();\n\t\t\tsetReferralCodeDetail({});\n\t\t}\n\t}, [modalVisible]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tif (!isObjectEmpty(referralCodeDetail)) {\n\t\t\treferralCodeDetail.memberReferralInfos.map((info) => {\n\t\t\t\tsetValue(\"bonus-\" + info.productId, info.bonus);\n\t\t\t\tsetValue(\"commission-\" + info.productId, info.commission);\n\t\t\t});\n\t\t}\n\t}, [referralCodeDetail]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tif (!stringIsNullOrEmpty(referralCodeId)) {\n\t\t\tgetReferralCodeDetail();\n\t\t}\n\t}, [referralCodeId]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data) => {\n\t\tlet params = {\n\t\t\tmemberId: props.id,\n\t\t\texpiryDate: expiryDate,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(referralCodeId)) {\n\t\t\tparams[\"id\"] = referralCodeId;\n\t\t}\n\n\t\tObject.keys(data).map((key, value) => {\n\t\t\tparams[key] = data[key];\n\t\t});\n\n\t\tlet formBody = createFormBody(params);\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_GENERATE_REFERRAL_CODE,\n\t\t\tformBody\n\t\t);\n\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsetModalVisible(false);\n\t\t\tinit();\n\t\t}\n\t};\n\n\tasync function deleteReferralCode(referralCodeId) {\n\t\tlet params = {\n\t\t\treferralCodeId: referralCodeId,\n\t\t};\n\t\tlet formBody = createFormBody(params);\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_DELETE_REFERRAL_CODE,\n\t\t\tformBody\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsetModalVisible(false);\n\t\t\tinit();\n\t\t}\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t {\n\t\t\t\t\tsetModalVisible(!modalVisible);\n\t\t\t\t}}\n\t\t\t\tcentered={true}\n\t\t\t>\n\t\t\t\t
    \n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetModalVisible(!modalVisible);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t!stringIsNullOrEmpty(referralCodeId) ? \"EDIT_QR\" : \"GENERATE_QR\"\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{products.map((product, productIndex) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{errors[\"bonus-\" + product.productId] && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors[\"bonus-\" + product.productId].message, {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: product.maxBonus,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{errors[\"commission-\" + product.productId] && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\terrors[\"commission-\" + product.productId].message,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ value: product.maxCommission }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetExpiryDate(e.format(\"YYYY-MM-DD\"));\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t{!stringIsNullOrEmpty(referralCodeId) && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t deleteReferralCode(referralCodeId)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"DELETE\")}\n\t\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetModalVisible(!modalVisible);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CANCEL\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t{/*
    \n\t\t\t\t
    \n\t\t\t\t\t setModalVisible(!modalVisible)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"GENERATE_QR\")}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    */}\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t{referralCodes.length > 0 &&\n\t\t\t\t\t\t\treferralCodes.map((referralCode, codeIndex) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"NAME\")}: {referralCode.name}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"CODE\")}: {referralCode.code}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{/* {referralCode.memberReferralInfos.map(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(info, infoIndex) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{info.productName}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    {t(\"BONUS\")}
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{info.bonus} %\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"COMMISSION\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{info.commission} %\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setReferralCodeId(referralCode.id)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    */}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t{referralCodes.length == 0 && (\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    {t(\"NO_DATA_FOUND\")}

    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ReferralDetail;\n","import React, { useState } from \"react\";\nimport Select from \"react-select\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\t_TRANSACTION_STATUS,\n\t_WALLET_GAME_TRANSACTION_TYPE,\n\tTransaction,\n} from \"../../util/Constant\";\nimport {\n\tstringIsNullOrEmpty,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport { useEffect } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\n\n/// \n/// Author : -\n/// \n\nconst BonusTracking = (props) => {\n\tconst { register, handleSubmit, errors, setValue, trigger } = useForm();\n\tconst _dispatch = useDispatch();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [memberId, setMemberId] = useState(\"\");\n\tconst [reportData, setReportData] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"DATE\",\n\t\t\taccessor: \"transactionDateTime\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn moment(row.original.transactionDateTime).format(\"YYYY-MM-DD HH:mm:ss\");\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"DESCRIPTION\",\n\t\t\taccessor: \"action\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"AMOUNT\",\n\t\t\taccessor: \"bonusWalletAmount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(parseFloat(row.original.bonusWalletAmount));\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"BONUS_WALLET_BEFORE\",\n\t\t\taccessor: \"preBonusWalletBalance\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(parseFloat(row.original.preBonusWalletBalance));\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"BONUS_WALLET_AFTER\",\n\t\t\taccessor: \"postBonusWalletBalance\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(parseFloat(row.original.postBonusWalletBalance));\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t];\n\n\tuseEffect(() => {\n\t\tif (props.id) {\n\t\t\tsetMemberId(props.id);\n\t\t\tgetProductTransactionRecord();\n\t\t}\n\t}, [props.id]);\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\tconst getProductTransactionRecord = async () => {\n\t\ttry {\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_BONUS_TRACKING +\n\t\t\t\t\"?dateFrom=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&dateTo=\" +\n\t\t\t\tendDate;\n\n\t\t\tapiUrl += \"&memberId=\" + props.id;\n\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t getProductTransactionRecord()}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default BonusTracking;\n","import React, { useState } from \"react\";\nimport Select from \"react-select\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\t_TRANSACTION_STATUS,\n\t_WALLET_GAME_TRANSACTION_TYPE,\n\tTransaction,\n} from \"../../util/Constant\";\nimport {\n\tcreateFormBody,\n\tstringIsNullOrEmpty,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport { useEffect } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\n\n/// \n/// Author : -\n/// \n\nconst CommissionTracking = (props) => {\n\tconst { register, handleSubmit, errors, setValue, trigger } = useForm();\n\tconst _dispatch = useDispatch();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [memberId, setMemberId] = useState(\"\");\n\tconst [nonSeamlessBalance, setNonSeamlessBalance] = useState([]);\n\tconst [showConfirmation, setShowConfirmation] = useState(false);\n\tconst ALL_OPTION_LABEL = \"All\";\n\tconst ALL_OPTION_VALUE = \"all\";\n\tconst [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n\tconst [productList, setProductList] = useState([]);\n\tconst [reportData, setReportData] = useState([]);\n\tconst [totalCommission, setTotalCommission] = useState(0);\n\tconst [totalSales, setTotalSales] = useState(0);\n\n\tconst _OPTION_STYLES = {\n\t\tcontrol: (base) => ({\n\t\t\t...base,\n\t\t\t\"min-height\": \"34px\",\n\t\t\theight: \"34px\",\n\t\t}),\n\t\tvalueContainer: (base) => ({\n\t\t\t...base,\n\t\t\theight: \"34px\",\n\t\t\t\"min-height\": \"34px\",\n\t\t}),\n\t\tindicatorsContainer: (base) => ({\n\t\t\t...base,\n\t\t\theight: \"34px\",\n\t\t\t\"min-height\": \"34px\",\n\t\t}),\n\t\tinput: (base) => ({\n\t\t\theight: \"34px\",\n\t\t\t\"min-height\": \"34px\",\n\t\t}),\n\t};\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"DATE\",\n\t\t\taccessor: \"createdTime\",\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"VIP\",\n\t\t\taccessor: \"vipName\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CATEGORY\",\n\t\t\taccessor: \"categoryName\",\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"VALID_TURNOVER\",\n\t\t\taccessor: \"validTurnover\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{row.original.validTurnover.toFixed(3)};\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"Rebate %\",\n\t\t\taccessor: \"vipRebate\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{row.original.vipRebate > 0 ? row.original.vipRebate.toFixed(3) : \"-\"}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"COMMISSION_TYPE\",\n\t\t\taccessor: \"commissionType\",\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"COMMISSION\",\n\t\t\taccessor: \"commissionAmount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(\n\t\t\t\t\tparseFloat(row.original.commissionAmount),\n\t\t\t\t\t3,\n\t\t\t\t\ttrue\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: () => {\n\t\t\t\treturn numberWithCurrencyFormat(parseFloat(totalCommission), 3, true);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"IsClaim\",\n\t\t\taccessor: \"isClaim\",\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"CLAIM_DATE\",\n\t\t\taccessor: \"claimedTime\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{!stringIsNullOrEmpty(row.original.claimedTime)\n\t\t\t\t\t\t\t? row.original.claimedTime\n\t\t\t\t\t\t\t: \"-\"}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t];\n\n\tasync function readSubReport(targetTransferId) {\n\t\ttry {\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_COMMISSION_TRACKING +\n\t\t\t\t\"?dateFrom=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&dateTo=\" +\n\t\t\t\tendDate +\n\t\t\t\t\"&searchDownline=\" +\n\t\t\t\ttrue;\n\n\t\t\tif (!stringIsNullOrEmpty(targetTransferId)) {\n\t\t\t\tapiUrl += \"&targetSettlementId=\" + targetTransferId;\n\t\t\t\tapiUrl += \"&isSubReport=\" + true;\n\t\t\t}\n\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\tcalcualteDetails(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n\t}\n\n\tfunction calcualteDetails(records) {\n\t\tlet commissionAmount = 0;\n\t\tlet sales = 0;\n\n\t\tfor (let i = 0; i < records.length; i++) {\n\t\t\tcommissionAmount += records[i].commissionAmount;\n\t\t\tsales += records[i].salesAmount;\n\t\t}\n\t\tsetTotalCommission(commissionAmount);\n\t\tsetTotalSales(sales);\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tif (props.id) {\n\t\t\tsetMemberId(props.id);\n\t\t\tgetNonSeamLessProductBalance();\n\t\t\tgetProductTransactionRecord();\n\t\t\tregister({ name: \"fromWallet\" }, { required: \"PLEASE_SELECT_WALLET\" });\n\t\t\tregister({ name: \"toWallet\" }, { required: \"PLEASE_SELECT_WALLET\" });\n\t\t}\n\t}, [props.id]);\n\n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tawait fetch(ApiUrl._API_GET_PRODUCT_CATEGORY, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tconst accountProductOptionList = [\n\t\t\t\t\t\t\t{ label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n\t\t\t\t\t\t];\n\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n\t\t\t\t\t\t\taccountProductOptionList.push({\n\t\t\t\t\t\t\t\tlabel: option.title,\n\t\t\t\t\t\t\t\tvalue: option.id,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tsetProductList(accountProductOptionList);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t_dispatch(\n\t\t\t\t\t\tshowMessage(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getNonSeamLessProductBalance = async () => {\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_NON_SEAMLESS_PRODUCT_BALANCE + \"?memberId=\" + props.id,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tlet nonSeamlessBalance = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].map((product, index) => {\n\t\t\t\t\t\tnonSeamlessBalance.push({\n\t\t\t\t\t\t\tlabel: product.productName,\n\t\t\t\t\t\t\tvalue: product.productId,\n\t\t\t\t\t\t\tbalance: product.balance,\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t\tsetNonSeamlessBalance(nonSeamlessBalance);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getProductTransactionRecord = async () => {\n\t\ttry {\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_COMMISSION_TRACKING +\n\t\t\t\t\"?dateFrom=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&dateTo=\" +\n\t\t\t\tendDate +\n\t\t\t\t\"&searchDownline=\" +\n\t\t\t\ttrue;\n\n\t\t\tapiUrl += \"&memberId=\" + props.id;\n\n\t\t\tif (selectedProduct != ALL_OPTION_VALUE) {\n\t\t\t\tapiUrl += \"&productCategoryId=\" + selectedProduct;\n\t\t\t}\n\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tconsole.log(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\tcalcualteDetails(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst transferAllToMain = async () => {\n\t\tlet params = {\n\t\t\tmemberId: memberId,\n\t\t};\n\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tawait fetch(ApiUrl._API_TRANSFER_ALL_TO_MAIN, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tgetNonSeamLessProductBalance();\n\t\t\t\t}\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t\tgetProductTransactionRecord();\n\t\t\t});\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tlet params = {\n\t\t\tfromWallet: data.fromWallet.value,\n\t\t\ttoWallet: data.toWallet.value,\n\t\t\tamount: data.amount,\n\t\t\tmemberId: memberId,\n\t\t};\n\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tawait fetch(ApiUrl._API_CREATE_WALLET_TRANSFER_TRANSACTION, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tgetNonSeamLessProductBalance();\n\t\t\t\t}\n\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t\tgetProductTransactionRecord();\n\t\t\t});\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{showConfirmation && (\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetShowConfirmation(false);\n\t\t\t\t\t\t\ttransferAllToMain();\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tonCancel={() => {\n\t\t\t\t\t\t\tsetShowConfirmation(false);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"UNABLE_TO_REVERT\")}\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t product.value == selectedProduct\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\toptions={productList}\n\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\tsetSelectedProduct(e.value);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t getProductTransactionRecord()}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default CommissionTracking;\n","import React, { useState } from \"react\";\nimport Select from \"react-select\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\t_TRANSACTION_STATUS,\n\t_WALLET_GAME_TRANSACTION_TYPE,\n\tTransaction,\n} from \"../../util/Constant.js\";\nimport {\n\tstringIsNullOrEmpty,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util.js\";\nimport { useEffect } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction.js\";\nimport { useDispatch } from \"react-redux\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\n\n/// \n/// Author : -\n/// \n\nconst PointTracking = (props) => {\n\tconst { register, handleSubmit, errors, setValue, trigger } = useForm();\n\tconst _dispatch = useDispatch();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [memberId, setMemberId] = useState(\"\");\n\tconst [reportData, setReportData] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"DATE\",\n\t\t\taccessor: \"date\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn moment(row.original.date).format(\"YYYY-MM-DD\");\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"POINTS_TYPE\",\n\t\t\taccessor: \"pointsType\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"POINTS\",\n\t\t\taccessor: \"points\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(parseFloat(row.original.points));\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t];\n\n\tuseEffect(() => {\n\t\tif (props.id) {\n\t\t\tsetMemberId(props.id);\n\t\t\tgetProductTransactionRecord();\n\t\t}\n\t}, [props.id]);\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\tconst getProductTransactionRecord = async () => {\n\t\ttry {\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_POINTS_TRACKING +\n\t\t\t\t\"?dateFrom=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&dateTo=\" +\n\t\t\t\tendDate;\n\n\t\t\tapiUrl += \"&memberId=\" + props.id;\n\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t getProductTransactionRecord()}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default PointTracking;\n","import React, { useState } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n Status,\n DEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { useEffect } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useDispatch } from \"react-redux\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport {\n stringIsNullOrEmpty,\n numberWithCurrencyFormat,\n isObjectEmpty,\n} from \"../../util/Util\";\nimport Select from \"react-select\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst AdjustmentReport = (props) => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _ALL_VALUE = -1;\n const _OVERALL_KEYS = {\n IN: \"TOTAL_IN\",\n OUT: \"TOTAL_OUT\",\n };\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [apiUrl, setApiUrl] = useState(\"\");\n const [memberOption, setMemberOption] = useState([]);\n const [memberId, setMemberId] = useState(\"\");\n const [status, setStatus] = useState(_ALL_VALUE);\n const [initFinish, setInitFinish] = useState(false);\n const [overallInfo, setOverallInfo] = useState({});\n const _STATUS_OPTIONS = [\n { label: t(\"ALL\"), value: _ALL_VALUE },\n { label: t(\"SUCCESS\"), value: Status._ENABLED },\n { label: t(\"FAILED\"), value: Status._DISABLED },\n ];\n\n const [selectedMember, setSelectedMember] = useState();\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n getAdjustmentReport();\n }, [initFinish]);\n\n /// \n /// Author : -\n /// \n async function getAdjustmentReport() {\n let fetchUrl =\n ApiUrl._API_GET_ADJUSTMENT_REPORT +\n \"?v=\" +\n Date.now() +\n \"&StartDate=\" +\n startDate +\n \"&EndDate=\" +\n endDate +\n \"&Status=\" +\n status;\n\n if (!stringIsNullOrEmpty(selectedMember)) {\n fetchUrl += \"&MemberId=\" + selectedMember.value;\n }\n\n setApiUrl(fetchUrl);\n }\n\n let _tableColumns = [\n {\n Header: \"TARGET_MEMBER\",\n accessor: \"memberName\",\n Footer: () => {\n return (\n \n {t(\"TOTAL\")}: \n \n );\n },\n },\n {\n Header: \"PRE_AMOUNT\",\n accessor: \"preAmount\",\n Cell: ({ row }) => {\n return (\n <>{numberWithCurrencyFormat(parseFloat(row.original.preAmount), 3)}\n );\n },\n },\n {\n Header: \"IN\",\n accessor: \"inAmount\",\n Footer: () => {\n return (\n \n \n {!isObjectEmpty(overallInfo) &&\n overallInfo[_OVERALL_KEYS.IN] &&\n numberWithCurrencyFormat(\n parseFloat(overallInfo[_OVERALL_KEYS.IN]),\n 3\n )}\n \n \n );\n },\n },\n {\n Header: \"OUT\",\n accessor: \"outAmount\",\n Footer: () => {\n return (\n \n \n {!isObjectEmpty(overallInfo) &&\n overallInfo[_OVERALL_KEYS.OUT] &&\n numberWithCurrencyFormat(\n parseFloat(overallInfo[_OVERALL_KEYS.OUT]),\n 3\n )}\n \n \n );\n },\n },\n {\n Header: \"POST_AMOUNT\",\n accessor: \"postAmount\",\n Cell: ({ row }) => {\n return (\n <>\n {numberWithCurrencyFormat(parseFloat(row.original.postAmount), 3)}\n \n );\n },\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return row.original.status ? (\n {t(\"SUCCESS\")}\n ) : (\n {t(\"FAILED\")}\n );\n },\n },\n {\n Header: \"REMARK\",\n accessor: \"remark\",\n },\n {\n Header: \"OPERATED_BY\",\n accessor: \"operatedBy\",\n },\n {\n Header: \"CREATED_TIME\",\n accessor: \"createdTime\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n <>{moment(row.original.createdTime).format(\"DD-MM-YYYY HH:mm:ss\")}\n );\n },\n },\n ];\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n function getOverallInfo(info) {\n setOverallInfo(info);\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n (page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    {t(\"ADJUSTMENT_REPORT\")}

    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n \n ({\n width: \"100%\",\n }),\n }}\n debounceTimeout={250}\n isDisabled={!stringIsNullOrEmpty(props.id)}\n loadOptions={getMemberList}\n additional={{\n page: 1,\n }}\n value={selectedMember}\n onChange={setSelectedMember}\n />\n
    \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n \n ({\n width: \"100%\",\n }),\n }}\n placeholder={\n _STATUS_OPTIONS.filter(\n (option) => option.value == status\n )[0] !== undefined\n ? _STATUS_OPTIONS.filter(\n (option) => option.value == status\n )[0].label\n : \"\"\n }\n value={_STATUS_OPTIONS.filter(\n (option) => option.value == status\n )}\n onChange={(e) => {\n setStatus(e.value);\n }}\n />\n
    \n \n \n
    \n getAdjustmentReport()}\n >\n {t(\"SEARCH\")}\n \n
    \n \n
    \n \n \n \n \n \n \n );\n};\n\nexport default AdjustmentReport;\n","import React, { useState, useEffect, useContext } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { ApiKey, ApiUrl, WebUrl, TransactionType, TransactionStatus, LanguageKey, AccessRight } from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\"\nimport { setBusy, setIdle, showMessage } from '../../redux/AppAction';\n\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\n\nconst BonusRollOverStatement = props => {\n let _history = useHistory();\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [transactionData, setTransactionData] = useState([]);\n const _dispatch = useDispatch();\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [activeFlag, setaAtiveFlag] = useState(\"\");\n let role1IsAllowed = checkIfPermissionExist(\n AccessRight._RESET_ROLLOVER_PERMISSION,\n true\n );\n\nasync function resetRollover(status) {\n if (status == \"Active\") {\n var responseJson = await ApiEngine.get(ApiUrl._API_RESET_BONUS_ROLLOVER_RECORD + \"?memberId=\" + props.id);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getBonusData();\n }\n else\n {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getBonusData();\n }\n }\n}\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n getBonusData();\n }, [])\n\n /// \n /// Author : -\n /// \n async function getBonusData() {\n var responseJson = await ApiEngine.get(ApiUrl._API_GET_BONUS_ROLLOVER_RECORD + \"?memberId=\" + props.id);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\n console.log(responseJson[ApiKey._API_DATA_KEY])\n setTransactionData(responseJson[ApiKey._API_DATA_KEY]);\n }\n }\n\n \n\n \n\n return (\n <>\n {showConfirmation && (\n {\n resetRollover(\"Active\");\n setShowConfirmation(false);\n }}\n onCancel={() => {\n setShowConfirmation(false);\n }}\n >\n {t(\"UNABLE_TO_REVERT\")}\n \n )}\n
    \n {\n transactionData.map((item) => {\n console.log(role1IsAllowed)\n var statusHtml = \"\";\n statusHtml = item[\"isLatestRecord\"] == 1 ?\n { item[\"status\"] !== \"Cleared\" && role1IsAllowed ? setShowConfirmation(true) && setaAtiveFlag(item[\"status\"]) : setaAtiveFlag(item[\"status\"]) }}\n >{item[\"status\"]} :\n {item[\"status\"]};\n\n return (\n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {item[\"createdTime\"]}{statusHtml}
    {t(\"AMOUNT\")}{item[\"bonusAmount\"]}
    {t(\"ROLLOVER_PROGRESS\")} {item[\"rolloverTarget\"] - item[\"rolloverBalance\"]}/ {item[\"rolloverTarget\"]}
    \n
    \n );\n })\n }\n
    \n \n );\n};\n\nexport default BonusRollOverStatement;","import React, { useState, useEffect, useRef } from 'react';\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { createFormBody, createMultiPartFormBody, stringIsNullOrEmpty } from \"../../util/Util.js\";\nimport moment from 'moment';\nimport Icon from '@mdi/react'\nimport { mdiContentCopy } from '@mdi/js';\n\nconst MemberSportsBetLimit = props => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const _history = useHistory();\n const _location = useLocation();\n const [betLimitData, setBetLimitData] = useState([]);\n const [betLimitStr, setBetLimitStr] = useState(\"\");\n const [initCheck, setInitCheck] = useState(false);\n const [selectedSportsType, setSelectedSportsType] = useState(0);\n const [selectedMarketType, setSelectedMarketType] = useState(0);\n const [selectedProductName, setSelectedProductName] = useState(\"SBO Sports\");\n const [mpUsername, setMpUsername] = useState(\"\");\n const defaultSplitSymbol = \"|\";\n\n var _copyRef = useRef(null);\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n init();\n }\n setInitCheck(true);\n }, []);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (betLimitData.length > 0) {\n let tempData = betLimitData.find(x => x.sportsType === selectedSportsType && x.marketType === selectedMarketType && x.productName === selectedProductName);\n if (typeof (tempData) != \"undefined\") {\n let tempBetLimitStr = Math.trunc(tempData.minimumBet) + defaultSplitSymbol + Math.trunc(tempData.maximumBet) + defaultSplitSymbol + Math.trunc(tempData.maximumBetPerMatch);\n setBetLimitStr(tempBetLimitStr);\n }\n else {\n setBetLimitStr(\"\");\n }\n setMpUsername(betLimitData.filter(x => x.productName === selectedProductName)[0]['username']);\n }\n }, [selectedSportsType, selectedMarketType, selectedProductName]);\n\n async function init() {\n let apiUrl = ApiUrl._API_GET_MEMBER_SPORTS_BET_LIMIT + \"?id=\" + props.id;\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setBetLimitData(data);\n let temp = data.find(x => x.sportsType === selectedSportsType && x.marketType === selectedMarketType && x.productName === selectedProductName);\n let tempBetLimitStr = Math.trunc(temp.minimumBet) + defaultSplitSymbol + Math.trunc(temp.maximumBet) + defaultSplitSymbol + Math.trunc(temp.maximumBetPerMatch);\n setBetLimitStr(tempBetLimitStr);\n setMpUsername(data.filter(x => x.productName === selectedProductName)[0]['username']);\n }\n }\n\n const submitForm = async (data) => {\n let betSetting = betLimitStr.split(defaultSplitSymbol);\n let params = {\n \"minBet\": betSetting[0],\n \"maxBet\": betSetting[1],\n \"maxBetPerMatch\": betSetting[2],\n \"memberId\": props.id,\n \"sportsType\": selectedSportsType,\n \"marketType\": selectedMarketType,\n \"productName\": selectedProductName\n };\n\n let formBody = createMultiPartFormBody(params);\n let apiUrl = ApiUrl._API_CREATE_OR_UPDATE_MEMBER_SPORTS_BET_LIMIT;\n let responseJson = await ApiEngine.post(apiUrl, formBody);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setBetLimitData(data);\n let temp = data.find(x => x.sportsType === selectedSportsType && x.marketType === selectedMarketType && x.productName === selectedProductName);\n let tempBetLimitStr = Math.trunc(temp.minimumBet) + defaultSplitSymbol + Math.trunc(temp.maximumBet) + defaultSplitSymbol + Math.trunc(temp.maximumBetPerMatch);\n setBetLimitStr(tempBetLimitStr);\n setMpUsername(data.filter(x => x.productName === selectedProductName)[0]['username']);\n }\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n\n function copyUsername() {\n _copyRef.current.select();\n document.execCommand(\"copy\");\n }\n\n return (\n
    \n

    \n {t(\"ADJUST_BET_LIMIT\")}\n

    \n
    \n
    \n {initCheck && \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n {\n setBetLimitStr(e.target.value)\n }}\n >\n {errors.betLimitCode && (\n
    \n {t(errors.betLimitCode.message)}\n
    \n )}\n {t(\"MIN\") + \":\" + defaultSplitSymbol + t(\"MAX\") + \":\" + defaultSplitSymbol + t(\"MAX_PER_MATCH\")}\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n {!stringIsNullOrEmpty(mpUsername) && <>\n
    copyUsername()}>\n \n
    }\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    }\n
    \n
    \n
    \n )\n}\n\nexport default withRouter(MemberSportsBetLimit);","import React, { useEffect, useState } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { Panel, PanelBody } from './../../components/panel/panel.jsx';\nimport { useForm, Controller } from 'react-hook-form';\nimport Select from 'react-select';\nimport ApiEngine from '../../util/ApiEngine.js';\nimport ToggleButton from \"react-toggle-button\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle } from '../../redux/AppAction';\nimport { useDispatch } from 'react-redux';\n\nconst ManageMemberDownlineGames = (props) => {\n const _dispatch = useDispatch();\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const { control } = useForm();\n const [selectedGame, setSelectedGame] = useState(\"\");\n const [products, setProducts] = useState([]);\n const [productOption, setProductOption] = useState([]);\n const [usernameList, setUsernameList] = useState([]);\n\n useEffect(() => {\n init();\n }, []);\n\n const init = async () => {\n var productResponseJson = await ApiEngine.get(\n ApiUrl._API_GET_ASSIGNED_MEMBER_PRODUCT_SHOW_LIST + \"?memberId=\" + props.id\n );\n if (productResponseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = productResponseJson[ApiKey._API_DATA_KEY][\"products\"];\n setProducts(data);\n let productList = [];\n data.map((data) => {\n productList.push({ label: data.productName, value: data.productId });\n });\n setProductOption(productList);\n }\n }\n\n async function getDownlineGames(product) {\n _dispatch(setBusy());\n var responseJson = await ApiEngine.get(\n ApiUrl._API_GET_MEMBER_DOWNLINE_GAMES_BY_MASTERPRODUCT + \"?memberId=\" + props.id + \"&masterProductId=\" + product\n );\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setUsernameList(responseJson[ApiKey._API_DATA_KEY]);\n }\n _dispatch(setIdle());\n }\n\n async function toggleShowValue(value, index, downlineUsername, product) {\n _dispatch(setBusy());\n let responseJson = await ApiEngine.post(ApiUrl._API_UPDATE_DOWNLINE_MEMBER_GAME + \"?uplineId=\" + props.id + \"&username=\" + downlineUsername + \"&masterProductId=\" + product + \"&enable=\" + !value);\n let tempProducts = usernameList;\n let tempValue = !value;\n let newArr = tempProducts[index];\n if (tempValue === true) {\n newArr.show = true;\n }\n else {\n newArr.show = false;\n }\n tempProducts[index] = { ...newArr };\n _dispatch(setIdle());\n };\n\n return (\n
    \n

    \n
    {t(\"DOWNLINE_GAMES\")}
    \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n \n (\n \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(desktopImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetDesktopImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetDesktopFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{languageType == ContentTypeString._BANNER && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{(dataDisplayDevice === 2 || dataDisplayDevice === 3) && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, false)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(mobileImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{languageType == ContentTypeString._DEPOSIT_PROMOTION && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, false)\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(mobileImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{languageType == ContentTypeString._DEPOSIT_PROMOTION_CATEGORY && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, false)\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(mobileImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t cleanup()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ConfigurationLanguageDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tContentTypeString,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport ConfigurationLanguageDetail from \"./ConfigurationLanguageDetail\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageConfigurationLanguage = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [data, setData] = useState([]);\n\tconst [languageDetailModalVisibility, setLanguageDetailModalVisibility] =\n\t\tuseState(false);\n\n\tconst _EXCLUDE_TITLE_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT_CONTENT,\n\t\tContentTypeString._VIP_CRITERIA,\n\t\tContentTypeString._CHAT_SPHERE,\n\t];\n\tconst _EXCLUDE_CONTENT_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT,\n\t\tContentTypeString._PRODUCT_CATEGORY,\n\t\tContentTypeString._DEPOSIT_PROMOTION_CATEGORY,\n\t];\n\n\tconst [languageDetailId, setLanguageDetailId] = useState(\"\");\n\tconst [tableColumns, setTableColumns] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TITLE\",\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CONTENT\",\n\t\t\taccessor: \"content\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetLanguageDetailId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetLanguageDetailModalVisibility(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tlet _tableColumns2 = [\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TITLE\",\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"DESCRIPTION\",\n\t\t\taccessor: \"description\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CONTENT\",\n\t\t\taccessor: \"content\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"MOBILE_IMAGE\",\n\t\t\taccessor: \"mobileImage\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{!stringIsNullOrEmpty(row.original.mobileImage) ? (\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\"\"\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetLanguageDetailId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetLanguageDetailModalVisibility(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tlet _tableColumns3 = [\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TITLE\",\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TITLE_IMAGE\",\n\t\t\taccessor: \"mobileImage\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{!stringIsNullOrEmpty(row.original.mobileImage) ? (\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\"\"\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetLanguageDetailId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetLanguageDetailModalVisibility(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetConfigLanguage();\n\t\t/// Used to Exclude the column of table\n\t\tif (_EXCLUDE_CONTENT_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(2, 2);\n\t\t} else if (_EXCLUDE_TITLE_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(1, 1);\n\t\t}\n\n\t\tif (ContentTypeString._DEPOSIT_PROMOTION.includes(props.type)) {\n\t\t\tsetTableColumns(_tableColumns2);\n\t\t} else {\n\t\t\tsetTableColumns(_tableColumns);\n\t\t}\n\n\t\tif (ContentTypeString._DEPOSIT_PROMOTION_CATEGORY.includes(props.type)) {\n\t\t\tsetTableColumns(_tableColumns3);\n\t\t} else {\n\t\t\tsetTableColumns(_tableColumns);\n\t\t}\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getConfigLanguage = async () => {\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_CONFIG_LANGUAGE_BY_TYPE_ID +\n\t\t\t\t\"?type=\" +\n\t\t\t\tprops.type +\n\t\t\t\t\"&id=\" +\n\t\t\t\tprops.id,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tsetLanguageDetailModalVisibility(false);\n\t\t\t\t\t\tgetConfigLanguage();\n\t\t\t\t\t}}\n\t\t\t\t\tdataTypeId={props.id}\n\t\t\t\t\tlanguageDetailId={languageDetailId}\n\t\t\t\t\tlanguageType={props.type}\n\t\t\t\t/>\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetLanguageDetailId(\"\");\n\t\t\t\t\t\t\tsetLanguageDetailModalVisibility(true);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tclassName=\"btn btn-purple\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageConfigurationLanguage;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tDisplayMode,\n\tLanguageKey,\n\tContentTypeString,\n\tAllVipOption,\n} from \"../../util/Constant\";\nimport {\n\tstringIsNullOrEmpty,\n\tcreateMultiPartFormBody,\n\timagePathToFileObject,\n} from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst PromotionDetail = (props) => {\n\tconst _DETAIL_TAB = \"1\";\n\tconst _LANGUAGE_TAB = \"2\";\n\tlet _history = useHistory();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\tconst { register, unregister, handleSubmit, errors } = useForm();\n\tconst [displayMode, setDisplayMode] = useState(\"\");\n\n\tconst [description, setDescription] = useState(\"\");\n\tconst [title, setTitle] = useState(\"\");\n\tconst [content, setContent] = useState(\"\");\n\tconst [url, setUrl] = useState(\"\");\n\tconst [promotionId, setPromotionId] = useState(\"\");\n\tconst [promotionRefId, setPromotionRefId] = useState(\"\");\n\tconst [status, setStatus] = useState(true);\n\n\tconst [desktopFile, setDesktopFile] = useState([]);\n\tconst [mobileFile, setMobileFile] = useState([]);\n\tconst [desktopImage, setDesktopImage] = useState();\n\tconst [mobileImage, setMobileImage] = useState();\n\tconst [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n\tconst [isNewMobileImage, setIsNewMobileImage] = useState(false);\n\tconst [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\tconst [vip, setVip] = useState();\n\tconst [vipOption, setVipOption] = useState([]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggle = (tab) => {\n\t\tif (activeTab !== tab) {\n\t\t\tsetActiveTab(tab);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tregister({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n\t\tregister({ name: \"vip\" }, { required: \"PLEASE_SELECT_VIP_LEVEL\" });\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tif (_location.state) {\n\t\t\tvar apiUrl = ApiUrl._API_GET_USER_PROMOTION_BY_ID;\n\t\t\tlet statePromotionId = _location.state.id || _location.state.refId;\n\t\t\tapiUrl += \"?id=\" + statePromotionId;\n\t\t\tawait fetch(apiUrl, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then(async (responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tif (_location.state.id) {\n\t\t\t\t\t\t\tsetPromotionId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\t\t\tsetPromotionRefId(\"\");\n\t\t\t\t\t\t} else if (_location.state.refId) {\n\t\t\t\t\t\t\tsetPromotionId(\"\");\n\t\t\t\t\t\t\tsetPromotionRefId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tsetDisplayMode(responseJson[ApiKey._API_DATA_KEY][\"displayModeId\"]);\n\t\t\t\t\t\tsetContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n\t\t\t\t\t\tsetTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n\t\t\t\t\t\tsetDescription(responseJson[ApiKey._API_DATA_KEY][\"description\"]);\n\t\t\t\t\t\tsetVip(\n\t\t\t\t\t\t\tstringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"vipId\"])\n\t\t\t\t\t\t\t\t? AllVipOption._VALUE\n\t\t\t\t\t\t\t\t: responseJson[ApiKey._API_DATA_KEY][\"vipId\"]\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetUrl(responseJson[ApiKey._API_DATA_KEY][\"url\"]);\n\t\t\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t!stringIsNullOrEmpty(\n\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tsetDesktopImage(\n\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tif (_location.state.refId) {\n\t\t\t\t\t\t\t\tsetIsNewDesktopImage(true);\n\t\t\t\t\t\t\t\tlet imageFile = await imagePathToFileObject(\n\t\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tsetDesktopFile(imageFile);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t!stringIsNullOrEmpty(\n\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tsetMobileImage(responseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]);\n\t\t\t\t\t\t\tif (_location.state.refId) {\n\t\t\t\t\t\t\t\tsetIsNewMobileImage(true);\n\t\t\t\t\t\t\t\tlet imageFile = await imagePathToFileObject(\n\t\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tsetMobileFile(imageFile);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tunregister(\"vip\");\n\t\t\t\t\t\tunregister(\"content\");\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\n\t\tawait fetch(ApiUrl._API_GET_USER_VIP, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst vipList = [\n\t\t\t\t\t\t{ label: AllVipOption._LABEL, value: AllVipOption._VALUE },\n\t\t\t\t\t];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (vipLevel) {\n\t\t\t\t\t\tvipList.push({ label: vipLevel.name, value: vipLevel.id });\n\t\t\t\t\t});\n\n\t\t\t\t\tsetVipOption(vipList);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tlet params = {\n\t\t\ttitle: data.title,\n\t\t\tdisplayModeId: data.displayMode,\n\t\t\tdescription: data.description,\n\t\t\turl: data.url,\n\t\t\trank: data.rank,\n\t\t\tstatus: data.status,\n\t\t\tcontent: content,\n\t\t\tisNewDesktopFile: isNewDesktopImage,\n\t\t\tisNewMobileFile: isNewMobileImage,\n\t\t\tvipId: stringIsNullOrEmpty(vip) ? \"\" : vip,\n\t\t};\n\n\t\tif (vip != AllVipOption._VALUE) {\n\t\t\tparams[\"vipId\"] = vip;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(desktopFile)) {\n\t\t\tparams[\"desktopFile\"] = desktopFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(desktopImage)) {\n\t\t\tparams[\"desktopImageRemoved\"] = true;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(mobileFile)) {\n\t\t\tparams[\"mobileFile\"] = mobileFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(mobileImage)) {\n\t\t\tparams[\"mobileImageRemoved\"] = true;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(promotionId)) {\n\t\t\tparams[\"id\"] = promotionId;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(promotionRefId)) {\n\t\t\tparams[\"refId\"] = promotionRefId;\n\t\t}\n\n\t\tlet formBody = createMultiPartFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_PROMOTION, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetIsNewDesktopImage(false);\n\t\t\t\t\tsetIsNewMobileImage(false);\n\t\t\t\t\tsetPromotionRefId(\"\");\n\t\t\t\t\tsetPromotionId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n\t\t\t\t\t_history.replace({\n\t\t\t\t\t\tpathname: _location.pathname,\n\t\t\t\t\t\tstate: {\n\t\t\t\t\t\t\tid: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst logoDrop = (acceptedFiles, isDesktop) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tif (isDesktop) {\n\t\t\t\t\tsetDesktopFile(file);\n\t\t\t\t\tsetDesktopImage(reader.result);\n\t\t\t\t\tsetIsNewDesktopImage(true);\n\t\t\t\t} else {\n\t\t\t\t\tsetMobileFile(file);\n\t\t\t\t\tsetIsNewMobileImage(true);\n\t\t\t\t\tsetMobileImage(reader.result);\n\t\t\t\t}\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{promotionId ? t(\"EDIT_PROMOTION\") : t(\"ADD_PROMOTION\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t{promotionId && (\n\t\t\t\t\n\t\t\t)}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.title && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.title.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.description && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.description.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setDisplayMode(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={displayMode}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.url && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.url.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t option.value == vip\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? vipOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == vip\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={vipOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == vip\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tunregister(\"vip\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetVip(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.vip && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.vip.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\teditor.setData(content);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(event, editor) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst data = editor.getData();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetContent(data);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (stringIsNullOrEmpty(data)) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tregister(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ name: \"content\" },\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ required: \"PLEASE_ENTER_CONTENT\" }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tunregister(\"content\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.content.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, true)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(desktopImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetDesktopImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetDesktopFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, false)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(mobileImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setStatus(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{promotionId && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default withRouter(PromotionDetail);\n","import React, { useState, useEffect, useContext } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { ApiKey, ApiUrl, WebUrl, TransactionType, TransactionStatus, LanguageKey, AccessRight } from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\"\nimport { setBusy, setIdle, showMessage } from '../../redux/AppAction';\n\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport PromotionDetail from \"../configuration/PromotionDetail\";\nimport Tooltip from \"react-bootstrap/Tooltip\";\nimport OverlayTrigger from \"react-bootstrap/OverlayTrigger\";\nimport queryString from 'query-string';\n\nconst MemberPromotionStatement = props => {\n let _history = useHistory();\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [promoData, setPromoData] = useState([]);\n const _dispatch = useDispatch();\n const [showConfirmation, setShowConfirmation] = useState(false);\n const [activeFlag, setaAtiveFlag] = useState(\"\");\n let role1IsAllowed = checkIfPermissionExist(\n AccessRight._RESET_ROLLOVER_PERMISSION,\n true\n );\n const [isRefund, setIsRefund] = useState(false);\n\n async function cancelPromo(status) {\n if (status == \"Active\") {\n var responseJson = await ApiEngine.post(ApiUrl._API_CANCEL_PROMO + \"?memberId=\" + props.id + \"&refund=\" + isRefund);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getBonusData();\n }\n else {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n getBonusData();\n }\n }\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n getBonusData();\n }, [])\n\n /// \n /// Author : -\n /// \n async function getBonusData() {\n var responseJson = await ApiEngine.get(ApiUrl._API_GET_MEMBER_PROMOTION + \"?memberId=\" + props.id);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setPromoData(responseJson[ApiKey._API_DATA_KEY]);\n }\n }\n\n\n function TitleTooltip({ children, placement = \"top\", title = \"\" }) {\n return (\n {title}}\n >\n {/* Render the child element */}\n {children}\n \n );\n }\n\n // Use JSX inside the TitleTooltip for better formatting\n const tooltipContent = (\n <>\n Notes:
    \n 1. Revert: Cancel the promotion and burn coins.
    \n 2. Revert and Refund: Cancel the promotion, burn coins, and refund the credit used for the promotion to wallet.\n \n );\n\n const revertNotes = (\n <>\n * Important Notes:
    \n 1. Check if the player has purchased Featured Spins using Coins from the Provider BackOffice. DO NOT ALLOW REVERT if player purchased Featured Spins.
    \n 2. Please 1 to 5 minutes to receive the latest Coin Rollover / promotion rollover progress before reverting bonus for player.
    \n 3. All Coins in the Provider Game Wallet will be transferred back to Platform Wallet once we click CONFIRM in \"Revert and Refund\" pop up.\n \n );\n\n const handleClick = (id) => {\n console.log(id)\n const targetUrl = `${WebUrl._URL_CLAIMED_PROMOTION_DETAIL}?id=${id}`;\n\n // Open the URL in a new tab\n window.open(targetUrl, '_blank');\n };\n\n return (\n <>\n {showConfirmation && (\n {\n cancelPromo(\"Active\");\n setShowConfirmation(false);\n }}\n onCancel={() => {\n setShowConfirmation(false);\n }}\n >\n {t(\"UNABLE_TO_REVERT\")}\n \n )}\n \n \n
    \n {\n promoData.length > 0 &&\n promoData.map((item) => {\n var promoDetail = item.remark == null ? \"\" : JSON.parse(item.remark)\n var isAllowRevert = item.rolloverBalance == item.rolloverTarget && item.bonusWallet == item.initialBalance ? true : false;\n return (\n
    \n \n \n \n {promoDetail != \"\" &&\n \n }\n \n \n \n \n \n \n \n \n \n {item[\"transactionId\"] &&\n \n \n \n \n }\n \n \n \n \n
    {item[\"claimTime\"]}\n {promoDetail.Name}\n
    {\n handleClick(item[\"claimId\"])\n }}\n >{t(\"VIEW\")}\n
    \n\n
    {t(\"Coins\")}{item[\"bonusWallet\"]} / {item[\"initialBalance\"]}\n \n \n \n\n \n \n\n
    {t(\"ROLLOVER_PROGRESS\")}{item[\"isCleared\"] == 0 ? item[\"rolloverTarget\"] - item[\"rolloverBalance\"] : item[\"rolloverTarget\"]} / {item[\"rolloverTarget\"]}
    {t(\"TRANSACTION_ID\")}{item[\"transactionId\"]}
    {!item.isCleared ? revertNotes : \"\"}\n
    \n {!item.isCleared &&\n {\n setIsRefund(false);\n setShowConfirmation(true)\n }}\n\n >\n {t(\"Revert\")}\n \n }\n\n {!item.isCleared &&\n {\n setIsRefund(true);\n setShowConfirmation(true)\n }}\n >\n {t(\"Revert and Refund\")}\n \n }\n\n {item.isCleared &&\n Cleared\n }\n\n \n \n \n \n
    \n \n
    \n
    \n );\n })\n }\n
    \n
    \n
    \n \n );\n};\n\nexport default MemberPromotionStatement;","import React, { useState, useEffect } from \"react\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { useHistory, withRouter, useLocation } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport TransactionEnquiry from \"../transaction/TransactionEnquiry.js\";\nimport WalletTransfer from \"./WalletTransfer.js\";\nimport MemberManageBetDetailReport from \"../report/MemberManageBetDetailReport.js\";\nimport ManageProfitLossReport from \"../report/ManageProfitLossReport.js\";\nimport Product from \"./Product.js\";\nimport ReferralDetail from \"./ReferralDetail\";\nimport { LanguageKey, Role } from \"../../util/Constant\";\nimport MemberDetail from \"./MemberDetail.js\";\nimport { useTranslation } from \"react-i18next\";\nimport BonusTracking from \"./BonusTracking.js\";\nimport CommissionTracking from \"./CommissionTracking.js\";\nimport PointTracking from \"./PointTracking.js\";\nimport AdjustmentReport from \"./../report/AdjustmentReport\";\nimport WalletBalance from \"./../account/WalletBalance\";\nimport RollOverStatement from \"./../account/RollOverStatement\";\nimport BonusRollOverStatement from './BonusRollOverStatement.js';\nimport MemberSportsBetLimit from \"./MemberSportsBetLimit.js\";\nimport ManageMemberDownlineGames from \"./ManageMemberDownlineGames.js\";\n//import ManageMemberBankAccount from \"./ManageMemberBankAccount.js\"\nimport { useSelector } from \"react-redux\";\nimport PromoAndCoinRollover from \"./../account/PromoAndCoinRollover\";\nimport MemberPromotionStatement from \"./../account/MemberPromotionStatement\";\n\n/// \n/// Author : -\n/// \nconst ViewAccount = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _DETAIL_TAB = 1;\n const _TRANSACTION_TAB = 2;\n const _WALLET_TRANSFER_TAB = 3;\n const _BONUS_TRACKING_TAB = 4;\n const _COMMISSION_TRACKING_TAB = 5;\n const _POINT_TRACKING_TAB = 6;\n const _PROFIT_LOSS_TAB = 7;\n const _BET_DETAIL_TAB = 8;\n const _PRODUCT_TAB = 9;\n const _REFERRAL_TAB = 10;\n const _ADJUSTMENT_REPORT_TAB = 11;\n const _WALLET_BALANCE = 12;\n const _ROLL_OVER_STATEMENT = 13;\n const _SPORTS_BET_LIMIT = 14;\n const _MEMBER_DOWNLINE_GAMES = 15;\n const _BONUS_ROLL_OVER_STATEMENT = 16;\n //const _MANAGE_MEMBER_BANK_ACCOUNT = 17;\n const _PROMOTIONS = 17;\n const _PROMOTIONS_OLD = 18;\n const [username, setUsername] = useState(\"\");\n const [memberId, setMemberId] = useState(\"\");\n const [parentMemberId, setParentMemberId] = useState(\"\");\n const [navigateFromRole, setNavigateFromRole] = useState(\"\");\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n setMemberId(_location.state.id);\n setUsername(_location.state.username);\n setParentMemberId(_location.state.parentMemberId);\n if (_location.state.navigateFromRole) { setNavigateFromRole(_location.state.navigateFromRole); }\n }\n }, []);\n\n /// \n /// Author : -\n /// \n const toggleTab = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n }\n\n return (\n
    \n

    {memberId ? username : t(\"ADD_MEMBER_DETAIL\")}

    \n
    \n
    \n {memberId && }\n \n \n \n \n {memberId && \n {activeTab === _TRANSACTION_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _WALLET_TRANSFER_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _BONUS_TRACKING_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _COMMISSION_TRACKING_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _POINT_TRACKING_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _PROFIT_LOSS_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _BET_DETAIL_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _PRODUCT_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _SPORTS_BET_LIMIT &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _REFERRAL_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _ADJUSTMENT_REPORT_TAB &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _WALLET_BALANCE &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _ROLL_OVER_STATEMENT &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _BONUS_ROLL_OVER_STATEMENT &&
    \n
    \n \n
    \n
    }\n
    }\n {memberId && \n {activeTab === _MEMBER_DOWNLINE_GAMES &&
    \n
    \n \n
    \n
    }\n
    }\n {/*{memberId && */}\n {/* {activeTab === _MANAGE_MEMBER_BANK_ACCOUNT &&
    */}\n {/*
    */}\n {/* */}\n {/*
    */}\n {/*
    }*/}\n {/*
    }*/}\n {/*{memberId && */}\n {/* {activeTab === _PROMOTIONS &&
    */}\n {/*
    */}\n {/* */}\n {/*
    */}\n {/*
    }*/}\n {/*
    }*/}\n {memberId && \n {activeTab === _PROMOTIONS_OLD &&
    \n
    \n \n
    \n
    }\n
    }\n
    \n
    \n
    \n
    \n )\n}\n\nexport default withRouter(ViewAccount);\n","import React, { useState, useEffect } from 'react';\nimport { useLocation } from \"react-router-dom\";\nimport { useHistory } from \"react-router-dom\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from 'react-i18next';\nimport { ApiKey, ApiUrl, AccessRight, WebUrl, LanguageKey, DEFAULT_PAGE_SIZE } from \"../../util/Constant\";\nimport { Panel, PanelBody } from '../../components/panel/panel.jsx';\nimport ApiEngine from '../../util/ApiEngine';\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { numberWithCurrencyFormat } from '../../util/Util';\nimport { UncontrolledButtonDropdown, DropdownToggle, DropdownMenu, DropdownItem, Modal, ModalHeader, ModalBody } from 'reactstrap';\nimport DateRangePicker from 'react-bootstrap-daterangepicker';\nimport moment from 'moment';\nimport classNames from 'classnames';\nconst ViewProductAccount = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _location = useLocation();\n const _dispatch = useDispatch();\n let _history = useHistory();\n const [productAccounts, setProductAccounts] = useState([]);\n const [productLogUrl, setProductLogUrl] = useState();\n const [viewProductLog, setViewProductLog] = useState(false);\n const [startDate, setStartDate] = useState(moment().startOf('day').format(\"YYYY-MM-DD HH:mm:ss\"));\n const [endDate, setEndDate] = useState(moment().endOf('day').format(\"YYYY-MM-DD HH:mm:ss\"));\n const [productId, setProductId] = useState();\n const [userId, setUserId] = useState();\n const [username, setUsername] = useState(\"\");\n /// \n /// Author : Wong\n /// \n const _columns = [\n {\n Header: \"PRODUCT\",\n accessor: \"accountProductModel.product.productName\",\n },\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n },\n {\n Header: \"BONUS\",\n accessor: \"bonus\",\n Cell: ({ row, value }) => {\n return {numberWithCurrencyFormat(value, 2)}\n }\n },\n {\n Header: \"COMMISSION\",\n accessor: \"commission\",\n Cell: ({ row, value }) => {\n return {numberWithCurrencyFormat(value, 2)}\n }\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return {row.original.status ? t(\"ACTIVE\") : t(\"INACTIVE\")}\n }\n },\n {\n Id: \"Action\",\n Header: \"ACTION\",\n width: '1%',\n sortable: false,\n Cell: ({ row }) => {\n return
    \n \n \n \n viewLog(row.original.id)}>{t(\"VIEW_PRODUCT_LOG\")}\n viewBalance(row.original.accountProductModel.product.id)}>{t(\"VIEW_BALANCE\")}\n \n \n
    \n }\n }\n ];\n /// \n /// Author : Wong\n /// \n const _logColumns = [\n {\n Header: \"DATE\",\n accessor: \"date\"\n },\n {\n Header: \"AMOUNT\",\n accessor: \"amount\",\n Cell: ({ row, value }) => {\n return {numberWithCurrencyFormat(value, 2)}\n }\n },\n {\n Header: \"WIN_AMOUNT\",\n accessor: \"winAmount\",\n Cell: ({ row, value }) => {\n return 0 })}>{numberWithCurrencyFormat(value, 2)}\n }\n },\n {\n Header: \"REMARK\",\n accessor: \"remark\",\n Cell: ({ row, value }) => {\n return
    {value}
    \n }\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row, value }) => {\n let statusStr = \"\";\n let statusClass = \"\";\n switch (value) {\n case 1:\n statusStr = t(\"SETTLED\");\n statusClass = \"badge-success\";\n break;\n case 2:\n statusStr = t(\"CANCELLED\");\n statusClass = \"badge-danger\";\n break;\n case 0:\n statusStr = t(\"PENDING\");\n statusClass = \"badge-default\";\n break;\n }\n return {statusStr}\n }\n }\n ];\n /// \n /// Author : Wong\n /// \n useEffect(async () => {\n if (_location.state) {\n setUserId(_location.state.id);\n setUsername(_location.state.username);\n await getProductAccount(_location.state.id);\n }\n }, []);\n /// \n /// Author : Wong\n /// \n const getProductAccount = async (userId) => {\n await ApiEngine.get(`${ApiUrl._API_GET_USER_PRODUCT_ACCOUNT}?userId=${userId}`).then((response) => {\n if (response[ApiKey._API_SUCCESS_KEY]) {\n setProductAccounts(response.data);\n }\n });\n }\n /// \n /// Author : Wong\n /// \n const viewLog = async (id) => {\n setViewProductLog(true);\n setProductId(id);\n setProductLogUrl(`${ApiUrl._API_GET_PRODUCT_ACCOUNT_LOG}?id=${id}`);\n }\n /// \n /// Author : Wong\n /// \n const viewBalance = async (id) => {\n await ApiEngine.get(`${ApiUrl._API_GET_PRODUCT_ACCOUNT_BALANCE}?userId=${userId}&id=${id}`).then((response) => {\n let responseSuccess = response[ApiKey._API_SUCCESS_KEY];\n _dispatch(showMessage(responseSuccess, responseSuccess ? `${t(\"CREDIT\")}: ${numberWithCurrencyFormat(response[ApiKey._API_DATA_KEY], 4)}` : response[ApiKey._API_MESSAGE_KEY], true));\n });\n }\n /// \n /// Author : Wong\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n }\n /// \n /// Author : Wong\n /// \n const filter = () => {\n setProductLogUrl(`${ApiUrl._API_GET_PRODUCT_ACCOUNT_LOG}?id=${productId}&startDate=${startDate}&endDate=${endDate}`);\n }\n return (\n <>\n
    \n

    {t(\"VIEW_PRODUCT_ACCOUNT\")} ({username})

    \n \n \n \n \n \n
    \n \n { setViewProductLog(!viewProductLog) }}>{t(\"VIEW_PRODUCT_LOG\")}\n \n
    \n \n
    \n \n \n \n \n
    \n
    \n \n
    \n
    \n \n )\n}\nexport default ViewProductAccount;","import React, { useState } from 'react';\nimport { useEffect } from 'react';\nimport ApiEngine from '../../util/ApiEngine.js';\nimport { ApiKey, ApiUrl, LanguageKey } from '../../util/Constant.js';\nimport { createFormBody } from '../../util/Util.js';\nimport { Panel, PanelBody } from '../../components/panel/panel.jsx';\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { useTranslation } from 'react-i18next';\nimport { showMessage } from '../../redux/AppAction.js';\nimport { useDispatch } from 'react-redux';\n\n/// \n/// Author: Wong\n/// \nconst ManageIpBlock = () => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n\n const [blockedIpList, setBlockedIpList] = useState([]);\n\n const _TABLE_COLUMNS = [\n {\n Header: \"IP_ADDRESS\",\n accessor: \"ipAddress\"\n },\n {\n Header: \"USERNAME\",\n accessor: \"username\"\n },\n {\n Header: \"PHONE\",\n accessor: \"phoneNumber\"\n },\n {\n Header: \"DATETIME\",\n accessor: \"createdAt\"\n },\n {\n Header: \"ACTION\",\n id: \"action\",\n Cell: ({row}) => (\n \n ),\n width: '1%'\n }\n ];\n\n /// \n /// Author: Wong\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author: Wong\n /// \n const init = async () => {\n await ApiEngine.get(ApiUrl._API_GET_BLOCKED_IP_LIST)\n .then((response) => {\n setBlockedIpList(response[ApiKey._API_DATA_KEY]);\n })\n }\n\n /// \n /// Author: Wong\n /// \n const deleteIp = async (id) => {\n await ApiEngine.post(ApiUrl._API_DELETE_BLOCKED_IP, createFormBody({ id }))\n .then((response) => {\n _dispatch(showMessage(response[ApiKey._API_SUCCESS_KEY], t(response[ApiKey._API_MESSAGE_KEY])));\n if(response[ApiKey._API_SUCCESS_KEY]){\n init();\n }\n })\n }\n \n return (\n
    \n

    {t(\"MANAGE_IP_BLOCK\")}

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageIpBlock;","import React, { useState, useEffect } from 'react';\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { Panel, PanelBody } from './../../components/panel/panel.jsx';\nimport ApiEngine from '../../util/ApiEngine';\nimport { ApiKey, ApiUrl, LanguageKey } from '../../util/Constant';\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { createFormBody } from \"../../util/Util\";\nimport { withRouter } from \"react-router-dom\";\n\nconst TransactionQueue = props => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const [queueData, setQueueData] = useState([]);\n\n const _defaultTableColumns = [\n {\n Header: t(\"ID\"),\n accessor: \"id\",\n },\n {\n Header: t(\"MEMBER_ID\"),\n accessor: \"memberId\",\n },\n {\n Header: t(\"MEMBER_USERNAME\"),\n accessor: \"memberUsername\",\n },\n {\n Header: t(\"WALLET_ID\"),\n accessor: \"walletId\",\n },\n {\n Header: t(\"CREATED_TIME\"),\n accessor: \"createdTime\",\n },\n {\n Header: \"\",\n id: \"button\",\n Cell: ({ row }) => {\n return (\n \n );\n },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const init = async () => {\n var responseJson = await ApiEngine.get(ApiUrl._API_GET_TRANSACTION_QUEUE);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setQueueData(responseJson[ApiKey._API_DATA_KEY]);\n }\n }\n\n const removePlayerFromQueue = async (rowData) => {\n _dispatch(setBusy());\n var params = {\n \"memberId\": rowData.memberId,\n \"walletId\": rowData.walletId\n };\n var formBody = createFormBody(params);\n var responseJson = await ApiEngine.post(ApiUrl._API_REMOVE_PLAYER_FROM_TRANSACTION_QUEUE, formBody);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n init();\n }\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], responseJson[ApiKey._API_MESSAGE_KEY]));\n _dispatch(setIdle());\n }\n\n return (\n <>\n

    {t(\"TRANSACTION_QUEUE\") + \" (\" + t(\"PLAYERS_IN_QUEUE\") + \" >= 10 \" + t(\"MINUTES\") + \")\"}

    \n \n \n \n \n \n \n )\n}\n\nexport default withRouter(TransactionQueue);","import React, { useEffect } from 'react';\nimport { useState } from 'react';\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport ApiEngine from '../../util/ApiEngine';\nimport { ApiKey, ApiUrl, LanguageKey } from '../../util/Constant';\nimport { useTranslation } from \"react-i18next\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from 'moment';\n\nconst ManageMobileTAC = (props) => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [TACData, setTACData] = useState([]);\n useEffect(() => {\n init();\n }, []);\n\n const _columns = [\n {\n id: \"phoneNumber\",\n Header: t(\"PHONE_NUMBER\"),\n accessor: \"phoneNumber\",\n Cell: ({ row }) => {\n return ({row.original.phoneNumber})\n }\n },\n {\n id: \"username\",\n Header: t(\"USERNAME\"),\n accessor: \"username\",\n Cell: ({ row }) => {\n return ({row.original.username})\n }\n },\n {\n id: \"email\",\n Header: t(\"EMAIL\"),\n accessor: \"email\",\n Cell: ({ row }) => {\n return ({row.original.email})\n }\n },\n {\n id: \"tac\",\n Header: t(\"TAC\"),\n accessor: \"tac\",\n Cell: ({ row }) => {\n return ({row.original.tac})\n }\n },\n {\n id: \"createdTime\",\n Header: t(\"CREATED_TIME\"),\n accessor: \"createdTime\",\n Cell: ({ row }) => {\n return ({moment(row.original.createdTime).format('YYYY-MM-DD HH:mm:ss')})\n }\n },\n {\n id: \"expireAt\",\n Header: t(\"EXPIRED_TIME\"),\n accessor: \"expireAt\",\n Cell: ({ row }) => {\n return ({moment(row.original.expireAt).format('YYYY-MM-DD HH:mm:ss')})\n }\n },\n {\n id: \"usage\",\n Header: t(\"USAGE\"),\n accessor: \"usage\",\n Cell: ({ row }) => {\n return ({row.original.usage})\n }\n },\n ];\n\n const init = async () => {\n let responseJson = await ApiEngine.get(ApiUrl._API_GET_MOBILE_TAC);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTACData(data);\n }\n }\n return (\n
    \n

    {t(\"MOBILE_TAC\")}

    \n \n \n \n \n \n
    \n )\n}\n\nexport default ManageMobileTAC;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n navigateTo,\n numberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport {\n ApiKey,\n ApiUrl,\n AccessRight,\n WebUrl,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n Role,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\nimport moment from 'moment';\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\n\n\n/// \n/// Author : -\n/// \nconst ManageMember = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n \n const [tableData, setTableData] = useState([]);\n const [selectedDate, setSelectedDate] = useState(moment().format(\"YYYY-MM-DD\"));\n\n let _tableColumns = [\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._MANAGE_BIRTHDAY_REWRDS,\n true\n ) && ((row.original.isClaim==false)?\n
    \n handleCheckboxChange(e)}\n />\n
    :\n
    \n \n {t(\"RELEASED\")}\n \n
    \n\n ),\n disableSortBy: true,\n disableFilters: true,\n width: 50,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n \n {row.original.username}\n \n );\n },\n },\n {\n Header: \"DATE_OF_BIRTH\",\n accessor: \"birthDate\",\n minWidth: 100,\n },\n \n {\n Header: \"VIP\",\n accessor: \"vipLevel\",\n minWidth: 100,\n },\n {\n Header: \"REWARDAMOUNT\",\n accessor: \"amount\",\n minWidth: 100,\n },\n \n ];\n\n const [selectedCheckboxes, setSelectedCheckboxes] = useState([]);\n\n const handleCheckboxChange = (e) => {\n const { value } = e.target;\n console.log(e.target)\n setSelectedCheckboxes((prevSelected) => {\n console.log(prevSelected)\n if (prevSelected.includes(value)) {\n return prevSelected.filter((id) => id !== value);\n } else {\n return [...prevSelected, value];\n }\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const init = async () => {\n\n fetch(ApiUrl._API_GET_MEMBER_BIRTHDAY_LIST + \"?date=\" + selectedDate +\"\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setTableData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n async function getBirthdayMemberList() {\n _dispatch(setBusy());\n fetch(ApiUrl._API_GET_MEMBER_BIRTHDAY_LIST + \"?date=\" + selectedDate + \"\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setTableData(responseJson[ApiKey._API_DATA_KEY]);\n }\n _dispatch(setIdle());\n });\n }\n\n async function Claim(idList) {\n let params = {\n \"memberList\": idList,\n \"date\": selectedDate,\n };\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n fetch(ApiUrl._API_GENERATE_BIRTHDAY_REWARD, {\n method: ApiKey._API_POST,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n body: formBody\n }).then((response) => response.json()).then((responseJson) => {\n getBirthdayMemberList();\n _dispatch(setIdle());\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n });\n \n }\n\n const handleEvent = (event, picker) => {\n setSelectedDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n };\n\n\n return (\n
    \n

    \n {t(\"BIRTHDAY_REWARD\")}\n

    \n \n
    \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n getBirthdayMemberList()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n
    \n\n \n \n
    \n \n
    \n \n {}\n \n
    \n
    \n \n \n );\n};\n\nexport default ManageMember;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { navigateTo, numberWithCurrencyFormat } from \"../../util/Util\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tAccessRight,\n\tWebUrl,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n\tRole,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\n\n/// \n/// Author : -\n/// \nconst ManageMemberWeeklyRescue = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tvar _username = useSelector(\n\t\t(state) => state[\"authState\"][\"userData\"][\"username\"]\n\t);\n\n\tconst [tableData, setTableData] = useState([]);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"week\").format(\"YYYY-MM-DD\")\n\t);\n\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"week\").format(\"YYYY-MM-DD\")\n\t);\n\n\tconst [selectedDate, setSelectedDate] = useState(\n\t\tmoment().subtract(1, \"days\").format(\"YYYY-MM-DD\")\n\t);\n\n\tconst [showReleaseBtn, setShowReleaseBtn] = useState(true);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(\n\t\t\t\t\tAccessRight._MANAGE_MEMBER_WEEKLY_RESCUE,\n\t\t\t\t\ttrue\n\t\t\t\t) &&\n\t\t\t\t(row.original.isClaim == false ? (\n\t\t\t\t\trow.original.isAllowToClaim == \"true\" ? (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t handleCheckboxChange(e)}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t
    \n\t\t\t\t\t) : (\n\t\t\t\t\t\t
    \n\t\t\t\t\t)\n\t\t\t\t) : (\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"RELEASED\")}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t)),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 50,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn {row.original.username};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"VIP\",\n\t\t\taccessor: \"vipLevel\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"WEEKSTARTDATE\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn moment.utc(row.original.weekStartDate).format(\"DD-MM-YYYY\");\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"WEEKENDDATE\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn moment.utc(row.original.weekEndDate).format(\"DD-MM-YYYY\");\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"TOTAL_TURNOVER\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn row.original.turnover.toFixed(2);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"WIN_LOSS\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (row.original.turnover + row.original.sumWinLoss).toFixed(2);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"MIN_LOSS\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn row.original.minLoss.toFixed(2);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"TOTAL_LOSS\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (row.original.sumWinLoss * -1).toFixed(2);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"REWARDAMOUNT\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn row.original.rewardAmount.toFixed(2);\n\t\t\t},\n\t\t},\n\t];\n\n\tconst [selectedCheckboxes, setSelectedCheckboxes] = useState([]);\n\n\tconst handleCheckboxChange = (e) => {\n\t\tconst { value } = e.target;\n\t\tsetSelectedCheckboxes((prevSelected) => {\n\t\t\tif (prevSelected.includes(value)) {\n\t\t\t\treturn prevSelected.filter((id) => id !== value);\n\t\t\t} else {\n\t\t\t\treturn [...prevSelected, value];\n\t\t\t}\n\t\t});\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\tconst init = async () => {\n\n\t\tfetch(\n\t\t\tApiUrl._API_GET_MEMBER_WEEKLY_RESCUE +\n\t\t\t\t\"?startDate=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&endDate=\" +\n\t\t\t\tendDate,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetTableData(responseJson[ApiKey._API_DATA_KEY].data);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tasync function getMemberWeeklyRescue() {\n\t\t_dispatch(setBusy());\n\t\tfetch(\n\t\t\tApiUrl._API_GET_MEMBER_WEEKLY_RESCUE +\n\t\t\t\t\"?startDate=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&endDate=\" +\n\t\t\t\tendDate,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetTableData(responseJson[ApiKey._API_DATA_KEY].data);\n\t\t\t\t}\n\t\t\t\t_dispatch(setIdle());\n\t\t\t});\n\t}\n\n\t\n\t function CheckAll(){\n\t\t if(tableData.length > 0)\n\t\t {\n\t\t\t setSelectedCheckboxes(tableData.map(row => \n\t\t\t\t`${row.id}#${row.weekStartDate}`\n\t\t\t ));\n\t\t }\n\t }\n\n\tasync function Claim(idList, amountList, startDateList, endDateList) {\n\t\t//console.log(idList);\n\n\t\tlet tempList = [];\n\t\tfor (var i = 0; i < idList.length; i++) {\n\t\t\tvar splitId = idList[i].split(\"#\");\n\t\t\ttempList.push(splitId[0]);\n\t\t}\n\n\t\t//console.log(tempList);\n\t\tlet params = {\n\t\t\tmemberList: tempList,\n\t\t\tamountList: amountList,\n\t\t\tstartDate: startDate,\n\t\t\tendDate: endDate,\n\t\t\t//date: startDateList[0],\n\t\t};\n\n\t\t// console.log(params);\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\t\tfetch(ApiUrl._API_GENERATE_MEMBER_WEEKLY_RESCUE, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tgetMemberWeeklyRescue();\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t});\n\t}\n\n\tasync function ClaimAll(idList, amountList, startDateList, endDateList) {\n\t\tlet params = {\n\t\t\tmemberList: idList,\n\t\t\tamountList: amountList,\n\t\t\tstartDate: startDate,\n\t\t\tendDate: endDate,\n\t\t};\n\n\t\t// console.log(params);\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\t\tfetch(ApiUrl._API_GENERATE_MEMBER_WEEKLY_RESCUE, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tgetMemberWeeklyRescue();\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t});\n\t}\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).startOf(\"week\").format(\"YYYY-MM-DD\"));\n\t\tsetEndDate(moment(picker.startDate).endOf(\"week\").format(\"YYYY-MM-DD\"));\n\t};\n\n\t/* const handleEvent = (event, picker) => {\n\t\tsetSelectedDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n\t}; */\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"MEMBER_WEEKLY_RESCUE\")}

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t getMemberWeeklyRescue()}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t{showReleaseBtn && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tClaim(\n\t\t\t\t\t\t\t\t\t\tselectedCheckboxes,\n\t\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\tx.isClaim == false &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tselectedCheckboxes.includes(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tx.id + \"#\" + x.weekStartDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t.map((member) => member.rewardAmount),\n\t\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\tx.isClaim == false &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tselectedCheckboxes.includes(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tx.id + \"#\" + x.weekStartDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t.map((member) =>\n\t\t\t\t\t\t\t\t\t\t\t\tmoment.utc(member.weekStartDate).format(\"YYYY-MM-DD\")\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\tx.isClaim == false &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tselectedCheckboxes.includes(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tx.id + \"#\" + x.weekStartDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t.map((member) =>\n\t\t\t\t\t\t\t\t\t\t\t\tmoment.utc(member.weekEndDate).format(\"YYYY-MM-DD\")\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdisabled={selectedCheckboxes.length > 0 ? false : true}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"RELEASE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tClaimAll(\n\t\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t\t.filter((x) => x.isClaim == false)\n\t\t\t\t\t\t\t\t\t\t\t.map((member) => member.id),\n\t\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t\t.filter((x) => x.isClaim == false)\n\t\t\t\t\t\t\t\t\t\t\t.map((member) => member.rewardAmount),\n\t\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\tx.isClaim == false &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tselectedCheckboxes.includes(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tx.id + \"#\" + x.weekStartDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t.map((member) =>\n\t\t\t\t\t\t\t\t\t\t\t\tmoment.utc(member.weekStartDate).format(\"YYYY-MM-DD\")\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\tx.isClaim == false &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tselectedCheckboxes.includes(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tx.id + \"#\" + x.weekStartDate\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t.map((member) =>\n\t\t\t\t\t\t\t\t\t\t\t\tmoment.utc(member.weekEndDate).format(\"YYYY-MM-DD\")\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\ttableData.filter((x) => x.isClaim == false).length > 0\n\t\t\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t\t\t: true\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"RELEASE_ALL\")}\n\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default ManageMemberWeeklyRescue;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n navigateTo,\n numberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport {\n ApiKey,\n ApiUrl,\n AccessRight,\n WebUrl,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n Role,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\nimport moment from 'moment';\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\n\n\n/// \n/// Author : -\n/// \nconst ManageMemberRebate = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n\n const [tableData, setTableData] = useState([]);\n const [selectedDate, setSelectedDate] = useState(moment().subtract(1, \"days\").format(\"YYYY-MM-DD\"));\n\n let _tableColumns = [\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._MANAGE_MEMBER_WEEKLY_RESCUE,\n true\n ) && ((row.original.isClaim == false) ?\n
    \n handleCheckboxChange(e)}\n />\n
    :\n
    \n \n {t(\"RELEASED\")}\n \n
    \n\n ),\n disableSortBy: true,\n disableFilters: true,\n width: 50,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"USERNAME\",\n accessor: \"memberUsername\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n \n {row.original.memberUsername}\n \n );\n },\n },\n {\n Header: \"VALID_TURNOVER\",\n accessor: \"validTurnover\",\n minWidth: 100,\n },\n {\n Header: \"CATEGORY\",\n accessor: \"categoryName\",\n minWidth: 100,\n },\n {\n Header: \"VIP\",\n accessor: \"vipName\",\n minWidth: 100,\n },\n {\n Header: \"Rebate %\",\n accessor: \"vipRebate\",\n minWidth: 100,\n },\n {\n Header: \"Rebate Amount\",\n accessor: \"amount\",\n minWidth: 100,\n },\n\n ];\n\n const [selectedCheckboxes, setSelectedCheckboxes] = useState([]);\n const handleCheckboxChange = (e) => {\n const { value } = e.target;\n setSelectedCheckboxes((prevSelected) => {\n if (prevSelected.includes(value)) {\n return prevSelected.filter((id) => id !== value);\n } else {\n return [...prevSelected, value];\n }\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const init = async () => {\n _dispatch(setBusy());\n fetch(ApiUrl._API_GET_MEMBER_REBATE_LIST + \"?date=\" + selectedDate + \"\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_DATA_KEY] != null)\n setTableData(responseJson[ApiKey._API_DATA_KEY]);\n else\n setTableData([]);\n }\n _dispatch(setIdle());\n });\n }\n\n async function getRebateMemberList() {\n _dispatch(setBusy());\n fetch(ApiUrl._API_GET_MEMBER_REBATE_LIST + \"?date=\" + selectedDate + \"\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_DATA_KEY] != null)\n setTableData(responseJson[ApiKey._API_DATA_KEY]);\n else\n setTableData([]);\n }\n\n _dispatch(setIdle());\n });\n }\n\n function CheckAll(){\n if(tableData.length > 0)\n {\n setSelectedCheckboxes(tableData.map(row => \n `${row.memberId},${row.vipId},${row.categoryId},${row.validTurnover},${row.vipRebate},${row.amount},${row.date}`\n ));\n }\n }\n\n async function Claim(idList, select) {\n\n idList.forEach(function (option) {\n let params = [];\n if (select != 'all') {\n var list = option.split(\",\");\n params = {\n \"memberId\": list[0],\n \"vipId\": list[1],\n \"categoryId\": list[2],\n \"validTurnover\": list[3],\n \"vipRebate\": list[4],\n \"amount\": list[5],\n \"date\": list[6],\n };\n } else {\n params = {\n \"memberId\": option.memberId,\n \"vipId\": option.vipId,\n \"categoryId\": option.categoryId,\n \"validTurnover\": option.validTurnover,\n \"vipRebate\": option.vipRebate,\n \"amount\": option.amount,\n \"date\": option.date,\n };\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n fetch(ApiUrl._API_GENERATE_REBATE_REWARD, {\n method: ApiKey._API_POST,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n body: formBody\n }).then((response) => response.json()).then((responseJson) => {\n getRebateMemberList();\n setSelectedCheckboxes([]);\n _dispatch(setIdle());\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n });\n });\n\n\n }\n\n const handleEvent = (event, picker) => {\n setSelectedDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n };\n\n\n return (\n
    \n

    \n VIP Commission\n

    \n \n
    \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n getRebateMemberList()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n
    \n \n \n \n
    \n\n
    \n \n {}\n \n
    \n
    \n \n \n );\n};\n\nexport default ManageMemberRebate;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelHeader, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n DisplayMode,\n LanguageKey,\n ContentTypeString,\n AllVipOption,\n} from \"../../util/Constant\";\nimport {\n stringIsNullOrEmpty,\n createMultiPartFormBody,\n imagePathToFileObject,\n} from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine\"\nimport moment from \"moment\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\n\n/// \n/// Author : -\n/// \n\nconst PromotionDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n let _history = useHistory();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors } = useForm();\n const [displayMode, setDisplayMode] = useState(\"\");\n\n const [description, setDescription] = useState(\"\");\n const [title, setTitle] = useState(\"\");\n const [content, setContent] = useState(\"\");\n const [url, setUrl] = useState(\"\");\n const [promotionId, setPromotionId] = useState(props.id);\n const [promotionRefId, setPromotionRefId] = useState(\"\");\n const [status, setStatus] = useState(true);\n\n const [desktopFile, setDesktopFile] = useState([]);\n const [mobileFile, setMobileFile] = useState([]);\n const [desktopImage, setDesktopImage] = useState();\n const [mobileImage, setMobileImage] = useState();\n const [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n const [isNewMobileImage, setIsNewMobileImage] = useState(false);\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n const [vip, setVip] = useState();\n const [vipOption, setVipOption] = useState([]);\n const [claimedPromo, setClaimedPromo] = useState();\n const [promoData, setPromoData] = useState();\n const [productCategoryData, setProductCategoryData] = useState([]);\n const [vipList, setVipList] = useState([]);\n\n let _tableColumns = [\n {\n Header: t(\"GAME_PROVIDER\"),\n accessor: \"productName\",\n disableSortBy: true,\n },\n {\n Header: t(\"STATUS\"),\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == true ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n }\n ];\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n\n await fetch(ApiUrl._API_GET_USER_VIP + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const VipList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (vip) {\n VipList.push({ label: vip.name, value: vip.id });\n });\n setVipList(VipList);\n }\n });\n await fetch(ApiUrl._API_GET_PRODUCT_CATEGORY + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductCategoryData(responseJson[ApiKey._API_DATA_KEY]);\n const categoryList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (category) {\n categoryList.push({ label: category.title, value: category.id });\n });\n setProductCategoryData(categoryList);\n }\n });\n\n const queryParams = new URLSearchParams(window.location.search);\n const id = queryParams.get('id') || \"\";\n var responseJson = await ApiEngine.get(ApiUrl._API_GET_MEMBER_CLAIMED_PROMOTION_DETAIL + \"?id=\" + id);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setClaimedPromo(JSON.parse(responseJson[ApiKey._API_DATA_KEY][\"remark\"]));\n console.log(JSON.parse(responseJson[ApiKey._API_DATA_KEY][\"remark\"]))\n setPromoData(responseJson[ApiKey._API_DATA_KEY]);\n\n\n }\n }\n\n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n\n return (\n
    \n

    \n {t(\"View Promotion\")}\n

    \n \n \n {claimedPromo && promoData &&\n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n vip.value == claimedPromo.MinVipLevel\n )[0].label}\n disabled\n />\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n {t(\"ZERO_EQUAL_UNLIMITED\")}\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n {console.log(productCategoryData.filter(\n (category) =>\n category.value == promoData.productCategoryId\n )[0].label)}\n \n category.value == promoData.productCategoryId\n )[0].label}\n disabled\n />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {!stringIsNullOrEmpty(promoData) &&\n promoData.productCategoryId == 1 &&\n promoData.depositPromotionProducts &&\n (\n
    \n
    \n \n {t(\"SELECTED_PRODUCT\")}\n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n )}\n
    \n }\n
    \n
    \n
    \n );\n};\n\nexport default withRouter(PromotionDetail);\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n Status,\n LanguageKey,\n _SYNC_INTERVAL_PATTERN,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Select from \"react-select\";\n\n/// \n/// Author : -\n/// \n\nconst MasterProductDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const {\n register,\n handleSubmit,\n errors,\n setValue,\n watch,\n unregister,\n } = useForm();\n const [productId, setProductId] = useState(\"\");\n const [productDisplayId, setProductDisplayId] = useState(\"\");\n const [productName, setProductName] = useState(\"\");\n const [productCode, setProductCode] = useState(\"\");\n const [clientCode, setClientCode] = useState(\"\");\n const [clientSecret, setClientSecret] = useState(\"\");\n const [backUrl, setBackUrl] = useState(\"\");\n const [regularSyncInterval, setRegularSyncInterval] = useState(\"\");\n const [selectRegularSyncPattern, setSelectRegularSyncPattern] = useState(0);\n const [settlementSyncEnabled, setSettlementSyncEnabled] = useState(\"\");\n const [settlementSyncTimeHH, setSettlementSyncTimeHH] = useState(\"\");\n const [settlementSyncTimeMM, setSettlementSyncTimeMM] = useState(\"\");\n const [reportUrl, setReportUrl] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [isNewImage, setIsNewImage] = useState(false);\n const [isNewBanner, setIsNewBanner] = useState(false);\n const [isNewDesktopBanner, setIsNewDesktopBanner] = useState(false);\n const [isNewPopupBanner, setIsNewPopupBanner] = useState(false);\n const [isNewProviderImage, setIsNewProviderImage] = useState(false);\n const [isNewProductDesktopImage, setIsNewProductDesktopImage] = useState(false);\n const [isNewProductDesktopImageHover, setIsNewProductDesktopImageHover] = useState(false);\n const [isNewIcon, setIsNewIcon] = useState(false);\n const [isSeamless, setIsSeamless] = useState(true);\n const [downloadUrl, setDownloadUrl] = useState(\"\");\n const [bonus, setBonus] = useState();\n const [commission, setCommission] = useState();\n const [showConfirmation, setShowConfirmation] = useState(false);\n\n const [content, setContent] = useState(\"\");\n const [logoFile, setLogoFile] = useState([]);\n const [logoImage, setLogoImage] = useState();\n const [bannerFile, setBannerFile] = useState([]);\n const [bannerImage, setBannerImage] = useState();\n const [bannerDesktopFile, setBannerDesktopFile] = useState([]);\n const [bannerDesktopImage, setBannerDesktopImage] = useState();\n const [productDesktopFile, setProductDesktopFile] = useState([]);\n const [productDesktopImage, setProductDesktopImage] = useState();\n const [productDesktopFileHover, setProductDesktopFileHover] = useState([]);\n const [productDesktopImageHover, setProductDesktopImageHover] = useState();\n const [popupBannerFile, setPopupBannerFile] = useState([]);\n const [popupBannerImage, setPopupBannerImage] = useState();\n const [iconFile, setIconFile] = useState([]);\n const [iconImage, setIconImage] = useState();\n const [hourList, setHourList] = useState([]);\n const [minuteList, setMinuteList] = useState([]);\n const [supportAgentMode, setSupportAgentMode] = useState(false);\n const [showRankInput, setShowRankInput] = useState(false);\n const [providerFile, setProviderFile] = useState([]);\n const [providerImage, setProviderImage] = useState();\n\n /// \n /// Author : -\n /// Used to set logo\n /// \n const logoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setLogoFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setLogoImage(reader.result);\n setIsNewImage(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// Used to set banner\n /// \n const bannerDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setBannerFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setBannerImage(reader.result);\n setIsNewBanner(true);\n };\n reader.readAsDataURL(file);\n }\n };\n \n /// \n /// Author : -\n /// Used to set banner for desktop\n /// \n const bannerDesktopDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setBannerDesktopFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setBannerDesktopImage(reader.result);\n setIsNewDesktopBanner(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// Used to set banner icon\n /// \n const iconDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setIconFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setIconImage(reader.result);\n \n setIsNewIcon(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// Used to set icon for desktop\n /// \n const desktopLogoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setProductDesktopFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setProductDesktopImage(reader.result);\n setIsNewProductDesktopImage(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// Used to set hover icon for desktop\n /// \n const desktopLogoHoverDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setProductDesktopFileHover(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setProductDesktopImageHover(reader.result);\n setIsNewProductDesktopImageHover(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// Used to set popup banner\n /// \n const popupBannerDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setPopupBannerFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setPopupBannerImage(reader.result);\n setIsNewPopupBanner(true);\n };\n reader.readAsDataURL(file);\n }\n };\n const providerLogoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setProviderFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setProviderImage(reader.result);\n setIsNewProviderImage(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n productName: data.productName,\n status: data.status,\n productId: data.productDisplayId,\n productCode: data.productCode,\n clientCode: data.clientCode,\n clientSecret: data.clientSecret,\n isNewProductImage: isNewImage,\n isNewBannerImage: isNewBanner,\n isNewPopupBannerImage: isNewPopupBanner,\n isNewProductDesktopImage: isNewProductDesktopImage,\n isNewProductDesktopImageHover: isNewProductDesktopImageHover,\n isNewIconImage: isNewIcon,\n isNewProviderImage: isNewProviderImage,\n backUrl: data.backUrl,\n reportUrl: data.reportUrl,\n isSeamless: data.isSeamless,\n downloadUrl: data.downloadUrl,\n bonus: data.bonus,\n commission: data.commission,\n useGroupRate: data.useGroupRate,\n regularSyncInterval: data.regularSyncInterval,\n regularSyncPattern: selectRegularSyncPattern,\n settlementSyncEnabled: data.settlementSyncEnabled,\n settlementSyncTimeHH: settlementSyncTimeHH,\n settlementSyncTimeMM: settlementSyncTimeMM,\n supportFullPlayerGameRecords: data.supportAgentMode,\n hasOwnLobby: data.hasOwnLobby,\n content: data.content,\n };\n if (typeof (data.hideLobby) != \"undefined\") {\n params[\"hideLobby\"] = data.hideLobby;\n }\n if (!stringIsNullOrEmpty(data.rankInGamesLobby)) {\n params[\"rankInGamesLobby\"] = data.rankInGamesLobby;\n }\n\n if (!stringIsNullOrEmpty(logoFile)) {\n params[\"productImage\"] = logoFile;\n }\n\n if (!stringIsNullOrEmpty(bannerFile)) {\n params[\"bannerImage\"] = bannerFile;\n }\n\n if (!stringIsNullOrEmpty(bannerDesktopFile)) {\n params[\"bannerDesktopImage\"] = bannerDesktopFile;\n }\n\n if (!stringIsNullOrEmpty(productDesktopFile)) {\n params[\"productDesktopImage\"] = productDesktopFile;\n }\n\n if (!stringIsNullOrEmpty(productDesktopFileHover)) {\n params[\"productDesktopImageHover\"] = productDesktopFileHover;\n }\n\n if (!stringIsNullOrEmpty(iconFile)) {\n params[\"iconImage\"] = iconFile;\n }\n\n if (!stringIsNullOrEmpty(popupBannerFile)) {\n params[\"popupBannerImage\"] = popupBannerFile;\n }\n\n if (!stringIsNullOrEmpty(providerFile)) {\n params[\"providerImage\"] = providerFile;\n }\n\n if (stringIsNullOrEmpty(bannerImage)) {\n params[\"bannerImageRemoved\"] = true;\n }\n\n if (stringIsNullOrEmpty(bannerDesktopImage)) {\n params[\"bannerDesktopImageRemoved\"] = true;\n }\n\n if (stringIsNullOrEmpty(productDesktopImage)) {\n params[\"productDesktopImageRemoved\"] = true;\n }\n\n if (stringIsNullOrEmpty(productDesktopImageHover)) {\n params[\"productDesktopImageRemovedHover\"] = true;\n }\n\n if (stringIsNullOrEmpty(logoImage)) {\n params[\"productImageRemoved\"] = true;\n }\n\n if (stringIsNullOrEmpty(iconImage)) {\n params[\"iconImageRemoved\"] = true;\n }\n\n if (stringIsNullOrEmpty(popupBannerImage)) {\n params[\"popupBannerImageRemoved\"] = true;\n }\n\n if (stringIsNullOrEmpty(providerImage)) {\n params[\"providerImageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(productId)) {\n params[\"id\"] = productId;\n }\n\n let formBody = createMultiPartFormBody(params);\n\n let responseJson = await ApiEngine.post(\n ApiUrl._API_CREATE_OR_UPDATE_MASTER_PRODUCT,\n formBody\n );\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIsNewImage(false);\n setIsNewBanner(false);\n setIsNewIcon(false);\n setIsNewProviderImage(false);\n setProductId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setBonus(watch(\"bonus\"));\n setCommission(watch(\"commission\"));\n }\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n initHourAndMinuteList();\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_MASTER_PRODUCT_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n let responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setProductDisplayId(responseJson[ApiKey._API_DATA_KEY][\"productId\"]);\n setProductName(responseJson[ApiKey._API_DATA_KEY][\"productName\"]);\n setProductCode(responseJson[ApiKey._API_DATA_KEY][\"productCode\"]);\n setClientCode(responseJson[ApiKey._API_DATA_KEY][\"clientCode\"]);\n setClientSecret(responseJson[ApiKey._API_DATA_KEY][\"clientSecret\"]);\n setBackUrl(responseJson[ApiKey._API_DATA_KEY][\"backUrl\"]);\n setReportUrl(responseJson[ApiKey._API_DATA_KEY][\"reportUrl\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setIsSeamless(responseJson[ApiKey._API_DATA_KEY][\"isSeamless\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"])\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"productImage\"]\n )\n ) {\n setLogoImage(responseJson[ApiKey._API_DATA_KEY][\"productImage\"]);\n }\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"productDesktopImage\"]\n )\n ) {\n setProductDesktopImage(responseJson[ApiKey._API_DATA_KEY][\"productDesktopImage\"]);\n }\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"productDesktopImageHover\"]\n )\n ) {\n setProductDesktopImageHover(responseJson[ApiKey._API_DATA_KEY][\"productDesktopImageHover\"]);\n }\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"bannerImage\"]\n )\n ) {\n setBannerImage(responseJson[ApiKey._API_DATA_KEY][\"bannerImage\"]);\n }\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"iconImage\"]\n )\n ) {\n setIconImage(responseJson[ApiKey._API_DATA_KEY][\"iconImage\"]);\n }\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"popupBannerImage\"]\n )\n ) {\n setPopupBannerImage(responseJson[ApiKey._API_DATA_KEY][\"popupBannerImage\"]);\n }\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"providerImage\"]\n )\n ) {\n setProviderImage(responseJson[ApiKey._API_DATA_KEY][\"providerImage\"]);\n }\n\n setDownloadUrl(responseJson[ApiKey._API_DATA_KEY][\"downloadUrl\"]);\n setBonus(responseJson[ApiKey._API_DATA_KEY][\"bonus\"]);\n setValue(\"bonus\", responseJson[ApiKey._API_DATA_KEY][\"bonus\"]);\n setValue(\n \"commission\",\n responseJson[ApiKey._API_DATA_KEY][\"commission\"]\n );\n setCommission(responseJson[ApiKey._API_DATA_KEY][\"commission\"]);\n setValue(\n \"useGroupRate\",\n responseJson[ApiKey._API_DATA_KEY][\"useGroupRate\"]\n );\n setRegularSyncInterval(\n responseJson[ApiKey._API_DATA_KEY][\"regularSyncInterval\"]\n );\n setSelectRegularSyncPattern(\n responseJson[ApiKey._API_DATA_KEY][\"regularSyncPattern\"]\n );\n setSettlementSyncEnabled(\n responseJson[ApiKey._API_DATA_KEY][\"settlementSyncEnabled\"]\n );\n setValue(\n \"settlementSyncEnabled\",\n responseJson[ApiKey._API_DATA_KEY][\"settlementSyncEnabled\"]\n );\n setSettlementSyncTimeHH(\n responseJson[ApiKey._API_DATA_KEY][\"settlementSyncTimeHH\"]\n );\n setSettlementSyncTimeMM(\n responseJson[ApiKey._API_DATA_KEY][\"settlementSyncTimeMM\"]\n );\n setValue(\n \"supportAgentMode\",\n responseJson[ApiKey._API_DATA_KEY][\"supportFullPlayerGameRecords\"]\n );\n setValue(\n \"hasOwnLobby\",\n responseJson[ApiKey._API_DATA_KEY][\"hasOwnLobby\"]\n );\n setShowRankInput(responseJson[ApiKey._API_DATA_KEY][\"hasOwnLobby\"]);\n setValue(\"hideLobby\", responseJson[ApiKey._API_DATA_KEY][\"hideLobby\"]);\n setValue(\n \"rankInGamesLobby\",\n responseJson[ApiKey._API_DATA_KEY][\"rankInGamesLobby\"]\n );\n }\n }\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"selectRegularSyncPattern\" });\n register({ name: \"settlementSyncTimeHH\" });\n register({ name: \"settlementSyncTimeMM\" });\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n function preSubmit() {\n if (\n productId &&\n (bonus != watch(\"bonus\") || commission != watch(\"commission\"))\n ) {\n setShowConfirmation(true);\n } else {\n handleSubmit(submitForm)();\n }\n }\n\n function initHourAndMinuteList() {\n setHourList(makeNumberList(0, 23));\n setMinuteList(makeNumberList(0, 59));\n setSettlementSyncTimeHH(\"00\");\n setSettlementSyncTimeMM(\"00\");\n }\n\n /// \n /// Make the number list\n /// \n function makeNumberList(minimum, maximum) {\n let numberList = [];\n for (let i = minimum; i <= maximum; i++) {\n numberList.push({\n value: i,\n label: i.toString().padStart(2, \"0\"),\n });\n }\n return numberList;\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n (async () => {\n let currentUseGroupRate = watch(\"useGroupRate\");\n\n if (currentUseGroupRate) {\n let responseJson = await ApiEngine.get(\n ApiUrl._API_GET_FIRST_GROUPED_PRODUCT\n );\n if (\n responseJson[ApiKey._API_SUCCESS_KEY] &&\n responseJson[ApiKey._API_DATA_KEY] != null\n ) {\n setValue(\"bonus\", responseJson[ApiKey._API_DATA_KEY][\"bonus\"]);\n setValue(\n \"commission\",\n responseJson[ApiKey._API_DATA_KEY][\"commission\"]\n );\n }\n }\n })();\n }, [watch(\"useGroupRate\"), productId]);\n\n return (\n
    \n {showConfirmation && (\n {\n setShowConfirmation(false);\n handleSubmit(submitForm)();\n }}\n onCancel={() => {\n setShowConfirmation(false);\n }}\n >\n )}\n

    \n {productId ? t(\"EDIT_MASTER_PRODUCT\") : t(\"ADD_MASTER_PRODUCT\")}\n \n

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

    {t(\"WEB_APP\") + \" / \" + t(\"MOBILE_APP\")}

    \n
    \n
    \n
    \n
    \n \n logoDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(logoImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setLogoImage(\"\");\n setLogoFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {errors.productDisplayId && (\n
    \n {t(errors.productDisplayId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.productName && (\n
    \n {t(errors.productName.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.productCode && (\n
    \n {t(errors.productCode.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.backUrl && (\n
    \n {t(errors.backUrl.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.reportUrl && (\n
    \n {t(errors.reportUrl.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.downloadUrl && (\n
    \n {t(errors.downloadUrl.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.clientCode && (\n
    \n {t(errors.clientCode.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n \n {errors.clientSecret && (\n
    \n {t(errors.clientSecret.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.commission && (\n
    \n {t(errors.commission.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n \n {errors.bonus && (\n
    \n {t(errors.bonus.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n \n setValue(\"useGroupRate\", e.target.checked)\n }\n value={true}\n checked={watch(\"useGroupRate\")}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n {errors.regularSyncInterval && (\n
    \n {t(errors.regularSyncInterval.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n \n option.value == selectRegularSyncPattern\n )}\n onChange={(e) => {\n setSelectRegularSyncPattern(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n setValue(\n \"settlementSyncEnabled\",\n e.target.checked\n )\n }\n value={true}\n checked={watch(\"settlementSyncEnabled\")}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == settlementSyncTimeHH\n )}\n onChange={(e) => {\n setSettlementSyncTimeHH(e.value);\n }}\n />\n {errors.settlementSyncTimeHH && (\n
    \n {t(errors.settlementSyncTimeHH.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == settlementSyncTimeMM\n )}\n onChange={(e) => {\n setSettlementSyncTimeMM(e.value);\n }}\n />\n {errors.settlementSyncTimeMM && (\n
    \n {t(errors.settlementSyncTimeMM.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n setValue(\"supportAgentMode\", e.target.checked)\n }\n value={true}\n checked={watch(\"supportAgentMode\")}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n setIsSeamless(e.target.checked)\n }\n value={true}\n checked={isSeamless}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n {!isSeamless &&\n
    \n
    \n \n \n {errors.content && (\n
    \n {t(errors.content.message)}\n
    \n )}\n
    \n
    }\n {!isSeamless &&
    \n
    \n \n popupBannerDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(popupBannerImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setPopupBannerImage(\"\");\n setPopupBannerFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    }\n
    \n
    \n \n
    \n
    \n {\n setValue(\"hasOwnLobby\", e.target.checked);\n setShowRankInput(e.target.checked);\n }}\n value={true}\n checked={watch(\"hasOwnLobby\")}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n {showRankInput && <>\n
    \n
    \n \n bannerDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(bannerImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setBannerImage(\"\");\n setBannerFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n \n iconDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(iconImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setIconImage(\"\");\n setIconFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.rankInGamesLobby && (\n
    \n {t(errors.rankInGamesLobby.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n {\n setValue(\"hideLobby\", e.target.checked);\n }}\n value={true}\n checked={watch(\"hideLobby\")}\n ref={register}\n />\n \n
    \n
    \n
    \n
    }\n
    \n
    \n \n providerLogoDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(providerImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setProviderImage(\"\");\n setProviderFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n \n \n
    \n
    \n

    {t(\"DESKTOP\")}

    \n
    \n
    \n
    \n
    \n \n bannerDesktopDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(bannerDesktopImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setBannerDesktopImage(\"\");\n setBannerDesktopFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n \n desktopLogoDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(productDesktopImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setProductDesktopImage(\"\");\n setProductDesktopFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n \n
    \n
    \n \n desktopLogoHoverDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(productDesktopImageHover) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setProductDesktopImageHover(\"\");\n setProductDesktopFileHover();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n \n \n
    \n
    \n
    \n
    \n preSubmit()}\n className=\"btn btn-primary\"\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n
    \n \n \n \n \n \n \n );\n};\n\nexport default MasterProductDetail;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport moment from \"moment\";\nimport { DateRangePicker } from \"react-bootstrap-daterangepicker\";\nimport DatePicker from \"react-datepicker\";\n\n/// \n/// Author : -\n/// \n\nconst ManageMasterProduct = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const [productData, setProductData] = useState([]);\n const [targetSyncProduct, setTargetSyncProduct] = useState();\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [showRangeModal, setShowRangeModal] = useState(false);\n const [showSettlementSyncSubModal, setShowSettlementSyncSubModal] = useState(\n false\n );\n const [settleDate, setSettleDate] = useState(moment().toDate());\n\n let _tableColumns = [\n {\n Header: \"PRODUCT_ID\",\n accessor: \"productId\",\n },\n {\n Header: \"PRODUCT_NAME\",\n accessor: \"productName\",\n },\n {\n Header: \"SHORT_CODE\",\n accessor: \"productCode\",\n },\n {\n Header: \"PRODUCT_IMAGE\",\n accessor: \"productImage\",\n Cell: ({ row }) => (\n
    \n {!stringIsNullOrEmpty(row.original.productImage) ? (\n \n ) : (\n - \n )}\n
    \n ),\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._MASTER_PRODUCT_CONTROL_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_MASTER_PRODUCT,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n {\n navigateTo(\n _history,\n WebUrl._URL_PRODUCT_GAME,\n row.original\n );\n }}\n >\n {t(\"MANAGE_GAME\")}\n \n {row.original.status == 1 && (\n syncProduct(row.original)}>\n {t(\"SYNC_PRODUCT\")}\n \n )}\n {row.original.status == 1 && (\n activateSyncSettlement(row.original)}\n >\n \n {t(\"ACTIVATE_SYNC_SETTLEMENT\")}\n \n \n )}\n {row.original.status == 1 && (\n syncSettleGameData(row.original)}\n >\n \n {t(\"TRIGGER_SETTLE_SYNC_DATE\")}\n \n \n )}\n {row.original.status == 1 && (\n syncProductGame(row.original)}>\n \n {t(\"SYNC_PRODUCT_GAME\")}\n \n \n )}\n {row.original.status == 1 && (\n activateSyncGameData(row.original)}\n >\n \n {t(\"TRIGGER_SYNC_SCHEDULE\")}\n \n \n )}\n {row.original.status == 1 && (\n syncGameDataRange(row.original)}>\n \n {t(\"TRIGGER_SYNC_RANGE\")}\n \n \n )}\n {row.original.status == 1 && row.original.productCode === \"568Win\" && !row.original.productName.includes(\"Sports\") && (\n navigateTo(\n _history,\n WebUrl._URL_MANAGE_568WIN_BET_LIMIT,\n row.original\n )}>\n \n {t(\"ADJUST_BET_LIMIT\")}\n \n \n )}\n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_MASTER_PRODUCT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n /// \n /// Author : -\n /// \n function syncProduct(data) {\n _dispatch(setBusy());\n fetch(ApiUrl._API_SYNC_PRODUCT_DATA + \"?productId=\" + data[\"id\"], {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n }\n\n function syncProductGame(data) {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_PERFORM_PRODUCT_GAME_CALCULATION + \"?productId=\" + data[\"id\"],\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n }\n\n function activateSyncGameData(data) {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_ACTIVATE_SYNC +\n \"?productId=\" +\n data[\"id\"] +\n \"&interval=\" +\n data[\"regularSyncInterval\"],\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n }\n\n function activateSyncSettlement(data) {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_ACTIVATE_SETTLEMENT_SYNC +\n \"?productId=\" +\n data[\"id\"] +\n \"&hh=\" +\n data[\"settlementSyncTimeHH\"] +\n \"&mm=\" +\n data[\"settlementSyncTimeMM\"],\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n }\n\n function triggerRangeSync() {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_TRIGGER_RANGE_SYNC +\n \"?productId=\" +\n targetSyncProduct[\"id\"] +\n \"&startDate=\" +\n moment(startDate).format(\"YYYY-MM-DD HH:mm:ss\") +\n \"&endDate=\" +\n moment(endDate).format(\"YYYY-MM-DD HH:mm:ss\"),\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n setShowRangeModal(false);\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n }\n\n function triggerSettlementDate() {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_TRIGGER_SETTLEMENT_DATE +\n \"?productId=\" +\n targetSyncProduct[\"id\"] +\n \"&startDate=\" +\n moment(settleDate).format(\"YYYY-MM-DD\"),\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n setShowSettlementSyncSubModal(false);\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n function syncGameDataRange(data) {\n setTargetSyncProduct(data);\n setShowRangeModal(true);\n }\n\n // \n /// Author : -\n /// \n function syncSettleGameData(data) {\n setTargetSyncProduct(data);\n setShowSettlementSyncSubModal(true);\n }\n\n return (\n
    \n

    \n {t(\"MASTER_PRODUCTS\")}\n {checkIfPermissionExist(\n AccessRight._MASTER_PRODUCT_CONTROL_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n setShowRangeModal(false)}\n style={{ paddingBottom: \"100px\" }}\n className=\"modal-lg\"\n keyboard={true}\n >\n setShowRangeModal(false)}>\n {t(\"SELECT_RANGE_TO_SYNC\")}\n \n \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {\n triggerRangeSync();\n }}\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n \n \n setShowRangeModal(false)}\n >\n {t(\"CLOSE\")}\n \n \n \n setShowSettlementSyncSubModal(false)}\n style={{ paddingBottom: \"100px\" }}\n className=\"modal-lg\"\n keyboard={true}\n >\n setShowSettlementSyncSubModal(false)}>\n {t(\"SELECT_DATE_TO_SYNC\")}\n \n \n
    \n
    \n \n
    \n setSettleDate(startdate)}\n />\n
    \n
    \n
    \n
    \n
    \n {\n triggerSettlementDate();\n }}\n >\n {t(\"SUBMIT\")}\n \n
    \n
    \n
    \n \n setShowSettlementSyncSubModal(false)}\n >\n {t(\"CLOSE\")}\n \n \n \n \n );\n};\n\nexport default ManageMasterProduct;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { setBusy, setIdle } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport ToggleButton from \"react-toggle-button\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\n\n/// \n/// Author : -\n/// \n\nconst ProductMaintenance = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n let _history = useHistory();\n const [productData, setProductData] = useState([]);\n const { loginUserId } = useSelector((state) => ({\n loginUserId: state.authState.userData.userId,\n }));\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"productName\",\n },\n {\n Header: \"CODE\",\n accessor: \"productCode\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"MAINTENANCE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"UM\",\n accessor: \"productUm\",\n Cell: ({ row }) => (\n
    \n {\n updateProductUM(row.original)\n }}\n />\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"RANK\",\n accessor: \"rank\",\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n updateProductAssignment(row.original);\n }}\n >\n {row.original.status ? t(\"DEACTIVATE\") : t(\"ACTIVATE\")}\n \n {\n navigateTo(\n _history,\n WebUrl._URL_COMPANY_PRODUCT_ACCOUNT_INFO,\n row.original\n );\n }}\n >\n \n {t(\"EDIT_ACCOUNT_INFORMATION\")}\n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_MANAGE_PRODUCT_GAME_SETTING,\n row.original\n );\n }}\n >\n {t(\"MANAGE_GAME_SETTING\")}\n \n {\n navigateTo(\n _history,\n WebUrl._URL_MANAGE_PRODUCT_GAME_RANK,\n row.original\n );\n }}\n >\n {t(\"CUSTOM_GAME_SETTING\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n function updateProductAssignment(data) {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_UPDATE_USER_ASSIGNMENT +\n \"?userId=\" +\n loginUserId +\n \"&productId=\" +\n data[\"productId\"] +\n \"&enable=\" +\n !data[\"status\"],\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n updateProductData();\n }\n _dispatch(setIdle());\n });\n }\n\n /// \n /// Author : -\n /// \n function updateProductUM(data) {\n _dispatch(setBusy());\n fetch(\n ApiUrl._API_UPDATE_USER_PRODUCT_MAINTENANCE +\n \"?userId=\" +\n loginUserId +\n \"&productId=\" +\n data[\"productId\"] +\n \"&um=\" +\n !data[\"productUm\"],\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n updateProductData();\n }\n _dispatch(setIdle());\n });\n }\n\n /// \n /// Author : -\n /// \n function updateProductData() {\n fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n updateProductData();\n }, []);\n\n return (\n
    \n

    {t(\"PRODUCT_MAINTENANCE\")}\n \n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ProductMaintenance;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n ContentTypeString,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"../configuration/ManageConfigurationLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\nimport Dropzone from \"react-dropzone\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\n\n/// \n/// Author : -\n/// \nconst ProductCategoryDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const [title, setTitle] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [categoryId, setCategoryId] = useState(\"\");\n const [isNewIcon, setIsNewIcon] = useState(false);\n const [iconFile, setIconFile] = useState([]);\n const [iconImage, setIconImage] = useState();\n\n const { register, handleSubmit, errors } = useForm();\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// Used to set banner icon\n /// \n const iconDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setIconFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setIconImage(reader.result);\n setIsNewIcon(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n title: data.title,\n status: data.status,\n isNewIconImage: isNewIcon,\n };\n\n if (!stringIsNullOrEmpty(categoryId)) {\n params[\"id\"] = categoryId;\n }\n\n if (!stringIsNullOrEmpty(iconFile)) {\n params[\"iconImage\"] = iconFile;\n }\n\n if (stringIsNullOrEmpty(iconImage)) {\n params[\"iconImageRemoved\"] = true;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n let responseJson = await ApiEngine.post(\n ApiUrl._API_CREATE_OR_UPDATE_PRODUCT_CATEGORY,\n formBody\n );\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIsNewIcon(false);\n setCategoryId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_PRODUCT_CATEGORY_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setCategoryId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"iconImage\"]\n )\n ) {\n setIconImage(responseJson[ApiKey._API_DATA_KEY][\"iconImage\"]);\n }\n }\n });\n }\n }, []);\n\n return (\n
    \n

    \n {!stringIsNullOrEmpty(categoryId)\n ? t(\"EDIT_PRODUCT_CATEGORY\")\n : t(\"ADD_PRODUCT_CATEGORY\")}\n \n

    \n {categoryId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.title.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n iconDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(iconImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setIconImage(\"\");\n setIconFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n \n {categoryId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n \n \n );\n};\n\nexport default ProductCategoryDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageProductCategory = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [productCategoryData, setProductCategoryData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"PRODUCT_CATEGORY_NAME\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._PRODUCT_CATEGORY_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_CATEGORY,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_PRODUCT_CATEGORY + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductCategoryData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_PRODUCT_CATEGORY\")}\n {checkIfPermissionExist(\n AccessRight._PRODUCT_CATEGORY_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageProductCategory;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useForm } from \"react-hook-form\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport Select from \"react-select\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst GameDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _location = useLocation();\n const _history = useHistory();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors, setValue, unregister } = useForm();\n\n const [gameOption, setGameOption] = useState([]);\n\n const [accountProductId, setAccountProductId] = useState(\"\");\n const [recommended, setRecommended] = useState(false);\n const [rank, setRank] = useState(\"\");\n const [gameId, setGameId] = useState(\"\");\n const [settingId, setSettingId] = useState(\"\");\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n gameId: gameId,\n accountProductId: accountProductId,\n rank: data.rank,\n isRecommended: recommended,\n };\n\n if (!stringIsNullOrEmpty(settingId)) {\n params[\"id\"] = settingId;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_GAME_PRODUCT_SETTING, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"gameId\" }, { required: \"PLEASE_SELECT_GAME\" });\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n setAccountProductId(_location.state[\"accountProductId\"]);\n await fetch(\n ApiUrl._API_GET_PRODUCT_GAME_BY_ACCOUNT_PRODUCT +\n \"?accountProductId=\" +\n _location.state[\"accountProductId\"],\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const games = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (game) {\n games.push({ label: game.gameName, value: game.id });\n });\n\n setGameOption(games);\n }\n });\n\n if (_location.state[\"id\"] != null && _location.state[\"id\"] != undefined) {\n fetch(\n ApiUrl._API_GET_PRODUCT_GAME_SETTING_BY_ID +\n \"?id=\" +\n _location.state[\"id\"],\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setGameId(responseJson[ApiKey._API_DATA_KEY][\"gameId\"]);\n setRank(responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setRecommended(responseJson[ApiKey._API_DATA_KEY][\"isRecommended\"]);\n setSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n unregister(\"gameId\");\n }\n });\n }\n }\n\n return (\n
    \n

    \n {t(\"GAME_SETTING_DETAIL\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n option.value == gameId\n )[0] !== undefined\n ? gameOption.filter(\n (option) => option.value == gameId\n )[0].label\n : \"\"\n }\n value={gameOption.filter(\n (option) => option.value == gameId\n )}\n onChange={(e) => {\n unregister(\"gameId\");\n setGameId(e.value);\n }}\n />\n {errors.gameId && (\n
    \n {t(errors.gameId.message)}\n
    \n )}\n
    \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n setRecommended(e.target.checked)}\n value={false}\n checked={recommended}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n\n
    \n
    \n \n
    \n \n {errors.rank && (\n
    \n {t(errors.rank.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default GameDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport { ApiKey, WebUrl, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageGame = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const [gameData, setGameData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"gameName\",\n },\n {\n Header: \"RANK\",\n accessor: \"rank\",\n },\n {\n Header: \"IS_RECOMMENDED\",\n accessor: \"isRecommended\",\n Cell: ({ row }) => (\n
    \n {row.original.isRecommended == 1 ? (\n \n {t(\"RECOMMENDED\")}\n \n ) : (\n \n {t(\"NORMAL\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_GAME_SETTING,\n {\n id: row.original.id,\n accountProductId: _location.state[\"id\"],\n }\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n readSetting();\n }, []);\n\n /// \n /// Author : -\n /// \n function readSetting() {\n fetch(\n ApiUrl._API_GET_PRODUCT_GAME_SETTING +\n \"?accountProductId=\" +\n _location.state[\"id\"],\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setGameData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n return (\n
    \n

    \n {t(\"GAME_SETTING\")}\n {\n _history.push({\n pathname: WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_GAME_SETTING,\n state: { accountProductId: _location.state[\"id\"] },\n });\n }}\n >\n \n {t(\"ADD_NEW_GAME_SETTING\")}\n \n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageGame;\n","import React, { useState, useEffect } from 'react';\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { createFormBody, createMultiPartFormBody, stringIsNullOrEmpty } from \"../../util/Util.js\";\nimport moment from 'moment';\n\nconst Manage568WinBetLimit = props => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const _history = useHistory();\n const _location = useLocation();\n const [betLimitSettingData, setBetLimitSettingData] = useState({});\n const [betLimitStr, setBetLimitStr] = useState(\"\");\n const [initCheck, setInitCheck] = useState(false);\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n init();\n }\n setInitCheck(true);\n }, []);\n\n async function init() {\n let apiUrl = ApiUrl._API_GET_USER_SYSTEM_SETTINGS + \"?type=betLimit&productId=\" + _location.state.id;\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n console.log(data);\n setBetLimitSettingData(data);\n setBetLimitStr(data.value);\n }\n }\n\n const submitForm = async (data) => {\n let params = {\n \"betLimitStr\": betLimitStr\n };\n\n let formBody = createMultiPartFormBody(params);\n let apiUrl = ApiUrl._API_CREATE_OR_UPDATE_SYSTEM_SETTINGS + \"?type=betLimit&productId=\" + _location.state.id;\n let responseJson = await ApiEngine.post(apiUrl, formBody);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n init();\n }\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n\n return (\n
    \n

    \n {t(\"ADJUST_BET_LIMIT\")}\n \n

    \n
    \n
    \n {initCheck && \n \n
    \n
    \n
    \n \n
    \n
    \n {_location.state.productName}\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n {\n setBetLimitStr(e.target.value)\n }}\n >\n {errors.betLimitCode && (\n
    \n {t(errors.betLimitCode.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    }\n
    \n
    \n
    \n )\n}\n\nexport default withRouter(Manage568WinBetLimit);","import React, { useState, useEffect } from 'react';\nimport { useTranslation } from \"react-i18next\";\nimport { Panel, PanelBody } from '../../components/panel/panel';\nimport Select from \"react-select\";\nimport ApiEngine from '../../util/ApiEngine';\nimport { ApiKey, ApiUrl, LanguageKey } from '../../util/Constant';\nimport { createFormBody } from '../../util/Util';\nimport { showMessage } from '../../redux/AppAction';\nimport { useDispatch } from 'react-redux';\n\nconst RetrieveMemberBetData = (props) => {\n const _dispatch = useDispatch();\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const ALL_OPTION_VALUE = \"all\";\n const ALL_OPTION_LABEL = \"All\";\n const [masterProductList, setMasterProductList] = useState([]);\n const [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n const [usernameString, setUsernameString] = useState(\"\");\n\n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n useEffect(() => {\n init();\n }, []);\n\n async function init() {\n await fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA + \"?isFarmData=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const accountProductOptionList = [\n\n ];\n //responseJson[ApiKey._API_DATA_KEY].filter(x => x.productName === \"918Kiss\" || x.productName === \"Pussy888\").map((option) => {\n // accountProductOptionList.push({\n // label: option.productName,\n // value: option.productId,\n // data: option,\n // });\n //});\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n accountProductOptionList.push({\n label: option.productName,\n value: option.productId,\n });\n });\n setMasterProductList(accountProductOptionList);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n }\n\n\n const retrieveBetData = async () => {\n let params = {\n \"productId\": selectedProduct,\n \"usernameList\": usernameString\n };\n let responseJson = await ApiEngine.post(ApiUrl._API_RETRIEVE_MEMBER_GAME_DATA, createFormBody(params));\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n }\n\n return (\n
    \n
    \n
    \n

    {t(\"RETRIEVE_MEMBER_BET_DATA\")}

    \n \n \n
    \n
    \n \n
    \n \n \n
    \n product.value == selectedProduct\n )}\n options={masterProductList}\n onChange={(e) => {\n setSelectedProduct(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n setUsernameString(e.target.value)}\n >\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n \n )\n}\n\nexport default RetrieveMemberBetData;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../../util/Constant\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageBank = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [bankData, setBankData] = useState([]);\n let _tableColumns = [\n {\n Header: \"BANK_CODE\",\n accessor: \"bankCode\",\n },\n {\n Header: \"BANK_SHORT_NAME\",\n accessor: \"bankShortName\",\n },\n {\n Header: \"BANK_NAME\",\n accessor: \"bankName\",\n },\n {\n Header: \"BANK_WEBSITE\",\n accessor: \"bankWebsite\",\n Cell: ({ row }) => {\n return (\n window.open(row.original.bankWebsite)}\n >\n {row.original.bankWebsite}\n \n );\n },\n width: 200,\n },\n {\n Header: \"MINIMUM_DEPOSIT\",\n accessor: \"minimumDeposit\",\n },\n {\n Header: \"MINIMUM_WITHDRAWAL\",\n accessor: \"minimumWithdrawal\",\n },\n {\n Header: \"MAXIMUM_DEPOSIT\",\n accessor: \"maximumDeposit\",\n },\n {\n Header: \"MAXIMUM_WITHDRAWAL\",\n accessor: \"maximumWithdrawal\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return
    {renderStatus(row.original.status)}
    ;\n },\n minWidth: 100,\n },\n {\n Header: \"MEMBER_SITE_DISPLAY\",\n accessor: \"status\",\n id: \"memberSiteStatus\",\n Cell: ({ row }) => {\n return (\n
    \n {renderStatus(row.original.enableDeposit, t(\"DEPOSIT\"))}\n {renderStatus(row.original.enableWithdrawal, t(\"WITHDRAWAL\"))}\n
    \n );\n },\n minWidth: 100,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._BANK_SETTING_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_EDIT_BANK,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 1,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n const renderStatus = (status, text = \"\") => {\n let className = \"\";\n let statusText = \"\";\n\n if (status) {\n className = \"badge-green\";\n statusText = t(\"ACTIVE\");\n } else {\n className = \"badge-danger\";\n statusText = t(\"SUSPENDED\");\n }\n\n return (\n \n {stringIsNullOrEmpty(text) ? statusText : text}\n \n );\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_BANK + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"BANKS\")}\n {checkIfPermissionExist(AccessRight._BANK_SETTING_PERMISSION, true) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageBank;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n stringIsNullOrEmpty,\n createMultiPartFormBody,\n} from \"../../../util/Util\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../../util/Constant\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport Dropzone from \"react-dropzone\";\nimport { setBusy, setIdle, showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst EditBank = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const { register, handleSubmit, errors } = useForm();\n const _dispatch = useDispatch();\n\n const [bankCode, setBankCode] = useState(\"\");\n const [bankName, setBankName] = useState(\"\");\n const [bankShortName, setBankShortName] = useState(\"\");\n const [bankWebsite, setBankWebsite] = useState(\"\");\n const [bankCurrencyCode, setBankCurrencyCode] = useState(\"\");\n\n const [minimumDeposit, setMinimumDeposit] = useState(\"\");\n const [minimumWithdrawal, setMinimumWithdrawal] = useState(\"\");\n const [maximumDeposit, setMaximumDeposit] = useState(\"\");\n const [maximumWithdrawal, setMaximumWithdrawal] = useState(\"\");\n const [bankCountryCode, setBankCountryCode] = useState(\"\");\n\n const [bankAddress, setBankAddress] = useState(\"\");\n const [bankPostalCode, setBankPostalCode] = useState(\"\");\n const [bankPhone, setBankPhone] = useState(\"\");\n const [bankFax, setBankFax] = useState(\"\");\n const [instantPay, setInstantPay] = useState(true);\n const [bankId, setBankId] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [logoImage, setLogoImage] = useState(null);\n const [logoFile, setLogoFile] = useState(null);\n const [isNewImage, setIsNewImage] = useState(false);\n const [enableDeposit, setEnableDeposit] = useState(false);\n const [enableWithdrawal, setEnableWithdrawal] = useState(true);\n const [adjustment, setAdjustment] = useState(false);\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n bankCode: data.bankCode,\n bankName: data.bankName,\n bankShortName: data.bankShortName,\n bankWebsite: data.bankWebsite,\n currencyCode: data.bankCurrencyCode,\n minimumDeposit: data.minimumDeposit,\n minimumWithdrawal: data.minimumWithdrawal,\n maximumDeposit: data.maximumDeposit,\n maximumWithdrawal: data.maximumWithdrawal,\n countryCode: data.bankCountryCode,\n address: data.bankAddress,\n postalCode: data.bankPostalCode,\n phone: data.bankPhone,\n fax: data.bankFax,\n instantPay: data.instantPay,\n status: data.status,\n isNewBankLogoImage: isNewImage,\n enableDeposit: data.enableDeposit,\n enableWithdrawal: data.enableWithdrawal,\n enableAdjustment: data.adjustment,\n };\n\n /// \n /// Author : -\n /// Used to set the logo to params\n /// \n if (!stringIsNullOrEmpty(logoFile)) {\n params[\"bankLogoImage\"] = logoFile;\n }\n\n if (stringIsNullOrEmpty(logoImage)) {\n params[\"bankLogoImageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(bankId)) {\n params[\"id\"] = bankId;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_BANK_DETAIL, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIsNewImage(false);\n setBankId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_BANK_DETAIL;\n apiUrl += \"?bankId=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setBankCode(responseJson[ApiKey._API_DATA_KEY][\"bankCode\"]);\n\n setBankName(responseJson[ApiKey._API_DATA_KEY][\"bankName\"]);\n setBankShortName(\n responseJson[ApiKey._API_DATA_KEY][\"bankShortName\"]\n );\n setBankWebsite(responseJson[ApiKey._API_DATA_KEY][\"bankWebsite\"]);\n setBankCurrencyCode(\n responseJson[ApiKey._API_DATA_KEY][\"currencyCode\"]\n );\n setMinimumDeposit(\n responseJson[ApiKey._API_DATA_KEY][\"minimumDeposit\"]\n );\n setMinimumWithdrawal(\n responseJson[ApiKey._API_DATA_KEY][\"minimumWithdrawal\"]\n );\n setMaximumDeposit(\n responseJson[ApiKey._API_DATA_KEY][\"maximumDeposit\"]\n );\n setMaximumWithdrawal(\n responseJson[ApiKey._API_DATA_KEY][\"maximumWithdrawal\"]\n );\n setBankCountryCode(\n responseJson[ApiKey._API_DATA_KEY][\"countryCode\"]\n );\n setBankAddress(responseJson[ApiKey._API_DATA_KEY][\"address\"]);\n\n setBankPostalCode(responseJson[ApiKey._API_DATA_KEY][\"postalCode\"]);\n setBankPhone(responseJson[ApiKey._API_DATA_KEY][\"phone\"]);\n setBankFax(responseJson[ApiKey._API_DATA_KEY][\"fax\"]);\n setInstantPay(responseJson[ApiKey._API_DATA_KEY][\"instantPay\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\n setEnableDeposit(\n responseJson[ApiKey._API_DATA_KEY][\"enableDeposit\"]\n );\n setEnableWithdrawal(\n responseJson[ApiKey._API_DATA_KEY][\"enableWithdrawal\"]\n );\n\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"bankLogo\"]\n )\n ) {\n setLogoImage(responseJson[ApiKey._API_DATA_KEY][\"bankLogo\"]);\n }\n\n setAdjustment(responseJson[ApiKey._API_DATA_KEY][\"enableAdjustment\"])\n }\n });\n }\n }, []);\n\n /// \n /// Author : -\n /// Used to set logo\n /// \n const logoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setLogoFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setLogoImage(reader.result);\n setIsNewImage(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n return (\n
    \n

    \n {t(\"ADD_NEW_BANK\")}\n {\n _history.goBack();\n }}\n >\n \n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {t(\"BANK_DETAIL\")}\n
    \n
    \n
    \n \n
    \n \n {errors.bankCode && (\n
    \n {t(errors.bankCode.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.bankName && (\n
    \n {t(errors.bankName.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.bankShortName && (\n
    \n {t(errors.bankShortName.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.bankWebsite && (\n
    \n {t(errors.bankWebsite.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n
    \n \n setInstantPay(e.target.checked)\n }\n value={true}\n checked={instantPay}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n setStatus(e.target.checked)\n }\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n setAdjustment(e.target.checked)\n }\n value={adjustment}\n checked={adjustment}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n setEnableDeposit(e.target.checked)\n }\n checked={enableDeposit}\n ref={register}\n />\n \n
    \n \n {t(\"DEPOSIT\")}\n \n
    \n
    \n
    \n \n setEnableWithdrawal(e.target.checked)\n }\n checked={enableWithdrawal}\n ref={register}\n />\n \n
    \n \n {t(\"WITHDRAWAL\")}\n \n
    \n
    \n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\"SELECT_OR_DRAG_AND_DROP_FILE\")}\n

    \n {!stringIsNullOrEmpty(logoImage) && (\n \n )}\n
    \n \n )}\n \n
    \n
    \n {\n setLogoImage(\"\");\n setLogoFile();\n }}\n >\n {t(\"REMOVE_LOGO\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {t(\"BANK_AMOUNT_LIMIT\")} ({t(\"DEPOSIT\")} /{\" \"}\n {t(\"WITHDRAWAL\")})\n \n
    \n
    \n
    \n \n
    \n \n {errors.bankCurrencyCode && (\n
    \n {t(errors.bankCurrencyCode.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.minimumDeposit && (\n
    \n {t(errors.minimumDeposit.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.maximumDeposit && (\n
    \n {t(errors.maximumDeposit.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.minimumWithdrawal && (\n
    \n {t(errors.minimumWithdrawal.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.maximumWithdrawal && (\n
    \n {t(errors.maximumWithdrawal.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n {t(\"OFFICIAL_BANK_DETAILS\")}\n
    \n
    \n
    \n \n
    \n \n {errors.bankCountryCode && (\n
    \n {t(errors.bankCountryCode.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n );\n};\n\nexport default withRouter(EditBank);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../../components/constantComponent/reactTable/ReactTable\";\nimport {\n Panel,\n PanelHeader,\n PanelBody,\n} from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../../util/Util\";\nimport {\n WebUrl,\n ApiKey,\n ApiUrl,\n AccessRight,\n LanguageKey,\n} from \"../../../util/Constant\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageBank = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [bankAccountData, setBankAccountData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"BANK\",\n accessor: \"bankName\",\n },\n {\n Header: t(\"BANK_ACCOUNT_HOLDER_NAME\"),\n accessor: \"accountHolderName\",\n },\n {\n Header: \"BANK_ACCOUNT_NUMBER\",\n accessor: \"accountNumber\",\n style: {\n whiteSpace: \"unset\",\n wordBreak: \"break-word\",\n },\n },\n {\n Header: \"MINIMUM_DEPOSIT\",\n accessor: \"minimumDeposit\",\n width: 100,\n },\n {\n Header: \"MINIMUM_WITHDRAWAL\",\n accessor: \"minimumWithdrawal\",\n width: 100,\n },\n {\n Header: \"MAXIMUM_DEPOSIT\",\n accessor: \"maximumDeposit\",\n width: 100,\n },\n {\n Header: \"MAXIMUM_WITHDRAWAL\",\n accessor: \"maximumWithdrawal\",\n width: 100,\n },\n {\n id: \"account\",\n Header: \"ACCOUNT_STATUS\",\n accessor: (d) => {\n return d.accountStatus ? (\n {t(\"ACTIVE\")}\n ) : (\n \n {t(\"SUSPENDED\")}\n \n );\n },\n },\n {\n id: \"deposit\",\n Header: \"DEPOSIT_STATUS\",\n accessor: (d) => {\n return d.depositStatus ? (\n {t(\"ACTIVE\")}\n ) : (\n \n {t(\"SUSPENDED\")}\n \n );\n },\n },\n {\n id: \"withdrawal\",\n Header: \"WITHDRAWAL_STATUS\",\n accessor: (d) => {\n return d.withdrawalStatus ? (\n {t(\"ACTIVE\")}\n ) : (\n \n {t(\"SUSPENDED\")}\n \n );\n },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._BANK_ACCOUNT_SETTING_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_BANK_ACCOUNT,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_BANK_ACCOUNT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankAccountData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"BANK_ACCOUNT\")}\n {checkIfPermissionExist(AccessRight._BANK_ACCOUNT_SETTING_PERMISSION, true) && (\n \n )}\n

    \n \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageBank;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl } from \"../../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../../util/Util\";\nimport { LanguageKey } from \"../../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -, -\n/// \n\nconst BankAccountDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const [bankOption, setBankOption] = useState([]);\n const { register, unregister, handleSubmit, errors } = useForm();\n\n const [bankId, setBankId] = useState(\"\");\n const [bankAccountNumber, setBankAccountNumber] = useState(\"\");\n const [bankAccountHolderName, setBankAccountHolderName] = useState(\"\");\n const [branch, setBranch] = useState(\"\");\n const [province, setProvince] = useState(\"\");\n const [rank, setRank] = useState(\"\");\n\n const [minimumDeposit, setMinimumDeposit] = useState(\"\");\n const [maximumDeposit, setMaximumDeposit] = useState(\"\");\n const [minimumWithdrawal, setMinimumWithdrawal] = useState(\"\");\n const [maximumWithdrawal, setMaximumWithdrawal] = useState(\"\");\n const [bankAccountId, setBankAccountId] = useState(\"\");\n const [depositStatus, setDepositStatus] = useState(true);\n const [withdrawalStatus, setWithdrawalStatus] = useState(true);\n const [accountStatus, setAccountStatus] = useState(true);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"bankId\" }, { required: \"PLEASE_SELECT_BANK\" });\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_BANK_ACCOUNT_DETAIL;\n apiUrl += \"?bankAccountId=\" + _location.state.id;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankId(responseJson[ApiKey._API_DATA_KEY][\"bankId\"]);\n setBankAccountNumber(\n responseJson[ApiKey._API_DATA_KEY][\"accountNumber\"]\n );\n setBankAccountHolderName(\n responseJson[ApiKey._API_DATA_KEY][\"accountHolderName\"]\n );\n setBranch(responseJson[ApiKey._API_DATA_KEY][\"branch\"]);\n setProvince(responseJson[ApiKey._API_DATA_KEY][\"province\"]);\n setRank(responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setMinimumDeposit(\n responseJson[ApiKey._API_DATA_KEY][\"minimumDeposit\"]\n );\n setMaximumDeposit(\n responseJson[ApiKey._API_DATA_KEY][\"maximumDeposit\"]\n );\n setMinimumWithdrawal(\n responseJson[ApiKey._API_DATA_KEY][\"minimumWithdrawal\"]\n );\n setMaximumWithdrawal(\n responseJson[ApiKey._API_DATA_KEY][\"maximumWithdrawal\"]\n );\n setBankAccountId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setDepositStatus(\n responseJson[ApiKey._API_DATA_KEY][\"depositStatus\"]\n );\n setWithdrawalStatus(\n responseJson[ApiKey._API_DATA_KEY][\"withdrawalStatus\"]\n );\n setAccountStatus(\n responseJson[ApiKey._API_DATA_KEY][\"accountStatus\"]\n );\n unregister(\"bankId\");\n }\n });\n }\n\n fetch(ApiUrl._API_GET_USER_BANK + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bank) {\n bankList.push({ label: bank.bankCode, value: bank.id });\n });\n\n setBankOption(bankList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n accountNumber: data.bankAccountNumber,\n accountHolderName: data.bankAccountHolderName,\n branch: data.branch,\n province: data.province,\n rank: data.rank,\n minimumDeposit: data.minimumDeposit,\n maximumDeposit: data.maximumDeposit,\n minimumWithdrawal: data.minimumWithdrawal,\n maximumWithdrawal: data.maximumWithdrawal,\n depositStatus: data.depositStatus,\n withdrawalStatus: data.withdrawalStatus,\n accountStatus: data.accountStatus,\n bankId: bankId,\n };\n\n if (!stringIsNullOrEmpty(bankAccountId)) {\n params[\"id\"] = bankAccountId;\n }\n\n let formBody = createFormBody(params);\n\n _dispatch(setBusy());\n fetch(ApiUrl._API_CREATE_OR_UPDATE_BANK_ACCOUNT_DETAIL, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankAccountId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n return (\n
    \n

    \n {bankId ? t(\"EDIT_BANK_ACCOUNT\") : t(\"ADD_NEW_BANK_ACCOUNT\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {t(\"BANK_ACCOUNT_INFORMATION\")}\n
    \n
    \n
    \n \n
    \n option.value == bankId\n )[0] !== undefined\n ? bankOption.filter(\n (option) => option.value == bankId\n )[0].label\n : \"\"\n }\n value={bankOption.filter(\n (option) => option.value == bankId\n )}\n onChange={(e) => {\n unregister(\"bankId\");\n setBankId(e.value);\n }}\n />\n {errors.bankId && (\n
    \n {t(errors.bankId.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.bankAccountNumber && (\n
    \n {t(errors.bankAccountNumber.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.bankAccountHolderName && (\n
    \n {t(errors.bankAccountHolderName.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.branch && (\n
    \n {t(errors.branch.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.province && (\n
    \n {t(errors.province.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.rank && (\n
    \n {t(errors.rank.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {t(\"BANK_AMOUNT_LIMIT\")} ({t(\"DEPOSIT\")} /{\" \"}\n {t(\"WITHDRAWAL\")})\n \n
    \n
    \n
    \n \n
    \n \n {errors.minimumDeposit && (\n
    \n {t(errors.minimumDeposit.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.maximumDeposit && (\n
    \n {t(errors.maximumDeposit.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.minimumWithdrawal && (\n
    \n {t(errors.minimumWithdrawal.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.maximumWithdrawal && (\n
    \n {t(errors.maximumWithdrawal.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {t(\"BANK_ACCOUNT_STATUS\")}\n
    \n
    \n
    \n \n
    \n
    \n \n setDepositStatus(e.target.checked)\n }\n value={true}\n checked={depositStatus}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n setWithdrawalStatus(e.target.checked)\n }\n value={true}\n checked={withdrawalStatus}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n setAccountStatus(e.target.checked)\n }\n value={true}\n checked={accountStatus}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default BankAccountDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageProductSetting = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [productSettingData, setProductSettingData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"PRODUCT_NAME\",\n accessor: \"productName\",\n disableSortBy: true,\n },\n {\n Header: \"PRODUCT_CATEGORY_NAME\",\n accessor: \"productCategoryName\",\n disableSortBy: true,\n },\n {\n Header: \"VIP\",\n accessor: \"vipName\",\n disableSortBy: true,\n },\n {\n Header: \"MINIMUM_REBATE\",\n accessor: \"minimumRebate\",\n disableSortBy: true,\n },\n {\n Header: \"MAXIMUM_REBATE\",\n accessor: \"maximumRebate\",\n disableSortBy: true,\n },\n {\n Header: \"REBATE_PERCENT\",\n accessor: \"rebatePercent\",\n disableSortBy: true,\n },\n {\n Header: \"TURNOVER_RATE\",\n accessor: \"turnoverRate\",\n disableSortBy: true,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._PRODUCT_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_SETTING,\n row.original\n );\n }}\n >\n {t(\"Edit\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_PRODUCT_SETTING, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductSettingData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_PRODUCT_SETTING\")}\n {checkIfPermissionExist(\n AccessRight._PRODUCT_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageProductSetting;\n","import React, { useState, useEffect } from \"react\";\nimport Select from \"react-select\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ProductSettingDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const { register, unregister, handleSubmit, errors } = useForm();\n const [minimumRebate, setMinimumRebate] = useState(\"\");\n const [maximumRebate, setMaximumRebate] = useState(\"\");\n const [rebatePercent, setRebatePercent] = useState(\"\");\n const [turnoverRate, setTurnoverRate] = useState(\"\");\n const [productSettingId, setProductSettingId] = useState(\"\");\n const [accountProductId, setAccountProductId] = useState(\"\");\n const [accountProductOption, setAccountProductOption] = useState([]);\n const [vipId, setVipId] = useState(\"\");\n const [vipOption, setVipOption] = useState([]);\n const [categoryId, setCategoryId] = useState(\"\");\n const [categoryOption, setCategoryOption] = useState([]);\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n minimumRebate: data.minimumRebate,\n maximumRebate: data.maximumRebate,\n rebatePercent: data.rebatePercent,\n turnoverRate: data.turnoverRate,\n vipId: vipId,\n categoryId: categoryId,\n accountProductId: accountProductId,\n };\n\n if (!stringIsNullOrEmpty(productSettingId)) {\n params[\"id\"] = productSettingId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_PRODUCT_SETTING, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"vipId\" }, { required: \"PLEASE_SELECT_VIP\" });\n register(\n { name: \"accountProductId\" },\n { required: \"PLEASE_SELECT_PRODUCT\" }\n );\n register({ name: \"categoryId\" }, { required: \"PLEASE_SELECT_CATEGORY\" });\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_PRODUCT_SETTING_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setProductSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setMinimumRebate(\n responseJson[ApiKey._API_DATA_KEY][\"minimumRebate\"]\n );\n setMaximumRebate(\n responseJson[ApiKey._API_DATA_KEY][\"maximumRebate\"]\n );\n setRebatePercent(\n responseJson[ApiKey._API_DATA_KEY][\"rebatePercent\"]\n );\n setTurnoverRate(responseJson[ApiKey._API_DATA_KEY][\"turnoverRate\"]);\n\n setAccountProductId(\n responseJson[ApiKey._API_DATA_KEY][\"accountProductId\"]\n );\n setCategoryId(\n responseJson[ApiKey._API_DATA_KEY][\"productCategoryId\"]\n );\n setVipId(responseJson[ApiKey._API_DATA_KEY][\"vipId\"]);\n unregister(\"vipId\");\n unregister(\"accountProductId\");\n unregister(\"categoryId\");\n }\n });\n }\n\n await fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const accountProductOptionList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n accountProductOptionList.push({\n label: option.productName,\n value: option.id,\n });\n });\n\n setAccountProductOption(accountProductOptionList);\n }\n }\n });\n\n await fetch(ApiUrl._API_GET_PRODUCT_CATEGORY, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const categoryOptionList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n categoryOptionList.push({ label: option.title, value: option.id });\n });\n\n setCategoryOption(categoryOptionList);\n }\n }\n });\n\n await fetch(ApiUrl._API_GET_USER_VIP, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const vipList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n vipList.push({ label: option.name, value: option.id });\n });\n\n setVipOption(vipList);\n }\n }\n });\n }\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(categoryId)\n ? t(\"EDIT_PRODUCT_SETTING\")\n : t(\"ADD_PRODUCT_SETTING\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n option.value == accountProductId\n )[0] !== undefined\n ? accountProductOption.filter(\n (option) => option.value == accountProductId\n )[0].label\n : \"\"\n }\n value={accountProductOption.filter(\n (option) => option.value == accountProductId\n )}\n onChange={(e) => {\n unregister(\"accountProductId\");\n setAccountProductId(e.value);\n }}\n />\n {errors.accountProductId && (\n
    \n {t(errors.accountProductId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == categoryId\n )[0] !== undefined\n ? categoryOption.filter(\n (option) => option.value == categoryId\n )[0].label\n : \"\"\n }\n value={categoryOption.filter(\n (option) => option.value == categoryId\n )}\n onChange={(e) => {\n unregister(\"categoryId\");\n setCategoryId(e.value);\n }}\n />\n {errors.categoryId && (\n
    \n {t(errors.categoryId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == vipId\n )[0] !== undefined\n ? vipOption.filter(\n (option) => option.value == vipId\n )[0].label\n : \"\"\n }\n value={vipOption.filter(\n (option) => option.value == vipId\n )}\n onChange={(e) => {\n unregister(\"vipId\");\n setVipId(e.value);\n }}\n />\n {errors.vipId && (\n
    \n {t(errors.vipId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.minimumRebate && (\n
    \n {t(errors.minimumRebate.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.maximumRebate && (\n
    \n {t(errors.maximumRebate.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.rebatePercent && (\n
    \n {t(errors.rebatePercent.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.turnoverRate && (\n
    \n {t(errors.turnoverRate.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default ProductSettingDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageLanguage = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [languageData, setLanguageData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"LANGUAGE_NAME\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n width: \"1%\",\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._LANGUAGE_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_LANGUAGE,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: \"1%\",\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_LANGUAGE + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setLanguageData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"LANGUAGE\")}\n {checkIfPermissionExist(\n AccessRight._LANGUAGE_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageLanguage;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport Dropzone from \"react-dropzone\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst LanguageDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const [name, setName] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [code, setCode] = useState(\"\");\n const [languageId, setLanguageId] = useState(\"\");\n\n const { register, handleSubmit, errors } = useForm();\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n const [iconImage, setIconImage] = useState(null);\n const [iconFile, setIconFile] = useState(null);\n const [isNewIcon, setIsNewIcon] = useState(false);\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n name: data.name,\n status: data.status,\n code: data.code,\n };\n\n if (!stringIsNullOrEmpty(iconFile) && isNewIcon) {\n params[\"icon\"] = iconFile;\n }\n\n if (stringIsNullOrEmpty(iconImage)) {\n params[\"iconRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(languageId)) {\n params[\"id\"] = languageId;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_LANGUAGE, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIsNewIcon(false);\n setLanguageId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// Used to set logo\n /// \n const logoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setIconFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setIconImage(reader.result);\n };\n reader.readAsDataURL(file);\n setIsNewIcon(true);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_LANGUAGE_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setLanguageId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setName(responseJson[ApiKey._API_DATA_KEY][\"name\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setCode(responseJson[ApiKey._API_DATA_KEY][\"code\"]);\n if (\n !stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"icon\"])\n ) {\n setIconImage(responseJson[ApiKey._API_DATA_KEY][\"icon\"]);\n }\n }\n });\n }\n }, []);\n\n return (\n
    \n

    \n {!stringIsNullOrEmpty(languageId)\n ? t(\"EDIT_LANGUAGE\")\n : t(\"ADD_LANGUAGE\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.name && (\n
    \n {t(errors.name.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.code && (\n
    \n {t(errors.code.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n logoDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\"SELECT_OR_DRAG_AND_DROP_FILE\")}\n

    \n {!stringIsNullOrEmpty(iconImage) && (\n \n )}\n
    \n \n )}\n \n
    \n
    \n {\n setIconImage(\"\");\n setIconFile();\n }}\n >\n {t(\"REMOVE_ICON\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n );\n};\n\nexport default LanguageDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport \"../../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../../util/Constant\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBankingChannel = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [bankingChannelData, setBankingChannelData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"CHANNEL_NAME\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._BANKING_CHANNEL_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_BANKING_CHANNEL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_BANKING_CHANNEL + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankingChannelData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"BANKING_CHANNEL\")}\n {checkIfPermissionExist(\n AccessRight._BANKING_CHANNEL_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageBankingChannel;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst BankingChannelDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const [name, setName] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [bankingChannelId, setBankingChannelId] = useState(\"\");\n\n const { register, handleSubmit, errors } = useForm();\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n name: data.name,\n status: data.status,\n };\n\n if (!stringIsNullOrEmpty(bankingChannelId)) {\n params[\"id\"] = bankingChannelId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_BANKING_CHANNEL, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankingChannelId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_BANKING_CHANNEL_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankingChannelId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setName(responseJson[ApiKey._API_DATA_KEY][\"name\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n }\n });\n }\n }, []);\n\n return (\n
    \n

    \n {!stringIsNullOrEmpty(bankingChannelId)\n ? t(\"EDIT_BANKING_CHANNEL\")\n : t(\"ADD_BANKING_CHANNEL\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.name && (\n
    \n {t(errors.name.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default BankingChannelDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport \"../../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../../util/Constant\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBonusType = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [bonusType, setBonusType] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"BONUS_NAME\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._BONUS_TYPE_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_BONUS_TYPE,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_BONUS_TYPE + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBonusType(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"BONUS_TYPE\")}\n {checkIfPermissionExist(AccessRight._BONUS_TYPE_PERMISSION, true) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageBonusType;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst BonusTypeDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const [name, setName] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [bonusTypeId, setBonusTypeId] = useState(\"\");\n\n const { register, handleSubmit, errors } = useForm();\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n name: data.name,\n status: data.status,\n };\n\n if (!stringIsNullOrEmpty(bonusTypeId)) {\n params[\"id\"] = bonusTypeId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_BONUS_TYPE, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBonusTypeId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_BONUS_TYPE_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBonusTypeId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setName(responseJson[ApiKey._API_DATA_KEY][\"name\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n }\n });\n }\n }, []);\n\n return (\n
    \n

    \n {!stringIsNullOrEmpty(bonusTypeId)\n ? t(\"EDIT_BONUS_TYPE\")\n : t(\"ADD_BONUS_TYPE\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.name && (\n
    \n {t(errors.name.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default BonusTypeDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\nconst ManageInstantPaySetting = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [instantPaySetting, setInstantPaySetting] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"INSTANY_PAYMENT_GATEWAY\",\n accessor: \"instantPayGatewayString\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._INSTANT_PAY_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_INSTANT_PAY_SETTING,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n updateSettingStatus(row.original)}>\n {row.original.status == 1 ? t(\"DISABLE\") : t(\"ENABLE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n GetInstantPaySetting();\n }, []);\n\n function updateSettingStatus(data) {\n fetch(\n ApiUrl._API_UPDATE_INSTANT_PAY_SETTING_STATUS +\n \"?instantPaySettingId=\" +\n data[\"id\"] +\n \"&enable=\" +\n !data[\"status\"],\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n GetInstantPaySetting();\n });\n }\n\n function GetInstantPaySetting() {\n fetch(ApiUrl._API_GET_USER_INSTANT_PAY_SETTING + \"?all=true\", {\n method: ApiKey._API_GET_USER_INSTANT_PAY_SETTING,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setInstantPaySetting(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n return (\n
    \n

    \n {t(\"INSANT_PAY_SETTING_LISTING\")}\n {checkIfPermissionExist(\n AccessRight._INSTANT_PAY_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageInstantPaySetting;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport Select from \"react-select\";\nimport {\n Panel,\n PanelHeader,\n PanelBody,\n} from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst InstantPaySettingDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const [instantPaySettingId, setInstantPaySettingId] = useState(\"\");\n const [instantPayBankSettingId, setInstantPayBankSettingId] = useState(\"\");\n const [apiCode, setApiCode] = useState(\"\");\n const [apiSecret, setApiSecret] = useState(\"\");\n const [serviceCharge, setServiceCharge] = useState(\"0\");\n const [url, setUrl] = useState(\"\");\n const [parameter_1, setParameter_1] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [paymentGatewayId, setPaymentGatewayId] = useState(0);\n const [minimumDeposit, setMinimumDeposit] = useState(\"\");\n const [maximumDeposit, setMaximumDeposit] = useState(\"\");\n const [minimumWithdrawal, setMinimumWithdrawal] = useState(\"\");\n const [maximumWithdrawal, setMaximumWithdrawal] = useState(\"\");\n const [bankCode, setBankCode] = useState(\"\");\n const [bankId, setBankId] = useState(\"\");\n const [instantPayRank, setInstantPayRank] = useState(\"\");\n\n const { register, handleSubmit, errors, unregister, setValue } = useForm();\n const {\n register: bankFormRegister,\n handleSubmit: bankFormHandleSubmit,\n errors: bankFormErrors,\n unregister: bankFormUnregister,\n setValue: bankFormSetValue,\n } = useForm();\n\n const [paymentGatewayOption, setPaymentGatewayOption] = useState([]);\n const [bankOption, setBankOption] = useState([]);\n const [instantPayBankSettingData, setInstantPayBankSettingData] = useState(\n []\n );\n const [bankSettingModal, setBankSettingModal] = useState(false);\n\n let _tableColumns = [\n {\n Header: \"Bank Name\",\n accessor: \"bankName\",\n disableSortBy: true,\n },\n {\n Header: \"Minimum Deposit\",\n accessor: \"minimumDeposit\",\n disableSortBy: true,\n },\n {\n Header: \"Maximum Deposit\",\n accessor: \"maximumDeposit\",\n disableSortBy: true,\n },\n {\n Header: \"Minimum Withdrawal\",\n accessor: \"minimumWithdrawal\",\n disableSortBy: true,\n },\n {\n Header: \"Maximum Withdrawal\",\n accessor: \"maximumWithdrawal\",\n disableSortBy: true,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n loadBankSetting(row.original)}>\n {t(\"EDIT\")}\n \n deleteBankSetting(row.original.id)}>\n {t(\"DELETE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n const submitBankSettingForm = async (data, e) => {\n let params = {\n bankId: data.bankId,\n bankCode: data.bankCode,\n maximumDeposit: data.maximumDeposit,\n maximumWithdrawal: data.maximumWithdrawal,\n minimumDeposit: data.minimumDeposit,\n minimumWithdrawal: data.minimumWithdrawal,\n instantPayGatewayId: data.paymentGatewayId,\n instantPaySettingId: instantPaySettingId,\n };\n\n if (!stringIsNullOrEmpty(instantPayBankSettingId)) {\n params[\"id\"] = instantPayBankSettingId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_INSTANT_PAY_BANK_SETTING, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n toggleModal();\n getInstantPayBankSetting();\n }\n });\n };\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n apiCode: data.apiCode,\n apiSecret: data.apiSecret,\n url: data.url,\n status: data.status,\n instantPayGatewayId: data.paymentGatewayId,\n parameter_1: data.parameter1,\n serviceCharge: data.serviceCharge,\n rank: data.instantPayRank\n };\n\n if (!stringIsNullOrEmpty(instantPaySettingId)) {\n params[\"id\"] = instantPaySettingId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_INSTANT_PAY_SETTING, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setInstantPaySettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n function deleteBankSetting(id) {\n fetch(\n ApiUrl._API_DELETE_INSTANT_PAYBANK_SETTING +\n \"?instantPayBankSettingId=\" +\n id,\n {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n getInstantPayBankSetting();\n }\n });\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n bankFormRegister({ name: \"bankId\" }, { required: \"PLEASE_SELECT_BANK\" });\n register(\n { name: \"paymentGatewayId\" },\n { required: \"PLEASE_SELECT_PAYMENT_GATEWAY\" }\n );\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_INSTANT_PAY_SETTING_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n setInstantPaySettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setApiCode(responseJson[ApiKey._API_DATA_KEY][\"apiCode\"]);\n setApiSecret(responseJson[ApiKey._API_DATA_KEY][\"apiSecret\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setUrl(responseJson[ApiKey._API_DATA_KEY][\"url\"]);\n setServiceCharge(responseJson[ApiKey._API_DATA_KEY][\"serviceCharge\"]);\n setPaymentGatewayId(responseJson[ApiKey._API_DATA_KEY][\"instantPayGatewayId\"]);\n setInstantPayRank(responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setParameter_1(responseJson[ApiKey._API_DATA_KEY][\"parameter_1\"]);\n setValue(\n \"paymentGatewayId\",\n responseJson[ApiKey._API_DATA_KEY][\"instantPayGatewayId\"]\n );\n setValue(\n \"serviceCharge\",\n responseJson[ApiKey._API_DATA_KEY][\"serviceCharge\"]\n );\n }\n });\n\n await fetch(ApiUrl._API_GET_USER_BANK, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bank) {\n bankList.push({ label: bank.bankName, value: bank.id });\n });\n\n setBankOption(bankList);\n }\n });\n\n await getInstantPayBankSetting();\n }\n\n await fetch(ApiUrl._API_GET_INSTANT_PAYMENT_GATEWAY, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const paymentGatewayList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (gateway) {\n paymentGatewayList.push({ label: gateway.name, value: gateway.id });\n });\n\n setPaymentGatewayOption(paymentGatewayList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n async function getInstantPayBankSetting() {\n await fetch(\n ApiUrl._API_GET_INSTANT_PAY_BANK_SETTING +\n \"?instantPaySettingId=\" +\n _location.state.id,\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setInstantPayBankSettingData(responseJson[ApiKey._API_DATA_KEY]);\n }\n }\n });\n }\n\n /// \n /// Author : -\n /// \n function loadBankSetting(data) {\n setMinimumDeposit(data[\"minimumDeposit\"]);\n setMaximumDeposit(data[\"maximumDeposit\"]);\n setMinimumWithdrawal(data[\"minimumWithdrawal\"]);\n setMaximumWithdrawal(data[\"maximumWithdrawal\"]);\n setBankCode(data[\"bankCode\"]);\n setBankId(data[\"bankId\"]);\n bankFormSetValue(\"bankId\", data[\"bankId\"]);\n setInstantPayBankSettingId(data[\"id\"]);\n toggleModal();\n }\n\n /// \n /// Author : -\n /// \n function toggleModal() {\n if (bankSettingModal) {\n setMinimumDeposit(\"\");\n setMaximumDeposit(\"\");\n setMinimumWithdrawal(\"\");\n setMaximumWithdrawal(\"\");\n setBankId(\"\");\n setBankCode(\"\");\n bankFormSetValue(\"bankId\", \"\");\n setInstantPayBankSettingId(\"\");\n }\n\n setBankSettingModal(!bankSettingModal);\n }\n\n return (\n
    \n

    \n {!stringIsNullOrEmpty(instantPaySettingId)\n ? t(\"EDIT_INSTANT_PAY_SETTING\")\n : t(\"ADD_INSTANT_PAY_SETTING\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == paymentGatewayId\n )[0] !== undefined\n ? paymentGatewayOption.filter(\n (option) =>\n option.value == paymentGatewayId\n )[0].label\n : \"\"\n }\n value={paymentGatewayOption.filter(\n (option) => option.value == paymentGatewayId\n )}\n onChange={(e) => {\n setPaymentGatewayId(e.value);\n setValue(\"paymentGatewayId\", e.value);\n }}\n />\n {errors.paymentGatewayId && (\n
    \n {t(errors.paymentGatewayId.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.apiCode && (\n
    \n {t(errors.apiCode.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.apiSecret && (\n
    \n {t(errors.apiSecret.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.url && (\n
    \n {t(errors.url.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.parameter1 && (\n
    \n {t(errors.parameter1.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.serviceCharge && (\n
    \n {t(errors.serviceCharge.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {errors.instantPayRank &&
    {t(errors.instantPayRank.message)}
    }\n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {!stringIsNullOrEmpty(instantPaySettingId) && (\n
    \n
    \n \n {t(\"INSTANT_BANK_SETTING\")}\n \n
    \n
    \n toggleModal()}\n >\n \n {t(\"ADD_INSTANT_BANK_SETTING\")}\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n )}\n
    \n toggleModal()}>\n
    \n toggleModal()}>\n {t(\"BANK_SETTING\")}\n \n \n
    \n
    \n
    \n \n
    \n option.value == bankId\n )[0] !== undefined\n ? bankOption.filter(\n (option) => option.value == bankId\n )[0].label\n : \"\"\n }\n value={bankOption.filter(\n (option) => option.value == bankId\n )}\n onChange={(e) => {\n setBankId(e.value);\n bankFormSetValue(\"bankId\", e.value);\n }}\n />\n {bankFormErrors.bankId && (\n
    \n {t(bankFormErrors.bankId.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {bankFormErrors.bankCode && (\n
    \n {t(bankFormErrors.bankCode.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {bankFormErrors.minimumDeposit && (\n
    \n {t(bankFormErrors.minimumDeposit.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {bankFormErrors.maximumDeposit && (\n
    \n {t(bankFormErrors.maximumDeposit.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {bankFormErrors.minimumWithdrawal && (\n
    \n {t(bankFormErrors.minimumWithdrawal.message)}\n
    \n )}\n
    \n
    \n
    \n \n
    \n \n {bankFormErrors.maximumWithdrawal && (\n
    \n {t(bankFormErrors.maximumWithdrawal.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n toggleModal()}\n >\n {t(\"CLOSE\")}\n \n \n \n
    \n
    \n
    \n
    \n );\n};\n\nexport default InstantPaySettingDetail;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst RejectReasonDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const [code, setCode] = useState(\"\");\n const [description, setDescription] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [rejectReasonId, setRejectReasonId] = useState(\"\");\n\n const { register, handleSubmit, errors } = useForm();\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n code: data.code,\n description: data.description,\n status: data.status,\n };\n\n if (!stringIsNullOrEmpty(rejectReasonId)) {\n params[\"id\"] = rejectReasonId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_REJECT_CODE, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setRejectReasonId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_REJECT_CODE_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setRejectReasonId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setDescription(responseJson[ApiKey._API_DATA_KEY][\"description\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setCode(responseJson[ApiKey._API_DATA_KEY][\"code\"]);\n }\n });\n }\n }, []);\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(rejectReasonId)\n ? t(\"EDIT_REJECT_REASON\")\n : t(\"ADD_REJECT_REASON\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.code && (\n
    \n {t(errors.code.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.description && (\n
    \n {t(errors.description.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default RejectReasonDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageRejectReason = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [rejectReasonData, setRejectReasonData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"REJECT_CODE\",\n accessor: \"code\",\n disableSortBy: true,\n },\n {\n Header: \"REJECT_REASON\",\n accessor: \"description\",\n },\n {\n Header: \"REJECT_STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._REJECT_REASON_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_REJECT_REASON,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_REJECT_CODE + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setRejectReasonData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_REJECT_REASON\")}\n {checkIfPermissionExist(\n AccessRight._REJECT_REASON_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageRejectReason;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../../util/Util\";\nimport { ApiKey, ApiUrl, LanguageKey, SmsType } from \"../../../util/Constant\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \nconst SmsContentDetail = (props) => {\n let _history = useHistory();\n const _DFAULT_LANGUAGE_VALUE = -1;\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _location = useLocation();\n const _dispatch = useDispatch();\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n reset,\n setError,\n setValue,\n control,\n } = useForm();\n const [smsContentId, setSmsContentId] = useState();\n const [cursorPosition, setCursorPosition] = useState(0);\n const [status, setStatus] = useState(true);\n const [languages, setLanguages] = useState([]);\n const [languageContent, setLanguageContent] = useState([]);\n const [selectedLanguage, setSelectedLanguage] = useState(\n _DFAULT_LANGUAGE_VALUE\n );\n const [contentError, setContentError] = useState(\"\");\n\n const TAG_OPTIONS = [\n { value: \"{pin}\", label: \"pin\" },\n { value: \"{phonenumber}\", label: \"phonenumber\" },\n { value: \"{wallet}\", label: \"wallet\" },\n { value: \"{datetime}\", label: \"datetime\" },\n { value: \"{withdrawalamount}\", label: \"withdrawalamount\" },\n { value: \"{depositamount}\", label: \"depositamount\" },\n { value: \"{id}\", label: \"id\" },\n { value: \"{status}\", label: \"status\" },\n { value: \"{TAC}\", label: \"TAC\" },\n ];\n\n /// \n /// Author : -\n /// \n const textareaBlurHandler = (e) => {\n setCursorPosition(e.target.selectionStart);\n };\n\n /// \n /// Author : -\n /// \n const tagChangeHandler = (e) => {\n let currentContentValue = languageContent.filter(\n (i) => i.id == selectedLanguage\n )[0]?.value;\n let processedValue = \"\";\n\n if (stringIsNullOrEmpty(currentContentValue)) {\n processedValue = e.value;\n } else {\n processedValue =\n currentContentValue.substr(0, cursorPosition) +\n e.value +\n currentContentValue.substr(cursorPosition);\n }\n\n setLanguageContent(\n languageContent.map((content) =>\n content.id == selectedLanguage\n ? { ...content, value: processedValue }\n : content\n )\n );\n\n setCursorPosition(cursorPosition + e.value.length);\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n const init = async () => {\n try {\n setValue(\"smsTypeId\", SmsType._PHONE_VERIFICATION_TYPE);\n let storedLanguageContent = [];\n let storedContent = \"\";\n\n if (_location.state) {\n var apiUrl =\n ApiUrl._API_GET_USER_SMS_CONTENT_BY_ID +\n \"?includeLanguageContent=true\";\n apiUrl += \"&id=\" + _location.state.id;\n let responseJson = await ApiEngine.get(apiUrl);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSmsContentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setValue(\n \"smsTypeId\",\n responseJson[ApiKey._API_DATA_KEY][\"smsTypeId\"]\n );\n storedLanguageContent =\n responseJson[ApiKey._API_DATA_KEY][\"smsContentLanguages\"];\n storedContent = responseJson[ApiKey._API_DATA_KEY][\"content\"];\n } else {\n throw t(responseJson[ApiKey._API_MESSAGE_KEY]);\n }\n }\n\n let languageJson = await ApiEngine.get(\n ApiUrl._API_GET_PREFERENCE_LANGUAGE\n );\n\n if (languageJson[ApiKey._API_SUCCESS_KEY]) {\n let tempLanguages = [\n { label: \"Default\", value: _DFAULT_LANGUAGE_VALUE },\n ];\n let tempContents = [\n { name: \"content\", value: storedContent, id: _DFAULT_LANGUAGE_VALUE },\n ];\n\n languageJson[ApiKey._API_DATA_KEY].map((lang) => {\n let tempContent = \"\";\n\n if (\n storedLanguageContent.filter((i) => i.languageId == lang.id)\n .length > 0\n ) {\n tempContent =\n storedLanguageContent.filter((i) => i.languageId == lang.id)[0]\n .content ?? \"\";\n }\n\n tempLanguages.push({ label: lang.name, value: lang.id });\n tempContents.push({\n name: \"content_\" + lang.id,\n value: tempContent,\n id: lang.id,\n });\n });\n\n setLanguageContent(tempContents);\n setLanguages(tempLanguages);\n } else {\n throw t(languageJson[ApiKey._API_MESSAGE_KEY]);\n }\n } catch (err) {\n _dispatch(showMessage(false, err));\n }\n };\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n if (\n stringIsNullOrEmpty(\n languageContent.filter((i) => i.id == _DFAULT_LANGUAGE_VALUE)[0].value\n )\n ) {\n setContentError(\"PLEASE_ENTER_DEFAULT_CONTENT\");\n setSelectedLanguage(_DFAULT_LANGUAGE_VALUE);\n return;\n }\n setContentError(\"\");\n\n let params = {\n status: data.status,\n smsTypeId: data.smsTypeId,\n };\n\n if (!stringIsNullOrEmpty(smsContentId)) {\n params[\"id\"] = smsContentId;\n }\n\n languageContent.map((content) => {\n params[content.name] = content.value;\n });\n\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(\n ApiUrl._API_CREATE_OR_UPDATE_SMS_CONTENT,\n formBody\n );\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSmsContentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n };\n\n return (\n
    \n

    \n {smsContentId ? t(\"EDIT_SMS_CONTENT\") : t(\"ADD_SMS_CONTENT\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n {\n return (\n onChange(e.target.value)}\n value={value}\n >\n \n {t(\"SMS_TYPE_PHONE_VERIFICATION\")}\n \n \n {t(\"SMS_TYPE_RESET_PASSWORD\")}\n \n \n \n \n \n \n );\n }}\n />\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == selectedLanguage\n )}\n options={languages}\n onChange={(e) => {\n setSelectedLanguage(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n i.id == selectedLanguage\n )[0]?.value\n }\n onBlur={textareaBlurHandler}\n onChange={(e) =>\n setLanguageContent(\n languageContent.map((content) =>\n content.id == selectedLanguage\n ? { ...content, value: e.target.value }\n : content\n )\n )\n }\n >\n {!stringIsNullOrEmpty(contentError) && (\n
    \n {t(contentError)}\n
    \n )}\n
    \n Tags to be used for dynamic value, \n \n {TAC}\n \n \n {pin}\n \n \n {phonenumber}\n \n \n {wallet}\n \n \n {datetime}\n \n \n {withdrawamount}\n \n \n {depositamount}\n \n \n {id}\n \n \n {status}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(SmsContentDetail);\n","import React, { useEffect, useState } from \"react\";\nimport ReactTable from \"../../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport \"../../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../../util/Util\";\nimport {\n WebUrl,\n ApiUrl,\n ApiKey,\n AccessRight,\n LanguageKey,\n} from \"../../../util/Constant\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../../util/PermissionChecker\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\nconst ManageSmsContent = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [smsContentData, setSmsContentData] = useState([]);\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_SMS_CONTENT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSmsContentData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n let _tableColumns = [\n {\n Header: \"TYPE\",\n accessor: \"smsTypeString\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"CREATED_DATETIME\",\n accessor: \"createdTime\",\n Cell: ({ row }) => {\n return (\n <>{moment(row.original.createdTime).format(\"YYYY-MM-DD HH:mm:ss\")}\n );\n },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._SMS_CONTENT_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_SMS_CONTENT,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n ];\n\n return (\n
    \n

    \n {t(\"MANAGE_SMS_CONTENT\")}\n \n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageSmsContent;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\nconst SmsSettings = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors } = useForm();\n\n const [url, setUrl] = useState(\"\");\n const [username, setUsername] = useState(\"\");\n const [systemName, setSystemName] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [settingId, setSettingId] = useState(\"\");\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_SMS_SETTING, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (\n responseJson[ApiKey._API_SUCCESS_KEY] &&\n responseJson[ApiKey._API_DATA_KEY][\"id\"] != 0\n ) {\n setUrl(responseJson[ApiKey._API_DATA_KEY][\"url\"]);\n setUsername(responseJson[ApiKey._API_DATA_KEY][\"systemUsername\"]);\n setSystemName(responseJson[ApiKey._API_DATA_KEY][\"systemName\"]);\n setPassword(responseJson[ApiKey._API_DATA_KEY][\"systemPassword\"]);\n setSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n }, []);\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n systemPassword: data.password,\n systemUsername: data.username,\n systemName: data.systemName,\n url: data.url,\n };\n\n if (!stringIsNullOrEmpty(settingId)) {\n params[\"id\"] = settingId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_USER_SMS_SETTING, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n return (\n
    \n

    {t(\"SMS_SETTINGS\")}

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.systemName && (\n
    \n {t(errors.systemName.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.username && (\n
    \n {t(errors.username.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.password && (\n
    \n {t(errors.password.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.url && (\n
    \n {t(errors.url.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default SmsSettings;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n AllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageAnnouncement = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [announcementData, setAnnouncementData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"VIP\",\n accessor: \"vipId\",\n Cell: ({ row }) => {\n if (stringIsNullOrEmpty(row.original.vipId)) {\n return <>{AllVipOption._LABEL};\n } else {\n return <>{row.original.vipModel.name};\n }\n },\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._ANNOUNCEMENT_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_ANNOUNCEMENT,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_ANNOUNCEMENT,\n { refId: row.original.id }\n );\n }}\n >\n {t(\"CLONE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_ANNOUNCEMENT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setAnnouncementData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"ANNOUNCEMENTS\")}\n {checkIfPermissionExist(\n AccessRight._ANNOUNCEMENT_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageAnnouncement;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n DisplayMode,\n LanguageKey,\n ContentTypeString,\n AllVipOption,\n} from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst AnnouncementDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors, setValue } = useForm();\n const [announcementId, setAnnouncementId] = useState(\"\");\n const [announcementRefId, setAnnouncementRefId] = useState(\"\");\n const [displayMode, setDisplayMode] = useState(\"\");\n\n const [content, setContent] = useState(\"\");\n const [title, setTitle] = useState(\"\");\n const [vip, setVip] = useState();\n const [vipOption, setVipOption] = useState([]);\n const [status, setStatus] = useState(true);\n const [rank, setRank] = useState(100);\n const [pinned, setPinned] = useState(false);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n register({ name: \"vip\" }, { required: \"PLEASE_SELECT_VIP_LEVEL\" });\n init();\n }, []);\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n let stateAnnouncementId = _location.state.id || _location.state.refId;\n var apiUrl = ApiUrl._API_GET_USER_ANNOUNCEMENT_BY_ID;\n apiUrl += \"?id=\" + stateAnnouncementId;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (_location.state.id) {\n setAnnouncementId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setAnnouncementRefId(\"\");\n } else if (_location.state.refId) {\n setAnnouncementId(\"\");\n setAnnouncementRefId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n setDisplayMode(responseJson[ApiKey._API_DATA_KEY][\"displayModeId\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setRank(responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setPinned(responseJson[ApiKey._API_DATA_KEY][\"pinOnTop\"]);\n setVip(\n stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"vipId\"])\n ? AllVipOption._VALUE\n : responseJson[ApiKey._API_DATA_KEY][\"vipId\"]\n );\n unregister(\"vip\");\n }\n });\n }\n\n await fetch(ApiUrl._API_GET_USER_VIP, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const vipList = [\n { label: AllVipOption._LABEL, value: AllVipOption._VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (vipLevel) {\n vipList.push({ label: vipLevel.name, value: vipLevel.id });\n });\n\n setVipOption(vipList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n displayModeId: data.displayMode,\n title: data.title,\n rank: data.rank,\n content: content,\n status: data.status,\n rank: data.rank,\n pinOnTop: data.pinOnTop,\n vipId: stringIsNullOrEmpty(vip) ? \"\" : vip,\n };\n\n if (!stringIsNullOrEmpty(announcementId)) {\n params[\"id\"] = announcementId;\n }\n\n if (!stringIsNullOrEmpty(announcementRefId)) {\n params[\"refId\"] = announcementRefId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_ANNOUNCEMENT, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setAnnouncementId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setAnnouncementRefId(\"\");\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n });\n };\n\n return (\n
    \n

    \n {announcementId ? t(\"EDIT_ANNOUNCEMENT\") : t(\"ADD_ANNOUNCEMENT\")}\n \n

    \n {announcementId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n setDisplayMode(e.target.value)}\n value={displayMode}\n >\n \n \n {errors.displayMode && (\n
    \n {t(errors.displayMode.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.title.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == vip\n )[0] !== undefined\n ? vipOption.filter(\n (option) => option.value == vip\n )[0].label\n : \"\"\n }\n value={vipOption.filter(\n (option) => option.value == vip\n )}\n onChange={(e) => {\n unregister(\"vip\");\n setVip(e.value);\n }}\n />\n {errors.vip && (\n
    \n {t(errors.vip.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n setContent(e.target.value);\n setValue(\"content\", e.target.value);\n }}\n >\n {errors.content && (\n
    \n {t(errors.content.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n setRank(e.target.value)}\n />\n {errors.rank && (\n
    \n {t(errors.rank.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setPinned(e.target.checked)}\n value={true}\n checked={pinned}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {announcementId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n
    \n
    \n );\n};\n\nexport default AnnouncementDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n WebUrl,\n ApiKey,\n ApiUrl,\n AccessRight,\n LanguageKey,\n AllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBanner = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [bannerData, setBannerData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"VIP\",\n accessor: \"vipId\",\n Cell: ({ row }) => {\n if (stringIsNullOrEmpty(row.original.vipId)) {\n return <>{AllVipOption._LABEL};\n } else {\n return <>{row.original.vipModel.name};\n }\n },\n },\n {\n Header: \"DISPLAY_TYPE\",\n accessor: \"displayTypeString\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._BANNER_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_BANNER,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n {\n navigateTo(_history, WebUrl._URL_CREATE_OR_UPDATE_BANNER, {\n refId: row.original.id,\n });\n }}\n >\n {t(\"CLONE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_BANNER + \"?all=true&isCompanyUser=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBannerData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"BANNERS\")}\n {checkIfPermissionExist(\n AccessRight._BANNER_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageBanner;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport {\n ApiUrl,\n ApiKey,\n ContentTypeString,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport ConfigurationLanguageDetail from \"./ConfigurationLanguageDetail\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageBannerLanguage = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [data, setData] = useState([]);\n const [\n languageDetailModalVisibility,\n setLanguageDetailModalVisibility,\n ] = useState(false);\n\n const _EXCLUDE_TITLE_TYPE = [\n ContentTypeString._VIP_BENEFIT_CONTENT,\n ContentTypeString._VIP_CRITERIA,\n ];\n const _EXCLUDE_CONTENT_TYPE = [\n ContentTypeString._VIP_BENEFIT,\n ContentTypeString._PRODUCT_CATEGORY,\n ];\n\n const [languageDetailId, setLanguageDetailId] = useState(\"\");\n const [tableColumns, setTableColumns] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"LANGUAGE\",\n accessor: \"languageName\",\n disableSortBy: true,\n },\n {\n Header: \"CONTENT\",\n accessor: \"content\",\n disableSortBy: true,\n },\n {\n Header: \"TITLE\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"DESKTOP_IMAGE\",\n accessor: \"desktopImage\",\n Cell: ({ row }) => (\n
    {!stringIsNullOrEmpty(row.original.desktopImage) ? : \"\" }
    \n ),\n disableSortBy: true,\n },\n {\n Header: \"MOBILE_IMAGE\",\n accessor: \"mobileImage\",\n Cell: ({ row }) => (\n
    {!stringIsNullOrEmpty(row.original.mobileImage) ? : \"\"}
    \n ),\n disableSortBy: true,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n setLanguageDetailId(row.original.id);\n setLanguageDetailModalVisibility(true);\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n getConfigLanguage();\n /// Used to Exclude the column of table\n if (_EXCLUDE_CONTENT_TYPE.includes(props.type)) {\n _tableColumns.splice(1, 1);\n } else if (_EXCLUDE_TITLE_TYPE.includes(props.type)) {\n _tableColumns.splice(2, 1);\n }\n setTableColumns(_tableColumns);\n }, []);\n\n /// \n /// Author : -\n /// \n const getConfigLanguage = async () => {\n await fetch(\n ApiUrl._API_GET_CONFIG_LANGUAGE_BY_TYPE_ID +\n \"?type=\" +\n props.type +\n \"&id=\" +\n props.id,\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n };\n\n return (\n
    \n
    \n {\n setLanguageDetailModalVisibility(false);\n getConfigLanguage();\n }}\n dataTypeId={props.id}\n languageDetailId={languageDetailId}\n languageType={props.type}\n dataDisplayDevice={props.displayDevice}\n />\n
    \n \n \n {\n setLanguageDetailId(\"\");\n setLanguageDetailModalVisibility(true);\n }}\n className=\"btn btn-purple\"\n >\n {t(\"ADD_LANGUAGE\")}\n \n \n \n \n
    \n );\n};\n\nexport default ManageBannerLanguage;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n DisplayMode,\n DisplayType,\n LanguageKey,\n ContentTypeString,\n AllVipOption,\n DisplayDevice,\n} from \"../../util/Constant\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport {\n stringIsNullOrEmpty,\n createMultiPartFormBody,\n imagePathToFileObject,\n} from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageBannerLanguage from \"./ManageBannerLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst BannerDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n const [displayType, setDisplayType] = useState(\"\");\n const [displayMode, setDisplayMode] = useState(\"\");\n\n const [bannerId, setBannerId] = useState(\"\");\n const [bannerRefId, setBannerRefId] = useState(\"\");\n const [title, setTitle] = useState(\"\");\n const [page, setPage] = useState(\"\");\n const [content, setContent] = useState(\"\");\n const [url, setUrl] = useState(\"\");\n const [rank, setRank] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [displayDevice, setDisplayDevice] = useState(\"\");\n\n const [desktopFile, setDesktopFile] = useState([]);\n const [mobileFile, setMobileFile] = useState([]);\n const [desktopImage, setDesktopImage] = useState();\n const [mobileImage, setMobileImage] = useState();\n const [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n const [isNewMobileImage, setIsNewMobileImage] = useState(false);\n const [vip, setVip] = useState(\"\");\n const [vipOption, setVipOption] = useState([]);\n const [showExample, setShowExample] = useState(false);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) setActiveTab(tab);\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_BANNER_BY_ID;\n let stateBannerId = _location.state.id || _location.state.refId;\n apiUrl += \"?id=\" + stateBannerId;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (_location.state.id) {\n setBannerId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setBannerRefId(\"\");\n } else if (_location.state.refId) {\n setBannerId(\"\");\n setBannerRefId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n\n setDisplayMode(responseJson[ApiKey._API_DATA_KEY][\"displayModeId\"]);\n setDisplayType(responseJson[ApiKey._API_DATA_KEY][\"displayTypeId\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setRank(responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setPage(responseJson[ApiKey._API_DATA_KEY][\"page\"]);\n if (stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"page\"])) setShowExample(true);\n setUrl(responseJson[ApiKey._API_DATA_KEY][\"url\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setDisplayDevice(responseJson[ApiKey._API_DATA_KEY][\"displayDevice\"]);\n setVip(\n stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"vipId\"])\n ? AllVipOption._VALUE\n : responseJson[ApiKey._API_DATA_KEY][\"vipId\"]\n );\n setValue(\n \"vip\",\n stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"vipId\"])\n ? AllVipOption._VALUE\n : responseJson[ApiKey._API_DATA_KEY][\"vipId\"]\n );\n\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n )\n ) {\n setDesktopImage(\n responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n );\n if (_location.state.refId) {\n setIsNewDesktopImage(true);\n let imageFile = await imagePathToFileObject(\n responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n );\n setDesktopFile(imageFile);\n }\n }\n\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]\n )\n ) {\n setMobileImage(responseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]);\n if (_location.state.refId) {\n setIsNewMobileImage(true);\n let imageFile = await imagePathToFileObject(\n responseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]\n );\n setMobileFile(imageFile);\n }\n }\n\n unregister(\"content\");\n }\n });\n }\n\n await fetch(ApiUrl._API_GET_USER_VIP, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const vipList = [\n { label: AllVipOption._LABEL, value: AllVipOption._VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (vipLevel) {\n vipList.push({ label: vipLevel.name, value: vipLevel.id });\n });\n\n setVipOption(vipList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let tempDisplayTypeId = 1;\n if (data.displayDevice === \"1\" || data.displayDevice === \"3\") {\n tempDisplayTypeId = 2;\n }\n let params = {\n title: data.title,\n displayModeId: data.displayMode,\n displayTypeId: tempDisplayTypeId,\n page: data.page,\n url: data.url,\n rank: data.rank,\n status: data.status,\n content: data.content,\n isNewDesktopFile: isNewDesktopImage,\n isNewMobileFile: isNewMobileImage,\n vipId: stringIsNullOrEmpty(vip) ? \"\" : vip,\n displayDevice: data.displayDevice\n };\n\n if (!stringIsNullOrEmpty(desktopFile)) {\n params[\"desktopFile\"] = desktopFile;\n }\n\n if (stringIsNullOrEmpty(desktopImage)) {\n params[\"desktopImageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(mobileFile)) {\n params[\"mobileFile\"] = mobileFile;\n }\n\n if (stringIsNullOrEmpty(mobileImage)) {\n params[\"mobileImageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(bannerId)) {\n params[\"id\"] = bannerId;\n }\n\n if (!stringIsNullOrEmpty(bannerRefId)) {\n params[\"refId\"] = bannerRefId;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_BANNER, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIsNewDesktopImage(false);\n setIsNewMobileImage(false);\n setBannerRefId(\"\");\n setBannerId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n });\n };\n\n /// \n /// Author : -\n /// \n const logoDrop = (acceptedFiles, isDesktop) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n if (isDesktop) {\n setDesktopFile(file);\n } else {\n setMobileFile(file);\n }\n const reader = new FileReader();\n reader.onloadend = () => {\n if (isDesktop) {\n setIsNewDesktopImage(true);\n setDesktopImage(reader.result);\n } else {\n setIsNewMobileImage(true);\n setMobileImage(reader.result);\n }\n };\n reader.readAsDataURL(file);\n }\n };\n\n const checkPageField = (data, e) => {\n if (data == \"\") setShowExample(true);\n else setShowExample(false);\n }\n\n return (\n
    \n

    \n {bannerId ? t(\"EDIT_BANNER\") : t(\"ADD_BANNER\")}\n \n

    \n {bannerId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.title.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n setDisplayMode(e.target.value)}\n value={displayMode}\n >\n \n \n \n \n
    \n
    \n
    \n {/*
    \n
    \n \n
    \n setDisplayType(e.target.value)}\n value={displayType}\n >\n \n \n \n
    \n
    \n
    */}\n
    \n
    \n \n
    \n \n {errors.url && (\n
    \n {t(errors.url.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n return (\n option.value == vip\n )[0] !== undefined\n ? vipOption.filter(\n (option) => option.value == vip\n )[0].label\n : \"\"\n }\n value={vipOption.filter(\n (option) => option.value == vip\n )}\n onChange={(e) => {\n setVip(e.value);\n onChange(e.value);\n }}\n />\n );\n }}\n rules={{ required: \"PLEASE_SELECT_VIP_LEVEL\" }}\n />\n {errors.vip && (\n
    \n {t(errors.vip.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.rank && (\n
    \n {t(errors.rank.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.content && (\n
    \n {t(errors.content.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n {/* setDisplayDevice(parseInt(e.target.value))}*/}\n {/* value={displayDevice}*/}\n {/* required*/}\n {/*>*/}\n {/* */}\n {/* */}\n {/* */}\n {/* */}\n {/* */}\n {/* */}\n {/**/}\n setDisplayDevice(parseInt(e.target.value))}\n value={displayDevice}\n required\n >\n \n \n \n \n
    \n
    \n
    \n {(displayDevice === DisplayDevice._DESKTOP_MAIN || displayDevice === DisplayDevice._DESKTOP_SUB) &&
    \n
    \n \n
    \n checkPageField(e.target.value)}\n />\n {errors.page && (\n
    \n {t(errors.page.message)}\n
    \n )}\n
    \n
    \n
    }\n {(displayDevice === DisplayDevice._DESKTOP_MAIN || displayDevice === DisplayDevice._DESKTOP_SUB || displayDevice === DisplayDevice._DESKTOP_POPUP) ?
    \n
    \n \n
    \n \n logoDrop(acceptedFiles, true)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(desktopImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setDesktopImage(\"\");\n setDesktopFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    :\n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles, false)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(mobileImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setMobileImage(\"\");\n setMobileFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    }\n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n \n \n \n {bannerId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n \n \n );\n};\n\nexport default withRouter(BannerDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n WebUrl,\n ApiKey,\n ApiUrl,\n AccessRight,\n LanguageKey,\n AllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageRewardBanner = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [bannerData, setBannerData] = useState([]);\n \n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"VIP\",\n accessor: \"vipId\",\n Cell: ({ row }) => {\n if (stringIsNullOrEmpty(row.original.vipId)) {\n return <>{AllVipOption._LABEL};\n } else {\n return <>{row.original.vipModel.name};\n }\n },\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._BANNER_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_REWARD_BANNER,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n {\n navigateTo(_history, WebUrl._URL_CREATE_OR_UPDATE_REWARD_BANNER, {\n refId: row.original.id,\n });\n }}\n >\n {t(\"CLONE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_REWARD_BANNER + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBannerData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"REWARD_BANNERS\")}\n {checkIfPermissionExist(\n AccessRight._REWARD_BANNER_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageRewardBanner;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n DisplayMode,\n DisplayType,\n LanguageKey,\n ContentTypeString,\n AllVipOption,\n} from \"../../util/Constant\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport {\n stringIsNullOrEmpty,\n createMultiPartFormBody,\n imagePathToFileObject,\n} from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageBannerLanguage from \"./ManageBannerLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst RewardBannerDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n\n const [bannerId, setBannerId] = useState(\"\");\n const [bannerRefId, setBannerRefId] = useState(\"\");\n const [title, setTitle] = useState(\"\");\n const [page, setPage] = useState(\"\");\n const [content, setContent] = useState(\"\");\n const [url, setUrl] = useState(\"\");\n const [rank, setRank] = useState(\"\");\n const [status, setStatus] = useState(true);\n\n const [desktopFile, setDesktopFile] = useState([]);\n const [mobileFile, setMobileFile] = useState([]);\n const [desktopImage, setDesktopImage] = useState();\n const [mobileImage, setMobileImage] = useState();\n const [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n const [isNewMobileImage, setIsNewMobileImage] = useState(false);\n const [vip, setVip] = useState(\"\");\n const [vipOption, setVipOption] = useState([]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) setActiveTab(tab);\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_REWARD_BANNER_BY_ID;\n let stateBannerId = _location.state.id || _location.state.refId;\n apiUrl += \"?id=\" + stateBannerId;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (_location.state.id) {\n setBannerId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setBannerRefId(\"\");\n } else if (_location.state.refId) {\n setBannerId(\"\");\n setBannerRefId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setRank(responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setPage(responseJson[ApiKey._API_DATA_KEY][\"page\"]);\n setUrl(responseJson[ApiKey._API_DATA_KEY][\"url\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setVip(\n stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"vipId\"])\n ? AllVipOption._VALUE\n : responseJson[ApiKey._API_DATA_KEY][\"vipId\"]\n );\n setValue(\n \"vip\",\n stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"vipId\"])\n ? AllVipOption._VALUE\n : responseJson[ApiKey._API_DATA_KEY][\"vipId\"]\n );\n\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n )\n ) {\n setDesktopImage(\n responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n );\n if (_location.state.refId) {\n setIsNewDesktopImage(true);\n let imageFile = await imagePathToFileObject(\n responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n );\n setDesktopFile(imageFile);\n }\n }\n\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]\n )\n ) {\n setMobileImage(responseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]);\n if (_location.state.refId) {\n setIsNewMobileImage(true);\n let imageFile = await imagePathToFileObject(\n responseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]\n );\n setMobileFile(imageFile);\n }\n }\n\n unregister(\"content\");\n }\n });\n }\n\n await fetch(ApiUrl._API_GET_USER_VIP, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const vipList = [\n { label: AllVipOption._LABEL, value: AllVipOption._VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (vipLevel) {\n vipList.push({ label: vipLevel.name, value: vipLevel.id });\n });\n\n setVipOption(vipList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n title: data.title,\n page: data.page,\n url: data.url,\n rank: data.rank,\n status: data.status,\n content: data.content,\n isNewDesktopFile: isNewDesktopImage,\n isNewMobileFile: isNewMobileImage,\n vipId: stringIsNullOrEmpty(vip) ? \"\" : vip,\n };\n\n if (!stringIsNullOrEmpty(desktopFile)) {\n params[\"desktopFile\"] = desktopFile;\n }\n\n if (stringIsNullOrEmpty(desktopImage)) {\n params[\"desktopImageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(mobileFile)) {\n params[\"mobileFile\"] = mobileFile;\n }\n\n if (stringIsNullOrEmpty(mobileImage)) {\n params[\"mobileImageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(bannerId)) {\n params[\"id\"] = bannerId;\n }\n\n if (!stringIsNullOrEmpty(bannerRefId)) {\n params[\"refId\"] = bannerRefId;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n await fetch(ApiUrl._API_CREATE_OR_UPDATE_REWARD_BANNER, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIsNewDesktopImage(false);\n setIsNewMobileImage(false);\n setBannerRefId(\"\");\n setBannerId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n });\n };\n\n /// \n /// Author : -\n /// \n const logoDrop = (acceptedFiles, isDesktop) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n if (isDesktop) {\n setDesktopFile(file);\n } else {\n setMobileFile(file);\n }\n const reader = new FileReader();\n reader.onloadend = () => {\n if (isDesktop) {\n setIsNewDesktopImage(true);\n setDesktopImage(reader.result);\n } else {\n setIsNewMobileImage(true);\n setMobileImage(reader.result);\n }\n };\n reader.readAsDataURL(file);\n }\n };\n\n return (\n
    \n

    \n {bannerId ? t(\"EDIT_REWARD_BANNER\") : t(\"ADD_REWARD_BANNER\")}\n \n

    \n {bannerId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.title.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.page && (\n
    \n {t(errors.page.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.url && (\n
    \n {t(errors.url.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n return (\n option.value == vip\n )[0] !== undefined\n ? vipOption.filter(\n (option) => option.value == vip\n )[0].label\n : \"\"\n }\n value={vipOption.filter(\n (option) => option.value == vip\n )}\n onChange={(e) => {\n setVip(e.value);\n onChange(e.value);\n }}\n />\n );\n }}\n rules={{ required: \"PLEASE_SELECT_VIP_LEVEL\" }}\n />\n {errors.vip && (\n
    \n {t(errors.vip.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.rank && (\n
    \n {t(errors.rank.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.content && (\n
    \n {t(errors.content.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles, true)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(desktopImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setDesktopImage(\"\");\n setDesktopFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles, false)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(mobileImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setMobileImage(\"\");\n setMobileFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n \n \n \n {bannerId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n \n \n );\n};\n\nexport default withRouter(RewardBannerDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n AllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManagePromotion = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [promotionData, setPromotionData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"VIP\",\n accessor: \"vipId\",\n Cell: ({ row }) => {\n if (stringIsNullOrEmpty(row.original.vipId)) {\n return <>{AllVipOption._LABEL};\n } else {\n return <>{row.original.vipModel.name};\n }\n },\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._PROMOTION_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_PROMOTION,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_PROMOTION,\n { refId: row.original.id }\n );\n }}\n >\n {t(\"CLONE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_PROMOTION + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setPromotionData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"PROMOTIONS\")}\n {checkIfPermissionExist(\n AccessRight._PROMOTION_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManagePromotion;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ScriptIndex = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [scriptData, setScriptData] = useState([]);\n const [title, setTitle] = useState([]);\n const [createOrUpdateUrl, setCreateOrUpdateUrl] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"POSITION\",\n accessor: \"positionString\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._SCRIPT_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(_history, createOrUpdateUrl, row.original);\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n setTitle(props[\"isSeo\"] ? \"SEO\" : \"SCRIPT\");\n setCreateOrUpdateUrl(\n props[\"isSeo\"]\n ? WebUrl._URL_CREATE_OR_UPDATE_SEO\n : WebUrl._URL_CREATE_OR_UPDATE_SCRIPT\n );\n fetch(\n ApiUrl._API_GET_USER_SCRIPT + \"?isSeo=\" + props[\"isSeo\"] + \"&all=true\",\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setScriptData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(title + \"_LISTING\")}\n {checkIfPermissionExist(\n AccessRight._SCRIPT_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ScriptIndex;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n Position,\n LanguageKey,\n ContentTypeString,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ScriptDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const { register, unregister, handleSubmit, errors } = useForm();\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n const [scriptId, setScriptId] = useState(\"\");\n const [title, setTitle] = useState(\"\");\n const [content, setContent] = useState(\"\");\n const [page, setPage] = useState(\"\");\n\n const [category, setCategory] = useState(\"\");\n const [position, setPosition] = useState(+\"\");\n const [status, setStatus] = useState(true);\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n // \n /// Author : -\n /// \n useEffect(() => {\n setCategory(props[\"isSeo\"] ? \"SEO\" : \"SCRIPT\");\n register({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_SCRIPT_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setScriptId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n setPage(responseJson[ApiKey._API_DATA_KEY][\"page\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setPosition(responseJson[ApiKey._API_DATA_KEY][\"positionId\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\n unregister(\"content\");\n }\n });\n }\n }\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n title: data.title,\n positionId: data.position,\n page: data.page,\n status: data.status,\n content: content,\n isSeo: props[\"isSeo\"] ? true : false,\n };\n\n if (!stringIsNullOrEmpty(scriptId)) {\n params[\"id\"] = scriptId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_SCRIPT, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setScriptId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n return (\n
    \n

    \n {t((scriptId ? \"EDIT_\" : \"ADD_\") + category)}\n \n

    \n {scriptId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.title.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n setPosition(e.target.value)}\n value={position}\n >\n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.page && (\n
    \n {t(errors.page.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n editor.setData(content);\n }}\n onChange={(event, editor) => {\n const data = editor.getData();\n setContent(data);\n if (stringIsNullOrEmpty(data)) {\n register(\n { name: \"content\" },\n { required: \"PLEASE_ENTER_CONTENT\" }\n );\n } else {\n unregister(\"content\");\n }\n }}\n />\n {errors.content && (\n
    \n {t(errors.content.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {scriptId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n
    \n
    \n );\n};\n\nexport default withRouter(ScriptDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageEmail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [emailData, setEmailData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"Active\")}\n \n ) : (\n \n {t(\"Suspended\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._EMAIL_SETTING_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_EMAIL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_EMAIL + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setEmailData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"EMAIL_LISTING\")}\n {checkIfPermissionExist(\n AccessRight._EMAIL_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageEmail;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n PageTypeOption,\n LanguageKey,\n ContentTypeString,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst EmailDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors } = useForm();\n\n const [emailId, setEmailId] = useState(\"\");\n const [pageType, setPageType] = useState(\"\");\n const [title, setTitle] = useState(\"\");\n const [content, setContent] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_EMAIL_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setEmailId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n setPageType(responseJson[ApiKey._API_DATA_KEY][\"pageTypeId\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n unregister(\"content\");\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n pageTypeId: data.pageType,\n title: data.title,\n status: data.status,\n content: content,\n };\n\n if (!stringIsNullOrEmpty(emailId)) {\n params[\"id\"] = emailId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_EMAIL, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setEmailId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n return (\n
    \n

    \n {emailId ? t(\"EDIT_EMAIL_CONTENT\") : t(\"ADD_EMAIL_CONTENT\")}\n \n

    \n {emailId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.title.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n setPageType(e.target.value)}\n value={pageType}\n >\n \n \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n editor.setData(content);\n }}\n onChange={(event, editor) => {\n const data = editor.getData();\n setContent(data);\n if (stringIsNullOrEmpty(data)) {\n register(\n { name: \"content\" },\n { required: \"PLEASE_ENTER_CONTENT\" }\n );\n } else {\n unregister(\"content\");\n }\n }}\n />\n {errors.content && (\n
    \n {t(errors.content.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {emailId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n
    \n
    \n );\n};\n\nexport default withRouter(EmailDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageContent = (props) => {\n let _history = useHistory();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [contentData, setContentData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._CONTENT_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_CONTENT,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_CONTENT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setContentData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"CONTENT_LISTING\")}\n {checkIfPermissionExist(\n AccessRight._CONTENT_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageContent;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\tContentTypeString,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ContentDetail = (props) => {\n\tconst _DETAIL_TAB = \"1\";\n\tconst _LANGUAGE_TAB = \"2\";\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\tconst { register, unregister, handleSubmit, errors } = useForm();\n\tconst [submitError, setSubmitError] = useState(\"\");\n\tconst [submitSuccess, setSubmitSuccess] = useState(\"\");\n\n\tconst [title, setTitle] = useState(\"\");\n\tconst [contentId, setContentId] = useState(\"\");\n\tconst [content, setContent] = useState(\"\");\n\tconst [page, setPage] = useState(\"\");\n\tconst [status, setStatus] = useState(true);\n\tconst [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggle = (tab) => {\n\t\tif (activeTab !== tab) {\n\t\t\tsetActiveTab(tab);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tregister({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tif (_location.state) {\n\t\t\tvar apiUrl = ApiUrl._API_GET_USER_CONTENT_BY_ID;\n\t\t\tapiUrl += \"?id=\" + _location.state.id;\n\t\t\tawait fetch(apiUrl, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tsetContentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\t\tsetContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n\t\t\t\t\t\tsetPage(responseJson[ApiKey._API_DATA_KEY][\"page\"]);\n\t\t\t\t\t\tsetTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n\t\t\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\n\t\t\t\t\t\tunregister(\"content\");\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tlet params = {\n\t\t\ttitle: data.title,\n\t\t\tpage: data.page,\n\t\t\tstatus: data.status,\n\t\t\tcontent: content,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(contentId)) {\n\t\t\tparams[\"id\"] = contentId;\n\t\t}\n\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_CONTENT, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetContentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{contentId ? t(\"EDIT_CONTENT\") : t(\"ADD_CONTENT\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t{contentId && (\n\t\t\t\t\n\t\t\t)}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.title && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.title.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.page && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.page.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\teditor.setData(content);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(event, editor) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tconst data = editor.getData();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetContent(data);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tif (stringIsNullOrEmpty(data)) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tregister(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ name: \"content\" },\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{ required: \"PLEASE_ENTER_CONTENT\" }\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tunregister(\"content\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.content.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setStatus(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t{contentId && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default withRouter(ContentDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageVipLevel = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [vipData, setVipData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"REMARK\",\n accessor: \"remark\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._VIP_SETTING_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_VIP_LEVEL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_VIP + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVipData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"VIP_LEVEL\")}\n {checkIfPermissionExist(AccessRight._VIP_SETTING_PERMISSION, true) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageVipLevel;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport Select from \"react-select\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst VipCriteriaDetail = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _dispatch = useDispatch();\n\tconst {\n\t\tregister,\n\t\tunregister,\n\t\thandleSubmit,\n\t\terrors,\n\t\tsetValue,\n\t\tgetValues,\n\t\tsetError,\n\t\tclearErrors,\n\t\ttrigger,\n\t} = useForm();\n\tconst [vipId, setVipId] = useState();\n\tconst [vipCriteriaId, setVipCriteriaId] = useState();\n\tconst [isPrivate, setIsPrivate] = useState(false);\n\tconst [isDefault, setIsDefault] = useState(false);\n\tconst [vipObtainField, setVipObtainField] = useState(0);\n\tconst [vipMaintainField, setVipMaintainField] = useState(0);\n\t/* const [depositTime, setDepositTime] = useState(0);*/\n\tconst [minStake, setMinStake] = useState(0);\n\tconst [withinDay, setWithinDay] = useState(0);\n\tconst [minMaintainStake, setMinMaintainStake] = useState(0);\n\tconst [everyDay, setEveryDay] = useState(0);\n\tconst [isDowngradable, setIsDowngradable] = useState(true);\n\tconst [vipOption, setVipOption] = useState([]);\n\tconst [downgradeId, setDowngradeId] = useState();\n\tconst [upgradeId, setUpgradeId] = useState();\n\tconst [initCheck, setInitCheck] = useState(false);\n\tconst [content, setContent] = useState(\"\");\n\tconst [casinoRebate, setCasinoRebate] = useState(0);\n\tconst [slotRebate, setSlotRebate] = useState(0);\n\tconst [sportRebate, setSportRebate] = useState(0);\n\tconst [fishRebate, setfishRebate] = useState(0);\n\tconst [lotteryRebate, setLotteryRebate] = useState(0);\n\tconst [birthdayReward, setBirthdayReward] = useState(0);\n\tconst [dailyWithdrawalLimit, setDailyWithdrawalLimit] = useState(0);\n\tconst [dailyTransactionCount, setDailyTransactionCount] = useState(0);\n\tconst [upgradeBonus, setUpgradeBonus] = useState(0);\n\n\tconst _DEFAULT_FIELD = 1;\n\tconst _DEPOSIT_FIELD = 2;\n\tconst _MIN_OBTAIN_FIELD = 3;\n\tconst _PRIVATE_FIELD = 4;\n\tconst _MIN_MAINTAIN_FIELD = 5;\n\tconst _DOWNGRADABLE_FIELD = 6;\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tregister({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n\t\tregister(\n\t\t\t{ name: \"downgradeId\" },\n\t\t\t{ required: \"PLEASE_SELECT_DOWNGRADE_TARGET\" }\n\t\t);\n\t\tregister(\n\t\t\t{ name: \"upgradeId\" },\n\t\t\t{ required: \"PLEASE_SELECT_UPGRADE_TARGET\" }\n\t\t);\n\t\t//register(\n\t\t//\t{ name: \"obtainCriteria\" },\n\t\t//\t{\n\t\t//\t\tvalidate: {\n\t\t//\t\t\tempty: (value) =>\n\t\t//\t\t\t\t!stringIsNullOrEmpty(vipObtainField) ||\n\t\t//\t\t\t\t\"PLEASE_CHOOSE_ONE_OF_BELOW\",\n\t\t//\t\t},\n\t\t//\t}\n\t\t//);\n\t\t//register(\n\t\t//\t{ name: \"maintainCriteria\" },\n\t\t//\t{\n\t\t//\t\tvalidate: {\n\t\t//\t\t\tempty: (value) =>\n\t\t//\t\t\t\t!stringIsNullOrEmpty(vipMaintainField) ||\n\t\t//\t\t\t\t\"PLEASE_CHOOSE_ONE_OF_BELOW\",\n\t\t//\t\t},\n\t\t//\t}\n\t\t//);\n\t\tregister(\n\t\t\t{ name: \"casinoRebate\" },\n\t\t\t{\n\t\t\t\tvalidate: {\n\t\t\t\t\tempty: (value) =>\n\t\t\t\t\t\t!stringIsNullOrEmpty(casinoRebate) || \"PLEASE_CHOOSE_ONE_OF_BELOW\",\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t\tregister(\n\t\t\t{ name: \"slotRebate\" },\n\t\t\t{\n\t\t\t\tvalidate: {\n\t\t\t\t\tempty: (value) =>\n\t\t\t\t\t\t!stringIsNullOrEmpty(slotRebate) || \"PLEASE_CHOOSE_ONE_OF_BELOW\",\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t\tregister(\n\t\t\t{ name: \"sportRebate\" },\n\t\t\t{\n\t\t\t\tvalidate: {\n\t\t\t\t\tempty: (value) =>\n\t\t\t\t\t\t!stringIsNullOrEmpty(sportRebate) || \"PLEASE_CHOOSE_ONE_OF_BELOW\",\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t\tregister(\n\t\t\t{ name: \"fishRebate\" },\n\t\t\t{\n\t\t\t\tvalidate: {\n\t\t\t\t\tempty: (value) =>\n\t\t\t\t\t\t!stringIsNullOrEmpty(fishRebate) || \"PLEASE_CHOOSE_ONE_OF_BELOW\",\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t\tregister(\n\t\t\t{ name: \"lotteryRebate\" },\n\t\t\t{\n\t\t\t\tvalidate: {\n\t\t\t\t\tempty: (value) =>\n\t\t\t\t\t\t!stringIsNullOrEmpty(lotteryRebate) || \"PLEASE_CHOOSE_ONE_OF_BELOW\",\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t\tregister(\n\t\t\t{ name: \"fishRebate\" },\n\t\t\t{\n\t\t\t\tvalidate: {\n\t\t\t\t\tempty: (value) =>\n\t\t\t\t\t\t!stringIsNullOrEmpty(fishRebate) || \"PLEASE_CHOOSE_ONE_OF_BELOW\",\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\t\tregister(\n\t\t\t{ name: \"lotteryRebate\" },\n\t\t\t{\n\t\t\t\tvalidate: {\n\t\t\t\t\tempty: (value) =>\n\t\t\t\t\t\t!stringIsNullOrEmpty(lotteryRebate) || \"PLEASE_CHOOSE_ONE_OF_BELOW\",\n\t\t\t\t},\n\t\t\t}\n\t\t);\n\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\t//useEffect(() => {\n\t// if (!stringIsNullOrEmpty(vipObtainField) && initCheck) {\n\t// setIsDefault(false);\n\t// setIsPrivate(false);\n\t// setValue(\"minStake\", 0);\n\t// setValue(\"depositTime\", 0);\n\t// setValue(\"withinDay\", 0);\n\t// unregister(\"obtainCriteria\");\n\t// clearErrors();\n\t// }\n\t//}, [vipObtainField]);\n\n\t///// \n\t///// Author : -\n\t///// \n\t//useEffect(() => {\n\t// if (!stringIsNullOrEmpty(vipMaintainField) && initCheck) {\n\t// setIsDowngradable(true);\n\t// unregister(\"maintainCriteria\");\n\t// setValue(\"minMaintainStake\", 0);\n\t// setValue(\"everyDay\", 0);\n\t// clearErrors();\n\t// }\n\t//}, [vipMaintainField]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tif (isDowngradable == false && initCheck) {\n\t\t\tsetDowngradeId(props.id);\n\t\t\tsetValue(\"downgradeId\", props.id);\n\t\t}\n\t}, [isDowngradable]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tif (props.id) {\n\t\t\tsetVipId(props.id);\n\t\t\tawait fetch(ApiUrl._API_GET_VIP_CRITERIA_BY_VIP_ID + \"?id=\" + props.id, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tlet criteriaData = responseJson[ApiKey._API_DATA_KEY];\n\n\t\t\t\t\t\tsetValue(\"displayBankDetails\", props.displayBank);\n\n\t\t\t\t\t\tif (!stringIsNullOrEmpty(criteriaData)) {\n\t\t\t\t\t\t\tprops.setParentCriteriaId(criteriaData.id);\n\t\t\t\t\t\t\tunregister(\"obtainCriteria\");\n\t\t\t\t\t\t\tunregister(\"maintainCriteria\");\n\n\t\t\t\t\t\t\tsetDowngradeId(criteriaData.vipModel.downgradeTargetId);\n\t\t\t\t\t\t\tsetUpgradeId(criteriaData.vipModel.upgradeTargetId);\n\n\t\t\t\t\t\t\tif (criteriaData.isDefault == true) {\n\t\t\t\t\t\t\t\tsetVipObtainField(_DEFAULT_FIELD);\n\t\t\t\t\t\t\t} else if (criteriaData.isPrivate == true) {\n\t\t\t\t\t\t\t\tsetVipObtainField(_PRIVATE_FIELD);\n\t\t\t\t\t\t\t} else if (criteriaData.depositCount > 0) {\n\t\t\t\t\t\t\t\tsetVipObtainField(_DEPOSIT_FIELD);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tsetVipObtainField(_MIN_OBTAIN_FIELD);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (criteriaData.isDowngrable == false) {\n\t\t\t\t\t\t\t\tsetVipMaintainField(_DOWNGRADABLE_FIELD);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tsetVipMaintainField(_MIN_MAINTAIN_FIELD);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tsetVipCriteriaId(criteriaData.id);\n\t\t\t\t\t\t\tsetIsDefault(criteriaData.isDefault);\n\t\t\t\t\t\t\t/* setDepositTime(criteriaData.depositCount);*/\n\t\t\t\t\t\t\tsetMinStake(criteriaData.obtainMinDeposit);\n\t\t\t\t\t\t\tsetWithinDay(criteriaData.obtainWithinDayCount);\n\t\t\t\t\t\t\tsetIsPrivate(criteriaData.isPrivateInvitation);\n\t\t\t\t\t\t\tsetMinMaintainStake(criteriaData.maintainDeposit);\n\t\t\t\t\t\t\tsetEveryDay(criteriaData.maintainDayCount);\n\t\t\t\t\t\t\tsetIsDowngradable(criteriaData.isDowngrable);\n\t\t\t\t\t\t\tsetContent(criteriaData.content);\n\t\t\t\t\t\t\tsetCasinoRebate(criteriaData.rebateCasino);\n\t\t\t\t\t\t\tsetSlotRebate(criteriaData.rebateSlot);\n\t\t\t\t\t\t\tsetSportRebate(criteriaData.sportRebate);\n\t\t\t\t\t\t\tsetfishRebate(criteriaData.fishRebate);\n\t\t\t\t\t\t\tsetLotteryRebate(criteriaData.lotteryRebate);\n\t\t\t\t\t\t\tsetBirthdayReward(criteriaData.birthdayBonus);\n\t\t\t\t\t\t\tsetIsPrivate(criteriaData.isPrivateInvitation);\n\t\t\t\t\t\t\tsetDailyWithdrawalLimit(criteriaData.maxWithdrawalAmount);\n\t\t\t\t\t\t\tsetDailyTransactionCount(criteriaData.maxWithdrawalCount);\n\t\t\t\t\t\t\tsetUpgradeBonus(criteriaData.upgradeBonus);\n\t\t\t\t\t\t\t/* setValue(\"depositTime\", criteriaData.depositCount);*/\n\t\t\t\t\t\t\tsetValue(\"minStake\", criteriaData.obtainMinDeposit);\n\t\t\t\t\t\t\tsetValue(\"withinDay\", criteriaData.obtainWithinDayCount);\n\t\t\t\t\t\t\tsetValue(\"minMaintainStake\", criteriaData.maintainDeposit);\n\t\t\t\t\t\t\tsetValue(\"everyDay\", criteriaData.maintainDayCount);\n\t\t\t\t\t\t\tsetValue(\"downgradeId\", criteriaData.vipModel.downgradeTargetId);\n\t\t\t\t\t\t\tsetValue(\"isPrivate\", criteriaData.isPrivateInvitation);\n\t\t\t\t\t\t\tsetValue(\"upgradeId\", criteriaData.vipModel.upgradeTargetId);\n\t\t\t\t\t\t\tsetValue(\"casinoRebate\", criteriaData.rebateCasino);\n\t\t\t\t\t\t\tsetValue(\"slotRebate\", criteriaData.rebateSlot);\n\t\t\t\t\t\t\tsetValue(\"sportRebate\", criteriaData.rebateSport);\n\t\t\t\t\t\t\tsetValue(\"fishRebate\", criteriaData.rebateFish);\n\t\t\t\t\t\t\tsetValue(\"lotteryRebate\", criteriaData.rebateLottery);\n\t\t\t\t\t\t\tsetValue(\"birthdayReward\", criteriaData.birthdayBonus);\n\t\t\t\t\t\t\tsetValue(\n\t\t\t\t\t\t\t\t\"dailyWithdrawalLimit\",\n\t\t\t\t\t\t\t\tcriteriaData.maxWithdrawalAmount\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tsetValue(\n\t\t\t\t\t\t\t\t\"dailyTransactionCount\",\n\t\t\t\t\t\t\t\tcriteriaData.maxWithdrawalCount\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tsetValue(\n\t\t\t\t\t\t\t\t\"upgradeBonus\",\n\t\t\t\t\t\t\t\tcriteriaData.upgradeBonus\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\n\t\tawait fetch(ApiUrl._API_GET_USER_VIP, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst vipList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (vipLevel) {\n\t\t\t\t\t\tvipList.push({ label: vipLevel.name, value: vipLevel.id });\n\t\t\t\t\t});\n\n\t\t\t\t\tsetVipOption(vipList);\n\t\t\t\t}\n\t\t\t});\n\t\tsetInitCheck(!initCheck);\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tlet params = {\n\t\t\tvipId: vipId,\n\t\t\tisDefault: data.isDefault != null ? data.isDefault : false,\n\t\t\t//depositCount: !stringIsNullOrEmpty(data.depositTime)\n\t\t\t// ? data.depositTime\n\t\t\t// : 0,\n\t\t\tminObtainTurnover: !stringIsNullOrEmpty(data.minStake)\n\t\t\t\t? data.minStake\n\t\t\t\t: 0,\n\t\t\tobtainWithinDayCount: !stringIsNullOrEmpty(data.withinDay)\n\t\t\t\t? data.withinDay\n\t\t\t\t: 0,\n\t\t\tisPrivateInvitation: data.isPrivate != null ? data.isPrivate : false,\n\t\t\tminMaintainTurnover: !stringIsNullOrEmpty(data.minMaintainStake)\n\t\t\t\t? data.minMaintainStake\n\t\t\t\t: 0,\n\t\t\tmaintainEveryDayCount: !stringIsNullOrEmpty(data.everyDay)\n\t\t\t\t? data.everyDay\n\t\t\t\t: 0,\n\n\t\t\tcontent: content,\n\t\t\tdisplayBankDetails: data.displayBankDetails,\n\t\t\tisPrivateInvitation: isPrivate,\n\t\t\tisDowngrable: isDowngradable,\n\t\t\trebateCasino: data.casinoRebate,\n\t\t\trebateSport: data.sportRebate,\n\t\t\trebateSlot: data.slotRebate,\n\t\t\trebateFish: data.fishRebate,\n\t\t\trebateLottery: data.lotteryRebate,\n\t\t\tbirthdayBonus: data.birthdayReward,\n\t\t\tmaxWithdrawalAmount: data.dailyWithdrawalLimit,\n\t\t\tmaxWithdrawalCount: data.dailyTransactionCount,\n\t\t\tupgradeBonus: data.upgradeBonus,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(downgradeId)) {\n\t\t\tparams[\"downgradeTargetId\"] = downgradeId;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(upgradeId)) {\n\t\t\tparams[\"upgradeTargetId\"] = upgradeId;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(vipCriteriaId)) {\n\t\t\tparams[\"id\"] = vipCriteriaId;\n\t\t}\n\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_VIP_CRITERIA, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetVipCriteriaId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\tprops.setParentCriteriaId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t{t(\"OBTAIN_CRITERIA\")} ({t(\"PLEASE_CHOOSE_ONE_OF_BELOW\")})\n\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{/*{errors.obtainCriteria && (*/}\n\t\t\t\t\t\t\t\t\t{/*\t
    */}\n\t\t\t\t\t\t\t\t\t{/*\t\t{t(errors.obtainCriteria.message)}*/}\n\t\t\t\t\t\t\t\t\t{/*\t
    */}\n\t\t\t\t\t\t\t\t\t{/*)}*/}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{vipObtainField == _DEFAULT_FIELD && (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t setIsDefault(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={isDefault}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalidate: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked: (value) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue == true || \"PLEASE_SWITCH_ON\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{/*{errors.isDefault && (*/}\n\t\t\t\t\t\t\t\t\t\t\t{/*\t
    */}\n\t\t\t\t\t\t\t\t\t\t\t{/*\t\t{t(errors.isDefault.message)}*/}\n\t\t\t\t\t\t\t\t\t\t\t{/*\t
    */}\n\t\t\t\t\t\t\t\t\t\t\t{/*)}*/}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{vipObtainField == _MIN_OBTAIN_FIELD && (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_MIN_STAKE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmoreThanZero: (value) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue > 0 ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_VALUE_MORE_THAN_ZERO_FOR_MIN_STAKE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"WITHIN\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_DAY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmoreThanZero: (value) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue > 0 ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_VALUE_MORE_THAN_ZERO_FOR_DAY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"WITHIN_DAYS\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{errors.minStake && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.minStake.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{errors.withinDay && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.withinDay.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    {t(\"MAINTAIN_CRITERIA\")}

    \n\t\t\t\t\t\t\t\t{/*
    */}\n\t\t\t\t\t\t\t\t{/*\t{errors.maintainCriteria && (*/}\n\t\t\t\t\t\t\t\t{/*\t\t
    */}\n\t\t\t\t\t\t\t\t{/*\t\t\t{t(errors.maintainCriteria.message)}*/}\n\t\t\t\t\t\t\t\t{/*\t\t
    */}\n\t\t\t\t\t\t\t\t{/*\t)}*/}\n\t\t\t\t\t\t\t\t{/*
    */}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{vipMaintainField == _MIN_MAINTAIN_FIELD && (\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_MIN_STAKE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmoreThanZero: (value) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue > 0 ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_VALUE_MORE_THAN_ZERO_FOR_MIN_STAKE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"EVERY\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_DAY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmoreThanZero: (value) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue > 0 || value == -1 ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_VALUE_MORE_THAN_ZERO_FOR_DAY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"DAYS\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n \n\t\t\t\t\t\t\t\t\t\t\t\tNote : Set \"-1\" If Membership Renewal is Lifetime\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{errors.minMaintainStake && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.minMaintainStake.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t{errors.everyDay && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.everyDay.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    {t(\"REBATE\")}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_CASINO_REBATE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.casinoRebate && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.casinoRebate.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_SPORT_REBATE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.sportRebate && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.sportRebate.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_SLOT_REBATE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.slotRebate && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.slotRebate.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_FISHING_REBATE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.fishRebate && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.fishRebate.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_LOTTERY_REBATE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.lotteryRebate && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.lotteryRebate.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    {t(\"BONUS\")}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_BIRTHDAY_REWARD\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.birthdayReward && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.birthdayReward.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_UPGRADE_BONUS\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.upgradeBonus && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.upgradeBonus.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t

    {t(\"OTHERS\")}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t option.value === downgradeId\n\t\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? vipOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value === downgradeId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={vipOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value === downgradeId\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\tisDisabled={!isDowngradable}\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetDowngradeId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"downgradeId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrigger();\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.downgradeId && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.downgradeId.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t option.value === upgradeId\n\t\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? vipOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value === upgradeId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={vipOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value === upgradeId\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetUpgradeId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"upgradeId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrigger();\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.upgradeId && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.upgradeId.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_DAILY_WITHDRAWAL_LIMIT\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.dailyWithdrawalLimit && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.dailyWithdrawalLimit.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!stringIsNullOrEmpty(value) ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"PLEASE_ENTER_AMOUNT_FOR_DAILY_TRANSACTION_COUNT\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tNote : Set \"-1\" If Daily Transaction Count is Unlimited\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{errors.dailyTransactionCount && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.dailyTransactionCount.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\teditor.setData(content);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(event, editor) => {\n\t\t\t\t\t\t\t\t\t\t\t\tconst data = editor.getData();\n\t\t\t\t\t\t\t\t\t\t\t\tsetContent(data);\n\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"content\", data);\n\t\t\t\t\t\t\t\t\t\t\t\ttrigger(\"content\");\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.content.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default VipCriteriaDetail;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n ContentTypeString,\n TransactionPriority,\n} from \"../../util/Constant\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport Dropzone from \"react-dropzone\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport VipCriteriaDetail from \"./VipCriteriaDetail.js\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport Select from \"react-select\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -, -\n/// \n\nconst VipLevelDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _CRITERIA_TAB = \"2\";\n const _CRITERIA_LANGUAGE_TAB = \"3\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors } = useForm();\n\n const [vipLevelId, setVipLevelId] = useState(\"\");\n const [name, setName] = useState(\"\");\n const [remark, setRemark] = useState(\"\");\n const [withdrawalLimit, setWithdrawalLimit] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n const [rank, setRank] = useState(\"\");\n const [imageFile, setImageFile] = useState([]);\n const [image, setImage] = useState();\n const [isNewImage, setIsNewImage] = useState(false);\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n const [vipCriteriaId, setVipCriteriaId] = useState(\"\");\n const [transactionPriority, setTransactionPriority] = useState(\n TransactionPriority._NO\n );\n const [displayBankDetail, setDisplayBankDetail] = useState();\n const [priorityOption, setPriorityOption] = useState([\n { label: t(\"NO\"), value: TransactionPriority._NO },\n { label: t(\"YES\"), value: TransactionPriority._YES },\n { label: t(\"FIRST_PRIORITY\"), value: TransactionPriority._FIRST_PRIORITY },\n ]);\n\n /// \n /// Author : -\n /// \n const logoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setImageFile(file);\n\n const reader = new FileReader();\n reader.onloadend = () => {\n setIsNewImage(true);\n setImage(reader.result);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n remark: data.remark,\n withdrawalLimit: data.withdrawalLimit,\n status: data.status,\n name: data.name,\n rank: data.rank,\n isNewImage: isNewImage,\n transactionPriority: transactionPriority,\n };\n\n if (!stringIsNullOrEmpty(vipLevelId)) {\n params[\"id\"] = vipLevelId;\n } else {\n params[\"displayBankDetails\"] = true;\n }\n\n if (!stringIsNullOrEmpty(imageFile)) {\n params[\"imageFile\"] = imageFile;\n }\n\n if (stringIsNullOrEmpty(image)) {\n params[\"imageRemoved\"] = true;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_VIP, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVipLevelId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_VIP_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVipLevelId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setName(responseJson[ApiKey._API_DATA_KEY][\"name\"]);\n setRemark(responseJson[ApiKey._API_DATA_KEY][\"remark\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setRank(responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setWithdrawalLimit(responseJson[ApiKey._API_DATA_KEY][\"withdrawalLimit\"]);\n setTransactionPriority(\n responseJson[ApiKey._API_DATA_KEY][\"transactionPriority\"]\n );\n setDisplayBankDetail(\n responseJson[ApiKey._API_DATA_KEY][\"displayBankDetails\"]\n );\n if (\n !stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"icon\"])\n ) {\n setImage(responseJson[ApiKey._API_DATA_KEY][\"icon\"]);\n }\n }\n });\n }\n }, []);\n\n return (\n
    \n

    \n {name ? t(\"EDIT_VIP_LEVEL\") : t(\"ADD_VIP_LEVEL\")}\n \n

    \n {vipLevelId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.name && (\n
    \n {t(errors.name.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.remark && (\n
    \n {t(errors.remark.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.rank && (\n
    \n {t(errors.rank.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(image) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setImage(\"\");\n setImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n option.value === transactionPriority\n )[0] !== undefined\n ? priorityOption.filter(\n (option) =>\n option.value === transactionPriority\n )[0].label\n : \"\"\n }\n value={priorityOption.filter(\n (option) => option.value === transactionPriority\n )}\n onChange={(e) => {\n setTransactionPriority(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.remark && (\n
    \n {t(errors.withdrawalLimit.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n \n {vipLevelId && displayBankDetail !== undefined && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n {vipCriteriaId && (\n \n
    \n
    \n \n
    \n
    \n
    \n )}\n \n \n );\n};\n\nexport default VipLevelDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageRemark = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [remarkData, setRemarkData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"REMARK\",\n accessor: \"description\",\n disableSortBy: true,\n },\n {\n Header: \"Type\",\n accessor: \"typeId\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"REMARK_STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._REMARK_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_REMARK,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_REMARK + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setRemarkData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"REMARK\")}\n {checkIfPermissionExist(\n AccessRight._REMARK_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageRemark;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { Controller, useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Select from \"react-select\";\n\n/// \n/// Author : -\n/// \n\nconst RemarkDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const [description, setDescription] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [remarkId, setRemarkId] = useState(\"\");\n\n const { register, setValue, handleSubmit, errors, control } = useForm();\n\n const [remarkTypeOptions, setRemarkTypeOptions] = useState([])\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n description: data.description,\n status: data.status,\n remarkTypeId: data.type\n };\n\n if (!stringIsNullOrEmpty(remarkId)) {\n params[\"id\"] = remarkId;\n }\n\n let formBody = createFormBody(params);\n\n console.log(params)\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_REMARK, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setRemarkId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_REMARK_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setRemarkId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setDescription(responseJson[ApiKey._API_DATA_KEY][\"description\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setValue(\"type\", responseJson[ApiKey._API_DATA_KEY][\"remarkTypeId\"]);\n }\n });\n }\n getRemarkType()\n }, []);\n\n const getRemarkType = async ()=>{\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_REMARK_TYPE}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const remarkTypeOptions= responseJson[ApiKey._API_DATA_KEY].map((value,index) => {\n return {\n label: value.name,\n\t\t\t value: value.id,\n }\n })\n\n setRemarkTypeOptions(remarkTypeOptions)\n\n }\n\n \n }\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(remarkId) ? t(\"EDIT_REMARK\") : t(\"ADD_REMARK\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.description && (\n
    \n {t(errors.description.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n (\n option.value == value\n )}\n onChange={(e) => {\n onChange(e.value);\n }}\n />\n )}\n rules={{ required: \"PLEASE_SELECT_STATUS\" }}\n />\n {errors.status && (\n
    \n {t(errors.status.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default RemarkDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageTag = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [tagData, setTagData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"REMARK\",\n accessor: \"description\",\n },\n {\n Header: \"COLOR\",\n accessor: \"colorCode\",\n Cell: ({ row }) => (\n \n ),\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._TAG_SETTING_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_TAG,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_TAG + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setTagData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"TAG\")}\n {checkIfPermissionExist(AccessRight._TAG_SETTING_PERMISSION, true) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageTag;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport { SketchPicker } from \"react-color\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { Dropdown, DropdownMenu, DropdownToggle } from \"reactstrap\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst TagDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const { register, handleSubmit, errors } = useForm();\n const [name, setName] = useState(\"\");\n const [description, setDescription] = useState(\"\");\n const [color, setColor] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [tagId, setTagId] = useState(\"\");\n const [sketchBackgroundColor, setSketchBackgroundColor] = useState(color);\n const [dropdownOpen, setDropdownOpen] = useState(false);\n\n const handleSketchChangeComplete = (color) => {\n setColor(color.hex);\n };\n\n const toggle = () => setDropdownOpen((prevState) => !prevState);\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n description: data.description,\n status: data.status,\n name: data.name,\n colorCode: data.code,\n };\n\n if (!stringIsNullOrEmpty(tagId)) {\n params[\"id\"] = tagId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_TAG, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setTagId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_USER_TAG_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setName(responseJson[ApiKey._API_DATA_KEY][\"name\"]);\n setDescription(responseJson[ApiKey._API_DATA_KEY][\"description\"]);\n setColor(responseJson[ApiKey._API_DATA_KEY][\"colorCode\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setTagId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n }\n }, []);\n\n return (\n
    \n

    \n {name ? t(\"EDIT_TAG\") : t(\"ADD_TAG\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.name && (\n
    \n {t(errors.name.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.description && (\n
    \n {t(errors.description.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n \n \n \n \n \n \n {errors.code && (\n
    \n {t(errors.code.message)}\n
    \n )}\n
    \n \n \n \n
    \n
    \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default TagDetail;\n","import React from \"react\";\nimport ReactTable from \"../../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel } from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../../util/Util\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBankPackage = (props) => {\n let _history = useHistory();\n let _data = [];\n let _tableColumns = [\n {\n Header: \"Name\",\n accessor: \"name\",\n style: {\n whiteSpace: \"unset\",\n wordBreak: \"break-word\",\n },\n width: 150,\n },\n {\n Header: \"Status\",\n accessor: \"status\",\n width: 150,\n },\n {\n id: \"empty1\",\n Header: \"\",\n accessor: \"\",\n },\n {\n id: \"empty2\",\n Header: \"\",\n accessor: \"\",\n },\n {\n Header: \"Last Updated By\",\n accessor: \"last_updated_by\",\n width: 100,\n },\n {\n Header: \"Last Updated Date\",\n accessor: \"last_updated_at\",\n width: 100,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n navigateTo(_history, \"/configure/createOrEditBankPackage\");\n }}\n >\n Edit\n \n \n Delete\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n return (\n
    \n

    \n Bank Packages\n \n

    \n \n \n \n
    \n );\n};\n\nexport default ManageBankPackage;\n","import React, { useState } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\n\n/// \n/// Author : -\n/// \n\nconst BankPackageDetail = (props) => {\n let history = useHistory();\n let vipLevelOptions = [\n { value: \"vip0\", label: \"VIP 0\" },\n { value: \"vip1\", label: \"VIP 1\" },\n { value: \"vip2\", label: \"VIP 2\" },\n ];\n const [name, setName] = useState(\n props.location.state !== undefined ? props.location.state.name : \"\"\n );\n return (\n
    \n

    \n {name ? \"Edit Bank Package\" : \"Add Bank Package\"}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(BankPackageDetail);\n","import React, { useState } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBetSetting = (props) => {\n let history = useHistory();\n const [vipLevel, setVipLevel] = useState(\"vip0\");\n const [game, setGame] = useState(\"allBet\");\n const [search, setSearch] = useState(false);\n\n const vipLevelOptions = [\n { value: \"vip0\", label: \"VIP 0\" },\n { value: \"vip1\", label: \"VIP 1\" },\n { value: \"vip2\", label: \"VIP 2\" },\n ];\n const gameOptions = [\n { value: \"allBet\", label: \"[LIVECASINO] AllBet\" },\n { value: \"playTech\", label: \"[LIVECASINO] PlayTech\" },\n { value: \"sSport\", label: \"[SPORT] S-Sport\" },\n { value: \"iSport\", label: \"[SPORT] I-Sport\" },\n { value: \"sexyBaccarat\", label: \"[LIVECASINO] Sexy Baccarat\" },\n { value: \"agGaming\", label: \"[LIVECASINO] AG Gaming\" },\n { value: \"dreamGamingAsiawin\", label: \"[LIVECASINO] Dream Gaming Asiawin\" },\n ];\n\n const vipChangeHandler = (e) => {\n try {\n setVipLevel(e.value);\n } catch (ex) {\n console.log(ex.message);\n }\n };\n\n const gameChangeHandler = (e) => {\n try {\n setGame(e.value);\n } catch (ex) {\n console.log(ex.message);\n }\n };\n\n return (\n
    \n

    Default Bet Setting

    \n \n \n
    \n
    \n option.value === vipLevel\n )}\n onChange={vipChangeHandler}\n />\n
    \n
    \n option.value === game)}\n onChange={gameChangeHandler}\n options={gameOptions}\n />\n
    \n
    \n setSearch(true)}\n >\n Search\n \n
    \n
    \n
    \n {search && (\n <>\n
    \n
    \n Ordinary Handicaps\n

    Please select minimum of 1 and maximum of 2 limit.

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    NameMinimum BetMaximum Bet
    \n
    \n \n \n
    \n
    A2010,000
    \n
    \n \n \n
    \n
    B505,000
    \n
    \n \n \n
    \n
    C10010,000
    \n
    \n \n \n
    \n
    D20020,000
    \n
    \n \n \n
    \n
    E30030,000
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n )}\n
    \n
    \n
    \n );\n};\n\nexport default ManageBetSetting;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport { ApiUrl, ApiKey, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageContactUs = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [contactUsData, setContactUsData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"IMAGE\",\n accessor: \"image\",\n Cell: ({ row }) => (\n
    \n {!stringIsNullOrEmpty(row.original.image) ? (\n \n ) : (\n - \n )}\n
    \n ),\n disableSortBy: true,\n },\n {\n Header: \"TEXT\",\n accessor: \"text\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_CONTACT_US,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_COMPANY_CONTACT_US + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setContactUsData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"CONTACT_US\")}\n \n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageContactUs;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport Dropzone from \"react-dropzone\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ContactUsDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors, setValue } = useForm();\n const [contactUsId, setContactUsId] = useState(\"\");\n\n const [text, setText] = useState(\"\");\n const [imageFile, setImageFile] = useState([]);\n const [image, setImage] = useState();\n const [isNewImage, setIsNewImage] = useState(false);\n const [status, setStatus] = useState(true);\n\n /// \n /// Author : -\n /// \n const logoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setImageFile(file);\n\n const reader = new FileReader();\n reader.onloadend = () => {\n setIsNewImage(true);\n setImage(reader.result);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_COMPANY_CONTACT_US_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setContactUsId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setText(responseJson[ApiKey._API_DATA_KEY][\"text\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\n if (\n !stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"image\"])\n ) {\n setImage(responseJson[ApiKey._API_DATA_KEY][\"image\"]);\n }\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n text: data.text,\n status: data.status,\n isNewImage: isNewImage,\n };\n\n if (!stringIsNullOrEmpty(contactUsId)) {\n params[\"id\"] = contactUsId;\n }\n\n if (!stringIsNullOrEmpty(imageFile)) {\n params[\"imageFile\"] = imageFile;\n }\n\n if (stringIsNullOrEmpty(image)) {\n params[\"imageRemoved\"] = true;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_COMPANY_CONTACT_US, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setContactUsId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n return (\n
    \n

    \n {contactUsId ? t(\"EDIT_CONTACT_US\") : t(\"ADD_CONTACT_US\")}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n logoDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(image) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setImage(\"\");\n setImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n );\n};\n\nexport default ContactUsDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n WebUrl,\n ApiKey,\n ApiUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageVipBenefit = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [vipBenefitData, setVipBenefitData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"title\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._VIP_SETTING_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_VIP_BENEFIT,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_VIP_BENEFIT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVipBenefitData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_VIP_BENEFIT_TITLE\")}\n {checkIfPermissionExist(AccessRight._VIP_SETTING_PERMISSION, true) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageVipBenefit;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n ContentTypeString,\n} from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst VipBenefitDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const { register, unregister, handleSubmit, errors, setError } = useForm();\n\n const [vipBenefitId, setVipBenefitId] = useState(\"\");\n const [title, setTitle] = useState(\"\");\n const [status, setStatus] = useState(true);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_VIP_BENEFIT_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVipBenefitId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n title: data.title,\n status: data.status,\n };\n\n if (!stringIsNullOrEmpty(vipBenefitId)) {\n params[\"id\"] = vipBenefitId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_VIP_BENEFIT, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVipBenefitId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n });\n };\n\n return (\n
    \n

    \n {vipBenefitId\n ? t(\"EDIT_VIP_BENEFIT_TITLE\")\n : t(\"ADD_VIP_BENEFIT_TITLE\")}\n \n

    \n {vipBenefitId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.title.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {vipBenefitId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n
    \n
    \n );\n};\n\nexport default withRouter(VipBenefitDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n WebUrl,\n ApiKey,\n ApiUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageVipBenefitContent = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [vipBenefitContents, setVipBenefitContents] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"VIP\",\n accessor: \"vipName\",\n disableSortBy: true,\n },\n {\n Header: \"TITLE\",\n accessor: \"vipBenefitTitle\",\n disableSortBy: true,\n },\n {\n Header: \"CONTENT\",\n accessor: \"content\",\n disableSortBy: true,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._VIP_SETTING_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_VIP_BENEFIT_CONTENT,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_VIP_BENEFIT_CONTENT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVipBenefitContents(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_VIP_BENEFIT_CONTENT\")}\n {checkIfPermissionExist(AccessRight._VIP_SETTING_PERMISSION, true) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageVipBenefitContent;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n ContentTypeString,\n} from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst VipBenefitContentDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const { register, unregister, handleSubmit, errors, setError } = useForm();\n\n const [benefitContentId, setBenefitContentId] = useState(\"\");\n const [content, setContent] = useState(\"\");\n const [vip, setVip] = useState(\"\");\n const [vipOption, setVipOption] = useState([]);\n const [vipBenefitId, setVipBenefitId] = useState(\"\");\n const [vipBenefitOption, setVipBenefitOption] = useState([]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n register({ name: \"vipBenefit\" }, { required: \"PLEASE_SELECT_TITLE\" });\n register({ name: \"vip\" }, { required: \"PLEASE_SELECT_VIP_LEVEL\" });\n init();\n }, []);\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_VIP_BENEFIT_CONTENT_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBenefitContentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setVipBenefitId(responseJson[ApiKey._API_DATA_KEY][\"vipBenefitId\"]);\n setVip(responseJson[ApiKey._API_DATA_KEY][\"vipId\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n unregister([\"vip\", \"vipBenefit\"]);\n }\n });\n }\n\n await fetch(ApiUrl._API_GET_USER_VIP, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const vipList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (vipLevel) {\n vipList.push({ label: vipLevel.name, value: vipLevel.id });\n });\n\n setVipOption(vipList);\n }\n });\n\n await fetch(ApiUrl._API_GET_VIP_BENEFIT, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const vipBenefitList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (benefit) {\n vipBenefitList.push({ label: benefit.title, value: benefit.id });\n });\n\n setVipBenefitOption(vipBenefitList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n content: data.content,\n vipId: vip,\n vipBenefitId: vipBenefitId,\n };\n\n if (!stringIsNullOrEmpty(benefitContentId)) {\n params[\"id\"] = benefitContentId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_VIP_BENEFIT_CONTENT, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBenefitContentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n });\n };\n\n return (\n
    \n

    \n {benefitContentId\n ? t(\"EDIT_VIP_BENEFIT_CONTENT\")\n : t(\"ADD_VIP_BENEFIT_CONTENT\")}\n \n

    \n {benefitContentId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n option.value == vip\n )[0] !== undefined\n ? vipOption.filter(\n (option) => option.value == vip\n )[0].label\n : \"\"\n }\n value={vipOption.filter(\n (option) => option.value == vip\n )}\n onChange={(e) => {\n unregister(\"vip\");\n setVip(e.value);\n }}\n />\n {errors.vip && (\n
    \n {t(errors.vip.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == vipBenefitId\n )[0] !== undefined\n ? vipBenefitOption.filter(\n (option) => option.value == vipBenefitId\n )[0].label\n : \"\"\n }\n value={vipBenefitOption.filter(\n (option) => option.value == vipBenefitId\n )}\n onChange={(e) => {\n unregister(\"vipBenefit\");\n setVipBenefitId(e.value);\n }}\n />\n {errors.vipBenefit && (\n
    \n {t(errors.vipBenefit.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.content && (\n
    \n {t(errors.content.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {benefitContentId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n
    \n
    \n );\n};\n\nexport default withRouter(VipBenefitContentDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageCommunication = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [bankData, setBankData] = useState([]);\n let _tableColumns = [\n {\n Header: \"CHANNEL_NAME\",\n accessor: \"channelName\",\n },\n {\n Header: \"URL_LINK\",\n accessor: \"cta\",\n width: 200,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return (\n \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n \n );\n },\n minWidth: 100,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._BANK_SETTING_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_COMMUNICATION,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_COMMUNICATION_CHANNELS + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBankData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"COMMUNICATION_CHANNELS\")}\n {checkIfPermissionExist(\n AccessRight._MANAGE_COMMUNICATION_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageCommunication;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport Dropzone from \"react-dropzone\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\n\n/// \n/// Author : -\n/// \nconst EditCommunicationChannel = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const { register, handleSubmit, errors } = useForm();\n const _dispatch = useDispatch();\n\n const [channelName, setChannelName] = useState(\"\");\n const [channelDescription, setChannelDescription] = useState(\"\");\n const [remark, setRemark] = useState(\"\");\n const [cTA, setCTA] = useState(\"\");\n const [isLiveChat, setIsLiveChat] = useState(\"\");\n const [status, setStatus] = useState(\"\");\n const [logoImage, setLogoImage] = useState(null);\n const [logoFile, setLogoFile] = useState(null);\n const [isNewImage, setIsNewImage] = useState(false);\n const [channelId, setChannelId] = useState(\"\");\n const [languages, setLanguages] = useState([]);\n const [channelLanguages, setChannelLanguages] = useState([]);\n const [attachmentFile, setAttachmentFile] = useState();\n const [attachmentImage, setAttachmentImage] = useState();\n const [isNewAttachment, setIsNewAttachment] = useState(false);\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n channelName: data.channelName,\n channelDescription: data.channelName,\n // remark: data.remark,\n cTA: data.cTA,\n // isLiveChat: data.isLiveChat,\n status: data.status,\n isNewImage: isNewImage,\n };\n\n // For attachment\n /* if (!stringIsNullOrEmpty(attachmentFile) && isNewAttachment) {\n params[\"attachmentFile\"] = attachmentFile;\n } else if (stringIsNullOrEmpty(attachmentImage)) {\n params[\"attachmentFile\"] = \"\";\n } */\n\n if (!stringIsNullOrEmpty(logoFile)) {\n params[\"imageFile\"] = logoFile;\n }\n\n if (stringIsNullOrEmpty(logoImage)) {\n params[\"imageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(channelId)) {\n params[\"id\"] = channelId;\n }\n\n params[\"descLocalization\"] = JSON.stringify(data.descriptionLocalization);\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_COMMUNICATION_CHANNEL, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIsNewImage(false);\n setIsNewAttachment(false);\n setChannelId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n });\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const init = async () => {\n try {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_COMMUNICATION_CHANNEL_DETAIL;\n apiUrl += \"?id=\" + _location.state.id;\n\n let channelDetailResponse = await ApiEngine.get(apiUrl);\n\n if (channelDetailResponse[ApiKey._API_SUCCESS_KEY]) {\n let data = channelDetailResponse[ApiKey._API_DATA_KEY];\n setChannelId(data[\"id\"]);\n setChannelName(data[\"channelName\"]);\n setChannelDescription(data[\"channelDescription\"]);\n setRemark(data[\"rmark\"]);\n setCTA(data[\"cta\"]);\n setIsLiveChat(data[\"isLiveChat\"]);\n setStatus(data[\"status\"]);\n setChannelLanguages(data[\"channelLanguageModels\"]);\n if (!stringIsNullOrEmpty(data[\"channelImage\"])) {\n setLogoImage(data[\"channelImage\"]);\n }\n if (!stringIsNullOrEmpty(data[\"attachment\"])) {\n setAttachmentImage(data[\"attachment\"]);\n }\n } else {\n throw t(channelDetailResponse[ApiKey._API_MESSAGE_KEY]);\n }\n }\n\n let languageJson = await ApiEngine.get(\n ApiUrl._API_GET_PREFERENCE_LANGUAGE\n );\n\n if (languageJson[ApiKey._API_SUCCESS_KEY]) {\n setLanguages(languageJson[ApiKey._API_DATA_KEY]);\n } else {\n throw t(languageJson[ApiKey._API_MESSAGE_KEY]);\n }\n } catch (err) {\n _dispatch(showMessage(false, err));\n }\n };\n\n /// \n /// Author : -\n /// Used to set logo\n /// \n const logoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setLogoFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setLogoImage(reader.result);\n setIsNewImage(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// \n const attachmentDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setAttachmentFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setAttachmentImage(reader.result);\n };\n reader.readAsDataURL(file);\n setIsNewAttachment(true);\n }\n };\n\n return (\n
    \n

    \n {(_location.state) ? t(\"EDIT_COMMUNICATION_CHANNEL\") : t(\"NEW_COMMUNICATION_CHANNEL\")}\n {\n _history.goBack();\n }}\n >\n \n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.channelName && (\n
    \n {t(errors.channelName.message)}\n
    \n )}\n
    \n
    \n {/*
    */}\n {/* */}\n {/*
    */}\n {/* */}\n {/* {errors.channelDescription && (*/}\n {/*
    */}\n {/* {t(errors.channelDescription.message)}*/}\n {/*
    */}\n {/* )}*/}\n {/*
    */}\n {/*
    */}\n {/*
    \n \n
    \n \n
    \n
    */}\n
    \n \n
    \n \n
    \n
    \n {/*
    \n \n
    \n
    \n \n setIsLiveChat(e.target.checked)\n }\n value={true}\n checked={isLiveChat}\n ref={register}\n />\n \n
    \n
    \n
    */}\n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\"SELECT_OR_DRAG_AND_DROP_FILE\")}\n

    \n {!stringIsNullOrEmpty(logoImage) && (\n \n )}\n
    \n \n )}\n \n
    \n
    \n {\n setLogoImage(\"\");\n setLogoFile();\n }}\n >\n {t(\"REMOVE_LOGO\")}\n \n
    \n
    \n\n {/*
    \n \n
    \n \n attachmentDrop(acceptedFiles)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\"SELECT_OR_DRAG_AND_DROP_FILE\")}\n

    \n {!stringIsNullOrEmpty(attachmentImage) && (\n \n )}\n
    \n \n )}\n \n
    \n
    \n {\n setAttachmentImage(\"\");\n setAttachmentFile();\n }}\n >\n {t(\"REMOVE\")}\n \n
    \n
    */}\n
    \n
    \n
    \n
    \n
    \n {languages.map((lang) => {\n return (\n
    \n \n
    \n l.languageId == lang.id\n )?.content\n }\n ref={register()}\n placeholder={t(\n \"PLEASE_ENTER_CHANNEL_DESCRIPTION\"\n )}\n />\n {errors.channelDescription && (\n
    \n {t(errors.channelDescription.message)}\n
    \n )}\n
    \n
    \n );\n })}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n \n \n );\n};\n\nexport default withRouter(EditCommunicationChannel);\n","import React, { useEffect, useState } from \"react\";\nimport { ApiUrl, ApiKey, LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Modal, ModalBody, ModalHeader } from \"reactstrap\";\nimport { createFormBody } from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage } from \"../../redux/AppAction\";\n\n/// \n/// Author : Wong\n/// \nconst ManageSystemSetting = () => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const { register, handleSubmit, errors, setValue } = useForm();\n const _dispatch = useDispatch();\n\n const [systemSetting, setSystemSetting] = useState([]);\n const [selectedSetting, setSelectedSetting] = useState();\n\n const _COLUMNS = [\n {\n Header: \"KEY\",\n accessor: \"key\",\n disableSortBy: true,\n },\n {\n Header: \"VALUE\",\n accessor: \"value\",\n disableSortBy: true,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n setSelectedSetting(row.original)}\n >\n {t(\"EDIT\")}\n \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : Wong\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : Wong\n /// \n const init = async () => {\n await ApiEngine.get(ApiUrl._API_GET_SYSTEM_SETTINGS).then((response) => {\n if (response[ApiKey._API_SUCCESS_KEY]) {\n setSystemSetting(response[ApiKey._API_DATA_KEY]);\n }\n });\n };\n\n /// \n /// Author : Wong\n /// \n const submitForm = async (data) => {\n await ApiEngine.post(\n ApiUrl._API_UPDATE_SYSTEM_SETTING,\n createFormBody({ value: data.settingValue, id: selectedSetting.id })\n ).then((response) => {\n _dispatch(\n showMessage(\n response[ApiKey._API_SUCCESS_KEY],\n t(response[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (response[ApiKey._API_SUCCESS_KEY]) {\n setSelectedSetting(null);\n init();\n }\n });\n };\n\n return (\n <>\n
    \n

    {t(\"MANAGE_SYSTEM_SETTING\")}

    \n \n \n \n \n \n
    \n \n {t(\"EDIT\")}\n \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n \n
    \n \n {errors.settingValue && (\n
    \n {t(errors.settingValue.message)}\n
    \n )}\n
    \n
    \n setSelectedSetting(null)}\n >\n {t(\"CANCEL\")}\n \n \n \n
    \n
    \n \n );\n};\n\nexport default ManageSystemSetting;\n","import React from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { createFormBody } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageRecurringJob = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n\n const StartRecurringJob = (jobName) => {\n _dispatch(setBusy);\n let apiUrl = ApiUrl._API_EXECUTE_RECURRING_JOB;\n let params = {\n \"jobName\": jobName\n };\n let formBody = createFormBody(params);\n fetch(apiUrl, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(\"OPERATION_SUCCESS\")\n )\n )\n }\n });\n _dispatch(setIdle);\n }\n return (\n
    \n

    \n {t(\"RECURRING_JOBS\")}\n

    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {t(\"JOB_TITLE\")}
    CheckTransactionQueue
    CheckPendingTransaction
    VipProcessing
    GetJackpotWinner
    CronJobGetWinLossReport
    Process568ProductGameRecord
    Process568SportsProductGameRecord
    ProcessPTCProductGameRecord
    ProcessPragmaticPlayGameRecord
    M8Settlement
    M8TicketTranslate
    ProcessM8ProductGameRecord
    ProcessJClub777ProductGameRecord
    Process93ConnectProductGameRecord
    ProcessJJProductGameRecord
    ProcessCTProductGameRecord
    ProcessMega888ProductGameRecord
    ProcessDGProductGameRecord
    ProcessXEProductGameRecord
    ProcessLionKingProductGameRecord
    ProcessAdvantPlayProductGameRecord
    ProcessAllBetProductGameRecord
    ProcessVPowerProductGameRecord
    ProcessTFGamingProductGameRecord
    ProcessAce333ProductGameRecord
    ProcessMarioClubGameRecord
    Process918KissGameRecord
    ProcessPussy888KissGameRecord
    ProcessBooongoGameRecord
    ProcessAllBetProductGameRecord
    ProcessTFGamingProductGameRecord
    ProcessAce333ProductGameRecord
    ReSettle568ProductGameRecord
    Reward Schedule Check
    Reward Daily Process
    GetGameBetsHistory
    ConvertGameBetsHistory
    GenerateCommission
    UpdateRedis
    ProcessAWCGameRecordSummary
    GenerateRandomTransaction
    \n
    \n
    \n
    \n );\n};\n\nexport default ManageRecurringJob;\n","import React from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { createFormBody } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n LanguageKey,\n} from \"../../util/Constant\";\nimport {setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageManualJob = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n\n const StartManualJob = (jobName) => {\n _dispatch(setBusy);\n let apiUrl = ApiUrl._API_EXECUTE_MANUAL_JOB;\n let params = {\n \"jobName\": jobName\n };\n let formBody = createFormBody(params);\n fetch(apiUrl, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(\"OPERATION_SUCCESS\")\n )\n )\n }\n });\n _dispatch(setIdle);\n }\n return (\n
    \n

    \n {t(\"MANUAL_JOBS\")}\n

    \n \n \n \n \n \n \n \n \n \n
    {t(\"JOB_TITLE\")}
    ManualResettle568ProductGameRecord
    \n
    \n
    \n
    \n );\n};\n\nexport default ManageManualJob;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { useHistory } from \"react-router-dom\";\nimport { useLocation } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\n\nconst WebContent = (props) => {\n const _DETAIL_TAB = \"1\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n let _history = useHistory();\n const _location = useLocation();\n const { register, handleSubmit, errors } = useForm();\n const [name, setName] = useState(\"\");\n const [content, setContent] = useState(\"\");\n const [settingId, setSettingId] = useState(\"\");\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n useEffect(() => {\n init();\n }, []);\n\n\n async function init() {\n if (_location.state) {\n let stateWebContentId = _location.state.id;\n var apiUrl = ApiUrl._API_GET_USER_WEB_CONTENT_SETTING_BY_ID;\n apiUrl += \"?id=\" + stateWebContentId;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (_location.state.id) {\n setSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n \n } {\n setName(responseJson[ApiKey._API_DATA_KEY][\"name\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n }\n \n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n Name: data.name,\n Content: data.content,\n };\n if (!stringIsNullOrEmpty(settingId)) {\n params[\"id\"] = settingId;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_USER_WEB_CONTENTS, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n\n }\n });\n };\n\n return (\n
    \n

    \n {settingId ? t(\"EDIT_WEB_CONTENT\") : t(\"ADD_WEB_CONTENT\")}\n \n

    \n {settingId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.name.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {/**/}\n {errors.title && (\n
    \n {t(errors.content.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default WebContent;\n","import React, { useEffect, useState } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n WebUrl,\n ApiUrl,\n ApiKey,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\nconst ManageWebContent = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [webContentData, setWebContentData] = useState([]);\n /// \n /// Author : -\n /// \n\n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_WEB_CONTENT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setWebContentData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"CONTENT\",\n accessor: \"content\",\n disableSortBy: true,\n \n }, \n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._WEB_CONTENT_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_WEB_CONTENT,\n row.original\n\n \n );\n }}\n >\n {t(\"EDIT\")}\n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_WEB_CONTENT,\n row.original\n );\n }}\n >\n {t(\"CLONE\")} \n \n \n \n
    \n ),\n disableSortBy: true,\n\n disableFilters: true,\n width: 100,\n\n style: { overflow: \"visible\" },\n },\n ];\n\nuseEffect(() => {\n fetch(ApiUrl._API_GET_USER_WEB_CONTENT + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setWebContentData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n}, []);\n\n return (\n
    \n

    \n {t(\"WEB_CONTENTS\")}\n {checkIfPermissionExist(\n AccessRight._WEB_CONTENT_SETTING_PERMISSION,\n true\n ) && (\n \n )} \n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageWebContent;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n AllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { useDispatch } from \"react-redux\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\n\n\n/// \n/// Author : -\n/// \n\nconst ManagePromotion = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const [promotionData, setPromotionData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"VIP\",\n accessor: \"vipId\",\n Cell: ({ row }) => {\n if (stringIsNullOrEmpty(row.original.vipId)) {\n return <>{AllVipOption._LABEL};\n } else {\n return <>{row.original.vipModel.name};\n }\n },\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == true ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n Header: \"DATE\",\n accessor: \"startDate\",\n Cell: ({ row }) => {\n return <>{row.original.startDate} - {row.original.endDate};\n },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._DEPOSIT_PROMOTION_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_DEPOSIT_PROMOTION,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n {\n cloneDepositPromotion(row.original.id)\n }}\n >\n {t(\"CLONE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n getDepositPromotion();\n }, []);\n\n\n async function getDepositPromotion() {\n fetch(ApiUrl._API_GET_DEPOSIT_PROMOTION + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setPromotionData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n async function cloneDepositPromotion(id) {\n _dispatch(setBusy());\n var apiUrl = ApiUrl._API_CLONE_DEPOSIT_PROMOTION;\n apiUrl += \"?id=\" + id;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n getDepositPromotion()\n } else {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n })\n }\n\n return (\n
    \n

    \n {t(\"PROMOTIONS\")}\n {checkIfPermissionExist(\n AccessRight._DEPOSIT_PROMOTION_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManagePromotion;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport {\n\tPanel,\n\tPanelHeader,\n\tPanelBody,\n} from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\tContentTypeString,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport {\n\tModal,\n\tModalHeader,\n\tModalBody,\n\tModalFooter,\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tTabContent,\n\tTabPane,\n\tNav,\n\tNavItem,\n\tNavLink,\n} from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\n/// \n/// Author : -\n/// \n\nconst DepositPromotionDetail = (props) => {\n\tconst _DETAIL_TAB = \"1\";\n\tconst _LANGUAGE_TAB = \"2\";\n\tlet _history = useHistory();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\tconst { register, unregister, handleSubmit, errors, setValue } = useForm();\n\n\tconst [title, setTitle] = useState(\"\");\n\tconst [content, setContent] = useState(\"\");\n\tconst [url, setUrl] = useState(\"\");\n\tconst [promotionId, setPromotionId] = useState(\"\");\n\tconst [remark, setRemark] = useState(\"\");\n\tconst [rank, setRank] = useState(\"\");\n\tconst [status, setStatus] = useState(true);\n\tconst [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\tconst [description, setDescription] = useState(\"\");\n\tconst [bonusRate, setBonusRate] = useState(\"\");\n\tconst [rolloverRate, setRolloverRate] = useState(\"\");\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\t//const [maxUsage, setMaxUsage] = useState(\"\");\n\tconst [minDeposit, setMinDeposit] = useState(\"\");\n\tconst [bonusCap, setBonusCap] = useState(\"\");\n\tconst [redemption, setRedemption] = useState(\"\");\n\n\tconst [depositPromotionProductData, setDepositPromotionProductData] =\n\t\tuseState([]);\n\n\tconst {\n\t\tregister: accountFormRegister,\n\t\thandleSubmit: accountFormHandleSubmit,\n\t\terrors: accountFormErrors,\n\t\tunregister: accountFormUnregister,\n\t\tsetValue: accountFormSetValue,\n\t} = useForm();\n\n\tconst {\n\t\tregister: promotionFormRegister,\n\t\thandleSubmit: promotionFormHandleSubmit,\n\t\terrors: promotionFormErrors,\n\t\tunregister: promotionFormUnregister,\n\t\tsetValue: promotionFormSetValue,\n\t} = useForm();\n\n\tconst [vipList, setVipList] = useState([]);\n\n\tconst [productData, setProductData] = useState([]);\n\tconst [accountProductId, setAccountProductId] = useState(\"\");\n\tconst [accountProductStatus, setAccountProductStatus] = useState(true);\n\tconst [accountProductModel, setAccountProductModel] = useState(false);\n\tconst [accountproductName, setAccountProductName] = useState(\"\");\n\tconst [selectedMasterProductId, setSelectedMasterProductId] = useState(\"\");\n\tconst [isCreateNewAccount, setIsCreateNewAccount] = useState(true);\n\tconst [depositPromotionProductId, setDepositPromotionProductId] =\n\t\tuseState(\"\");\n\tconst [desktopImage, setDesktopImage] = useState();\n\tconst [mobileImage, setMobileImage] = useState();\n\tconst [desktopFile, setDesktopFile] = useState([]);\n\tconst [mobileFile, setMobileFile] = useState([]);\n\tconst [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n\tconst [isNewMobileImage, setIsNewMobileImage] = useState(false);\n\tconst [isBonusFixed, setIsBonusFixed] = useState(false);\n\tconst [isClaimable, setIsClaimable] = useState(false);\n\tconst [productCategoryData, setProductCategoryData] = useState([]);\n\tconst [selectedProductCategoryId, setSelectedProductCategoryId] = useState(0);\n\tconst [isMaxUsagePerDay, setIsMaxUsagePerDay] = useState(false);\n\tconst [showConfirmation, setShowConfirmation] = useState(false);\n\tconst [showRolloverConfirmation, setShowRolloverConfirmation] = useState(false);\n\tconst [minBonusWalletTarget, setMinBonusWalletTarget] = useState(\"\");\n\tconst [maxWithdraw, setMaxWithdraw] = useState(\"\");\n\tconst [isRolloverFixed, setIsRolloverFixed] = useState(false);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"Product\",\n\t\t\taccessor: \"name\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{row.original.status == true ? (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"SUSPENDED\")}\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t loadAccountProduct(row.original)}>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t deleteBankSetting(row.original.id)}>\n\t\t\t\t\t\t\t\t{t(\"DELETE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tconst [selectedViplevel, setSelectedViplevel] = useState(\"\");\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggle = (tab) => {\n\t\tif (activeTab !== tab) {\n\t\t\tsetActiveTab(tab);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tregister({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n\t\tregister({ name: \"vip\" }, { required: \"PLEASE_SELECT_VIP_LEVEL\" });\n\t\tinit();\n\t}, []);\n\n\tconst _OPTION_STYLES = {\n\t\tcontrol: (base) => ({\n\t\t\t...base,\n\t\t\t\"min-height\": \"34px\",\n\t\t\theight: \"34px\",\n\t\t}),\n\t\tvalueContainer: (base) => ({\n\t\t\t...base,\n\t\t\theight: \"34px\",\n\t\t\t\"min-height\": \"34px\",\n\t\t}),\n\t\tindicatorsContainer: (base) => ({\n\t\t\t...base,\n\t\t\theight: \"34px\",\n\t\t\t\"min-height\": \"34px\",\n\t\t}),\n\t\tinput: (base) => ({\n\t\t\theight: \"34px\",\n\t\t\t\"min-height\": \"34px\",\n\t\t}),\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tif (_location.state) {\n\t\t\tsetPromotionId(_location.state.id);\n\t\t\tvar apiUrl = ApiUrl._API_GET_DEPOSIT_PROMOTION_BY_ID;\n\t\t\tapiUrl += \"?id=\" + _location.state.id;\n\t\t\tawait fetch(apiUrl, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then(async (responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tsetPromotionId(responseJson[ApiKey._API_DATA_KEY][0][\"id\"]);\n\t\t\t\t\t\tsetContent(responseJson[ApiKey._API_DATA_KEY][0][\"content\"]);\n\t\t\t\t\t\tsetTitle(responseJson[ApiKey._API_DATA_KEY][0][\"name\"]);\n\t\t\t\t\t\tsetRemark(responseJson[ApiKey._API_DATA_KEY][0][\"remark\"]);\n\t\t\t\t\t\tsetRank(responseJson[ApiKey._API_DATA_KEY][0][\"rank\"]);\n\t\t\t\t\t\tsetBonusRate(\n\t\t\t\t\t\t\tparseInt(responseJson[ApiKey._API_DATA_KEY][0][\"bonusRate\"])\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetBonusCap(\n\t\t\t\t\t\t\tparseInt(responseJson[ApiKey._API_DATA_KEY][0][\"bonusCap\"])\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetDescription(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][0][\"description\"]\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetStartDate(\n\t\t\t\t\t\t\tmoment(responseJson[ApiKey._API_DATA_KEY][0][\"startDate\"]).format(\n\t\t\t\t\t\t\t\t\"YYYY-MM-DD HH:mm:ss\"\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetEndDate(\n\t\t\t\t\t\t\tmoment(responseJson[ApiKey._API_DATA_KEY][0][\"endDate\"]).format(\n\t\t\t\t\t\t\t\t\"YYYY-MM-DD HH:mm:ss\"\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetRedemption(\n\t\t\t\t\t\t\tparseInt(responseJson[ApiKey._API_DATA_KEY][0][\"maxUsage\"])\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetMinDeposit(\n\t\t\t\t\t\t\tparseInt(responseJson[ApiKey._API_DATA_KEY][0][\"minDeposit\"])\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetSelectedViplevel(\n\t\t\t\t\t\t\tparseInt(responseJson[ApiKey._API_DATA_KEY][0][\"minVipLevel\"])\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetRolloverRate(\n\t\t\t\t\t\t\tparseInt(responseJson[ApiKey._API_DATA_KEY][0][\"rolloverRate\"])\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][0][\"status\"]);\n\n\t\t\t\t\t\tsetDesktopImage(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][0][\"backgroundImage\"]\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetIsBonusFixed(responseJson[ApiKey._API_DATA_KEY][0][\"isBonusFixed\"])\n\t\t\t\t\t\tsetSelectedProductCategoryId(responseJson[ApiKey._API_DATA_KEY][0][\"productCategoryId\"])\n\t\t\t\t\t\tsetIsClaimable(responseJson[ApiKey._API_DATA_KEY][0][\"isClaimable\"])\n\t\t\t\t\t\tsetIsMaxUsagePerDay(responseJson[ApiKey._API_DATA_KEY][0][\"isMaxUsagePerDay\"])\n\t\t\t\t\t\tsetMinBonusWalletTarget(responseJson[ApiKey._API_DATA_KEY][0][\"mincoinTarget\"])\n\t\t\t\t\t\tsetMaxWithdraw(responseJson[ApiKey._API_DATA_KEY][0][\"maxWithdraw\"])\n\t\t\t\t\t\tsetIsRolloverFixed(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][0][\"isRolloverFixed\"]\n\t\t\t\t\t\t);\n\t\t\t\t\t\tunregister(\"vip\");\n\t\t\t\t\t\tunregister(\"content\");\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\tgetMasterProduct();\n\t\t\tgetDepositPromotionProduct();\n\t\t}\n\n\t\tawait fetch(ApiUrl._API_GET_USER_VIP + \"?all=true\", {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst VipList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (vip) {\n\t\t\t\t\t\tVipList.push({ label: vip.name, value: vip.id });\n\t\t\t\t\t});\n\t\t\t\t\tsetVipList(VipList);\n\t\t\t\t}\n\t\t\t});\n\t\tawait fetch(ApiUrl._API_GET_PRODUCT_CATEGORY + \"?all=true\", {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetProductCategoryData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t\tconst categoryList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (category) {\n\t\t\t\t\t\tcategoryList.push({ label: category.title, value: category.id });\n\t\t\t\t\t});\n\t\t\t\t\tsetProductCategoryData(categoryList);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tlet params = {\n\t\t\tname: data.title,\n\t\t\tdescription: data.description,\n\t\t\tbonusRate: data.bonusRate,\n\t\t\trolloverRate: data.rolloverRate,\n\t\t\tstartDate: startDate,\n\t\t\tendDate: endDate,\n\t\t\t//maxUsage: data.maxUsage,\n\t\t\tminVipLevel: selectedViplevel,\n\t\t\tminDeposit: data.minDeposit,\n\t\t\tbonusCap: data.bonusCap,\n\t\t\tremark: data.remark,\n\t\t\trank: data.rank,\n\t\t\tstatus: data.status,\n\t\t\tcontent: content,\n\t\t\tisNewDesktopFile: isNewDesktopImage,\n\t\t\tisNewMobileFile: isNewMobileImage,\n\t\t\tmaxUsage: data.redemption,\n\t\t\tisBonusFixed: data.isBonusFixed,\n\t\t\tproductCategoryId: selectedProductCategoryId,\n\t\t\tisClaimable: data.isClaimable,\n\t\t\tisMaxUsagePerDay: data.isMaxUsagePerDay,\n\t\t\tmincoinTarget: data.minBonusWalletTarget,\n\t\t\tmaxWithdraw: data.maxWithdraw,\n\t\t\tisRolloverFixed: data.isRolloverFixed,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(desktopFile)) {\n\t\t\tparams[\"desktopFile\"] = desktopFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(desktopImage)) {\n\t\t\tparams[\"desktopImageRemoved\"] = true;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(mobileFile)) {\n\t\t\tparams[\"mobileFile\"] = mobileFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(mobileImage)) {\n\t\t\tparams[\"mobileImageRemoved\"] = true;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(promotionId)) {\n\t\t\tparams[\"id\"] = promotionId;\n\t\t}\n\n\t\tlet formBody = createMultiPartFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetPromotionId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\tgetMasterProduct();\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\tfunction getMasterProduct() {\n\t\tfetch(ApiUrl._API_GET_MASTER_PRODUCT_ID_NAME_BY_USER_ID, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst ProductList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (product) {\n\t\t\t\t\t\tProductList.push({\n\t\t\t\t\t\t\tlabel: product.name,\n\t\t\t\t\t\t\tvalue: product.id,\n\t\t\t\t\t\t\tmasterProductId: product.masterProductId,\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t\tsetProductData(ProductList);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tfunction toggleModal(isAddProduct) {\n\t\tif (accountProductModel) {\n\t\t\tsetDepositPromotionProductId(\"\");\n\t\t\tsetSelectedMasterProductId(\"\");\n\t\t\tsetAccountProductStatus(false);\n\t\t}\n\n\t\tif (isAddProduct) {\n\t\t\tsetIsCreateNewAccount(true);\n\t\t}\n\n\t\tsetAccountProductModel(!accountProductModel);\n\t}\n\n\tfunction getDepositPromotionProduct() {\n\t\tfetch(\n\t\t\tApiUrl._API_GET_DEPOSIT_PROMOTION_PRODUCT +\n\t\t\t\t\"?id=\" +\n\t\t\t\t(promotionId == \"\" ? _location.state.id : promotionId),\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetDepositPromotionProductData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tfunction loadAccountProduct(data) {\n\t\tsetDepositPromotionProductId(data.id);\n\t\tsetAccountProductId(data.accountProductId);\n\t\tsetAccountProductStatus(data.status);\n\t\tsetAccountProductName(data.name);\n\t\tsetSelectedMasterProductId(data.masterProductId);\n\t\tsetIsCreateNewAccount(false);\n\t\ttoggleModal();\n\t}\n\n\tfunction deleteBankSetting(id) {\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_DELETE_DEPOSIT_PROMOTION_PRODUCT + \"?id=\" + id, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tgetDepositPromotionProduct();\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tconst submitAccountSettingForm = async (data, e) => {\n\t\tlet params = {\n\t\t\tdepositPromotionId: promotionId,\n\t\t\taccountProductId: accountProductId,\n\t\t\tstatus: accountProductStatus,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(depositPromotionProductId)) {\n\t\t\tparams[\"id\"] = depositPromotionProductId;\n\t\t}\n\t\tlet formBody = createMultiPartFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_PRODUCT, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tgetDepositPromotionProduct();\n\t\t\t\t\tsetAccountProductId(\"\");\n\t\t\t\t\tsetAccountProductName(\"\");\n\t\t\t\t\tsetAccountProductStatus(\"\");\n\t\t\t\t\ttoggleModal();\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tconst logoDrop = (acceptedFiles, isDesktop) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\n\t\t\tif (isDesktop) {\n\t\t\t\tsetDesktopFile(file);\n\t\t\t} else {\n\t\t\t\tsetMobileFile(file);\n\t\t\t}\n\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tif (isDesktop) {\n\t\t\t\t\tsetDesktopImage(reader.result);\n\t\t\t\t\tsetIsNewDesktopImage(true);\n\t\t\t\t} else {\n\t\t\t\t\tsetIsNewMobileImage(true);\n\t\t\t\t\tsetMobileImage(reader.result);\n\t\t\t\t}\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t{showConfirmation && (\n\t\t\t\t {\n\t\t\t\t\t\tsetShowConfirmation(false);\n\t\t\t\t\t\tsetIsBonusFixed(!isBonusFixed);\n\t\t\t\t\t}}\n\t\t\t\t\tonCancel={() => {\n\t\t\t\t\t\tsetShowConfirmation(false);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\n\t\t\t)}\n\t\t\t{showRolloverConfirmation && (\n\t\t\t\t {\n\t\t\t\t\t\tsetShowRolloverConfirmation(false);\n\t\t\t\t\t\tsetIsRolloverFixed(!isRolloverFixed);\n\t\t\t\t\t}}\n\t\t\t\t\tonCancel={() => {\n\t\t\t\t\t\tsetShowRolloverConfirmation(false);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t)}\n\t\t\t

    \n\t\t\t\t{promotionId ? t(\"EDIT_DEPOSIT_PROMOTION\") : t(\"ADD_DEPOSIT_PROMOTION\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t{promotionId && (\n\t\t\t\t\n\t\t\t)}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.text && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.text.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.text && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.text.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.text && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.text.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t vip.value == selectedViplevel\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toptions={vipList}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedViplevel(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.text && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.text.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.text && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.text.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{promotionFormErrors.minBonusWalletTarget && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(promotionFormErrors.minBonusWalletTarget.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{promotionFormErrors.maxWithdraw && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(promotionFormErrors.maxWithdraw.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.text && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.text.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"ZERO_EQUAL_UNLIMITED\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.text && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.text.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.remark && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.remark.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.rank && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.rank.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setStatus(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={promotionFormRegister}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setShowConfirmation(true)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={isBonusFixed}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={promotionFormRegister}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setShowRolloverConfirmation(true)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={isRolloverFixed}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={promotionFormRegister}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setIsClaimable(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={isClaimable}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={promotionFormRegister}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setIsMaxUsagePerDay(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={isMaxUsagePerDay}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={promotionFormRegister}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t category.value == selectedProductCategoryId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toptions={productCategoryData}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedProductCategoryId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.text && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.text.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t{!stringIsNullOrEmpty(promotionId) && selectedProductCategoryId == -1 && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{t(\"SELECTED_PRODUCT\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t toggleModal(true)}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"ADD_PRODUCT\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t\t\t toggleModal()}>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t toggleModal()}>\n\t\t\t\t\t\t\t\t\t{t(isCreateNewAccount ? \"ADD_PRODUCT\" : \"EDIT_PRODUCTS\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t!depositPromotionProductData.some(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(obj2) => obj1.label === obj2.name\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tproductData.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toption.value == selectedMasterProductId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? productData.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tproductData.value ==\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tselectedMasterProductId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t ).label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tisDisabled={depositPromotionProductId != \"\"}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={productData.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) =>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toption.masterProductId == selectedMasterProductId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetAccountProductId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedMasterProductId(e.masterProductId);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\taccountFormSetValue(\"accountProductId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={accountFormRegister}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{accountFormErrors.accountProductId && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(accountFormErrors.accountProductId.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetAccountProductStatus(e.target.checked)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={accountProductStatus}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={accountFormRegister}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t toggleModal()}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t{promotionId && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default withRouter(DepositPromotionDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalFooter,\n} from \"reactstrap\";\nimport {\n\tcreateFormBody,\n\tnavigateTo,\n\tstringIsNullOrEmpty,\n} from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n\tAllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { useDispatch } from \"react-redux\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { showMessage } from \"../../redux/AppAction\";\n\n/// \n/// Author : -\n/// \n\nconst ManageMarqueeContent = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [marqueeTagContentData, setMarqueeTagContentData] = useState([]);\n\tlet _history = useHistory();\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"PLATFORM\",\n\t\t\taccessor: \"platform\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CONTENT\",\n\t\t\taccessor: \"content\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\tWebUrl._URL_MARQUEE_TAG_CONTENT_DETAIL,\n\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetMarqueeTagContent();\n\t}, []);\n\n\tasync function getMarqueeTagContent() {\n\t\tfetch(ApiUrl._API_GET_MARQUEE_TAG_CONTENT, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetMarqueeTagContentData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"MANAGE_MARQUEE_TAG_CONTENT\")}\n\t\t\t\t{checkIfPermissionExist(\n\t\t\t\t\tAccessRight._MARQUEE_TAG_CONTENT,\n\t\t\t\t\ttrue\n\t\t\t\t) && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageMarqueeContent;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport { ApiUrl, ApiKey, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageSkinSettings = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [skinSettingData, setSkinSettingData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"Skin Name\",\n accessor: \"skinName\",\n },\n {\n Header: \"Background Image\",\n accessor: \"backgroundImage\",\n Cell: ({ row }) => (\n
    \n {!stringIsNullOrEmpty(row.original.backgroundImage) ? (\n \n ) : (\n - \n )}\n
    \n ),\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_SKIN_SETTINGS_DETAIL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_SKIN_SETTINGS, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSkinSettingData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_SKIN_SETTINGS\")}\n \n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageSkinSettings;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport Dropzone from \"react-dropzone\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst SkinSettingsDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors, setValue } = useForm();\n const [skinSettingId, setSkinSettingId] = useState(\"\");\n\n const [text, setText] = useState(\"\");\n const [imageFile, setImageFile] = useState([]);\n const [image, setImage] = useState();\n const [imageTopRightFile, setImageTopRightFile] = useState([]);\n const [imageTopRight, setImageTopRight] = useState();\n const [imageBottomLeftFile, setImageBottomLeftFile] = useState([]);\n const [imageBottomLeft, setImageBottomLeft] = useState();\n const [isNewImage, setIsNewImage] = useState(false);\n const [status, setStatus] = useState(true);\n\n /// \n /// Author : -\n /// \n const logoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setImageFile(file);\n\n const reader = new FileReader();\n reader.onloadend = () => {\n setIsNewImage(true);\n setImage(reader.result);\n };\n reader.readAsDataURL(file);\n }\n };\n /// \n /// Author : -\n /// \n const accessoryTopRightDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setImageTopRightFile(file);\n\n const reader = new FileReader();\n reader.onloadend = () => {\n setIsNewImage(true);\n setImageTopRight(reader.result);\n };\n reader.readAsDataURL(file);\n }\n };\n /// \n /// Author : -\n /// \n const accessoryBottomLeftDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setImageBottomLeftFile(file);\n\n const reader = new FileReader();\n reader.onloadend = () => {\n setIsNewImage(true);\n setImageBottomLeft(reader.result);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n console.log(_location);\n console.log(_location.state);\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_SKIN_SETTINGS_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSkinSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setText(responseJson[ApiKey._API_DATA_KEY][\"skinName\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setImage(responseJson[ApiKey._API_DATA_KEY][\"backgroundImage\"]);\n setImageBottomLeft(responseJson[ApiKey._API_DATA_KEY][\"imageBottomLeft\"]);\n setImageTopRight(responseJson[ApiKey._API_DATA_KEY][\"imageTopRight\"]);\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n skinName: data.text,\n status: data.status,\n isNewImage: isNewImage,\n };\n\n if (!stringIsNullOrEmpty(skinSettingId)) {\n params[\"id\"] = skinSettingId;\n }\n\n if (!stringIsNullOrEmpty(imageFile)) {\n params[\"imageFile\"] = imageFile;\n }\n\n if (stringIsNullOrEmpty(image)) {\n params[\"imageRemoved\"] = true;\n }\n if (!stringIsNullOrEmpty(imageBottomLeftFile)) {\n params[\"imageBottomLeft\"] = imageBottomLeftFile;\n }\n\n if (stringIsNullOrEmpty(imageBottomLeft)) {\n params[\"imageBottomLeftRemoved\"] = true;\n }\n if (!stringIsNullOrEmpty(imageTopRightFile)) {\n params[\"imageTopRight\"] = imageTopRightFile;\n }\n\n if (stringIsNullOrEmpty(imageTopRight)) {\n params[\"imageTopRightRemoved\"] = true;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_SKIN_SETTINGS, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSkinSettingId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n return (\n
    \n

    \n {skinSettingId ? t(\"EDIT_SKIN_SETTINGS\") : t(\"ADD_SKIN_SETTINGS\") /*localization*/}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n logoDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(image) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setImage(\"\");\n setImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n accessoryTopRightDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(imageTopRight) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setImageTopRight(\"\");\n setImageTopRightFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n accessoryBottomLeftDrop(acceptedFiles)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(imageBottomLeft) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setImageBottomLeft(\"\");\n setImageBottomLeftFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n \n \n \n );\n};\n\nexport default SkinSettingsDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport {\n ApiKey,\n WebUrl,\n ApiUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useDispatch } from \"react-redux\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageGame = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n const [gameData, setGameData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"gameName\",\n },\n {\n Header: \"CODE\",\n accessor: \"gameCode\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._MASTER_PRODUCT_CONTROL_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_GAME,\n { id: row.original.id, isNew: false }\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n function deleteGame(id) {\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_DELETE_PRODUCT_GAME + \"?id=\" + id, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n readGame();\n }\n });\n }\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n readGame();\n }, []);\n\n /// \n /// Author : -\n /// \n function readGame() {\n fetch(\n ApiUrl._API_GET_PRODUCT_GAME + \"?productId=\" + _location.state[\"id\"],\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setGameData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n return (\n
    \n

    \n {t(\"GAME\")}\n {checkIfPermissionExist(\n AccessRight._MASTER_PRODUCT_CONTROL_PERMISSION,\n true\n ) && (\n {\n _history.push({\n pathname: WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_GAME,\n state: { id: _location.state[\"id\"], isNew: true },\n });\n }}\n >\n \n {t(\"ADD_NEW_GAME\")}\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageGame;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useForm } from \"react-hook-form\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport Dropzone from \"react-dropzone\";\nimport Select from \"react-select\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst GameDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _location = useLocation();\n const _history = useHistory();\n const _dispatch = useDispatch();\n const { register, handleSubmit, errors, setValue, unregister } = useForm();\n\n const [gameImage, setGameImage] = useState(\"\");\n const [gameFile, setGameFile] = useState(\"\");\n const [isNewImage, setIsNewImage] = useState(false);\n const [desktopImage, setDesktopImage] = useState(\"\");\n const [desktopFile, setDesktopFile] = useState(\"\");\n const [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n const [desktopImageHover, setDesktopImageHover] = useState(\"\");\n const [desktopFileHover, setDesktopFileHover] = useState(\"\");\n const [isNewDesktopImageHover, setIsNewDesktopImageHover] = useState(false);\n\n const [gameName, setGameName] = useState(\"\");\n const [gameCode, setGameCode] = useState(\"\");\n const [gameId, setGameId] = useState(\"\");\n const [status, setStatus] = useState(false);\n const [recommended, setRecommended] = useState(false);\n const [rank, setRank] = useState(\"\");\n const [categoryList, setCategoryList] = useState([]);\n const [selectedCategory, setSelectedCategory] = useState(\"\");\n const [gameUm, setGameUm] = useState(false);\n const [hidden, setHidden] = useState(false);\n const [isNewGame, setIsNewGame] = useState(false);\n const [appUrl, setAppUrl] = useState(\"\");\n const [appDeepLink, setAppDeepLink] = useState(\"\");\n\n const [isApp, setIsApp] = useState(false);\n\n\n const [parameter_1, setParameter_1] = useState(\"\");\n\n const [parameter_2, setParameter_2] = useState(\"\");\n\n const [parameter_3, setParameter_3] = useState(\"\");\n\n const [parameter_4, setParameter_4] = useState(\"\");\n\n const [parameter_5, setParameter_5] = useState(\"\");\n\n const [isFeatured, setIsFeatured] = useState(false)\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n gameCode: data.code,\n gameName: data.name,\n status: data.status,\n gameUm: data.gameUm,\n hidden: data.hiddenGame,\n isApp: data.isApplication,\n appUrl: data.appUrl,\n appDeepLink: data.appDeepLink,\n productCategoryId: selectedCategory,\n rank: data.rank,\n isRecommended: recommended,\n isNewGameImage: isNewImage,\n isNewDesktopImage: isNewDesktopImage,\n isNewDesktopImageHover: isNewDesktopImageHover,\n parameter_1: data.param1,\n parameter_2: data.param2,\n parameter_3: data.param3,\n parameter_4: data.param4,\n parameter_5: data.param5,\n isNewGame: data.isNewGame,\n isFeatured: data.isFeatured\n };\n\n /*if (!stringIsNullOrEmpty(parameter_1)) {\n params[\"parameter_1\"] = parameter_1;\n }\n if (!stringIsNullOrEmpty(parameter_2)) {\n params[\"parameter_2\"] = parameter_2;\n }\n if (!stringIsNullOrEmpty(parameter_3)) {\n params[\"parameter_3\"] = parameter_3;\n }\n if (!stringIsNullOrEmpty(parameter_4)) {\n params[\"parameter_4\"] = parameter_4;\n }\n if (!stringIsNullOrEmpty(parameter_5)) {\n params[\"parameter_5\"] = parameter_5;\n }*/\n\n if (!stringIsNullOrEmpty(gameId)) {\n params[\"id\"] = gameId;\n }\n\n if (_location.state[\"isNew\"]) {\n params[\"productId\"] = _location.state[\"id\"];\n }\n\n if (!stringIsNullOrEmpty(gameFile)) {\n params[\"gameImage\"] = gameFile;\n }\n\n if (stringIsNullOrEmpty(gameImage)) {\n params[\"gameImageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(desktopFile)) {\n params[\"desktopImage\"] = desktopFile;\n }\n\n if (stringIsNullOrEmpty(desktopImage)) {\n params[\"desktopImageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(desktopFileHover)) {\n params[\"desktopImageHover\"] = desktopFileHover;\n }\n\n if (stringIsNullOrEmpty(desktopImageHover)) {\n params[\"desktopImageRemovedHover\"] = true;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_GAME_PRODUCT, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIsNewImage(false);\n setIsNewDesktopImage(false);\n setIsNewDesktopImageHover(false);\n setGameId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n /// \n /// Author : -\n /// Editted : - (Add Category)\n /// \n useEffect(() => {\n register({ name: \"gameImage\" }, { required: \"PLEASE_SELECT_IMAGE\" });\n //register({ name: \"desktopImage\" }, { required: \"PLEASE_SELECT_IMAGE\" });\n register({ name: \"category\" }, { required: \"PLEASE_SELECT_CATEGORY\" });\n getProductCategory();\n if (_location.state != null && !_location.state[\"isNew\"]) {\n fetch(\n ApiUrl._API_GET_PRODUCT_GAME_BY_ID + \"?id=\" + _location.state[\"id\"],\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setGameCode(responseJson[ApiKey._API_DATA_KEY][\"gameCode\"]);\n setGameName(responseJson[ApiKey._API_DATA_KEY][\"gameName\"]);\n setGameId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setGameUm(responseJson[ApiKey._API_DATA_KEY][\"gameUm\"]);\n setHidden(responseJson[ApiKey._API_DATA_KEY][\"hidden\"]);\n setIsNewGame(responseJson[ApiKey._API_DATA_KEY][\"isNewGame\"]);\n setIsApp(responseJson[ApiKey._API_DATA_KEY][\"isApp\"]);\n setAppUrl(responseJson[ApiKey._API_DATA_KEY][\"appUrl\"]);\n setAppDeepLink(responseJson[ApiKey._API_DATA_KEY][\"appDeepLink\"]);\n setSelectedCategory(\n responseJson[ApiKey._API_DATA_KEY][\"productCategoryId\"]\n );\n setValue(\n \"category\",\n responseJson[ApiKey._API_DATA_KEY][\"productCategoryId\"]\n );\n setRecommended(responseJson[ApiKey._API_DATA_KEY][\"isRecommended\"]);\n setRank(responseJson[ApiKey._API_DATA_KEY][\"rank\"]);\n setParameter_1(responseJson[ApiKey._API_DATA_KEY][\"parameter_1\"]);\n setParameter_2(responseJson[ApiKey._API_DATA_KEY][\"parameter_2\"]);\n setParameter_3(responseJson[ApiKey._API_DATA_KEY][\"parameter_3\"]);\n setParameter_4(responseJson[ApiKey._API_DATA_KEY][\"parameter_4\"]);\n setParameter_5(responseJson[ApiKey._API_DATA_KEY][\"parameter_5\"]);\n setIsFeatured(responseJson[ApiKey._API_DATA_KEY][\"isFeatured\"])\n\n if (\n !stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"image\"])\n ) {\n setGameImage(responseJson[ApiKey._API_DATA_KEY][\"image\"]);\n setValue(\n \"gameImage\",\n responseJson[ApiKey._API_DATA_KEY][\"image\"]\n );\n }\n\n if (\n !stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"])\n ) {\n setDesktopImage(responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]);\n setValue(\n \"desktopImage\",\n responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n );\n }\n\n if (\n !stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"desktopImageHover\"])\n ) {\n setDesktopImageHover(responseJson[ApiKey._API_DATA_KEY][\"desktopImageHover\"]);\n setValue(\n \"desktopImageHover\",\n responseJson[ApiKey._API_DATA_KEY][\"desktopImageHover\"]\n );\n }\n }\n });\n }\n }, []);\n\n /// \n /// Author : -\n /// \n const getProductCategory = async () => {\n await fetch(ApiUrl._API_GET_PRODUCT_CATEGORY, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const productCategorys = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (\n productCategory\n ) {\n productCategorys.push({\n label: productCategory.title,\n value: productCategory.id,\n });\n });\n\n setCategoryList(productCategorys);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n const logoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n\n const reader = new FileReader();\n reader.onloadend = () => {\n setGameFile(file);\n setGameImage(reader.result);\n setValue(\"gameImage\", reader.result);\n setIsNewImage(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n const desktopLogoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n\n const reader = new FileReader();\n reader.onloadend = () => {\n setDesktopFile(file);\n setDesktopImage(reader.result);\n setValue(\"desktopImage\", reader.result);\n setIsNewDesktopImage(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n const desktopLogoHoverDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n\n const reader = new FileReader();\n reader.onloadend = () => {\n setDesktopFileHover(file);\n setDesktopImageHover(reader.result);\n setValue(\"desktopImageHover\", reader.result);\n setIsNewDesktopImageHover(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n return (\n
    \n

    \n {t(\"GAME_DETAIL\")}\n \n

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

    {t(\"DESKTOP\")}

    \n
    \n
    \n
    \n
    \n \n
    \n \n desktopLogoDrop(acceptedFiles, true)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(desktopImage) && (\n \n )}\n
    \n \n )}\n \n {errors.desktopImage && (\n
    \n {t(errors.desktopImage.message)}\n
    \n )}\n
    \n {\n setDesktopImage(\"\");\n setDesktopFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n desktopLogoHoverDrop(acceptedFiles, true)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(desktopImageHover) && (\n \n )}\n
    \n \n )}\n \n {errors.desktopImageHover && (\n
    \n {t(errors.desktopImageHover.message)}\n
    \n )}\n
    \n {\n setDesktopImageHover(\"\");\n setDesktopFileHover();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n

    {t(\"WEB_APP\") + \" / \" + t(\"MOBILE_APP\")}

    \n
    \n
    \n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles, true)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(gameImage) && (\n \n )}\n
    \n \n )}\n \n {errors.gameImage && (\n
    \n {t(errors.gameImage.message)}\n
    \n )}\n
    \n {\n setGameImage(\"\");\n setGameFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n\n
    \n
    \n \n
    \n \n {errors.name && (\n
    \n {t(errors.name.message)}\n
    \n )}\n
    \n
    \n
    \n\n
    \n
    \n \n
    \n \n {errors.code && (\n
    \n {t(errors.code.message)}\n
    \n )}\n
    \n
    \n
    \n\n
    \n
    \n \n
    \n option.value == selectedCategory\n )[0] !== undefined\n ? categoryList.filter(\n (option) => option.value == selectedCategory\n )[0].label\n : \"\"\n }\n value={categoryList.filter(\n (option) => option.value == selectedCategory\n )}\n onChange={(e) => {\n unregister(\"category\");\n setSelectedCategory(e.value);\n }}\n />\n {errors.category && (\n
    \n {t(errors.category.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.rank && (\n
    \n {t(errors.rank.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setRecommended(e.target.checked)}\n value={false}\n checked={recommended}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setGameUm(e.target.checked)}\n value={true}\n checked={gameUm}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setHidden(e.target.checked)}\n value={true}\n checked={hidden}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setIsNewGame(e.target.checked)}\n value={true}\n checked={isNewGame}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setIsFeatured(e.target.checked)}\n value={true}\n checked={isFeatured}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setIsApp(e.target.checked)}\n value={true}\n checked={isApp}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n {isApp &&
    \n
    \n \n
    \n \n
    \n
    \n
    }\n {isApp &&
    \n
    \n \n
    \n \n
    \n
    \n
    }\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n \n \n \n );\n};\n\nexport default GameDetail;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n AllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageWeeklyRescue = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [promotionData, setPromotionData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"RANK\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"MIN_LOSSES\",\n accessor: \"minlosses\",\n Cell: ({ row }) => {\n \n return <>{row.original.minlosses};\n \n },\n },\n {\n Header: \"RESCUE_PERCENTAGE\",\n accessor: \"rescuePercentage\",\n Cell: ({ row }) => {\n \n return <>{row.original.rescuePercentage}{\"%\"};\n \n },\n },\n {\n Header: \"MAX_BONUS\",\n accessor: \"maxBonus\",\n Cell: ({ row }) => {\n\n return <>{row.original.maxBonus};\n\n },\n },\n {\n Header: \"TURNOVER\",\n accessor: \"turnover\",\n Cell: ({ row }) => {\n\n return <>{row.original.turnover}{\"x\"};\n\n },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._WEEKLY_RESCUE_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_WEEKLY_RESCUE_DETAIL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_WEEKLY_RESCUE + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setPromotionData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"WEEKLY_RESCUE\")}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageWeeklyRescue;\n","import React, { useState, useEffect } from \"react\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, LanguageKey, ContentTypeString, DisplayDevice } from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport {\n Panel,\n PanelHeader,\n PanelBody,\n} from \"./../../components/panel/panel.jsx\";\n\n/// \n/// Author : -\n/// \n\nconst WeeklyRescueDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _DETAIL_TAB = \"1\";\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors, setValue } = useForm();\n const [weeklyRescueId, setWeeklyRescueId] = useState(\"\");\n const [name, setName] = useState(\"\");\n const [minLosses, setminLosses] = useState(\"\")\n const [rescuePercentage, setRescuePercentage] = useState(\"\");\n const [maxBonus, setMaxBonus] = useState(\"\");\n const [turnover, setTurnover] = useState(\"\");\n\n const {\n register: accountFormRegister,\n handleSubmit: accountFormHandleSubmit,\n errors: accountFormErrors,\n unregister: accountFormUnregister,\n setValue: accountFormSetValue,\n } = useForm();\n\n\n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n setWeeklyRescueId(_location.state.id)\n var apiUrl = ApiUrl._API_GET_WEEKLY_RESCUE_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setWeeklyRescueId(responseJson[ApiKey._API_DATA_KEY][0][\"id\"])\n setName(responseJson[ApiKey._API_DATA_KEY][0][\"name\"])\n setminLosses(responseJson[ApiKey._API_DATA_KEY][0][\"minlosses\"])\n setRescuePercentage(responseJson[ApiKey._API_DATA_KEY][0][\"rescuePercentage\"])\n setMaxBonus(responseJson[ApiKey._API_DATA_KEY][0][\"maxBonus\"])\n setTurnover(responseJson[ApiKey._API_DATA_KEY][0][\"turnover\"])\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n\n let params = {\n id : weeklyRescueId,\n minlosses: data.minLosses,\n rescuePercentage: data.rescuePercentage,\n maxBonus: data.maxBonus,\n turnover: data.turnover\n };\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_WEEKLY_RESCUE, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setWeeklyRescueId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n return (\n
    \n

    \n {t(\"EDIT_WEEKLY_RESCUE\") /*localization*/}\n \n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default WeeklyRescueDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport \"../../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../../util/Constant\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBonus = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [bonusData, setBonusData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"title\",\n style: {\n whiteSpace: \"unset\",\n wordBreak: \"break-word\",\n },\n },\n {\n Header: \"CODE\",\n accessor: \"code\",\n },\n {\n Header: \"FROM\",\n accessor: \"startDateString\",\n },\n {\n Header: \"TO\",\n accessor: \"endDateString\",\n },\n {\n Header: \"BONUS\",\n accessor: \"amount\",\n },\n {\n Header: \"MAX_BONUS\",\n accessor: \"maximumBonusAmount\",\n },\n {\n Header: \"SETTING_TYPE\",\n accessor: \"settingTypeName\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"MAINTENANCE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(AccessRight._BONUS_SETTING_PERMISSION, true) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_BONUS,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n {\n navigateTo(_history, WebUrl._URL_CREATE_OR_UPDATE_BONUS, {\n refId: row.original.id,\n });\n }}\n >\n {t(\"CLONE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_USER_BONUS + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBonusData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"BONUS_SETTING\")}\n {checkIfPermissionExist(\n AccessRight._BONUS_SETTING_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageBonus;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../../components/constantComponent/button/NavigationButton\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport DateTime from \"react-datetime\";\nimport {\n ApiKey,\n ApiUrl,\n BonusSettingType,\n BonusMethodType,\n LanguageKey,\n ContentTypeString,\n AllVipOption,\n} from \"../../../util/Constant\";\nimport {\n stringIsNullOrEmpty,\n createMultiPartFormBody,\n imagePathToFileObject,\n} from \"../../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport moment from \"moment\";\nimport Select from \"react-select\";\nimport Dropzone from \"react-dropzone\";\nimport \"react-datetime/css/react-datetime.css\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"../ManageConfigurationLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst BonusDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors, setError } = useForm();\n\n const [showPlayer, setShowPlayer] = useState(true);\n const [title, setTitle] = useState(\"\");\n const [code, setCode] = useState(\"\");\n\n const [bonusId, setBonusId] = useState(\"\");\n const [bonusRefId, setBonusRefId] = useState(\"\");\n const [methodId, setMethodId] = useState(BonusMethodType._AMOUNT);\n const [settingTypeId, setSettingTypeId] = useState(\"\");\n const [rank, setRank] = useState(\"\");\n const [maximumDeposit, setMaximumDeposit] = useState(\"\");\n const [minimumDeposit, setMinimumDeposit] = useState(\"\");\n const [content, setContent] = useState(\"\");\n const [turnover, setTurnover] = useState(\"\");\n const [remark, setRemark] = useState(\"\");\n const [startDate, setStartDate] = useState(\"\");\n const [endDate, setEndDate] = useState(\"\");\n const [amount, setAmount] = useState(\"\");\n\n const [bonusStartTime, setBonusStartTime] = useState(\"00:00\");\n const [bonusEndTime, setBonusEndTime] = useState(\"00:00\");\n const [bonusDayData, setBonusDayData] = useState([]);\n\n const [bonusTypeOption, setBonusTypeOption] = useState([]);\n const [bonusTypeId, setBonusTypeId] = useState(\"\");\n const [logoImage, setLogoImage] = useState(null);\n const [logoFile, setLogoFile] = useState(null);\n const [isNewImage, setIsNewImage] = useState(false);\n const [vip, setVip] = useState();\n const [vipOption, setVipOption] = useState([]);\n const [claimCount, setClaimCount] = useState(\"\");\n\n const MAXIMUM_DEPOSIT_AMOUNT = 100000;\n\n const _DAY_OPTION = [\n { value: 0, label: \"Sunday\" },\n { value: 1, label: \"Monday\" },\n { value: 2, label: \"Tuesday\" },\n { value: 3, label: \"Wednesday\" },\n { value: 4, label: \"Thursday\" },\n { value: 5, label: \"Friday\" },\n { value: 6, label: \"Saturday\" },\n ];\n\n const _DAY_MAPPER = {\n 0: \"Sunday\",\n 1: \"Monday\",\n 2: \"Tuesday\",\n 3: \"Wednesday\",\n 4: \"Thursday\",\n 5: \"Friday\",\n 6: \"Saturday\",\n };\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"bonusTypeId\" }, { required: \"PLEASE_SELECT_BONUS_TYPE\" });\n register(\n { name: \"bonusDay\" },\n { required: \"PLEASE_ENTER_AT_LEAST_ONE_DAY\" }\n );\n register({ name: \"vip\" }, { required: \"PLEASE_SELECT_VIP_LEVEL\" });\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n let stateBonusId = _location.state.id || _location.state.refId;\n var apiUrl = ApiUrl._API_GET_USER_BONUS_BY_ID;\n apiUrl += \"?id=\" + stateBonusId;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (_location.state.id) {\n setBonusId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setBonusRefId(\"\");\n } else if (_location.state.refId) {\n setBonusId(\"\");\n setBonusRefId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setCode(responseJson[ApiKey._API_DATA_KEY][\"code\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n setRemark(responseJson[ApiKey._API_DATA_KEY][\"remark\"]);\n setStartDate(responseJson[ApiKey._API_DATA_KEY][\"startDateString\"]);\n setEndDate(responseJson[ApiKey._API_DATA_KEY][\"endDateString\"]);\n\n setBonusTypeId(responseJson[ApiKey._API_DATA_KEY][\"bonusTypeId\"]);\n\n setMethodId(responseJson[ApiKey._API_DATA_KEY][\"methodId\"]);\n setSettingTypeId(\n responseJson[ApiKey._API_DATA_KEY][\"settingTypeId\"]\n );\n setShowPlayer(responseJson[ApiKey._API_DATA_KEY][\"isShowPlayer\"]);\n setAmount(responseJson[ApiKey._API_DATA_KEY][\"amount\"]);\n setMinimumDeposit(\n responseJson[ApiKey._API_DATA_KEY][\"minimumDeposit\"]\n );\n setMaximumDeposit(\n responseJson[ApiKey._API_DATA_KEY][\"maximumBonusAmount\"]\n );\n setTurnover(responseJson[ApiKey._API_DATA_KEY][\"turnover\"]);\n setBonusStartTime(\n responseJson[ApiKey._API_DATA_KEY][\"bonusStartTime\"]\n );\n setBonusEndTime(responseJson[ApiKey._API_DATA_KEY][\"bonusEndTime\"]);\n var bonusArr = [];\n\n for (\n var i = 0;\n i < responseJson[ApiKey._API_DATA_KEY][\"bonusDay\"].length;\n i++\n ) {\n bonusArr.push({\n value: responseJson[ApiKey._API_DATA_KEY][\"bonusDay\"][i],\n label:\n _DAY_MAPPER[\n responseJson[ApiKey._API_DATA_KEY][\"bonusDay\"][i]\n ],\n });\n }\n\n setBonusDayData(bonusArr);\n\n if (\n !stringIsNullOrEmpty(\n responseJson[ApiKey._API_DATA_KEY][\"bonusImage\"]\n )\n ) {\n setLogoImage(responseJson[ApiKey._API_DATA_KEY][\"bonusImage\"]);\n if (_location.state.refId) {\n setIsNewImage(true);\n let imageFile = await imagePathToFileObject(\n responseJson[ApiKey._API_DATA_KEY][\"bonusImage\"]\n );\n setLogoFile(imageFile);\n }\n }\n setVip(\n stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"vipId\"])\n ? AllVipOption._VALUE\n : responseJson[ApiKey._API_DATA_KEY][\"vipId\"]\n );\n setClaimCount(responseJson[ApiKey._API_DATA_KEY][\"claimCount\"]);\n unregister(\"bonusTypeId\");\n unregister(\"bonusDay\");\n unregister(\"vip\");\n }\n });\n }\n\n await fetch(ApiUrl._API_GET_BONUS_TYPE, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bonusTypeList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bonus) {\n bonusTypeList.push({ label: bonus.name, value: bonus.id });\n });\n\n setBonusTypeOption(bonusTypeList);\n }\n });\n\n await fetch(ApiUrl._API_GET_USER_VIP, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const vipList = [\n { label: AllVipOption._LABEL, value: AllVipOption._VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (vipLevel) {\n vipList.push({ label: vipLevel.name, value: vipLevel.id });\n });\n\n setVipOption(vipList);\n }\n });\n }\n\n /// \n /// Author : -\n /// Used to set logo\n /// \n const logoDrop = (acceptedFiles) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n setLogoFile(file);\n const reader = new FileReader();\n reader.onloadend = () => {\n setLogoImage(reader.result);\n setIsNewImage(true);\n };\n reader.readAsDataURL(file);\n }\n };\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n /// \n /// Author : -\n /// Editted : - - Added Checking for date range\n /// \n const submitForm = async (data, e) => {\n if (stringIsNullOrEmpty(startDate) || stringIsNullOrEmpty(endDate)) {\n setError(\"dateRange\", {\n type: \"Required\",\n message: \"PLEASE_SELECT_DATE_RANGE\",\n });\n return;\n }\n\n var bonusDataString = [];\n for (var i = 0; bonusDayData != null && i < bonusDayData.length; i++) {\n bonusDataString.push(bonusDayData[i].value);\n }\n\n let params = {\n code: data.code,\n title: data.title,\n content: data.content,\n settingTypeId: data.settingTypeId,\n isShowPlayer: data.showPlayer,\n methodId: data.methodId,\n minimumDeposit: data.minimumDeposit,\n maximumBonusAmount: data.maximumDeposit,\n turnover: data.turnover,\n remark: data.remark,\n startDate: startDate,\n endDate: endDate,\n bonusTypeId: bonusTypeId,\n amount: data.amount,\n bonusStartTime: bonusStartTime,\n bonusEndTime: bonusEndTime,\n bonusDay: bonusDataString.join(),\n isNewBonusImage: isNewImage,\n claimCount: data.claimCount,\n vipId: stringIsNullOrEmpty(vip) ? \"\" : vip,\n };\n\n if (!stringIsNullOrEmpty(bonusId)) {\n params[\"id\"] = bonusId;\n }\n\n if (!stringIsNullOrEmpty(bonusRefId)) {\n params[\"refId\"] = bonusRefId;\n }\n\n if (!stringIsNullOrEmpty(logoFile)) {\n params[\"bonusImage\"] = logoFile;\n }\n\n if (stringIsNullOrEmpty(logoImage)) {\n params[\"bonusImageRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(bonusId)) {\n params[\"id\"] = bonusId;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_BONUS, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIsNewImage(false);\n setBonusRefId(\"\");\n setBonusId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n });\n };\n\n return (\n
    \n

    \n {bonusId ? t(\"EDIT_BONUS_SETTING\") : t(\"ADD_BONUS_SETTING\")}\n \n

    \n {bonusId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.code && (\n
    \n {t(errors.code.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.title.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.content && (\n
    \n {t(errors.content.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n {errors.dateRange && (\n
    \n {t(errors.dateRange.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n if (e == null || e.length == 0) {\n register(\n { name: \"bonusDay\" },\n {\n required: \"PLEASE_ENTER_AT_LEAST_ONE_DAY\",\n }\n );\n } else {\n unregister(\"bonusDay\");\n }\n setBonusDayData(e);\n }}\n />\n {errors.bonusDay && (\n
    \n {t(errors.bonusDay.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n if (e instanceof moment) {\n setBonusStartTime(e.format(\"HH:mm\"));\n unregister(\"bonusStartTime\");\n } else {\n register(\n { name: \"bonusStartTime\" },\n {\n required: \"PLEASE_ENTER_BONUS_START_TIME\",\n }\n );\n }\n }}\n timeFormat=\"HH:mm\"\n inputProps={{ placeholder: \"Start Time\" }}\n />\n {errors.bonusStartTime && (\n
    \n {t(errors.bonusStartTime.message)}\n
    \n )}\n \n To\n \n {\n if (e instanceof moment) {\n setBonusEndTime(e.format(\"HH:mm\"));\n unregister(\"bonusEndTime\");\n } else {\n register(\n { name: \"bonusEndTime\" },\n { required: \"PLEASE_ENTER_BONUS_END_TIME\" }\n );\n }\n }}\n timeFormat=\"HH:mm\"\n inputProps={{ placeholder: \"End Time\" }}\n />\n {errors.bonusEndTime && (\n
    \n {t(errors.bonusEndTime.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n setSettingTypeId(e.target.value)}\n value={settingTypeId}\n >\n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == bonusTypeId\n )[0] !== undefined\n ? bonusTypeOption.filter(\n (option) => option.value == bonusTypeId\n )[0].label\n : \"\"\n }\n value={bonusTypeOption.filter(\n (option) => option.value == bonusTypeId\n )}\n onChange={(e) => {\n unregister(\"bonusTypeId\");\n setBonusTypeId(e.value);\n }}\n />\n {errors.bonusTypeId && (\n
    \n {t(errors.bonusTypeId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n setShowPlayer(e.target.checked)\n }\n value={true}\n checked={showPlayer}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n setMethodId(e.target.value)}\n value={methodId}\n >\n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n {errors.amount && (\n
    \n {t(errors.amount.message, {\n value:\n methodId == BonusMethodType._AMOUNT\n ? MAXIMUM_DEPOSIT_AMOUNT\n : 100,\n })}\n
    \n )}\n
    \n \n {methodId &&\n (methodId == BonusMethodType._AMOUNT\n ? \"\"\n : \"%\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.minimumDeposit && (\n
    \n {t(errors.minimumDeposit.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.maximumDeposit && (\n
    \n {t(errors.maximumDeposit.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n {errors.turnover && (\n
    \n {t(errors.turnover.message)}\n
    \n )}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.remark && (\n
    \n {t(errors.remark.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n option.value == vip\n )[0] !== undefined\n ? vipOption.filter(\n (option) => option.value == vip\n )[0].label\n : \"\"\n }\n value={vipOption.filter(\n (option) => option.value == vip\n )}\n onChange={(e) => {\n unregister(\"vip\");\n setVip(e.value);\n }}\n />\n {errors.vip && (\n
    \n {t(errors.vip.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.claimCount && (\n
    \n {t(errors.claimCount.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(logoImage) && (\n \n )}\n
    \n \n )}\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n \n \n \n \n {bonusId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n \n \n );\n};\n\nexport default BonusDetail;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport {\n ApiKey,\n ApiUrl,\n TransactionType,\n PanelType,\n BonusTransactionMethod,\n LanguageKey,\n BonusMethodType,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst Bonus = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let history = useHistory();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors, reset } = useForm();\n const [bonusType, setBonusType] = useState(\n BonusTransactionMethod._WITH_DEPOSIT\n );\n const [bonusOption, setBonusOption] = useState([]);\n const [bonusId, setBonusId] = useState(\"\");\n const [memberOption, setMemberOption] = useState([]);\n const [memberId, setMemberId] = useState(\"\");\n const [depositTransactionOption, setDepositTransactionOption] = useState([]);\n const [depositIndex, setDepositIndex] = useState();\n const [depositTransactions, setDepositTransactions] = useState([]);\n\n const _BONUS_TYPE = [\n { value: BonusTransactionMethod._WITH_DEPOSIT, label: t(\"WITH_DEPOSIT\") },\n {\n value: BonusTransactionMethod._WITHOUT_DEPOSIT,\n label: t(\"WITHOUT_DEPOSIT\"),\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n initFormField();\n }, []);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (bonusType == BonusTransactionMethod._WITH_DEPOSIT) {\n register(\n { name: \"depositIndex\" },\n { required: \"PLEASE_ENTER_TRANSACTION_ID\" }\n );\n unregister(\"amount\");\n } else {\n setDepositIndex();\n register(\n { name: \"amount\" },\n {\n required: \"PLEASE_ENTER_AMOUNT\",\n min: {\n value: 0,\n message: \"PLEASE_ENTER_VALUE_NOT_LESS_THAN_ZERO\",\n },\n }\n );\n unregister(\"depositIndex\");\n }\n }, [bonusType]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (!stringIsNullOrEmpty(memberId)) {\n getUserBonus();\n\n var apiUrl = ApiUrl._API_GET_TRANSACTION_BY_MEMBER_ID;\n apiUrl += \"?memberId=\" + memberId + \"&type=\" + TransactionType._DEPOSIT;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const depositTransaction = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (\n transaction,\n index\n ) {\n if (transaction[\"isDepositWithBonus\"] == false) {\n depositTransaction.push({\n label: transaction.id,\n value: index,\n });\n }\n });\n setDepositTransactions(responseJson[ApiKey._API_DATA_KEY]);\n setDepositTransactionOption(depositTransaction);\n }\n });\n }\n }, [memberId]);\n\n /// \n /// Author : -\n /// \n const getUserBonus = async () => {\n var userBonusApiUrl = ApiUrl._API_GET_USER_BONUS;\n userBonusApiUrl += \"?dayCheck=\" + true + \"&memberId=\" + memberId;\n await fetch(userBonusApiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bonusList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bonus) {\n bonusList.push({\n label:\n bonus.title +\n \" (\" +\n bonus.amount +\n (bonus.methodId == BonusMethodType._PERCENT ? \"%\" : \"\") +\n \")\",\n value: bonus.id,\n });\n });\n\n setBonusOption(bonusList);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n await fetch(ApiUrl._API_GET_USER_MEMBER_LIST, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const memberList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (member) {\n memberList.push({ label: member.username, value: member.id });\n });\n\n setMemberOption(memberList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const initFormField = () => {\n setMemberId(\"\");\n setDepositIndex();\n setBonusType(BonusTransactionMethod._WITH_DEPOSIT);\n setBonusId(\"\");\n setDepositTransactions([]);\n setDepositTransactionOption([]);\n setBonusOption([]);\n register({ name: \"memberId\" }, { required: \"PLEASE_SELECT_USER\" });\n register({ name: \"bonusId\" }, { required: \"PLEASE_SELECT_BONUS\" });\n register(\n { name: \"depositIndex\" },\n { required: \"PLEASE_ENTER_TRANSACTION_ID\" }\n );\n };\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n transactionTypeId: TransactionType._BONUS,\n memberId: memberId,\n channel: \"\",\n panel: PanelType._BACKOFFICE,\n bonusId: bonusId,\n };\n\n if (!stringIsNullOrEmpty(data.amount)) {\n params[\"amount\"] = data.amount;\n }\n\n if (depositIndex >= 0) {\n params[\"depositId\"] = depositTransactions[depositIndex].id;\n params[\"amount\"] = depositTransactions[depositIndex].amount;\n }\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n await fetch(ApiUrl._API_CREATE_TRANSACTION, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n e.target.reset();\n initFormField();\n }\n });\n };\n\n return (\n
    \n

    {t(\"BONUS\")}

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n option.value == bonusType\n )}\n options={_BONUS_TYPE}\n onChange={(e) => {\n setBonusType(e.value);\n }}\n />\n
    \n
    \n
    \n\n
    \n
    \n \n
    \n option.value == memberId\n )[0] !== undefined\n ? memberOption.filter(\n (option) => option.value == memberId\n )[0].label\n : \"\"\n }\n value={memberOption.filter(\n (option) => option.value == memberId\n )}\n onChange={(e) => {\n unregister(\"memberId\");\n setMemberId(e.value);\n }}\n />\n {errors.memberId && (\n
    \n {t(errors.memberId.message)}\n
    \n )}\n
    \n
    \n
    \n\n {bonusType == BonusTransactionMethod._WITH_DEPOSIT ? (\n
    \n
    \n \n
    \n option.value == depositIndex\n )}\n onChange={(e) => {\n unregister(\"depositIndex\");\n setDepositIndex(e.value);\n }}\n />\n {errors.depositIndex && (\n
    \n {t(errors.depositIndex.message)}\n
    \n )}\n
    \n
    \n
    \n ) : (\n
    \n
    \n \n
    \n \n {errors.amount && (\n
    \n {t(errors.amount.message)}\n
    \n )}\n
    \n
    \n
    \n )}\n\n
    \n
    \n \n
    \n option.value == bonusId\n )[0] !== undefined\n ? bonusOption.filter(\n (option) => option.value == bonusId\n )[0].label\n : \"\"\n }\n value={bonusOption.filter(\n (option) => option.value == bonusId\n )}\n onChange={(e) => {\n unregister(\"bonusId\");\n setBonusId(e.value);\n }}\n />\n {errors.bonusId && (\n
    \n {t(errors.bonusId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default Bonus;\n","import React from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelHeader } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\n\n/// \n/// Author : -\n/// \n\nconst InstantTransaction = (props) => {\n let history = useHistory();\n let data = [];\n let tableColumns = [\n {\n Header: \"ID\",\n accessor: \"ID\",\n width: 100,\n },\n {\n Header: \"Date\",\n accessor: \"date\",\n style: {\n whiteSpace: \"unset\",\n wordBreak: \"break-word\",\n },\n minWidth: 100,\n },\n {\n Header: \"Username\",\n accessor: \"username\",\n minWidth: 100,\n },\n {\n Header: \"FullName\",\n accessor: \"fullname\",\n minWidth: 100,\n },\n {\n Header: \"Type\",\n accessor: \"type\",\n minWidth: 100,\n },\n {\n Header: \"Status\",\n accessor: \"status\",\n Cell: ({ row }) => {\n return (\n \n {row.original.status == 1 ? (\n Approved\n ) : (\n Rejected\n )}\n \n );\n },\n minWidth: 100,\n },\n {\n Header: \"Amount\",\n accessor: \"amount\",\n minWidth: 100,\n },\n {\n Header: \"Channel\",\n accessor: \"channel\",\n minWidth: 100,\n },\n {\n Header: \"Bank\",\n accessor: \"bank\",\n minWidth: 100,\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n editBtnHandler(row.original);\n }}\n >\n Edit\n \n \n Delete\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n const editBtnHandler = (value) => {\n console.log(value);\n };\n\n const filterCaseInsensitive = (filter, row) => {\n const id = filter.pivotId || filter.id;\n if (row[id] !== null && typeof row[id] === \"string\") {\n return row[id] !== undefined\n ? String(row[id].toLowerCase()).startsWith(filter.value.toLowerCase())\n : true;\n } else {\n return String(row[filter.id]) === filter.value;\n }\n };\n\n return (\n
    \n

    Instant Transaction

    \n \n \n \n \n
    \n );\n};\n\nexport default InstantTransaction;\n","import React, { useState, useEffect } from \"react\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tWebUrl,\n\tTransactionStatus,\n\tTransactionType,\n\tLanguageKey,\n\tReadWritePermission,\n\tAccessRight,\n} from \"../../util/Constant\";\nimport {\n\tstringIsNullOrEmpty,\n\tnumberWithCommas,\n\tnavigateTo,\n\tcreateMultiPartFormBody\n} from \"../../util/Util\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from \"reactstrap\";\nimport { useForm } from \"react-hook-form\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport Dropzone from \"react-dropzone\";\n\n/// \n/// Author : -\n/// \nconst TransactionDetail = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tlet _dispatch = useDispatch();\n\tconst _location = useLocation();\n\tconst authState = useSelector((state) => state.authState);\n\tconst { register, unregister, handleSubmit, errors } = useForm();\n\n\tconst [txn, setTxn] = useState();\n\tconst [transactionDetail, setTransactionDetail] = useState([]);\n\tconst [auditDetail, setAuditDetail] = useState([]);\n\tconst [systemBalance, setSystemBalance] = useState([]);\n\tconst [previousTransaction, setPreviousTransaction] = useState([]);\n\tconst [withdrawalModal, setWithdrawalModal] = useState(false);\n\n\tconst [showDetails, setShowDetails] = useState(true);\n\n\tconst [fullName, setFullName] = useState(\"\");\n\n\tconst [bankAccountOption, setBankAccountOption] = useState([]);\n\n\tconst [auditBankOption, setAuditBankOption] = useState([]);\n\tconst [auditBankId, setAuditBankId] = useState();\n\tconst [auditBankAccountId, setAuditBankAccountId] = useState();\n\tconst [fetchPreviousDataUrl, setFetchPreviousDataUrl] = useState(\n\t\tApiUrl._API_GET_PREVIOUS_TRANSACTION +\n\t\t\t\"?transactionId=\" +\n\t\t\t_location.state.id\n\t);\n\tlet role1IsAllowed = checkIfPermissionExist(\n\t\tAccessRight._PAYMENT_GATEWAY_APPROVAL_PERMISSION,\n\t\ttrue\n\t);\n\tlet role3IsAllowed = checkIfPermissionExist(\n\t\tAccessRight._TRANSACTION_APPROVAL_PERMISSION,\n\t\ttrue\n\t);\n\tlet role4IsAllowed = checkIfPermissionExist(\n\t\tAccessRight._TRANSACTION_REJECTION_PERMISSION,\n\t\ttrue\n\t);\n\tconst [creditRemarkDetail, setCreditRemarkDetail] = useState([]);\n\tconst [adjustedAmount, setAdjustedAmount] = useState(0);\n\tconst [adjustedAmountError, setAdjustedAmountError] = useState(false);\n\tconst [wingWeiluyApprovalModal, setWingWeiluyApprovalModal] = useState(false);\n\n\tconst [receiptImage, setReceiptImage] = useState();\n\tconst [receiptFile, setReceiptFile] = useState([]);\n\tconst [isNewReceiptImage, setIsNewReceiptImage] = useState(false);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function getBankAccount() {\n\t\tvar apiUrl = ApiUrl._API_GET_BANK_ACCOUNT_BY_BANK_ID;\n\t\tapiUrl += \"?bankId=\" + auditBankId + \"&withdrawal=\" + true;\n\t\tlet responseJson = await ApiEngine.get(apiUrl);\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tconst bankAccountList = [];\n\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (bankAccount) {\n\t\t\t\tif (bankAccount.withdrawalStatus) {\n\t\t\t\t\tbankAccountList.push({\n\t\t\t\t\t\tlabel: bankAccount.accountNumber,\n\t\t\t\t\t\tvalue: bankAccount.id,\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tsetBankAccountOption(bankAccountList);\n\t\t} else {\n\t\t\t_dispatch(showMessage(false, t(responseJson[ApiKey._API_MESSAGE_KEY])));\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tif (!stringIsNullOrEmpty(auditBankId)) {\n\t\t\tgetBankAccount();\n\t\t}\n\t}, [auditBankId]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getTransactionDetail = async (transactionId, vfullname) => {\n\t\tlet responseJson = await ApiEngine.get(\n\t\t\tApiUrl._API_GET_TRANSACTION_BY_ID + \"?transactionId=\" + transactionId\n\t\t);\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet transaction = responseJson[ApiKey._API_DATA_KEY][\"transaction\"]\n\t\t\t\t? responseJson[ApiKey._API_DATA_KEY][\"transaction\"]\n\t\t\t\t: responseJson[ApiKey._API_DATA_KEY];\n\t\t\tif (!stringIsNullOrEmpty(transaction)) {\n\t\t\t\tsetTxn(transaction);\n\n\t\t\t\t// before approve, fullName is null so use vfullname\n\t\t\t\t// after approve, vfullname is null so will use fullName\n\t\t\t\tif (vfullname == null) {\n\t\t\t\t\tvfullname = fullName;\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\ttransaction.lockedByFullName != vfullname &&\n\t\t\t\t\ttransaction.lockedByFullName != null\n\t\t\t\t) {\n\t\t\t\t\t_dispatch(\n\t\t\t\t\t\tshowMessage(false, \"Transaction has been locked by another user\")\n\t\t\t\t\t);\n\t\t\t\t\tsetShowDetails(false);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet transactionDetails = [\n\t\t\t\t\t{ label: \"TRANSACTION_ID\", value: transaction.id },\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"TRANSACTION_TIME\",\n\t\t\t\t\t\tvalue: moment(transaction.transactionDateTime).format(\n\t\t\t\t\t\t\t\"YYYY-MM-DD HH:mm:ss\"\n\t\t\t\t\t\t),\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"USERNAME\",\n\t\t\t\t\t\tvalue: transaction.memberUsername,\n\t\t\t\t\t\tid: transaction.memberId,\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"SUBMIT_TIME\",\n\t\t\t\t\t\tvalue: moment(transaction.submitTime).format(\"YYYY-MM-DD HH:mm:ss\"),\n\t\t\t\t\t},\n\t\t\t\t\t{ label: \"EN_FULLNAME\", value: transaction.memberFullName },\n\t\t\t\t\t{ label: \"CN_FULLNAME\", value: transaction.memberCNFullName },\n\t\t\t\t\t{ label: \"IP\", value: transaction.ipAddress },\n\t\t\t\t\t{ label: \"TRANSACTION_AMOUNT\", value: transaction.amount },\n\t\t\t\t\t{ label: \"STATUS\", value: transaction.approvalStatusString },\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: transaction.transactionType.toUpperCase() + \"_CHANNEL\",\n\t\t\t\t\t\tvalue:\n\t\t\t\t\t\t\ttransaction.transactionTypeId == TransactionType._UPLINE_TRANSFER\n\t\t\t\t\t\t\t\t? \"Internal\"\n\t\t\t\t\t\t\t\t: transaction.channel,\n\t\t\t\t\t},\n\t\t\t\t\t{ label: \"PANEL\", value: transaction.panel },\n\t\t\t\t];\n\n\t\t\t\tif (transaction.transactionTypeId == TransactionType._DEPOSIT) {\n\t\t\t\t\tlet bankAccount = responseJson[ApiKey._API_DATA_KEY][\"bankAccount\"];\n\t\t\t\t\tif (!stringIsNullOrEmpty(bankAccount)) {\n\t\t\t\t\t\tlet extraDetails = [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"RECEIPT_REFERENCE\",\n\t\t\t\t\t\t\t\tvalue: responseJson[ApiKey._API_DATA_KEY][\"receiptReference\"],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"BANK\",\n\t\t\t\t\t\t\t\tvalue: bankAccount.bankName + \" - \" + bankAccount.accountNumber,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"RECEIPT\",\n\t\t\t\t\t\t\t\tvalue:\n\t\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"receipt\"] != null\n\t\t\t\t\t\t\t\t\t\t? t(\"HAVING_RECEIPT\")\n\t\t\t\t\t\t\t\t\t\t: t(\"NO_RECEIPT_SELECTED\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"BONUS\",\n\t\t\t\t\t\t\t\tvalue:\n\t\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"bonus\"] != null\n\t\t\t\t\t\t\t\t\t\t? responseJson[ApiKey._API_DATA_KEY][\"bonus\"].name\n\t\t\t\t\t\t\t\t\t\t: t(\"NO_BONUS_SELECTED\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t\ttransactionDetails = transactionDetails.concat(extraDetails);\n\t\t\t\t\t}\n\t\t\t\t} else if (\n\t\t\t\t\ttransaction.transactionTypeId == TransactionType._WITHDRAWAL\n\t\t\t\t) {\n\t\t\t\t\tlet extraDetails = [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\ttransaction.channel == \"TOPKASH\" ? \"PLATFORM\" : \"BANK_NAME\",\n\t\t\t\t\t\t\tvalue: responseJson[ApiKey._API_DATA_KEY][\"bankName\"],\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\ttransaction.channel == \"TOPKASH\"\n\t\t\t\t\t\t\t\t\t? \"TOPKASH_USERNAME\"\n\t\t\t\t\t\t\t\t\t: \"BANK_ACCOUNT_HOLDER_NAME\",\n\t\t\t\t\t\t\tvalue:\n\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"bankAccountHolderName\"],\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\ttransaction.channel == \"TOPKASH\"\n\t\t\t\t\t\t\t\t\t? \"TOPKASH_ID\"\n\t\t\t\t\t\t\t\t\t: \"BANK_ACCOUNT_NUMBER\",\n\t\t\t\t\t\t\tvalue: responseJson[ApiKey._API_DATA_KEY][\"bankAccountNumber\"],\n\t\t\t\t\t\t},\n\t\t\t\t\t];\n\t\t\t\t\ttransactionDetails = transactionDetails.concat(extraDetails);\n\t\t\t\t} else if (\n\t\t\t\t\ttransaction.transactionTypeId == TransactionType._ADJUSTMENT\n\t\t\t\t) {\n\t\t\t\t\ttransactionDetails.push({\n\t\t\t\t\t\tlabel: \"REMARK\",\n\t\t\t\t\t\tvalue: transaction.remark,\n\t\t\t\t\t});\n\t\t\t\t} else if (transaction.transactionTypeId == TransactionType._BONUS) {\n\t\t\t\t\tlet bonus = responseJson[ApiKey._API_DATA_KEY][\"bonus\"];\n\t\t\t\t\tif (!stringIsNullOrEmpty(bonus)) {\n\t\t\t\t\t\tlet extraDetails = [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"DEPOSIT_ID\",\n\t\t\t\t\t\t\t\tvalue:\n\t\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"depositId\"] != null\n\t\t\t\t\t\t\t\t\t\t? responseJson[ApiKey._API_DATA_KEY][\"depositId\"]\n\t\t\t\t\t\t\t\t\t\t: null,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"DEPOSIT_AMOUNT\",\n\t\t\t\t\t\t\t\tvalue: responseJson[ApiKey._API_DATA_KEY][\"depositAmount\"],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ label: \"MINIMUM_DEPOSIT\", value: bonus.minimumDeposit },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"MAXIMUM_BONUS_AMOUNT\",\n\t\t\t\t\t\t\t\tvalue: bonus.maximumBonusAmount,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ label: \"BONUS_TYPE\", value: bonus.bonusType },\n\t\t\t\t\t\t\t{ label: \"BONUS_METHOD\", value: bonus.methodName },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: \"BONUS_VALUE\",\n\t\t\t\t\t\t\t\tvalue: bonus.amount + \" \" + bonus.methodName,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{ label: \"BONUS_CAMPAIGN\", value: bonus.code },\n\t\t\t\t\t\t\t{ label: \"BONUSTURNOVER\", value: \"X \" + bonus.turnover },\n\t\t\t\t\t\t];\n\t\t\t\t\t\ttransactionDetails = transactionDetails.concat(extraDetails);\n\t\t\t\t\t}\n\t\t\t\t} else if (\n\t\t\t\t\ttransaction.transactionTypeId == TransactionType._UPLINE_TRANSFER\n\t\t\t\t) {\n\t\t\t\t\tlet extraDetails = [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"TARGET_MEMBER\",\n\t\t\t\t\t\t\tvalue: responseJson[ApiKey._API_DATA_KEY][\"memberUserFullName\"],\n\t\t\t\t\t\t},\n\t\t\t\t\t];\n\t\t\t\t\ttransactionDetails = transactionDetails.concat(extraDetails);\n\t\t\t\t}\n\n\t\t\t\tsetTransactionDetail(transactionDetails);\n\n\t\t\t\tlet auditDetails = [\n\t\t\t\t\t{ label: \"AUDITED_BY\", value: transaction.auditedFullName ?? \"-\" },\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"AUDITED_DATE_TIME\",\n\t\t\t\t\t\tvalue: transaction.auditedTime\n\t\t\t\t\t\t\t? moment(transaction.auditedTime).format(\"YYYY-MM-DD HH:mm:ss\")\n\t\t\t\t\t\t\t: \"-\",\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"AUDITED_REMARK\",\n\t\t\t\t\t\tvalue: transaction.auditRemark ? transaction.auditRemark : \"-\",\n\t\t\t\t\t},\n\t\t\t\t];\n\t\t\t\tsetAuditDetail(auditDetails);\n\n\t\t\t\tif (\n\t\t\t\t\ttransaction.transactionTypeId == TransactionType._CREDIT_REDEMPTION\n\t\t\t\t) {\n\t\t\t\t\tvar creditRemark = JSON.parse(transaction.remark);\n\n\t\t\t\t\tlet creditRemarkDetails = [\n\t\t\t\t\t\t{ label: \"PRODUCT_ID\", value: creditRemark.Id },\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"NAME\",\n\t\t\t\t\t\t\tvalue: creditRemark.Name,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"POINTS_NEEDED\",\n\t\t\t\t\t\t\tvalue: creditRemark.PointsNeeded,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"STOCK\",\n\t\t\t\t\t\t\tvalue: creditRemark.Stock,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"LIMIT_PER_MEMBER\",\n\t\t\t\t\t\t\tvalue: creditRemark.LimitPerMember,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"PRODUCT_TYPE\",\n\t\t\t\t\t\t\tvalue: creditRemark.ProductType,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"VALUE\",\n\t\t\t\t\t\t\tvalue: creditRemark.Value,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"ROLLOVER\",\n\t\t\t\t\t\t\tvalue: creditRemark.PointsNeeded,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"CREATED_TIME\",\n\t\t\t\t\t\t\tvalue: moment(creditRemark.CreatedTime).format(\n\t\t\t\t\t\t\t\t\"YYYY-MM-DD HH:mm:ss\"\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: \"UPDATED_TIME\",\n\t\t\t\t\t\t\tvalue: moment(creditRemark.UpdatedTime).format(\n\t\t\t\t\t\t\t\t\"YYYY-MM-DD HH:mm:ss\"\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t},\n\t\t\t\t\t];\n\t\t\t\t\tsetCreditRemarkDetail(creditRemarkDetails);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst init = async () => {\n\t\ttry {\n\t\t\tif (_location.state) {\n\t\t\t\tlet transactionId = _location.state.id;\n\n\t\t\t\tlet vfullname = \"\";\n\n\t\t\t\tvar apiUrl = ApiUrl._API_GET_ACCOUNT;\n\t\t\t\tapiUrl += \"?userId=\" + authState.userData.userId;\n\n\t\t\t\tfetch(apiUrl, {\n\t\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\t\theaders: {\n\t\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\t\t.then((response) => response.json())\n\t\t\t\t\t.then((responseJson) => {\n\t\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\t\tvfullname = responseJson[ApiKey._API_DATA_KEY][\"userFullName\"];\n\t\t\t\t\t\t\tsetFullName(vfullname);\n\t\t\t\t\t\t\tgetTransactionDetail(transactionId, vfullname);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\n\t\t\t\tlet userBankResponseJson = await ApiEngine.get(\n\t\t\t\t\tApiUrl._API_GET_USER_BANK\n\t\t\t\t);\n\t\t\t\tif (userBankResponseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst bankList = [];\n\t\t\t\t\tuserBankResponseJson[ApiKey._API_DATA_KEY].forEach(function (bank) {\n\t\t\t\t\t\tbankList.push({ label: bank.bankName, value: bank.id });\n\t\t\t\t\t});\n\t\t\t\t\tsetAuditBankOption(bankList);\n\t\t\t\t}\n\n\t\t\t\tlet balanceJson = await ApiEngine.get(\n\t\t\t\t\tApiUrl._API_GET_SYSTEM_BALANCE +\n\t\t\t\t\t\t\"?memberId=\" +\n\t\t\t\t\t\t_location.state.memberId\n\t\t\t\t);\n\n\t\t\t\tif (balanceJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetSystemBalance([balanceJson[ApiKey._API_DATA_KEY]]);\n\t\t\t\t} else {\n\t\t\t\t\tthrow balanceJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t\t}\n\n\t\t\t\tgetBankAccount();\n\t\t\t}\n\t\t} catch (ex) {\n\t\t\t_dispatch(showMessage(false, t(ex)));\n\t\t}\n\t};\n\n\tconst _systemBalanceColumns = [\n\t\t{\n\t\t\tHeader: t(\"DEPOSIT\"),\n\t\t\taccessor: \"approvedDeposit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.approvedDeposit) {\n\t\t\t\t\treturn {numberWithCommas(row.original.approvedDeposit)};\n\t\t\t\t} else {\n\t\t\t\t\treturn <>0;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"WITHDRAWAL\"),\n\t\t\taccessor: \"approvedWithdrawal\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.approvedWithdrawal) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{numberWithCommas(row.original.approvedWithdrawal)}\n\t\t\t\t\t\t\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\treturn <>0;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"BONUS\"),\n\t\t\taccessor: \"approvedBonus\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.approvedBonus) {\n\t\t\t\t\treturn {numberWithCommas(row.original.approvedBonus)};\n\t\t\t\t} else {\n\t\t\t\t\treturn <>0;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"ADJUSTMENT\"),\n\t\t\taccessor: \"approvedAdjustment\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.approvedAdjustment) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t{numberWithCommas(row.original.approvedAdjustment)}\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\treturn <>0;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"PENDING_DEPOSIT\"),\n\t\t\taccessor: \"pendingDeposit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.pendingDeposit) {\n\t\t\t\t\treturn {numberWithCommas(row.original.pendingDeposit)};\n\t\t\t\t} else {\n\t\t\t\t\treturn <>0;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"PENDING_WITHDRAWAL\"),\n\t\t\taccessor: \"pendingWithdrawal\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.pendingWithdrawal) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t{numberWithCommas(row.original.pendingWithdrawal)}\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\treturn <>0;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"PENDING_ADJUSTMENT\"),\n\t\t\taccessor: \"pendingAdjustment\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.pendingAdjustment) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t{numberWithCommas(row.original.pendingAdjustment)}\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\treturn <>0;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"PENDING_BONUS\"),\n\t\t\taccessor: \"pendingBonus\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.pendingBonus) {\n\t\t\t\t\treturn {numberWithCommas(row.original.pendingBonus)};\n\t\t\t\t} else {\n\t\t\t\t\treturn <>0;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t];\n\n\tconst _previousTransactionColumns = [\n\t\t{\n\t\t\tHeader: t(\"DATE\"),\n\t\t\taccessor: \"submitTime\",\n\t\t\tstyle: {\n\t\t\t\twhiteSpace: \"unset\",\n\t\t\t\twordBreak: \"break-word\",\n\t\t\t},\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{moment(row.original.submitTime).format(\"YYYY-MM-DD HH:mm:ss\")}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 150,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TYPE\"),\n\t\t\taccessor: \"transactionType\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"ID\",\n\t\t\taccessor: \"id\",\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"STATUS\"),\n\t\t\taccessor: \"approvalStatusString\",\n\t\t},\n\t\t{\n\t\t\tid: \"detail\",\n\t\t\tHeader: t(\"DETAIL\"),\n\t\t\taccessor: \"detail\",\n\t\t},\n\t\t{\n\t\t\tid: \"credit\",\n\t\t\tHeader: t(\"CREDIT\"),\n\t\t\taccessor: \"amount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.transactionTypeId != TransactionType._WITHDRAWAL) {\n\t\t\t\t\treturn <>{row.original.amount};\n\t\t\t\t} else {\n\t\t\t\t\treturn <>;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tid: \"debit\",\n\t\t\tHeader: t(\"DEBIT\"),\n\t\t\taccessor: \"amount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.transactionTypeId == TransactionType._WITHDRAWAL) {\n\t\t\t\t\treturn -{row.original.amount};\n\t\t\t\t} else {\n\t\t\t\t\treturn <>;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"LIMIT\"),\n\t\t\taccessor: \"limit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{row.original.limit};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TURNOVER\"),\n\t\t\taccessor: \"turnover\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn {row.original.turnover};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"DIFFERENCE\"),\n\t\t\taccessor: \"differences\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.differences < 0) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t{row.original.differences}\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\treturn <>{row.original.differences};\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tid: \"balance\",\n\t\t\tHeader: t(\"BALANCE\"),\n\t\t\taccessor: \"balance\",\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst processTransaction = (action) => {\n\t\tlet txnTypeId = txn.transactionTypeId;\n\n\t\tif (action == TransactionStatus._APPROVED) {\n\t\t\tif (txnTypeId == TransactionType._WITHDRAWAL) {\n\t\t\t\tsetWithdrawalModal(true);\n\t\t\t} else {\n\t\t\t\tupdateStatus(action, null);\n\t\t\t}\n\t\t} else if (action == TransactionStatus._REJECTED) {\n\t\t\tupdateStatus(action, null);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = (data, e) => {\n\t\tupdateStatus(TransactionStatus._APPROVED, auditBankAccountId);\n\t\tsetWithdrawalModal(false);\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst updateStatus = async (status, auditBankAccountId) => {\n\t\tlet apiUrl = ApiUrl._API_UPDATE_TRANSACTION_STATUS;\n\t\tlet transactionId = txn.id;\n\n\t\tapiUrl += \"?transactionId=\" + transactionId + \"&status=\" + status;\n\t\tif (!stringIsNullOrEmpty(auditBankAccountId)) {\n\t\t\tapiUrl += \"&auditBankAccountId=\" + auditBankAccountId;\n\t\t}\n\n\t\tlet responseJson = await ApiEngine.post(apiUrl);\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tgetTransactionDetail(transactionId);\n\t\t}\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t};\n\n\tconst handleAdjustedAmountChange = (event) => {\n\t\tconst adjustedAmount = event.target.value;\n\t\tsetAdjustedAmount(event.target.value);\n\t\t// Check if the entered age is within the desired range\n\t\tif (\n\t\t\tadjustedAmount < (txn.amount * 90) / 100 ||\n\t\t\tadjustedAmount > (txn.amount * 110) / 100\n\t\t) {\n\t\t\tsetAdjustedAmountError(true);\n\t\t} else {\n\t\t\tsetAdjustedAmountError(false);\n\t\t}\n\t};\n\n\tconst updateWingWeiLuyStatus = async (transaction, status) => {\n\n\t\tlet params = {\n\t\t\ttransactionId: transaction.id,\n\t\t\tstatus: status,\n\t\t\tamount: adjustedAmount,\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(receiptFile)) {\n\t\t\tparams[\"receiptFile\"] = receiptFile;\n\t\t}\n\n\t\tlet formBody = createMultiPartFormBody(params);\n\n\t\t_dispatch(setBusy());\n\n\n\t\tfetch(ApiUrl._API_UPDATE_WING_WEILUY_TRANSACTION_STATUS, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\n\t\t\t\t_dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n\t\t\t\tsetWingWeiluyApprovalModal(false);\n\t\t\t\tinit();\n\t\t\t});\n\t}\n\n\tconst handleWingWeiluyApproval = () => {\n\t\tsetWingWeiluyApprovalModal(!wingWeiluyApprovalModal);\n\t};\n\n\tconst logoDrop = (acceptedFiles, isDesktop) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\n\t\t\tsetReceiptFile(file);\n\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tsetIsNewReceiptImage(true);\n\t\t\t\tsetReceiptImage(reader.result);\n\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"TRANSACTION\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{t(\"TRANSACTION_DATA\")}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{transactionDetail.map((data, index) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(data.label)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{/*{data.label == \"USERNAME\" && txn.member.isTestAccount && (
    {txn.member.userFullName}
    )}*/}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{data.label == \"USERNAME\" &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttxn.member.isTestAccount && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"TEST_ACCOUNT\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{t(\"AUDIT_DATA\")}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t{auditDetail.map((data, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{creditRemarkDetail && creditRemarkDetail.length > 0 && (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t{t(\"REMARK\")}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{creditRemarkDetail.map((data, index) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t{txn?.approvalStatus == TransactionStatus._OPEN &&\n\t\t\t\t\t\t\t\tshowDetails && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t{!txn.isInstant ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{role3IsAllowed &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tshowDetails &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t!txn.enableAdjustment && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tprocessTransaction(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tTransactionStatus._APPROVED\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"APPROVE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t{role3IsAllowed &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tshowDetails &&\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttxn.enableAdjustment && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t handleWingWeiluyApproval()}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"APPROVE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t{role4IsAllowed && showDetails && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tprocessTransaction(TransactionStatus._REJECTED)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REJECT\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{role1IsAllowed && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tprocessTransaction(TransactionStatus._APPROVED)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"APPROVE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{t(\"SYSTEM_BALANCES\")}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{t(\"PREVIOUS_TRANSACTIONS\")}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\t {\n\t\t\t\t\tsetWithdrawalModal(!withdrawalModal);\n\t\t\t\t}}\n\t\t\t\tcentered={true}\n\t\t\t>\n\t\t\t\t
    \n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetWithdrawalModal(!withdrawalModal);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"PLEASE_SELECT_AUDIT_BANK_ACCOUNT\")}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == auditBankId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? auditBankOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == auditBankId\n\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tvalue={auditBankOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == auditBankId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tunregister(\"auditBankId\");\n\t\t\t\t\t\t\t\t\t\t\t\tsetAuditBankId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{errors.auditBankId && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.auditBankId.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == auditBankAccountId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? bankAccountOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == auditBankAccountId\n\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tvalue={bankAccountOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == auditBankAccountId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tunregister(\"auditBankAccountId\");\n\t\t\t\t\t\t\t\t\t\t\t\tsetAuditBankAccountId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{errors.auditBankAccountId && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.auditBankAccountId.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetWithdrawalModal(!withdrawalModal);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CANCEL\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t{wingWeiluyApprovalModal && (\n\t\t\t\t
    \n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetWingWeiluyApprovalModal(!wingWeiluyApprovalModal);\n\t\t\t\t\t\t\tsetAdjustedAmount(0);\n\t\t\t\t\t\t\tsetAdjustedAmountError(false);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tcentered={true}\n\t\t\t\t\t>\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tsetWingWeiluyApprovalModal(!wingWeiluyApprovalModal);\n\t\t\t\t\t\t\t\tsetAdjustedAmount(0);\n\t\t\t\t\t\t\t\tsetAdjustedAmountError(false);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"PLEASE_ENTER_ADJUSTED_AMOUNT\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{adjustedAmount == 0 ||\n\t\t\t\t\t\t\t\t\t\t\t\t(adjustedAmountError && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\"Adjusted amount must be a number between 10% ± of \" +\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttxn.amount}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{txn.transactionTypeId == TransactionType._WITHDRAWAL &&\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, true)\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(receiptImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetReceiptImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetReceiptFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tupdateWingWeiLuyStatus(txn, TransactionStatus._APPROVED);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"CONFIRM\")}\n\t\t\t\t\t\t\t{\" \"}\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetWingWeiluyApprovalModal(!wingWeiluyApprovalModal);\n\t\t\t\t\t\t\t\t\tsetAdjustedAmount(0);\n\t\t\t\t\t\t\t\t\tsetAdjustedAmountError(false);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"CANCEL\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t)}\n\t\t\n\t);\n};\n\nexport default TransactionDetail;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { createFormBody, createMultiPartFormBody, stringIsNullOrEmpty } from \"../../util/Util.js\";\nimport moment from 'moment';\nimport Dropzone from \"react-dropzone\";\n\n/// \n/// Author : -\n/// \n\nconst TnGSettings = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const [status, setStatus] = useState(true);\n const [initCheck, setInitCheck] = useState(false);\n const [startHour, setStartHour] = useState(0);\n const [startMinute, setStartMinute] = useState(0);\n const [endHour, setEndHour] = useState(0);\n const [endMinute, setEndMinute] = useState(0);\n const [sundayQRImageFile, setSundayQRImageFile] = useState([]);\n const [mondayQRImageFile, setMondayQRImageFile] = useState([]);\n const [tuesdayQRImageFile, setTuesdayQRImageFile] = useState([]);\n const [wednesdayQRImageFile, setWednesdayQRImageFile] = useState([]);\n const [thursdayQRImageFile, setThursdayQRImageFile] = useState([]);\n const [fridayQRImageFile, setFridayQRImageFile] = useState([]);\n const [saturdayQRImageFile, setSaturdayQRImageFile] = useState([]);\n const [isNewSundayQRImage, setIsNewSundayQRImage] = useState(false);\n const [isNewMondayQRImage, setIsNewMondayQRImage] = useState(false);\n const [isNewTuesdayQRImage, setIsNewTuesdayQRImage] = useState(false);\n const [isNewWednesdayQRImage, setIsNewWednesdayQRImage] = useState(false);\n const [isNewThursdayQRImage, setIsNewThursdayQRImage] = useState(false);\n const [isNewFridayQRImage, setIsNewFridayQRImage] = useState(false);\n const [isNewSaturdayQRImage, setIsNewSaturdayQRImage] = useState(false);\n const [sundayQR, setSundayQR] = useState();\n const [mondayQR, setMondayQR] = useState();\n const [tuesdayQR, setTuesdayQR] = useState();\n const [wednesdayQR, setWednesdayQR] = useState();\n const [thursdayQR, setThursdayQR] = useState();\n const [fridayQR, setFridayQR] = useState();\n const [saturdayQR, setSaturdayQR] = useState();\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n _dispatch(setBusy());\n init();\n setInitCheck(true);\n }, []);\n\n /// \n /// Author : -\n /// Used to set popup banner\n /// \n const QR_ImageDrop = (acceptedFiles, dayInWeek) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n switch (dayInWeek) {\n case 0:\n setSundayQRImageFile(file);\n const reader0 = new FileReader();\n reader0.onloadend = () => {\n setSundayQR(reader0.result);\n setIsNewSundayQRImage(true);\n };\n reader0.readAsDataURL(file);\n break;\n case 1:\n setMondayQRImageFile(file);\n const reader1 = new FileReader();\n reader1.onloadend = () => {\n setMondayQR(reader1.result);\n setIsNewMondayQRImage(true);\n };\n reader1.readAsDataURL(file);\n break;\n case 2:\n setTuesdayQRImageFile(file);\n const reader2 = new FileReader();\n reader2.onloadend = () => {\n setTuesdayQR(reader2.result);\n setIsNewTuesdayQRImage(true);\n };\n reader2.readAsDataURL(file);\n break;\n case 3:\n setWednesdayQRImageFile(file);\n const reader3 = new FileReader();\n reader3.onloadend = () => {\n setWednesdayQR(reader3.result);\n setIsNewWednesdayQRImage(true);\n };\n reader3.readAsDataURL(file);\n break;\n case 4:\n setThursdayQRImageFile(file);\n const reader4 = new FileReader();\n reader4.onloadend = () => {\n setThursdayQR(reader4.result);\n setIsNewThursdayQRImage(true);\n };\n reader4.readAsDataURL(file);\n break;\n case 5:\n setFridayQRImageFile(file);\n const reader5 = new FileReader();\n reader5.onloadend = () => {\n setFridayQR(reader5.result);\n setIsNewFridayQRImage(true);\n };\n reader5.readAsDataURL(file);\n break;\n case 6:\n setSaturdayQRImageFile(file);\n const reader6 = new FileReader();\n reader6.onloadend = () => {\n setSaturdayQR(reader6.result);\n setIsNewSaturdayQRImage(true);\n };\n reader6.readAsDataURL(file);\n break;\n default:\n break;\n }\n }\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n let apiUrl = ApiUrl._API_GET_USER_SYSTEM_SETTINGS + \"?type=settings\";\n let responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n data.map((keyValuePair, index) => {\n if (keyValuePair['key'] === 'TnGStartTime') {\n let startTimeStr = keyValuePair['value'];\n setStartHour(moment(startTimeStr, 'HH:mm:ss').get('hours'));\n setStartMinute(moment(startTimeStr, 'HH:mm:ss').get('minutes'));\n }\n if (keyValuePair['key'] === 'TnGEndTime') {\n let endTimeStr = keyValuePair['value'];\n setEndHour(moment(endTimeStr, 'HH:mm:ss').get('hours'));\n setEndMinute(moment(endTimeStr, 'HH:mm:ss').get('minutes'));\n }\n if (keyValuePair['key'] === 'TnGSundayQR') {\n setSundayQR(keyValuePair['value']);\n }\n if (keyValuePair['key'] === 'TnGMondayQR') {\n setMondayQR(keyValuePair['value']);\n }\n if (keyValuePair['key'] === 'TnGTuesdayQR') {\n setTuesdayQR(keyValuePair['value']);\n }\n if (keyValuePair['key'] === 'TnGWednesdayQR') {\n setWednesdayQR(keyValuePair['value']);\n }\n if (keyValuePair['key'] === 'TnGThursdayQR') {\n setThursdayQR(keyValuePair['value']);\n }\n if (keyValuePair['key'] === 'TnGFridayQR') {\n setFridayQR(keyValuePair['value']);\n }\n if (keyValuePair['key'] === 'TnGSaturdayQR') {\n setSaturdayQR(keyValuePair['value']);\n }\n if (keyValuePair['key'] === 'TnGStatus') {\n let trueOrFalse = (keyValuePair['value'] === 'true');\n setStatus(trueOrFalse);\n }\n })\n }\n _dispatch(setIdle());\n }\n\n const submitForm = async (data) => {\n let params = {\n 'startHour': data.startHour.length === 2 ? data.startHour : \"0\" + data.startHour,\n 'startMinute': data.startMinute.length === 2 ? data.startMinute : \"0\" + data.startMinute,\n 'endHour': data.endHour.length === 2 ? data.endHour : \"0\" + data.endHour,\n 'endMinute': data.endMinute.length === 2 ? data.endMinute : \"0\" + data.endMinute,\n 'isNewSundayQRImage': isNewSundayQRImage,\n 'isNewMondayQRImage': isNewMondayQRImage,\n 'isNewTuesdayQRImage': isNewTuesdayQRImage,\n 'isNewWednesdayQRImage': isNewWednesdayQRImage,\n 'isNewThursdayQRImage': isNewThursdayQRImage,\n 'isNewFridayQRImage': isNewFridayQRImage,\n 'isNewSaturdayQRImage': isNewSaturdayQRImage,\n 'status': data.status\n };\n\n if (!stringIsNullOrEmpty(sundayQRImageFile)) {\n params[\"sundayQR\"] = sundayQRImageFile;\n }\n if (stringIsNullOrEmpty(sundayQR)) {\n params[\"sundayQRRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(mondayQRImageFile)) {\n params[\"mondayQR\"] = mondayQRImageFile;\n }\n if (stringIsNullOrEmpty(mondayQR)) {\n params[\"mondayQRRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(tuesdayQRImageFile)) {\n params[\"tuesdayQR\"] = tuesdayQRImageFile;\n }\n if (stringIsNullOrEmpty(tuesdayQR)) {\n params[\"tuesdayQRRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(wednesdayQRImageFile)) {\n params[\"wednesdayQR\"] = wednesdayQRImageFile;\n }\n if (stringIsNullOrEmpty(wednesdayQR)) {\n params[\"wednesdayQRRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(thursdayQRImageFile)) {\n params[\"thursdayQR\"] = thursdayQRImageFile;\n }\n if (stringIsNullOrEmpty(thursdayQR)) {\n params[\"thursdayQRRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(fridayQRImageFile)) {\n params[\"fridayQR\"] = fridayQRImageFile;\n }\n if (stringIsNullOrEmpty(fridayQR)) {\n params[\"fridayQRRemoved\"] = true;\n }\n\n if (!stringIsNullOrEmpty(saturdayQRImageFile)) {\n params[\"saturdayQR\"] = saturdayQRImageFile;\n }\n if (stringIsNullOrEmpty(saturdayQR)) {\n params[\"saturdayQRRemoved\"] = true;\n }\n\n let formBody = createMultiPartFormBody(params);\n let apiUrl = ApiUrl._API_CREATE_OR_UPDATE_SYSTEM_SETTINGS + \"?type=TnG\";\n let responseJson = await ApiEngine.post(apiUrl, formBody);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n init();\n }\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n\n return (\n
    \n

    \n {t(\"TNG_SETTINGS\")}\n \n

    \n
    \n
    \n {initCheck && \n \n
    \n
    \n
    \n \n
    \n
    \n setStartHour(e.target.value)}\n min={0}\n max={23}\n ref={register({\n min: {\n value: 0,\n message:\n \"PLEASE_ENTER_VALUE_NOT_LESS_THAN_ZERO\",\n },\n max: {\n value: 23,\n message:\n \"PLEASE_ENTER_VALUE_NOT_MORE_THAN_23\",\n },\n })}\n />\n {errors.startHour && (\n
    \n {t(errors.startHour.message)}\n
    \n )}\n
    \n :\n
    \n setStartMinute(e.target.value)}\n min={0}\n max={59}\n ref={register({\n min: {\n value: 0,\n message:\n \"PLEASE_ENTER_VALUE_NOT_LESS_THAN_ZERO\",\n },\n max: {\n value: 59,\n message:\n \"PLEASE_ENTER_VALUE_NOT_MORE_THAN_59\",\n },\n })}\n />\n {errors.startMinute && (\n
    \n {t(errors.startMinute.message)}\n
    \n )}\n
    \n (GMT +8)\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setEndHour(e.target.value)}\n min={0}\n max={23}\n ref={register({\n min: {\n value: 0,\n message:\n \"PLEASE_ENTER_VALUE_NOT_LESS_THAN_ZERO\",\n },\n max: {\n value: 23,\n message:\n \"PLEASE_ENTER_VALUE_NOT_MORE_THAN_23\",\n },\n })}\n />\n {errors.endHour && (\n
    \n {t(errors.endHour.message)}\n
    \n )}\n
    \n :\n
    \n setEndMinute(e.target.value)}\n min={0}\n max={59}\n ref={register({\n min: {\n value: 0,\n message:\n \"PLEASE_ENTER_VALUE_NOT_LESS_THAN_ZERO\",\n },\n max: {\n value: 59,\n message:\n \"PLEASE_ENTER_VALUE_NOT_MORE_THAN_59\",\n },\n })}\n />\n {errors.endMinute && (\n
    \n {t(errors.endMinute.message)}\n
    \n )}\n
    \n (GMT +8)\n
    \n
    \n
    \n
    \n
    \n \n
    \n QR_ImageDrop(acceptedFiles, 0)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(sundayQR) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setSundayQR(\"\");\n setSundayQRImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n QR_ImageDrop(acceptedFiles, 1)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(mondayQR) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setMondayQR(\"\");\n setMondayQRImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n QR_ImageDrop(acceptedFiles, 2)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(tuesdayQR) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setTuesdayQR(\"\");\n setTuesdayQRImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n QR_ImageDrop(acceptedFiles, 3)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(wednesdayQR) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setWednesdayQR(\"\");\n setWednesdayQRImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n \n
    \n
    \n \n
    \n QR_ImageDrop(acceptedFiles, 4)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(thursdayQR) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setThursdayQR(\"\");\n setThursdayQRImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n \n
    \n
    \n \n
    \n QR_ImageDrop(acceptedFiles, 5)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(fridayQR) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setFridayQR(\"\");\n setFridayQRImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n \n
    \n
    \n \n
    \n QR_ImageDrop(acceptedFiles, 6)}\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(saturdayQR) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setSaturdayQR(\"\");\n setSaturdayQRImageFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n }\n \n \n \n );\n};\n\nexport default withRouter(TnGSettings);\n","import React, { useState, useEffect } from 'react';\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { createFormBody, createMultiPartFormBody, stringIsNullOrEmpty } from \"../../util/Util.js\";\nimport moment from 'moment';\n\nconst WithdrawalSettings = props => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const _history = useHistory();\n const [startHour, setStartHour] = useState(0);\n const [startMinute, setStartMinute] = useState(0);\n const [endHour, setEndHour] = useState(0);\n const [endMinute, setEndMinute] = useState(0);\n const [status, setStatus] = useState(false);\n const [initCheck, setInitCheck] = useState(false);\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n setInitCheck(true);\n }, []);\n\n async function init() {\n let apiUrl = ApiUrl._API_GET_USER_SYSTEM_SETTINGS + \"?type=settings\";\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n data.map((keyValuePair, index) => {\n if (keyValuePair['key'] === \"WithdrawalStartTime\") {\n let startTimeStr = keyValuePair['value'];\n setStartHour(moment(startTimeStr, 'HH:mm:ss').get('hours'));\n setStartMinute(moment(startTimeStr, 'HH:mm:ss').get('minutes'));\n }\n if (keyValuePair['key'] === \"WithdrawalEndTime\") {\n let endTimeStr = keyValuePair['value'];\n setEndHour(moment(endTimeStr, 'HH:mm:ss').get('hours'));\n setEndMinute(moment(endTimeStr, 'HH:mm:ss').get('minutes'));\n }\n if (keyValuePair['key'] === \"WithdrawalStatus\") {\n let trueOrFalse = (keyValuePair['value'] === 'true');\n setStatus(trueOrFalse);\n }\n });\n }\n }\n\n const submitForm = async (data) => {\n let params = {\n 'startHour': data.startHour.length === 2 ? data.startHour : \"0\" + data.startHour,\n 'startMinute': data.startMinute.length === 2 ? data.startMinute : \"0\" + data.startMinute,\n 'endHour': data.endHour.length === 2 ? data.endHour : \"0\" + data.endHour,\n 'endMinute': data.endMinute.length === 2 ? data.endMinute : \"0\" + data.endMinute,\n 'status': data.status\n };\n\n let formBody = createMultiPartFormBody(params);\n let apiUrl = ApiUrl._API_CREATE_OR_UPDATE_SYSTEM_SETTINGS + \"?type=Withdrawal\";\n let responseJson = await ApiEngine.post(apiUrl, formBody);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n init();\n }\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n\n return (\n
    \n

    \n {t(\"WITHDRAWAL_SETTING\")}\n \n

    \n
    \n
    \n {initCheck && \n \n
    \n
    \n
    \n \n
    \n
    \n setStartHour(e.target.value)}\n min={0}\n max={23}\n ref={register({\n min: {\n value: 0,\n message:\n \"PLEASE_ENTER_VALUE_NOT_LESS_THAN_ZERO\",\n },\n max: {\n value: 23,\n message:\n \"PLEASE_ENTER_VALUE_NOT_MORE_THAN_23\",\n },\n })}\n />\n {errors.startHour && (\n
    \n {t(errors.startHour.message)}\n
    \n )}\n
    \n :\n
    \n setStartMinute(e.target.value)}\n min={0}\n max={59}\n ref={register({\n min: {\n value: 0,\n message:\n \"PLEASE_ENTER_VALUE_NOT_LESS_THAN_ZERO\",\n },\n max: {\n value: 59,\n message:\n \"PLEASE_ENTER_VALUE_NOT_MORE_THAN_59\",\n },\n })}\n />\n {errors.startMinute && (\n
    \n {t(errors.startMinute.message)}\n
    \n )}\n
    \n (GMT +8)\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setEndHour(e.target.value)}\n min={0}\n max={23}\n ref={register({\n min: {\n value: 0,\n message:\n \"PLEASE_ENTER_VALUE_NOT_LESS_THAN_ZERO\",\n },\n max: {\n value: 23,\n message:\n \"PLEASE_ENTER_VALUE_NOT_MORE_THAN_23\",\n },\n })}\n />\n {errors.endHour && (\n
    \n {t(errors.endHour.message)}\n
    \n )}\n
    \n :\n
    \n setEndMinute(e.target.value)}\n min={0}\n max={59}\n ref={register({\n min: {\n value: 0,\n message:\n \"PLEASE_ENTER_VALUE_NOT_LESS_THAN_ZERO\",\n },\n max: {\n value: 59,\n message:\n \"PLEASE_ENTER_VALUE_NOT_MORE_THAN_59\",\n },\n })}\n />\n {errors.endMinute && (\n
    \n {t(errors.endMinute.message)}\n
    \n )}\n
    \n (GMT +8)\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    }\n
    \n
    \n
    \n )\n}\n\nexport default withRouter(WithdrawalSettings);","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport CreatableSelect from \"react-select/creatable\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n TransactionType,\n PanelType,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n AdjustmentTransactionTarget\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\nimport PinInput from 'react-pin-input';\nimport { Modal, ModalHeader, ModalBody } from \"reactstrap\";\n\n/// \n/// Author : -\n/// \nconst Adjustment = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setValue,\n trigger,\n control,\n } = useForm();\n const [memberOption, setMemberOption] = useState([]);\n const [memberId, setMemberId] = useState(\"\");\n const [fullScreen, setFullScreen] = useState(false);\n const [remarkOption, setRemarkOption] = useState([]);\n const [selectedMember, setSelectedMember] = useState();\n\n const [showPinEntry, setShowPinEntry] = useState(false);\n\n const [enteredAdjustmentData, setEnteredAdjustmentData] = useState({});\n const [enteredAdjustmentE, setEnteredAdjustmentE] = useState({});\n\n /// \n /// Author : -\n /// Editted : -\n /// \n useEffect(() => {\n register({ name: \"memberId\" }, { required: \"PLEASE_SELECT_MEMBER\" });\n\n /// For The Size Difference of Modal And Page\n if (props.id) {\n setFullScreen(true);\n }\n\n init();\n initFormField();\n }, []);\n\n /// \n /// Author : -\n /// Editted : - (Added Fetch to get IP Address)\n /// \n async function init() {\n try {\n _dispatch(setBusy());\n let responseJson = await ApiEngine.get(ApiUrl._API_GET_USER_REMARK);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const remarkList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (remark) {\n remarkList.push({\n label: remark.description,\n value: remark.description,\n });\n });\n\n setRemarkOption(remarkList);\n } else {\n throw t(responseJson[ApiKey._API_MESSAGE_KEY]);\n }\n } catch (error) {\n _dispatch(showMessage(false, error));\n } finally {\n _dispatch(setIdle());\n }\n }\n\n /// \n /// Author : -\n /// \n const initFormField = () => {\n if (stringIsNullOrEmpty(props.id)) {\n setMemberId(\"\");\n setValue(\"memberId\", \"\");\n getMemberList(\"\", null, { page: 1 });\n setSelectedMember(null);\n } else {\n setMemberId(props.id);\n setValue(\"memberId\", props.id);\n }\n setValue(\"remark\", \"\");\n };\n\n /// \n /// Author : -\n /// Editted : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n transactionTypeId: TransactionType._ADJUSTMENT,\n memberId: memberId,\n amount: data.amount,\n panel: PanelType._BACKOFFICE,\n remark: data.remark,\n adjustmentTarget: AdjustmentTransactionTarget._BONUS_WALLET\n };\n\n let formBody = createFormBody(params);\n\n let responseJson = await ApiEngine.post(\n ApiUrl._API_CREATE_TRANSACTION,\n formBody\n );\n\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n e.target.reset();\n initFormField();\n\n if (props.onComplete != null) {\n props.onComplete();\n }\n }\n\n setShowPinEntry(false);\n };\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id, balance: m.bonusWallet };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n async function onPinSubmit(data, e) {\n // verify pin\n let params = { transactionPinNumber: data };\n let formBody = createFormBody(params);\n let responseJson = await ApiEngine.post(ApiUrl._API_VERIFY_USER_TRANSACTION_PIN_NUMBER, formBody);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n submitForm(enteredAdjustmentData, enteredAdjustmentE);\n }\n else {\n _dispatch(showMessage(false, t(\"INCORRECT\") + \" \" + t(\"PIN_NUMBER\")));\n setShowPinEntry(false);\n }\n }\n\n async function checkPinValue(data, e) {\n // check if pin has 4 digits (valid pin)\n // if true then submit pin\n if (data.length == 4) {\n onPinSubmit(data);\n }\n\n }\n\n async function onSubmit(data, e) {\n setEnteredAdjustmentData(data);\n setEnteredAdjustmentE(e);\n\n setShowPinEntry(true);\n }\n\n return (\n
    \n

    \n {t(\"BONUS_WALLET_ADJUSTMENT\")}{\" \"}\n {props.id ? (\n {\n props.toggleModal(false);\n }}\n >\n \n \n ) : (\n \n )}\n

    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n {\n setValue(\"memberId\", e.value);\n setMemberId(e.value);\n setSelectedMember(e);\n trigger(\"memberId\");\n }}\n />\n {errors.memberId && (\n
    \n {t(errors.memberId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n parseFloat(value) != 0 ||\n \"PLEASE_DO_NOT_ENTER_ZERO\",\n min: {\n value: selectedMember\n ? selectedMember.balance * -1\n : 0,\n message: \"PLEASE_ENTER_VALUE_NOT_LESS_THAN\",\n },\n })}\n />\n {errors.amount && (\n
    \n {t(errors.amount.message, {\n value: selectedMember\n ? selectedMember.balance * -1\n : 0,\n })}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n return (\n option.value == value\n )[0] !== undefined\n ? remarkOption.filter(\n (option) => option.value == value\n )[0].label\n : t(\"PLEASE_ENTER_REMARK\")\n }\n value={remarkOption.filter(\n (option) => option.value == value\n )}\n onChange={(e, { action }) => {\n switch (action) {\n case \"select-option\":\n onChange(e.value);\n trigger(\"remark\");\n break;\n case \"create-option\":\n remarkOption.push(e);\n onChange(e.value);\n trigger(\"remark\");\n break;\n }\n }}\n />\n );\n }}\n />\n {errors.remark && (\n
    \n {t(errors.remark.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n
    \n \n {t(\"ENTER_YOUR_PIN\")}\n {\n checkPinValue(value, index);\n }}\n inputMode=\"numeric\"\n inputStyle={{ border: \"0\", margin: \"0px 10px\", width: \"40px\", height: \"40px\", backgroundColor: \"transparent\", borderBottom: \"2px solid #002e6c\" }}\n inputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\n regexCriteria={/^[ 0-9_@./#&+-]*$/}\n />\n {/**/}\n {/*
    {invalidPin && t(\"PIN_DOES_NOT_MATCH\")}{!invalidPin &&  }
    */}\n\n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default Adjustment;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport Select from \"react-select\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { ApiKey, ApiUrl, LanguageKey, DEFAULT_PAGE_SIZE, BetStatus } from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport BetDetailPanel from \"./BetDetailPanel.js\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport { CSVLink } from \"react-csv\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBetDetailReport = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const ALL_OPTION_LABEL = \"All\";\n const ALL_OPTION_VALUE = \"all\";\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n const [search, setSearch] = useState(false);\n const [activeTab, setActiveTab] = useState(0);\n const [productList, setProductList] = useState([]);\n const [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n const [categoryList, setCategoryList] = useState([]);\n const [selectedCategory, setSelectedCategory] = useState(ALL_OPTION_VALUE);\n const [categoryTabs, setCategoryTabs] = useState([]);\n const [username, setUsername] = useState(\"\");\n const [initFinish, setInitFinish] = useState(false);\n const [searchTrigger, setSearchTrigger] = useState(Date.now());\n const [currentDateTime, setCurrentDateTime] = useState(moment());\n const [selectedMember, setSelectedMember] = useState(\"\");\n const [label, setLabel] = useState(\"All\");\n const _STATUS_OPTIONS = [\n { value: \"\", label: 'All' },\n { value: BetStatus._PENDING_BET_STATUS, label: 'Pending' },\n { value: BetStatus._SETTLED_BET_STATUS, label: 'Settled' },\n { value: BetStatus._CANCELED_BET_STATUS, label: 'Canceled' },\n ];\n const [selectedStatus, setSelectedStatus] = useState(\"\");\n const [ticketId, setTicketId] = useState(\"\");\n const [betAmt, setBetAmt] = useState(\"\");\n const [betAmtCompare, setBetAmtCompare] = useState(\"=\");\n const [winLossAmt, setWinLossAmt] = useState(\"\");\n const [winLossAmtCompare, setWinLossAmtCompare] = useState(\"=\");\n\n const _math_compare = [\n { label: \"=\", value: \"=\" },\n { label: \">\", value: \">\" },\n { label: \"<\", value: \"<\" },\n { label: \">=\", value: \">=\" },\n { label: \"<=\", value: \"<=\" },\n ];\n\n let _exportHeaders2 = [\n { label: \"Username\", key: \"username\" },\n { label: \"Bet ID\", key: \"betId\" },\n { label: \"Valid Turonver\", key: \"validTurnover\" },\n { label: \"Win Lose\", key: \"winAmount\" },\n { label: \"Status\", key: \"status\" },\n { label: \"DateTime\", key: \"date\" },\n { label: \"Updated DateTime\", key: \"updatedTime\" },\n ];\n\n const [exportDatas2, setExportDatas2] = useState([]);\n\n /// \n /// Author : -\n /// \n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n /// \n /// Author : -\n /// \n const toggleTab = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (initFinish && props.id) {\n setUsername(props.username);\n setSearch(true);\n searchBtnHandler();\n }\n }, [initFinish]);\n\n useEffect(() => {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, selectedMember);\n if (selectedMember !== \"All\") {\n searchBtnHandler();\n }\n }, [selectedMember]);\n\n /// \n /// Author : -\n /// \n const init = async () => {\n await fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const accountProductOptionList = [\n { label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n accountProductOptionList.push({\n label: option.productName,\n value: option.productId,\n });\n });\n\n setProductList(accountProductOptionList);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n\n await fetch(ApiUrl._API_GET_PRODUCT_CATEGORY, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const productCategorys = [\n ];\n const productCategoryTabs = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (\n productCategory,\n index\n ) {\n productCategorys.push({\n label: productCategory.title,\n value: productCategory.id,\n });\n /// the data below will be passed to reacttable\n productCategoryTabs.push({\n label: productCategory.title,\n id: productCategory.id,\n fetchUrl: \"\",\n tempUrl: \"\",\n display: true,\n refreshRequired: true,\n });\n });\n setCategoryTabs(productCategoryTabs);\n setCategoryList(productCategorys);\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n\n fetch(ApiUrl._API_GET_SYSTEM_DATETIME, {\n method: ApiKey._API_GET,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n }).then((response) => response.json()).then((responseJson) => {\n setCurrentDateTime(moment(responseJson[ApiKey._API_DATA_KEY]));\n }, []);\n setInitFinish(true);\n };\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (initFinish) {\n setCategoryTabs(\n categoryTabs.map((x) => {\n if (activeTab == x.id && x.refreshRequired && x.display) {\n return {\n ...x,\n fetchUrl: x.tempUrl + \"&v=\" + Date.now(),\n refreshRequired: false,\n };\n } else {\n return { ...x };\n }\n })\n );\n }\n }, [searchTrigger]);\n\n /// \n /// Author : -\n /// \n const searchBtnHandler = async () => {\n let status = [];\n let apiUrl =\n ApiUrl._API_GET_BET_DETAIL_REPORT +\n \"?startDate=\" +\n startDate +\n \"&endDate=\" +\n endDate +\n \"&GroupDateRequired=false\" \n\n if (selectedMember !== \"\"){\n apiUrl += \"&memberId=\" + selectedMember;\n }\n\n if (selectedProduct != ALL_OPTION_VALUE) {\n apiUrl += \"&productId=\" + selectedProduct;\n }\n if (!stringIsNullOrEmpty(username)) {\n apiUrl += \"&username=\" + username;\n }\n if (!stringIsNullOrEmpty(selectedStatus)) {\n apiUrl += \"&ticketStatus=\" + selectedStatus.value;\n }\n if (!stringIsNullOrEmpty(ticketId)) {\n apiUrl += \"&ticketId=\" + ticketId;\n }\n if (!stringIsNullOrEmpty(betAmt)) {\n apiUrl += \"&betAmount=\" + betAmt;\n apiUrl += \"&betAmountFilter=\" + betAmtCompare;\n }\n if (!stringIsNullOrEmpty(winLossAmt)) {\n apiUrl += \"&winLossAmount=\" + winLossAmt;\n apiUrl += \"&winLossAmountFilter=\" + winLossAmtCompare;\n }\n\n let tempTabs = categoryTabs.map((x) => {\n if (selectedCategory == ALL_OPTION_VALUE || selectedCategory == x.id) {\n return {\n ...x,\n tempUrl: apiUrl + \"&categoryId=\" + x.id,\n display: true,\n refreshRequired: true,\n };\n } else {\n return {\n ...x,\n tempUrl: apiUrl + \"&categoryId=\" + x.id,\n display: false,\n refreshRequired: true,\n };\n }\n });\n\n setCategoryTabs(tempTabs);\n\n setActiveTab(\n tempTabs.filter((x) => x.display).length > 0\n ? tempTabs.filter((x) => x.display)[0]?.id\n : 0\n );\n setSearchTrigger(Date.now());\n };\n\n\n const exportToExcel = async () => {\n let status = [];\n let newFilteredDatas = [];\n let apiUrl =\n ApiUrl._API_GET_BET_DETAIL_REPORT +\n \"?startDate=\" +\n startDate +\n \"&endDate=\" +\n endDate +\n \"&GroupDateRequired=false\"\n\n if (selectedMember !== \"\") {\n apiUrl += \"&memberId=\" + selectedMember;\n }\n\n if (selectedProduct != ALL_OPTION_VALUE) {\n apiUrl += \"&productId=\" + selectedProduct;\n }\n if (!stringIsNullOrEmpty(username)) {\n apiUrl += \"&username=\" + username;\n }\n if (!stringIsNullOrEmpty(selectedStatus)) {\n apiUrl += \"&ticketStatus=\" + selectedStatus.value;\n }\n if (!stringIsNullOrEmpty(ticketId)) {\n apiUrl += \"&ticketId=\" + ticketId;\n }\n if (!stringIsNullOrEmpty(betAmt)) {\n apiUrl += \"&betAmount=\" + betAmt;\n apiUrl += \"&betAmountFilter=\" + betAmtCompare;\n }\n if (!stringIsNullOrEmpty(winLossAmt)) {\n apiUrl += \"&winLossAmount=\" + winLossAmt;\n apiUrl += \"&winLossAmountFilter=\" + winLossAmtCompare;\n }\n apiUrl += \"&count=\" + 99999;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n 'Content-Type': ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n },\n }).then((response) => response.json()).then((responseJson) => {\n console.log(responseJson[ApiKey._API_DATA_KEY])\n\n responseJson[ApiKey._API_DATA_KEY].data.map((item, index) => {\n let newFilteredData = {\n username: item.username,\n betId: item.betId,\n validTurnover: item.amount,\n winAmount: item.netProfit,\n date: item.date,\n updatedTime: item.updatedTime,\n status: item.statusString,\n };\n\n newFilteredDatas.push(newFilteredData)\n })\n }, []);\n\n\n setExportDatas2(newFilteredDatas);\n\n var myButton = document.getElementById('csvBtn');\n\n if (newFilteredDatas.length > 0) {\n myButton.click();\n }\n\n };\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(props.id) && t(\"BET_DETAIL_REPORT\")}\n

    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n product.value == selectedProduct\n )}\n options={productList}\n onChange={(e) => {\n setSelectedProduct(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n category.value == selectedCategory\n )}\n options={categoryList}\n onChange={(e) => {\n setSelectedCategory(e.value);\n }}\n />\n
    \n
    \n \n \n
    \n \n \n
    \n \n \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedStatus}\n options={_STATUS_OPTIONS}\n onChange={(e) => {\n setSelectedStatus(e)\n }}\n />\n
    \n
    \n \n \n
    \n \n \n
    \n \n \n \n
    \n
    \n {\n setTicketId(e.target.value);\n }}\n />\n
    \n
    \n \n \n
    \n \n
    \n
    \n \n \n \n
    \n {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabel(e.label);\n setSelectedMember(e.value);\n setUsername(e.label);\n }}\n />\n
    \n
    \n \n
    \n \n
    \n
    \n \n \n \n
    \n setBetAmtCompare(e.target.value)}\n >\n {_math_compare.map((data, index) => {return ()})}\n \n {\n setBetAmt(e.target.value);\n }}\n />\n
    \n
    \n \n
    \n \n
    \n
    \n \n \n \n
    \n setWinLossAmtCompare(e.target.value)}\n >\n {_math_compare.map((data, index) => {return ()})}\n \n {\n setWinLossAmt(e.target.value);\n }}\n />\n
    \n
    \n \n
    \n {\n setSearch(true);\n searchBtnHandler();\n }}\n >\n {t(\"SEARCH\")}\n \n {\n exportToExcel();\n }}\n >\n {t(\"EXPORT\")}\n \n
    \n \n \n \n \n
    \n \n \n \n \n {search && (\n \n
    \n \n \n {categoryTabs.map((category, index) => {\n return (\n \n

    {category.label}

    \n \n
    \n );\n })}\n \n
    \n \n )}\n \n );\n};\n\nexport default ManageBetDetailReport;\n","import React, { useState, useEffect, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { numberWithCommas, numberWithCurrencyFormat } from '../../util/Util';\n\n/// \n/// Author : -\n/// \n\nconst ManageDailySummaryReport = (props) => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [startDate, setStartDate] = useState(moment().format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().format(\"YYYY-MM-DD\"));\n const [dailySummaryDatas, setDailySummaryDatas] = useState([]);\n const [filteredDatas, setFilteredDatas] = useState([]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n getDailySummaryDatas();\n }, []);\n\n /// \n /// Author : -\n /// \n const getFilteredRecords = useCallback(({ page }) => {\n setFilteredDatas(page);\n }, []);\n\n /// \n /// Author : -\n /// \n const getDailySummaryDatas = async () => {\n _dispatch(setBusy());\n await fetch(\n ApiUrl._API_GET_DAILY_SUMMARY_REPORT +\n \"?startDate=\" +\n startDate +\n \"&endDate=\" +\n endDate,\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setDailySummaryDatas(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n _dispatch(setIdle());\n });\n };\n\n let _tableColumns = [\n {\n Header: t(\"DATE\"),\n accessor: \"date\",\n Footer: () => {\n return (\n \n {t(\"TOTAL\")}\n \n );\n },\n minWidth: 100,\n },\n {\n Header: t(\"REGISTER\"),\n accessor: \"register\",\n Footer: () => {\n let totalRegister = 0;\n for (let i = 0; i <= dailySummaryDatas.length; i++) {\n if (dailySummaryDatas[i] && dailySummaryDatas[i].register) {\n totalRegister += parseFloat(dailySummaryDatas[i].register);\n }\n }\n return {numberWithCommas(totalRegister)};\n },\n },\n {\n Header: t(\"FIRST_DEPOSIT\"),\n accessor: \"firstDeposit\",\n Cell: ({ row }) => {\n return (\n \n {numberWithCommas(row.original.firstDepositCount)} /{\" \"}\n {numberWithCommas(row.original.firstDepositApprovalCount)} /{\" \"}\n {numberWithCurrencyFormat(row.original.firstDepositTotalAmount, 3, true)}\n \n );\n },\n Footer: () => {\n let firstDepositCountTotal = 0;\n let firstDepositApprovalCountTotal = 0;\n let firstDepositTotalAmountTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i]) {\n firstDepositCountTotal += parseFloat(\n filteredDatas[i].original.firstDepositCount\n );\n firstDepositApprovalCountTotal += parseFloat(\n filteredDatas[i].original.firstDepositApprovalCount\n );\n firstDepositTotalAmountTotal += parseFloat(\n filteredDatas[i].original.firstDepositTotalAmount\n );\n }\n }\n return (\n \n {numberWithCommas(firstDepositCountTotal)} /{\" \"}\n {numberWithCommas(firstDepositApprovalCountTotal)} /{\" \"}\n {numberWithCurrencyFormat(firstDepositTotalAmountTotal, 3, true)}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"DEPOSIT\"),\n accessor: \"deposit\",\n Cell: ({ row }) => {\n return (\n \n {numberWithCommas(row.original.depositCount)} / {numberWithCommas(row.original.depositApprovalCount)} /{\" \"}\n {numberWithCurrencyFormat(row.original.depositTotalAmount, 3, true)}\n \n );\n },\n Footer: () => {\n let depositCountTotal = 0;\n let depositApprovalCountTotal = 0;\n let depositTotalAmountTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i]) {\n depositCountTotal += parseFloat(\n filteredDatas[i].original.depositCount\n );\n depositApprovalCountTotal += parseFloat(\n filteredDatas[i].original.depositApprovalCount\n );\n depositTotalAmountTotal += parseFloat(\n filteredDatas[i].original.depositTotalAmount\n );\n }\n }\n return (\n \n {numberWithCommas(depositCountTotal)} /{\" \"}\n {numberWithCommas(depositApprovalCountTotal)} /{\" \"}\n {numberWithCurrencyFormat(depositTotalAmountTotal, 3, true)}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"WITHDRAWAL\"),\n accessor: \"withdrawal\",\n Cell: ({ row }) => {\n return (\n \n {numberWithCommas(row.original.withdrawalCount)} /{\" \"}\n {numberWithCommas(row.original.withdrawalApprovalCount)} /{\" \"}\n {numberWithCurrencyFormat(row.original.withdrawalTotalAmount, 3, true)}\n \n );\n },\n Footer: () => {\n let withdrawalCountTotal = 0;\n let withdrawalApprovalCountTotal = 0;\n let withdrawalTotalAmountTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i]) {\n withdrawalCountTotal += parseFloat(\n filteredDatas[i].original.withdrawalCount\n );\n withdrawalApprovalCountTotal += parseFloat(\n filteredDatas[i].original.withdrawalApprovalCount\n );\n withdrawalTotalAmountTotal += parseFloat(\n filteredDatas[i].original.withdrawalTotalAmount\n );\n }\n }\n return (\n \n {numberWithCommas(withdrawalCountTotal)} /{\" \"}\n {numberWithCommas(withdrawalApprovalCountTotal)} /{\" \"}\n {numberWithCurrencyFormat(withdrawalTotalAmountTotal, 3, true)}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"ADJUSTMENT\"),\n accessor: \"adjustment\",\n Cell: ({ row }) => {\n return (\n \n {numberWithCommas(row.original.adjustmentCount)} /{\" \"}\n {numberWithCommas(row.original.adjustmentApprovalCount)} /{\" \"}\n {numberWithCurrencyFormat(row.original.adjustmentTotalAmount, 3, true)}\n \n );\n },\n Footer: () => {\n let adjustmentCountTotal = 0;\n let adjustmentTotalAmountTotal = 0;\n let adjustmentApprovalCountTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i]) {\n adjustmentCountTotal += parseFloat(\n filteredDatas[i].original.adjustmentCount\n );\n adjustmentApprovalCountTotal += parseFloat(\n filteredDatas[i].original.adjustmentApprovalCount\n );\n adjustmentTotalAmountTotal += parseFloat(\n filteredDatas[i].original.adjustmentTotalAmount\n );\n }\n }\n return (\n \n {numberWithCommas(adjustmentCountTotal)} /{\" \"}\n {numberWithCommas(adjustmentApprovalCountTotal)} /{\" \"}\n {numberWithCurrencyFormat(adjustmentTotalAmountTotal, 3, true)}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"Transfer\"),\n accessor: \"transfer\",\n Cell: ({ row }) => {\n return (\n \n {numberWithCommas(row.original.transferCount)} /{\" \"}\n {numberWithCommas(row.original.transferApprovalCount)} /{\" \"}\n {numberWithCurrencyFormat(row.original.transferTotalAmount, 3, true)}\n \n );\n },\n Footer: () => {\n let transferCountTotal = 0;\n let transferTotalAmountTotal = 0;\n let transferApprovalCountTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i]) {\n transferCountTotal += parseFloat(\n filteredDatas[i].original.transferCount\n );\n transferApprovalCountTotal += parseFloat(\n filteredDatas[i].original.transferApprovalCount\n );\n transferTotalAmountTotal += parseFloat(\n filteredDatas[i].original.transferTotalAmount\n );\n }\n }\n return (\n \n {numberWithCommas(transferCountTotal)} /{\" \"}\n {numberWithCommas(transferApprovalCountTotal)} /{\" \"}\n {numberWithCurrencyFormat(transferTotalAmountTotal, 3, true)}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"REBATE\"),\n accessor: \"rebate\",\n Footer: () => {\n let rebateTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i]) {\n rebateTotal += parseFloat(filteredDatas[i].original.rebate);\n }\n }\n return {numberWithCurrencyFormat(rebateTotal, 3, true)};\n },\n },\n {\n Header: t(\"TURNOVER\"),\n accessor: \"firstTurnover\",\n Cell: ({ row }) => {\n return (\n \n {numberWithCurrencyFormat(row.original.firstTurnover, 3, true)}\n \n );\n },\n Footer: () => {\n let validTurnoverTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i]) {\n validTurnoverTotal += parseFloat(\n filteredDatas[i].original.firstTurnover\n );\n }\n }\n return (\n \n {numberWithCurrencyFormat(validTurnoverTotal, 3, true)}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"PROFIT_LOSS\"),\n accessor: \"secondTurnover\",\n Cell: ({ row }) => {\n if (row.original.secondTurnover*-1 < 0) {\n return

    {numberWithCurrencyFormat(row.original.secondTurnover*-1, 3, true)}

    ;\n } else {\n return

    {numberWithCurrencyFormat(row.original.secondTurnover*-1, 3, true)}

    ;\n }\n },\n Footer: () => {\n let profitLossTotal = 0;\n for (let i = 0; i <= filteredDatas.length; i++) {\n if (filteredDatas[i]) {\n profitLossTotal += parseFloat(filteredDatas[i].original.secondTurnover);\n }\n }\n profitLossTotal*=-1;\n return {numberWithCurrencyFormat(profitLossTotal, 3, true)};\n },\n },\n ];\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"DAILY_SUMMARY_REPORT\")}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n {\n getDailySummaryDatas();\n }}\n className=\"btn btn-primary\"\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n );\n};\n\nexport default ManageDailySummaryReport;\n","import React, { useState } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { useTranslation } from \"react-i18next\";\nimport { LanguageKey } from \"../../util/Constant\";\n/// \n/// Author : -\n/// \n\nconst ManageChannelSummaryReport = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [calendarStartDate, setCalendarStartDate] = useState(\n moment().format(\"YYYY-MM-DD\")\n );\n const [calendarEndDate, setCalendarEndDate] = useState(\n moment().format(\"YYYY-MM-DD\")\n );\n\n let _tableColumns = [\n {\n Header: t(\"DATE\"),\n accessor: \"date\",\n Footer: () => {\n return (\n \n {t(\"TOTAL\")}\n \n );\n },\n minWidth: 100,\n },\n {\n Header: t(\"REGISTER\"),\n accessor: \"register\",\n },\n {\n Header: t(\"FIRST_DEPOSIT\"),\n accessor: \"firstDeposit1\",\n Cell: ({ row }) => {\n return (\n \n {row.original.firstDeposit1} / {row.original.firstDeposit2} /{\" \"}\n {row.original.firstDeposit3}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"DEPOSIT\"),\n accessor: \"deposit1\",\n Cell: ({ row }) => {\n return (\n \n {row.original.deposit1} / {row.original.deposit2} /{\" \"}\n {row.original.deposit3}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"WITHDRAWAL\"),\n accessor: \"withdrawal1\",\n Cell: ({ row }) => {\n return (\n \n {row.original.withdrawal1} / {row.original.withdrawal2} /{\" \"}\n {row.original.withdrawal3}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"ADJUSTMENT\"),\n accessor: \"adjustment1\",\n Cell: ({ row }) => {\n return (\n \n {row.original.adjustment1} / {row.original.adjustment2} /{\" \"}\n {row.original.adjustment3}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"GROSS_BALANCE\"),\n accessor: \"grossBalance\",\n },\n {\n Header: t(\"BONUS\"),\n accessor: \"bonus\",\n },\n {\n Header: t(\"REBATE\"),\n accessor: \"rebate\",\n },\n {\n Header: t(\"TURNOVER\"),\n accessor: \"turnover1\",\n Cell: ({ row }) => {\n return (\n \n {row.original.turnover1} / {row.original.turnover2}\n \n );\n },\n minWidth: 200,\n },\n {\n Header: t(\"PROFIT_LOSS\"),\n accessor: \"profitLoss\",\n Cell: ({ row }) => {\n if (row.original.profitLoss < 0) {\n return

    {row.original.profitLoss}

    ;\n } else {\n return

    {row.original.profitLoss}

    ;\n }\n },\n },\n ];\n\n const handleEvent = (event, picker) => {\n setCalendarStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setCalendarEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"CHANNEL_SUMMARY_REPORT\")}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n {t(\"REGISTER_CHANNEL\")}\n \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n );\n};\n\nexport default ManageChannelSummaryReport;\n","import React, { useState, useEffect, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useDispatch } from \"react-redux\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { CSVLink } from \"react-csv\";\n/// \n/// Author : -\n/// \n\nconst BankSummaryStatement = (props) => {\n\tconst [statementDatas, setStatementDatas] = useState([]);\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _dispatch = useDispatch();\n\tconst [exportDatas, setExportDatas] = useState([]);\n\tconst [filteredDatas, setFilteredDatas] = useState([]);\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst init = async () => {\n\t\t_dispatch(setBusy());\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_BANK_SUMMARY_STATEMENT +\n\t\t\t\t\"?bankAccountId=\" +\n\t\t\t\tprops.data.bankAccountId,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetStatementDatas(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t} else {\n\t\t\t\t\t_dispatch(\n\t\t\t\t\t\tshowMessage(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\t_dispatch(setIdle());\n\t\t\t});\n\t};\n\n\tlet _exportHeaders = [\n\t\t{ label: \"Bank\", key: \"bankName\" },\n\t\t{ label: \"Account\", key: \"bankAccountNumber\" },\n\t\t{ label: \"Date Time\", key: \"date\" },\n\t\t{ label: \"Credit\", key: \"credit\" },\n\t\t{ label: \"Debit\", key: \"debit\" },\n\t\t{ label: \"Remark\", key: \"remark\" },\n\t\t{ label: \"Admin\", key: \"admin\" },\n\t];\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"ID\",\n\t\t\taccessor: \"id\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{row.index + 1};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"BANK\"),\n\t\t\taccessor: \"bankName\",\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"ACCOUNT\"),\n\t\t\taccessor: \"bankAccountNumber\",\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"DATETIME\"),\n\t\t\taccessor: \"date\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{moment(row.original.date).format(\"YYYY-MM-DD HH:mm:ss\")};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"CREDIT\"),\n\t\t\taccessor: \"credit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.credit > 0) {\n\t\t\t\t\treturn <>{row.original.credit.toFixed(2)};\n\t\t\t\t} else {\n\t\t\t\t\treturn ;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"DEBIT\"),\n\t\t\taccessor: \"debit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.debit > 0) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t-{row.original.debit.toFixed(2)}\n\t\t\t\t\t\t\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\treturn ;\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"REMARK\"),\n\t\t\taccessor: \"remark\",\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"ADMIN\"),\n\t\t\taccessor: \"admin\",\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getFilteredRecords = useCallback(({ page }) => {\n\t\tupdateFilteredDatas(page);\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst updateFilteredDatas = (page) => {\n\t\tlet newFilteredDatas = [];\n\t\tlet newExportDatas = [];\n\t\tlet totalCredit = 0;\n\t\tlet totalDebit = 0;\n\t\tpage.map((data, index) => {\n\t\t\tlet row = data.original;\n\t\t\ttotalCredit += row.credit;\n\t\t\ttotalDebit += row.debit;\n\t\t\tlet newFilteredData = {\n\t\t\t\tbankName: row.bankName,\n\t\t\t\tbankAccountNumber: row.bankAccountNumber,\n\t\t\t\tdate: moment(row.date).format(\"YYYY-MM-DD HH:mm:ss\"),\n\t\t\t\tcredit: row.credit,\n\t\t\t\tdebit: row.debit,\n\t\t\t\tremark: row.remark,\n\t\t\t\tadmin: row.admin,\n\t\t\t};\n\t\t\tnewFilteredDatas.push(newFilteredData);\n\n\t\t\tnewFilteredData.status =\n\t\t\t\tnewFilteredData.status == true ? \"Active\" : \"Inactive\";\n\n\t\t\tnewExportDatas.push(newFilteredData);\n\t\t});\n\n\t\tsetFilteredDatas(newFilteredDatas);\n\t\tnewExportDatas.push(\n\t\t\t{\n\t\t\t\tbankName: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tbankName: \"Total\",\n\t\t\t\tcredit: totalCredit,\n\t\t\t\tdebit: totalDebit,\n\t\t\t\tbalance: totalCredit - totalDebit,\n\t\t\t}\n\t\t);\n\t\tsetExportDatas(newExportDatas);\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default BankSummaryStatement;\n","import React, { useState } from \"react\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../../util/Constant\";\nimport { createFormBody } from \"../../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst BankSummaryAddCreditDebit = (props) => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const { register, handleSubmit, errors, reset } = useForm();\n const [dateTime, setDateTime] = useState(\n moment().format(\"YYYY-MM-DD HH:mm:ss\")\n );\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n bankAccountId: props.data.bankAccountId,\n transactionTypeId: props.type,\n amount: data.amount,\n transactionDateTime: dateTime,\n remark: data.remark,\n };\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n await fetch(ApiUrl._API_CREATE_BANK_TRANSACTION, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n _dispatch(setIdle());\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n e.target.reset();\n props.getBankSummaryDatas();\n }\n });\n };\n\n return (\n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n {errors.amount && (\n
    {t(errors.amount.message)}
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n {\n setDateTime(\n moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\")\n );\n }}\n >\n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n {errors.remark && (\n
    {t(errors.remark.message)}
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n );\n};\n\nexport default BankSummaryAddCreditDebit;\n","import React, { useState, useEffect } from \"react\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport Select from \"react-select\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst BankSummaryAdjustment = (props) => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const {\n register,\n handleSubmit,\n errors,\n reset,\n setError,\n unregister,\n } = useForm();\n const [dateTime, setDateTime] = useState(\n moment().format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [bankAccountList, setBankAccountList] = useState(\n props.bankAccounts.filter(\n (bankAccount) => bankAccount.value != props.data.bankAccountId\n )\n );\n const [toBankAccount, setToBankAccount] = useState(\"\");\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register(\n { name: \"toBankAccount\" },\n { required: \"PLEASE_SELECT_BANK_ACCOUNT\" }\n );\n }, []);\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n if (stringIsNullOrEmpty(toBankAccount)) {\n setError(\"toBankAccount\", {\n type: \"required\",\n message: \"PLEASE_SELECT_BANK_ACCOUNT\",\n });\n return;\n }\n\n let params = {\n fromBankAccountId: props.data.bankAccountId,\n toBankAccountId: toBankAccount,\n amount: data.amount,\n transactionDateTime: dateTime,\n remark: data.remark,\n };\n\n let formBody = createFormBody(params);\n _dispatch(setBusy());\n\n await fetch(ApiUrl._API_CREATE_BANK_TRANSACTION, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n e.target.reset();\n register(\n { name: \"toBankAccount\" },\n { required: \"PLEASE_SELECT_BANK_ACCOUNT\" }\n );\n props.getBankSummaryDatas();\n }\n });\n };\n\n return (\n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n option.value == toBankAccount\n )[0] !== undefined\n ? bankAccountList.filter(\n (option) => option.value == toBankAccount\n )[0].label\n : \"\"\n }\n value={bankAccountList.filter(\n (option) => option.value == toBankAccount\n )}\n onChange={(e) => {\n unregister(\"toBankAccount\");\n setToBankAccount(e.value);\n }}\n />\n {errors.toBankAccount && (\n
    \n {t(errors.toBankAccount.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n \n {errors.amount && (\n
    {t(errors.amount.message)}
    \n )}\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n {\n setDateTime(\n moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\")\n );\n }}\n >\n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n {errors.remark && (\n
    {t(errors.remark.message)}
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n );\n};\n\nexport default BankSummaryAdjustment;\n","import React, { useState, useEffect, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalHeader,\n\tModalBody,\n} from \"reactstrap\";\nimport moment from \"moment\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tBankTransactionType,\n\tRole,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport BankSummaryStatement from \"./BankSummaryStatement.js\";\nimport BankSummaryAddCreditDebit from \"./bankSummary/BankSummaryAddCreditDebit.js\";\nimport BankSummaryAdjustment from \"./bankSummary/BankSummaryAdjustment.js\";\nimport { CSVLink } from \"react-csv\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBankSummaryReport = (props) => {\n\tconst _dispatch = useDispatch();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [filteredDatas, setFilteredDatas] = useState([]);\n\tconst [bankSummaryDatas, setBankSummaryDatas] = useState([]);\n\tconst [bankSummaryDatas2, setBankSummaryDatas2] = useState([]);\n\tconst [creditModal, setCreditModal] = useState(false);\n\tconst [debitModal, setDebitModal] = useState(false);\n\tconst [adjustmentModal, setAdjustmentModal] = useState(false);\n\tconst [statementModal, setStatementModal] = useState(false);\n\n\tconst [modalState, setModalState] = useState([]);\n\tconst [exportDatas, setExportDatas] = useState([]);\n\tconst [exportDatas2, setExportDatas2] = useState([]);\n\tconst [bankAccountDatas, setBankAccountDatas] = useState([]);\n\n\tconst _userData = useSelector((state) => state.authState.userData);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"months\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"months\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetBankSummaryDatas();\n\t\tgetAllBankStatementDatas();\n\t}, [startDate, endDate]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getBankSummaryDatas = async () => {\n\t\t_dispatch(setBusy());\n\t\tawait fetch(ApiUrl._API_GET_BANK_SUMMARY_REPORT, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetBankSummaryDatas(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t\tconst bankAccountList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].map((bankAccount, index) => {\n\t\t\t\t\t\tbankAccountList.push({\n\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\tbankAccount.bankAccountNumber +\n\t\t\t\t\t\t\t\t\" [\" +\n\t\t\t\t\t\t\t\tbankAccount.bankName +\n\t\t\t\t\t\t\t\t\"]\",\n\t\t\t\t\t\t\tvalue: bankAccount.bankAccountId,\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t\tsetBankAccountDatas(bankAccountList);\n\t\t\t\t} else {\n\t\t\t\t\t_dispatch(\n\t\t\t\t\t\tshowMessage(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\t_dispatch(setIdle());\n\t\t\t});\n\t};\n\n\tasync function getAllBankStatementDatas() {\n\t\t_dispatch(setBusy());\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_ALL_BANK_SUMMARY_STATEMENT +\n\t\t\t\t\"?StartDate=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&EndDate=\" +\n\t\t\t\tendDate,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetBankSummaryDatas2(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t\tupdateFilteredDatas2(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t} else {\n\t\t\t\t\t_dispatch(\n\t\t\t\t\t\tshowMessage(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\t_dispatch(setIdle());\n\t\t\t});\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggleCreditModal = () => {\n\t\tsetCreditModal(!creditModal);\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggleDebitModal = () => {\n\t\tsetDebitModal(!debitModal);\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggleAdjustmentModal = () => {\n\t\tsetAdjustmentModal(!adjustmentModal);\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggleStatementModal = () => {\n\t\tsetStatementModal(!statementModal);\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getFilteredRecords = useCallback(({ page }) => {\n\t\tupdateFilteredDatas(page);\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst updateFilteredDatas = (page) => {\n\t\tlet newFilteredDatas = [];\n\t\tlet newExportDatas = [];\n\t\tlet totalCredit = 0;\n\t\tlet totalDebit = 0;\n\t\tpage.map((data, index) => {\n\t\t\tlet row = data.original;\n\t\t\ttotalCredit += row.credit;\n\t\t\ttotalDebit += row.debit;\n\t\t\tlet newFilteredData = {\n\t\t\t\tbankName: row.bankName,\n\t\t\t\tbankAccountHolderName: row.bankAccountHolderName,\n\t\t\t\tbankAccountNumber: row.bankAccountNumber,\n\t\t\t\tstatus: row.status,\n\t\t\t\tcredit: row.credit,\n\t\t\t\tdebit: row.debit,\n\t\t\t\tbalance: row.balance,\n\t\t\t};\n\t\t\tnewFilteredDatas.push(newFilteredData);\n\n\t\t\tnewFilteredData.status =\n\t\t\t\tnewFilteredData.status == true ? \"Active\" : \"Inactive\";\n\n\t\t\tnewExportDatas.push(newFilteredData);\n\t\t});\n\t\tsetFilteredDatas(newFilteredDatas);\n\t\tnewExportDatas.push(\n\t\t\t{\n\t\t\t\tbankName: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tbankName: \"Total\",\n\t\t\t\tcredit: totalCredit,\n\t\t\t\tdebit: totalDebit,\n\t\t\t\tbalance: totalCredit - totalDebit,\n\t\t\t}\n\t\t);\n\t\tsetExportDatas(newExportDatas);\n\t};\n\n\tlet _exportHeaders = [\n\t\t{ label: \"Bank\", key: \"bankName\" },\n\t\t{ label: \"Bank Account Holder Name\", key: \"bankAccountHolderName\" },\n\t\t{ label: \"Bank Account Number\", key: \"bankAccountNumber\" },\n\t\t{ label: \"Status\", key: \"status\" },\n\t\t{ label: \"Credit\", key: \"credit\" },\n\t\t{ label: \"Debit\", key: \"debit\" },\n\t\t{ label: \"Balance\", key: \"balance\" },\n\t];\n\n\tlet _exportHeaders2 = [\n\t\t{ label: \"Bank\", key: \"bankName\" },\n\t\t{ label: \"Account\", key: \"bankAccountNumber\" },\n\t\t{ label: \"Date Time\", key: \"date\" },\n\t\t{ label: \"Credit\", key: \"credit\" },\n\t\t{ label: \"Debit\", key: \"debit\" },\n\t\t{ label: \"Remark\", key: \"remark\" },\n\t\t{ label: \"Admin\", key: \"admin\" },\n\t];\n\n\tconst updateFilteredDatas2 = (data) => {\n\t\tlet newFilteredDatas = [];\n\t\tlet newExportDatas = [];\n\t\tlet totalCredit = 0;\n\t\tlet totalDebit = 0;\n\n\t\tdata.map((item, index) => {\n\t\t\tlet row = item;\n\t\t\ttotalCredit += row.credit;\n\t\t\ttotalDebit += row.debit;\n\t\t\tlet newFilteredData = {\n\t\t\t\tbankName: row.bankName,\n\t\t\t\tbankAccountNumber: row.bankAccountNumber,\n\t\t\t\tdate: moment(row.date).format(\"YYYY-MM-DD HH:mm:ss\"),\n\t\t\t\tcredit: row.credit,\n\t\t\t\tdebit: row.debit,\n\t\t\t\tremark: row.remark,\n\t\t\t\tadmin: row.admin,\n\t\t\t};\n\t\t\tnewFilteredDatas.push(newFilteredData);\n\n\t\t\tnewFilteredData.status =\n\t\t\t\tnewFilteredData.status == true ? \"Active\" : \"Inactive\";\n\n\t\t\tnewExportDatas.push(newFilteredData);\n\t\t});\n\n\t\t//setFilteredDatas(newFilteredDatas);\n\t\tsetExportDatas2(newExportDatas);\n\t};\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: t(\"BANK\"),\n\t\t\taccessor: \"bankName\",\n\t\t\tFooter: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{t(\"TOTAL\")}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"BANK_ACCOUNT_HOLDER_NAME\"),\n\t\t\taccessor: \"bankAccountHolderName\",\n\t\t\tstyle: {\n\t\t\t\twhiteSpace: \"unset\",\n\t\t\t\twordBreak: \"break-word\",\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"BANK_ACCOUNT_NUMBER\"),\n\t\t\taccessor: \"bankAccountNumber\",\n\t\t\tstyle: {\n\t\t\t\twhiteSpace: \"unset\",\n\t\t\t\twordBreak: \"break-word\",\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"BANK_STATUS\"),\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{row.original.status == 1 ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"SUSPENDED\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"CREDIT\"),\n\t\t\taccessor: \"credit\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t\n\t\t\t\t\t{parseFloat(\n\t\t\t\t\t\tMath.floor(row.original.credit * Math.pow(10, 2)) / Math.pow(10, 2)\n\t\t\t\t\t).toFixed(2)}\n\t\t\t\t\n\t\t\t),\n\t\t\tFooter: (row) => {\n\t\t\t\tlet creditTotal = 0;\n\t\t\t\tfor (let i = 0; i <= filteredDatas.length; i++) {\n\t\t\t\t\tif (filteredDatas[i]) {\n\t\t\t\t\t\tcreditTotal += parseFloat(filteredDatas[i].credit);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst creditT = parseFloat(\n\t\t\t\t\tMath.floor(creditTotal * Math.pow(10, 2)) / Math.pow(10, 2)\n\t\t\t\t).toFixed(2);\n\t\t\t\treturn {creditT};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"DEBIT\"),\n\t\t\taccessor: \"debit\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t\n\t\t\t\t\t{row.original.debit > 0 ? \"-\" : \"\"}\n\t\t\t\t\t{parseFloat(\n\t\t\t\t\t\tMath.floor(row.original.debit * Math.pow(10, 2)) / Math.pow(10, 2)\n\t\t\t\t\t).toFixed(2)}\n\t\t\t\t\n\t\t\t),\n\t\t\tFooter: () => {\n\t\t\t\tlet debitTotal = 0;\n\t\t\t\tfor (let i = 0; i <= filteredDatas.length; i++) {\n\t\t\t\t\tif (filteredDatas[i]) {\n\t\t\t\t\t\tdebitTotal += parseFloat(filteredDatas[i].debit);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst debitT = parseFloat(\n\t\t\t\t\tMath.floor(debitTotal * Math.pow(10, 2)) / Math.pow(10, 2)\n\t\t\t\t).toFixed(2);\n\t\t\t\treturn -{debitT};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"BALANCE\"),\n\t\t\taccessor: \"balance\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t\n\t\t\t\t\t{parseFloat(\n\t\t\t\t\t\tMath.floor(row.original.balance * Math.pow(10, 2)) / Math.pow(10, 2)\n\t\t\t\t\t).toFixed(2)}\n\t\t\t\t\n\t\t\t),\n\t\t\tFooter: () => {\n\t\t\t\tlet balanceTotal = 0;\n\n\t\t\t\tfor (let i = 0; i < filteredDatas.length; i++) {\n\t\t\t\t\tif (filteredDatas[i]) {\n\t\t\t\t\t\tbalanceTotal += parseFloat(filteredDatas[i].balance);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst balanceT = parseFloat(\n\t\t\t\t\tMath.floor(balanceTotal * Math.pow(10, 2)) / Math.pow(10, 2)\n\t\t\t\t).toFixed(2);\n\t\t\t\treturn {balanceT};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{_userData.userRoleId != Role._SUPER_COMPANY && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetModalState(row.original);\n\t\t\t\t\t\t\t\t\t\t\ttoggleCreditModal();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"CREDIT\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetModalState(row.original);\n\t\t\t\t\t\t\t\t\t\t\ttoggleDebitModal();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"DEBIT\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetModalState(row.original);\n\t\t\t\t\t\t\t\t\t\t\ttoggleAdjustmentModal();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"ADJUSTMENT\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetModalState(row.original);\n\t\t\t\t\t\t\t\t\ttoggleStatementModal();\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"STATEMENT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"BANK_SUMMARY_REPORT\")}

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{t(\"BANK_BALANCE_CREDIT\")}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{t(\"BANK_BALANCE_DEBIT\")}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{t(\"BANK_BALANCE_TRANSFER\")}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t{t(\"ACCOUNT_STATEMENT\")}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ManageBankSummaryReport;\n","import React, { useState } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useEffect } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { numberWithCurrencyFormat } from \"../../util/Util\";\n\n/// \n/// Author : -\n/// \n\nconst ManageMemberReport = (props) => {\n\tconst _dispatch = useDispatch();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().format(\"YYYY-MM-DD\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().format(\"YYYY-MM-DD\")\n\t);\n\tconst [memberReportDatas, setMemberReportDatas] = useState([]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetMemberReport();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getMemberReport = async () => {\n\t\t_dispatch(setBusy());\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_MEMBER_REPORT +\n\t\t\t\t\"?startDate=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&endDate=\" +\n\t\t\t\tendDate,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetMemberReportDatas(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t} else {\n\t\t\t\t\t_dispatch(\n\t\t\t\t\t\tshowMessage(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\t_dispatch(setIdle());\n\t\t\t});\n\t};\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: t(\"USERNAME\"),\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{t(row.original.username)};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"FULLNAME\"),\n\t\t\taccessor: \"fullName\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{t(row.original.fullName)};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{row.original.status == 1 ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"SUSPENDED\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"LAST_LOGIN\"),\n\t\t\taccessor: \"lastLoginDate\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{moment(row.original.lastLoginDate).format(\"YYYY-MM-DD HH:mm:ss\")}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_DEPOSIT\"),\n\t\t\taccessor: \"deposit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.deposit))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.deposit) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.deposit);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_WITHDRAWAL\"),\n\t\t\taccessor: \"withdrawal\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.withdrawal))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.withdrawal) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.withdrawal);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_BONUSES\"),\n\t\t\taccessor: \"bonuses\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.bonuses))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.bonuses) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.bonuses);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"CLAIMED_COMMISSION\"),\n\t\t\taccessor: \"claimedCommission\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.claimedCommission),\n\t\t\t\t\t\t\t3\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.ClaimedCommission) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.claimedCommission);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"UNCLAIMED_COMMISSION\"),\n\t\t\taccessor: \"unclaimedCommission\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.unclaimedCommission),\n\t\t\t\t\t\t\t3\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.unclaimedCommission) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.unclaimedCommission);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_VALID_TURNOVER\"),\n\t\t\taccessor: \"validTurnover\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(row.original.validTurnover))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.validTurnover) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.validTurnover);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_WIN_AMOUNT\"),\n\t\t\taccessor: \"winAmount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.winAmount))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.winAmount) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.winAmount);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_LOSS\"),\n\t\t\taccessor: \"totalLoss\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.totalLoss))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.totalLoss) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.totalLoss);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_WINLOSE\"),\n\t\t\taccessor: \"totalWinLose\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.totalWinLose))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.totalWinLose) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.totalWinLose);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"MEMBER_REPORT\")}

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t getMemberReport()}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ManageMemberReport;\n","import React, { useState, useRef } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n _TICKET_STATUS,\n DEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport {\n stringIsNullOrEmpty,\n isObjectEmpty,\n numberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Select from \"react-select\";\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst ManageWinLossReport = (props) => {\n let _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [reportData, setReportData] = useState({\n viewerReportList: [],\n downlineReportList: [],\n });\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [userHierachy, setUserHierachy] = useState([]);\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n var _userId = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"userId\"]\n );\n const [allMembers, setAllMembers] = useState([]);\n const [gameRecord, setGameRecord] = useState([]);\n const [showGameRecord, setShowGameRecord] = useState(false);\n const [selectedMember, setSelectedMember] = useState(\n useSelector((state) => state[\"authState\"][\"userData\"][\"userId\"])\n );\n const [ticketViewingMember, setTicketViewingMember] = useState();\n const [gameDetailUrl, setGameDetailUrl] = useState(\"\");\n const [overallInfo, setOverallInfo] = useState({});\n const _OVERALL_KEYS = {\n AMOUNT: \"TOTAL_AMOUNT\",\n WIN: \"TOTAL_WIN\",\n };\n const _PAGING_COUNT = 10;\n const [selectedFilterMember, setSelectedFilterMember] = useState();\n\n // This is added for the sub reports total \"footer\"\n const [ticketStatus, setTicketStatus] = useState(\"\");\n const _REPORT_REF = useRef();\n const _DOWNLINE_REPORT_REF = useRef();\n const _NODE_THEAD = \"THEAD\";\n const _TEXT_RED = \"text-red\";\n\n let _gameRecordColumns = [\n {\n Header: \"DATE\",\n accessor: \"date\",\n Cell: ({ row }) =>\n moment(row.original.date).format(\"YYYY-MM-DD HH:mm:ss\"),\n disableSortBy: true,\n Footer: \"Total\",\n },\n {\n Header: \"SETTLED_ON\",\n accessor: \"updatedTime\",\n Cell: ({ row }) => {\n if (row.original.updatedTime != \"-\") {\n return moment(row.original.updatedTime).format(\"YYYY-MM-DD HH:mm:ss\");\n } else {\n return \"-\";\n }\n },\n disableSortBy: true,\n Footer: \"\",\n },\n {\n Header: \"GAME\",\n accessor: \"gameName\",\n disableSortBy: true,\n Footer: \"\",\n },\n {\n Header: \"DESCRIPTION\",\n accessor: \"remark\",\n Cell: ({ row }) => {\n return (\n <>\n {row.original.betId}\n
    \n \n {!stringIsNullOrEmpty(row.original.remark)\n ? \" - \" + row.original.remark\n : \"\"}\n \n
    \n \n );\n },\n disableSortBy: true,\n Footer: \"\",\n },\n {\n Header: \"AMOUNT\",\n accessor: \"amount\",\n disableSortBy: true,\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.amount));\n },\n Footer: ({ page }) => {\n let totalAmount = 0;\n if (!isObjectEmpty(overallInfo) && overallInfo[_OVERALL_KEYS.AMOUNT]) {\n totalAmount = parseFloat(overallInfo[_OVERALL_KEYS.AMOUNT]);\n }\n return (\n \n {numberWithCurrencyFormat(totalAmount, 3, true)}\n \n );\n },\n },\n {\n Header: \"STATUS\",\n accessor: \"statusString\",\n disableSortBy: true,\n Footer: \"\",\n },\n {\n Header: \"STRIKE\",\n accessor: \"winAmount\",\n disableSortBy: true,\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.winAmount));\n },\n Footer: ({ page }) => {\n let totalWin = 0;\n if (!isObjectEmpty(overallInfo) && overallInfo[_OVERALL_KEYS.WIN]) {\n totalWin = parseFloat(overallInfo[_OVERALL_KEYS.WIN]);\n }\n return (\n \n {numberWithCurrencyFormat(totalWin, 3, true)}\n \n );\n },\n },\n {\n Header: \"NET_PROFIT\",\n accessor: \"netProfit\",\n Cell: ({ row }) => {\n let profit = parseFloat(row.original.netProfit);\n return (\n \n {numberWithCurrencyFormat(profit, 3, true)}\n \n );\n },\n disableSortBy: true,\n Footer: ({ page }) => {\n let winLossTotal = 0;\n if (\n !isObjectEmpty(overallInfo) &&\n overallInfo[_OVERALL_KEYS.WIN] &&\n overallInfo[_OVERALL_KEYS.AMOUNT]\n ) {\n winLossTotal =\n parseFloat(overallInfo[_OVERALL_KEYS.WIN]) -\n parseFloat(overallInfo[_OVERALL_KEYS.AMOUNT]);\n }\n return (\n \n {numberWithCurrencyFormat(winLossTotal, 3, true)}\n \n );\n },\n },\n ];\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n async function readReport(memberId, searchDownline = true) {\n try {\n var apiUrl =\n ApiUrl._API_GET_WINLOSS_REPORT +\n \"?dateFrom=\" +\n startDate +\n \"&dateTo=\" +\n endDate +\n \"&searchDownline=\" +\n searchDownline;\n\n if (!stringIsNullOrEmpty(memberId)) {\n apiUrl += \"&memberId=\" + memberId;\n }\n\n var responseJson = await ApiEngine.get(apiUrl);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setReportData(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n apiUrl = ApiUrl._API_GET_MEMBER_HIERACHY;\n\n if (!stringIsNullOrEmpty(memberId)) {\n apiUrl += \"?memberId=\" + memberId;\n }\n\n responseJson = await ApiEngine.get(apiUrl);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setUserHierachy(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n checkNegativeCells(_DOWNLINE_REPORT_REF);\n checkNegativeCells(_REPORT_REF);\n } catch (error) {\n _dispatch(showMessage(false, t(error)));\n }\n }\n\n function checkNegativeCells(ref) {\n if (ref.current) {\n Array.from(ref.current.childNodes.values()).map((section) => {\n if (section.nodeName != _NODE_THEAD) {\n Array.from(section.childNodes.values()).map((tr) => {\n Array.from(tr.childNodes.values()).map((td) => {\n if (\n !isNaN(parseFloat(td.innerText)) &&\n parseFloat(td.innerText) < 0\n ) {\n td.classList.add(_TEXT_RED);\n }\n });\n });\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n async function viewGameRecord(userId, status) {\n setTicketViewingMember(userId);\n let apiUrl =\n ApiUrl._API_GET_GAME_RECORD_BY_MEMBER +\n \"?memberId=\" +\n userId +\n \"&OnlyAcceptMember=true\";\n apiUrl +=\n \"&startDate=\" +\n moment(startDate).format(\"YYYY-MM-DD HH:mm:ss\") +\n \"&endDate=\" +\n moment(endDate).format(\"YYYY-MM-DD HH:mm:ss\");\n apiUrl += \"&ticketStatus=\" + status;\n\n setGameDetailUrl(apiUrl);\n setShowGameRecord(true);\n }\n\n /// \n /// Author : -\n /// \n const renderHierarchyLine = () => {\n let startRenderLink = false;\n return userHierachy.map((x, i) => {\n if (startRenderLink == false && x[\"id\"] == _userId) {\n startRenderLink = true;\n }\n return (\n <>\n {startRenderLink ? (\n {\n readReport(x[\"id\"]);\n }}\n >\n {x[\"username\"]}\n \n ) : (\n {x[\"username\"]}\n )}\n {userHierachy.length != i + 1 ? \" / \" : \"\"}\n \n );\n });\n };\n\n /// \n /// Author : -\n /// \n function getOverallInfo(info) {\n setOverallInfo(info);\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n (page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == _PAGING_COUNT,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(props.id) && t(\"WINLOSS_REPORT\")}\n

    \n \n \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n {\n setSelectedFilterMember(e);\n setSelectedMember(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n {\n readReport(selectedMember, false);\n }}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n
    {renderHierarchyLine()}
    \n {reportData.viewerReportList.length != 0 && (\n
    \n \n \n \n {t(\"USERNAME\")}\n {t(\"TOTAL_TURNOVER\")}\n {t(\"TOTAL_WINLOSE\")}\n {t(\"TOTAL_BONUS\")}\n {t(\"TOTAL_COMMISSION\")}\n \n {t(\"DOWNLINE\")}\n \n \n {t(\"PERSONAL\")}\n \n \n \n {t(\"DOWNLINE\")}\n {t(\"DOWNLINE_TURNOVER\")}\n {t(\"DOWNLINE_WINLOSE\")}\n {t(\"DOWNLINE_BONUS\")}\n {t(\"DOWNLINE_COMMISSION\")}\n {t(\"TURNOVER\")}\n {t(\"WINLOSE\")}\n {t(\"BONUS\")}\n {t(\"COMMISSION\")}\n {t(\"NET_PROFIT\")}\n {t(\"MARGIN\")}\n \n \n \n {reportData.viewerReportList.map((item, index) => {\n return (\n \n \n {\n readReport(item[\"userId\"]);\n }}\n >\n {item[\"username\"]}\n \n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"totalTurnover\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"totalWinLoss\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"totalBonus\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"totalCommission\"]),\n 3,\n true\n )}\n \n {item[\"totalDownline\"]}\n \n {numberWithCurrencyFormat(\n parseFloat(item[\"downlineTurnOver\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"downlineWinLoss\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"downlineBonus\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"downlineCommission\"]),\n 3,\n true\n )}\n \n \n {\n viewGameRecord(item[\"userId\"], \"\");\n }}\n >\n {numberWithCurrencyFormat(\n parseFloat(item[\"ownTurnover\"]),\n 3,\n true\n )}\n \n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"ownWinLoss\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"ownBonus\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"ownCommission\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"netProfit\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"margin\"]),\n 3,\n true\n )}\n \n \n );\n })}\n \n \n \n
    \n )}\n\n {reportData.downlineReportList.length != 0 && (\n
    \n \n \n \n {t(\"USERNAME\")}\n {t(\"TOTAL_TURNOVER\")}\n {t(\"TOTAL_WINLOSE\")}\n {t(\"TOTAL_BONUS\")}\n {t(\"TOTAL_COMMISSION\")}\n \n {t(\"DOWNLINE\")}\n \n \n {t(\"PERSONAL\")}\n \n \n \n {t(\"DOWNLINE\")}\n {t(\"DOWNLINE_TURNOVER\")}\n {t(\"DOWNLINE_WINLOSE\")}\n {t(\"DOWNLINE_BONUS\")}\n {t(\"DOWNLINE_COMMISSION\")}\n {t(\"TURNOVER\")}\n {t(\"WINLOSE\")}\n {t(\"BONUS\")}\n {t(\"COMMISSION\")}\n {t(\"NET_PROFIT\")}\n {t(\"MARGIN\")}\n \n \n \n {reportData.downlineReportList.map((item, index) => {\n return (\n \n \n {\n readReport(item[\"userId\"]);\n }}\n >\n {item[\"username\"]}\n \n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"totalTurnover\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"totalWinLoss\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"totalBonus\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"totalCommission\"]),\n 3,\n true\n )}\n \n {item[\"totalDownline\"]}\n \n {numberWithCurrencyFormat(\n parseFloat(item[\"downlineTurnOver\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"downlineWinLoss\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"downlineBonus\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"downlineCommission\"]),\n 3,\n true\n )}\n \n \n {\n viewGameRecord(item[\"userId\"], \"\");\n }}\n >\n {numberWithCurrencyFormat(\n parseFloat(item[\"ownTurnover\"]),\n 3,\n true\n )}\n \n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"ownWinLoss\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"ownBonus\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"ownCommission\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"netProfit\"]),\n 3,\n true\n )}\n \n \n {numberWithCurrencyFormat(\n parseFloat(item[\"margin\"]),\n 3,\n true\n )}\n \n \n );\n })}\n \n \n \n \n \n {t(\"TOTAL\")}\n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.totalTurnover,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.totalWinLoss,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.totalBonus,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.totalCommission,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.totalDownline,\n 0\n )\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.downlineTurnOver,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.downlineWinLoss,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.downlineBonus,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.downlineCommission,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.ownTurnover,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.ownWinLoss,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.ownBonus,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.ownCommission,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.netProfit,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n {numberWithCurrencyFormat(\n parseFloat(\n reportData.downlineReportList.reduce(\n (total, data) => total + data.margin,\n 0\n )\n ),\n 3,\n true\n )}\n \n \n \n \n \n
    \n )}\n \n \n {\n setShowGameRecord(false);\n setTicketStatus(\"\");\n }}\n style={{ paddingBottom: \"100px\" }}\n className=\"modal-lg\"\n keyboard={true}\n >\n {\n setShowGameRecord(false);\n setTicketStatus(\"\");\n }}\n >\n {t(\"SUMMARY\")}\n \n \n
    \n
    \n
    \n \n x[\"value\"] == ticketStatus\n )}\n onChange={(e) => {\n setTicketStatus(e.value);\n viewGameRecord(ticketViewingMember, e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n \n {\n setShowGameRecord(false);\n setTicketStatus(\"\");\n }}\n >\n {t(\"CLOSE\")}\n \n \n \n \n );\n};\n\nexport default ManageWinLossReport;\n","import React, { useState, useRef, useEffect, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n ApiKey,\n ApiUrl,\n WebUrl,\n LanguageKey,\n _TICKET_STATUS,\n DEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport {\n stringIsNullOrEmpty,\n isObjectEmpty,\n numberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Select from \"react-select\";\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst ManageTallyWinLossReport = (props) => {\n let _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const ALL_OPTION_LABEL = \"All\";\n const ALL_OPTION_VALUE = \"all\";\n const [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n const [productList, setProductList] = useState([]);\n const [reportData, setReportData] = useState([]);\n const [filteredDatas, setFilteredDatas] = useState([]);\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [userHierachy, setUserHierachy] = useState([]);\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n var _userId = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"userId\"]\n );\n const [allMembers, setAllMembers] = useState([]);\n const [gameRecord, setGameRecord] = useState([]);\n const [showGameRecord, setShowGameRecord] = useState(false);\n const [selectedMember, setSelectedMember] = useState(\n useSelector((state) => state[\"authState\"][\"userData\"][\"userId\"])\n );\n const [ticketViewingMember, setTicketViewingMember] = useState();\n const [gameDetailUrl, setGameDetailUrl] = useState(\"\");\n const [overallInfo, setOverallInfo] = useState({});\n const _OVERALL_KEYS = {\n AMOUNT: \"TOTAL_AMOUNT\",\n WIN: \"TOTAL_WIN\",\n };\n const _PAGING_COUNT = 50;\n const [selectedFilterMember, setSelectedFilterMember] = useState();\n\n\n const [timeZone, setTimeZone] = useState([-4]);\n var _TIMEZONE_OPTION = [\n { label: \"(GMT-11:00) Pago Pago\", value: -11 },\n { label: \"(GMT-10:00) Pacific/Honolulu\", value: -10 },\n { label: \"(GMT-08:00) America/Los_Angeles\", value: -8 },\n { label: \"(GMT-07:00) America/Denver\", value: -7 },\n { label: \"(GMT-06:00) America/Chicago\", value: -6 },\n { label: \"(GMT-05:00) America/New_York\", value: -5 },\n { label: \"(GMT-04:00) America/Guyana\", value: -4 },\n { label: \"(GMT-03:00) America/Santiago\", value: -3 },\n { label: \"(GMT-02:00) America/Sao_Paulo\", value: -2 },\n { label: \"(GMT-01:00) Atlantic/Azores\", value: -1 },\n { label: \"(GMT+00:00) Europe/London\", value: 0 },\n { label: \"(GMT+01:00) Europe/Berlin\", value: 1 },\n { label: \"(GMT+02:00) Europe/Athens\", value: 2 },\n { label: \"(GMT+03:00) Europe/Istanbul\", value: 3 },\n { label: \"(GMT+04:00) Europe/Samara\", value: 4 },\n { label: \"(GMT+05:00) Asia/Karachi\", value: 5 },\n { label: \"(GMT+06:00) Asia/Dhaka\", value: 6 },\n { label: \"(GMT+07:00) Asia/Bangkok\", value: 7 },\n { label: \"(GMT+08:00) Asia/Singapore\", value: 8 },\n { label: \"(GMT+09:00) Asia/Seoul\", value: 9 },\n { label: \"(GMT+10:00) Asia/Magadan\", value: 10 },\n { label: \"(GMT+11:00) Australia/Sydney\", value: 11 },\n { label: \"(GMT+12:00) Pacific/Majuro\", value: 12 },\n { label: \"(GMT+13:00) Pacific/Auckland\", value: 13 },\n { label: \"(GMT+14:00) Pacific/Apia\", value: 14 },\n ];\n const [gameType, setGametype] = useState([0]);\n var _GAMETYPE_OPTION = [\n { label: \"CreatedTime\", value: 0 },\n { label: \"UpdatedTime\", value: 1 },\n ];\n /// \n /// Author : -\n /// this is used to get the latest filtered record from reacttable\n /// \n const getFilteredRecords = useCallback(({ page }) => {\n setFilteredDatas(page);\n }, []);\n\n\n // This is added for the sub reports total \"footer\"\n const [ticketStatus, setTicketStatus] = useState(\"\");\n const _REPORT_REF = useRef();\n const _DOWNLINE_REPORT_REF = useRef();\n const _NODE_THEAD = \"THEAD\";\n const _TEXT_RED = \"text-red\";\n /// \n /// Author : -\n /// \n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n async function readReport(memberId, searchDownline = true) {\n try {\n var apiUrl =\n ApiUrl._API_GET_TALLY_WINLOSS_REPORT +\n \"?dateFrom=\" +\n startDate +\n \"&dateTo=\" +\n endDate +\n \"&zone=\" +\n timeZone +\n \"&gameType=\" +\n gameType;\n\n if (!stringIsNullOrEmpty(memberId)) {\n apiUrl += \"&memberId=\" + memberId;\n }\n\n if (selectedProduct != ALL_OPTION_VALUE) {\n apiUrl += \"&productid=\" + selectedProduct;\n }\n\n var responseJson = await ApiEngine.get(apiUrl);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setReportData(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n apiUrl = ApiUrl._API_GET_MEMBER_HIERACHY;\n\n if (!stringIsNullOrEmpty(memberId)) {\n apiUrl += \"?memberId=\" + memberId;\n }\n\n responseJson = await ApiEngine.get(apiUrl);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setUserHierachy(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n checkNegativeCells(reportData);\n } catch (error) {\n _dispatch(showMessage(false, t(error)));\n }\n }\n\n function checkNegativeCells(ref) {\n if (ref.current) {\n Array.from(ref.current.childNodes.values()).map((section) => {\n if (section.nodeName != _NODE_THEAD) {\n Array.from(section.childNodes.values()).map((tr) => {\n Array.from(tr.childNodes.values()).map((td) => {\n if (\n !isNaN(parseFloat(td.innerText)) &&\n parseFloat(td.innerText) < 0\n ) {\n td.classList.add(_TEXT_RED);\n }\n });\n });\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n async function viewGameRecord(userId, status) {\n setTicketViewingMember(userId);\n let apiUrl =\n ApiUrl._API_GET_GAME_RECORD_BY_MEMBER +\n \"?memberId=\" +\n userId +\n \"&OnlyAcceptMember=true\";\n apiUrl +=\n \"&startDate=\" +\n moment(startDate).format(\"YYYY-MM-DD HH:mm:ss\") +\n \"&endDate=\" +\n moment(endDate).format(\"YYYY-MM-DD HH:mm:ss\");\n apiUrl += \"&ticketStatus=\" + status;\n\n setGameDetailUrl(apiUrl);\n setShowGameRecord(true);\n }\n\n\n /// \n /// Author : -\n /// \n function getOverallInfo(info) {\n setOverallInfo(info);\n }\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n await fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const accountProductOptionList = [\n { label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n accountProductOptionList.push({\n label: option.productName,\n value: option.id,\n });\n });\n\n setProductList(accountProductOptionList);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n }\n let _tableColumns = [\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n disableSortBy: true,\n Cell: ({ row }) => {\n return (\n window.open(WebUrl._URL_USERNAME_BET_DETAIL_REPORT + \"?username=\" + row.original.alias + \"&startDate=\" + startDate + \"&endDate=\" + endDate + \"&zone=\" + timeZone + \"&productId=\" + row.original.productId + \"&filterBy=\" + gameType)}>\n {row.original.username}\n \n );\n },\n Footer: () => {\n return {t(\"TOTAL\")}: \n },\n },\n {\n Header: \"Alias\",\n accessor: \"alias\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n },\n {\n Header: \"Product\",\n accessor: \"product\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n },\n {\n Header: \"Total Outstanding\",\n accessor: \"TotalOutstanding\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n Cell: ({ row }) => {\n let totalOutstanding = parseFloat(row.original.totalOutstanding);\n return (\n \n {numberWithCurrencyFormat(totalOutstanding, 3, true)}\n \n );\n },\n Footer: () => {\n let totalOutstanding = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalOutstanding) {\n totalOutstanding += parseFloat(reportData[i].totalOutstanding);\n }\n }\n return (\n
    \n {numberWithCurrencyFormat(totalOutstanding, 3, true)}\n
    \n
    \n );\n },\n },\n {\n Header:\"Total Sales\",\n accessor: \"totalSales\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n Cell: ({ row }) => {\n let totalSales = parseFloat(row.original.totalSales);\n return (\n \n {numberWithCurrencyFormat(totalSales, 3, true)}\n \n );\n },\n Footer: () => {\n let totalSales = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalSales) {\n totalSales += parseFloat(reportData[i].totalSales);\n }\n }\n return (\n
    \n {numberWithCurrencyFormat(totalSales, 3, true)}\n
    \n
    \n );\n },\n },\n {\n Header: \"Total Win\",\n accessor: \"totalWin\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n Cell: ({ row }) => {\n let totalWin = parseFloat(row.original.totalWin);\n return (\n \n {numberWithCurrencyFormat(-totalWin, 3, true)}\n );\n },\n Footer: () => {\n let totalWin = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalWin) {\n totalWin -= parseFloat(reportData[i].totalWin);\n }\n }\n return (\n
    \n {numberWithCurrencyFormat(totalWin, 3, true)}\n
    \n
    \n );\n },\n },\n {\n Header: \"Total Win Loss\",\n accessor: \"totalWinLose\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n Cell: ({ row }) => {\n let totalWinLose = parseFloat(row.original.totalWinLose);\n return (\n \n {numberWithCurrencyFormat(totalWinLose, 3, true)}\n );\n },\n Footer: () => {\n let totalWinLose = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalWinLose) {\n totalWinLose += parseFloat(reportData[i].totalWinLose);\n }\n }\n return (\n
    \n {numberWithCurrencyFormat(totalWinLose, 3, true)}\n
    \n
    \n );\n },\n },\n {\n Header: \"Total Cancel\",\n accessor: \"totalCancel\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n Cell: ({ row }) => {\n let totalCancel = parseFloat(row.original.totalCancel);\n return (\n \n {numberWithCurrencyFormat(totalCancel, 3, true)}\n \n );\n },\n Footer: () => {\n let totalCancel = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalCancel) {\n totalCancel += parseFloat(reportData[i].totalCancel);\n }\n }\n return (\n
    \n {numberWithCurrencyFormat(totalCancel, 3, true)}\n
    \n
    \n );\n },\n },\n {\n Header: \"Total Jpc\",\n accessor: \"totalJpc\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n Cell: ({ row }) => {\n let totalJpc = parseFloat(row.original.totalJpc);\n return (\n \n {numberWithCurrencyFormat(totalJpc, 3, true)}\n \n );\n },\n Footer: () => {\n let totalJpc = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalJpc) {\n totalJpc += parseFloat(reportData[i].totalJpc);\n }\n }\n return (\n
    \n {numberWithCurrencyFormat(totalJpc, 3, true)}\n
    \n
    \n );\n },\n },\n {\n Header: \"Total Jpw\",\n accessor: \"totalJpw\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n Cell: ({ row }) => {\n let totalJpw = parseFloat(row.original.totalJpw);\n return (\n \n {numberWithCurrencyFormat(totalJpw, 3, true)}\n \n );\n },\n Footer: () => {\n let totalJpw = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalJpw) {\n totalJpw += parseFloat(reportData[i].totalJpw);\n }\n }\n return (\n
    \n {numberWithCurrencyFormat(totalJpw, 3, true)}\n
    \n
    \n );\n },\n },\n {\n Header: \"Total Tax\",\n accessor: \"totalTax\",\n disableSortBy: true,\n style: {\n textAlign: 'right'\n },\n Cell: ({ row }) => {\n let totalTax = parseFloat(row.original.totalTax);\n return (\n \n {numberWithCurrencyFormat(totalTax, 3, true)}\n \n );\n },\n Footer: () => {\n let totalTax = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalTax) {\n totalTax += parseFloat(reportData[i].totalTax);\n }\n }\n return (\n
    \n {numberWithCurrencyFormat(totalTax, 3, true)}\n
    \n
    \n );\n },\n },\n ];\n\n /// \n /// Author : Wong\n /// \n /*async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n (page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == _PAGING_COUNT,\n additional: {\n page: page + 1,da\n },\n };\n }\n }*/\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(props.id) && t(\"TALLY_WINLOSS_REPORT\")}\n

    \n \n \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n product.value == selectedProduct\n )}\n options={productList}\n onChange={(e) => {\n setSelectedProduct(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n \n
    \n option.value == timeZone\n )[0] !== undefined\n ? _TIMEZONE_OPTION.filter(\n (option) => option.value == timeZone\n )[0].label\n : \"\"\n }\n value={_TIMEZONE_OPTION.filter(\n (option) => option.value == timeZone\n )}\n onChange={(e) => {\n setTimeZone(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n \n
    \n option.value == gameType\n )[0] !== undefined\n ? _GAMETYPE_OPTION.filter(\n (option) => option.value == gameType\n )[0].label\n : \"\"\n }\n value={_GAMETYPE_OPTION.filter(\n (option) => option.value == gameType\n )}\n onChange={(e) => {\n setGametype(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n {\n readReport(selectedMember, false);\n }}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n\n
    \n
    \n \n
    \n
    \n \n \n \n );\n};\n\nexport default ManageTallyWinLossReport;\n","import React, { useState, useRef, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\t_TICKET_STATUS,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport {\n\tstringIsNullOrEmpty,\n\tisObjectEmpty,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Select from \"react-select\";\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport { CSVLink } from \"react-csv\";\n/// \n/// Author : -\n/// \n\nconst ManageWinLossReport3 = (props) => {\n\tlet _dispatch = useDispatch();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [reportData, setReportData] = useState({\n\t\tviewerReportList: [],\n\t\tdownlineReportList: [],\n\t});\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [deleteDate, setDeleteDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD\")\n\t);\n\tconst [userHierachy, setUserHierachy] = useState([]);\n\tvar _username = useSelector(\n\t\t(state) => state[\"authState\"][\"userData\"][\"username\"]\n\t);\n\tvar _userId = useSelector(\n\t\t(state) => state[\"authState\"][\"userData\"][\"userId\"]\n\t);\n\tconst [allMembers, setAllMembers] = useState([]);\n\tconst [gameRecord, setGameRecord] = useState([]);\n\tconst ALL_OPTION_LABEL = \"All\";\n\tconst ALL_OPTION_VALUE = \"all\";\n\tconst [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n\tconst [productList, setProductList] = useState([]);\n\tconst [showGameRecord, setShowGameRecord] = useState(false);\n\tconst [selectedMember, setSelectedMember] = useState(\n\t\tuseSelector((state) => state[\"authState\"][\"userData\"][\"userId\"])\n\t);\n\tconst [ticketViewingMember, setTicketViewingMember] = useState();\n\tconst [gameDetailUrl, setGameDetailUrl] = useState(\"\");\n\tconst [overallInfo, setOverallInfo] = useState({});\n\tconst _OVERALL_KEYS = {\n\t\tTURNOVER: \"TOTAL_TURNOVER\",\n\t\tVTURNOVER: \"TOTAL_VTURNOVER\",\n\t\tAMOUNT: \"TOTAL_AMOUNT\",\n\t\tWIN: \"TOTAL_WIN\",\n\t};\n\tconst _PAGING_COUNT = 10;\n\tconst [selectedFilterMember, setSelectedFilterMember] = useState();\n\n\t// This is added for the sub reports total \"footer\"\n\tconst [ticketStatus, setTicketStatus] = useState(\"1\");\n\tconst _REPORT_REF = useRef();\n\tconst _DOWNLINE_REPORT_REF = useRef();\n\tconst _NODE_THEAD = \"THEAD\";\n\tconst _TEXT_RED = \"text-red\";\n\tconst [exportDatas, setExportDatas] = useState([]);\n\t/// \n\t/// Author : -\n\t/// \n\tconst _OPTION_STYLES = {\n\t\tcontrol: (base) => ({\n\t\t\t...base,\n\t\t\tminHeight: \"34px\",\n\t\t\theight: \"34px\",\n\t\t}),\n\t\tvalueContainer: (base) => ({\n\t\t\t...base,\n\t\t\theight: \"34px\",\n\t\t\tminHeight: \"34px\",\n\t\t}),\n\t\tindicatorsContainer: (base) => ({\n\t\t\t...base,\n\t\t\theight: \"34px\",\n\t\t\tminHeight: \"34px\",\n\t\t}),\n\t\tinput: (base) => ({\n\t\t\theight: \"34px\",\n\t\t\tminHeight: \"34px\",\n\t\t}),\n\t};\n\n\tlet _gameRecordColumns = [\n\t\t{\n\t\t\tHeader: \"DATE\",\n\t\t\taccessor: \"date\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tmoment(row.original.date).format(\"YYYY-MM-DD HH:mm:ss\"),\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"Total\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"SETTLED_ON\",\n\t\t\taccessor: \"updatedTime\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tif (row.original.updatedTime != \"-\") {\n\t\t\t\t\treturn moment(row.original.updatedTime).format(\"YYYY-MM-DD HH:mm:ss\");\n\t\t\t\t} else {\n\t\t\t\t\treturn \"-\";\n\t\t\t\t}\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"GAME\",\n\t\t\taccessor: \"gameName\",\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"Ticket Details\",\n\t\t\taccessor: \"remark\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{row.original.betId}\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{!stringIsNullOrEmpty(row.original.remark)\n\t\t\t\t\t\t\t\t? \" - \" + row.original.remark\n\t\t\t\t\t\t\t\t: \"\"}\n\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"TURNOVER\",\n\t\t\taccessor: \"turnover\",\n\t\t\tdisableSortBy: true,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(parseFloat(row.original.turnover));\n\t\t\t},\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tlet totalTurnover = 0;\n\t\t\t\tif (\n\t\t\t\t\t!isObjectEmpty(overallInfo) &&\n\t\t\t\t\toverallInfo[_OVERALL_KEYS.TURNOVER]\n\t\t\t\t) {\n\t\t\t\t\ttotalTurnover = parseFloat(overallInfo[_OVERALL_KEYS.TURNOVER]);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(totalTurnover, 3, true)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"VTURNOVER\",\n\t\t\taccessor: \"validTurnover\",\n\t\t\tdisableSortBy: true,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(parseFloat(row.original.validTurnover));\n\t\t\t},\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tlet totalVTurnover = 0;\n\t\t\t\tif (\n\t\t\t\t\t!isObjectEmpty(overallInfo) &&\n\t\t\t\t\toverallInfo[_OVERALL_KEYS.VTURNOVER]\n\t\t\t\t) {\n\t\t\t\t\ttotalVTurnover = parseFloat(overallInfo[_OVERALL_KEYS.VTURNOVER]);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(totalVTurnover, 3, true)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"Stake\",\n\t\t\taccessor: \"amount\",\n\t\t\tdisableSortBy: true,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(parseFloat(row.original.amount));\n\t\t\t},\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tlet totalAmount = 0;\n\t\t\t\tif (!isObjectEmpty(overallInfo) && overallInfo[_OVERALL_KEYS.AMOUNT]) {\n\t\t\t\t\ttotalAmount = parseFloat(overallInfo[_OVERALL_KEYS.AMOUNT]);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(totalAmount, 3, true)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"statusString\",\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: \"\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"WinLoss\",\n\t\t\taccessor: \"netProfit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\tlet profit = parseFloat(row.original.netProfit);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(profit, 3, true)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tlet winLossTotal = 0;\n\t\t\t\tif (\n\t\t\t\t\t!isObjectEmpty(overallInfo) &&\n\t\t\t\t\toverallInfo[_OVERALL_KEYS.WIN] &&\n\t\t\t\t\toverallInfo[_OVERALL_KEYS.AMOUNT]\n\t\t\t\t) {\n\t\t\t\t\twinLossTotal =\n\t\t\t\t\t\tparseFloat(overallInfo[_OVERALL_KEYS.WIN]) -\n\t\t\t\t\t\tparseFloat(overallInfo[_OVERALL_KEYS.AMOUNT]);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(winLossTotal, 3, true)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t}; /// \n\t/// Author : -\n\t/// \n\tconst handleDeleteEvent = (event, picker) => {\n\t\tsetDeleteDate(moment(picker.startDate).format(\"YYYY-MM-DD \"));\n\t};\n\n\tasync function deleteCache() {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\tApiUrl._API_CLEAR_CACHE + \"?deleteDate=\" + deleteDate\n\t\t);\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t_dispatch(\n\t\t\t\tshowMessage(\n\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t)\n\t\t\t);\n\t\t} else {\n\t\t\t_dispatch(\n\t\t\t\tshowMessage(\n\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function readReport(memberId, searchDownline = true) {\n\t\ttry {\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_GET_WINLOSS_REPORT3 +\n\t\t\t\t\"?dateFrom=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&dateTo=\" +\n\t\t\t\tendDate +\n\t\t\t\t\"&searchDownline=\" +\n\t\t\t\tsearchDownline;\n\n\t\t\tif (!stringIsNullOrEmpty(memberId)) {\n\t\t\t\tapiUrl += \"&memberId=\" + memberId;\n\t\t\t}\n\t\t\tif (selectedProduct != ALL_OPTION_VALUE) {\n\t\t\t\tapiUrl += \"&productid=\" + selectedProduct;\n\t\t\t}\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\tupdateFilteredDatas(\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].downlineReportList\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\n\t\t\tapiUrl = ApiUrl._API_GET_MEMBER_HIERACHY;\n\n\t\t\tif (!stringIsNullOrEmpty(memberId)) {\n\t\t\t\tapiUrl += \"?memberId=\" + memberId;\n\t\t\t}\n\n\t\t\tresponseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetUserHierachy(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\n\t\t\tcheckNegativeCells(_DOWNLINE_REPORT_REF);\n\t\t\tcheckNegativeCells(_REPORT_REF);\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n\t}\n\n\tfunction checkNegativeCells(ref) {\n\t\tif (ref.current) {\n\t\t\tArray.from(ref.current.childNodes.values()).map((section) => {\n\t\t\t\tif (section.nodeName != _NODE_THEAD) {\n\t\t\t\t\tArray.from(section.childNodes.values()).map((tr) => {\n\t\t\t\t\t\tArray.from(tr.childNodes.values()).map((td) => {\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t!isNaN(parseFloat(td.innerText)) &&\n\t\t\t\t\t\t\t\tparseFloat(td.innerText) < 0\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\ttd.classList.add(_TEXT_RED);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\ttd.classList.remove(_TEXT_RED);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function viewGameRecord(userId, status) {\n\t\tsetTicketViewingMember(userId);\n\t\tlet apiUrl =\n\t\t\tApiUrl._API_GET_GAME_RECORD_BY_MEMBER +\n\t\t\t\"?memberId=\" +\n\t\t\tuserId +\n\t\t\t\"&OnlyAcceptMember=true\";\n\t\tapiUrl +=\n\t\t\t\"&startDate=\" +\n\t\t\tmoment(startDate).format(\"YYYY-MM-DD HH:mm:ss\") +\n\t\t\t\"&endDate=\" +\n\t\t\tmoment(endDate).format(\"YYYY-MM-DD HH:mm:ss\");\n\t\tapiUrl += \"&ticketStatus=\" + status;\n\n\t\tsetGameDetailUrl(apiUrl);\n\t\tsetShowGameRecord(true);\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst renderHierarchyLine = () => {\n\t\tlet startRenderLink = false;\n\t\treturn userHierachy.map((x, i) => {\n\t\t\tif (startRenderLink == false && x[\"id\"] == _userId) {\n\t\t\t\tstartRenderLink = true;\n\t\t\t}\n\t\t\treturn (\n\t\t\t\t
    \n\t\t\t\t\t{startRenderLink ? (\n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\treadReport(x[\"id\"]);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{x[\"username\"]}\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t{x[\"username\"]}\n\t\t\t\t\t)}\n\t\t\t\t\t{userHierachy.length != i + 1 ? \" / \" : \"\"}\n\t\t\t\t
    \n\t\t\t);\n\t\t});\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tfunction getOverallInfo(info) {\n\t\tsetOverallInfo(info);\n\t}\n\n\t/// \n\t/// Author : Wong\n\t/// \n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: _userId });\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == _PAGING_COUNT,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tawait fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tconst accountProductOptionList = [\n\t\t\t\t\t\t\t{ label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n\t\t\t\t\t\t];\n\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n\t\t\t\t\t\t\taccountProductOptionList.push({\n\t\t\t\t\t\t\t\tlabel: option.productName,\n\t\t\t\t\t\t\t\tvalue: option.id,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tsetProductList(accountProductOptionList);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t_dispatch(\n\t\t\t\t\t\tshowMessage(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tlet _exportHeaders = [\n\t\t{ label: \"Username\", key: \"username\" },\n\t\t{ label: \"Total Turnover\", key: \"totalTurnover\" },\n\t\t{ label: \"Total Valid Turnover\", key: \"totalVTurnover\" },\n\t\t{ label: \"Total Win Loss\", key: \"totalWinLoss\" },\n\t\t{ label: \"Total Bonus\", key: \"totalBonus\" },\n\t\t{ label: \"Total Commission\", key: \"totalCommission\" },\n\t\t{ label: \"Total WinLoss + Comm\", key: \"totalWinLoss_Comm\" },\n\t\t{ label: \"Total Downline\", key: \"totalDownline\" },\n\t\t{ label: \"D/L Turnover\", key: \"downlineTurnOver\" },\n\t\t{ label: \"D/L V.TurnOver\", key: \"downlineVTurnOver\" },\n\t\t{ label: \"D/L WinLoss\", key: \"downlineWinLoss\" },\n\t\t{ label: \"D/L Bonus\", key: \"downlineBonus\" },\n\t\t{ label: \"D/L Comm\", key: \"downlineCommission\" },\n\t\t{ label: \"Turnover\", key: \"ownTurnover\" },\n\t\t{ label: \"V.Turnover\", key: \"ownVTurnover\" },\n\t\t{ label: \"Win/Lose\", key: \"ownWinLoss\" },\n\t\t{ label: \"Bonus\", key: \"ownBonus\" },\n\t\t{ label: \"Commission\", key: \"ownCommission\" },\n\t\t{ label: \"Net Profit\", key: \"netProfit\" },\n\t\t{ label: \"Margin\", key: \"margin\" },\n\t];\n\n\tconst updateFilteredDatas = (data) => {\n\t\tlet newFilteredDatas = [];\n\t\tlet newExportDatas = [];\n\n\t\tdata.map((item, index) => {\n\t\t\tlet row = item;\n\n\t\t\tlet newFilteredData = {\n\t\t\t\tusername: row.username,\n\t\t\t\ttotalTurnover: row.totalTurnover,\n\t\t\t\ttotalVTurnover: row.totalVTurnover,\n\t\t\t\ttotalWinLoss: row.totalWinLoss,\n\t\t\t\ttotalBonus: row.totalBonus,\n\t\t\t\ttotalCommission: row.totalCommission,\n\t\t\t\ttotalWinLoss_Comm: row.totalWinLoss_Comm,\n\t\t\t\ttotalDownline: row.totalDownline,\n\t\t\t\tdownlineTurnOver: row.downlineTurnOver,\n\t\t\t\tdownlineVTurnOver: row.downlineVTurnOver,\n\t\t\t\tdownlineWinLoss: row.downlineWinLoss,\n\t\t\t\tdownlineBonus: row.downlineBonus,\n\t\t\t\tdownlineCommission: row.downlineCommission,\n\t\t\t\townTurnover: row.ownTurnover,\n\t\t\t\townVTurnover: row.ownVTurnover,\n\t\t\t\townWinLoss: row.ownWinLoss,\n\t\t\t\townBonus: row.ownBonus,\n\t\t\t\townCommission: row.ownCommission,\n\t\t\t\tnetProfit: row.netProfit,\n\t\t\t\tmargin: row.margin,\n\t\t\t};\n\n\t\t\tnewFilteredDatas.push(newFilteredData);\n\n\t\t\tnewExportDatas.push(newFilteredData);\n\t\t});\n\n\t\tnewExportDatas.push({\n\t\t\tusername: \"Total\",\n\t\t\ttotalTurnover: data.reduce(\n\t\t\t\t(total, data) => total + data.totalTurnover,\n\t\t\t\t0\n\t\t\t),\n\t\t\ttotalVTurnover: data.reduce(\n\t\t\t\t(total, data) => total + data.totalVTurnover,\n\t\t\t\t0\n\t\t\t),\n\t\t\ttotalWinLoss: data.reduce((total, data) => total + data.totalWinLoss, 0),\n\t\t\ttotalBonus: data.reduce((total, data) => total + data.totalBonus, 0),\n\t\t\ttotalCommission: data.reduce(\n\t\t\t\t(total, data) => total + data.totalCommission,\n\t\t\t\t0\n\t\t\t),\n\t\t\ttotalWinLoss_Comm: data.reduce(\n\t\t\t\t(total, data) => total + data.totalWinLoss_Comm,\n\t\t\t\t0\n\t\t\t),\n\t\t\ttotalDownline: data.reduce(\n\t\t\t\t(total, data) => total + data.totalDownline,\n\t\t\t\t0\n\t\t\t),\n\t\t\tdownlineTurnOver: data.reduce(\n\t\t\t\t(total, data) => total + data.downlineTurnOver,\n\t\t\t\t0\n\t\t\t),\n\t\t\tdownlineVTurnOver: data.reduce(\n\t\t\t\t(total, data) => total + data.downlineVTurnOver,\n\t\t\t\t0\n\t\t\t),\n\t\t\tdownlineWinLoss: data.reduce(\n\t\t\t\t(total, data) => total + data.downlineWinLoss,\n\t\t\t\t0\n\t\t\t),\n\t\t\tdownlineBonus: data.reduce(\n\t\t\t\t(total, data) => total + data.downlineBonus,\n\t\t\t\t0\n\t\t\t),\n\t\t\tdownlineCommission: data.reduce(\n\t\t\t\t(total, data) => total + data.downlineCommission,\n\t\t\t\t0\n\t\t\t),\n\t\t\townTurnover: data.reduce((total, data) => total + data.ownTurnover, 0),\n\t\t\townVTurnover: data.reduce((total, data) => total + data.ownVTurnover, 0),\n\t\t\townWinLoss: data.reduce((total, data) => total + data.ownWinLoss, 0),\n\t\t\townBonus: data.reduce((total, data) => total + data.ownBonus, 0),\n\t\t\townCommission: data.reduce(\n\t\t\t\t(total, data) => total + data.ownCommission,\n\t\t\t\t0\n\t\t\t),\n\t\t\tnetProfit: data.reduce((total, data) => total + data.netProfit, 0),\n\t\t\tmargin: data.reduce((total, data) => total + data.margin, 0),\n\t\t});\n\t\tsetExportDatas(newExportDatas);\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{stringIsNullOrEmpty(props.id) && t(\"WINLOSS_REPORT\")}\n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetSelectedFilterMember(e);\n\t\t\t\t\t\t\t\t\t\tsetSelectedMember(e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t product.value == selectedProduct\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\toptions={productList}\n\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\tsetSelectedProduct(e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\treadReport(selectedMember, false);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tstyle={{ marginRight: \"10px\" }}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t {t(\"SEARCH\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tdeleteCache();\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t {t(\"Clear_Cache\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    {renderHierarchyLine()}
    \n\t\t\t\t\t{reportData.downlineReportList.length != 0 && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t(\"USERNAME\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_TURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_VTURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_WINLOSE\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_BONUS\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_COMMISSION\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_WINLOSS_COMM\")}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE\")}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{t(\"PERSONAL\")}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_TURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_VTURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_WINLOSE\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_BONUS\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_COMMISSION\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"VTURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"WINLOSE\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"BONUS\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"COMMISSION\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"NET_PROFIT\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"MARGIN\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{renderHierarchyLine()}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalTurnover,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalVTurnover,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalWinLoss,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalBonus,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalCommission,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalWinLoss_Comm,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{parseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalDownline,\n\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineTurnOver,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineVTurnOver,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineWinLoss,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineBonus,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineCommission,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownTurnover,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownVTurnover,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownWinLoss,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownBonus,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownCommission,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.netProfit,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.margin,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\n\t\t\t\t\t{reportData.downlineReportList.length != 0 && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t(\"USERNAME\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_TURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_VTURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_WINLOSE\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_BONUS\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_COMMISSION\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL_WINLOSS_COMM\")}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE\")}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{t(\"PERSONAL\")}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_TURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_VTURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_WINLOSE\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_BONUS\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"DOWNLINE_COMMISSION\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"TURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"VTURNOVER\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"WINLOSE\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"BONUS\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"COMMISSION\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"NET_PROFIT\")}\n\t\t\t\t\t\t\t\t\t\t{t(\"MARGIN\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{reportData.downlineReportList.map((item, index) => {\n\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treadReport(item[\"userId\"]);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{item[\"username\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"totalTurnover\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"totalVTurnover\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"totalWinLoss\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"totalBonus\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"totalCommission\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"totalWinLoss_Comm\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{item[\"totalDownline\"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"downlineTurnOver\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"downlineVTurnOver\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"downlineWinLoss\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"downlineBonus\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"downlineCommission\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tviewGameRecord(item[\"userId\"], \"1\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"ownTurnover\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tviewGameRecord(item[\"userId\"], \"1\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"ownVTurnover\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"ownWinLoss\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"ownBonus\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"ownCommission\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"netProfit\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(item[\"margin\"]),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t{t(\"TOTAL\")}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalTurnover,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalVTurnover,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalWinLoss,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalBonus,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalCommission,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalWinLoss_Comm,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{parseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.totalDownline,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineTurnOver,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineVTurnOver,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineWinLoss,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineBonus,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.downlineCommission,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownTurnover,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownVTurnover,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownWinLoss,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownBonus,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.ownCommission,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.netProfit,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treportData.downlineReportList.reduce(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(total, data) => total + data.margin,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttrue\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t\n\t\t\t {\n\t\t\t\t\tsetShowGameRecord(false);\n\t\t\t\t\tsetTicketStatus(\"1\");\n\t\t\t\t}}\n\t\t\t\tstyle={{ paddingBottom: \"100px\" }}\n\t\t\t\tclassName=\"modal-lg\"\n\t\t\t\tkeyboard={true}\n\t\t\t>\n\t\t\t\t {\n\t\t\t\t\t\tsetShowGameRecord(false);\n\t\t\t\t\t\tsetTicketStatus(\"1\");\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{t(\"SUMMARY\")}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t x[\"value\"] == ticketStatus\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\tsetTicketStatus(e.value);\n\t\t\t\t\t\t\t\t\t\tviewGameRecord(ticketViewingMember, e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetShowGameRecord(false);\n\t\t\t\t\t\t\tsetTicketStatus(\"1\");\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ManageWinLossReport3;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Select from \"react-select\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBonusCommReport = (props) => {\n\tlet _dispatch = useDispatch();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [reportData, setReportData] = useState([]);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [userHierachy, setUserHierachy] = useState([]);\n\tvar _username = useSelector(\n\t\t(state) => state[\"authState\"][\"userData\"][\"username\"]\n\t);\n\tconst [allMembers, setAllMembers] = useState([]);\n\tconst [selectedMember, setSelectedMember] = useState(\n\t\tuseSelector((state) => state[\"authState\"][\"userData\"][\"userId\"])\n\t);\n\tconst [selectedFilterMember, setSelectedFilterMember] = useState();\n\tconst ALL_OPTION_LABEL = \"All\";\n\tconst ALL_OPTION_VALUE = \"all\";\n\tconst [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n\tconst [productList, setProductList] = useState([]);\n\n\tvar _userId = useSelector(\n\t\t(state) => state[\"authState\"][\"userData\"][\"userId\"]\n\t)\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t {\n\t\t\t\t\t\t\treadReport(row.original.userId);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t{row.original.username}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"DOWNLINE\",\n\t\t\taccessor: \"totalDownline\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn row.original.totalDownline;\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TURNOVER\",\n\t\t\taccessor: \"totalTurnover\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn row.original.totalTurnover.toFixed(2);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TOTAL_BONUS\",\n\t\t\taccessor: \"totalBonus\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\trow.original.totalBonus +\n\t\t\t\t\trow.original.ownBonus +\n\t\t\t\t\trow.original.downlineBonus\n\t\t\t\t).toFixed(2);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"OWN_COMMISSION\",\n\t\t\taccessor: \"ownCommission\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(\n\t\t\t\t\tparseFloat(row.original.ownCommission),\n\t\t\t\t\t3\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"DOWNLINE_COMMISSION\",\n\t\t\taccessor: \"downlineCommission\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(\n\t\t\t\t\tparseFloat(row.original.downlineCommission),\n\t\t\t\t\t3\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"OWN_VIP_COMMISSION\",\n\t\t\taccessor: \"vipCommission\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(\n\t\t\t\t\tparseFloat(row.original.vipCommission),\n\t\t\t\t\t3\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TOTAL_COMMISSION\",\n\t\t\taccessor: \"totalCommission\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn numberWithCurrencyFormat(\n\t\t\t\t\trow.original.vipCommission +\n\t\t\t\t\t\trow.original.ownCommission +\n\t\t\t\t\t\trow.original.downlineCommission,\n\t\t\t\t\t3\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tif (\n\t\t\t\tallMembers[\"length\"] == 0 &&\n\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"length\"] > 0\n\t\t\t) {\n\t\t\t\tvar list = [];\n\n\t\t\t\tlist.push({\n\t\t\t\t\tlabel: _username,\n\t\t\t\t\tvalue: \"\",\n\t\t\t\t\tuplineMemberModel: {},\n\t\t\t\t});\n\n\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].map((data) => {\n\t\t\t\t\tlist.push({\n\t\t\t\t\t\tlabel: data[\"username\"],\n\t\t\t\t\t\tvalue: data[\"id\"],\n\t\t\t\t\t\tuplineMemberModel: data[\"uplineMemberModel\"],\n\t\t\t\t\t});\n\t\t\t\t});\n\n\t\t\t\tsetAllMembers(list);\n\t\t\t}\n\t\t} else {\n\t\t\t_dispatch(\n\t\t\t\tshowMessage(\n\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function readReport(memberId, searchDownline = true) {\n\t\ttry {\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_GET_BONUS_COMMISSION_REPORT +\n\t\t\t\t\"?dateFrom=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&dateTo=\" +\n\t\t\t\tendDate +\n\t\t\t\t\"&searchDownline=\" +\n\t\t\t\tsearchDownline;\n\n\t\t\tif (!stringIsNullOrEmpty(memberId)) {\n\t\t\t\tapiUrl += \"&memberId=\" + memberId;\n\t\t\t}\n\n\t\t\tif (selectedProduct != ALL_OPTION_VALUE) {\n\t\t\t\tapiUrl += \"&productid=\" + selectedProduct;\n\t\t\t}\n\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\n\t\t\tapiUrl = ApiUrl._API_GET_MEMBER_HIERACHY;\n\n\t\t\tif (!stringIsNullOrEmpty(memberId)) {\n\t\t\t\tapiUrl += \"?memberId=\" + memberId;\n\t\t\t}\n\n\t\t\tresponseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tconsole.log(responseJson);\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetUserHierachy(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n\t}\n\n\t/// \n\t/// Author : Wong\n\t/// \n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: _userId });\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tawait fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tconst accountProductOptionList = [\n\t\t\t\t\t\t\t{ label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n\t\t\t\t\t\t];\n\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n\t\t\t\t\t\t\taccountProductOptionList.push({\n\t\t\t\t\t\t\t\tlabel: option.productName,\n\t\t\t\t\t\t\t\tvalue: option.id,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tsetProductList(accountProductOptionList);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t_dispatch(\n\t\t\t\t\t\tshowMessage(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{stringIsNullOrEmpty(props.id) && t(\"BONUS_COMMISSION_REPORT\")}\n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tsetSelectedFilterMember(e);\n\t\t\t\t\t\t\t\t\t\tsetSelectedMember(e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t product.value == selectedProduct\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\toptions={productList}\n\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\tsetSelectedProduct(e.value);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t{console.log(selectedProduct)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\treadReport(selectedMember, false);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t {t(\"SEARCH\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t{userHierachy.map((x, i) => {\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\treadReport(x[\"id\"]);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{x[\"username\"]}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{userHierachy.length != i + 1 ? \" / \" : \"\"}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ManageBonusCommReport;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Select from \"react-select\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBonusCommReport = (props) => {\n let _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [reportData, setReportData] = useState([]);\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [userHierachy, setUserHierachy] = useState([]);\n const _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n const [allMembers, setAllMembers] = useState([]);\n const [selectedMember, setSelectedMember] = useState(\"\");\n const [allBonusMembers, setAllBonusMembers] = useState([]);\n const [selectedBonusMember, setSelectedBonusMember] = useState(\"\");\n const ALL_OPTION_LABEL = \"All\";\n const ALL_OPTION_VALUE = \"all\";\n const [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n const [productList, setProductList] = useState([]);\n const [playerId, setPlayerId] = useState();\n const [bonusPlayerId, setBonusPlayerId] = useState();\n const _PAGING_COUNT = 10;\n\n /// \n /// Author : -\n /// \n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n let _tableColumns = [\n {\n Header: \"TRANSACTION_ID\",\n accessor: \"id\",\n Cell: ({ row }) => {\n return (\n {\n readSubReport(row.original.id);\n }}\n >\n {row.original.id}\n \n );\n },\n disableSortBy: true,\n },\n {\n Header: \"DATE\",\n accessor: \"createdTime\",\n disableSortBy: true,\n },\n {\n Header: \"USERNAME\",\n accessor: \"transferPerson\",\n disableSortBy: true,\n },\n {\n Header: \"TRASFER_PLAYER\",\n accessor: \"transferPlayer\",\n disableSortBy: true,\n },\n {\n Header: \"WALLET_BEFORE_BALANCE\",\n accessor: \"walletBefore\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.walletBefore));\n },\n disableSortBy: true,\n },\n {\n Header: \"DEPOSIT_AMOUNT\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(\n -parseFloat(row.original.depositAmount)\n );\n },\n disableSortBy: true,\n },\n {\n Header: \"WALLET_AFTER_BALANCE\",\n accessor: \"walletAfter\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.walletAfter));\n },\n disableSortBy: true,\n },\n {\n Header: \"BONUS_RECEIVE_MEMBER\",\n accessor: \"targetMember\",\n disableSortBy: true,\n },\n {\n Header: \"BONUS_RECEIVE_PLAYER\",\n accessor: \"targetPlayer\",\n disableSortBy: true,\n },\n {\n Header: \"BONUS_RATE\",\n accessor: \"bonusRate\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.bonusRate));\n },\n disableSortBy: true,\n },\n {\n Header: \"GAME_WALLET_BEFORE_BALANCE\",\n accessor: \"gameWalletBefore\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(\n parseFloat(row.original.gameWalletBefore)\n );\n },\n disableSortBy: true,\n },\n {\n Header: \"AMOUNT\",\n Cell: ({ row }) => {\n if (row.original.transferPlayer === row.original.targetPlayer) {\n return numberWithCurrencyFormat(\n parseFloat(row.original.depositAmount)\n );\n } else {\n return numberWithCurrencyFormat(0);\n }\n },\n disableSortBy: true,\n },\n {\n Header: \"BONUS\",\n accessor: \"bonus\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.bonus));\n },\n disableSortBy: true,\n },\n {\n Header: \"GAME_WALLET_AFTER_BALANCE\",\n accessor: \"gameWalletAfter\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(\n parseFloat(row.original.gameWalletAfter)\n );\n },\n disableSortBy: true,\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n await fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const accountProductOptionList = [\n { label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n accountProductOptionList.push({\n label: option.productName,\n value: option.id,\n });\n });\n\n setProductList(accountProductOptionList);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n async function readReport(memberId, bonusMemberId, searchDownline = true) {\n try {\n var apiUrl =\n ApiUrl._API_MANAGE_TRANSFER_WALLET +\n \"?dateFrom=\" +\n startDate +\n \"&dateTo=\" +\n endDate +\n \"&searchDownline=\" +\n searchDownline;\n\n if (!stringIsNullOrEmpty(memberId)) {\n apiUrl += \"&memberId=\" + memberId;\n }\n\n if (!stringIsNullOrEmpty(bonusMemberId)) {\n apiUrl += \"&bonusMemberId=\" + bonusMemberId;\n }\n\n if (selectedProduct != ALL_OPTION_VALUE) {\n apiUrl += \"&masterProductId=\" + selectedProduct;\n }\n\n if (!stringIsNullOrEmpty(playerId)) {\n apiUrl += \"&playerId=\" + playerId;\n }\n\n if (!stringIsNullOrEmpty(bonusPlayerId)) {\n apiUrl += \"&bonusPlayerId=\" + bonusPlayerId;\n }\n\n var responseJson = await ApiEngine.get(apiUrl);\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setReportData(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n } catch (error) {\n _dispatch(showMessage(false, t(error)));\n }\n }\n\n async function readSubReport(targetTransferId) {\n try {\n var apiUrl =\n ApiUrl._API_MANAGE_TRANSFER_WALLET +\n \"?dateFrom=\" +\n startDate +\n \"&dateTo=\" +\n endDate +\n \"&searchDownline=\" +\n true;\n\n if (!stringIsNullOrEmpty(targetTransferId)) {\n apiUrl += \"&targetTransferId=\" + targetTransferId;\n apiUrl += \"&isSubReport=\" + true;\n }\n\n var responseJson = await ApiEngine.get(apiUrl);\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setReportData(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n } catch (error) {\n _dispatch(showMessage(false, t(error)));\n }\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }, type) {\n console.log(type);\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n (page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == _PAGING_COUNT,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(props.id) && t(\"WALLET_TRANSFER_REPORT\")}\n

    \n \n \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n getMemberList(\n search,\n loadOptions,\n { page: obj.page },\n \"TRANSFER\"\n )\n }\n additional={{\n page: 1,\n }}\n value={selectedMember}\n onChange={(e) => setSelectedMember(e)}\n />\n
    \n
    \n
    \n
    \n \n {\n setPlayerId(e.target.value);\n }}\n />\n
    \n
    \n
    \n
    \n \n product.value == selectedProduct\n )}\n options={productList}\n onChange={(e) => {\n setSelectedProduct(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n \n\n \n getMemberList(\n search,\n loadOptions,\n { page: obj.page },\n \"BONUS\"\n )\n }\n additional={{\n page: 1,\n }}\n value={selectedBonusMember}\n onChange={(e) => setSelectedBonusMember(e)}\n />\n
    \n
    \n
    \n
    \n \n {\n setBonusPlayerId(e.target.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n {\n readReport(\n selectedMember.value,\n selectedBonusMember.value,\n false\n );\n }}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n \n \n \n );\n};\n\nexport default ManageBonusCommReport;\n","import React, { useState, useEffect, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport {\n ApiKey,\n ApiUrl,\n TransactionType,\n TransactionStatus,\n PanelType,\n LanguageKey,\n BankingChannelName,\n DEFAULT_PAGE_SIZE\n} from \"../../util/Constant\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { stringIsNullOrEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst ServiceChargeReport = (props) => {\n const _DEPOSIT = 1;\n const _WITHDRAWAL = 2;\n const _ADJUSTMENT = 3;\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors } = useForm();\n const [calendarStartDate, setCalendarStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [calendarEndDate, setCalendarEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [withdrawalApprovalModal, setWithdrawalApprovalModal] = useState(false);\n const [auditBankOption, setAuditBankOption] = useState([]);\n const [auditBankId, setAuditBankId] = useState(\"\");\n const [auditBankAccountId, setAuditBankAccountId] = useState(\"\");\n const [transaction, setTransaction] = useState();\n const [bankAccountOption, setBankAccountOption] = useState([]);\n const [showTransButton, setShowTransButton] = useState(false);\n const [transactionModal, setTransactionModal] = useState(false);\n const [transactionType, setTransactionType] = useState();\n const [transactionComponent, setTransactionComponent] = useState();\n const [memberId, setMemberId] = useState();\n const [initFlag, setInitFlag] = useState(false);\n const [transactionApiUrl, setTransactionApiUrl] = useState(\"\");\n const [receiptImages, setReceiptImages] = useState([]);\n const [currentImage, setCurrentImage] = useState([]);\n const [isViewerOpen, setIsViewerOpen] = useState(false);\n const [label, setLabel] = useState(\"All\");\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\n const _STATUS_OPTIONS = [\n { value: TransactionStatus._OPEN, label: \"Open\" },\n { value: TransactionStatus._APPROVED, label: \"Approved\" },\n { value: TransactionStatus._REJECTED, label: \"Rejected\" },\n ];\n\n const _TRANSACTION_OPTIONS = [\n { value: TransactionType._DEPOSIT, label: \"Deposit\" },\n ];\n\n const _PANEL_OPTIONS = [\n { value: PanelType._MEMBERSITE, label: \"MemberSite\" },\n { value: PanelType._BACKOFFICE, label: \"BackOffice\" },\n ];\n\n const [bankingChannelOption, setBankingChannelOption] = useState([]);\n const [selectedStatus, setSelectedStatus] = useState(_STATUS_OPTIONS);\n const [selectedTransaction, setSelectedTransaction] = useState(\n _TRANSACTION_OPTIONS\n );\n const [selectedPanel, setSelectedPanel] = useState(_PANEL_OPTIONS);\n const [selectedChannel, setSelectedChannel] = useState([]);\n const [username, setUsername] = useState(\"\");\n\n const openImageViewer = useCallback((index) => {\n setCurrentImage(index);\n setIsViewerOpen(true);\n }, []);\n\n const closeImageViewer = () => {\n setCurrentImage(0);\n setIsViewerOpen(false);\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n register({ name: \"auditBankId\" }, { required: \"PLEASE_SELECT_BANK\" });\n register(\n { name: \"auditBankAccountId\" },\n { required: \"PLEASE_SELECT_BANK_ACCOUNT\" }\n );\n }, [props.username]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (initFlag) {\n getUserTransaction();\n }\n }, [initFlag]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (!stringIsNullOrEmpty(auditBankId)) {\n getBankAccount();\n }\n }, [auditBankId]);\n\n /// \n /// Author : -\n /// \n async function getBankAccount() {\n var apiUrl = ApiUrl._API_GET_BANK_ACCOUNT_BY_BANK_ID;\n apiUrl += \"?bankId=\" + auditBankId + \"&withdrawal=\" + true;\n let responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankAccountList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bankAccount) {\n if (bankAccount.withdrawalStatus) {\n bankAccountList.push({\n label: bankAccount.accountNumber,\n value: bankAccount.id,\n });\n }\n });\n\n setBankAccountOption(bankAccountList);\n } else {\n _dispatch(showMessage(false, t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n }\n\n function prepareReceiptImage(imgString) {\n if (imgString != null) {\n let imgArray = [];\n imgString = \"../..\" + imgString;\n imgArray.push(imgString);\n setReceiptImages(imgArray);\n openImageViewer(0);\n } else {\n _dispatch(showMessage(false, t(\"NO_RECEIPT_FOUND\")));\n }\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setCalendarStartDate(\n moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\")\n );\n setCalendarEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n const init = async () => {\n if (props.username && props.id) {\n setUsername(props.username);\n setMemberId(props.id);\n setShowTransButton(true);\n }\n try {\n let channelResponseJson = await ApiEngine.get(\n ApiUrl._API_GET_BANKING_CHANNEL\n );\n if (channelResponseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankingChannelList = [];\n channelResponseJson[ApiKey._API_DATA_KEY].forEach(function (\n bankingChannel\n ) {\n bankingChannelList.push({\n label: bankingChannel.name,\n value: bankingChannel.name,\n });\n });\n\n setBankingChannelOption(bankingChannelList);\n } else {\n throw channelResponseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n let userBankResponseJson = await ApiEngine.get(ApiUrl._API_GET_USER_BANK);\n if (userBankResponseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankList = [];\n userBankResponseJson[ApiKey._API_DATA_KEY].forEach(function (bank) {\n bankList.push({ label: bank.bankName, value: bank.id });\n });\n setAuditBankOption(bankList);\n } else {\n throw userBankResponseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n setInitFlag(true);\n } catch (ex) {\n _dispatch(showMessage(false, t(ex)));\n }\n };\n\n /// \n /// Author : -\n /// \n const getUserTransaction = async () => {\n let status = [];\n let transactionType = [];\n let channel = [];\n let panel = [];\n if (!stringIsNullOrEmpty(selectedStatus)) {\n selectedStatus.map((selected) => {\n status.push(selected.value);\n });\n }\n if (!stringIsNullOrEmpty(selectedTransaction)) {\n selectedTransaction.map((selected) => {\n transactionType.push(selected.value);\n });\n }\n\n channel.push(BankingChannelName._CHANNEL_PAYTRUST);\n\n if (!stringIsNullOrEmpty(selectedPanel)) {\n selectedPanel.map((selected) => {\n panel.push(selected.value);\n });\n }\n\n let fetchUrl = ApiUrl._API_GET_ALL_USER_TRANSACTION;\n fetchUrl +=\n \"?startDate=\" +\n calendarStartDate +\n \"&endDate=\" +\n calendarEndDate +\n \"&approvalStatus=\" +\n status;\n fetchUrl +=\n \"&transactionType=\" +\n transactionType +\n \"&bankingChannel=\" +\n channel +\n \"&isGatewayTrans=true\" +\n \"&panel=\" +\n panel +\n \"&v=\" +\n Date.now();\n if (username !== \"\") {\n fetchUrl += \"&username=\" + (label == \"All\" ? \"\" : label);\n }\n setTransactionApiUrl(fetchUrl);\n };\n\n let _tableColumns = [\n {\n id: \"id\",\n Header: \"ID\",\n accessor: \"id\",\n minWidth: 100,\n Footer: () => {\n return (\n \n {t(\"TOTAL\")}: \n \n );\n },\n },\n {\n Header: t(\"DATE\"),\n accessor: \"submitTime\",\n style: {\n whiteSpace: \"unset\",\n wordBreak: \"break-word\",\n },\n Cell: ({ row }) => {\n return (\n <>{moment(row.original.submitTime).format(\"YYYY-MM-DD HH:mm:ss\")}\n );\n },\n minWidth: 100,\n },\n {\n Header: t(\"USERNAME\"),\n accessor: \"memberUsername\",\n minWidth: 100,\n },\n {\n Header: t(\"FULLNAME\"),\n accessor: \"memberFullName\",\n minWidth: 100,\n },\n {\n Header: t(\"TYPE\"),\n accessor: \"transactionType\",\n minWidth: 100,\n Cell: ({ row }) => {\n return <>{t(row.original.transactionType.toUpperCase())};\n },\n },\n {\n Header: t(\"STATUS\"),\n accessor: \"approvalStatusString\",\n Cell: ({ row }) => {\n switch (row.original.approvalStatus) {\n case TransactionStatus._APPROVED:\n return (\n \n {t(\"APPROVED\")}\n \n );\n break;\n case TransactionStatus._REJECTED:\n return (\n \n {t(\"REJECTED\")}\n \n );\n break;\n default:\n return (\n \n {t(row.original.approvalStatusString)}\n \n );\n break;\n }\n },\n minWidth: 100,\n },\n {\n id: \"amount\",\n Header: t(\"AMOUNT\"),\n accessor: \"amount\",\n minWidth: 100,\n Cell: ({ row }) => {\n if (row.original.transactionTypeId != TransactionType._WITHDRAWAL) {\n return (\n <>\n {numberWithCurrencyFormat(\n parseFloat(row.original.amount) +\n parseFloat(row.original.serviceCharge)\n )}\n \n );\n } else {\n return <>;\n }\n },\n Footer: ({ page }) => {\n const creditSum = page.reduce((sum, currentValue) => {\n if (\n currentValue.original.amount &&\n currentValue.original.transactionTypeId !=\n TransactionType._WITHDRAWAL\n ) {\n return (\n sum +\n parseFloat(currentValue.original.amount) +\n parseFloat(currentValue.original.serviceCharge)\n );\n } else {\n return sum;\n }\n }, 0);\n return (\n \n {numberWithCurrencyFormat(parseFloat(creditSum))}\n \n );\n },\n },\n {\n id: \"credit\",\n Header: t(\"CREDIT\"),\n accessor: \"amount\",\n minWidth: 100,\n Cell: ({ row }) => {\n if (row.original.transactionTypeId != TransactionType._WITHDRAWAL) {\n return (\n <>{numberWithCurrencyFormat(parseFloat(row.original.amount))}\n );\n } else {\n return <>;\n }\n },\n Footer: ({ page }) => {\n const creditSum = page.reduce((sum, currentValue) => {\n if (\n currentValue.original.amount &&\n currentValue.original.transactionTypeId !=\n TransactionType._WITHDRAWAL\n ) {\n return sum + parseFloat(currentValue.original.amount);\n } else {\n return sum;\n }\n }, 0);\n return (\n \n {numberWithCurrencyFormat(parseFloat(creditSum))}\n \n );\n },\n },\n {\n id: \"serviceChargePercentage\",\n Header: t(\"SERVICE_CHARGE_PERCENTAGE\"),\n accessor: \"serviceCharge\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n <>\n {numberWithCurrencyFormat(\n parseFloat(row.original.serviceChargePercentage)\n )}\n \n );\n },\n Footer: \"\",\n },\n {\n id: \"serviceCharge\",\n Header: t(\"SERVICE_CHARGE\"),\n accessor: \"serviceCharge\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n <>\n {numberWithCurrencyFormat(parseFloat(row.original.serviceCharge))}\n \n );\n },\n Footer: ({ page }) => {\n const creditSum = page.reduce((sum, currentValue) => {\n if (\n currentValue.original.serviceCharge &&\n currentValue.original.transactionTypeId !=\n TransactionType._WITHDRAWAL\n ) {\n return sum + parseFloat(currentValue.original.serviceCharge);\n } else {\n return sum;\n }\n }, 0);\n return (\n \n {numberWithCurrencyFormat(parseFloat(creditSum))}\n \n );\n },\n },\n {\n Header: t(\"CHANNEL\"),\n accessor: \"channel\",\n minWidth: 100,\n },\n {\n Header: t(\"PANEL\"),\n accessor: \"panel\",\n Cell: ({ row }) => {\n return <>{t(row.original.panel.toUpperCase())};\n },\n minWidth: 100,\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n setAuditBankAccountId(\"\");\n setAuditBankId(\"\");\n register({ name: \"auditBankId\" }, { required: \"PLEASE_SELECT_BANK\" });\n register(\n { name: \"auditBankAccountId\" },\n { required: \"PLEASE_SELECT_BANK_ACCOUNT\" }\n );\n }, [withdrawalApprovalModal]);\n\n useEffect(() => {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, username);\n }, [username]);\n\n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    {t(\"TRANSACTION_REPORT\")}

    \n \n
    \n
    \n \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n \n ({\n width: \"100%\",\n }),\n }}\n value={selectedStatus}\n options={_STATUS_OPTIONS}\n isMulti\n onChange={(e) => {\n setSelectedStatus(e);\n }}\n />\n
    \n
    \n
    \n
    \n \n
    \n \n \n \n
    \n {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabel(e.label);\n setUsername(e.value);\n }}\n />\n
    \n \n
    \n {\n getUserTransaction();\n }}\n className=\"btn btn-primary\"\n >\n {t(\"SEARCH\")}\n \n
    \n \n {showTransButton && (\n
    \n
    \n {\n setTransactionModal(true);\n setTransactionType(_DEPOSIT);\n }}\n >\n {t(\"DEPOSIT\")}\n \n {\n setTransactionModal(true);\n setTransactionType(_WITHDRAWAL);\n }}\n >\n {t(\"WITHDRAWAL\")}\n \n
    \n
    \n )}\n
    \n \n \n \n \n \n \n );\n};\n\nexport default ServiceChargeReport;\n","import React, { useState, useEffect, useMemo, useCallback } from 'react';\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { Panel, PanelHeader, PanelBody } from './../../components/panel/panel.jsx';\nimport { useHistory } from \"react-router-dom\";\nimport { UncontrolledButtonDropdown, DropdownToggle, DropdownMenu, DropdownItem, Modal, ModalBody, ModalFooter, ModalHeader } from 'reactstrap';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport Select from 'react-select';\nimport DateRangePicker from 'react-bootstrap-daterangepicker';\nimport moment from 'moment';\nimport { navigateTo } from '../../util/Util';\nimport { ApiKey, ApiUrl, WebUrl, AccessRight, TransactionType, TransactionStatus, PanelType, LanguageKey, BankingChannelName, DEFAULT_PAGE_SIZE } from '../../util/Constant';\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { stringIsNullOrEmpty, createFormBody, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from 'react-i18next';\nimport ApiEngine from '../../util/ApiEngine';\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst TransactionReport = props => {\n const _DEPOSIT = 1;\n const _WITHDRAWAL = 2;\n const _BONUS = 3;\n const _ADJUSTMENT = 4;\n const _REBATE = 5;\n const _TRANSFER = 6;\n const _SHAREHOLDER_CLAIM = 7;\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors } = useForm();\n const [calendarStartDate, setCalendarStartDate] = useState(moment().startOf('day').format(\"YYYY-MM-DD HH:mm:ss\"));\n const [calendarEndDate, setCalendarEndDate] = useState(moment().endOf('day').format(\"YYYY-MM-DD HH:mm:ss\"));\n const [withdrawalApprovalModal, setWithdrawalApprovalModal] = useState(false);\n const [auditBankOption, setAuditBankOption] = useState([]);\n const [auditBankId, setAuditBankId] = useState('');\n const [auditBankAccountId, setAuditBankAccountId] = useState('');\n const [transaction, setTransaction] = useState();\n const [bankAccountOption, setBankAccountOption] = useState([]);\n const [showTransButton, setShowTransButton] = useState(false);\n const [transactionModal, setTransactionModal] = useState(false);\n const [transactionType, setTransactionType] = useState();\n const [transactionComponent, setTransactionComponent] = useState();\n const [memberId, setMemberId] = useState();\n const [initFlag, setInitFlag] = useState(false);\n const [transactionApiUrl, setTransactionApiUrl] = useState(\"\");\n const [receiptImages, setReceiptImages] = useState([]);\n const [currentImage, setCurrentImage] = useState([]);\n const [isViewerOpen, setIsViewerOpen] = useState(false);\n const _DEBIT_TRANSACTIONS = [TransactionType._WITHDRAWAL, TransactionType._UPLINE_TRANSFER];\n\n const _STATUS_OPTIONS = [\n { value: TransactionStatus._OPEN, label: 'Open' },\n { value: TransactionStatus._APPROVED, label: 'Approved' },\n { value: TransactionStatus._REJECTED, label: 'Rejected' },\n ];\n\n const _TRANSACTION_OPTIONS = [\n { value: TransactionType._DEPOSIT, label: 'Deposit' },\n { value: TransactionType._WITHDRAWAL, label: 'Withdrawal' },\n { value: TransactionType._UPLINE_TRANSFER, label: 'Transfer' },\n { value: TransactionType._SHAREHOLDER_CLAIM, label: 'Shareholder Claim' },\n { value: TransactionType._COMMISSION, label: 'Commission' },\n { value: TransactionType._REWARD, label: \"Reward Claim\" },\n { value: TransactionType._BIRTHDAY_REWARD, label: \"Birthday Reward\" },\n { value: TransactionType._VIP_COMMISSION, label: \"VIP Commission\" },\n { value: TransactionType._WEEKLY_RESCUE_BONUS, label: \"Weekly Rescue\" },\n { value: TransactionType._CREDIT_REDEMPTION, label: \"Credit Redemption\" },\n { value: TransactionType._REFERRAL_BONUS, label: 'Referral Bonus' },\n \n ];\n\n const _PANEL_OPTIONS = [\n { value: PanelType._MEMBERSITE, label: 'MemberSite' },\n { value: PanelType._BACKOFFICE, label: 'BackOffice' },\n ];\n\n const [bankingChannelOption, setBankingChannelOption] = useState([]);\n const [selectedStatus, setSelectedStatus] = useState(_STATUS_OPTIONS);\n const [selectedTransaction, setSelectedTransaction] = useState(_TRANSACTION_OPTIONS);\n const [selectedPanel, setSelectedPanel] = useState(_PANEL_OPTIONS);\n const [selectedChannel, setSelectedChannel] = useState([]);\n const [username, setUsername] = useState(\"\");\n const [label, setLabel] = useState(\"All\");\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\n const openImageViewer = useCallback((index) => {\n setCurrentImage(index);\n setIsViewerOpen(true);\n }, []);\n\n const closeImageViewer = () => {\n setCurrentImage(0);\n setIsViewerOpen(false);\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n register({ name: 'auditBankId' }, { required: \"PLEASE_SELECT_BANK\" });\n register({ name: 'auditBankAccountId' }, { required: \"PLEASE_SELECT_BANK_ACCOUNT\" });\n }, [props.username]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (initFlag) {\n getUserTransaction();\n }\n }, [initFlag]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (!stringIsNullOrEmpty(auditBankId)) {\n getBankAccount();\n }\n }, [auditBankId])\n\n useEffect(() => {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, username);\n }, [username]);\n\n /// \n /// Author : -\n /// \n async function getBankAccount() {\n var apiUrl = ApiUrl._API_GET_BANK_ACCOUNT_BY_BANK_ID;\n apiUrl += \"?bankId=\" + auditBankId + \"&withdrawal=\" + true;\n let responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankAccountList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bankAccount) {\n if (bankAccount.withdrawalStatus) {\n bankAccountList.push({ label: bankAccount.accountNumber, value: bankAccount.id });\n }\n });\n\n setBankAccountOption(bankAccountList);\n }\n else {\n _dispatch(showMessage(false, t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n }\n\n\n // If is debit transaction and searched username is not row's username (means transffered to this searched username)\n // If is debit transaction and searched username is empty (viewing from overview)\n // If is transfer transaction and searched username is row's username (means transferred to this searched username)\n const isDebitTransaction = (transaction) => {\n return (_DEBIT_TRANSACTIONS.indexOf(transaction.transactionTypeId) >= 0 && transaction.memberUsername == username) ||\n (_DEBIT_TRANSACTIONS.indexOf(transaction.transactionTypeId) >= 0 && stringIsNullOrEmpty(username)) ||\n (transaction.transactionTypeId == TransactionType._UPLINE_TRANSFER && transaction.memberUsername == username) ||\n (transaction.transactionTypeId == TransactionType._WITHDRAWAL);\n }\n\n // If is not debit transaction \n // If it is transfer type and username is not transaction username and searched username is not empty (viewing from account)\n const isCreditTransaction = (transaction) => {\n return _DEBIT_TRANSACTIONS.indexOf(transaction.transactionTypeId) < 0 ||\n (transaction.transactionTypeId == TransactionType._UPLINE_TRANSFER && transaction.memberUsername != username && !stringIsNullOrEmpty(username))\n }\n\n\n function prepareReceiptImage(imgString) {\n if (imgString != null) {\n let imgArray = [];\n imgString = \"../..\" + imgString;\n imgArray.push(imgString);\n setReceiptImages(imgArray);\n openImageViewer(0);\n }\n else {\n _dispatch(showMessage(false, t('NO_RECEIPT_FOUND')));\n }\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setCalendarStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setCalendarEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n }\n\n\n /// \n /// Author : -\n /// \n const init = async () => {\n if (props.username && props.id) {\n setUsername(props.username);\n setMemberId(props.id);\n setShowTransButton(true);\n }\n try {\n let channelResponseJson = await ApiEngine.get(ApiUrl._API_GET_BANKING_CHANNEL);\n if (channelResponseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankingChannelList = [];\n channelResponseJson[ApiKey._API_DATA_KEY].forEach(function (bankingChannel) {\n bankingChannelList.push({ label: bankingChannel.name, value: bankingChannel.name });\n });\n\n setBankingChannelOption(bankingChannelList);\n }\n else {\n throw channelResponseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n let userBankResponseJson = await ApiEngine.get(ApiUrl._API_GET_USER_BANK);\n if (userBankResponseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankList = [];\n userBankResponseJson[ApiKey._API_DATA_KEY].forEach(function (bank) {\n bankList.push({ label: bank.bankName, value: bank.id });\n });\n setAuditBankOption(bankList);\n }\n else {\n throw userBankResponseJson[ApiKey._API_MESSAGE_KEY];\n }\n\n setInitFlag(true);\n }\n catch (ex) {\n _dispatch(showMessage(false, t(ex)));\n }\n }\n\n /// \n /// Author : -\n /// \n const getUserTransaction = async () => {\n let status = [];\n let transactionType = [];\n let channel = [];\n let panel = [];\n if (!stringIsNullOrEmpty(selectedStatus)) {\n selectedStatus.map((selected) => {\n status.push(selected.value);\n })\n }\n if (!stringIsNullOrEmpty(selectedTransaction)) {\n selectedTransaction.map((selected) => {\n transactionType.push(selected.value);\n })\n }\n\n if (!stringIsNullOrEmpty(selectedPanel)) {\n selectedPanel.map((selected) => {\n panel.push(selected.value);\n })\n }\n\n let fetchUrl = ApiUrl._API_GET_ALL_USER_TRANSACTION;\n fetchUrl += \"?startDate=\" + calendarStartDate + \"&endDate=\" + calendarEndDate + \"&approvalStatus=\" + status;\n fetchUrl += \"&transactionType=\" + transactionType + \"&bankingChannel=\" + channel + \"&panel=\" + panel + \"&v=\" + Date.now();\n if (username !== \"\") {\n fetchUrl += \"&username=\" + (label == \"All\" ? \"\" : label);\n }\n setTransactionApiUrl(fetchUrl);\n }\n\n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n\n let _tableColumns = [\n {\n id: \"id\",\n Header: \"ID\",\n accessor: \"id\",\n minWidth: 100,\n Footer: () => {\n return {t(\"TOTAL\")}: \n },\n },\n {\n Header: t(\"DATE\"),\n accessor: \"submitTime\",\n style: {\n whiteSpace: 'unset',\n wordBreak: 'break-word'\n },\n Cell: ({ row }) => {\n return <>{moment(row.original.submitTime).format(\"YYYY-MM-DD HH:mm:ss\")}\n },\n minWidth: 100\n },\n {\n Header: t(\"USERNAME\"),\n accessor: \"memberUsername\",\n minWidth: 100,\n },\n {\n Header: t(\"FULLNAME\"),\n accessor: \"memberFullName\",\n minWidth: 100\n },\n {\n Header: t(\"TYPE\"),\n accessor: \"transactionType\",\n minWidth: 100,\n Cell: ({ row }) => {\n if (row.original.transactionTypeId == 6 && row.original.transferTo != username) {\n return <>{t(row.original.transactionType + \" To \" + row.original.transferTo)}\n\n }\n else if (row.original.transactionTypeId == 6 && row.original.transferTo == username) {\n return <>{t(row.original.transactionType + \" To \" + row.original.transferTo)}\n\n }\n else {\n return <>{t(row.original.transactionType)}\n }\n }\n },\n {\n Header: t(\"STATUS\"),\n accessor: \"approvalStatusString\",\n Cell: ({ row }) => {\n switch (row.original.approvalStatus) {\n case TransactionStatus._APPROVED:\n return {t(\"APPROVED\")}\n break;\n case TransactionStatus._REJECTED:\n return {t(\"REJECTED\")}\n break;\n default:\n return {t(row.original.approvalStatusString)}\n break;\n }\n },\n minWidth: 100\n },\n {\n id: \"debit\",\n Header: t(\"DEBIT\"),\n accessor: \"amount\",\n minWidth: 100,\n Cell: ({ row }) => {\n if (isDebitTransaction(row.original)) {\n return <>-{numberWithCurrencyFormat(parseFloat(row.original.amount))}\n }\n else {\n return <>\n }\n },\n Footer: ({ page }) => {\n const debitSum = page.reduce((sum, currentValue) => {\n if (currentValue.original.amount && isDebitTransaction(currentValue.original)) {\n return sum + (parseFloat(currentValue.original.amount) * -1);\n }\n else {\n return sum;\n }\n }, 0);\n return {numberWithCurrencyFormat(parseFloat(debitSum))}\n }\n },\n {\n id: \"credit\",\n Header: t(\"CREDIT\"),\n accessor: \"amount\",\n minWidth: 100,\n Cell: ({ row }) => {\n if (isCreditTransaction(row.original)) {\n return <>{numberWithCurrencyFormat(parseFloat(row.original.amount), 3)}\n }\n else {\n return <>\n }\n },\n Footer: ({ page }) => {\n const creditSum = page.reduce((sum, currentValue) => {\n if (currentValue.original.amount && isCreditTransaction(currentValue.original)) {\n return sum + parseFloat(currentValue.original.amount);\n }\n else {\n return sum;\n }\n }, 0);\n return {numberWithCurrencyFormat(parseFloat(creditSum), 3)}\n }\n },\n {\n Header: t(\"CHANNEL\"),\n accessor: \"channel\",\n minWidth: 100\n },\n {\n Header: t(\"PANEL\"),\n accessor: \"panel\",\n Cell: ({ row }) => {\n return <>{t(row.original.panel.toUpperCase())}\n },\n minWidth: 100\n }, \n ]\n \n /// \n /// Author : -\n /// \n useEffect(() => {\n setAuditBankAccountId('');\n setAuditBankId('');\n register({ name: 'auditBankId' }, { required: \"PLEASE_SELECT_BANK\" });\n register({ name: 'auditBankAccountId' }, { required: \"PLEASE_SELECT_BANK_ACCOUNT\" });\n }, [withdrawalApprovalModal])\n\n return (\n
    \n

    {t(\"TRANSACTION_REPORT\")}

    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedStatus}\n options={_STATUS_OPTIONS}\n isMulti\n onChange={(e) => {\n setSelectedStatus(e)\n }}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedTransaction}\n options={_TRANSACTION_OPTIONS}\n isMulti\n onChange={(e) => {\n setSelectedTransaction(e)\n }}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabel(e.label);\n setUsername(e.value);\n }}\n />\n
    \n
    \n
    \n \n
    \n
    \n {showTransButton &&
    \n
    \n \n \n
    \n
    }\n
    \n \n
    \n
    \n
    \n\n
    \n
    \n )\n}\n\nexport default TransactionReport;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n DEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Select from \"react-select\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst WalletTransferReport = (props) => {\n let _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [reportData, setReportData] = useState([]);\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [userHierachy, setUserHierachy] = useState([]);\n const _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n const [allMembers, setAllMembers] = useState([]);\n const [selectedMember, setSelectedMember] = useState(\"\");\n const [allBonusMembers, setAllBonusMembers] = useState([]);\n const [selectedBonusMember, setSelectedBonusMember] = useState(\"\");\n const ALL_OPTION_LABEL = \"All\";\n const ALL_OPTION_VALUE = \"all\";\n const [selectedProduct, setSelectedProduct] = useState(ALL_OPTION_VALUE);\n const [productList, setProductList] = useState([]);\n const [playerId, setPlayerId] = useState();\n const [bonusPlayerId, setBonusPlayerId] = useState();\n const _PAGING_COUNT = 10;\n\n /// \n /// Author : -\n /// \n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n let _tableColumns = [\n {\n Header: \"TRANSACTION_ID\",\n accessor: \"id\",\n Cell: ({ row }) => {\n return (\n {\n readSubReport(row.original.id);\n }}\n >\n {row.original.id}\n \n );\n },\n Footer: () => {\n return {t(\"TOTAL\")}: \n },\n disableSortBy: true,\n },\n {\n Header: \"DATE\",\n accessor: \"createdTime\",\n disableSortBy: true,\n },\n {\n Header: \"GAME_NAME\",\n accessor: \"productName\",\n disableSortBy: true,\n },\n {\n Header: \"USERNAME\",\n accessor: \"transferPerson\",\n disableSortBy: true,\n },\n {\n Header: \"TRASFER_PLAYER\",\n accessor: \"transferPlayer\",\n disableSortBy: true,\n },\n {\n Header: \"WALLET_BEFORE_BALANCE\",\n accessor: \"walletBefore\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.walletBefore));\n },\n disableSortBy: true,\n },\n {\n Header: \"DEPOSIT_AMOUNT\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(\n -parseFloat(row.original.depositAmount)\n );\n },\n Footer: ({ page }) => {\n const depositSum = page.reduce((sum, currentValue) => {\n console.log(currentValue)\n if (currentValue.original.depositAmount) {\n return sum + parseFloat(currentValue.original.depositAmount * -1);\n }\n else {\n return sum;\n }\n }, 0);\n return {numberWithCurrencyFormat(parseFloat(depositSum))}\n },\n disableSortBy: true,\n },\n {\n Header: \"WALLET_AFTER_BALANCE\",\n accessor: \"walletAfter\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.walletAfter));\n },\n disableSortBy: true,\n },\n {\n Header: \"BONUS_RECEIVE_MEMBER\",\n accessor: \"targetMember\",\n disableSortBy: true,\n },\n {\n Header: \"BONUS_RECEIVE_PLAYER\",\n accessor: \"targetPlayer\",\n disableSortBy: true,\n },\n {\n Header: \"BONUS_RATE\",\n accessor: \"bonusRate\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(parseFloat(row.original.bonusRate));\n },\n disableSortBy: true,\n },\n {\n Header: \"GAME_WALLET_BEFORE_BALANCE\",\n accessor: \"gameWalletBefore\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(\n parseFloat(row.original.gameWalletBefore)\n );\n },\n disableSortBy: true,\n },\n {\n Header: \"AMOUNT\",\n Cell: ({ row }) => {\n if (row.original.transferPlayer === row.original.targetPlayer) {\n return numberWithCurrencyFormat(\n parseFloat(row.original.depositAmount)\n );\n } else {\n return numberWithCurrencyFormat(0);\n }\n },\n disableSortBy: true,\n },\n {\n Header: \"GAME_WALLET_AFTER_BALANCE\",\n accessor: \"gameWalletAfter\",\n Cell: ({ row }) => {\n return numberWithCurrencyFormat(\n parseFloat(row.original.gameWalletAfter)\n );\n },\n disableSortBy: true,\n },\n {\n Header: \"REFERENCE_ID\",\n accessor: \"referenceId\",\n Cell: ({ row }) => {\n return row.original.referenceId;\n },\n disableSortBy: true,\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n await fetch(ApiUrl._API_GET_MASTER_PRODUCT_ASSIGNMENT_DATA, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const accountProductOptionList = [\n { label: ALL_OPTION_LABEL, value: ALL_OPTION_VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (option) {\n accountProductOptionList.push({\n label: option.productName,\n value: option.productId,\n });\n });\n\n setProductList(accountProductOptionList);\n }\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n async function readReport(memberId, bonusMemberId, searchDownline = true) {\n try {\n var apiUrl =\n ApiUrl._API_MANAGE_TRANSFER_WALLET +\n \"?dateFrom=\" +\n startDate +\n \"&dateTo=\" +\n endDate +\n \"&searchDownline=\" +\n searchDownline;\n\n if (!stringIsNullOrEmpty(memberId)) {\n apiUrl += \"&memberId=\" + memberId;\n }\n\n if (!stringIsNullOrEmpty(bonusMemberId)) {\n apiUrl += \"&bonusMemberId=\" + bonusMemberId;\n }\n\n if (selectedProduct != ALL_OPTION_VALUE) {\n apiUrl += \"&masterProductId=\" + selectedProduct;\n }\n\n if (!stringIsNullOrEmpty(playerId)) {\n apiUrl += \"&playerId=\" + playerId;\n }\n\n if (!stringIsNullOrEmpty(bonusPlayerId)) {\n apiUrl += \"&bonusPlayerId=\" + bonusPlayerId;\n }\n\n var responseJson = await ApiEngine.get(apiUrl);\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setReportData(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n } catch (error) {\n _dispatch(showMessage(false, t(error)));\n }\n }\n\n async function readSubReport(targetTransferId) {\n try {\n var apiUrl =\n ApiUrl._API_MANAGE_TRANSFER_WALLET +\n \"?dateFrom=\" +\n startDate +\n \"&dateTo=\" +\n endDate +\n \"&searchDownline=\" +\n true;\n\n if (!stringIsNullOrEmpty(targetTransferId)) {\n apiUrl += \"&targetTransferId=\" + targetTransferId;\n apiUrl += \"&isSubReport=\" + true;\n }\n\n var responseJson = await ApiEngine.get(apiUrl);\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setReportData(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n throw responseJson[ApiKey._API_MESSAGE_KEY];\n }\n } catch (error) {\n _dispatch(showMessage(false, t(error)));\n }\n }\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }, type) {\n console.log(type);\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n (page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == _PAGING_COUNT,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(props.id) && t(\"WALLET_TRANSFER_REPORTS\")}\n

    \n \n \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n getMemberList(\n search,\n loadOptions,\n { page: obj.page },\n \"TRANSFER\"\n )\n }\n additional={{\n page: 1,\n }}\n value={selectedMember}\n onChange={(e) => setSelectedMember(e)}\n />\n
    \n
    \n
    \n
    \n \n {\n setPlayerId(e.target.value);\n }}\n />\n
    \n
    \n
    \n
    \n \n product.value == selectedProduct\n )}\n options={productList}\n onChange={(e) => {\n setSelectedProduct(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n \n\n \n getMemberList(\n search,\n loadOptions,\n { page: obj.page },\n \"BONUS\"\n )\n }\n additional={{\n page: 1,\n }}\n value={selectedBonusMember}\n onChange={(e) => setSelectedBonusMember(e)}\n />\n
    \n
    \n
    \n
    \n \n {\n setBonusPlayerId(e.target.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n {\n readReport(\n selectedMember.value,\n selectedBonusMember.value,\n false\n );\n }}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n \n \n \n );\n};\n\nexport default WalletTransferReport;\n","import React, { useState, useEffect, useMemo, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\nimport {\n\tPanel,\n\tPanelHeader,\n\tPanelBody,\n} from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalFooter,\n\tModalHeader,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { navigateTo } from \"../../util/Util.js\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tWebUrl,\n\tAccessRight,\n\tTransactionType,\n\tTransactionStatus,\n\tPanelType,\n\tLanguageKey,\n\tBankingChannelName,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant.js\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction.js\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n\tstringIsNullOrEmpty,\n\tcreateFormBody,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util.js\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\nconst ReferralReportDetails = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tconst _PAGING_COUNT = 10;\n\n const [reportData, setReportData] = useState([]);\n\tconst [selectedFilterMember, setSelectedFilterMember] = useState();\n\tconst [selectedMember, setSelectedMember] = useState(\"\");\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\n let _tableColumns = [\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n Cell: ({ row }) => {\n return (\n \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\tWebUrl._URL_REFERRAL_REPORT_DETAILS,\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t...row.original,\n\t\t\t\t\t\t\t\t\t\tstartDate,\n\t\t\t\t\t\t\t\t\t\tendDate\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{row.original.username}\n\t\t\t\t\t\t\n \n \n );\n },\n Footer: () => {\n return {t(\"TOTAL\")}: \n },\n },\n {\n Header: \"Phone Number\",\n accessor: \"phoneNumber\",\n disableSortBy: true,\n },\n {\n Header: \"Referral Code\",\n accessor: \"referralCode\",\n disableSortBy: true,\n },\n {\n Header: \"Remark\",\n accessor: \"remark\",\n disableSortBy: true,\n },\n {\n Header: \"Total Register\",\n accessor: \"totalRegister\",\n Cell: ({ row }) => {\n return (\n \n {row.original.totalRegister}\n \n );\n },\n Footer: () => {\n let totalRegister = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalRegister) {\n totalRegister += reportData[i].totalRegister;\n }\n }\n return (\n \n {totalRegister}\n \n );\n },\n },\n {\n Header:\"Total Deposit\",\n accessor: \"totalDeposit\",\n Cell: ({ row }) => {\n let totalDeposit = parseFloat(row.original.totalDeposit);\n return (\n \n {numberWithCurrencyFormat(totalDeposit, 3, true)}\n \n );\n },\n Footer: () => {\n let totalDeposit = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalDeposit) {\n totalDeposit += parseFloat(reportData[i].totalDeposit);\n }\n }\n return (\n \n {numberWithCurrencyFormat(totalDeposit, 3, true)}\n \n );\n },\n },\n {\n Header:\"Total Withdraw\",\n accessor: \"totalWithdraw\",\n Cell: ({ row }) => {\n let totalWithdraw = parseFloat(row.original.totalWithdraw);\n return (\n \n {numberWithCurrencyFormat(totalWithdraw, 3, true)}\n \n );\n },\n Footer: () => {\n let totalWithdraw = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalWithdraw) {\n totalWithdraw += parseFloat(reportData[i].totalWithdraw);\n }\n }\n return (\n \n {numberWithCurrencyFormat(totalWithdraw, 3, true)}\n \n );\n },\n },\n ];\n\n\n useEffect(() => {\n getReferralReport();\n }, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getReferralReport = async () => {\n\t\t_dispatch(setBusy());\n\t\ttry {\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_GET_REFERRAL_REPORT +\n\t\t\t\t\"?startDate=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&endDate=\" +\n\t\t\t\tendDate;\n\n\t\t\tapiUrl += \"&memberId=\" + selectedMember;\n\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n _dispatch(setIdle());\n\t};\n\n\t/// \n\t/// Author : Wong\n\t/// \n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: \"\" });\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == _PAGING_COUNT,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t}; /// \n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"REFERRAL_REPORT_TITLE\")}

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedFilterMember(e);\n\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedMember(e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tgetReferralReport();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tclassName=\"btn btn-primary\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default ReferralReportDetails;\n","import React, { useState, useEffect, useMemo, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\nimport {\n\tPanel,\n\tPanelHeader,\n\tPanelBody,\n} from \"../../components/panel/panel.jsx\";\nimport { useHistory, withRouter, useLocation } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalFooter,\n\tModalHeader,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { navigateTo } from \"../../util/Util.js\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tWebUrl,\n\tAccessRight,\n\tTransactionType,\n\tTransactionStatus,\n\tPanelType,\n\tLanguageKey,\n\tBankingChannelName,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant.js\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction.js\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n\tstringIsNullOrEmpty,\n\tcreateFormBody,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util.js\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\nconst ReferralReportDetails = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n \tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\tconst _PAGING_COUNT = 10;\n\n const [reportData, setReportData] = useState([]);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [referralCodeId, setReferralCodeId] = useState(\"\");\n\n let _tableColumns = [\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n Cell: ({ row }) => {\n return (\n \n {row.original.username}\n \n );\n },\n Footer: () => {\n return {t(\"TOTAL\")}: \n },\n },\n {\n Header: \"Phone Number\",\n accessor: \"phoneNumber\",\n disableSortBy: true,\n },\n {\n Header: \"Referral Code\",\n accessor: \"referralCode\",\n disableSortBy: true,\n },\n {\n Header: \"Remark\",\n accessor: \"remark\",\n disableSortBy: true,\n },\n {\n Header:\"Total Deposit\",\n accessor: \"totalDeposit\",\n Cell: ({ row }) => {\n let totalDeposit = parseFloat(row.original.totalDeposit);\n return (\n \n {numberWithCurrencyFormat(totalDeposit, 3, true)}\n \n );\n },\n Footer: () => {\n let totalDeposit = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalDeposit) {\n totalDeposit += parseFloat(reportData[i].totalDeposit);\n }\n }\n return (\n \n {numberWithCurrencyFormat(totalDeposit, 3, true)}\n \n );\n },\n },\n {\n Header:\"Total Withdraw\",\n accessor: \"totalWithdraw\",\n Cell: ({ row }) => {\n let totalWithdraw = parseFloat(row.original.totalWithdraw);\n return (\n \n {numberWithCurrencyFormat(totalWithdraw, 3, true)}\n \n );\n },\n Footer: () => {\n let totalWithdraw = 0;\n for (let i = 0; i <= reportData.length; i++) {\n if (reportData[i] && reportData[i].totalWithdraw) {\n totalWithdraw += parseFloat(reportData[i].totalWithdraw);\n }\n }\n return (\n \n {numberWithCurrencyFormat(totalWithdraw, 3, true)}\n \n );\n },\n },\n ];\n\n\n useEffect(() => {\n\t\tsetReferralCodeId(_location.state.referralCodeId)\n\t\tsetStartDate(moment(_location.state.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(_location.state.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n }, []);\n\n\tuseEffect(() => {\n\t\tif(referralCodeId) {\n\t\t\tgetReferralReport();\n\t\t}\n }, [referralCodeId]);\n\t\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getReferralReport = async () => {\n\t\t_dispatch(setBusy());\n\t\ttry {\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_GET_REFERRAL_REPORT_DETAILS +\n\t\t\t\t\"?startDate=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&endDate=\" +\n\t\t\t\tendDate;\n\n\t\t\tapiUrl += \"&referralCodeId=\" + referralCodeId;\n\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\tconsole.log('data')\n\t\t\t\tconsole.log(responseJson[ApiKey._API_DATA_KEY])\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n _dispatch(setIdle());\n\t};\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t}; /// \n\n\treturn (\n\t\t
    \n\t\t\t{/*

    {t(\"REFERRAL_REPORT_TITLE_DETAILS\")}

    */}\n\t\t\t

    \n\t\t\t\t{_location.state.username ? _location.state.username : t(\"REFERRAL_REPORT_TITLE_DETAILS\")}\n\t\t\t\t

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t

    {t(\"REFERRAL_REPORT_TITLE_DETAILS\")}

    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tgetReferralReport();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tclassName=\"btn btn-primary\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default withRouter(ReferralReportDetails);\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\n\n/// \n/// Author : -\n/// \n\nconst ShareholderProcessSalesReport = (props) => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [startDate, setStartDate] = useState(moment().startOf('day').format(\"YYYY-MM-DD HH:mm:ss\"));\n const [endDate, setEndDate] = useState(moment().endOf('day').format(\"YYYY-MM-DD HH:mm:ss\"));\n const [salesData, setSalesData] = useState({});\n const [salesTotal, setSalesTotal] = useState({});\n const [initPage, setInitPage] = useState(true);\n\n const textLeft = {\n textAlign: \"left\"\n };\n\n const textRight = {\n textAlign: \"right\"\n };\n\n /// \n /// Author : -\n /// \n const getSalesReport = async () => {\n _dispatch(setBusy());\n await fetch(\n ApiUrl._API_GET_SHAREHOLDER_PROCESS_SALES_REPORT +\n \"?startDate=\" +\n startDate +\n \"&endDate=\" +\n endDate,\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setSalesData(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n setInitPage(false);\n _dispatch(setIdle());\n });\n };\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n return (\n
    \n

    {t(\"SHAREHOLDER_PROCESS_SALES_REPORT\")}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n getSalesReport()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n {Object.keys(salesData) && Object.keys(salesData).length > 0 &&\n <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n\n {Object.keys(salesData) && Object.keys(salesData).length > 0 &&\n salesData.map((data, index) => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n )\n })\n }\n
    {t(\"Date\")}{t(\"Processed\")}{t(\"Turnover\")}{t(\"V.Turnover\")}{t(\"WinLose\")}{t(\"Royalty\")}{t(\"Commission\")}{t(\"Balance\")}{t(\"Payout\")}{t(\"Net Profit\")}
    { moment(data[\"date\"]).format(\"DD-MM-YYYY\") }{data[\"processed\"] ? {t(\"YES\")} : {t(\"NO\")}}{numberWithCurrencyFormat(parseFloat(data[\"turnover\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(data[\"vTurnover\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(data[\"winloss\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(data[\"royalty\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(data[\"commission\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(data[\"balance\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(data[\"payout\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(data[\"netProfit\"]), 3, true)}
    \n \n }\n\n {Object.keys(salesData).length == 0 &&\n <>\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {t(\"Date\")}{t(\"Processed\")}{t(\"Turnover\")}{t(\"WinLose\")}{t(\"Royalty\")}{t(\"Commission\")}{t(\"Balance\")}{t(\"Payout\")}{t(\"Net Profit\")}
    {initPage ? \"Please select date and press \\\"Search\\\" to continue\" : \"No report for the date\"}
    \n \n }\n
    \n
    \n \n \n \n );\n};\n\nexport default ShareholderProcessSalesReport;\n","import React, { useState, useEffect, useContext } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { stringIsNullOrEmpty, isObjectEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from '../../redux/AppAction';\n\nconst Summary = () => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n var _dispatch = useDispatch();\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n\n const [allData, setAllData] = useState({});\n const [startDate, setStartDate] = useState(moment().add(-1, \"days\").startOf('day').format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().add(-1, \"days\").endOf('day').format(\"YYYY-MM-DD\"));\n\n const [companySummaryData, setCompanySummaryData] = useState({});\n const [companyCategoryTotal, setCompanyCategoryTotal] = useState({});\n const [companyGrandTotal, setCompanyGrandTotal] = useState({});\n\n const [processedData, setProcessedData] = useState({});\n const [processedUserTotal, setProcessedUserTotal] = useState({});\n const [processedCategoryTotal, setProcessedCategoryTotal] = useState({});\n const [processedSubTotal, setProcessedSubTotal] = useState({});\n const [processedGrandTotal, setProcessedGrandTotal] = useState({});\n const [currentViewer, setCurrentViewer] = useState(\"\");\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\n const [selectedMember, setSelectedMember] = useState(\"\");\n const [locationStateObj, setLocationStateObj] = useState();\n const [memberId, setMemberId] = useState(\"\");\n const [nodePathMembers, setNodePathMembers] = useState([]);\n const [temp, setTemp] = useState([]);\n const [initPage, setInitPage] = useState(true);\n\n useEffect(() => {\n let nodePath = [];\n let memId = \"\";\n if (temp.memberNodePath) {\n if (temp.memberNodePath.length > 0) {\n nodePath = temp.memberNodePath;\n memId = nodePath[nodePath.length - 1].id;\n }\n }\n\n setNodePathMembers(nodePath);\n setMemberId(memId);\n setLocationStateObj({\n parentMemberId: memId,\n });\n }, [temp]);\n\n const companyToggle = (category) => {\n let tempObj = companyCategoryTotal;\n tempObj[category].show = !tempObj[category].show;\n setCompanyCategoryTotal({ ...tempObj });\n }\n\n const settlementToggle = (username) => {\n let tempObj = processedUserTotal;\n tempObj[username].showset = !tempObj[username].showset;\n setProcessedUserTotal({ ...tempObj });\n }\n\n const settlementCatToggle = (username, category) => {\n let tempObj = processedCategoryTotal;\n tempObj[username][category].showset = !tempObj[username][category].showset;\n setProcessedCategoryTotal({ ...tempObj });\n }\n\n const usernameToggle = (username) => {\n let tempObj = processedUserTotal;\n tempObj[username].show = !tempObj[username].show;\n setProcessedUserTotal({ ...tempObj });\n }\n const categoryToggle = (username, category) => {\n let tempObj = processedCategoryTotal;\n tempObj[username][category].show = !tempObj[username][category].show;\n setProcessedCategoryTotal({ ...tempObj });\n }\n\n /// \n /// Author: -\n /// \n async function getShareholderDetail() { //for the first page only\n setTemp([]);\n setCurrentViewer(\"\");\n var responseJson = await ApiEngine.get(`${ApiUrl._API_GET_MEMBER_SHAREHOLDER_DETAIL}?&startdate=${startDate}&enddate=${endDate}`);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n console.log(data);\n setAllData(data);\n\n let summaryRows = {};\n let summaryCategoryTotal = {};\n let summaryGrandTotal = { sales: 0, vsales: 0, payout: 0, netProfit: 0 };\n\n let dataRows = {};\n let userTotal = {};\n let categoryTotal = {};\n let subTotal = { sales: 0, vsales: 0, netProfit: 0 };\n let grandTotal = { sales: 0, vsales: 0, netProfit: 0 };\n\n if (data != null) {\n\n data[\"summaryData\"].map((summary, index) => {\n if (!summaryRows[summary.categoryName]) {\n summaryRows[summary.categoryName] = {};\n summaryCategoryTotal[summary.categoryName] = { grossSales: 0, validTurnover: 0, payout: 0, netProfit: 0 };\n }\n\n if (!summaryRows[summary.categoryName][summary.productName]) {\n summaryRows[summary.categoryName][summary.productName] = { grossSales: summary[\"grossSales\"], validTurnover: summary[\"validTurnover\"], payout: summary[\"payout\"], netProfit: summary[\"netProfit\"] };\n }\n\n summaryCategoryTotal[summary.categoryName].show = false;\n summaryCategoryTotal[summary.categoryName].grossSales += summary[\"grossSales\"];\n summaryCategoryTotal[summary.categoryName].validTurnover += summary[\"validTurnover\"];\n summaryCategoryTotal[summary.categoryName].payout += summary[\"payout\"];\n summaryCategoryTotal[summary.categoryName].netProfit += summary[\"netProfit\"];\n\n if (summary.categoryName !== null) {\n summaryGrandTotal.sales += summary[\"grossSales\"];\n summaryGrandTotal.vsales += summary[\"validTurnover\"];\n summaryGrandTotal.payout += summary[\"payout\"];\n summaryGrandTotal.netProfit += summary[\"netProfit\"];\n }\n else {\n summaryGrandTotal.netProfit += summary[\"netProfit\"];\n }\n })\n setCompanySummaryData(summaryRows);\n setCompanyCategoryTotal(summaryCategoryTotal);\n setCompanyGrandTotal(summaryGrandTotal);\n\n\n data[\"downlineData\"].map((e, i) => {\n if (!dataRows[e.username]) {\n dataRows[e.username] = {};\n userTotal[e.username] = { grossSales: 0, validTurnover: 0, netProfit: 0, profit: 0, settlement: 0, share: 0 };\n categoryTotal[e.username] = {};\n }\n\n if (!dataRows[e.username][e.categoryName]) {\n dataRows[e.username][e.categoryName] = {};\n categoryTotal[e.username][e.categoryName] = { grossSales: 0, validTurnover: 0, netProfit: 0, profit: 0, settlement: 0, share: 0 };\n }\n\n if (!dataRows[e.username][e.categoryName][e.productName]) {\n dataRows[e.username][e.categoryName][e.productName] = { grossSales: e.grossSales, validTurnover: e.validTurnover, netProfit: e.netProfit, profit: e.profit, settlement: e.settlement, share: e.share };\n }\n\n userTotal[e.username].show = false;\n userTotal[e.username].showset = false;\n userTotal[e.username].grossSales += e.grossSales;\n userTotal[e.username].validTurnover += e.validTurnover;\n userTotal[e.username].netProfit += e.netProfit;\n userTotal[e.username].profit += e.profit;\n userTotal[e.username].settlement += e.settlement;\n userTotal[e.username].share = e.share;\n\n\n categoryTotal[e.username][e.categoryName].show = false;\n categoryTotal[e.username][e.categoryName].showset = false;\n categoryTotal[e.username][e.categoryName].grossSales += e.grossSales;\n categoryTotal[e.username][e.categoryName].validTurnover += e.validTurnover;\n categoryTotal[e.username][e.categoryName].netProfit += e.netProfit;\n categoryTotal[e.username][e.categoryName].profit += e.profit;\n categoryTotal[e.username][e.categoryName].settlement += e.settlement;\n categoryTotal[e.username][e.categoryName].share = e.share;\n\n subTotal.sales += e.grossSales;\n subTotal.vsales += e.validTurnover;\n subTotal.netProfit += e.profit;\n\n grandTotal.sales += e.grossSales;\n grandTotal.vsales += e.validTurnover;\n grandTotal.netProfit += e.profit;\n grandTotal.netProfit += e.settlement;\n\n });\n setProcessedUserTotal(userTotal);\n setProcessedCategoryTotal(categoryTotal);\n setProcessedData(dataRows);\n setProcessedSubTotal(subTotal);\n setProcessedGrandTotal(grandTotal);\n }\n }\n setInitPage(false);\n }\n\n const getDownlineSales = async (username) => { // for 2nd page onwards, after clicking \"Company\" on first page\n var responseJson = await ApiEngine.get(ApiUrl._API_GET_MEMBER_SHAREHOLDER_DETAIL + \"?startDate=\" + startDate + \"&endDate=\" + endDate + \"&username=\" + username);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n console.log(data);\n setAllData(data);\n\n let dataRows = {};\n let userTotal = {};\n let categoryTotal = {};\n let subTotal = { sales: 0, vsales: 0, netProfit: 0 };\n let grandTotal = { sales: 0, vsales: 0, netProfit: 0 };\n if (data[\"downlineData\"].length != 0) {\n setCurrentViewer(username);\n if (username === \"Company\") {\n data[\"usernameList\"].map((uplineUser, i) => {\n if (!dataRows[uplineUser]) {\n dataRows[uplineUser] = {};\n userTotal[uplineUser] = { grossSales: 0, validTurnover: 0, netProfit: 0, profit: 0, settlement: 0, share: 0 };\n categoryTotal[uplineUser] = {};\n }\n });\n\n data[\"downlineData\"].map((downline, i) => {\n\n downline.map((player, index) => {\n if (!dataRows[player.username][player.categoryName]) {\n dataRows[player.username][player.categoryName] = {};\n categoryTotal[player.username][player.categoryName] = { grossSales: 0, validTurnover: 0, netProfit: 0, profit: 0, settlement: 0, share: 0 };\n }\n\n categoryTotal[player.username][player.categoryName].grossSales += player.grossSales;\n categoryTotal[player.username][player.categoryName].validTurnover += player.validTurnover;\n categoryTotal[player.username][player.categoryName].netProfit += player.netProfit;\n categoryTotal[player.username][player.categoryName].profit += player.profit;\n categoryTotal[player.username][player.categoryName].settlement += player.settlement;\n categoryTotal[player.username][player.categoryName].share = player.share;\n\n userTotal[player.username].grossSales += player.grossSales;\n userTotal[player.username].validTurnover += player.validTurnover;\n userTotal[player.username].netProfit += player.netProfit;\n userTotal[player.username].profit += player.profit;\n userTotal[player.username].settlement += player.settlement;\n userTotal[player.username].share = player.share;\n });\n });\n setProcessedUserTotal(userTotal);\n setProcessedCategoryTotal(categoryTotal);\n setProcessedData(dataRows);\n }\n else {\n data[\"downlineData\"].map((e, i) => {\n if (!dataRows[e.username]) {\n dataRows[e.username] = {};\n userTotal[e.username] = { grossSales: 0, validTurnover: 0, netProfit: 0, profit: 0, settlement: 0, share: 0 };\n categoryTotal[e.username] = {};\n }\n\n if (!dataRows[e.username][e.categoryName]) {\n dataRows[e.username][e.categoryName] = {};\n categoryTotal[e.username][e.categoryName] = { grossSales: 0, validTurnover: 0, netProfit: 0, profit: 0, settlement: 0, share: 0 };\n }\n\n if (!dataRows[e.username][e.categoryName][e.productName]) {\n dataRows[e.username][e.categoryName][e.productName] = { grossSales: e.grossSales, validTurnover: e.validTurnover, netProfit: e.netProfit, profit: e.profit, settlement: e.settlement, share: e.share };\n }\n\n userTotal[e.username].show = false;\n userTotal[e.username].showset = false;\n userTotal[e.username].grossSales += e.grossSales;\n userTotal[e.username].validTurnover += e.validTurnover;\n userTotal[e.username].netProfit += e.netProfit;\n userTotal[e.username].profit += e.profit;\n userTotal[e.username].settlement += e.settlement;\n userTotal[e.username].share = e.share;\n\n\n categoryTotal[e.username][e.categoryName].show = false;\n categoryTotal[e.username][e.categoryName].showset = false;\n categoryTotal[e.username][e.categoryName].grossSales += e.grossSales;\n categoryTotal[e.username][e.categoryName].validTurnover += e.validTurnover;\n categoryTotal[e.username][e.categoryName].netProfit += e.netProfit;\n categoryTotal[e.username][e.categoryName].profit += e.profit;\n categoryTotal[e.username][e.categoryName].settlement += e.settlement;\n categoryTotal[e.username][e.categoryName].share = e.share;\n\n\n subTotal.sales += e.grossSales;\n subTotal.vsales += e.validTurnover;\n subTotal.netProfit += e.profit;\n\n grandTotal.sales += e.grossSales;\n grandTotal.vsales += e.validTurnover;\n grandTotal.netProfit += e.profit;\n grandTotal.netProfit += e.settlement;\n });\n setProcessedUserTotal(userTotal);\n setProcessedCategoryTotal(categoryTotal);\n setProcessedData(dataRows);\n setProcessedSubTotal(subTotal);\n setProcessedGrandTotal(grandTotal);\n }\n responseJson = await ApiEngine.get(ApiUrl._API_GET_DOWNLINE_BY_REFERRER_USING_USERNAME + \"?username=\" + username);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTemp(data);\n }\n }\n else {\n _dispatch(showMessage(false, t(\"NO_FURTHER_DOWNLINE_DATA_FOUND\")));\n }\n }\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"SHAREHOLDERS_DOWNLINE_REPORT\")}

    \n \n \n
    \n
    \n {currentViewer !== \"\" &&\n <>\n
    \n {\n setSelectedMember(\"\");\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n getShareholderDetail();\n }}\n >\n {_username}\n \n {nodePathMembers.map((m, index) => {\n return (\n <>\n {index == 0 && \">\"}\n getDownlineSales(m.username)}\n >\n {m.username}\n \n {index != nodePathMembers.length - 1 && \">\"}\n \n );\n })}\n
    \n
    \n \n }\n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n getShareholderDetail()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n\n {Object.keys(companySummaryData) && Object.keys(companySummaryData).length > 0 && <>\n
    {t(\"COMPANY_SUMMARY\")}
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n {Object.keys(companySummaryData).length > 0 && Object.keys(companyCategoryTotal).length > 0 &&\n Object.keys(companySummaryData).map((category, i) => {\n if (typeof (companyCategoryTotal[category]) !== \"undefined\") {\n return (\n <>\n \n \n \n \n \n \n {companyCategoryTotal[category].show &&\n Object.keys(companySummaryData[category]).map((product, index) => {\n return (\n \n \n \n \n \n \n )\n })\n }\n \n )\n }\n })\n }\n \n \n \n \n \n \n \n
    {t(\"CATEGORY\")}{t(\"VTURNOVER\")}{t(\"PAYOUT\")}{t(\"NET_PROFIT\")}
    companyToggle(category)}>{category === \"null\" ? \"Settlement\" : category}{category !== \"null\" && }{numberWithCurrencyFormat(parseFloat(companyCategoryTotal[category][\"validTurnover\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(companyCategoryTotal[category][\"payout\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(companyCategoryTotal[category][\"netProfit\"]), 3, true)}
    - {product}{numberWithCurrencyFormat(parseFloat(companySummaryData[category][product][\"validTurnover\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(companySummaryData[category][product][\"payout\"]), 3, true)}{numberWithCurrencyFormat(parseFloat(companySummaryData[category][product][\"netProfit\"]), 3, true)}
    {t(\"Grand Total\")}{numberWithCurrencyFormat(parseFloat(companyGrandTotal.vsales), 3, true)}{numberWithCurrencyFormat(parseFloat(companyGrandTotal.payout), 3, true)}{numberWithCurrencyFormat(parseFloat(companyGrandTotal.netProfit), 3, true)}
    \n
    \n
    \n
    \n \n }\n\n {Object.keys(companySummaryData).length === 0 && <>\n
    {t(\"COMPANY_SUMMARY\")}
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {t(\"CATEGORY\")}{t(\"VTURNOVER\")}{t(\"PAYOUT\")}{t(\"NET_PROFIT\")}
    {initPage ? t(\"SELECT_DATE_AND_CONTINUE\") : t(\"NO_REPORT_FOR_THE_DATE\")}
    \n
    \n
    \n
    \n \n }\n\n {Object.keys(processedData).length > 0 && <>\n
    {t(\"MY_INCOME\")}
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n {\n Object.keys(processedData).length > 0 && Object.keys(processedData).map((_username, i) => {\n if (typeof (processedUserTotal[_username]) !== \"undefined\") {\n return (\n <>\n \n \n \n \n \n \n \n {\n processedUserTotal[_username].show && Object.keys(processedData[_username]).map((_category, j) => {\n return (\n <>\n \n \n \n \n \n \n \n {\n processedCategoryTotal[_username][_category].show && Object.keys(processedData[_username][_category]).map((_product, k) => {\n return (\n <>\n \n \n \n \n \n \n \n \n )\n })\n }\n \n )\n })\n }\n \n )\n }\n })\n }\n\n \n \n \n \n \n \n\n {\n Object.keys(processedData).length > 0 && Object.keys(processedData).map((_username, i) => {\n if (typeof (processedUserTotal[_username]) !== \"undefined\") {\n return (\n <>\n \n \n \n \n \n \n {\n processedUserTotal[_username].showset && Object.keys(processedData[_username]).map((_category, j) => {\n return (\n <>\n \n \n \n \n \n \n \n {\n processedCategoryTotal[_username][_category].showset && Object.keys(processedData[_username][_category]).map((_product, k) => {\n return (\n <>\n \n \n \n \n \n \n \n \n )\n })\n }\n \n )\n })\n }\n \n )\n }\n })\n }\n\n \n \n \n \n \n \n\n \n
    {t(\"USERNAME\")}{t(\"CATEGORY\")}{t(\"VTURNOVER\")}{t(\"%\")}{t(\"NET_PROFIT\")}
    {currentViewer !== _username ? { e.preventDefault(); getDownlineSales(_username); }}>{_username} : _username} usernameToggle(_username)}>{t(\"All\")} {numberWithCurrencyFormat(parseFloat(processedUserTotal[_username].validTurnover), 3, true)}{_username !== \"Company\" ? numberWithCurrencyFormat(parseFloat(processedUserTotal[_username].share), 0, true) + \"\\/ 100\" : \"\"}{numberWithCurrencyFormat(parseFloat(processedUserTotal[_username].profit), 3, true)}
    categoryToggle(_username, _category)}>- {_category} {numberWithCurrencyFormat(parseFloat(processedCategoryTotal[_username][_category].validTurnover), 3, true)}{numberWithCurrencyFormat(parseFloat(processedCategoryTotal[_username][_category].share), 0, true)}/100{numberWithCurrencyFormat(parseFloat(processedCategoryTotal[_username][_category].profit), 3, true)}
    -- {_product}{numberWithCurrencyFormat(parseFloat(processedData[_username][_category][_product].validTurnover), 3, true)}{numberWithCurrencyFormat(parseFloat(processedData[_username][_category][_product].share), 0, true)}/100{numberWithCurrencyFormat(parseFloat(processedData[_username][_category][_product].profit), 3, true)}
    {t(\"Sub Total\")}{numberWithCurrencyFormat(parseFloat(processedSubTotal.vsales), 3, true)}{numberWithCurrencyFormat(parseFloat(processedSubTotal.netProfit), 3, true)}
    {_username} settlementToggle(_username)}>{t(\"Settlement\")} {_username !== \"Company\" ? numberWithCurrencyFormat(parseFloat(processedUserTotal[_username].share), 0, true) + \"\\/ 100\" : \"\"}{numberWithCurrencyFormat(parseFloat(processedUserTotal[_username].settlement), 3, true)}
    settlementCatToggle(_username, _category)}>-{_category} {numberWithCurrencyFormat(parseFloat(processedCategoryTotal[_username][_category].share), 0, true)}/100{numberWithCurrencyFormat(parseFloat(processedCategoryTotal[_username][_category].settlement), 3, true)}
    --{_product}{numberWithCurrencyFormat(parseFloat(processedData[_username][_category][_product].share), 0, true)}/100{numberWithCurrencyFormat(parseFloat(processedData[_username][_category][_product].settlement), 3, true)}
    {t(\"Grand Total\")}{numberWithCurrencyFormat(parseFloat(processedGrandTotal.netProfit), 3, true)}
    \n
    \n
    \n
    \n \n }\n\n {Object.keys(processedData).length == 0 && <>\n
    {t(\"MY_INCOME\")}
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    {t(\"USERNAME\")}{t(\"CATEGORY\")}{t(\"VTURNOVER\")}{t(\"%\")}{t(\"NET_PROFIT\")}
    {initPage ? t(\"SELECT_DATE_AND_CONTINUE\") : t(\"NO_REPORT_FOR_THE_DATE\")}
    \n
    \n \n }\n
    \n
    \n \n \n \n );\n};\n\nexport default Summary;","import React, { useState } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useEffect } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\n\n/// \n/// Author : -\n/// \n\nconst ProcessGameRecordReport = (props) => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [startDate, setStartDate] = useState(moment().format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().format(\"YYYY-MM-DD\"));\n const [processReportDatas, setProcessReportDatas] = useState([]);\n /// \n /// Author : -\n /// \n useEffect(() => {\n getProcessReport();\n }, []);\n\n /// \n /// Author : -\n /// \n const getProcessReport = async () => {\n _dispatch(setBusy());\n let apiUrl = ApiUrl._API_GET_PROCESS_GAME_RECORD_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate;\n //setGetReportApi(apiUrl);\n await fetch(\n ApiUrl._API_GET_PROCESS_GAME_RECORD_REPORT +\n \"?startDate=\" +\n startDate +\n \"&endDate=\" +\n endDate,\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n setProcessReportDatas(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n _dispatch(setIdle());\n });\n };\n\n let _tableColumns = [\n {\n Header: t(\"Id\"),\n accessor: \"id\",\n },\n {\n Header: t(\"GameId\"),\n accessor: \"gameId\",\n },\n {\n Header: t(\"BetId\"),\n accessor: \"betId\",\n },\n {\n Header: t(\"MemberProductId\"),\n accessor: \"memberProductId\",\n },\n {\n Header: t(\"Status\"),\n accessor: \"status\",\n },\n {\n Header: t(\"Amount\"),\n accessor: \"amount\",\n },\n {\n Header: t(\"WinAmount\"),\n accessor: \"winAmount\",\n },\n {\n Header: t(\"Date\"),\n accessor: \"date\",\n Cell: ({ row }) => {\n return <>{moment(row.original.date).format(\"YYYY-MM-DD HH:mm:ss\")}\n },\n },\n {\n Header: t(\"Remark\"),\n accessor: \"remark\",\n },\n {\n Header: t(\"Turnover\"),\n accessor: \"turnover\",\n },\n {\n Header: t(\"UpdatedTime\"),\n accessor: \"updatedTime\",\n Cell: ({ row }) => {\n return <>{moment(row.original.updatedTime).format(\"YYYY-MM-DD HH:mm:ss\")}\n },\n },\n {\n Header: t(\"PreMemberPrimaryBalance\"),\n accessor: \"preMemberPrimaryBalance\",\n },\n {\n Header: t(\"PostMemberPrimaryBalance\"),\n accessor: \"postMemberPrimaryBalance\",\n },\n {\n Header: t(\"LatestSyncRecordId\"),\n accessor: \"latestSyncRecordId\",\n },\n {\n Header: t(\"PreSettleMemberPrimaryBalance\"),\n accessor: \"preSettleMemberPrimaryBalance\",\n },\n {\n Header: t(\"PostSettleMemberPrimaryBalance\"),\n accessor: \"postSettleMemberPrimaryBalance\",\n },\n {\n Header: t(\"IsCreditChange\"),\n accessor: \"isCreditChange\",\n Cell: ({ row }) => {\n return row.original.isCreditChange ? {t(\"YES\")} : {t(\"NO\")}\n },\n },\n {\n Header: t(\"SettlementAt\"),\n accessor: \"settlementAt\",\n },\n {\n Header: t(\"BetIdParam_1\"),\n accessor: \"betIdParam_1\",\n },\n {\n Header: t(\"Rollbacked\"),\n accessor: \"rollbacked\",\n },\n {\n Header: t(\"IsJackpot\"),\n accessor: \"isJackpot\",\n Cell: ({ row }) => {\n return row.original.isJackpot ? {t(\"YES\")} : {t(\"NO\")}\n },\n },\n {\n Header: t(\"IsProcessed\"),\n accessor: \"isProcessed\",\n Cell: ({ row }) => {\n return row.original.isProcessed ? {t(\"YES\")} : {t(\"NO\")}\n },\n },\n {\n Header: t(\"ValidTurnover\"),\n accessor: \"validTurnover\",\n Cell: ({ row }) => {\n return <>{(row.original.validTurnover).toFixed(3)}\n },\n }\n ];\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"PROCESS_GAME_RECORD_REPORT\")}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n getProcessReport()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n );\n};\n\nexport default ProcessGameRecordReport;\n","import React, { useState } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { createFormBody } from \"../../util/Util\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useEffect } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\n\n/// \n/// Author : -\n/// \n\nconst NonProcessGameRecordReport = (props) => {\n const _dispatch = useDispatch();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [startDate, setStartDate] = useState(moment().format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().format(\"YYYY-MM-DD\"));\n const [processReportDatas, setProcessReportDatas] = useState([]);\n const StartManualJob = (betId) => {\n _dispatch(setBusy);\n let apiUrl = ApiUrl._API_MANUAL_RESETTLE_568_PRODUCT_GAME_RECORD_FROM_BO ;\n let params = {\n \"betId\": betId\n };\n let formBody = createFormBody(params);\n fetch(apiUrl, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(\"OPERATION_SUCCESS\")\n )\n )\n }\n });\n _dispatch(setIdle);\n }\n /// \n /// Author : -\n /// \n useEffect(() => {\n getNonProcessReport();\n }, []);\n\n /// \n /// Author : -\n /// \n const getNonProcessReport = async () => {\n _dispatch(setBusy());\n let apiUrl = ApiUrl._API_GET_568_NON_PROCESS_GAME_RECORD_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate;\n //setGetReportApi(apiUrl);\n await fetch(\n ApiUrl._API_GET_568_NON_PROCESS_GAME_RECORD_REPORT +\n \"?startDate=\" +\n startDate +\n \"&endDate=\" +\n endDate, \n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n setProcessReportDatas(responseJson[ApiKey._API_DATA_KEY]);\n } else {\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n }\n _dispatch(setIdle());\n });\n };\n\n let _tableColumns = [\n {\n Header: t(\"ProcessBet\"),\n Cell: ({ row }) => {\n return <>\n },\n },\n {\n Header: t(\"Id\"),\n accessor: \"id\",\n },\n {\n Header: t(\"GameId\"),\n accessor: \"gameId\",\n },\n {\n Header: t(\"BetId\"),\n accessor: \"betId\",\n },\n {\n Header: t(\"TEXT_FOR_CS\"),\n accessor: \"textForCs\",\n Cell: ({ row }) => {\n let masterProductName = row.original.productGame.product.productName;\n let displayBetId = row.original.betId;\n //displayBetId = displayBetId.includes(\"-\") ? displayBetId.substring(0, displayBetId.indexOf(\"-\")) : displayBetId;\n let displayDateTime = moment(row.original.date).format(\"YYYY-MM-DD HH:mm:ss.SSS Z\");\n displayDateTime = displayDateTime.substring(0, displayDateTime.indexOf(\"+\")) + \"GMT\" + displayDateTime.substring(displayDateTime.indexOf(\"+\"), displayDateTime.length);\n switch (masterProductName) {\n case (\"PlayTech Slots\" || \"PlayTech Live\"):\n let transId = displayBetId.substring(0, displayBetId.indexOf(\"-\"));\n let roundId = displayBetId.substring(displayBetId.indexOf(\"-\") + 1, displayBetId.length);\n return (\n <>\n
    \n Trans ID : {transId}
    \n Round ID : {roundId}
    \n Player ID : {row.original.memberProduct.username}
    \n DateTime : {displayDateTime}
    \n
    \n \n )\n break;\n case \"XE88\":\n displayBetId = displayBetId.substring(3, displayBetId.length); //substring 3 because of 'XE_' prefix\n return (\n <>\n
    \n Bet ID : {displayBetId}
    \n Player ID : {row.original.memberProduct.username}
    \n DateTime : {displayDateTime}
    \n
    \n \n )\n break;\n case \"CT855\":\n displayBetId = displayBetId.substring(6, displayBetId.length); //substring 6 because of 'CT855_' prefix\n let ticketId = displayBetId.substring(0, displayBetId.indexOf(\"-\"));\n return (\n <>\n
    \n Ticket ID : {ticketId}
    \n Player ID : {row.original.memberProduct.username}
    \n DateTime : {displayDateTime}
    \n
    \n \n )\n break;\n default: //568Win games\n if (masterProductName === \"SBO Sports\") {\n return (\n <>\n
    \n Provider : {masterProductName}
    \n Bet ID : {displayBetId}
    \n Player ID : {row.original.memberProduct.username}
    \n DateTime : {displayDateTime}
    \n
    \n \n )\n }\n else {\n let transferCode = displayBetId.substring(0, displayBetId.indexOf(\"-\"));\n let transactionId = displayBetId.substring(displayBetId.indexOf(\"-\") + 1, displayBetId.length);\n return (\n <>\n
    \n Provider : {masterProductName}
    \n TransferCode : {transferCode}
    \n Transaction ID : {transactionId}
    \n Username : {row.original.memberProduct.username}
    \n DateTime : {displayDateTime}
    \n
    \n \n )\n }\n break;\n }\n },\n },\n {\n Header: t(\"MemberProductId\"),\n accessor: \"memberProductId\",\n },\n {\n Header: t(\"Status\"),\n accessor: \"status\",\n },\n {\n Header: t(\"Amount\"),\n accessor: \"amount\",\n },\n {\n Header: t(\"WinAmount\"),\n accessor: \"winAmount\",\n },\n {\n Header: t(\"Date\"),\n accessor: \"date\",\n Cell: ({ row }) => {\n return <>{moment(row.original.date).format(\"YYYY-MM-DD HH:mm:ss\")}\n },\n },\n {\n Header: t(\"Remark\"),\n accessor: \"remark\",\n },\n {\n Header: t(\"Turnover\"),\n accessor: \"turnover\",\n },\n {\n Header: t(\"UpdatedTime\"),\n accessor: \"updatedTime\",\n Cell: ({ row }) => {\n return <>{moment(row.original.updatedTime).format(\"YYYY-MM-DD HH:mm:ss\")}\n },\n },\n {\n Header: t(\"PreMemberPrimaryBalance\"),\n accessor: \"preMemberPrimaryBalance\",\n },\n {\n Header: t(\"PostMemberPrimaryBalance\"),\n accessor: \"postMemberPrimaryBalance\",\n },\n {\n Header: t(\"LatestSyncRecordId\"),\n accessor: \"latestSyncRecordId\",\n },\n {\n Header: t(\"PreSettleMemberPrimaryBalance\"),\n accessor: \"preSettleMemberPrimaryBalance\",\n },\n {\n Header: t(\"PostSettleMemberPrimaryBalance\"),\n accessor: \"postSettleMemberPrimaryBalance\",\n },\n {\n Header: t(\"IsCreditChange\"),\n accessor: \"isCreditChange\",\n Cell: ({ row }) => {\n return row.original.isCreditChange ? {t(\"YES\")} : {t(\"NO\")}\n },\n },\n {\n Header: t(\"SettlementAt\"),\n accessor: \"settlementAt\",\n },\n {\n Header: t(\"BetIdParam_1\"),\n accessor: \"betIdParam_1\",\n },\n {\n Header: t(\"Rollbacked\"),\n accessor: \"rollbacked\",\n },\n {\n Header: t(\"IsJackpot\"),\n accessor: \"isJackpot\",\n Cell: ({ row }) => {\n return row.original.isJackpot ? {t(\"YES\")} : {t(\"NO\")}\n },\n },\n {\n Header: t(\"IsProcessed\"),\n accessor: \"isProcessed\",\n Cell: ({ row }) => {\n return row.original.isProcessed ? {t(\"YES\")} : {t(\"NO\")}\n },\n },\n {\n Header: t(\"ValidTurnover\"),\n accessor: \"validTurnover\",\n Cell: ({ row }) => {\n return <>{(row.original.validTurnover).toFixed(3)}\n },\n }\n ];\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"568_NON_PROCESS_GAME_RECORD_REPORT\")}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n getNonProcessReport()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n );\n};\n\nexport default NonProcessGameRecordReport ;\n","import React, { useState, useEffect, useContext } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { stringIsNullOrEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from '../../redux/AppAction';\n\nconst ShareholderUnclaimReport = () => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n var _dispatch = useDispatch();\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n\n const [processedData, setProcessedData] = useState({});\n const [processedUplineTotal, setProcessedUplineTotal] = useState({});\n const [processedGrandTotal, setProcessedGrandTotal] = useState({});\n const [temp, setTemp] = useState([]);\n const [initPage, setInitPage] = useState(true);\n const [startDate, setStartDate] = useState(moment().add(-1, \"days\").startOf('day').format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().add(-1, \"days\").endOf('day').format(\"YYYY-MM-DD\"));\n\n const [currentViewer, setCurrentViewer] = useState(\"\");\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\n const [selectedMember, setSelectedMember] = useState(\"\");\n const [locationStateObj, setLocationStateObj] = useState();\n const [memberId, setMemberId] = useState(\"\");\n const [nodePathMembers, setNodePathMembers] = useState([]);\n\n useEffect(() => {\n let nodePath = [];\n let memId = \"\";\n if (temp.memberNodePath) {\n if (temp.memberNodePath.length > 0) {\n nodePath = temp.memberNodePath;\n memId = nodePath[nodePath.length - 1].id;\n }\n }\n\n setNodePathMembers(nodePath);\n setMemberId(memId);\n setLocationStateObj({\n parentMemberId: memId,\n });\n }, [temp]);\n\n const getUnclaimDetails = async (username = null) => {\n if (username !== null) {\n setCurrentViewer(username);\n }\n let apiUrl = ApiUrl._API_GET_UNCLAIMED_SALES_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate; //\"&username=\"\n if (!stringIsNullOrEmpty(username)) {\n apiUrl += \"&username=\" + username;\n }\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n performCalculations(data, username);\n responseJson = await ApiEngine.get(ApiUrl._API_GET_DOWNLINE_BY_REFERRER_USING_USERNAME + \"?username=\" + username);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTemp(data);\n }\n }\n setInitPage(false);\n }\n\n const performCalculations = (data, username) => {\n let dataRows = {};\n let userTotal = {};\n let grandTotal = { netProfit: 0 };\n if (data[\"downlineData\"].length != 0) {\n setCurrentViewer(username);\n if (username === \"Company\") {\n data[\"downlineData\"].map((downline, i) => {\n let uplineUser = data[\"usernameList\"][i];\n if (!dataRows[uplineUser]) {\n dataRows[uplineUser] = {};\n userTotal[uplineUser] = { netProfit: 0 };\n }\n\n downline.map((player, index) => {\n userTotal[uplineUser].netProfit += player.netProfit;\n grandTotal.netProfit += player.netProfit;\n })\n });\n }\n else {\n data[\"downlineData\"].map((e, i) => {\n if (!dataRows[e.username]) {\n dataRows[e.username] = {};\n userTotal[e.username] = { netProfit: 0 };\n }\n userTotal[e.username].netProfit += e.netProfit;\n grandTotal.netProfit += e.netProfit;\n });\n }\n setProcessedUplineTotal(userTotal);\n setProcessedData(dataRows);\n setProcessedGrandTotal(grandTotal);\n }\n else {\n if (username !== null) {\n _dispatch(showMessage(false, t(\"NO_FURTHER_DOWNLINE_DATA_FOUND\")));\n }\n }\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"SHAREHOLDER_UNCLAIM_REPORT\")}

    \n \n
    \n
    \n \n
    \n
    \n {currentViewer !== \"\" &&\n <>\n
    \n {\n setSelectedMember(\"\");\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n getUnclaimDetails();\n }}\n >\n {_username}\n \n {nodePathMembers.map((m, index) => {\n return (\n <>\n {index == 0 && \">\"}\n getUnclaimDetails(m.username)}\n >\n {m.username}\n \n {index != nodePathMembers.length - 1 && \">\"}\n \n );\n })}\n
    \n
    \n \n }\n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n getUnclaimDetails()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n {Object.keys(processedData).length > 0 && <>\n
    \n
    \n \n \n \n \n \n \n \n \n {\n Object.keys(processedData).map((_username, i) => {\n if (typeof (processedUplineTotal[_username]) !== \"undefined\") {\n return (\n <>\n \n \n \n \n \n )\n }\n })\n }\n \n \n \n \n \n
    {t(\"USERNAME\")}{t(\"NET_PROFIT\")}
    {currentViewer !== _username ? { e.preventDefault(); getUnclaimDetails(_username); }}>{_username} : _username}{numberWithCurrencyFormat(parseFloat(processedUplineTotal[_username].netProfit), 3, true)}
    {t(\"GRAND_TOTAL\")}{numberWithCurrencyFormat(parseFloat(processedGrandTotal.netProfit), 3, true)}
    \n
    \n \n }\n {Object.keys(processedData).length == 0 && <>\n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n
    {t(\"USERNAME\")}{t(\"NET_PROFIT\")}
    {initPage ? t(\"SELECT_DATE_AND_CONTINUE\") : t(\"NO_REPORT_FOR_THE_DATE\")}
    \n
    \n \n }\n \n
    \n
    \n \n \n )\n}\n\nexport default ShareholderUnclaimReport;","import React, { useState, useEffect, useContext } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { ApiKey, ApiUrl, LanguageKey, DEFAULT_PAGE_SIZE, } from \"../../util/Constant\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport { useTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { stringIsNullOrEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from '../../redux/AppAction';\nimport Select from \"react-select\";\n\nconst ShareholderUnclaimReportList = () => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n var _dispatch = useDispatch();\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n\n const [processedData, setProcessedData] = useState({});\n const [processedUplineTotal, setProcessedUplineTotal] = useState({});\n const [labelUsername, setLabelUsername] = useState(\"All\");\n const [selectedMember, setSelectedMember] = useState(\"\");\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n const [processedGrandTotal, setProcessedGrandTotal] = useState({});\n const [temp, setTemp] = useState([]);\n const [initPage, setInitPage] = useState(true);\n const [startDate, setStartDate] = useState(moment().add(-1, \"days\").startOf('day').format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().add(-1, \"days\").endOf('day').format(\"YYYY-MM-DD\"));\n const [selectedStatus, setSelectedStatus] = useState('false');\n const _STATUS_OPTIONS = [\n { value: \"\", label: 'All' },\n { value: \"true\", label: 'Claimed' },\n { value: \"false\", label: 'Unclaimed' },\n ];\n const [labelStatus, setLabelStatus] = useState(\"Unclaimed\");\n\n const getUnclaimDetails = async (username = null) => {\n let apiUrl = ApiUrl._API_GET_UNCLAIMED_SALES_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate; //\"&username=\"\n if (!stringIsNullOrEmpty(selectedMember)) {\n apiUrl += \"&username=\" + selectedMember;\n }\n if (!stringIsNullOrEmpty(selectedStatus)) {\n apiUrl += \"&status=\" + selectedStatus;\n }\n apiUrl += \"&isListAll=true\";\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n performCalculations(data, username);\n responseJson = await ApiEngine.get(ApiUrl._API_GET_DOWNLINE_BY_REFERRER_USING_USERNAME + \"?username=\" + username);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTemp(data);\n }\n }\n setInitPage(false);\n }\n\n const performCalculations = (data, username) => {\n setProcessedData(\"\");\n let dataRows = {};\n let userTotal = {};\n let grandTotal = { netProfit: 0 };\n if (data[\"downlineData\"].length != 0) {\n if (username === \"Company\") {\n data[\"downlineData\"].map((downline, i) => {\n let uplineUser = data[\"usernameList\"][i];\n if (!dataRows[uplineUser]) {\n dataRows[uplineUser] = {};\n userTotal[uplineUser] = { netProfit: 0, claimedStatus: downline.claimedStatus };\n }\n\n downline.map((player, index) => {\n userTotal[uplineUser].netProfit += player.netProfit;\n grandTotal.netProfit += player.netProfit;\n })\n });\n }\n else {\n data[\"downlineData\"].map((e, i) => {\n console.log(e.claimedStatus)\n if (!dataRows[e.username]) {\n dataRows[e.username] = {};\n userTotal[e.username] = { netProfit: 0, claimedStatus: e.claimedStatus };\n }\n userTotal[e.username].netProfit += e.netProfit;\n grandTotal.netProfit += e.netProfit;\n });\n }\n setProcessedUplineTotal(userTotal);\n setProcessedData(dataRows);\n console.log(processedUplineTotal);\n setProcessedGrandTotal(grandTotal);\n }\n else {\n if (username !== null) {\n _dispatch(showMessage(false, t(\"NO_FURTHER_DOWNLINE_DATA_FOUND\")));\n }\n }\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n async function getReport(username = null) {\n let apiUrl = ApiUrl._API_GET_UNCLAIMED_SALES_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate; //\"&username=\"\n if (!stringIsNullOrEmpty(selectedMember)) {\n apiUrl += \"&username=\" + selectedMember;\n }\n if (!stringIsNullOrEmpty(selectedStatus)) {\n apiUrl += \"&status=\" + selectedStatus;\n }\n apiUrl += \"&isListAll=true\";\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n performCalculations(data, username);\n responseJson = await ApiEngine.get(ApiUrl._API_GET_DOWNLINE_BY_REFERRER_USING_USERNAME + \"?username=\" + username);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTemp(data);\n }\n }\n }\n\n useEffect(() => {\n getReport()\n }, [selectedStatus]);\n\n\n return (\n
    \n

    {t(\"SHAREHOLDER_UNCLAIM_REPORT_LIST\")}

    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabelUsername(e.label);\n setSelectedMember(e.value);\n }}\n />\n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedStatus}\n options={_STATUS_OPTIONS}\n onChange={(e) => {\n setSelectedStatus(e.value)\n setLabelStatus(e.label)\n }}\n placeholder={labelStatus}\n />\n
    \n
    \n
    \n
    \n
    \n getUnclaimDetails()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n {Object.keys(processedData).length > 0 && <>\n
    \n
    \n \n \n \n \n \n \n \n \n \n {\n Object.keys(processedData).map((_username, i) => {\n if (typeof (processedUplineTotal[_username]) !== \"undefined\") {\n return (\n <>\n \n \n \n \n \n \n )\n }\n })\n }\n \n \n \n \n \n \n
    {t(\"USERNAME\")}{t(\"CLAIMED_STATUS\")}{t(\"NET_PROFIT\")}
    {_username}{labelStatus == \"All\" ? t(\"ALL\") : processedUplineTotal[_username].claimedStatus == true ? t(\"CLAIMED\") : t(\"NOT_CLAIMED\")}{numberWithCurrencyFormat(parseFloat(processedUplineTotal[_username].netProfit), 3, true)}
    {t(\"GRAND_TOTAL\")}{numberWithCurrencyFormat(parseFloat(processedGrandTotal.netProfit), 3, true)}
    \n
    \n \n }\n {Object.keys(processedData).length == 0 && <>\n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n
    {t(\"USERNAME\")}{t(\"NET_PROFIT\")}
    {initPage ? t(\"SELECT_DATE_AND_CONTINUE\") : t(\"NO_REPORT_FOR_THE_DATE\")}
    \n
    \n \n }\n \n \n \n \n \n )\n}\n\nexport default ShareholderUnclaimReportList;","import React, { useState, useEffect, useContext } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { ApiKey, ApiUrl, LanguageKey, DEFAULT_PAGE_SIZE, } from \"../../util/Constant\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport { useTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { stringIsNullOrEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { showMessage } from '../../redux/AppAction';\nimport Select from \"react-select\";\n\nconst CommissionReportList = () => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n var _dispatch = useDispatch();\n var _username = useSelector(\n (state) => state[\"authState\"][\"userData\"][\"username\"]\n );\n\n const [processedData, setProcessedData] = useState({});\n const [processedUplineTotal, setProcessedUplineTotal] = useState({});\n const [labelUsername, setLabelUsername] = useState(\"All\");\n const [selectedMember, setSelectedMember] = useState(\"\");\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n const [processedGrandTotal, setProcessedGrandTotal] = useState({});\n const [temp, setTemp] = useState([]);\n const [initPage, setInitPage] = useState(true);\n const [startDate, setStartDate] = useState(moment().add(-1, \"days\").startOf('day').format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().add(-1, \"days\").endOf('day').format(\"YYYY-MM-DD\"));\n const [selectedStatus, setSelectedStatus] = useState('false');\n const _STATUS_OPTIONS = [\n { value: \"\", label: 'All' },\n { value: \"true\", label: 'Claimed' },\n { value: \"false\", label: 'Unclaimed' },\n ];\n const [labelStatus, setLabelStatus] = useState(\"Unclaimed\");\n\n const getUnclaimDetails = async (username = null) => {\n let apiUrl = ApiUrl._API_GET_COMISSION_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate; //\"&username=\"\n if (!stringIsNullOrEmpty(selectedMember)) {\n apiUrl += \"&username=\" + selectedMember;\n }\n if (!stringIsNullOrEmpty(selectedStatus)) {\n apiUrl += \"&status=\" + selectedStatus;\n }\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n performCalculations(data, username);\n responseJson = await ApiEngine.get(ApiUrl._API_GET_DOWNLINE_BY_REFERRER_USING_USERNAME + \"?username=\" + username);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTemp(data);\n }\n }\n setInitPage(false);\n }\n\n const performCalculations = (data, username) => {\n setProcessedData(\"\");\n let dataRows = {};\n let userTotal = {};\n let grandTotal = { commissionAmount: 0 };\n if (data[\"downlineData\"].length != 0) {\n if (username === \"Company\") {\n data[\"downlineData\"].map((downline, i) => {\n let uplineUser = data[\"usernameList\"][i];\n if (!dataRows[uplineUser]) {\n dataRows[uplineUser] = {};\n userTotal[uplineUser] = { commissionAmount: 0, claimedStatus: downline.claimedStatus };\n }\n\n downline.map((player, index) => {\n userTotal[uplineUser].commissionAmount += player.commissionAmount;\n grandTotal.commissionAmount += player.commissionAmount;\n })\n });\n }\n else {\n data[\"downlineData\"].map((e, i) => {\n console.log(e.claimedStatus)\n if (!dataRows[e.username]) {\n dataRows[e.username] = {};\n userTotal[e.username] = { commissionAmount: 0, claimedStatus: e.claimedStatus };\n }\n userTotal[e.username].commissionAmount += e.commissionAmount;\n grandTotal.commissionAmount += e.commissionAmount;\n });\n }\n setProcessedUplineTotal(userTotal);\n setProcessedData(dataRows);\n console.log(processedUplineTotal);\n setProcessedGrandTotal(grandTotal);\n }\n else {\n if (username !== null) {\n _dispatch(showMessage(false, t(\"NO_FURTHER_DOWNLINE_DATA_FOUND\")));\n }\n }\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${\n (page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    {t(\"NORMAL_COMMISSION_REPORT_LIST\")}

    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabelUsername(e.label);\n setSelectedMember(e.value);\n }}\n />\n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n ({\n width: \"100%\"\n })\n }}\n value={selectedStatus}\n options={_STATUS_OPTIONS}\n onChange={(e) => {\n setSelectedStatus(e.value)\n setLabelStatus(e.label)\n }}\n placeholder={labelStatus}\n />\n
    \n
    \n
    \n
    \n
    \n getUnclaimDetails()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n {Object.keys(processedData).length > 0 && <>\n
    \n
    \n \n \n \n \n \n \n \n \n \n {\n Object.keys(processedData).map((_username, i) => {\n if (typeof (processedUplineTotal[_username]) !== \"undefined\") {\n return (\n <>\n \n \n \n \n \n \n )\n }\n })\n }\n \n \n \n \n \n \n
    {t(\"USERNAME\")}{t(\"CLAIMED_STATUS\")}{t(\"COMMISSION_AMOUNT\")}
    {_username}{processedUplineTotal[_username].claimedStatus == true ? t(\"CLAIMED\") :t(\"NOT_CLAIMED\")}{numberWithCurrencyFormat(parseFloat(processedUplineTotal[_username].commissionAmount), 3, true)}
    {t(\"GRAND_TOTAL\")}{numberWithCurrencyFormat(parseFloat(processedGrandTotal.commissionAmount), 3, true)}
    \n
    \n \n }\n {Object.keys(processedData).length == 0 && <>\n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n \n
    {t(\"USERNAME\")}{t(\"COMMISSION_AMOUNT\")}
    {initPage ? t(\"SELECT_DATE_AND_CONTINUE\") : t(\"NO_REPORT_FOR_THE_DATE\")}
    \n
    \n \n }\n \n \n \n \n \n )\n}\n\nexport default CommissionReportList;","import React, { useState } from \"react\";\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { numberWithCurrencyFormat } from \"../../util/Util\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\n\nconst TotalSharePayoutReport = () => {\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n\n const [initPage, setInitPage] = useState(true);\n const [reportData, setReportData] = useState([]);\n const [startDate, setStartDate] = useState(moment().add(-1, \"days\").startOf('day').format(\"YYYY-MM-DD\"));\n const [endDate, setEndDate] = useState(moment().add(-1, \"days\").endOf('day').format(\"YYYY-MM-DD\"));\n\n const _TABLE_COLUMNS = [\n {\n Header: \"Date\",\n accessor: \"date\"\n },\n {\n Header: \"NetProfit\",\n accessor: \"netProfit\",\n Cell: ({ row }) => (\n
    {row.original.netProfit}
    \n ),\n }\n ]\n\n const getPayoutReport = async () => {\n let apiUrl = ApiUrl._API_GET_TOTAL_SHARE_PAYOUT_REPORT + \"?startDate=\" + startDate + \"&endDate=\" + endDate;\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setReportData(data[\"data\"]);\n }\n setInitPage(false);\n }\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD\"));\n };\n\n return (\n
    \n

    {t(\"TOTAL_SHARE_PAYOUT_REPORT\")}

    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n getPayoutReport()}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n \n \n )\n}\n\nexport default TotalSharePayoutReport;","import React, { useState, useEffect } from \"react\";\nimport moment from \"moment\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { ApiKey, ApiUrl, LanguageKey, BetStatus } from \"../../util/Constant\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { useTranslation } from \"react-i18next\";\nimport { isObjectEmpty, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\n\nconst UsernameBetDetailReport = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const search = window.location.search;\n const params = new URLSearchParams(search);\n const username = params.get('username');\n const startDate = moment(params.get('startDate')).format(\"YYYY-MM-DD HH:mm:ss\");\n const endDate = moment(params.get('endDate')).format(\"YYYY-MM-DD HH:mm:ss\");\n const timeZone = params.get('zone');\n const selectedProduct = params.get('productId');\n const [tableDataUrl, setTableDataUrl] = useState([]);\n const [overallInfo, setOverallInfo] = useState({});\n const _OVERALL_KEYS = {\n AMOUNT: \"TOTAL_AMOUNT\",\n WIN: \"TOTAL_WIN\",\n };\n\n var _GAMETYPE_OPTION = [\n { label: \"CreatedTime\", value: 0 },\n { label: \"UpdatedTime\", value: 1 },\n ];\n\n const gameType = params.get('filterBy');\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const init = async () => {\n console.log(gameType)\n setTableDataUrl(ApiUrl._API_GET_BET_DETAIL_REPORT + \"?username=\" + username + \"&startDate=\" + startDate + \"&endDate=\" + endDate + \"&timeZone=\" + timeZone + (selectedProduct === \"all\" ? \"\" : \"&productId=\" + selectedProduct) + \"&gameType=\"+gameType);\n }\n\n const _defaultTableColumns = [\n\n {\n Header: t(\"ID\"),\n accessor: \"id\",\n },\n {\n Header: \"Description\",\n Cell: ({ row }) => {\n return (\n
    \n {row.original.betId}\n
    \n );\n },\n Footer: () => {\n return (\n \n {t(\"GRAND TOTAL\")}: \n \n );\n },\n },\n {\n Header: t(\"PRODUCT_NAME\"),\n accessor: \"productName\",\n },\n {\n Header: t(\"DATE\"),\n accessor: \"date\",\n minWidth: 100,\n },\n {\n Header: t(\"USERNAME\"),\n accessor: \"memberUsername\",\n minWidth: 100,\n },\n {\n Header: t(\"PLAYERID\"),\n accessor: \"username\",\n minWidth: 100,\n },\n {\n Header: t(\"GAME_NAME\"),\n accessor: \"gameName\",\n minWidth: 100,\n },\n {\n Header: t(\"STATUS\"),\n accessor: \"statusString\",\n minWidth: 100,\n },\n {\n Header: t(\"BET_AMOUNT\"),\n accessor: \"amount\",\n minWidth: 100,\n Cell: ({ row }) => {\n return
    {row.original.amount.toFixed(2)}
    ;\n },\n Footer: () => {\n let totalAmount = 0;\n if (!isObjectEmpty(overallInfo) && overallInfo[_OVERALL_KEYS.AMOUNT]) {\n totalAmount = parseFloat(overallInfo[_OVERALL_KEYS.AMOUNT]);\n }\n return (\n
    \n {numberWithCurrencyFormat(totalAmount, 3)}\n
    \n );\n },\n },\n {\n Header: t(\"WIN_LOSS\"),\n accessor: \"winAmount\",\n minWidth: 100,\n Cell: ({ row }) => {\n let winLoss =\n parseFloat(row.original.winAmount) - parseFloat(row.original.amount);\n if (row.original.status == BetStatus._SETTLED_BET_STATUS) {\n return (\n
    \n {numberWithCurrencyFormat(winLoss)}\n
    \n );\n } else {\n return <>0;\n }\n },\n Footer: () => {\n let winLossTotal = 0;\n if (\n !isObjectEmpty(overallInfo) &&\n overallInfo[_OVERALL_KEYS.WIN] &&\n overallInfo[_OVERALL_KEYS.AMOUNT]\n ) {\n winLossTotal =\n parseFloat(overallInfo[_OVERALL_KEYS.WIN]) -\n parseFloat(overallInfo[_OVERALL_KEYS.AMOUNT]);\n }\n return (\n
    \n {numberWithCurrencyFormat(winLossTotal)}\n
    \n );\n },\n },\n {\n Header: t(\"Jpc\"),\n accessor: \"jpc\",\n id: \"jpc\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n
    {numberWithCurrencyFormat(parseFloat(row.original.jpc), 3, true)}
    \n );\n },\n Footer: ({ row, column }) => {\n let jpcSum = 0;\n column.filteredRows.map((dataRow, index) => {\n jpcSum += parseFloat(dataRow.original.jpc);\n });\n return (\n
    {numberWithCurrencyFormat(parseFloat(jpcSum), 3, true)}
    \n );\n },\n },\n {\n Header: t(\"Jpw\"),\n accessor: \"jpw\",\n id: \"jpw\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n
    {numberWithCurrencyFormat(parseFloat(row.original.jpw))}
    \n );\n },\n Footer: ({ row, column }) => {\n let jpwSum = 0;\n column.filteredRows.map((dataRow, index) => {\n jpwSum += parseFloat(dataRow.original.jpw);\n });\n return (\n
    {numberWithCurrencyFormat(parseFloat(jpwSum), 3, true)}
    \n );\n },\n },\n ];\n\n /// \n /// Author : -\n /// \n function getOverallInfo(info) {\n setOverallInfo(info);\n }\n\n return (\n <>\n
    \n \n \n \n \n \n
    \n \n )\n}\n\nexport default UsernameBetDetailReport;","import React, { useState, useEffect, useMemo, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport {\n\tPanel,\n\tPanelHeader,\n\tPanelBody,\n} from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalFooter,\n\tModalHeader,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tWebUrl,\n\tAccessRight,\n\tTransactionType,\n\tTransactionStatus,\n\tPanelType,\n\tLanguageKey,\n\tBankingChannelName,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n\tstringIsNullOrEmpty,\n\tcreateFormBody,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\nconst TransactionSummaryReport = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tconst { register, unregister, handleSubmit, errors } = useForm();\n\tconst [calendarStartDate, setCalendarStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [calendarEndDate, setCalendarEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [memberId, setMemberId] = useState();\n\tconst [initFlag, setInitFlag] = useState(false);\n\tconst [transactionApiUrl, setTransactionApiUrl] = useState(\"\");\n\n\tconst [username, setUsername] = useState(\"\");\n\tconst [showDialog, setShowDialog] = useState();\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst handleEvent = (event, picker) => {\n\t\tsetCalendarStartDate(\n\t\t\tmoment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\")\n\t\t);\n\t\tsetCalendarEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst init = async () => {\n\t\tif (props.username && props.id) {\n\t\t\tsetUsername(props.username);\n\t\t\tsetMemberId(props.id);\n\t\t}\n\t\ttry {\n\t\t\tsetInitFlag(true);\n\t\t} catch (ex) {\n\t\t\t_dispatch(showMessage(false, t(ex)));\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getSummaryTransaction = async () => {\n\t\tif (\n\t\t\tcalendarEndDate >\n\t\t\tmoment(calendarStartDate).add(7, \"days\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t\t) {\n\t\t\tsetShowDialog(true);\n\t\t\treturn;\n\t\t}\n\t\tlet fetchUrl = ApiUrl._API_GET_TRANSACTION_SUMMARY_REPORT;\n\t\tfetchUrl +=\n\t\t\t\"?StartDate=\" + calendarStartDate + \"&EndDate=\" + calendarEndDate;\n\t\tsetTransactionApiUrl(fetchUrl);\n\t};\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: t(\"USERNAME\"),\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{t(row.original.username)};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\n\t\t{\n\t\t\tHeader: t(\"DEPOSIT\"),\n\t\t\taccessor: \"deposit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.deposit))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.deposit) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.deposit);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"WITHDRAWAL\"),\n\t\t\taccessor: \"withdrawal\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.withdrawal))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.withdrawal) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.withdrawal);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"ADJUSTMENT\"),\n\t\t\taccessor: \"adjustment\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.adjustment))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.Adjustment) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.adjustment);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TRANSFER\"),\n\t\t\taccessor: \"transfer\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.transfer))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.transfer) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.transfer);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"COMMISSION\"),\n\t\t\taccessor: \"commission\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.commission), 3)}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.commission) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.commission);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"BIRTHDAY_REWARD\"),\n\t\t\taccessor: \"birthdayReward\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(row.original.birthdayReward))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.birthdayReward) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.birthdayReward);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"WEEKLY_RESCUE\"),\n\t\t\taccessor: \"weeklyRescueBonus\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.weeklyRescueBonus)\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.weeklyRescueBonus) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.weeklyRescueBonus);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"CREDIT_REDEMPTION\"),\n\t\t\taccessor: \"creditRedemption\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.creditRedemption)\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.creditRedemption) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.creditRedemption);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t];\n\n\treturn (\n\t\t
    \n\t\t\t{showDialog && (\n\t\t\t\t {\n\t\t\t\t\t\tsetShowDialog(false);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{t(\"MAX_DATE_RANGE_7_DAYS\")}\n\t\t\t\t\n\t\t\t)}\n\t\t\t

    {t(\"TRANSACTION_SUMMARY_REPORT\")}

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tgetSummaryTransaction();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tclassName=\"btn btn-primary\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default TransactionSummaryReport;\n","import React, { useState, useEffect, useMemo, useCallback } from 'react';\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { Panel, PanelHeader, PanelBody } from './../../components/panel/panel.jsx';\nimport { useHistory } from \"react-router-dom\";\nimport { UncontrolledButtonDropdown, DropdownToggle, DropdownMenu, DropdownItem, Modal, ModalBody, ModalFooter, ModalHeader } from 'reactstrap';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport Select from 'react-select';\nimport DateRangePicker from 'react-bootstrap-daterangepicker';\nimport moment from 'moment';\nimport { navigateTo } from '../../util/Util';\nimport { ApiKey, ApiUrl, WebUrl, AccessRight, TransactionType, TransactionStatus, PanelType, LanguageKey, BankingChannelName, DEFAULT_PAGE_SIZE } from '../../util/Constant';\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { stringIsNullOrEmpty, createFormBody, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from 'react-i18next';\nimport ApiEngine from '../../util/ApiEngine';\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport SweetAlert from 'react-bootstrap-sweetalert';\n\nconst TransactionSummaryReport = props => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors } = useForm();\n\n const [birthdayRewardApiUrl, setBirthdayRewardApiUrl] = useState(\"\");\n\n const [showDialog, setShowDialog] = useState()\n const _PAGING_COUNT = 10;\n const [selectedFilterMember, setSelectedFilterMember] = useState();\n const [selectedMember, setSelectedMember] = useState(\n \"\"\n );\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [vipList, setVipList] = useState([]);\n const [selectedViplevel, setSelectedViplevel] = useState(\"\");\n const [birthdayRewardData, setBirthdayRewardData] = useState([]);\n\n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n const init = async () => {\n await fetch(ApiUrl._API_GET_USER_VIP + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const VipList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (vip) {\n VipList.push({ label: vip.name, value: vip.id });\n });\n setVipList(VipList)\n\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const getBirthdayRewardSummary = async () => {\n let fetchUrl = ApiUrl._API_GET_BIRTHDAY_REWARD_REPORT;\n fetchUrl += \"?StartDate=\" + startDate + \"&EndDate=\" + endDate + \"&MemberId=\" + selectedMember + \"&vipId=\" + selectedViplevel;\n\n fetch(fetchUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setBirthdayRewardData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n let _tableColumns = [\n {\n Header: t(\"USERNAME\"),\n accessor: \"username\",\n Cell: ({ row }) => {\n return <>{t(row.original.username)}\n },\n minWidth: 100,\n Footer: () => {\n return {t(\"TOTAL\")}: \n },\n },\n\n {\n Header: t(\"RANK\"),\n accessor: \"rank\",\n Cell: ({ row }) => {\n return <>{t(row.original.rank)}\n }\n },\n {\n Header: t(\"AMOUNT\"),\n accessor: \"amount\",\n Cell: ({ row }) => {\n return <>{t(row.original.amount)}\n },\n minWidth: 100,\n Footer: ({ page }) => {\n const debitSum = page.reduce((sum, currentValue) => {\n if (currentValue.original.amount) {\n return sum + (parseFloat(currentValue.original.amount));\n }\n else {\n return sum;\n }\n }, 0);\n return {numberWithCurrencyFormat(parseFloat(debitSum))}\n }\n },\n {\n Header: t(\"CLAIMED_DATE\"),\n accessor: \"claimedTime\",\n minWidth: 100\n\n }\n ]\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == _PAGING_COUNT,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n }; /// \n\n return (\n
    \n {showDialog && (\n {\n setShowDialog(false);\n }}\n >\n {t(\"MAX_DATE_RANGE_7_DAYS\")}\n \n )}\n

    {t(\"BIRTHDAY_REWARD_REPORT\")}

    \n \n
    \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n {\n setSelectedFilterMember(e);\n setSelectedMember(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n \n vip.value == selectedViplevel\n )}\n options={vipList}\n onChange={(e) => {\n setSelectedViplevel(e.value);\n }}\n />\n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n
    \n
    \n\n \n \n )\n}\n\nexport default TransactionSummaryReport;","import React, { useState, useEffect, useMemo, useCallback } from 'react';\nimport ReactTable from '../../components/constantComponent/reactTable/ReactTable';\nimport { Panel, PanelHeader, PanelBody } from './../../components/panel/panel.jsx';\nimport { useHistory } from \"react-router-dom\";\nimport { UncontrolledButtonDropdown, DropdownToggle, DropdownMenu, DropdownItem, Modal, ModalBody, ModalFooter, ModalHeader } from 'reactstrap';\nimport 'react-datepicker/dist/react-datepicker.css';\nimport Select from 'react-select';\nimport DateRangePicker from 'react-bootstrap-daterangepicker';\nimport moment from 'moment';\nimport { navigateTo } from '../../util/Util';\nimport { ApiKey, ApiUrl, WebUrl, AccessRight, TransactionType, TransactionStatus, PanelType, LanguageKey, BankingChannelName, DEFAULT_PAGE_SIZE } from '../../util/Constant';\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { stringIsNullOrEmpty, createFormBody, numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from 'react-i18next';\nimport ApiEngine from '../../util/ApiEngine';\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport SweetAlert from 'react-bootstrap-sweetalert';\n\nconst GiftpaceReport = props => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors } = useForm();\n\n\n const [showDialog, setShowDialog] = useState()\n const _PAGING_COUNT = 10;\n const [selectedFilterMember, setSelectedFilterMember] = useState();\n const [selectedMember, setSelectedMember] = useState(\n \"\"\n );\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [giftpaceData, setGiftpaceData] = useState([]);\n\n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n const init = async () => {\n \n }\n\n /// \n /// Author : -\n /// \n const getGiftpaceReport = async () => {\n let fetchUrl = ApiUrl._API_GET_GIFTPACE_REPORT;\n fetchUrl += \"?StartDate=\" + startDate + \"&EndDate=\" + endDate + \"&MemberId=\" + selectedMember ;\n\n fetch(fetchUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setGiftpaceData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n let _tableColumns = [\n {\n Header: t(\"USERNAME\"),\n accessor: \"username\",\n Cell: ({ row }) => {\n return <>{t(row.original.username)}\n },\n minWidth: 100,\n Footer: () => {\n return {t(\"TOTAL\")}: \n },\n },\n {\n Header: t(\"CODE\"),\n accessor: \"code\",\n minWidth: 100\n\n },\n {\n Header: t(\"AMOUNT\"),\n accessor: \"amount\",\n Cell: ({ row }) => {\n return <>{t(row.original.amount)}\n },\n minWidth: 100,\n Footer: ({ page }) => {\n const debitSum = page.reduce((sum, currentValue) => {\n if (currentValue.original.amount) {\n return sum + (parseFloat(currentValue.original.amount));\n }\n else {\n return sum;\n }\n }, 0);\n return {numberWithCurrencyFormat(parseFloat(debitSum))}\n }\n },\n {\n Header: t(\"STATUS\"),\n accessor: \"status\",\n },\n {\n Header: t(\"CLAIMED_DATE\"),\n accessor: \"createdTime\",\n minWidth: 100\n }\n ]\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n formattedData.unshift({ label: \"All\", value: \"\" })\n return {\n options: formattedData,\n hasMore: formattedData.length == _PAGING_COUNT,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n }; /// \n\n return (\n
    \n {showDialog && (\n {\n setShowDialog(false);\n }}\n >\n {t(\"MAX_DATE_RANGE_7_DAYS\")}\n \n )}\n

    {t(\"GIFTPACE_REPORT\")}

    \n \n
    \n
    \n \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n {\n setSelectedFilterMember(e);\n setSelectedMember(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n
    \n
    \n\n \n \n )\n}\n\nexport default GiftpaceReport;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport moment from \"moment\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport { numberWithCurrencyFormat } from \"../../util/Util\";\nimport { useDispatch } from \"react-redux\";\nimport { useHistory } from \"react-router-dom\";\n\nconst ActiveMemberReport = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [calendarStartDate, setCalendarStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [calendarEndDate, setCalendarEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [activeMemberApiUrl, setActiveMemberApiUrl] = useState(\"\");\n\tconst [monthList, setMonthList] = useState([]);\n\tconst _dispatch = useDispatch();\n\tlet _history = useHistory();\n\n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst handleEvent = (e) => {\n\t\tsetCalendarStartDate(\n\t\t\tmoment(e.target.value).startOf(\"month\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t\t);\n\t\tsetCalendarEndDate(\n\t\t\tmoment(e.target.value).endOf(\"month\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t\t);\n\t};\n\n\tconst init = () => {\n\t\tgenerateMonth();\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getActiveMember = async () => {\n\t\tlet fetchUrl = ApiUrl._API_GET_ACTIVE_MEMBER_REPORT;\n\t\tfetchUrl +=\n\t\t\t\"?StartDate=\" + calendarStartDate + \"&EndDate=\" + calendarEndDate;\n\t\tsetActiveMemberApiUrl(fetchUrl);\n\t};\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: t(\"USERNAME\"),\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{row.original.username};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_TRANSACTION\"),\n\t\t\taccessor: \"totalTrans\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(row.original.totalTrans), 2)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttextAlign: \"right\",\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst totalTrans = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.totalTrans) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.totalTrans);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(totalTrans))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_BET\"),\n\t\t\taccessor: \"totalBet\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.totalBet), 2)}\n\t\t\t\t);\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttextAlign: \"right\",\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst totalBet = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.totalBet) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.totalBet);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(totalBet))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_WIN\"),\n\t\t\taccessor: \"totalWin\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.totalWin), 2)}\n\t\t\t\t);\n\t\t\t},\n\t\t\tstyle: {\n\t\t\t\ttextAlign: \"right\",\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst totalWin = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.totalWin) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.totalWin);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(totalWin))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t];\n\n\tconst generateMonth = () => {\n\t\tvar emptyList = [];\n\t\tfor (var i = 1; i <= 6; i++) {\n\t\t\tvar date = moment().subtract(i, \"months\");\n\t\t\tvar year = date.get(\"year\");\n\t\t\tvar month = date.format(\"MMMM\");\n\t\t\temptyList.push({ year: year, month: month });\n\t\t}\n\t\tsetMonthList(emptyList);\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"ACTIVE_MEMBER_REPORT\")}

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t handleEvent(e)}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{[...monthList].reverse().map(({ year, month }) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tgetActiveMember();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tclassName=\"btn btn-primary\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ActiveMemberReport;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst UserIpPanel = (props) => {\n const [groupedUserIp, setGroupedUserIp] = useState([]);\n const { t } = useTranslation(LanguageKey._PRIMARY);\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n const init = async () => {\n if (props.data) {\n let apiUrl = ApiUrl._API_GET_USER_GROUPED_IP;\n apiUrl +=\n \"?startDate=\" +\n props.data.startDate +\n \"&endDate=\" +\n props.data.endDate +\n \"&country=\" +\n props.data.country +\n \"&ipAddress=\" +\n props.data.ipAddress;\n\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setGroupedUserIp(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n };\n\n let _IPUserColumns = [\n {\n Header: \"USER_TYPE\",\n accessor: \"userType\",\n },\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n },\n {\n Header: \"IP_ADDRESS\",\n accessor: \"ipAddress\",\n },\n {\n Header: \"COUNTRY\",\n accessor: \"country\",\n },\n {\n Header: \"TOTAL_USED_COUNT\",\n accessor: \"totalCount\",\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => {\n return (\n {\n props.toggleNested();\n props.prepareStateForUserIpDetail(row.original);\n }}\n >\n {t(\"SHOW_SESSIONS\")}\n \n );\n },\n disableFilters: true,\n },\n ];\n\n return (\n
    \n \n
    \n );\n};\n\nexport default UserIpPanel;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst UserIpPanel = (props) => {\n const [userIpDetail, setUserIpDetail] = useState([]);\n const { t } = useTranslation(LanguageKey._PRIMARY);\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n const init = async () => {\n if (props.data) {\n let apiUrl = ApiUrl._API_GET_USER_IP_DETAIL;\n apiUrl +=\n \"?startDate=\" +\n props.data.startDate +\n \"&endDate=\" +\n props.data.endDate +\n \"&username=\" +\n props.data.username +\n \"&country=\" +\n props.data.country +\n \"&ipAddress=\" +\n props.data.ipAddress +\n \"&userType=\" +\n props.data.userType;\n\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setUserIpDetail(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n };\n\n let _IPUserDetailColumns = [\n {\n Header: \"USER_TYPE\",\n accessor: \"userType\",\n },\n {\n Header: \"USERNAME\",\n accessor: \"username\",\n },\n {\n Header: \"DATE\",\n accessor: \"date\",\n Cell: ({ row }) => {\n return <>{moment(row.original.date).format(\"YYYY-MM-DD HH:mm:ss\")};\n },\n },\n {\n Header: \"IP_ADDRESS\",\n accessor: \"ipAddress\",\n },\n {\n Header: \"COUNTRY\",\n accessor: \"country\",\n },\n {\n Header: \"USER_AGENT\",\n accessor: \"userAgent\",\n },\n {\n Header: \"REFERER\",\n accessor: \"referer\",\n },\n ];\n\n return (\n
    \n \n
    \n );\n};\n\nexport default UserIpPanel;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { Modal, ModalHeader, ModalBody } from \"reactstrap\";\nimport { withRouter } from \"react-router-dom\";\nimport { ApiKey, ApiUrl, LanguageKey } from \"../../util/Constant\";\nimport UserIpPanel from \"./UserIpPanel\";\nimport UserIpDetailPanel from \"./UserIpDetailPanel\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageIPMonitor = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const USERNAME_OPTION = \"USERNAME\";\n const IP_OPTION = \"IP\";\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [ipMonitorRecords, setIpMonitorRecords] = useState([]);\n const [selectedOption, setSelectedOption] = useState(USERNAME_OPTION);\n const [modal, setModal] = useState(false);\n const [nestedModal, setNestedModal] = useState(false);\n const [closeAll, setCloseAll] = useState(false);\n const [groupedState, setGroupedState] = useState({});\n const [ipDetailState, setIpDetailState] = useState({});\n const [searchText, setSearchText] = useState(\"\");\n\n /// \n /// Author : -\n /// \n const toggle = () => setModal(!modal);\n\n /// \n /// Author : -\n /// \n const toggleNested = () => {\n setNestedModal(!nestedModal);\n setCloseAll(false);\n };\n\n /// \n /// Author : -\n /// \n const toggleAll = () => {\n setNestedModal(!nestedModal);\n setCloseAll(true);\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n if (props.location.state) {\n setSearchText(props.location.state.ip);\n setSelectedOption(IP_OPTION);\n }\n GetIpMonitorRecord();\n }, []);\n\n /// \n /// Author : -\n /// \n const GetIpMonitorRecord = async () => {\n let apiUrl = ApiUrl._API_GET_IP_MONITOR_RECORD;\n apiUrl += \"?startDate=\" + startDate + \"&endDate=\" + endDate;\n\n if (selectedOption == USERNAME_OPTION) {\n apiUrl += \"&username=\" + searchText;\n } else {\n apiUrl += \"&ipAddress=\" + searchText;\n }\n\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setIpMonitorRecords(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n };\n\n /// \n /// Author : -\n /// \n const prepareStateForGroupedIP = (rowState) => {\n let dateObj = {\n startDate: startDate,\n endDate: endDate,\n };\n let newState = Object.assign(rowState, dateObj);\n setGroupedState(newState);\n };\n\n /// \n /// Author : -\n /// \n const prepareStateForUserIpDetail = (rowState) => {\n let dateObj = {\n startDate: startDate,\n endDate: endDate,\n };\n let newState = Object.assign(rowState, dateObj);\n setIpDetailState(newState);\n };\n\n let _IPColumns = [\n {\n Header: \"IP\",\n accessor: \"ipAddress\",\n },\n {\n Header: \"COUNTRY\",\n accessor: \"country\",\n },\n {\n Header: \"UNIQUE_USER_COUNT\",\n accessor: \"uniqueUserCount\",\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => {\n return (\n {\n toggle();\n prepareStateForGroupedIP(row.original);\n }}\n >\n {t(\"SHOW_USERS\")}\n \n );\n },\n disableFilters: true,\n disableSortBy: true,\n },\n ];\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n };\n\n /// \n /// Author : -\n /// \n const handleSelectChange = (event) => {\n setSelectedOption(event.target.value);\n };\n\n /// \n /// Author : -\n /// \n const handleSearchTextChange = (event) => {\n setSearchText(event.target.value);\n };\n\n return (\n
    \n

    {t(\"IP_MONITOR\")}

    \n \n \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n \n
    \n \n \n \n \n
    \n
    \n
    \n
    \n {\n GetIpMonitorRecord();\n }}\n className=\"btn btn-primary\"\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n \n {t(\"USER_IP\")}\n \n \n \n {t(\"USER_IP_DETAILS\")}\n \n \n \n \n \n \n
    \n
    \n \n \n \n );\n};\n\nexport default withRouter(ManageIPMonitor);\n","import React from 'react';\nimport { LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from 'react-i18next';\n\nconst Maintenance = () => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n\n return (\n
    \n
    \n COMMAND CENTER\n\t\t\t
    \n \n

    {t(\"MAINTENANCE_DESC\")}

    \n
    \n );\n};\n\nexport default Maintenance;","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { useDispatch } from \"react-redux\";\nimport { ApiKey, ApiUrl, LanguageKey, DEFAULT_PAGE_SIZE, BetStatus } from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\n\n/// \n/// Author : -\n/// \n\nconst ManageWalletHistory = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const ALL_OPTION_LABEL = \"All\";\n const ALL_OPTION_VALUE = \"all\";\n const _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n const [search, setSearch] = useState(false);\n const [selectedMember, setSelectedMember] = useState(\"\");\n const [label, setLabel] = useState(\"\");\n const [selectedDate, setSelectedDate] = useState(\"\");\n const [walletUrl, setWalletUrl] = useState(\"\");\n\n let _tableColumns = [\n {\n Header: \"Date\",\n accessor: \"parsedTime\",\n minWidth: 100,\n },\n {\n Header: \"Remark\",\n accessor: \"remark\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n
    \n {row.original.remark}\n {!stringIsNullOrEmpty(row.original.betId) && {\"Ticket: \"}{row.original.betId}}\n
    \n )\n }\n },\n {\n Header: \"Before\",\n accessor: \"preMemberCredit\",\n minWidth: 100,\n },\n {\n Header: \"Amount\",\n accessor: \"amount\",\n minWidth: 100,\n },\n {\n Header: \"After\",\n accessor: \"postMemberCredit\",\n minWidth: 100,\n },\n \n ]\n\n /// \n /// Author : -\n /// \n const handleEvent = (event, picker) => {\n setSelectedDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n };\n\n \n\n /// \n /// Author : -\n /// \n const searchBtnHandler = async (selected) => {\n let apiUrl = ApiUrl._API_GET_MEMBER_WALLET_STATEMENT + \"?SelectedDate=\" + selectedDate + \"&memberId=\" + selectedMember;\n \n setWalletUrl(apiUrl);\n };\n\n /// \n /// Author : Wong\n /// \n async function getMemberList(search, loadOptions, { page }) {\n var responseJson = await ApiEngine.get(\n `${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${(page - 1) * DEFAULT_PAGE_SIZE\n }&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n let formattedData = data.map((m) => {\n return { label: m.username, value: m.id };\n });\n\n return {\n options: formattedData,\n hasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n additional: {\n page: page + 1,\n },\n };\n }\n }\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(props.id) && t(\"MEMBER_WALLET_STATEMENT\")}\n

    \n \n \n
    \n
    \n
    \n
    \n \n \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n \n \n
    \n {\n if (!stringIsNullOrEmpty(e.value)) {\n sessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n } else {\n sessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n }\n setLabel(e.label);\n setSelectedMember(e.value);\n }}\n />\n
    \n
    \n
    \n
    \n {\n setSearch(true);\n searchBtnHandler();\n }}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n \n \n \n \n \n \n );\n};\n\nexport default ManageWalletHistory;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport { ApiUrl, ApiKey, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageVideoTutorial = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [videoData, setVideoData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"Title\",\n accessor: \"title\",\n },\n {\n Header: \"Content\",\n accessor: \"content\",\n Cell: ({ row }) => (\n
    \n {!stringIsNullOrEmpty(row.original.content) ? (\n \n ) : (\n - \n )}\n
    \n ),\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_VIDEO_TUTORIAL_DETAIL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_VIDEO, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVideoData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_VIDEO_TUTORIAL\")}\n \n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageVideoTutorial;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {ApiKey, ApiUrl, LanguageKey, ContentTypeString } from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport Dropzone from \"react-dropzone\";\nimport { fetch } from \"whatwg-fetch\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\n\n/// \n/// Author : -\n/// \n\nconst VideoTutorialDetail = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors, setValue } = useForm();\n const [videoId, setVideoId] = useState(\"\");\n\n const [title, setTitle] = useState(\"\");\n const [content, setContent] = useState();\n const [status, setStatus] = useState(true);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n /// \n /// Author : -\n /// \n useEffect(() => {\n console.log(_location);\n console.log(_location.state);\n init();\n }, []);\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_VIDEO_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n console.log(responseJson[ApiKey._API_DATA_KEY]);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVideoId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n content: data.title,\n status: data.status,\n content:data.content\n };\n\n if (!stringIsNullOrEmpty(videoId)) {\n params[\"id\"] = videoId;\n }\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_VIDEO, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setVideoId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n }\n });\n };\n\n return (\n
    \n

    \n {videoId ? t(\"EDIT_VIDEO\") : t(\"ADD_VIDEO\") /*localization*/}\n \n

    \n {videoId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n\n
    \n\n \n {videoId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n
    \n
    \n );\n};\n\nexport default VideoTutorialDetail;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { useDispatch } from \"react-redux\";\nimport { ApiKey, ApiUrl, LanguageKey, DEFAULT_PAGE_SIZE, BetStatus } from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useExportData } from \"react-table-plugins\";\nimport Papa from \"papaparse\";\nimport XLSX from \"xlsx\";\nimport FileSaver from \"file-saver\";\nimport {\n useTable,\n } from \"react-table\";\n\n/// \n/// Author : -\n/// \n\nconst ManageWalletRecon = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const [startDate, setStartDate] = useState(\n moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [endDate, setEndDate] = useState(\n moment().startOf(\"day\").add(1, 'hours').format(\"YYYY-MM-DD HH:mm:ss\")\n );\n const [search, setSearch] = useState(false);\n const [walletUrl, setWalletUrl] = useState(\"\");\n const [tableData, setTableData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"Player ID\",\n accessor: \"username\",\n minWidth: 100,\n },\n {\n Header: \"Date\",\n accessor: \"parsedTime\",\n minWidth: 100,\n },\n {\n Header: \"Remark\",\n accessor: \"remark\",\n minWidth: 100,\n Cell: ({ row }) => {\n return (\n
    \n {row.original.remark}\n {!stringIsNullOrEmpty(row.original.betId) && {\"Ticket: \"}{row.original.betId}}\n
    \n )\n }\n },\n {\n Header: \"Before\",\n accessor: \"preMemberCredit\",\n minWidth: 100,\n },\n {\n Header: \"Amount\",\n accessor: \"amount\",\n minWidth: 100,\n },\n {\n Header: \"After\",\n accessor: \"postMemberCredit\",\n minWidth: 100,\n },\n {\n Header: \"Validate Before Balance\",\n accessor: \"validatePreMemberCredit\",\n minWidth: 100,\n },\n {\n Header: \"Variance\",\n accessor: \"variance\",\n minWidth: 100,\n },\n {\n Header: \"Recon\",\n accessor: \"recon\",\n minWidth: 100,\n },\n {\n Header: \"Wallet Status\",\n accessor: \"walletStatus\",\n minWidth: 100,\n },\n ]\n\n const handleEvent = (event, picker) => {\n setStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n setEndDate(moment(picker.endDate).add(1, 'minutes').format(\"YYYY-MM-DD HH:mm:ss\"));\n }; \n\n const searchBtnHandler = async (selected) => {\n _dispatch(setBusy());\n let apiUrl = ApiUrl._API_GET_MEMBER_WALLET_STATEMENT_RECON + \"?StartDate=\" + startDate + \"&EndDate=\" + endDate;\n setWalletUrl(apiUrl);\n \n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n setTableData(data[\"data\"]);\n }\n\n _dispatch(setIdle());\n };\n\n function getExportFileBlob({ columns, data, fileType, fileName }) {\n var response = null;\n if (!stringIsNullOrEmpty(walletUrl)) { \n response = ApiEngine.get(walletUrl);\n \n response.then(function (responseJson) {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n var allData =responseJson[ApiKey._API_DATA_KEY][ApiKey._API_DATA_KEY];\n \n if (fileType === \"csv\") {\n const csvString = Papa.unparse(allData);\n var csvData = new Blob([csvString], { type: \"text/csv\" });\n FileSaver.saveAs(csvData, `${fileName}.csv`);\n } \n else if (fileType === \"xlsx\") \n {\n const header = columns.map((c) => c.id);\n const headerNames = columns.map((c) => t(c.exportValue));\n \n const compatibleData = allData.map((row) => {\n const obj = {};\n header.forEach((col, index) => {\n obj[headerNames[index]] = row[col];\n });\n return obj;\n });\n \n let wb = XLSX.utils.book_new();\n let ws1 = XLSX.utils.json_to_sheet(compatibleData, {\n headerNames,\n });\n XLSX.utils.book_append_sheet(wb, ws1, \"React Table Data\");\n XLSX.writeFile(wb, `${fileName}.xlsx`);\n }\n return false;\n }\n });\n }\n }\n\n return (\n
    \n

    \n {stringIsNullOrEmpty(props.id) && t(\"MEMBER_WALLET_STATEMENT_RECON\")}\n

    \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n \n \n
    \n
    \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n {\n setSearch(true);\n searchBtnHandler();\n }}\n >\n {t(\"SEARCH\")}\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n \n
    \n \n
    \n );\n};\n\nexport default ManageWalletRecon;","import React, { useState, useEffect } from 'react';\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { createFormBody, createMultiPartFormBody, stringIsNullOrEmpty } from \"../../util/Util.js\";\n\nconst DepositReference = props => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _dispatch = useDispatch();\n const _history = useHistory();\n const [depositReference, setDepositReference] = useState('');\n const [initCheck, setInitCheck] = useState(false);\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n setInitCheck(true);\n }, []);\n\n async function init() {\n let apiUrl = ApiUrl._API_GET_USER_SYSTEM_SETTINGS + \"?type=settings\";\n var responseJson = await ApiEngine.get(apiUrl);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let data = responseJson[ApiKey._API_DATA_KEY];\n data.map((keyValuePair, index) => {\n if (keyValuePair['key'] === \"DepositReference\") {\n let depositReference = keyValuePair['value'];\n setDepositReference(depositReference);\n }\n });\n }\n }\n\n const submitForm = async () => {\n let params = {\n 'depositReference': depositReference\n };\n\n let formBody = createMultiPartFormBody(params);\n let apiUrl = ApiUrl._API_CREATE_OR_UPDATE_SYSTEM_SETTINGS + \"?type=DepositReference\";\n let responseJson = await ApiEngine.post(apiUrl, formBody);\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n init();\n }\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n\n return (\n
    \n

    \n {t(\"DEPOSIT_REFERENCE\")}\n \n

    \n
    \n
    \n {initCheck && \n \n
    \n
    \n
    \n \n
    \n
    \n setDepositReference(e.target.value)}\n />\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    }\n
    \n
    \n
    \n )\n}\n\nexport default withRouter(DepositReference);","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport Select from \"react-select\";\nimport { useForm } from \"react-hook-form\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalHeader,\n\tModalFooter,\n} from \"reactstrap\";\nimport {\n\tcreateFormBody,\n\tnavigateTo,\n\tstringIsNullOrEmpty,\n} from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tContentTypeString,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport ConfigurationLanguageDetail from \"./ConfigurationLanguageDetail\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage } from \"../../redux/AppAction\";\n\n/// \n/// Author : -\n/// \nconst ManageMarqueeContentLanguage = (props) => {\n\tconst { handleSubmit, errors, register, content, setValue, clearErrors } =\n\t\tuseForm();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [data, setData] = useState([]);\n\tconst _dispatch = useDispatch();\n\tconst [languageDetailModalVisibility, setLanguageDetailModalVisibility] =\n\t\tuseState(false);\n\n\tconst _EXCLUDE_TITLE_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT_CONTENT,\n\t\tContentTypeString._VIP_CRITERIA,\n\t];\n\tconst _EXCLUDE_CONTENT_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT,\n\t\tContentTypeString._PRODUCT_CATEGORY,\n\t];\n\tconst [isOpen, setIsOpen] = useState(false);\n\tconst [languageDetailId, setLanguageDetailId] = useState(\"\");\n\tconst [tableColumns, setTableColumns] = useState([]);\n\tconst [text, setText] = useState(\"\");\n\tconst [languageOption, setLanguageOption] = useState([]);\n\tconst [platformOption, setPlatformOption] = useState(\"\");\n\tconst [languageId, setLanguageId] = useState(\"\");\n\tconst [platformId, setPlatformId] = useState(\"\");\n\tconst [marqueeLanguage, setMarqueeLanguage] = useState([]);\n\tconst [marqueeTagContentData, setMarqueeTagContentData] = useState([]);\n\tconst [editModal, setEditModal] = useState(false);\n\tconst [editPlatformId, setEditPlatformId] = useState(\"\");\n\tconst [editLanguageId, setEditLanguageId] = useState(\"\");\n\tconst [marqueeLanguageId, setMarqueeLanguageId] = useState(\"\");\n\tconst [editContent, setEditContent] = useState(\"\");\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CONTENT\",\n\t\t\taccessor: \"content\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetEditModal(true);\n\t\t\t\t\t\t\t\t\tsetMarqueeLanguageId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetEditPlatformId(row.original.platformId);\n\t\t\t\t\t\t\t\t\tsetEditLanguageId(row.original.languageId);\n\t\t\t\t\t\t\t\t\tsetEditContent(row.original.content);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tconst onSubmit = async (data) => {\n\t\tlet params = {\n\t\t\tplatformId: props.id,\n\t\t\tlanguageId: languageId,\n\t\t\tcontent: data.text,\n\t\t};\n\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_CREATE_MARQUEE_CONTENT_LANGUAGE,\n\t\t\tcreateFormBody(params)\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t\tsetIsOpen(false);\n\t\tgetMarqueeTagContent();\n\t};\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetConfigLanguage();\n\t\tgetLanguage();\n\t\tgetPlatform();\n\t\tgetMarqueeTagContent();\n\t\t/// Used to Exclude the column of table\n\t\tif (_EXCLUDE_CONTENT_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(1, 1);\n\t\t} else if (_EXCLUDE_TITLE_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(2, 1);\n\t\t}\n\t\tsetTableColumns(_tableColumns);\n\t}, []);\n\n\tasync function getLanguage() {\n\t\tawait fetch(ApiUrl._API_GET_LANGUAGE, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst languageList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (language) {\n\t\t\t\t\t\tlanguageList.push({ label: language.name, value: language.id });\n\t\t\t\t\t});\n\t\t\t\t\tsetLanguageOption(languageList);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tasync function getPlatform() {\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_MARQUEE_TAG_CONTENT_WITH_ID + \"?MarqueeTagId=\" + props.id,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetPlatformOption(responseJson[ApiKey._API_DATA_KEY][0][\"platform\"]);\n\t\t\t\t}\n\t\t\t});\n\t}\n\t/// \n\t/// Author : -\n\t/// \n\tconst getConfigLanguage = async () => {\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_CONFIG_LANGUAGE_BY_TYPE_ID +\n\t\t\t\t\"?type=\" +\n\t\t\t\tprops.type +\n\t\t\t\t\"&id=\" +\n\t\t\t\tprops.id,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tasync function getMarqueeTagContent() {\n\t\tvar apiUrl = ApiUrl._API_GET_MARQUEE_LANGUAGE;\n\t\tapiUrl += \"?id=\" + props.id;\n\t\tfetch(apiUrl, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetMarqueeTagContentData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tconst editSubmit = async (data) => {\n\t\tlet params = {\n\t\t\tmarqueeId: marqueeLanguageId,\n\t\t\tplatformId: editPlatformId,\n\t\t\tlanguageId: editLanguageId,\n\t\t\tcontent: data.text,\n\t\t};\n\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_UPDATE_MARQUEE_LANGUAGE_BY_ID,\n\t\t\tcreateFormBody(params)\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\n\t\tsetEditModal(false);\n\t\tgetMarqueeTagContent();\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tsetLanguageDetailModalVisibility(false);\n\t\t\t\t\t\tgetConfigLanguage();\n\t\t\t\t\t}}\n\t\t\t\t\tdataTypeId={props.id}\n\t\t\t\t\tlanguageDetailId={languageDetailId}\n\t\t\t\t\tlanguageType={props.type}\n\t\t\t\t/>\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetLanguageDetailId(\"\");\n\t\t\t\t\t\t\tsetIsOpen(true);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tclassName=\"btn btn-purple\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tvalue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetLanguageId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"languageId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.content.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t setIsOpen(false)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{t(\"EDIT_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tdefaultValue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tvalue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetEditLanguageId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"editLanguageId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.editContent.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t setEditModal(false)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageMarqueeContentLanguage;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tDisplayMode,\n\tLanguageKey,\n\tContentTypeString,\n\tAllVipOption,\n} from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageMarqueeContentLanguage from \"./ManageMarqueeContentLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\n\n/// \n/// Author : -\n/// \n\nconst MarqueeTagContentDetail = (props) => {\n\tconst _DETAIL_TAB = \"1\";\n\tconst _LANGUAGE_TAB = \"2\";\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\t// const { register, unregister, handleSubmit, errors, setValue } = useForm();\n\tconst [marqueeTagContentId, setMarqueeTagContentId] = useState(\"\");\n\tconst [announcementRefId, setAnnouncementRefId] = useState(\"\");\n\tconst [platformMode, setPlatformMode] = useState(\"\");\n\tconst [content, setContent] = useState(\"\");\n\n\tconst {\n\t\tregister: marRegister,\n\t\thandleSubmit: marHandleSubmit,\n\t\terrors: marErrors,\n\t\tunregister: forgotPasswordUnregister,\n\t} = useForm();\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tmarRegister({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n\t}, []);\n\n\tconst [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggle = (tab) => {\n\t\tif (activeTab !== tab) {\n\t\t\tsetActiveTab(tab);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetMarqueeTagContent();\n\t}, []);\n\n\tasync function getMarqueeTagContent() {\n\t\tif (_location.state) {\n\t\t\tconsole.log(_location);\n\t\t\tlet stateAnnouncementId = _location.state.id || _location.state.refId;\n\n\t\t\tconsole.log(stateAnnouncementId);\n\t\t\tlet responseJson = await ApiEngine.get(\n\t\t\t\tApiUrl._API_GET_MARQUEE_TAG_CONTENT_WITH_ID +\n\t\t\t\t\t\"?MarqueeTagId=\" +\n\t\t\t\t\tstateAnnouncementId\n\t\t\t);\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tif (_location.state.id) {\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].map((option) => {\n\t\t\t\t\t\tsetMarqueeTagContentId(option[\"id\"]);\n\t\t\t\t\t\tsetAnnouncementRefId(\"\");\n\t\t\t\t\t});\n\t\t\t\t\tsetAnnouncementRefId(\"\");\n\t\t\t\t} else if (_location.state.refId) {\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].map((option) => {\n\t\t\t\t\t\tsetMarqueeTagContentId(\"\");\n\t\t\t\t\t\tsetAnnouncementRefId(option[\"id\"]);\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tconsole.log(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].map((option) => {\n\t\t\t\t\tsetPlatformMode(option[\"platform\"]);\n\t\t\t\t\tsetContent(option[\"content\"]);\n\t\t\t\t});\n\n\t\t\t\t//responseJson[ApiKey._API_DATA_KEY];\n\t\t\t}\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function submitForm(data) {\n\t\tlet params = {\n\t\t\tplatform: data.platformMode,\n\t\t\tcontent: content,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(marqueeTagContentId)) {\n\t\t\tparams[\"id\"] = marqueeTagContentId;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(announcementRefId)) {\n\t\t\tparams[\"refId\"] = announcementRefId;\n\t\t}\n\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_MARQUEE_TAG_CONTENT, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetMarqueeTagContentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\tsetAnnouncementRefId(\"\");\n\n\t\t\t\t\t_history.replace({\n\t\t\t\t\t\tpathname: _location.pathname,\n\t\t\t\t\t\tstate: {\n\t\t\t\t\t\t\tid: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\tgetMarqueeTagContent();\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{marqueeTagContentId\n\t\t\t\t\t? t(\"EDIT_MARQUEE_TAG_CONTENT\")\n\t\t\t\t\t: t(\"ADD_MARQUEE_TAG_CONTENT\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t{marqueeTagContentId && (\n\t\t\t\t\n\t\t\t)}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{stringIsNullOrEmpty(marqueeTagContentId) ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetContent(e.target.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// setValue(\"content\", e.target.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{marErrors.content && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(marErrors.content.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t{marqueeTagContentId && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default MarqueeTagContentDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageDCItemList = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tconst [itemData, setItemData] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"ITEM_NAME\",\n\t\t\taccessor: \"name\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.name}
    \n\t\t\t),\n\t\t},\n\t\t{\n\t\t\tHeader: \"PRODUCT_TYPE\",\n\t\t\taccessor: \"productType\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.productType}
    \n\t\t\t),\n\t\t},\n\t\t{\n\t\t\tHeader: \"STOCKS\",\n\t\t\taccessor: \"stock\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.stock}
    \n\t\t\t),\n\t\t},\n\t\t{\n\t\t\tHeader: \"POINTS\",\n\t\t\taccessor: \"pointsNeeded\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.pointsNeeded}
    \n\t\t\t),\n\t\t},\n\t\t{\n\t\t\tHeader: \"IMAGE\",\n\t\t\taccessor: \"image\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t<>\n\t\t\t\t\t
    \n\t\t\t\t\t\t{!stringIsNullOrEmpty(row.original.image) ? (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t - \n\t\t\t\t\t\t)}\n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t<>\n\t\t\t\t\t{row.original.status == 1 ? (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t) : (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"SUSPENDED\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(AccessRight._DC_ITEM_LIST_PERMISSION, true) && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\t\tWebUrl._URL_CREATE_OR_UPDATE_DC_ITEM,\n\t\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t{row.original.status == 1 && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tupdateStatus(row.original.id, row.original.status)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"DISABLE\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t{row.original.status == 0 && (\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\tupdateStatus(row.original.id, row.original.status)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"ENABLE\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\tconst init = async () => {\n\t\tfetch(ApiUrl._API_GET_ALL_DC_ITEM, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetItemData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tconst updateStatus = async (id, status) => {\n\t\t_dispatch(setBusy());\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_UPDATE_DC_ITEM_STATUS + \"?id=\" + id + \"&status=\" + status\n\t\t);\n\n\t\t_dispatch(setIdle());\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t\tinit();\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"REDEMPTION_ITEMS\")}\n\t\t\t\t{checkIfPermissionExist(AccessRight._DC_ITEM_LIST_PERMISSION, true) && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageDCItemList;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tModal,\n\tModalHeader,\n\tModalBody,\n\tModalFooter,\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tDropdown,\n} from \"reactstrap\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tcreateFormBody,\n\tcreateMultiPartFormBody,\n\tnavigateTo,\n\tnumberWithCurrencyFormat,\n\tstringIsNullOrEmpty,\n} from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport moment from \"moment\";\nimport { DateRangePicker } from \"react-bootstrap-daterangepicker\";\nimport DatePicker from \"react-datepicker\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst ManageDCRedemption = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tconst [redemptionData, setRedemptionData] = useState([]);\n\tconst [selectedMember, setSelectedMember] = useState(\"\");\n\tconst [selectedItemName, setSelectedItemName] = useState(\"\");\n\tconst [labelUsername, setLabelUsername] = useState(\"All\");\n\tconst [labelItemName, setLabelItemName] = useState(\"All\");\n\tconst [searchTrigger, setSearchTrigger] = useState(\"\");\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"week\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"week\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst _SELECTED_MEMBER_KEY = \"selectedMemberKey\";\n\tconst _SELECTED_ITEM_KEY = \"selectedItemKey\";\n\tconst _SELECTED_STATUS_KEY = \"selectedStatusKey\";\n\tconst [selectedStatus, setSelectedStatus] = useState(\"\");\n\tconst [labelStatus, setLabelStatus] = useState(\"All\");\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"ITEM_NAME\",\n\t\t\taccessor: \"name\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.name}
    \n\t\t\t),\n\t\t},\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.username}
    \n\t\t\t),\n\t\t},\n\t\t{\n\t\t\tHeader: \"PHONE_NUMBER\",\n\t\t\taccessor: \"phoneNumber\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.phoneNumber}
    \n\t\t\t),\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"EMAIL\",\n\t\t\taccessor: \"email\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.email}
    \n\t\t\t),\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"POINTS_SPENDED\",\n\t\t\taccessor: \"pointsNeededOnRedemption\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{row.original.pointsNeededOnRedemption}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"REDEEM_TIME\",\n\t\t\taccessor: \"redeemTime\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{moment(row.original.redeemTime).format(\"YYYY-MM-DD HH:mm:ss\")}\n\t\t\t\t\t
    \n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"received\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{console.log(row.original)}\n\t\t\t\t\t{row.original.received == 1 && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{moment(row.original.updatedTime).format(\"YYYY-MM-DD HH:mm:ss\")}\n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t\t{row.original.received == 0 && row.original.processing == 2 && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{t(\"CANCELLED\")}\n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t\t{row.original.processing == 1 && row.original.received == 0 && (\n\t\t\t\t\t\t
    {t(\"PROCESSING\")}
    \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(AccessRight._DC_REDEMPTION_PERMISSION, true) &&\n\t\t\t\trow.original.received == 0 && row.original.processing != 2 && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t updateReceived(row.original.id)}>\n\t\t\t\t\t\t\t\t\t{t(\"MARK_RECEIVED\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t updateProcessing(row.original.id)}>\n\t\t\t\t\t\t\t\t\t{t(\"MARK_PROCESSING\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t updateCancel(row.original.id)}>\n\t\t\t\t\t\t\t\t\t\t{t(\"CANCEL_REDEMPTION\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tconst updateReceived = async (id) => {\n\t\t_dispatch(setBusy());\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_UPDATE_DC_REDEMPTION + \"?id=\" + id\n\t\t);\n\n\t\t_dispatch(setIdle());\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t\tinit();\n\t};\n\n\tconst updateProcessing = async (id) => {\n\t\t_dispatch(setBusy());\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_UPDATE_PROCESSING_DC_REDEMPTION + \"?id=\" + id\n\t\t);\n\n\t\t_dispatch(setIdle());\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t\tinit();\n\t};\n\n\tconst updateCancel = async (id) => {\n\t\t_dispatch(setBusy());\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_UPDATE_CANCEL_DC_REDEMPTION + \"?id=\" + id\n\t\t);\n\n\t\t_dispatch(setIdle());\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t\tinit();\n\t};\n\n\tconst init = async () => {\n\t\tlet apiUrl =\n\t\t\tApiUrl._API_GET_DC_REDEMPTION_RECORD +\n\t\t\t\"?startDate=\" +\n\t\t\tstartDate +\n\t\t\t\"&endDate=\" +\n\t\t\tendDate;\n\n\t\tif (selectedMember !== \"\") {\n\t\t\tapiUrl += \"&memberId=\" + selectedMember;\n\t\t}\n\n\t\tif (selectedItemName !== \"\") {\n\t\t\tapiUrl += \"&itemId=\" + selectedItemName;\n\t\t}\n\n\t\tif (selectedStatus !== \"\") {\n\t\t\tif (selectedStatus == 1) {\n\t\t\t\tapiUrl += \"&itemReceived=1\";\n\t\t\t\tapiUrl += \"&itemProcessing=0\";\n\t\t\t}\n\t\t\tif (selectedStatus == 2) {\n\t\t\t\tapiUrl += \"&itemReceived=0\";\n\t\t\t\tapiUrl += \"&itemProcessing=1\";\n\t\t\t} else {\n\t\t\t\tapiUrl += \"&itemReceived=0\";\n\t\t\t\tapiUrl += \"&itemProcessing=0\";\n\t\t\t}\n\t\t}\n\n\t\tlet responseJson = await ApiEngine.get(apiUrl);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsetRedemptionData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t}\n\t};\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\tconst searchBtnHandler = async () => {\n\t\t\n\t\tlet apiUrl =\n\t\t\tApiUrl._API_GET_DC_REDEMPTION_RECORD +\n\t\t\t\"?startDate=\" +\n\t\t\tstartDate +\n\t\t\t\"&endDate=\" +\n\t\t\tendDate;\n\n\t\tif (selectedMember !== \"\") {\n\t\t\tapiUrl += \"&memberId=\" + selectedMember;\n\t\t}\n\n\t\tif (selectedItemName !== \"\") {\n\t\t\tapiUrl += \"&itemId=\" + selectedItemName;\n\t\t}\n\n\t\tif (selectedStatus !== \"\") {\n\t\t\tif (selectedStatus == 1) {\n\t\t\t\tapiUrl += \"&itemReceived=1\";\n\t\t\t\tapiUrl += \"&itemProcessing=0\";\n\t\t\t}\n\t\t\tif (selectedStatus == 2) {\n\t\t\t\tapiUrl += \"&itemReceived=0\";\n\t\t\t\tapiUrl += \"&itemProcessing=1\";\n\t\t\t} else {\n\t\t\t\tapiUrl += \"&itemReceived=0\";\n\t\t\t\tapiUrl += \"&itemProcessing=0\";\n\t\t\t}\n\t\t}\n\n\t\tsetSearchTrigger(apiUrl);\n\t};\n\n\tuseEffect(async () => {\n\t\t_dispatch(setBusy());\n\t\tlet responseJson = await ApiEngine.get(searchTrigger);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tconsole.log(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\tsetRedemptionData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t}\n\n\t\t_dispatch(setIdle());\n\t}, [searchTrigger]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: \"\" });\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tasync function getItemList(search, loadOptions, { page }) {\n\t\tlet formattedData = [];\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_DC_ITEM_NAME_LIST}?&start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tformattedData = data.map((m) => {\n\t\t\t\treturn { label: m.itemName, value: m.id };\n\t\t\t});\n\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tasync function getItemStatus(search, loadOptions, { page }) {\n\t\tlet formattedData = [\n\t\t\t{\n\t\t\t\tlabel: t(\"RECEIVED\"),\n\t\t\t\tvalue: 1,\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: t(\"PROCESSING\"),\n\t\t\t\tvalue: 2,\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: t(\"PENDING\"),\n\t\t\t\tvalue: 0,\n\t\t\t},\n\t\t];\n\n\t\treturn {\n\t\t\toptions: formattedData,\n\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\tadditional: {\n\t\t\t\tpage: page + 1,\n\t\t\t},\n\t\t};\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"REDEMPTIONS\")}

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_MEMBER_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_MEMBER_KEY);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetLabelUsername(e.label);\n\t\t\t\t\t\t\t\t\t\t\tsetSelectedMember(e.value);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_ITEM_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_ITEM_KEY);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetLabelItemName(e.label);\n\t\t\t\t\t\t\t\t\t\t\tsetSelectedItemName(e.value);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_STATUS_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_STATUS_KEY);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetLabelStatus(e.label);\n\t\t\t\t\t\t\t\t\t\t\tsetSelectedStatus(e.value);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t//setSearch(true);\n\t\t\t\t\t\t\t\t\tsearchBtnHandler();\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t {t(\"SEARCH\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ManageDCRedemption;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport Select from \"react-select\";\nimport { useForm } from \"react-hook-form\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalHeader,\n\tModalFooter,\n} from \"reactstrap\";\nimport {\n\tcreateFormBody,\n\tnavigateTo,\n\tstringIsNullOrEmpty,\n} from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tContentTypeString,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport ConfigurationLanguageDetail from \"../configuration/ConfigurationLanguageDetail\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage } from \"../../redux/AppAction\";\n\n/// \n/// Author : -\n/// \nconst ManageDCItemContentLanguage = (props) => {\n\tconst { handleSubmit, errors, register, content, setValue, clearErrors } =\n\t\tuseForm();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [data, setData] = useState([]);\n\tconst _dispatch = useDispatch();\n\tconst [languageDetailModalVisibility, setLanguageDetailModalVisibility] =\n\t\tuseState(false);\n\n\tconst _EXCLUDE_TITLE_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT_CONTENT,\n\t\tContentTypeString._VIP_CRITERIA,\n\t];\n\tconst _EXCLUDE_CONTENT_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT,\n\t\tContentTypeString._PRODUCT_CATEGORY,\n\t];\n\tconst [isOpen, setIsOpen] = useState(false);\n\tconst [languageDetailId, setLanguageDetailId] = useState(\"\");\n\tconst [tableColumns, setTableColumns] = useState([]);\n\tconst [text, setText] = useState(\"\");\n\tconst [languageOption, setLanguageOption] = useState([]);\n\tconst [languageId, setLanguageId] = useState(\"\");\n\tconst [dCItemId, setDCItemId] = useState(\"\");\n\tconst [dCItemLanguage, setDCItemLanguage] = useState([]);\n\tconst [dCItemContentData, setDCItemContentData] = useState([]);\n\tconst [editModal, setEditModal] = useState(false);\n\tconst [editDCItemId, setEditDCItemId] = useState(\"\");\n\tconst [editLanguageId, setEditLanguageId] = useState(\"\");\n\tconst [dCItemLanguageId, setDCItemLanguageId] = useState(\"\");\n\tconst [editContent, setEditContent] = useState(\"\");\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CONTENT\",\n\t\t\taccessor: \"content\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetEditModal(true);\n\t\t\t\t\t\t\t\t\tsetDCItemLanguageId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetEditDCItemId(row.original.dcItemId);\n\t\t\t\t\t\t\t\t\tsetEditLanguageId(row.original.languageId);\n\t\t\t\t\t\t\t\t\tsetEditContent(row.original.content);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tconst onSubmit = async (data) => {\n\t\tlet params = {\n\t\t\tdCItemId: props.id,\n\t\t\tlanguageId: languageId,\n\t\t\tcontent: data.text,\n\t\t};\n\n\t\tconsole.log(params);\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_CREATE_DCITEM_CONTENT_LANGUAGE,\n\t\t\tcreateFormBody(params)\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t\tsetIsOpen(false);\n\t\tgetDCItem();\n\t};\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetConfigLanguage();\n\t\tgetLanguage();\n\t\tgetDCItem();\n\t\t/// Used to Exclude the column of table\n\t\tif (_EXCLUDE_CONTENT_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(1, 1);\n\t\t} else if (_EXCLUDE_TITLE_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(2, 1);\n\t\t}\n\t\tsetTableColumns(_tableColumns);\n\t}, []);\n\n\tasync function getLanguage() {\n\t\tawait fetch(ApiUrl._API_GET_LANGUAGE, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst languageList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (language) {\n\t\t\t\t\t\tlanguageList.push({ label: language.name, value: language.id });\n\t\t\t\t\t});\n\t\t\t\t\tsetLanguageOption(languageList);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getConfigLanguage = async () => {\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_CONFIG_LANGUAGE_BY_TYPE_ID +\n\t\t\t\t\"?type=\" +\n\t\t\t\tprops.type +\n\t\t\t\t\"&id=\" +\n\t\t\t\tprops.id,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tasync function getDCItem() {\n\t\tvar apiUrl = ApiUrl._API_GET_DCITEM_LANGUAGE;\n\t\tapiUrl += \"?id=\" + props.id;\n\t\tfetch(apiUrl, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetDCItemContentData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tconst editSubmit = async (data) => {\n\t\tlet params = {\n\t\t\tid: dCItemLanguageId,\n\t\t\tdCItemId: editDCItemId,\n\t\t\tlanguageId: editLanguageId,\n\t\t\tcontent: data.text,\n\t\t};\n\n\t\tconsole.log(params);\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_UPDATE_DCITEM_LANGUAGE_BY_ID,\n\t\t\tcreateFormBody(params)\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\n\t\tsetEditModal(false);\n\t\tgetDCItem();\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tsetLanguageDetailModalVisibility(false);\n\t\t\t\t\t\tgetConfigLanguage();\n\t\t\t\t\t}}\n\t\t\t\t\tdataTypeId={props.id}\n\t\t\t\t\tlanguageDetailId={languageDetailId}\n\t\t\t\t\tlanguageType={props.type}\n\t\t\t\t/>\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetLanguageDetailId(\"\");\n\t\t\t\t\t\t\tsetIsOpen(true);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tclassName=\"btn btn-purple\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tvalue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetLanguageId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"languageId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.content.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t setIsOpen(false)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{t(\"EDIT_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tdefaultValue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tvalue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetEditLanguageId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"editLanguageId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.editContent.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t setEditModal(false)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageDCItemContentLanguage;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tStatus,\n\tLanguageKey,\n\tContentTypeString,\n\t_SYNC_INTERVAL_PATTERN,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport Select from \"react-select\";\nimport ManageDCItemContentLanguage from \"./ManageDCItemContentLanguage\";\nimport classnames from \"classnames\";\n\n/// \n/// Author : -\n/// \n\nconst DCItemDetail = (props) => {\n\tconst _DETAIL_TAB = \"1\";\n\tconst _LANGUAGE_TAB = \"2\";\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\n\tconst { register, handleSubmit, errors, setValue, watch, unregister } =\n\t\tuseForm();\n\tconst [itemId, setItemId] = useState(\"\");\n\tconst [itemName, setItemName] = useState(\"\");\n\tconst [pointsNeeded, setPointsNeeded] = useState(0);\n\tconst [stock, setStock] = useState(0);\n\tconst [limitPerMember, setLimitPerMember] = useState(0);\n\tconst [status, setStatus] = useState(true);\n\tconst [isNewImage, setIsNewImage] = useState(false);\n\tconst [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n\tconst [image, setImage] = useState();\n\tconst [imageFile, setImageFile] = useState([]);\n\tconst [desktopImage, setDesktopImage] = useState();\n\tconst [desktopFile, setDesktopFile] = useState([]);\n\tconst [productType, setProductType] = useState(\"Product\");\n\tconst [voucherValue, setVoucherValue] = useState(0.0);\n\tconst [rollOver, setRollOver] = useState(0);\n\tconst _PRODUCT_TYPE = [\n\t\t{ value: \"Product\", label: \"Product\" },\n\t\t{ value: \"Voucher\", label: \"Voucher\" },\n\t\t{ value: \"Credit\", label: \"Credit\" },\n\t];\n\n\tconst [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n\tconst toggle = (tab) => {\n\t\tif (activeTab !== tab) {\n\t\t\tsetActiveTab(tab);\n\t\t}\n\t};\n\t/// \n\t/// Author : -\n\t/// Used to set image\n\t/// \n\tconst imageDrop = (acceptedFiles) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tsetImageFile(file);\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tsetImage(reader.result);\n\t\t\t\tsetIsNewImage(true);\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// Used to set image for desktop\n\t/// \n\tconst desktopImageDrop = (acceptedFiles) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tsetDesktopFile(file);\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tsetDesktopImage(reader.result);\n\t\t\t\tsetIsNewDesktopImage(true);\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tlet params = {\n\t\t\tid: itemId,\n\t\t\titemName: data.itemName,\n\t\t\tstatus: data.status,\n\t\t\tpointsNeeded: data.pointsNeeded,\n\t\t\tstock: data.stock,\n\t\t\tlimitPerMember: data.limitPerMember,\n\t\t\tproductType: productType,\n\t\t\tvalue: data.voucherValue,\n\t\t\trollOver: stringIsNullOrEmpty(data.rollOver) ? 0 : data.rollOver,\n\t\t\tisNewImage: isNewImage,\n\t\t\tisNewDesktopImage: isNewDesktopImage,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(imageFile)) {\n\t\t\tparams[\"image\"] = imageFile;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(desktopFile)) {\n\t\t\tparams[\"desktopImage\"] = desktopFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(image)) {\n\t\t\tparams[\"imageRemoved\"] = true;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(desktopImage)) {\n\t\t\tparams[\"desktopImageRemoved\"] = true;\n\t\t}\n\n\t\tconsole.log(params);\n\n\t\tlet formBody = createMultiPartFormBody(params);\n\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_CREATE_OR_UPDATE_DC_ITEM,\n\t\t\tformBody\n\t\t);\n\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsetIsNewImage(false);\n\t\t\tsetIsNewDesktopImage(false);\n\t\t\t//setItemId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\tinit();\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tif (_location.state) {\n\t\t\tvar apiUrl = ApiUrl._API_GET_DC_ITEM_BY_ID;\n\t\t\tapiUrl += \"?id=\" + _location.state.id;\n\t\t\tlet responseJson = await ApiEngine.get(apiUrl);\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetItemId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\tsetItemName(responseJson[ApiKey._API_DATA_KEY][\"name\"]);\n\t\t\t\tsetPointsNeeded(responseJson[ApiKey._API_DATA_KEY][\"pointsNeeded\"]);\n\t\t\t\tsetStock(responseJson[ApiKey._API_DATA_KEY][\"stock\"]);\n\t\t\t\tsetLimitPerMember(responseJson[ApiKey._API_DATA_KEY][\"limitPerMember\"]);\n\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\t\t\t\tsetProductType(responseJson[ApiKey._API_DATA_KEY][\"productType\"]);\n\n\t\t\t\tif(!stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"value\"]))\n\t\t\t\tsetVoucherValue(responseJson[ApiKey._API_DATA_KEY][\"value\"].toFixed(2));\n\n\t\t\t\tsetRollOver(responseJson[ApiKey._API_DATA_KEY][\"rollOver\"]);\n\t\t\t\tif (!stringIsNullOrEmpty(responseJson[ApiKey._API_DATA_KEY][\"image\"])) {\n\t\t\t\t\tsetImage(responseJson[ApiKey._API_DATA_KEY][\"image\"]);\n\t\t\t\t}\n\n\t\t\t\tconsole.log(responseJson[ApiKey._API_DATA_KEY][\"image\"]);\n\t\t\t\tif (\n\t\t\t\t\t!stringIsNullOrEmpty(\n\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\tsetDesktopImage(responseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\tconsole.log(image);\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{itemId ? t(\"EDIT_REWARDS_POINTS\") : t(\"ADD_NEW_REWARDS_POINTS\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t{itemId && (\n\t\t\t\t\n\t\t\t)}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.itemName && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.itemName.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t setPointsNeeded(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.pointsNeeded && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.pointsNeeded.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t setStock(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.stock && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.stock.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t setLimitPerMember(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.limitPerMember && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.limitPerMember.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t option.value == productType\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetProductType(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t{(productType === \"Credit\" ||\n\t\t\t\t\t\t\t\t\t\t\t\tproductType === \"Voucher\") && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setVoucherValue(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpattern=\"[0-9]+.[0-9]\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstep=\"0.01\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.voucherValue && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.voucherValue.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\n\t\t\t\t\t\t\t\t\t\t\t{productType === \"Credit\" && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setRollOver(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.rollOver && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.rollOver.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setStatus(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t imageDrop(acceptedFiles)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(image) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetImageFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{itemId && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default DCItemDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageDCPoints = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst [dailyCheckInData, setDailyCheckInData] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"TITLE\",\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{row.original.status == true ? (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"SUSPENDED\")}\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(\n\t\t\t\t\tAccessRight._DAILY_CHECK_IN_PERMISSION,\n\t\t\t\t\ttrue\n\t\t\t\t) && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t_history.push({\n\t\t\t\t\t\t\t\t\t\t\tpathname: WebUrl._URL_DAILY_CHECK_IN_DETAIL,\n\t\t\t\t\t\t\t\t\t\t\tstate: {\n\t\t\t\t\t\t\t\t\t\t\t\trefId: row.original.id,\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t_history.push({\n\t\t\t\t\t\t\t\t\t\t\tpathname: WebUrl._URL_DAILY_CHECK_IN_DETAIL,\n\t\t\t\t\t\t\t\t\t\t\tstate: {\n\t\t\t\t\t\t\t\t\t\t\t\tcloneId: row.original.id,\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"CLONE\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tfetch(ApiUrl._API_GET_DAILY_CHECK_IN + \"?all=true\", {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tvar data = responseJson[ApiKey._API_DATA_KEY];\n\n\t\t\t\t\tvar monthOrder = {\n\t\t\t\t\t\tJanuary: 1,\n\t\t\t\t\t\tFebruary: 2,\n\t\t\t\t\t\tMarch: 3,\n\t\t\t\t\t\tApril: 4,\n\t\t\t\t\t\tMay: 5,\n\t\t\t\t\t\tJune: 6,\n\t\t\t\t\t\tJuly: 7,\n\t\t\t\t\t\tAugust: 8,\n\t\t\t\t\t\tSeptember: 9,\n\t\t\t\t\t\tOctober: 10,\n\t\t\t\t\t\tNovember: 11,\n\t\t\t\t\t\tDecember: 12,\n\t\t\t\t\t};\n\n\t\t\t\t\tdata.sort(function (a, b) {\n\t\t\t\t\t\tvar monthA = monthOrder[a.title];\n\t\t\t\t\t\tvar monthB = monthOrder[b.title];\n\t\t\t\t\t\treturn monthA - monthB;\n\t\t\t\t\t});\n\n\t\t\t\t\tsetDailyCheckInData(data);\n\t\t\t\t}\n\t\t\t});\n\t}, []);\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"CHECK_IN_POINT_SETTINGS\")}\n\t\t\t\t{checkIfPermissionExist(\n\t\t\t\t\tAccessRight._DAILY_CHECK_IN_PERMISSION,\n\t\t\t\t\ttrue\n\t\t\t\t) && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageDCPoints;\n","import React, { useState, useEffect, useMemo } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { ApiKey, ApiUrl, WebUrl, LanguageKey } from \"../../util/Constant\";\nimport { createFormBody } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage } from \"../../redux/AppAction\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \nconst DCPointDetail = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\tconst { register, handleSubmit, errors, setValue, watch } = useForm({\n\t\tmode: \"onBlur\",\n\t});\n\tconst [productId, setProductId] = useState(\"\");\n\tconst [productName, setProductName] = useState(\"\");\n\tconst [productCode, setProductCode] = useState(\"\");\n\tconst [dcPoints, setDCPoints] = useState(0.0);\n\tconst [valueInCurrency, setValueInCurrency] = useState(\"\");\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tif (_location.state) {\n\t\t\tvar apiUrl = ApiUrl._API_GET_ACCOUNT_PRODUCT_BY_PRODUCT_ID;\n\t\t\tapiUrl += \"?productId=\" + _location.state.productId;\n\t\t\tlet responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetProductId(responseJson[ApiKey._API_DATA_KEY][\"productId\"]);\n\t\t\t\tsetProductName(responseJson[ApiKey._API_DATA_KEY][\"productName\"]);\n\t\t\t\tsetProductCode(responseJson[ApiKey._API_DATA_KEY][\"productCode\"]);\n\t\t\t\tsetDCPoints(responseJson[ApiKey._API_DATA_KEY][\"dcPoints\"].toFixed(2));\n\t\t\t\tsetValueInCurrency(\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"valueInCurrency\"].toFixed(13)\n\t\t\t\t);\n\t\t\t}\n\t\t} else {\n\t\t\t_history.push(\"/dc/dcPointDetails\");\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tlet params = {\n\t\t\tproductId: productId,\n\t\t\tdcPoints: data.dcPoints,\n\t\t\tvalueInCurrency: data.valueInCurrency,\n\t\t};\n\n\t\tlet formBody = createFormBody(params);\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_UPDATE_DC_POINTS,\n\t\t\tformBody\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tinit();\n\t\t}\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"ACCOUNT_PRODUCT_DC_POINTS\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t

    {t(\"PRODUCT_DETAIL\")}

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t setDCPoints(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\tpattern=\"[0-9]+.[0-9]\"\n\t\t\t\t\t\t\t\t\t\t\tstep=\"0.01\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{errors.dcPoints && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.dcPoints.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t setValueInCurrency(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t{errors.valueInCurrency && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.valueInCurrency.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t handleSubmit(submitForm)()}\n\t\t\t\t\t\t\t\t\t\t\t\tclassName=\"btn btn-primary\"\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{t(\"SUBMIT\")}\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default DCPointDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, numberWithCurrencyFormat } from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\n\n/// \n/// Author : -\n/// \n\nconst ManageMemberDCPoints = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tconst [memberDCPtsData, setMemberDCPtsData] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.username}
    \n\t\t\t),\n\t\t},\n\t\t{\n\t\t\tHeader: \"POINTS\",\n\t\t\taccessor: \"dcPoints\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{row.original.dcPoints}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"POINT_QUOTA\",\n\t\t\taccessor: \"pointQuota\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{row.original.pointQuota}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(\n\t\t\t\t\tAccessRight._MEMBER_DC_POINTS_PERMISSION,\n\t\t\t\t\ttrue\n\t\t\t\t) && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\t\tWebUrl._URL_MEMBER_DC_POINTS_DETAIL,\n\t\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"VIEW\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tconst init = async () => {\n\t\tlet apiUrl = ApiUrl._API_GET_MEMBER_DC_POINTS;\n\n\t\tlet responseJson = await ApiEngine.get(apiUrl);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsetMemberDCPtsData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"MEMBER_POINTS\")}

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageMemberDCPoints;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { numberWithCurrencyFormat, stringIsNullOrEmpty } from \"../../util/Util\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport { DateRangePicker } from \"react-bootstrap-daterangepicker\";\n\n/// \n/// Author : -\n/// \n\nconst MemberDCPointsDetail = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _dispatch = useDispatch();\n\tconst _location = useLocation();\n\tconst _history = useHistory();\n\tconst [memberId, setMemberId] = useState(\"\");\n\tconst [searchTrigger, setSearchTrigger] = useState(\"\");\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [selectedDate, setSelectedDate] = useState(\"\");\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.username}
    \n\t\t\t),\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"DATE\",\n\t\t\taccessor: \"date\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{moment(row.original.parsedTime).format(\"YYYY-MM-DD\")}\n\t\t\t\t\t
    \n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"POINTS\",\n\t\t\taccessor: \"pointsAmount\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{row.original.pointsAmount}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst totalPoints = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.pointsAmount) {\n\t\t\t\t\t\treturn sum + currentValue.original.pointsAmount;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{totalPoints.toFixed(2)}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableFilters: true,\n\t\t},\n\t];\n\n\tconst init = async () => {\n\t\tif (_location.state) {\n\t\t\tsetMemberId(_location.state.id);\n\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_GET_POINTS_HISTORY +\n\t\t\t\t\"?StartDate=\" +\n\t\t\t\tmoment(startDate).startOf(\"day\").format(\"YYYY-MM-DD\") +\n\t\t\t\t\"&EndDate=\" +\n\t\t\t\tmoment(endDate).endOf(\"day\").format(\"YYYY-MM-DD\") +\n\t\t\t\t\"&MemberId=\" +\n\t\t\t\t_location.state.id;\n\n\t\t\tsetSearchTrigger(apiUrl);\n\t\t}\n\t};\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetSelectedDate(\"\");\n\n\t\tlet apiUrl =\n\t\t\tApiUrl._API_GET_POINTS_HISTORY +\n\t\t\t\"?StartDate=\" +\n\t\t\tmoment(picker.startDate).format(\"YYYY-MM-DD\") +\n\t\t\t\"&EndDate=\" +\n\t\t\tmoment(picker.endDate).format(\"YYYY-MM-DD\") +\n\t\t\t\"&MemberId=\" +\n\t\t\tmemberId;\n\n\t\tsetSearchTrigger(apiUrl);\n\t};\n\n\tconst handleSelectDate = async (date) => {\n\t\tsetStartDate(moment(date).startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(date).endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetSelectedDate(date);\n\n\t\tlet apiUrl =\n\t\t\tApiUrl._API_GET_POINTS_HISTORY +\n\t\t\t\"?StartDate=\" +\n\t\t\tstartDate +\n\t\t\t\"&EndDate=\" +\n\t\t\tendDate +\n\t\t\t\"&MemberId=\" +\n\t\t\tmemberId +\n\t\t\t\"&SelectedDate=\" +\n\t\t\tdate;\n\n\t\tsetSearchTrigger(apiUrl);\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"MEMBER_POINTS\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default MemberDCPointsDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n\tAllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageDailyCheckIn = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst [dailyCheckInData, setDailyCheckInData] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"TITLE\",\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{row.original.status == true ? (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"SUSPENDED\")}\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(\n\t\t\t\t\tAccessRight._DAILY_CHECK_IN_PERMISSION,\n\t\t\t\t\ttrue\n\t\t\t\t) && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\t\tWebUrl._URL_DAILY_CHECK_IN_DETAIL,\n\t\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tfetch(ApiUrl._API_GET_DAILY_CHECK_IN + \"?all=true\", {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetDailyCheckInData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t}, []);\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"MANAGE_DAILY_CHECK_IN\")}\n\t\t\t\t{checkIfPermissionExist(\n\t\t\t\t\tAccessRight._DAILY_CHECK_IN_PERMISSION,\n\t\t\t\t\ttrue\n\t\t\t\t) && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageDailyCheckIn;\n","import React, { useState, useEffect } from \"react\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\n\n/// \n/// Author : -\n/// \nconst ManageConfigurationDailyCheckIn = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _dispatch = useDispatch();\n\tconst {\n\t\tregister,\n\t\thandleSubmit,\n\t\terrors,\n\t\twatch,\n\t\ttrigger,\n\t\tsetValue,\n\t\tgetValues,\n\t} = useForm({ mode: \"onChange\" });\n\tconst [data, setData] = useState([]);\n\tconst [DCDId, setDCDId] = useState(\"\");\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tlet processedData = [];\n\t\tlet responseJson = await ApiEngine.get(\n\t\t\tApiUrl._API_GET_DAILY_CHECK_IN_DETAILS_BY_DCID + \"?DCId=\" + props.id\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tif (responseJson[ApiKey._API_DATA_KEY].length > 0) {\n\t\t\t\tconst result = responseJson[ApiKey._API_DATA_KEY];\n\n\t\t\t\tresult.map((x) => {\n\t\t\t\t\tprocessedData.push({\n\t\t\t\t\t\tid: x.id,\n\t\t\t\t\t\tlabel: x.days,\n\t\t\t\t\t\tpoints: x.points,\n\t\t\t\t\t\tisBigPrize: x.isBigPrize,\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < 28; i++) {\n\t\t\t\t\tconst index = i + 1;\n\t\t\t\t\tlet option = {\n\t\t\t\t\t\tid: index,\n\t\t\t\t\t\tlabel: t(\"DAY\") + \" \" + index,\n\t\t\t\t\t\tpoints: 0,\n\t\t\t\t\t\tisBigPrize: false,\n\t\t\t\t\t};\n\n\t\t\t\t\tprocessedData.push(option);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tsetData(processedData);\n\t}\n\n\tconst handlePointsOnChange = (id, points) => {\n\t\tsetData(\n\t\t\tdata.map((item) => (item.id === id ? { ...item, points: points } : item))\n\t\t);\n\t};\n\n\tconst handleCheckboxChange = (id) => {\n\t\tsetData(\n\t\t\tdata.map((item) =>\n\t\t\t\titem.id === id ? { ...item, isBigPrize: !item.isBigPrize } : item\n\t\t\t)\n\t\t);\n\t};\n\n\tasync function handleOnSubmit(data) {\n\t\tlet labelList = [];\n\t\tlet pointsList = [];\n\t\tlet isBigPrizeList = [];\n\t\tfor (var i = 0; i < data.length; i++) {\n\t\t\tlabelList.push(data[i][\"label\"]);\n\t\t\tpointsList.push(data[i][\"points\"]);\n\t\t\tisBigPrizeList.push(data[i][\"isBigPrize\"]);\n\t\t}\n\n\t\tlet params = {\n\t\t\tlabel: labelList,\n\t\t\tpoints: pointsList,\n\t\t\tisBigPrize: isBigPrizeList,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(DCDId)) {\n\t\t\tparams[\"id\"] = DCDId;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(props.id)) {\n\t\t\tparams[\"DCID\"] = props.id;\n\t\t}\n\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_DAILY_CHECK_IN_DETAILS, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tinit();\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t{data.map((item, i) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{item.label}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{t(\"POINTS\")}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\thandlePointsOnChange(item.id, e.target.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\tdefaultValue={item.points}\n\t\t\t\t\t\t\t\t\t\t\t\t\tname={\"day-\" + item.id}\n\t\t\t\t\t\t\t\t\t\t\t\t\tpattern=\"^\\d+(?:\\.\\d{1,2})?$\"\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t{errors[\"day-\" + item.id] && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors[\"day-\" + item.id].message, {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: 100,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{t(\"ISBIGPRIZE\")}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t// handleCheckboxChange(item.id);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={item.isBigPrize}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={item.isBigPrize}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\thandleCheckboxChange(item.id);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t handleOnSubmit(data)}\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"SUBMIT\")}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n\nexport default ManageConfigurationDailyCheckIn;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter, useHistory } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\tContentTypeString,\n} from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport {\n\tPanel,\n\tPanelHeader,\n\tPanelBody,\n} from \"../../components/panel/panel.jsx\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport ManageConfigurationDailyCheckIn from \"./ManageConfigurationDailyCheckIn\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \nconst DailyCheckInDetail = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _DETAIL_TAB = \"1\";\n\tconst _RATE_TAB = \"2\";\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\n\tconst { register, unregister, handleSubmit, errors, setError } = useForm();\n\n\tconst [dailyCheckInId, setDailyCheckInId] = useState(\"\");\n\tconst [title, setTitle] = useState(\"\");\n\tconst [status, setStatus] = useState(true);\n\tconst [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\tconst [isClone, setIsClone] = useState(false);\n\tconst [errorTitle, setErrorTitle] = useState(false);\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\tconst toggle = (tab) => {\n\t\tif (activeTab !== tab) {\n\t\t\tsetActiveTab(tab);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tif (_location.state) {\n\t\t\tif (_location.state.cloneId) {\n\t\t\t\tsetIsClone(true);\n\n\t\t\t\tvar apiUrl = ApiUrl._API_GET_DAILY_CHECK_IN_BY_ID;\n\t\t\t\tapiUrl += \"?id=\" + _location.state.cloneId;\n\t\t\t\tawait fetch(apiUrl, {\n\t\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\t\theaders: {\n\t\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\t\t.then((response) => response.json())\n\t\t\t\t\t.then(async (responseJson) => {\n\t\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\t\tsetDailyCheckInId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tsetIsClone(false);\n\t\t\t\tvar apiUrl = ApiUrl._API_GET_DAILY_CHECK_IN_BY_ID;\n\t\t\t\tapiUrl += \"?id=\" + _location.state.refId;\n\t\t\t\tawait fetch(apiUrl, {\n\t\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\t\theaders: {\n\t\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t\t},\n\t\t\t\t})\n\t\t\t\t\t.then((response) => response.json())\n\t\t\t\t\t.then(async (responseJson) => {\n\t\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\t\tsetDailyCheckInId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\t\t\tsetTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n\t\t\t\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tif (!stringIsNullOrEmpty(title)) {\n\t\t\tlet params = {\n\t\t\t\ttitle: title,\n\t\t\t\tstatus: data.status,\n\t\t\t};\n\n\t\t\tif (!stringIsNullOrEmpty(dailyCheckInId) && !isClone) {\n\t\t\t\tparams[\"id\"] = dailyCheckInId;\n\t\t\t}\n\n\t\t\tlet formBody = createFormBody(params);\n\t\t\t_dispatch(setBusy());\n\n\t\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_DAILY_CHECK_IN, {\n\t\t\t\tmethod: ApiKey._API_POST,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t\tbody: formBody,\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\t_dispatch(setIdle());\n\t\t\t\t\t_dispatch(\n\t\t\t\t\t\tshowMessage(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tsetDailyCheckInId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n\t\t\t\t\t\t_history.replace({\n\t\t\t\t\t\t\tpathname: _location.pathname,\n\t\t\t\t\t\t\tstate: {\n\t\t\t\t\t\t\t\tid: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t\telse\n\t\t{\n\t\t\tsetErrorTitle(true)\n\t\t}\n\t};\n\n\tasync function getMonthList(search, loadOptions, { page }) {\n\t\tconst result = Array.from({ length: 12 }, (e, i) => {\n\t\t\treturn new Date(null, i + 1, null).toLocaleDateString(\"en\", {\n\t\t\t\tmonth: \"long\",\n\t\t\t});\n\t\t});\n\n\t\tlet formattedData = result.map((m, index) => {\n\t\t\treturn { label: m, value: m };\n\t\t});\n\n\t\treturn {\n\t\t\toptions: formattedData,\n\t\t\tadditional: {\n\t\t\t\tpage: page + 1,\n\t\t\t},\n\t\t};\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{dailyCheckInId && !isClone\n\t\t\t\t\t? t(\"EDIT_DAILY_CHECK_IN\")\n\t\t\t\t\t: t(\"ADD_DAILY_CHECK_IN\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t{dailyCheckInId && (\n\t\t\t\t\n\t\t\t)}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetTitle(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errorTitle && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"PLEASE_SELECT_MONTHS\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setStatus(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t{dailyCheckInId && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default withRouter(DailyCheckInDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { navigateTo, numberWithCurrencyFormat } from \"../../util/Util\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tAccessRight,\n\tWebUrl,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n\tRole,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\n\n/// \n/// Author : -\n/// \nconst ManageMemberGamePoints = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tvar _username = useSelector(\n\t\t(state) => state[\"authState\"][\"userData\"][\"username\"]\n\t);\n\n\tconst [tableData, setTableData] = useState([]);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"isoWeek\").format(\"YYYY-MM-DD\")\n\t);\n\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"isoWeek\").format(\"YYYY-MM-DD\")\n\t);\n\n\tconst [selectedDate, setSelectedDate] = useState(\n\t\tmoment().subtract(1, \"days\").format(\"YYYY-MM-DD\")\n\t);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(AccessRight._MANAGE_MEMBER_GAME_POINTS, true) &&\n\t\t\t\t(row.original.isClaim == false ? (\n\t\t\t\t\t
    \n\t\t\t\t\t\t handleCheckboxChange(e)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t
    \n\t\t\t\t) : (\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"RELEASED\")}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t)),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 50,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn {row.original.username};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"DATE\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn moment.utc(row.original.date).format(\"DD-MM-YYYY\");\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"TOTAL_TURNOVER\",\n\t\t\taccessor: \"totalTurnover\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: \"GAME_POINTS\",\n\t\t\taccessor: \"gamePoints\",\n\t\t\tminWidth: 100,\n\t\t},\n\t];\n\n\tconst [selectedCheckboxes, setSelectedCheckboxes] = useState([]);\n\n\tconst handleCheckboxChange = (e) => {\n\t\tconst { value } = e.target;\n\t\tsetSelectedCheckboxes((prevSelected) => {\n\t\t\tif (prevSelected.includes(value)) {\n\t\t\t\treturn prevSelected.filter((id) => id !== value);\n\t\t\t} else {\n\t\t\t\treturn [...prevSelected, value];\n\t\t\t}\n\t\t});\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\tconst init = async () => {\n\t\tfetch(ApiUrl._API_GET_MEMBER_GAME_POINTS + \"?startDate=\" + selectedDate, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetTableData(responseJson[ApiKey._API_DATA_KEY].data);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tasync function getMemberGamePoints() {\n\t\t_dispatch(setBusy());\n\t\tfetch(ApiUrl._API_GET_MEMBER_GAME_POINTS + \"?startDate=\" + selectedDate, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetTableData(responseJson[ApiKey._API_DATA_KEY].data);\n\t\t\t\t}\n\t\t\t\t_dispatch(setIdle());\n\t\t\t});\n\t}\n\t\n\t function CheckAll(){\n\t\t if(tableData.length > 0)\n\t\t {\n\t\t\t setSelectedCheckboxes(tableData.map(row => \n\t\t\t\t`${row.id}#${row.date}`\n\t\t\t ));\n\t\t }\n\t }\n\n\tasync function Claim(idList, totalTurnoverList, gamePointsList, startDateList) {\n\n\t\tlet tempList = [];\n\t\tfor (var i = 0; i < idList.length; i++) {\n\t\t\tvar splitId = idList[i].split(\"#\");\n\t\t\ttempList.push(splitId[0]);\n\t\t}\n\n\t\tlet params = {\n\t\t\tmemberList: tempList,\n\t\t\ttotalTurnoverList: totalTurnoverList,\n\t\t\tgamePointsList: gamePointsList,\n\t\t\tdate: startDateList[0],\n\t\t};\n\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\t\tfetch(ApiUrl._API_GENERATE_MEMBER_GAME_POINTS, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tgetMemberGamePoints();\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t});\n\t}\n\n\tasync function ClaimAll(\n\t\tidList,\n\t\ttotalTurnoverList,\n\t\tgamePointsList,\n\t\tstartDateList\n\t) {\n\t\tlet params = {\n\t\t\tmemberList: idList,\n\t\t\ttotalTurnoverList: totalTurnoverList,\n\t\t\tgamePointsList: gamePointsList,\n\t\t\tdate: startDateList[0],\n\t\t};\n\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\t\tfetch(ApiUrl._API_GENERATE_MEMBER_GAME_POINTS, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tgetMemberGamePoints();\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t});\n\t}\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetSelectedDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"MEMBER_GAME_POINTS\")}

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t getMemberGamePoints()}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tClaim(\n\t\t\t\t\t\t\t\t\tselectedCheckboxes,\n\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t\t\t\t\tx.isClaim == false &&\n\t\t\t\t\t\t\t\t\t\t\t\tselectedCheckboxes.includes(x.id + \"#\" + x.date)\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t.map((member) => member.totalTurnover),\n\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t\t\t\t\tx.isClaim == false &&\n\t\t\t\t\t\t\t\t\t\t\t\tselectedCheckboxes.includes(x.id + \"#\" + x.date)\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t.map((member) => member.gamePoints),\n\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t\t\t\t\tx.isClaim == false &&\n\t\t\t\t\t\t\t\t\t\t\t\tselectedCheckboxes.includes(x.id + \"#\" + x.date)\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t.map((member) =>\n\t\t\t\t\t\t\t\t\t\t\tmoment.utc(member.date).format(\"YYYY-MM-DD\")\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={selectedCheckboxes.length > 0 ? false : true}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"RELEASE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tClaimAll(\n\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t.filter((x) => x.isClaim == false)\n\t\t\t\t\t\t\t\t\t\t.map((member) => member.id),\n\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t.filter((x) => x.isClaim == false)\n\t\t\t\t\t\t\t\t\t\t.map((member) => member.totalTurnover),\n\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t.filter((x) => x.isClaim == false)\n\t\t\t\t\t\t\t\t\t\t.map((member) => member.gamePoints),\n\t\t\t\t\t\t\t\t\ttableData\n\t\t\t\t\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t\t\t\t\tx.isClaim == false \n\t\t\t\t\t\t\t\t\t\t\t\t// &&\n\t\t\t\t\t\t\t\t\t\t\t\t// selectedCheckboxes.includes(x.id + \"#\" + x.date)\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t.map((member) =>\n\t\t\t\t\t\t\t\t\t\t\tmoment.utc(member.date).format(\"YYYY-MM-DD\")\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\ttableData.filter((x) => x.isClaim == false).length > 0\n\t\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t\t: true\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"RELEASE_ALL\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default ManageMemberGamePoints;\n","import React, { useState, useEffect } from \"react\";\r\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\r\nimport { useHistory } from \"react-router-dom\";\r\nimport \"react-datepicker/dist/react-datepicker.css\";\r\nimport CreatableSelect from \"react-select/creatable\";\r\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton.jsx\";\r\nimport {\r\n\tApiKey,\r\n\tApiUrl,\r\n\tTransactionType,\r\n\tPanelType,\r\n\tLanguageKey,\r\n\tDEFAULT_PAGE_SIZE,\r\n} from \"../../util/Constant.js\";\r\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util.js\";\r\nimport { useLocation } from \"react-router-dom\";\r\nimport { useForm, Controller } from \"react-hook-form\";\r\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction.js\";\r\nimport { useDispatch } from \"react-redux\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport ApiEngine from \"../../util/ApiEngine.js\";\r\nimport { AsyncPaginate } from \"react-select-async-paginate\";\r\n\r\nimport PinInput from \"react-pin-input\";\r\nimport { Modal, ModalHeader, ModalBody } from \"reactstrap\";\r\n\r\n/// \r\n/// Author : -\r\n/// \r\nconst PointsAdjustment = (props) => {\r\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\r\n\tlet _history = useHistory();\r\n\tconst _location = useLocation();\r\n\tconst _dispatch = useDispatch();\r\n\tconst {\r\n\t\tregister,\r\n\t\tunregister,\r\n\t\thandleSubmit,\r\n\t\terrors,\r\n\t\tsetValue,\r\n\t\ttrigger,\r\n\t\tcontrol,\r\n\t} = useForm();\r\n\tconst [memberOption, setMemberOption] = useState([]);\r\n\tconst [memberId, setMemberId] = useState(\"\");\r\n\tconst [fullScreen, setFullScreen] = useState(false);\r\n\tconst [remarkOption, setRemarkOption] = useState([]);\r\n\tconst [selectedMember, setSelectedMember] = useState();\r\n\r\n\tconst [showPinEntry, setShowPinEntry] = useState(false);\r\n\r\n\tconst [enteredAdjustmentData, setEnteredAdjustmentData] = useState({});\r\n\tconst [enteredAdjustmentE, setEnteredAdjustmentE] = useState({});\r\n\tconst [selectedMemberPoints, setSelectedMemberPoint] = useState();\r\n\tconst [selectedMemberPointsQuota, setSelectedMemberPointsQuota] = useState(0);\r\n\t/// \r\n\t/// Author : -\r\n\t/// Editted : -\r\n\t/// \r\n\tuseEffect(() => {\r\n\t\tregister({ name: \"memberId\" }, { required: \"PLEASE_SELECT_MEMBER\" });\r\n\r\n\t\t/// For The Size Difference of Modal And Page\r\n\t\tif (props.id) {\r\n\t\t\tsetFullScreen(true);\r\n\t\t}\r\n\r\n\t\tinit();\r\n\t\tinitFormField();\r\n\t}, []);\r\n\r\n\t/// \r\n\t/// Author : -\r\n\t/// Editted : - (Added Fetch to get IP Address)\r\n\t/// \r\n\tasync function init() {\r\n\t\ttry {\r\n\t\t\t_dispatch(setBusy());\r\n\t\t\tlet responseJson = await ApiEngine.get(ApiUrl._API_GET_USER_REMARK);\r\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\r\n\t\t\t\tconst remarkList = [];\r\n\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (remark) {\r\n\t\t\t\t\tremarkList.push({\r\n\t\t\t\t\t\tlabel: remark.description,\r\n\t\t\t\t\t\tvalue: remark.description,\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\tsetRemarkOption(remarkList);\r\n\t\t\t} else {\r\n\t\t\t\tthrow t(responseJson[ApiKey._API_MESSAGE_KEY]);\r\n\t\t\t}\r\n\t\t} catch (error) {\r\n\t\t\t_dispatch(showMessage(false, error));\r\n\t\t} finally {\r\n\t\t\t_dispatch(setIdle());\r\n\t\t}\r\n\t}\r\n\r\n\t/// \r\n\t/// Author : -\r\n\t/// \r\n\tconst initFormField = () => {\r\n\t\tconsole.log(props.id);\r\n\t\tif (stringIsNullOrEmpty(props.id)) {\r\n\t\t\tsetMemberId(\"\");\r\n\t\t\tsetValue(\"memberId\", \"\");\r\n\t\t\tgetMemberList(\"\", null, { page: 1 });\r\n\t\t\tsetSelectedMember(null);\r\n\t\t\tsetSelectedMemberPoint(\"\");\r\n\t\t\tsetSelectedMemberPointsQuota(0);\r\n\t\t} else {\r\n\t\t\tsetMemberId(props.id);\r\n\t\t\tsetValue(\"memberId\", props.id);\r\n\t\t}\r\n\t\tsetValue(\"remark\", \"\");\r\n\t};\r\n\r\n\t/// \r\n\t/// Author : -\r\n\t/// Editted : -\r\n\t/// \r\n\tconst submitForm = async (data, e) => {\r\n\t\tlet params = {\r\n\t\t\tmemberId: memberId,\r\n\t\t\tpoints: data.points,\r\n\t\t\tpanel: PanelType._BACKOFFICE,\r\n\t\t\tremark: data.remark,\r\n\t\t\tpointQuota: data.pointQuota\r\n\t\t};\r\n\r\n\t\tconsole.log(params);\r\n\t\tlet formBody = createFormBody(params);\r\n\r\n\t\tlet responseJson = await ApiEngine.post(\r\n\t\t\tApiUrl._API_UPDATE_POINTS_ADJUSTMENT,\r\n\t\t\tformBody\r\n\t\t);\r\n\r\n\t\t_dispatch(\r\n\t\t\tshowMessage(\r\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\r\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\r\n\t\t\t)\r\n\t\t);\r\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\r\n\t\t\twindow.location.reload();\r\n\t\t\tinitFormField();\r\n\t\t\tinit();\r\n\t\t\t\r\n\t\t\te.target.reset();\r\n\t\t\tif (props.onComplete != null) {\r\n\t\t\t\tprops.onComplete();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tsetShowPinEntry(false);\r\n\t};\r\n\r\n\t/// \r\n\t/// Author : Wong\r\n\t/// \r\n\tasync function getMemberList(search, loadOptions, { page }) {\r\n\t\tvar responseJson = await ApiEngine.get(\r\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${(page - 1) * DEFAULT_PAGE_SIZE\r\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\r\n\t\t);\r\n\r\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\r\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\r\n\t\t\tlet formattedData = data.map((m) => {\r\n\t\t\t\tconsole.log(m.memberPoints);\r\n\t\t\t\treturn { label: m.username, value: m.id, points: m.memberPoints, pointQuota : m.pointQuota };\r\n\t\t\t});\r\n\r\n\t\t\treturn {\r\n\t\t\t\toptions: formattedData,\r\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\r\n\t\t\t\tadditional: {\r\n\t\t\t\t\tpage: page + 1,\r\n\t\t\t\t},\r\n\t\t\t};\r\n\t\t}\r\n\t}\r\n\r\n\tasync function onPinSubmit(data, e) {\r\n\t\t// verify pin\r\n\t\tlet params = { transactionPinNumber: data };\r\n\t\tlet formBody = createFormBody(params);\r\n\t\tlet responseJson = await ApiEngine.post(\r\n\t\t\tApiUrl._API_VERIFY_USER_TRANSACTION_PIN_NUMBER,\r\n\t\t\tformBody\r\n\t\t);\r\n\r\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\r\n\t\t\tsubmitForm(enteredAdjustmentData, enteredAdjustmentE);\r\n\t\t} else {\r\n\t\t\t_dispatch(showMessage(false, t(\"INCORRECT\") + \" \" + t(\"PIN_NUMBER\")));\r\n\t\t\tsetShowPinEntry(false);\r\n\t\t}\r\n\t}\r\n\r\n\tasync function checkPinValue(data, e) {\r\n\t\t// check if pin has 4 digits (valid pin)\r\n\t\t// if true then submit pin\r\n\t\tif (data.length == 4) {\r\n\t\t\tonPinSubmit(data);\r\n\t\t}\r\n\t}\r\n\r\n\tasync function onSubmit(data, e) {\r\n\t\tsetEnteredAdjustmentData(data);\r\n\t\tsetEnteredAdjustmentE(e);\r\n\r\n\t\tsetShowPinEntry(true);\r\n\t}\r\n\r\n\treturn (\r\n\t\t
    \r\n\t\t\t

    \r\n\t\t\t\t{t(\"ADJUSTMENT\")}{\" \"}\r\n\t\t\t\t{props.id ? (\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\tprops.toggleModal(false);\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t) : (\r\n\t\t\t\t\t\r\n\t\t\t\t)}\r\n\t\t\t

    \r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tconsole.log(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"memberId\", e.value);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMemberId(e.value);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedMember(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedMemberPoint(e.points);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedMemberPointsQuota(e.pointQuota);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrigger(\"memberId\");\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.memberId && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.memberId.message)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\tparseFloat(value) != 0 ||\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\t\"PLEASE_DO_NOT_ENTER_ZERO\",\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t//min: {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\tvalue: selectedMember\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\t\t? selectedMember.points * -1\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\t\t: 0,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\tmessage: \"PLEASE_ENTER_VALUE_NOT_LESS_THAN\",\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t//},\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\r\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.pointQuota && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.points.message, {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: selectedMember\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? selectedMember.pointQuota * -1\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 0,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\tparseFloat(value) != 0 ||\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\t\"PLEASE_DO_NOT_ENTER_ZERO\",\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t//min: {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\tvalue: selectedMember\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\t\t? selectedMember.points * -1\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\t\t: 0,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t//\tmessage: \"PLEASE_ENTER_VALUE_NOT_LESS_THAN\",\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t//},\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.points && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.points.message, {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: selectedMember\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? selectedMember.points * -1\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: 0,\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t option.value == value\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? remarkOption.filter(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == value\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)[0].label\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: t(\"PLEASE_ENTER_REMARK\")\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={remarkOption.filter(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == value\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e, { action }) => {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tswitch (action) {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase \"select-option\":\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrigger(\"remark\");\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcase \"create-option\":\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tremarkOption.push(e);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrigger(\"remark\");\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.remark && (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.remark.message)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tsetShowPinEntry(false);\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tdata-dismiss=\"modal\"\r\n\t\t\t\t\t\t\t\taria-hidden=\"true\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t×\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t{t(\"ENTER_YOUR_PIN\")}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tcheckPinValue(value, index);\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tinputMode=\"numeric\"\r\n\t\t\t\t\t\t\t\tinputStyle={{\r\n\t\t\t\t\t\t\t\t\tborder: \"0\",\r\n\t\t\t\t\t\t\t\t\tmargin: \"0px 10px\",\r\n\t\t\t\t\t\t\t\t\twidth: \"40px\",\r\n\t\t\t\t\t\t\t\t\theight: \"40px\",\r\n\t\t\t\t\t\t\t\t\tbackgroundColor: \"transparent\",\r\n\t\t\t\t\t\t\t\t\tborderBottom: \"2px solid #002e6c\",\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tinputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\r\n\t\t\t\t\t\t\t\tregexCriteria={/^[ 0-9_@./#&+-]*$/}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t{/**/}\r\n\t\t\t\t\t\t\t{/*
    {invalidPin && t(\"PIN_DOES_NOT_MATCH\")}{!invalidPin &&  }
    */}\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\r\n\t\t
    \r\n\t);\r\n};\r\n\r\nexport default PointsAdjustment;\r\n","import React, { useState } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\tStatus,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { useEffect } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useDispatch } from \"react-redux\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport {\n\tstringIsNullOrEmpty,\n\tnumberWithCurrencyFormat,\n\tisObjectEmpty,\n} from \"../../util/Util\";\nimport Select from \"react-select\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\n\n/// \n/// Author : -\n/// \n\nconst PointsAdjustmentReport = (props) => {\n\tconst _dispatch = useDispatch();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _ALL_VALUE = -1;\n\tconst _OVERALL_KEYS = {\n\t\tIN: \"TOTAL_IN\",\n\t\tOUT: \"TOTAL_OUT\",\n\t};\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [apiUrl, setApiUrl] = useState(\"\");\n\tconst [memberOption, setMemberOption] = useState([]);\n\tconst [memberId, setMemberId] = useState(\"\");\n\tconst [status, setStatus] = useState(_ALL_VALUE);\n\tconst [initFinish, setInitFinish] = useState(false);\n\tconst [overallInfo, setOverallInfo] = useState({});\n\tconst [selectedMember, setSelectedMember] = useState();\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetAdjustmentReport();\n\t}, [initFinish]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function getAdjustmentReport() {\n\t\tlet fetchUrl =\n\t\t\tApiUrl._API_GET_POINTS_ADJUSTMENT_REPORT +\n\t\t\t\"?v=\" +\n\t\t\tDate.now() +\n\t\t\t\"&StartDate=\" +\n\t\t\tstartDate +\n\t\t\t\"&EndDate=\" +\n\t\t\tendDate +\n\t\t\t\"&Status=\" +\n\t\t\tstatus;\n\n\t\tif (!stringIsNullOrEmpty(selectedMember)) {\n\t\t\tfetchUrl += \"&MemberId=\" + selectedMember.value;\n\t\t}\n\n\t\tsetApiUrl(fetchUrl);\n\t}\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"TARGET_MEMBER\",\n\t\t\taccessor: \"memberName\",\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"PRE_POINTS\",\n\t\t\taccessor: \"prePoints\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.prePoints), 3)}\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"IN\",\n\t\t\taccessor: \"inPoints\",\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{!isObjectEmpty(overallInfo) &&\n\t\t\t\t\t\t\t\toverallInfo[_OVERALL_KEYS.IN] &&\n\t\t\t\t\t\t\t\tnumberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\tparseFloat(overallInfo[_OVERALL_KEYS.IN]),\n\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"OUT\",\n\t\t\taccessor: \"outPoints\",\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{!isObjectEmpty(overallInfo) &&\n\t\t\t\t\t\t\t\toverallInfo[_OVERALL_KEYS.OUT] &&\n\t\t\t\t\t\t\t\tnumberWithCurrencyFormat(\n\t\t\t\t\t\t\t\t\tparseFloat(overallInfo[_OVERALL_KEYS.OUT]),\n\t\t\t\t\t\t\t\t\t3\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"POST_POINTS\",\n\t\t\taccessor: \"postPoints\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(row.original.postPoints), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"POINT_QUOTA\",\n\t\t\taccessor: \"pointQuota\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(row.original.pointQuota), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"PRE_POINT_QUOTA\",\n\t\t\taccessor: \"prePointQuota\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(row.original.prePointQuota), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"POST_POINT_QUOTA\",\n\t\t\taccessor: \"postPointQuota\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(row.original.postPointQuota), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn row.original.status ? (\n\t\t\t\t\t{t(\"SUCCESS\")}\n\t\t\t\t) : (\n\t\t\t\t\t{t(\"FAILED\")}\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: \"REMARK\",\n\t\t\taccessor: \"remark\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"OPERATED_BY\",\n\t\t\taccessor: \"operatedBy\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"CREATED_TIME\",\n\t\t\taccessor: \"createdTime\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{moment(row.original.createdTime).format(\"DD-MM-YYYY HH:mm:ss\")}\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tfunction getOverallInfo(info) {\n\t\tsetOverallInfo(info);\n\t}\n\n\t/// \n\t/// Author : Wong\n\t/// \n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: \"\" });\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"ADJUSTMENT_REPORT\")}

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t ({\n\t\t\t\t\t\t\t\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\tdebounceTimeout={250}\n\t\t\t\t\t\t\t\t\t\t\t\tisDisabled={!stringIsNullOrEmpty(props.id)}\n\t\t\t\t\t\t\t\t\t\t\t\tloadOptions={getMemberList}\n\t\t\t\t\t\t\t\t\t\t\t\tadditional={{\n\t\t\t\t\t\t\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={selectedMember}\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={setSelectedMember}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t getAdjustmentReport()}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default PointsAdjustmentReport;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory, useLocation } from \"react-router-dom\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { numberWithCurrencyFormat, stringIsNullOrEmpty } from \"../../util/Util\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport moment from \"moment\";\nimport { DateRangePicker } from \"react-bootstrap-daterangepicker\";\n\n/// \n/// Author : -\n/// \n\nconst MemberPointsReport = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _dispatch = useDispatch();\n\tconst _location = useLocation();\n\tconst _history = useHistory();\n\tconst [searchTrigger, setSearchTrigger] = useState(\"\");\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [selectedDate, setSelectedDate] = useState(\"\");\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"USERNAME\",\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.username}
    \n\t\t\t),\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"DATE\",\n\t\t\taccessor: \"date\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{moment(row.original.parsedTime).format(\"YYYY-MM-DD\")}\n\t\t\t\t\t
    \n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"REMARK\",\n\t\t\taccessor: \"remark\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn
    {row.original.remark}
    ;\n\t\t\t},\n\t\t\tdisableFilters: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"POINTS\",\n\t\t\taccessor: \"pointsAmount\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    {row.original.pointsAmount}
    \n\t\t\t),\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst totalPoints = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.pointsAmount) {\n\t\t\t\t\t\treturn sum + currentValue.original.pointsAmount;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t{totalPoints}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t);\n\t\t\t},\n\t\t\tdisableFilters: true,\n\t\t},\n\t];\n\n\tconst init = async () => {\n\t\tvar apiUrl =\n\t\t\tApiUrl._API_GET_OVERALL_POINTS_DETAILS +\n\t\t\t\"?StartDate=\" +\n\t\t\tmoment(startDate).startOf(\"day\").format(\"YYYY-MM-DD\") +\n\t\t\t\"&EndDate=\" +\n\t\t\tmoment(endDate).endOf(\"day\").format(\"YYYY-MM-DD\");\n\n\t\tsetSearchTrigger(apiUrl);\n\t};\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetSelectedDate(\"\");\n\n\t\tlet apiUrl =\n\t\t\tApiUrl._API_GET_OVERALL_POINTS_DETAILS +\n\t\t\t\"?StartDate=\" +\n\t\t\tmoment(picker.startDate).format(\"YYYY-MM-DD\") +\n\t\t\t\"&EndDate=\" +\n\t\t\tmoment(picker.endDate).format(\"YYYY-MM-DD\");\n\n\t\tsetSearchTrigger(apiUrl);\n\t};\n\n\tconst handleSelectDate = async (date) => {\n\t\tsetStartDate(moment(date).startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(date).endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetSelectedDate(date);\n\n\t\tlet apiUrl =\n\t\t\tApiUrl._API_GET_OVERALL_POINTS_DETAILS +\n\t\t\t\"?StartDate=\" +\n\t\t\tstartDate +\n\t\t\t\"&EndDate=\" +\n\t\t\tendDate +\n\t\t\t\"&SelectedDate=\" +\n\t\t\tdate;\n\n\t\tsetSearchTrigger(apiUrl);\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"MEMBER_POINTS_REPORT\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default MemberPointsReport;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n AllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageDepositPromotionCategory = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const [promotionData, setPromotionData] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"TITLE\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == true ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._DEPOSIT_PROMOTION_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_CATEGORY,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_DEPOSIT_PROMOTION_CATEGORY + \"?all=true\", {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setPromotionData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"PROMOTION_CATEGORIES\")}\n {checkIfPermissionExist(\n AccessRight._DEPOSIT_PROMOTION_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageDepositPromotionCategory;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport {\n Panel,\n PanelHeader,\n PanelBody,\n} from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n ContentTypeString,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createMultiPartFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageConfigurationLanguage from \"./ManageConfigurationLanguage\";\nimport {\n Modal,\n ModalHeader,\n ModalBody,\n ModalFooter,\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n TabContent,\n TabPane,\n Nav,\n NavItem,\n NavLink,\n} from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\n\n/// \n/// Author : -\n/// \n\nconst DepositPromotionCategoryDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n let _history = useHistory();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors, setValue } = useForm();\n\n const [title, setTitle] = useState(\"\");\n const [categoryId, setCategoryId] = useState(\"\");\n const [status, setStatus] = useState(true);\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n const {\n register: accountFormRegister,\n handleSubmit: accountFormHandleSubmit,\n errors: accountFormErrors,\n unregister: accountFormUnregister,\n setValue: accountFormSetValue,\n } = useForm();\n\n const {\n register: promotionFormRegister,\n handleSubmit: promotionFormHandleSubmit,\n errors: promotionFormErrors,\n unregister: promotionFormUnregister,\n setValue: promotionFormSetValue,\n } = useForm();\n\n const [vipList, setVipList] = useState([]);\n\n const [productData, setProductData] = useState([]);\n const [depositPromotionId, setDepositPromotionId] = useState(\"\");\n const [accountProductStatus, setAccountProductStatus] = useState(true);\n const [accountProductModel, setAccountProductModel] = useState(false);\n const [accountproductName, setAccountProductName] = useState(\"\");\n const [selectedMasterProductId, setSelectedMasterProductId] = useState(\"\");\n const [isCreateNewAccount, setIsCreateNewAccount] = useState(true);\n const [depositPromotionProductId, setDepositPromotionProductId] =\n useState(\"\");\n const [image, setImage] = useState();\n const [imageFile, setImageFile] = useState([]);\n\n const [depositPromotionList, setDepositPromotionList] = useState([]);\n\n const [desktopFile, setDesktopFile] = useState([]);\n const [mobileFile, setMobileFile] = useState([]);\n const [desktopImage, setDesktopImage] = useState();\n const [mobileImage, setMobileImage] = useState();\n const [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n const [isNewMobileImage, setIsNewMobileImage] = useState(false);\n\n const [promoWithCategory, setPromoWithCategory] = useState([]);\n const [promoWithoutCategory, setPromoWithoutCategory] = useState([]);\n const [rank, setRank] = useState(\"\");\n\n let _tableColumns = [\n {\n Header: \"Product\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == true ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) => (\n
    \n \n \n \n \n \n deleteDepositPromotionSetting(row.original.id)}>\n {t(\"DELETE\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n const [selectedViplevel, setSelectedViplevel] = useState(\"\");\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n register({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n register({ name: \"vip\" }, { required: \"PLEASE_SELECT_VIP_LEVEL\" });\n init();\n }, []);\n\n const _OPTION_STYLES = {\n control: (base) => ({\n ...base,\n \"min-height\": \"34px\",\n height: \"34px\",\n }),\n valueContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n indicatorsContainer: (base) => ({\n ...base,\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n input: (base) => ({\n height: \"34px\",\n \"min-height\": \"34px\",\n }),\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n setCategoryId(_location.state.id);\n var apiUrl = ApiUrl._API_GET_DEPOSIT_PROMOTION_CATEGORY_BY_ID;\n apiUrl += \"?id=\" + _location.state.id;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n console.log(responseJson[ApiKey._API_DATA_KEY])\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setCategoryId(responseJson[ApiKey._API_DATA_KEY][0][\"id\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][0][\"name\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][0][\"status\"]);\n setDesktopImage(responseJson[ApiKey._API_DATA_KEY][0][\"image\"])\n setRank(responseJson[ApiKey._API_DATA_KEY][0][\"rank\"])\n unregister(\"vip\");\n unregister(\"content\");\n setPromoWithCategory(responseJson[ApiKey._API_DATA_KEY][0].depositPromotion);\n }\n });\n getDepositPromotionProductWithoutCategory();\n getDepositPromotionProductWithCategory();\n }\n }\n\n function getDepositPromotionProductWithoutCategory() {\n fetch(ApiUrl._API_GET_DEPOSIT_PROMOTION_WITHOUT_CATEGORY, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const DepositPromotionList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (product) {\n DepositPromotionList.push({\n label: product.name,\n value: product.id,\n });\n });\n setPromoWithoutCategory(DepositPromotionList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n name: data.title,\n status: data.status,\n isNewDesktopFile: isNewDesktopImage,\n rank: data.rank\n };\n\n if (!stringIsNullOrEmpty(categoryId)) {\n params[\"id\"] = categoryId;\n }\n\n if (!stringIsNullOrEmpty(desktopFile)) {\n params[\"desktopFile\"] = desktopFile;\n }\n\n if (stringIsNullOrEmpty(desktopImage)) {\n params[\"desktopImageRemoved\"] = true;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_CATEGORY, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setCategoryId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n //getMasterProduct();\n }\n });\n };\n\n function toggleModal(isAddProduct) {\n if (accountProductModel) {\n setDepositPromotionProductId(\"\");\n setSelectedMasterProductId(\"\");\n setAccountProductStatus(false);\n }\n\n if (isAddProduct) {\n setIsCreateNewAccount(true);\n }\n\n setAccountProductModel(!accountProductModel);\n }\n\n function getDepositPromotionProductWithCategory() {\n fetch(\n ApiUrl._API_GET_DEPOSIT_PROMOTION_WITH_CATEGORY +\n \"?id=\" +\n (categoryId == \"\" ? _location.state.id : categoryId),\n {\n method: ApiKey._API_GET,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setPromoWithCategory(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n function loadAccountProduct(data) {\n //setDepositPromotionProductId(data.id);\n //setDepositPromotionId(data.depositPromotionId);\n //setAccountProductStatus(data.status);\n //setAccountProductName(data.name);\n //setSelectedMasterProductId(data.masterProductId);\n //setIsCreateNewAccount(false);\n toggleModal();\n }\n\n function deleteDepositPromotionSetting(id) {\n let params = {\n id: id,\n depositPromotionCategoryId:0\n };\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n getDepositPromotionProductWithoutCategory();\n getDepositPromotionProductWithCategory();\n setDepositPromotionId(\"\");\n setAccountProductName(\"\");\n setAccountProductStatus(\"\");\n }\n });\n }\n\n const submitAccountSettingForm = async (data, e) => {\n let params = {\n depositPromotionCategoryId: categoryId,\n id: depositPromotionId,\n };\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_DEPOSIT_PROMOTION, {\n \tmethod: ApiKey._API_POST,\n \theaders: {\n \t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n \t},\n \tbody: formBody,\n })\n \t.then((response) => response.json())\n \t.then((responseJson) => {\n \t\t_dispatch(setIdle());\n \t\t_dispatch(\n \t\t\tshowMessage(\n \t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n \t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n \t\t\t)\n \t\t);\n\n \t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n getDepositPromotionProductWithoutCategory();\n getDepositPromotionProductWithCategory();\n \t\t\tsetDepositPromotionId(\"\");\n \t\t\tsetAccountProductName(\"\");\n \t\t\tsetAccountProductStatus(\"\");\n \t\t\ttoggleModal();\n \t\t}\n \t});\n };\n\n const logoDrop = (acceptedFiles, isDesktop) => {\n if (acceptedFiles.length !== 0) {\n const file = acceptedFiles[0];\n\n if (isDesktop) {\n setDesktopFile(file);\n } else {\n setMobileFile(file);\n }\n\n const reader = new FileReader();\n reader.onloadend = () => {\n if (isDesktop) {\n setDesktopImage(reader.result);\n setIsNewDesktopImage(true);\n } else {\n setIsNewMobileImage(true);\n setMobileImage(reader.result);\n }\n };\n reader.readAsDataURL(file);\n }\n };\n\n return (\n
    \n

    \n {categoryId ? t(\"EDIT_DEPOSIT_PROMOTION_CATEGORY\") : t(\"ADD_DEPOSIT_PROMOTION_CATEGORY\")}\n \n

    \n {categoryId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.text && (\n
    \n {t(errors.text.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={promotionFormRegister}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n logoDrop(acceptedFiles, true)\n }\n >\n {({ getRootProps, getInputProps }) => (\n
    \n \n \n

    \n {t(\n \"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n )}\n

    \n {!stringIsNullOrEmpty(desktopImage) && (\n \n )}\n
    \n \n )}\n \n
    \n {\n setDesktopImage(\"\");\n setDesktopFile();\n }}\n >\n {t(\"REMOVE_IMAGE\")}\n \n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.rank && (\n
    \n {t(errors.rank.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n \n \n
    \n
    \n {!stringIsNullOrEmpty(categoryId) && (\n
    \n
    \n \n {t(\"SELECTED_PROMOTION\")}\n \n
    \n
    \n toggleModal(true)}\n >\n \n {t(\"ADD_PROMOTION\")}\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n )}\n
    \n toggleModal()}>\n \n toggleModal()}>\n {t(isCreateNewAccount ? \"ADD_PROMOTION\" : \"EDIT_PROMOTION\")}\n \n \n
    \n
    \n
    \n \n
    \n option.value == depositPromotionId\n )[0] !== undefined\n ? promoWithoutCategory.filter(\n (option) => option.value == depositPromotionId\n )[0].label\n : \"\"\n }\n isDisabled={depositPromotionProductId != \"\"}\n value=\"\"\n onChange={(e) => {\n setDepositPromotionId(e.value);\n setSelectedMasterProductId(e.masterProductId);\n accountFormSetValue(\"depositPromotionId\", e.value);\n }}\n ref={accountFormRegister}\n />\n {accountFormErrors.depositPromotionId && (\n
    \n {t(accountFormErrors.depositPromotionId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n toggleModal()}\n >\n {t(\"CLOSE\")}\n \n \n \n \n
    \n
    \n \n \n {categoryId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n \n \n );\n};\n\nexport default withRouter(DepositPromotionCategoryDetail);\n","import React, { useState, useEffect, useMemo, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\nimport {\n\tPanel,\n\tPanelHeader,\n\tPanelBody,\n} from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalFooter,\n\tModalHeader,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { navigateTo } from \"../../util/Util.js\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tWebUrl,\n\tAccessRight,\n\tTransactionType,\n\tTransactionStatus,\n\tPanelType,\n\tLanguageKey,\n\tBankingChannelName,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant.js\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction.js\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n\tstringIsNullOrEmpty,\n\tcreateFormBody,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util.js\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\nconst CreditRedemptionReport = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tconst { register, unregister, handleSubmit, errors } = useForm();\n\n\tconst [showDialog, setShowDialog] = useState();\n\tconst _PAGING_COUNT = 10;\n\tconst [selectedFilterMember, setSelectedFilterMember] = useState();\n\tconst [selectedMember, setSelectedMember] = useState(\"\");\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [creditData, setCreditData] = useState([]);\n\t\n\tuseEffect(() => {\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst init = async () => {};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getCreditReport = async () => {\n\t\t_dispatch(setBusy());\n\t\tsetCreditData([]);\n\t\tlet fetchUrl = ApiUrl._API_GET_CREDIT_REDEMPTION_REPORT;\n\t\tfetchUrl += \"?StartDate=\" + startDate + \"&EndDate=\" + endDate;\n\n\t\tif (!stringIsNullOrEmpty(selectedMember)) {\n\t\t\tfetchUrl += \"&MemberId=\" + selectedMember;\n\t\t}\n\n\t\tfetch(fetchUrl, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetCreditData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t\t_dispatch(setIdle());\n\t\t\t});\n\t};\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: t(\"USERNAME\"),\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{t(row.original.username)};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t {t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"POINTS_NEEDED\"),\n\t\t\taccessor: \"pointsNeeded\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{row.original.pointsNeeded};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"MEMBER_BALANCE_BEFORE\"),\n\t\t\taccessor: \"preMemberPrimaryBalance\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(row.original.preMemberPrimaryBalance)}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"MEMBER_BALANCE_AFTER\"),\n\t\t\taccessor: \"postMemberPrimaryBalance\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(row.original.postMemberPrimaryBalance)}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"AMOUNT\"),\n\t\t\taccessor: \"amount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{t(row.original.amount)};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.amount) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.amount);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"PRODUCT_NAME\"),\n\t\t\taccessor: \"productName\",\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"ROLLOVER\"),\n\t\t\taccessor: \"productRollover\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{\"x\" + row.original.productRollover};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"STATUS\"),\n\t\t\taccessor: \"status\",\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"REDEEM_TIME\"),\n\t\t\taccessor: \"createdTime\",\n\t\t\tminWidth: 100,\n\t\t},\n\t];\n\n\t/// \n\t/// Author : Wong\n\t/// \n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: \"\" });\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == _PAGING_COUNT,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t}; /// \n\n\treturn (\n\t\t
    \n\t\t\t{showDialog && (\n\t\t\t\t {\n\t\t\t\t\t\tsetShowDialog(false);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{t(\"MAX_DATE_RANGE_7_DAYS\")}\n\t\t\t\t\n\t\t\t)}\n\t\t\t

    {t(\"CREDIT_REDEMPTION_REPORT\")}

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedFilterMember(e);\n\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedMember(e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tgetCreditReport();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tclassName=\"btn btn-primary\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default CreditRedemptionReport;\n","import React, { useState, useEffect, useMemo, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\nimport {\n\tPanel,\n\tPanelHeader,\n\tPanelBody,\n} from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalFooter,\n\tModalHeader,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { navigateTo } from \"../../util/Util.js\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tWebUrl,\n\tAccessRight,\n\tTransactionType,\n\tTransactionStatus,\n\tPanelType,\n\tLanguageKey,\n\tBankingChannelName,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant.js\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction.js\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n\tstringIsNullOrEmpty,\n\tcreateFormBody,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util.js\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\nconst ReferralBonusReport = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _dispatch = useDispatch();\n\tconst [showDialog, setShowDialog] = useState();\n\tconst _PAGING_COUNT = 10;\n\tconst [selectedFilterMember, setSelectedFilterMember] = useState();\n\tconst [selectedMember, setSelectedMember] = useState(\"\");\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [creditData, setCreditData] = useState([]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getCreditReport = async () => {\n\t\t_dispatch(setBusy());\n\t\tsetCreditData([]);\n\t\tlet fetchUrl = ApiUrl._API_GET_REFERRAL_BONUS_REPORT;\n\t\tfetchUrl += \"?StartDate=\" + startDate + \"&EndDate=\" + endDate;\n\n\t\tif (!stringIsNullOrEmpty(selectedMember)) {\n\t\t\tfetchUrl += \"&MemberId=\" + selectedMember;\n\t\t}\n\n\t\tfetch(fetchUrl, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetCreditData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t\t_dispatch(setIdle());\n\t\t\t});\n\t};\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: t(\"Date\"),\n\t\t\taccessor: \"createdTime\",\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"Referrer\"),\n\t\t\taccessor: \"referrer\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{t(row.original.referrer)};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t {t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"MEMBER\"),\n\t\t\taccessor: \"depositMember\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{row.original.depositMember};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TransactionId\"),\n\t\t\taccessor: \"transactionId\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{row.original.transactionId}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"Member Deposit #\"),\n\t\t\taccessor: \"depositCount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{row.original.depositCount}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"Referral Downline #\"),\n\t\t\taccessor: \"memberSequence\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{row.original.memberSequence}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"Deposit Amount\"),\n\t\t\taccessor: \"depositAmount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn
    {numberWithCurrencyFormat(row.original.depositAmount)}
    ;\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.depositAmount) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.depositAmount);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t
    \n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"Bonus %\"),\n\t\t\taccessor: \"percent\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t
    {numberWithCurrencyFormat(row.original.percent)}
    \n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"Bonus Amount\"),\n\t\t\taccessor: \"bonusAmount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn
    {numberWithCurrencyFormat(row.original.bonusAmount)}
    ;\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.bonusAmount) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.bonusAmount);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t
    \n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"Rollover\"),\n\t\t\taccessor: \"rolloverMultiplier\",\n\t\t},\n\t];\n\n\t/// \n\t/// Author : Wong\n\t/// \n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.id };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: \"\" });\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == _PAGING_COUNT,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t}; /// \n\n\treturn (\n\t\t
    \n\t\t\t{showDialog && (\n\t\t\t\t {\n\t\t\t\t\t\tsetShowDialog(false);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{t(\"MAX_DATE_RANGE_7_DAYS\")}\n\t\t\t\t\n\t\t\t)}\n\t\t\t

    {t(\"REFERRAL_BONUS_REPORT\")}

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedFilterMember(e);\n\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedMember(e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tgetCreditReport();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tclassName=\"btn btn-primary\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default ReferralBonusReport;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport { navigateTo, stringIsNullOrEmpty } from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n\tAllVipOption,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageBonusDeposit = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst [bonusDepositData, setBonusDepositData] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"BONUS_NAME\",\n\t\t\taccessor: \"bonusName\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"BONUS\",\n\t\t\taccessor: \"bonus\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"MINIMUM_DEPOSIT\",\n\t\t\taccessor: \"minimumDeposit\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"ROLLOVER\",\n\t\t\taccessor: \"rollover\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"MAX_BONUS\",\n\t\t\taccessor: \"maxBonus\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"MAX_LIMIT_PER_MEMBER\",\n\t\t\taccessor: \"maxLimitPerMember\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"DAY_LIMIT\",\n\t\t\taccessor: \"dayLimit\",\n\t\t},\n\t\t{\n\t\t\tHeader: \"STATUS\",\n\t\t\taccessor: \"status\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{row.original.status == 1 ? (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t(\"SUSPENDED\")}\n\t\t\t\t\t\t\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\t\tWebUrl._URL_CREATE_OR_UPDATE_BONUS_DEPOSIT,\n\t\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tfetch(ApiUrl._API_GET_ALL_BONUS_DEPOSIT, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconsole.log(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t\tsetBonusDepositData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t}, []);\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"BONUS_DEPOSIT\")}\n\t\t\t\t{\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageBonusDeposit;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport Select from \"react-select\";\nimport { useForm } from \"react-hook-form\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalHeader,\n\tModalFooter,\n} from \"reactstrap\";\nimport {\n\tcreateFormBody,\n\tnavigateTo,\n\tstringIsNullOrEmpty,\n\tcreateMultiPartFormBody,\n} from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tContentTypeString,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport ConfigurationLanguageDetail from \"../configuration/ConfigurationLanguageDetail\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage, setBusy, setIdle } from \"../../redux/AppAction\";\nimport Dropzone from \"react-dropzone\";\nimport { useHistory } from \"react-router-dom\";\n\n/// \n/// Author : -\n/// \nconst BonusDepositDetailLanguage = (props) => {\n\tconst { handleSubmit, errors, register, content, setValue, clearErrors } =\n\t\tuseForm();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [data, setData] = useState([]);\n\tconst _dispatch = useDispatch();\n\tlet _history = useHistory();\n\tconst [languageDetailModalVisibility, setLanguageDetailModalVisibility] =\n\t\tuseState(false);\n\n\tconst _EXCLUDE_TITLE_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT_CONTENT,\n\t\tContentTypeString._VIP_CRITERIA,\n\t];\n\tconst _EXCLUDE_CONTENT_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT,\n\t\tContentTypeString._PRODUCT_CATEGORY,\n\t];\n\tconst [isOpen, setIsOpen] = useState(false);\n\tconst [languageDetailId, setLanguageDetailId] = useState(\"\");\n\tconst [tableColumns, setTableColumns] = useState([]);\n\tconst [languageOption, setLanguageOption] = useState([]);\n\tconst [languageId, setLanguageId] = useState(\"\");\n\tconst [bonusDepositData, setBonusDepositData] = useState([]);\n\tconst [editModal, setEditModal] = useState(false);\n\tconst [editLanguageId, setEditLanguageId] = useState(\"\");\n\tconst [bonusImage, setBonusImage] = useState();\n\tconst [bonusImageFile, setBonusImageFile] = useState([]);\n\tconst [popupImage, setPopupImage] = useState();\n\tconst [popupImageFile, setPopupImageFile] = useState([]);\n\tconst [bonusDepositId, setBonusDepositId] = useState(\"\");\n\tconst [editBonusImage, setEditBonusImage] = useState();\n\tconst [editBonusImageFile, setEditBonusImageFile] = useState([]);\n\tconst [editPopupImage, setEditPopupImage] = useState();\n\tconst [editPopupImageFile, setEditPopupImageFile] = useState([]);\n\tconst [bonusName, setBonusName] = useState(\"\");\n\tconst [editBonusName, setEditBonusName] = useState(\"\");\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"BONUS_NAME\",\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"BONUS_IMAGE\",\n\t\t\taccessor: \"bonusImage\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{!stringIsNullOrEmpty(row.original.bonusImage) ? (\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t - \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"POPUP_IMAGE\",\n\t\t\taccessor: \"popupImage\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{!stringIsNullOrEmpty(row.original.popupImage) ? (\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t - \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetEditModal(true);\n\t\t\t\t\t\t\t\t\tsetBonusDepositId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetEditLanguageId(row.original.languageId);\n\t\t\t\t\t\t\t\t\tsetEditBonusImage(row.original.bonusImage);\n\t\t\t\t\t\t\t\t\tsetEditPopupImage(row.original.popupImage);\n\t\t\t\t\t\t\t\t\tsetEditBonusName(row.original.title);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\tconst onSubmit = async (data) => {\n\t\tlet params = {\n\t\t\tbonusName: bonusName,\n\t\t\tbonusDepositId: props.id,\n\t\t\tlanguageId: languageId,\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(bonusImageFile)) {\n\t\t\tparams[\"bonusImage\"] = bonusImageFile;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(popupImageFile)) {\n\t\t\tparams[\"popupImage\"] = popupImageFile;\n\t\t}\n\n\t\tlet formBody = createMultiPartFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_CREATE_BONUS_DEPOSIT_LANGUAGE,\n\t\t\tformBody\n\t\t);\n\t\t_dispatch(setIdle());\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t\tsetIsOpen(false);\n\t\tsetLanguageId();\n\t\tsetBonusImage();\n\t\tsetPopupImage();\n\t\tsetBonusName(\"\");\n\t\tgetBonusDepositContent();\n\t};\n\tconst bonusImageDrop = (acceptedFiles) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tsetBonusImageFile(file);\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tsetBonusImage(reader.result);\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\tconst popupImageDrop = (acceptedFiles) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tsetPopupImageFile(file);\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tsetPopupImage(reader.result);\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\tconst editBonusImageDrop = (acceptedFiles) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tsetEditBonusImageFile(file);\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tsetEditBonusImage(reader.result);\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\tconst editPopupImageDrop = (acceptedFiles) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tsetEditPopupImageFile(file);\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tsetEditPopupImage(reader.result);\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetConfigLanguage();\n\t\tgetLanguage();\n\t\tgetPlatform();\n\t\tgetBonusDepositContent();\n\t\t/// Used to Exclude the column of table\n\t\tif (_EXCLUDE_CONTENT_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(1, 1);\n\t\t} else if (_EXCLUDE_TITLE_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(2, 1);\n\t\t}\n\t\tsetTableColumns(_tableColumns);\n\t}, []);\n\n\tasync function getLanguage() {\n\t\tawait fetch(ApiUrl._API_GET_LANGUAGE, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst languageList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (language) {\n\t\t\t\t\t\tlanguageList.push({ label: language.name, value: language.id });\n\t\t\t\t\t});\n\t\t\t\t\tsetLanguageOption(languageList);\n\t\t\t\t}\n\t\t\t});\n\t}\n\tasync function getPlatform() {\n\t\tawait fetch(ApiUrl._API_GET_MARQUEE_TAG_CONTENT, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t}\n\t\t\t});\n\t}\n\t/// \n\t/// Author : -\n\t/// \n\tconst getConfigLanguage = async () => {\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_CONFIG_LANGUAGE_BY_TYPE_ID +\n\t\t\t\t\"?type=\" +\n\t\t\t\tprops.type +\n\t\t\t\t\"&id=\" +\n\t\t\t\tprops.id,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\tasync function getBonusDepositContent() {\n\t\tvar apiUrl = ApiUrl._API_GET_BONUS_DEPOSIT_LANGUAGE;\n\t\tapiUrl += \"?id=\" + props.id;\n\t\tfetch(apiUrl, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetBonusDepositData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tconst editSubmit = async (data) => {\n\t\tlet params = {\n\t\t\tbonusName: editBonusName,\n\t\t\tbonusDepositId: bonusDepositId,\n\t\t\tlanguageId: editLanguageId,\n\t\t};\n\t\tif (!stringIsNullOrEmpty(editBonusImage)) {\n\t\t\tparams[\"bonusImage\"] = editBonusImage;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(editPopupImage)) {\n\t\t\tparams[\"popupImage\"] = editPopupImage;\n\t\t}\n\n\t\tlet formBody = createMultiPartFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_UPDATE_BONUS_DEPOSIT_LANGUAGE,\n\t\t\tformBody\n\t\t);\n\t\t_dispatch(setIdle());\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t\tsetEditModal(false);\n\t\tgetBonusDepositContent();\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tsetLanguageDetailModalVisibility(false);\n\t\t\t\t\t\tgetConfigLanguage();\n\t\t\t\t\t}}\n\t\t\t\t\tdataTypeId={props.id}\n\t\t\t\t\tlanguageDetailId={languageDetailId}\n\t\t\t\t\tlanguageType={props.type}\n\t\t\t\t/>\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetLanguageDetailId(\"\");\n\t\t\t\t\t\t\tsetIsOpen(true);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tclassName=\"btn btn-purple\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t setBonusName(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tvalue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetLanguageId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"languageId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t bonusImageDrop(acceptedFiles)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(bonusImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t popupImageDrop(acceptedFiles)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(popupImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t setIsOpen(false)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{t(\"EDIT_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t setEditBonusName(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tvalue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetEditLanguageId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"editLanguageId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\teditBonusImageDrop(acceptedFiles)\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(editBonusImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tsetEditBonusImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\tsetEditBonusImageFile();\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\teditPopupImageDrop(acceptedFiles)\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(editPopupImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tsetEditPopupImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\tsetEditPopupImageFile();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t setEditModal(false)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default BonusDepositDetailLanguage;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tTransactionType,\n\tPanelType,\n\tExternalUrl,\n\tLanguageKey,\n\tBankingChannel,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport {\n\tstringIsNullOrEmpty,\n\tcreateFormBody,\n\tcreateMultiPartFormBody,\n} from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport ReactHtmlParser from \"react-html-parser\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport PinInput from \"react-pin-input\";\nimport classnames from \"classnames\";\n\nimport { Modal, ModalHeader, ModalBody } from \"reactstrap\";\n\nimport moment from \"moment\";\nimport Dropzone from \"react-dropzone\";\nimport BonusDepositDetailLanguage from \"./BonusDepositDetailLanguage.js\";\n/*import { setBusy, setIdle, showResponseMessage } from \"../../redux/AppAction\";*/\n\n/// \n/// Author : -\n/// \n\nconst BonusDepositDetail = (props) => {\n\tconst _DETAIL_TAB = \"1\";\n\tconst _LANGUAGE_TAB = \"2\";\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\tconst { register, unregister, handleSubmit, errors, setValue, trigger } =\n\t\tuseForm();\n\tconst [fullScreen, setFullScreen] = useState(false);\n\tconst [showPinEntry, setShowPinEntry] = useState(false);\n\n\tconst [bonusDepositId, setBonusDepositId] = useState(\"\");\n\tconst [bonus, setBonus] = useState(0);\n\tconst [minimumDeposit, setMinimumDeposit] = useState(0);\n\tconst [rollover, setRollover] = useState(0);\n\tconst [maxBonus, setMaxBonus] = useState(0);\n\tconst [status, setStatus] = useState(false);\n\tconst [bonusName, setBonusName] = useState(\"\");\n\tconst [maxLimitPerMember, setMaxLimitPerMember] = useState(0);\n\tconst [dayLimit, setDayLimit] = useState(0);\n\tconst [bonusImage, setBonusImage] = useState();\n\tconst [bonusImageFile, setBonusImageFile] = useState([]);\n\tconst [isNewBonusImage, setIsNewBonusImage] = useState(false);\n\tconst [popupImage, setPopupImage] = useState();\n\tconst [popupImageFile, setPopupImageFile] = useState([]);\n\tconst [isNewPopupImage, setIsNewPopupImage] = useState(false);\n\tconst [enteredBonusDepositData, setEnteredBonusDepositData] = useState({});\n\tconst [enteredBonusDepositE, setEnteredBonusDepositE] = useState({});\n\tconst [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggle = (tab) => {\n\t\tif (activeTab !== tab) {\n\t\t\tsetActiveTab(tab);\n\t\t}\n\t};\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\t/// For The Size Difference of Modal And Page\n\t\tif (props.id) {\n\t\t\tsetFullScreen(true);\n\t\t}\n\n\t\tinit();\n\t\tinitFormField();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// Editted : -\n\t/// \n\tasync function init() {\n\t\tconsole.log(_location);\n\t\t_dispatch(setBusy());\n\t\tif (_location.state) {\n\t\t\tlet stateBonusDepositId = _location.state.id;\n\t\t\tvar apiUrl = ApiUrl._API_GET_BONUS_DEPOSIT_BY_ID;\n\t\t\tapiUrl += \"?id=\" + stateBonusDepositId;\n\t\t\tfetch(apiUrl, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tconsole.log(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t\t\tif (_location.state.id) {\n\t\t\t\t\t\t\tsetBonusDepositId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetBonus(responseJson[ApiKey._API_DATA_KEY][\"bonus\"]);\n\t\t\t\t\t\tsetMinimumDeposit(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"minimumDeposit\"]\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetRollover(responseJson[ApiKey._API_DATA_KEY][\"rollover\"]);\n\t\t\t\t\t\tsetMaxBonus(responseJson[ApiKey._API_DATA_KEY][\"maxBonus\"]);\n\t\t\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\t\t\t\t\t\tsetBonusName(responseJson[ApiKey._API_DATA_KEY][\"bonusName\"]);\n\t\t\t\t\t\tsetMaxLimitPerMember(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"maxLimitPerMember\"]\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetDayLimit(responseJson[ApiKey._API_DATA_KEY][\"dayLimit\"]);\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t!stringIsNullOrEmpty(\n\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"bonusImage\"]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tsetBonusImage(responseJson[ApiKey._API_DATA_KEY][\"bonusImage\"]);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t!stringIsNullOrEmpty(\n\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"popupImage\"]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tsetPopupImage(responseJson[ApiKey._API_DATA_KEY][\"popupImage\"]);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\n\t\t_dispatch(setIdle());\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst initFormField = () => {\n\t\tsetBonus(\"\");\n\t\tsetMinimumDeposit(\"\");\n\t\tsetRollover(\"\");\n\t\tsetMaxBonus(\"\");\n\t\tsetBonusName(\"\");\n\t\tsetMaxLimitPerMember(\"\");\n\t\tsetDayLimit(\"\");\n\t};\n\n\t/// \n\t/// Author : -\n\t/// Used to set bonus image\n\t/// \n\tconst bonusImageDrop = (acceptedFiles) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tsetBonusImageFile(file);\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tsetBonusImage(reader.result);\n\t\t\t\tsetIsNewBonusImage(true);\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// Used to set popup image\n\t/// \n\tconst popupImageDrop = (acceptedFiles) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tsetPopupImageFile(file);\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tsetPopupImage(reader.result);\n\t\t\t\tsetIsNewPopupImage(true);\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// Editted : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tlet params = {\n\t\t\tbonus: data.bonus,\n\t\t\tminimumDeposit: data.minimumDeposit,\n\t\t\trollover: data.rollover,\n\t\t\tmaxBonus: data.maxBonus,\n\t\t\tstatus: data.status,\n\t\t\tbonusName: data.bonusName,\n\t\t\tmaxLimitPerMember: data.maxLimitPerMember,\n\t\t\tdayLimit: data.dayLimit,\n\t\t\tisNewBonusImage: isNewBonusImage,\n\t\t\tisNewPopupImage: isNewPopupImage,\n\t\t};\n\n\t\tif (params.bonus > 100 || params.bonus < 0) {\n\t\t\t_dispatch(showMessage(false, t(\"INVALID_BONUS_AMONUT\")));\n\t\t\treturn;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(bonusImageFile)) {\n\t\t\tparams[\"bonusImage\"] = bonusImageFile;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(popupImageFile)) {\n\t\t\tparams[\"popupImage\"] = popupImageFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(bonusImage)) {\n\t\t\tparams[\"bonusImageRemoved\"] = true;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(popupImage)) {\n\t\t\tparams[\"popupImageRemoved\"] = true;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(bonusDepositId)) {\n\t\t\tparams[\"id\"] = bonusDepositId;\n\t\t}\n\n\t\tlet formBody = createMultiPartFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_CREATE_OR_UPDATE_BONUS_DEPOSIT,\n\t\t\tformBody\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\te.target.reset();\n\t\t\twindow.location.reload();\n\n\t\t\tif (props.onComplete != null) {\n\t\t\t\tprops.onComplete();\n\t\t\t}\n\t\t} else {\n\t\t\tsetShowPinEntry(false);\n\t\t}\n\t\t_dispatch(setIdle());\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t};\n\n\tasync function onPinSubmit(data, e) {\n\t\t// verify pin\n\t\tlet params = { transactionPinNumber: data };\n\t\tlet formBody = createFormBody(params);\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_VERIFY_USER_TRANSACTION_PIN_NUMBER,\n\t\t\tformBody\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tsubmitForm(enteredBonusDepositData, enteredBonusDepositE);\n\t\t} else {\n\t\t\t_dispatch(showMessage(false, t(\"INCORRECT\") + \" \" + t(\"PIN_NUMBER\")));\n\t\t\tsetShowPinEntry(false);\n\t\t}\n\t}\n\n\tasync function checkPinValue(data, e) {\n\t\t// check if pin has 4 digits (valid pin)\n\t\t// if true then submit pin\n\t\tif (data.length == 4) {\n\t\t\tonPinSubmit(data);\n\t\t}\n\t}\n\n\tasync function onSubmit(data, e) {\n\t\tsetEnteredBonusDepositData(data);\n\t\tsetEnteredBonusDepositE(e);\n\t\tsetShowPinEntry(true);\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{t(\"BONUS_DEPOSIT\")}\n\t\t\t\t{props.id ? (\n\t\t\t\t\t {\n\t\t\t\t\t\t\tprops.toggleModal(false);\n\t\t\t\t\t\t}}\n\t\t\t\t\t>\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t) : (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t

    \n\t\t\t{bonusDepositId && (\n\t\t\t\t\n\t\t\t)}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setBonusName(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.bonusName && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.bonusName.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setBonus(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.bonus && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.bonus.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMinimumDeposit(e.target.value)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.minimumDeposit && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.minimumDeposit.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setRollover(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.rollover && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.rollover.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setMaxBonus(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.maxBonus && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.maxBonus.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMaxLimitPerMember(e.target.value)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.maxLimitPerMember && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.maxLimitPerMember.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setDayLimit(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.dayLimit && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.dayLimit.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setStatus(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbonusImageDrop(acceptedFiles)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(bonusImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetBonusImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetBonusImageFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpopupImageDrop(acceptedFiles)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(popupImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetPopupImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetPopupImageFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{bonusDepositId && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetShowPinEntry(false);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tdata-dismiss=\"modal\"\n\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t×\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t(\"ENTER_YOUR_PIN\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tcheckPinValue(value, index);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tinputMode=\"numeric\"\n\t\t\t\t\t\t\t\tinputStyle={{\n\t\t\t\t\t\t\t\t\tborder: \"0\",\n\t\t\t\t\t\t\t\t\tmargin: \"0px 10px\",\n\t\t\t\t\t\t\t\t\twidth: \"40px\",\n\t\t\t\t\t\t\t\t\theight: \"40px\",\n\t\t\t\t\t\t\t\t\tbackgroundColor: \"transparent\",\n\t\t\t\t\t\t\t\t\tborderBottom: \"2px solid #002e6c\",\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tinputFocusStyle={{ borderBottom: \"2px solid #FFC159\" }}\n\t\t\t\t\t\t\t\tregexCriteria={/^[ 0-9_@./#&+-]*$/}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\n\t\t\n\t);\n};\n\nexport default BonusDepositDetail;\n","import React, { useState, useEffect, useMemo, useCallback } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport {\n\tPanel,\n\tPanelHeader,\n\tPanelBody,\n} from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalFooter,\n\tModalHeader,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport Select from \"react-select\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tWebUrl,\n\tAccessRight,\n\tTransactionType,\n\tTransactionStatus,\n\tPanelType,\n\tLanguageKey,\n\tBankingChannelName,\n\tDEFAULT_PAGE_SIZE,\n} from \"../../util/Constant\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport {\n\tstringIsNullOrEmpty,\n\tcreateFormBody,\n\tnumberWithCurrencyFormat,\n} from \"../../util/Util\";\nimport { useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\nconst PlayerReconciliation = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst _SELECTED_USERNAME_KEY = \"selectedUsernameKey\";\n\tconst [reportData, setReportData] = useState([]);\n\tconst [labelUsername, setLabelUsername] = useState(\"All\");\n\tconst [username, setUsername] = useState(\"\");\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetStartDate(moment(picker.startDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t\tsetEndDate(moment(picker.endDate).format(\"YYYY-MM-DD HH:mm:ss\"));\n\t};\n\n\tconst getSummaryTransaction = async () => {\n\t\ttry {\n\t\t\tvar apiUrl =\n\t\t\t\tApiUrl._API_GET_PLAYER_RECONCILIATION +\n\t\t\t\t\"?startDate=\" +\n\t\t\t\tstartDate +\n\t\t\t\t\"&endDate=\" +\n\t\t\t\tendDate;\n\n\t\t\tapiUrl += \"&username=\" + username;\n\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n\t};\n\n\tasync function getMemberList(search, loadOptions, { page }) {\n\t\tvar responseJson = await ApiEngine.get(\n\t\t\t`${ApiUrl._API_GET_USER_MEMBER_LIST}?&start=${\n\t\t\t\t(page - 1) * DEFAULT_PAGE_SIZE\n\t\t\t}&count=${DEFAULT_PAGE_SIZE}&keyword=${search}`\n\t\t);\n\n\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\tlet data = responseJson[ApiKey._API_DATA_KEY][\"data\"];\n\t\t\tlet formattedData = data.map((m) => {\n\t\t\t\treturn { label: m.username, value: m.username };\n\t\t\t});\n\t\t\tformattedData.unshift({ label: \"All\", value: \"\" });\n\n\t\t\treturn {\n\t\t\t\toptions: formattedData,\n\t\t\t\thasMore: formattedData.length == DEFAULT_PAGE_SIZE,\n\t\t\t\tadditional: {\n\t\t\t\t\tpage: page + 1,\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t}\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: t(\"USERNAME\"),\n\t\t\taccessor: \"username\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{t(row.original.username)};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\n\t\t{\n\t\t\tHeader: t(\"TOTAL_DEPOSIT\"),\n\t\t\taccessor: \"deposit\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.deposit))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.deposit) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.deposit);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_WITHDRAWAL\"),\n\t\t\taccessor: \"withdrawal\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.withdrawal))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.withdrawal) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.withdrawal);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_BONUSES\"),\n\t\t\taccessor: \"bonuses\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.bonuses))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.bonuses) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.bonuses);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_COMMISSION\"),\n\t\t\taccessor: \"commission\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.commission), 3)}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.commission) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.commission);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_VALID_TURNOVER\"),\n\t\t\taccessor: \"validTurnover\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.validTurnover))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.validTurnover) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.validTurnover);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_WIN_AMOUNT\"),\n\t\t\taccessor: \"winAmount\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.winAmount))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.winAmount) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.winAmount);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_LOSS\"),\n\t\t\taccessor: \"totalLoss\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.totalLoss))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.totalLoss) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.totalLoss);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"TOTAL_WINLOSE\"),\n\t\t\taccessor: \"totalWinLose\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>{numberWithCurrencyFormat(parseFloat(row.original.totalWinLose))}\n\t\t\t\t);\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst debitSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.totalWinLose) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.totalWinLose);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(debitSum))}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t\n\t\t{\n\t\t\tHeader: t(\"LAST_LOGIN\"),\n\t\t\taccessor: \"lastLogin\",\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn <>{moment(row.original.lastLogin).format('YYYY-MM-DD HH:mm:ss')};\n\t\t\t},\n\t\t\tminWidth: 100,\n\t\t},\n\t];\n\n\treturn (\n\t\t
    \n\t\t\t

    {t(\"PLAYER_RECONCILIATION\")}

    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\tif (!stringIsNullOrEmpty(e.value)) {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.setItem(_SELECTED_USERNAME_KEY, e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsessionStorage.removeItem(_SELECTED_USERNAME_KEY);\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tsetLabelUsername(e.label);\n\t\t\t\t\t\t\t\t\t\t\t\tsetUsername(e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\tgetSummaryTransaction();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tclassName=\"btn btn-primary\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default PlayerReconciliation;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageChatSphere = (props) => {\n let _history = useHistory();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [chatSphereList, setChatSphereList] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"ACTION\",\n accessor: \"actions\",\n disableSortBy: true,\n },\n {\n Header: \"PLATFORM\",\n accessor: \"platform\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._CONTENT_SETTING_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_MANAGE_CAHE_SPHERE_CONTENT_DETAIL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_CHAT_SPHERE , {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setChatSphereList(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_CHAT_SPHERE\")}\n {checkIfPermissionExist(\n AccessRight._CHAT_SPHERE_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageChatSphere;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageChatSphereType = (props) => {\n let _history = useHistory();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [chatSphereTypeList, setChatSphereTypeList] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"Action\",\n accessor: \"name\",\n disableSortBy: true,\n },\n {\n Header: \"Channel\",\n accessor: \"channel\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._CHAT_SPHERE_TYPE_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CHAT_SPHERE_TYPE_DETAIL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_CHAT_SPHERE_TYPE , {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setChatSphereTypeList(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_CHAT_SPHERE_ACTION_TYPE\")}\n {checkIfPermissionExist(\n AccessRight._CHAT_SPHERE_TYPE_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageChatSphereType;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n DisplayMode,\n DisplayType,\n LanguageKey,\n ContentTypeString,\n AllVipOption,\n DisplayDevice,\n ChatSphereAction\n} from \"../../util/Constant\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport {\n stringIsNullOrEmpty,\n createMultiPartFormBody,\n imagePathToFileObject,\n} from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageBannerLanguage from \"./ManageBannerLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n\n/// \n/// Author : -\n/// \n\nconst BannerDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n\n const [bannerId, setBannerId] = useState(\"\");\n\n const [chatSphereTypeId, setChatSphereTypeId] = useState(\"\")\n const [channel, setChannel] = useState(\"\");\n const [status, setStatus] = useState(false);\n const [action, setAction] = useState(\"\");\n const [channelList, setChannelList] = useState([]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) setActiveTab(tab);\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_CHAT_SPHERE_TYPE_BY_ID;\n let stateId = _location.state.id || _location.state.refId;\n apiUrl += \"?id=\" + stateId;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (_location.state.id) {\n setChatSphereTypeId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n } else if (_location.state.refId) {\n setBannerId(_location.state.refId);\n }\n\n setAction(responseJson[ApiKey._API_DATA_KEY][\"name\"])\n setChannel(responseJson[ApiKey._API_DATA_KEY][\"channelId\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\n\n\n unregister(\"content\");\n }\n });\n }\n\n await fetch(ApiUrl._API_GET_CHAT_SPHERE_CHANNEL, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const channelList = [\n { label: AllVipOption._LABEL, value: AllVipOption._VALUE },\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (channel) {\n channelList.push({ label: channel.name, value: channel.id });\n });\n\n setChannelList(channelList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n name: data.action,\n chatSphereChannelId: data.channel,\n status: data.status\n };\n\n if (!stringIsNullOrEmpty(chatSphereTypeId)) {\n params[\"id\"] = chatSphereTypeId;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_CHAT_SPHERE_TYPE, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setChatSphereTypeId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n });\n };\n\n return (\n
    \n

    \n {chatSphereTypeId ? t(\"EDIT_CHAT_SPHERE_ACTION_TYPE\") : t(\"ADD_CHAT_SPHERE_ACTION_TYPE\")}\n \n

    \n {chatSphereTypeId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n (\n option.value == channel\n )}\n onChange={(e) => {\n onChange(e.value);\n setChannel(e.value)\n\n }}\n />\n )}\n rules={{ required: \"PLEASE_SELECT_CHANNEL\" }}\n />\n {errors.channel && (\n
    \n {t(errors.channel.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n setAction(e.target.value)}\n value={action}\n required\n >\n \n \n \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(BannerDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport Select from \"react-select\";\nimport { useForm } from \"react-hook-form\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n\tModal,\n\tModalBody,\n\tModalHeader,\n\tModalFooter,\n} from \"reactstrap\";\nimport {\n\tcreateFormBody,\n\tnavigateTo,\n\tstringIsNullOrEmpty,\n} from \"../../util/Util\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tContentTypeString,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport { useTranslation } from \"react-i18next\";\nimport ConfigurationLanguageDetail from \"../configuration/ConfigurationLanguageDetail\";\nimport { fetch } from \"whatwg-fetch\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { useDispatch } from \"react-redux\";\nimport { showMessage } from \"../../redux/AppAction\";\n\n/// \n/// Author : -\n/// \nconst ManageChatSphereContentLanguage = (props) => {\n\tconst { handleSubmit, errors, register, content, setValue, clearErrors } =\n\t\tuseForm();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [data, setData] = useState([]);\n\tconst _dispatch = useDispatch();\n\tconst [languageDetailModalVisibility, setLanguageDetailModalVisibility] =\n\t\tuseState(false);\n\n\tconst _EXCLUDE_TITLE_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT_CONTENT,\n\t\tContentTypeString._VIP_CRITERIA,\n\t];\n\tconst _EXCLUDE_CONTENT_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT,\n\t\tContentTypeString._PRODUCT_CATEGORY,\n\t];\n\tconst [isOpen, setIsOpen] = useState(false);\n\tconst [languageDetailId, setLanguageDetailId] = useState(\"\");\n\tconst [tableColumns, setTableColumns] = useState([]);\n\tconst [text, setText] = useState(\"\");\n\tconst [languageOption, setLanguageOption] = useState([]);\n\tconst [languageId, setLanguageId] = useState(\"\");\n\tconst [chatSphereContentData, setChatSphereContentData] = useState([]);\n\tconst [editModal, setEditModal] = useState(false);\n\tconst [chatSpereContentId, setChatSpereContentId] = useState(\"\");\n\tconst [editLanguageId, setEditLanguageId] = useState(\"\");\n\tconst [chatSphereLanguageId, setChatSphereLanguageId] = useState(\"\");\n\tconst [editContent, setEditContent] = useState(\"\");\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CONTENT\",\n\t\t\taccessor: \"content\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetEditModal(true);\n\t\t\t\t\t\t\t\t\tsetChatSphereLanguageId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetChatSpereContentId(row.original.dcItemId);\n\t\t\t\t\t\t\t\t\tsetEditLanguageId(row.original.languageId);\n\t\t\t\t\t\t\t\t\tsetEditContent(row.original.content);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tconst onSubmit = async (data) => {\n\t\tlet params = {\n\t\t\tdataId: props.id,\n\t\t\tlanguageId: languageId,\n\t\t\tcontent: data.text,\n\t\t};\n\n\t\tconsole.log(params);\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_CREATE_CHAT_SPHERE_CONTENT_LANGUAGE,\n\t\t\tcreateFormBody(params)\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\t\tsetIsOpen(false);\n\t\tgetChatSphereLanguage();\n\t};\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetConfigLanguage();\n\t\tgetLanguage();\n\t\tgetChatSphereLanguage();\n\t\t/// Used to Exclude the column of table\n\t\tif (_EXCLUDE_CONTENT_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(1, 1);\n\t\t} else if (_EXCLUDE_TITLE_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(2, 1);\n\t\t}\n\t\tsetTableColumns(_tableColumns);\n\t}, []);\n\n\tasync function getLanguage() {\n\t\tawait fetch(ApiUrl._API_GET_LANGUAGE, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst languageList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (language) {\n\t\t\t\t\t\tlanguageList.push({ label: language.name, value: language.id });\n\t\t\t\t\t});\n\t\t\t\t\tsetLanguageOption(languageList);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getConfigLanguage = async () => {\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_CONFIG_LANGUAGE_BY_TYPE_ID +\n\t\t\t\"?type=\" +\n\t\t\tprops.type +\n\t\t\t\"&id=\" +\n\t\t\tprops.id,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tasync function getChatSphereLanguage() {\n\t\tvar apiUrl = ApiUrl._API_GET_CHAT_SPHERE_CONTENT_LANGUAGE;\n\t\tapiUrl += \"?id=\" + props.id;\n\t\tfetch(apiUrl, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetChatSphereContentData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tconst editSubmit = async (data) => {\n\t\tlet params = {\n\t\t\tid: chatSphereLanguageId,\n\t\t\tdataId: props.id,\n\t\t\tlanguageId: editLanguageId,\n\t\t\tcontent: data.text,\n\t\t};\n\n\t\tconsole.log(params);\n\t\tlet responseJson = await ApiEngine.post(\n\t\t\tApiUrl._API_UPDATE_CHAT_SPHERE_CONTENT_LANGUAGE,\n\t\t\tcreateFormBody(params)\n\t\t);\n\t\t_dispatch(\n\t\t\tshowMessage(\n\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t)\n\t\t);\n\n\t\tsetEditModal(false);\n\t\tgetChatSphereLanguage();\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tsetLanguageDetailModalVisibility(false);\n\t\t\t\t\t\tgetConfigLanguage();\n\t\t\t\t\t}}\n\t\t\t\t\tdataTypeId={props.id}\n\t\t\t\t\tlanguageDetailId={languageDetailId}\n\t\t\t\t\tlanguageType={props.type}\n\t\t\t\t/>\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetLanguageDetailId(\"\");\n\t\t\t\t\t\t\tsetIsOpen(true);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tclassName=\"btn btn-purple\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t)[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tvalue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetLanguageId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"languageId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.content.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\tMay get emoji cheat sheet with this link, \n\t\t\t\t\t\t\t\t\t\t\tEmoji Cheat Sheet\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t setIsOpen(false)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t{t(\"EDIT_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t? languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t)[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tdefaultValue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tvalue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == editLanguageId\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetEditLanguageId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"editLanguageId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.editContent.message)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\tMay get emoji cheat sheet with this link, \n\t\t\t\t\t\t\t\t\t\t\tEmoji Cheat Sheet\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t setEditModal(false)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageChatSphereContentLanguage;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\tContentTypeString,\n\tAllVipOption\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { useLocation } from \"react-router-dom\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ChatSphereContentLanguage from \"./ChatSphereContentLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\nimport Select from \"react-select\";\n\n/// \n/// Author : -\n/// \n\nconst ContentDetail = (props) => {\n\tconst _DETAIL_TAB = \"1\";\n\tconst _LANGUAGE_TAB = \"2\";\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\tconst { register, unregister, handleSubmit, errors, control, setValue } = useForm();\n\tconst [contentId, setContentId] = useState(\"\");\n\tconst [content, setContent] = useState(\"\");\n\tconst [status, setStatus] = useState(true);\n\tconst [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\tconst [chatSphereTypeList, setChatSphereTypeList] = useState([]);\n\tconst [selectedChatSphereType, setSelectedChatSphereType] = useState(\"\");\n\tconst [chatSpherePhoneNumberList, setChatSpherePhoneNumberList] = useState([]);\n\tconst [selectedPhoneNumber, setSelectedPhoneNumber] = useState(\"\");\n\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst toggle = (tab) => {\n\t\tif (activeTab !== tab) {\n\t\t\tsetActiveTab(tab);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tregister({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n\t\tinit();\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tasync function init() {\n\t\tif (_location.state) {\n\t\t\tvar apiUrl = ApiUrl._API_GET_CHAT_SPHERE_BY_ID;\n\t\t\tapiUrl += \"?id=\" + _location.state.id;\n\t\t\tawait fetch(apiUrl, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tsetContentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\t\tsetSelectedChatSphereType(responseJson[ApiKey._API_DATA_KEY][\"chatSphereActionTypeId\"])\n\t\t\t\t\t\tsetContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n\t\t\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\t\t\t\t\t\tsetSelectedPhoneNumber(responseJson[ApiKey._API_DATA_KEY][\"phoneNumberId\"])\n\t\t\t\t\t\tunregister(\"content\");\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submitForm = async (data, e) => {\n\t\tlet params = {\n\t\t\tchatSphereTypeActionId: data.selectedChatSphereType,\n\t\t\tstatus: data.status,\n\t\t\tcontent: content,\n\t\t\tchatSpherePhoneNumberId: selectedPhoneNumber\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(contentId)) {\n\t\t\tparams[\"id\"] = contentId;\n\t\t}\n\n\t\tlet formBody = createFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_CHAT_SPHERE_CONTENT, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetContentId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\tuseEffect(() => {\n\t\tfetch(ApiUrl._API_GET_CHAT_SPHERE_TYPE, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst channelList = [\n\t\t\t\t\t];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (channel) {\n\t\t\t\t\t\tchannelList.push({ label: channel.name + \", \" + channel.channel, value: channel.id });\n\t\t\t\t\t});\n\n\t\t\t\t\tsetChatSphereTypeList(channelList);\n\t\t\t\t}\n\t\t\t});\n\t}, []);\n\n\tuseEffect(() => {\n\t\tfetch(ApiUrl._API_GET_CHAT_SPHERE_PHONE_NUMBER, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst phoneList = [\n\t\t\t\t\t];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (phone) {\n\t\t\t\t\t\tphoneList.push({ label: phone.phoneNumber, value: phone.id });\n\t\t\t\t\t});\n\n\t\t\t\t\tsetChatSpherePhoneNumberList(phoneList);\n\t\t\t\t}\n\t\t\t});\n\t}, []);\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t{contentId ? t(\"EDIT_CHAT_SPHERE_CONTENT\") : t(\"ADD_CHAT_SPHERE_CONTENT\")}\n\t\t\t\t\n\t\t\t

    \n\t\t\t{contentId && (\n\t\t\t\t\n\t\t\t)}\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t option.value == selectedChatSphereType\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedChatSphereType(e.value)\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\trules={{ required: \"PLEASE_SELECT_CHANNEL\" }}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.channel && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.channel.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t option.value == selectedPhoneNumber\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t? chatSpherePhoneNumberList.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == selectedPhoneNumber\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t).label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={chatSpherePhoneNumberList.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == selectedPhoneNumber\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetSelectedPhoneNumber(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tonChange(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\trules={{ required: \"PLEASE_SELECT_PHONE_NUMBER\" }}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.channel && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.channel.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetContent(e.target.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"content\", e.target.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.content.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tMay get emoji cheat sheet with this link, \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tEmoji Cheat Sheet\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setStatus(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t\t\t{contentId && (\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default withRouter(ContentDetail);\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport \"../../assets/css/custom.css\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport {\n ApiUrl,\n ApiKey,\n WebUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ManageChatSpherePhoneNumber = (props) => {\n let _history = useHistory();\n const { t } = useTranslation(LanguageKey._PRIMARY);\n const [chatSpherePhoneNumberList, setChatSpherePhoneNumberList] = useState([]);\n\n let _tableColumns = [\n {\n Header: \"PHONE_NUMBER\",\n accessor: \"phoneNumber\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._CHAT_SPHERE_PHONE_NUMBER_PERMISSION,\n true\n ) && (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_CHAT_SPHERE_PHONE_NUMBER_DETAIL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n fetch(ApiUrl._API_GET_CHAT_SPHERE_PHONE_NUMBER, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setChatSpherePhoneNumberList(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }, []);\n\n return (\n
    \n

    \n {t(\"MANAGE_CHAT_SPHERE_PHONE_NUMBER\")}\n {checkIfPermissionExist(\n AccessRight._CHAT_SPHERE_PHONE_NUMBER_PERMISSION,\n true\n ) && (\n \n )}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageChatSpherePhoneNumber;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport Dropzone from \"react-dropzone\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n DisplayMode,\n DisplayType,\n LanguageKey,\n ContentTypeString,\n AllVipOption,\n DisplayDevice,\n ChatSphereAction\n} from \"../../util/Constant\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport {\n stringIsNullOrEmpty,\n createMultiPartFormBody,\n} from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageBannerLanguage from \"./ManageBannerLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n\n/// \n/// Author : -\n/// \n\nconst BannerDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const {\n register,\n unregister,\n handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n\n const [bannerId, setBannerId] = useState(\"\");\n\n const [chatSpherePhoneId, setChatSpherePhoneId] = useState(\"\")\n const [status, setStatus] = useState(false);\n\n const [phoneNumber, setPhoneNumber] = useState(\"\");\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) setActiveTab(tab);\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_CHAT_SPHERE_PHONE_NUMBER_BY_ID;\n let stateId = _location.state.id || _location.state.refId;\n apiUrl += \"?id=\" + stateId;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n if (_location.state.id) {\n setChatSpherePhoneId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n } else if (_location.state.refId) {\n setBannerId(_location.state.refId);\n }\n\n setPhoneNumber(responseJson[ApiKey._API_DATA_KEY][\"phoneNumber\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\n\n\n unregister(\"content\");\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n phoneNumber: data.phoneNumber,\n status: data.status\n };\n\n if (!stringIsNullOrEmpty(chatSpherePhoneId)) {\n params[\"id\"] = chatSpherePhoneId;\n }\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_CHAT_SPHERE_PHONE_NUMBER, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setChatSpherePhoneId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n });\n };\n\n\n return (\n
    \n

    \n {chatSpherePhoneId ? t(\"EDIT_CHAT_SPHERE_PHONE_NUMBER\") : t(\"ADD_CHAT_SPHERE_PHONE_NUMBER\")}\n \n

    \n {chatSpherePhoneId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.phoneNumber && (\n
    \n {t(errors.phoneNumber.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={true}\n checked={status}\n ref={register}\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(BannerDetail);\n","import React, { useState } from \"react\";\nimport Select from \"react-select\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport moment from \"moment\";\nimport { useTranslation } from \"react-i18next\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n\t_TRANSACTION_STATUS,\n\t_WALLET_GAME_TRANSACTION_TYPE,\n Transaction,\n WebUrl,\n AccessRight\n} from \"../../util/Constant\";\nimport { useEffect } from \"react\";\nimport { useForm } from \"react-hook-form\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport ApiEngine from \"../../util/ApiEngine.js\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { useHistory } from \"react-router-dom\";\nimport { navigateTo } from \"../../util/Util\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\n/// \n/// Author : -\n/// \n\nconst BonusTracking = (props) => {\n let _history = useHistory();\n\tconst { register, handleSubmit, errors, setValue, trigger } = useForm();\n\tconst _dispatch = useDispatch();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [memberId, setMemberId] = useState(\"\");\n const [reportData, setReportData] = useState([]);\n const [usernameKeyword, setUsernameKeyword] = useState(\"\");\n const [bankAccKeyword, setBankAccKeyword] = useState(\"\");\n\n let _tableColumns = [\n {\n Header: \"Bank Name\",\n accessor: \"bank.bankName\",\n disableSortBy: true,\n },\n {\n Header: \"Account Number\",\n accessor: \"accountNumber\",\n disableSortBy: true,\n },\n {\n Header: \"Account Holder Name\",\n accessor: \"accountHolderName\",\n disableSortBy: true,\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"SUSPENDED\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n },\n\n {\n id: \"action\",\n Header: \"\",\n Cell: ({ row }) =>\n checkIfPermissionExist(\n AccessRight._MANAGE_MEMBER_BANK_ACCOUNT,\n true\n ) &&\n (\n
    \n \n \n \n \n \n {\n navigateTo(\n _history,\n WebUrl._URL_MEMBER_BANK_ACCOUNT_DETAIL,\n row.original\n );\n }}\n >\n {t(\"EDIT\")}\n \n \n \n
    \n ),\n disableSortBy: true,\n disableFilters: true,\n width: 100,\n style: { overflow: \"visible\" },\n },\n ];\n\n\tconst getMemberBankAccount = async () => {\n\t\ttry {\n var apiUrl =\n ApiUrl._API_GET_MEMBER_BANK_ACCOUNT +\n \"?username=\" +\n usernameKeyword + \"&bankAcc=\" + bankAccKeyword;\n\n\t\t\tvar responseJson = await ApiEngine.get(apiUrl);\n\n\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\tsetReportData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t} else {\n\t\t\t\tthrow responseJson[ApiKey._API_MESSAGE_KEY];\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t_dispatch(showMessage(false, t(error)));\n\t\t}\n };\n\n async function GetRelatedBankAccount() {\n getMemberBankAccount();\n }\n\n\treturn (\n
    \n

    \n {t(\"MANAGE_MEMBER_BANK_ACCOUNT\") }\n

    \n \n\t\t\t\t
    \n
    \n
    \n
    \n
    \n \n {\n setUsernameKeyword(e.target.value);\n }}\n />\n
    {t(\"KEY_KEYWORD_TO_CONTINUE\")}
    \n
    \n
    \n
    \n
    \n \n {\n setBankAccKeyword(e.target.value);\n }}\n />\n
    \n
    \n {
    \n \n
    }\n
    \n \n \n \n
    \n
    \n
    \n\t\t
    \n\t);\n};\n\nexport default BonusTracking;\n","import React, { useState, useEffect } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n LanguageKey,\n AllVipOption,\n TransactionType\n} from \"../../util/Constant\";\nimport { useForm, Controller } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport {\n stringIsNullOrEmpty,\n createMultiPartFormBody,\n imagePathToFileObject,\n} from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n\n/// \n/// Author : -\n/// \n\nconst BannerDetail = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const {\n register:formRegister,\n unregister ,\n handleSubmit: handleSubmit,\n errors,\n setError,\n control,\n setValue,\n } = useForm();\n\n const [accountHolderName, setAccountHolderName] = useState(\"\");\n const [accountNumber, setAccountNumber] = useState(\"\");\n const [bankId, setBankId] = useState(\"\");\n const [bankList, setBankList] = useState([]);\n const [stateId, setStateId] = useState(\"\");\n const [memberBankDetail, setMemberBankDetail] = useState([]);\n const [status, setStatus] = useState(false);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n init();\n }, []);\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) setActiveTab(tab);\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_MEMBER_BANK_ACCOUNT_BY_ID;\n let stateId = _location.state.id || _location.state.refId;\n apiUrl += \"?id=\" + stateId;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then(async (responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n console.log(responseJson[ApiKey._API_DATA_KEY])\n setMemberBankDetail(responseJson[ApiKey._API_DATA_KEY])\n if (_location.state.id) {\n setStateId(responseJson[ApiKey._API_DATA_KEY][0][\"id\"]);\n } else if (_location.state.refId) {\n setStateId(_location.state.refId);\n }\n console.log(responseJson[ApiKey._API_DATA_KEY][0][\"bank\"][\"id\"])\n setBankId(responseJson[ApiKey._API_DATA_KEY][0][\"bank\"][\"id\"])\n setAccountHolderName(responseJson[ApiKey._API_DATA_KEY][0][\"accountHolderName\"]);\n setAccountNumber(responseJson[ApiKey._API_DATA_KEY][0][\"accountNumber\"]);\n setStatus(responseJson[ApiKey._API_DATA_KEY][0][\"status\"]);\n setValue(\"bankId\", responseJson[ApiKey._API_DATA_KEY][0][\"bank\"][\"id\"]);\n unregister(\"content\");\n }\n });\n }\n\n await fetch(ApiUrl._API_GET_BANK_BY_TRANSACTION_TYPE + \"?transactionTypeId=\" + TransactionType._DEPOSIT, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const bankList = [\n ];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (bank) {\n console.log(bank.id)\n bankList.push({ label: bank.bankName + \" , \" + (bank.status ? \"Active\" : \"Inactive\"), value: bank.id });\n });\n\n setBankList(bankList);\n }\n });\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n let params = {\n Id: stateId,\n bankId: data.bankId,\n accountNumber: data.accountNumber,\n status: data.status?1:0\n };\n\n let formBody = createMultiPartFormBody(params);\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_UPDATE_MEMBER_BANK_ACCOUNT_BY_ID, {\n method: ApiKey._API_POST,\n headers: {\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: formBody,\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setStateId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\n _history.replace({\n pathname: _location.pathname,\n state: {\n id: responseJson[ApiKey._API_DATA_KEY][\"id\"],\n },\n });\n }\n });\n };\n\n return (\n
    \n

    \n {stateId ? t(\"EDIT_MEMBER_BANK_DETAIL\") : t(\"ADD_MEMBER_BANK_ACCOUNT\")}\n \n

    \n {stateId && (\n \n )}\n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n (\n option.value == bankId\n )}\n onChange={(e) => {\n onChange(e.value);\n setBankId(e.value)\n\n }}\n />\n )}\n rules={{ required: \"PLEASE_SELECT_BANK\" }}\n />\n {errors.bankId && (\n
    \n {t(errors.bankId.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.accountNumber && (\n
    \n {t(errors.accountNumber.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.accountHolderName && (\n
    \n {t(errors.accountHolderName.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n setStatus(e.target.checked)}\n value={status}\n checked={status}\n ref={formRegister}\n defaultValue={status }\n />\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n );\n};\n\nexport default withRouter(BannerDetail);\n","import React, { useState, useEffect } from 'react';\nimport { useTranslation } from \"react-i18next\";\nimport { Panel, PanelBody } from '../../components/panel/panel';\nimport Select from \"react-select\";\nimport ApiEngine from '../../util/ApiEngine';\nimport { ApiKey, ApiUrl, LanguageKey, WebUrl } from '../../util/Constant';\nimport { createFormBody } from '../../util/Util';\nimport { /*setSaveAdminLog,*/ showMessage } from '../../redux/AppAction';\nimport { useDispatch } from 'react-redux';\nimport { useHistory } from \"react-router-dom\";\nimport { useLocation } from \"react-router-dom\";\nimport { navigateTo } from \"../../util/Util\";\n\n\nconst CustomProductRanking = (props) => {\n const _dispatch = useDispatch();\n let _history = useHistory();\n const _location = useLocation();\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [gameListString, setGameListString] = useState(\"\");\n const [textareaString, setTextareaString] = useState(\"\");\n const [masterProductId, setMasterProductId] = useState(\"\");\n const [productTitle, SetProductTitle] = useState(\"\");\n const [PostInit, SetPostInit] = useState(true);\n const [inputIsNewGame, SetInputIsNewGame] = useState(true);\n const [inputIsRecommended, SetInputIsRecommended] = useState(false);\n const [placeholderEG, setPlaceholderEG] = useState(t(\"CUSTOM_PRODCUT_LIST_INFO\"));\n\n\n async function init() {\n\n var apiUrl = ApiUrl._API_GET_ACCOUNT_PRODUCT_RANKING;\n let responseJson = await ApiEngine.get(apiUrl);\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let text = \"\";\n text = responseJson[ApiKey._API_DATA_KEY].replace(/,/g, \"\\n\")\n setGameListString(text.trimEnd());\n }\n }\n useEffect(() => {\n init();\n }, []);\n\n const updateProductRank = async () => {\n let params = {};\n params = {\n \"productListList\": gameListString,\n };\n //_dispatch(setSaveAdminLog(\"MANAGE_VENDOR_NEW_GAME\", _history.location.pathname, params));\n let responseJson = await ApiEngine.post(ApiUrl._API_UPDATE_ACCOUNT_PRODUCT_RANKING, createFormBody(params));\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n }\n\n\n return (\n
    \n
    \n
    \n

    {t(\"MANAGE_PRODUCT_RANKING\")}

    \n \n {t(\"VIEW_PRODUCT_LIST\")} \n
    \n
    \n \n \n
    \n
    \n \n
    \n setGameListString(e.target.value)}\n defaultValue={gameListString}\n >\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n )\n}\n\nexport default CustomProductRanking;","import React, { useState, useEffect } from 'react';\nimport { useTranslation } from \"react-i18next\";\nimport { Panel, PanelBody } from '../../components/panel/panel';\nimport Select from \"react-select\";\nimport ApiEngine from '../../util/ApiEngine';\nimport { ApiKey, ApiUrl, LanguageKey, WebUrl } from '../../util/Constant';\nimport { createFormBody } from '../../util/Util';\nimport { /*setSaveAdminLog,*/ showMessage } from '../../redux/AppAction';\nimport { useDispatch } from 'react-redux';\nimport { useHistory } from \"react-router-dom\";\nimport { useLocation } from \"react-router-dom\";\nimport { navigateTo } from \"../../util/Util\";\n\n\nconst CustomGamesRanking = (props) => {\n const _dispatch = useDispatch();\n let _history = useHistory();\n const _location = useLocation();\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n const [gameListString, setGameListString] = useState(\"\");\n const [textareaString, setTextareaString] = useState(\"\");\n const [masterProductId, setMasterProductId] = useState(\"\");\n const [productTitle, SetProductTitle] = useState(\"\");\n const [PostInit, SetPostInit] = useState(true);\n const [inputIsNewGame, SetInputIsNewGame] = useState(true);\n const [inputIsRecommended, SetInputIsRecommended] = useState(false);\n const [placeholderEG, setPlaceholderEG] = useState(t(\"CUSTOM_GAAMES_LIST_INFO\"));\n\n\n async function init() {\n\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_CUSTOM_PRODUCT_GAME_SETTING;\n apiUrl += \"?apid=\" + _location.state.id;\n let responseJson = await ApiEngine.get(apiUrl);\n console.log(_location.state);\n\n\n if (responseJson[ApiKey._API_SUCCESS_KEY] && responseJson[ApiKey._API_DATA_KEY] != null) {\n let text = \"\";\n text = responseJson[ApiKey._API_DATA_KEY].replace(/,/g, \"\\n\")\n setGameListString(text.trimEnd());\n }\n }\n\n if (_location.state) {\n var apiUrl = ApiUrl._API_GET_PRODUCT_GAME_BY_ACCOUNT_PRODUCT;\n apiUrl += \"?accountProductId=\" + _location.state.id;\n let responseJson = await ApiEngine.get(apiUrl);\n console.log(_location.state);\n\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n let text = \"\";\n responseJson[ApiKey._API_DATA_KEY].forEach(function (item) {\n //text += item.gameName + \"\\n\";\n setMasterProductId(item.product.id);\n SetProductTitle(item.product.productName);\n }\n );\n }\n\n }\n }\n\n useEffect(() => {\n init();\n }, []);\n\n const updateGameRank = async () => {\n let params = {};\n params = {\n \"gameRankList\": gameListString,\n \"IsRecommendedList\": \"\",\n \"IsNewList\": \"\",\n };\n //_dispatch(setSaveAdminLog(\"MANAGE_VENDOR_NEW_GAME\", _history.location.pathname, params));\n var apiUrl = ApiUrl._API_UPDATE_CUSTOM_PRODUCT_GAME_SETTING;\n apiUrl += \"?apid=\" + _location.state.id;\n let responseJson = await ApiEngine.post(apiUrl, createFormBody(params));\n _dispatch(showMessage(responseJson[ApiKey._API_SUCCESS_KEY], t(responseJson[ApiKey._API_MESSAGE_KEY])));\n }\n\n\n return (\n
    \n
    \n
    \n

    {t(\"Manage \" + productTitle + \" Games\")}

    \n \n {t(\"VIEW_GAME_LIST\")} \n
    \n
    \n \n \n
    \n
    \n \n
    \n setGameListString(e.target.value)}\n defaultValue={gameListString}\n >\n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n )\n}\n\nexport default CustomGamesRanking;","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport {\n UncontrolledButtonDropdown,\n DropdownToggle,\n DropdownMenu,\n DropdownItem,\n} from \"reactstrap\";\nimport { navigateTo } from \"../../util/Util\";\nimport { useLocation, useHistory } from \"react-router-dom\";\nimport {\n ApiKey,\n WebUrl,\n ApiUrl,\n AccessRight,\n LanguageKey,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { useDispatch } from \"react-redux\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageGame = (props) => {\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n\n const [submitError, setSubmitError] = useState(\"\");\n const [submitSuccess, setSubmitSuccess] = useState(\"\");\n const [gameData, setGameData] = useState([]);\n const search = window.location.search;\n const params = new URLSearchParams(search);\n const mpId = params.get('id');\n\n let _tableColumns = [\n {\n Header: \"NAME\",\n accessor: \"gameName\",\n },\n {\n Header: \"STATUS\",\n accessor: \"status\",\n Cell: ({ row }) => (\n
    \n {row.original.status == 1 ? (\n \n {t(\"ACTIVE\")}\n \n ) : (\n \n {t(\"INACTIVE\")}\n \n )}\n
    \n ),\n disableSortBy: true,\n style: { overflow: \"visible\" },\n }\n ];\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n readGame();\n }, []);\n\n /// \n /// Author : -\n /// \n function readGame() {\n fetch(\n ApiUrl._API_GET_PRODUCT_GAME + \"?productId=\" + mpId,\n {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n }\n )\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setGameData(responseJson[ApiKey._API_DATA_KEY]);\n }\n });\n }\n\n return (\n
    \n

    \n {t(\"GAME\")}\n

    \n \n \n \n \n \n
    \n );\n};\n\nexport default ManageGame;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport \"react-datepicker/dist/react-datepicker.css\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport { navigateTo, numberWithCurrencyFormat } from \"../../util/Util\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tAccessRight,\n\tWebUrl,\n\tLanguageKey,\n\tDEFAULT_PAGE_SIZE,\n\tRole,\n} from \"../../util/Constant\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ApiEngine from \"../../util/ApiEngine\";\nimport { AsyncPaginate } from \"react-select-async-paginate\";\nimport classNames from \"classnames\";\nimport moment from \"moment\";\nimport DateRangePicker from \"react-bootstrap-daterangepicker\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\n//import CustomButtonWithIcon from \"../../components/pksoft/button\";\n//import FilterInput from \"../../components/pksoft/filter-input\";\nimport Select from \"react-select\";\nimport SweetAlert from \"react-bootstrap-sweetalert\";\n\nconst ManageMemberRebate = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _dispatch = useDispatch();\n\tvar _username = useSelector(\n\t\t(state) => state[\"authState\"][\"userData\"][\"username\"]\n\t);\n\n\tconst [tableData, setTableData] = useState([]);\n\tconst [selectedDate, setSelectedDate] = useState(\n\t\tmoment().subtract(1, \"days\").format(\"YYYY-MM-DD\")\n\t);\n\tconst [calBy, setCalBy] = useState(\"Valid Turnover\");\n\tconst [showConfirmation, setShowConfirmation] = useState(false);\n\tconst [release, setRelease] = useState(\"\");\n\tconst [initFlag, setInitFlag] = useState(false);\n\tconst [startDate, setStartDate] = useState(\n\t\tmoment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\tconst [endDate, setEndDate] = useState(\n\t\tmoment().endOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n\t);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(\n\t\t\t\t\tAccessRight._MANAGE_MEMBER_WEEKLY_RESCUE,\n\t\t\t\t\ttrue\n\t\t\t\t) &&\n\t\t\t\t(row.original.generated == false ? (\n\t\t\t\t\t
    \n\t\t\t\t\t\t handleCheckboxChange(e)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t
    \n\t\t\t\t) : (\n\t\t\t\t\t
    \n\t\t\t\t\t\t{t(\"RELEASED\")}\n\t\t\t\t\t
    \n\t\t\t\t)),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 50,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t\tFooter: () => {\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{t(\"TOTAL\")}: \n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"USERNAME\"),\n\t\t\taccessor: \"usernmae\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn {row.original.username};\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: calBy == \"Win Lose\" ? \"Self Win Lose\" : t(\"SELF_VT\"),\n\t\t\taccessor: \"selfVTurnover\",\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst creditSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.selfVTurnover) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.selfVTurnover);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(creditSum), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"SELF_COMM\"),\n\t\t\taccessor: \"selfCommAmount\",\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst creditSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.selfCommAmount) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.selfCommAmount);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(creditSum), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: calBy == \"Win Lose\" ? \"Downline Win Lose\" : t(\"DL_VT\"),\n\t\t\taccessor: \"downlineVTurnover\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.downlineVTurnover),\n\t\t\t\t\t\t\t3\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"DL_COMM\"),\n\t\t\taccessor: \"downlineCommAmount\",\n\t\t\tminWidth: 100,\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst creditSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (currentValue.original.downlineCommAmount) {\n\t\t\t\t\t\treturn sum + parseFloat(currentValue.original.downlineCommAmount);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(creditSum), 3)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\t//{\n\t\t// Header: \"TotalVTurnover\",\n\t\t// accessor: \"TotalVTurnover\",\n\t\t// minWidth: 100,\n\t\t// Cell: ({ row }) => {\n\t\t// return <>{numberWithCurrencyFormat((parseFloat(row.original.selfVTurnover) + parseFloat(row.original.downlineVTurnover)))}\n\t\t// },\n\t\t// Footer: ({ page }) => {\n\t\t// const creditSum = page.reduce((sum, currentValue) => {\n\t\t// if (currentValue.original.selfVTurnover > 0 || currentValue.original.downlineVTurnover > 0 ) {\n\t\t// return sum + parseFloat(currentValue.original.selfVTurnover) + parseFloat(currentValue.original.downlineVTurnover);\n\t\t// }\n\t\t// else {\n\t\t// return sum;\n\t\t// }\n\t\t// }, 0);\n\t\t// return {numberWithCurrencyFormat(parseFloat(creditSum), 3)}\n\t\t// }\n\t\t//},\n\n\t\t{\n\t\t\tHeader: calBy == \"Win Lose\" ? \"Total Win Lose\" : t(\"TOTAL_VT\"),\n\t\t\taccessor: \"TotalVTurnover\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.selfVTurnover) +\n\t\t\t\t\t\t\tparseFloat(row.original.downlineVTurnover),\n\t\t\t\t\t\t\t3\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\n\t\t{\n\t\t\tHeader: t(\"TOTAL_COMM\"),\n\t\t\taccessor: \"TotalCommission\",\n\t\t\tminWidth: 100,\n\t\t\tCell: ({ row }) => {\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{numberWithCurrencyFormat(\n\t\t\t\t\t\t\tparseFloat(row.original.selfCommAmount) +\n\t\t\t\t\t\t\tparseFloat(row.original.downlineCommAmount),\n\t\t\t\t\t\t\t3\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t\tFooter: ({ page }) => {\n\t\t\t\tconst totalVT = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (Math.abs(currentValue.original.selfVTurnover) > 0) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tsum + parseFloat(Math.abs(currentValue.original.selfVTurnover))\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\n\t\t\t\tconst creditSum = page.reduce((sum, currentValue) => {\n\t\t\t\t\tif (\n\t\t\t\t\t\tcurrentValue.original.selfCommAmount > 0 ||\n\t\t\t\t\t\tcurrentValue.original.downlineCommAmount > 0\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\tsum +\n\t\t\t\t\t\t\tparseFloat(currentValue.original.selfCommAmount) +\n\t\t\t\t\t\t\tparseFloat(currentValue.original.downlineCommAmount)\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn sum;\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t\treturn (\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{numberWithCurrencyFormat(parseFloat(creditSum), 3)} /{\" \"}\n\t\t\t\t\t\t\t{creditSum > 0\n\t\t\t\t\t\t\t\t? parseFloat((creditSum / Math.abs(totalVT)) * 100).toFixed(2)\n\t\t\t\t\t\t\t\t: 0}\n\t\t\t\t\t\t\t%\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t];\n\n\tconst [selectedCheckboxes, setSelectedCheckboxes] = useState([]);\n\tconst handleCheckboxChange = (e) => {\n\t\tconst { value } = e.target;\n\t\tsetSelectedCheckboxes((prevSelected) => {\n\t\t\tif (prevSelected.includes(value)) {\n\t\t\t\treturn prevSelected.filter((id) => id !== value);\n\t\t\t} else {\n\t\t\t\treturn [...prevSelected, value];\n\t\t\t}\n\t\t});\n\t};\n\n\tuseEffect(() => {\n\t\t_dispatch(setBusy());\n\t\tconst queryParams = new URLSearchParams(window.location.search);\n\t\tconst date = queryParams.get(\"date\") || \"\";\n\t\tconst calculateby = queryParams.get(\"calculateby\") || \"\";\n\n\t\tif (!stringIsNullOrEmpty(date)) {\n\t\t\tsetSelectedDate(date);\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(calculateby)) {\n\t\t\tsetCalBy(calculateby);\n\t\t}\n\t\tsetInitFlag(true);\n\t\t// getRebateMemberList(calculateby);\n\t\t_dispatch(setIdle());\n\t}, []);\n\n\tuseEffect(() => {\n\t\tif (initFlag) {\n\t\t\tconst queryParams = new URLSearchParams(window.location.search);\n\t\t\tconst calculateby = queryParams.get(\"calculateby\") || \"\";\n\t\t\tif (!stringIsNullOrEmpty(calculateby)) {\n\t\t\t\tgetRebateMemberList(calculateby);\n\t\t\t} else {\n\t\t\t\tgetRebateMemberList(calBy);\n\t\t\t}\n\t\t}\n\t}, [initFlag]);\n\n\tconst updateSearchParams = (calculateBy) => {\n\t\tconst params = new URLSearchParams(window.location.search);\n\n\t\tparams.set(\"date\", selectedDate);\n\t\tparams.set(\"calculateby\", calculateBy);\n\n\t\t_history.replace({ search: params.toString() });\n\t};\n\n\tasync function getRebateMemberList(calculateBy) {\n\t\tvar calcBy = calculateBy;\n\t\t_dispatch(setBusy());\n\t\tupdateSearchParams(calcBy);\n\n\t\tfetch(\n\t\t\tApiUrl._API_GET_MEMBER_COMMISSION_LIST +\n\t\t\t\"?date=\" +\n\t\t\tselectedDate +\n\t\t\t\"\" +\n\t\t\t\"&type=\" +\n\t\t\tcalcBy,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetTableData([]);\n\t\t\t\t\tif (responseJson[ApiKey._API_DATA_KEY] != null)\n\t\t\t\t\t\tsetTableData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t\telse setTableData([]);\n\t\t\t\t}\n\n\t\t\t\t_dispatch(setIdle());\n\t\t\t});\n\t}\n\t\n\t function CheckAll(){\n\t\t if(tableData.length > 0)\n\t\t {\n\t\t\t setSelectedCheckboxes(tableData.map(row => \n\t\t\t\t`${row.memberId},${row.selfCommAmount},${row.downlineCommAmount},${row.date}`\n\t\t\t ));\n\t\t }\n\t }\n\n\tasync function Claim(idList, select) {\n\t\tconsole.log(idList);\n\n\t\t// Set busy state before starting the loop\n\t\t_dispatch(setBusy());\n\n\t\tlet allSuccessful = true; // Track if all requests were successful\n\t\tlet finalMessage = ''; // Message to display at the end\n\n\t\tfor (let option of idList) {\n\t\t\tlet params = [];\n\t\t\tif (select !== \"all\") {\n\t\t\t\tconst list = option.split(\",\");\n\t\t\t\tparams = {\n\t\t\t\t\tselectedMemberId: list[0],\n\t\t\t\t\tselfComm: list[1],\n\t\t\t\t\tdlComm: list[2],\n\t\t\t\t\tdate: list[3],\n\t\t\t\t\ttype: calBy,\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tparams = {\n\t\t\t\t\tselectedMemberId: option.memberId,\n\t\t\t\t\tselfComm: option.selfCommAmount,\n\t\t\t\t\tdlComm: option.downlineCommAmount,\n\t\t\t\t\tdate: option.date,\n\t\t\t\t\ttype: calBy,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tconsole.log(params);\n\n\t\t\tlet formBody = createFormBody(params);\n\n\t\t\ttry {\n\t\t\t\t_dispatch(setBusy(\"PLEASE_WAIT\" + \" \" + idList.indexOf(option) + \"/\" + idList.length));\n\t\t\t\tconst response = await fetch(ApiUrl._API_GENERATE_MLM_COMMISSION, {\n\t\t\t\t\tmethod: ApiKey._API_POST,\n\t\t\t\t\theaders: {\n\t\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t\t},\n\t\t\t\t\tbody: formBody,\n\t\t\t\t});\n\n\t\t\t\tconst responseJson = await response.json();\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t// Check if the request was successful\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tfinalMessage += `Processed request successfully.\\n`;\n\t\t\t\t} else {\n\t\t\t\t\tallSuccessful = false;\n\t\t\t\t\tfinalMessage += `Failed to process request for member ID ${params.selectedMemberId}: ${t(responseJson[ApiKey._API_MESSAGE_KEY])}\\n`;\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(\"Error:\", error);\n\t\t\t\tallSuccessful = false;\n\t\t\t\tfinalMessage += `Error processing request for member ID ${params.selectedMemberId}.\\n`;\n\t\t\t}\n\t\t}\n\n\t\t// After all operations are completed, update the state\n\t\t_dispatch(setIdle());\n\n\t\t// Dispatch a single message at the end\n\t\t_dispatch(showMessage(allSuccessful, finalMessage.trim()));\n\n\t\t// After processing, clean up or call other necessary functions\n\t\tgetRebateMemberList();\n\t\tsetSelectedCheckboxes([]);\n\t}\n\n\tconst handleEvent = (event, picker) => {\n\t\tsetSelectedDate(moment(picker.startDate).format(\"YYYY-MM-DD\"));\n\t};\n\n\tconst _OPTION_STYLES = {\n\t\tcontrol: (base) => ({\n\t\t\t...base,\n\t\t\t\"min-height\": \"34px\",\n\t\t\theight: \"34px\",\n\t\t}),\n\t\tvalueContainer: (base) => ({\n\t\t\t...base,\n\t\t\theight: \"34px\",\n\t\t\t\"min-height\": \"34px\",\n\t\t}),\n\t\tindicatorsContainer: (base) => ({\n\t\t\t...base,\n\t\t\theight: \"34px\",\n\t\t\t\"min-height\": \"34px\",\n\t\t}),\n\t\tinput: (base) => ({\n\t\t\theight: \"34px\",\n\t\t\t\"min-height\": \"34px\",\n\t\t}),\n\t};\n\n\tconst _COMM_CALC_BY = [\n\t\t//{ value: \"Win Lose\", label: \"Win Lose\" },\n\t\t{ value: \"Valid Turnover\", label: \"Valid Turnover\" },\n\t];\n\n\treturn (\n\t\t
    \n\t\t\t{showConfirmation && (\n\t\t\t\t {\n\t\t\t\t\t\tif (release == \"all\") {\n\t\t\t\t\t\t\tClaim(\n\t\t\t\t\t\t\t\ttableData.filter((x) => x.generated == false),\n\t\t\t\t\t\t\t\t\"all\"\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tClaim(selectedCheckboxes, \"selected\");\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetShowConfirmation(false);\n\t\t\t\t\t}}\n\t\t\t\t\tonCancel={() => {\n\t\t\t\t\t\tsetShowConfirmation(false);\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{t(\"UNABLE_TO_REVERT\")}\n\t\t\t\t\n\t\t\t)}\n\t\t\t

    {t(\"COMMISSION_AND_REBATE\")}

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t getRebateMemberList(calBy)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"SEARCH\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetRelease(\"selected\");\n\t\t\t\t\t\t\t\t\tsetShowConfirmation(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tdisabled={selectedCheckboxes.length > 0 ? false : true}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"RELEASE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetRelease(\"all\");\n\t\t\t\t\t\t\t\t\tsetShowConfirmation(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\ttableData.filter((x) => x.generated == false).length > 0\n\t\t\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t\t\t: true\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"RELEASE_ALL\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\n\t);\n};\n\nexport default ManageMemberRebate;\n","import React, { useState, useEffect } from \"react\";\nimport Select from \"react-select\";\nimport CKEditor from \"@ckeditor/ckeditor5-react\";\nimport Dropzone from \"react-dropzone\";\nimport ClassicEditor from \"@ckeditor/ckeditor5-build-classic\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tContentTypeString,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport {\n\tstringIsNullOrEmpty,\n\tcreateFormBody,\n\tcreateMultiPartFormBody,\n} from \"../../util/Util\";\nimport { Modal, ModalHeader, ModalBody, ModalFooter } from \"reactstrap\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ConfigurationLanguageDetail = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst _dispatch = useDispatch();\n\n\tconst [desktopFile, setDesktopFile] = useState([]);\n\tconst [mobileFile, setMobileFile] = useState([]);\n\tconst [desktopImage, setDesktopImage] = useState();\n\tconst [mobileImage, setMobileImage] = useState();\n\tconst [isNewDesktopImage, setIsNewDesktopImage] = useState(false);\n\tconst [isNewMobileImage, setIsNewMobileImage] = useState(false);\n\n\tconst _CUSTOM_CONTENT_REGISTER = [\n\t\tContentTypeString._CONTENT,\n\t\tContentTypeString._EMAIL,\n\t\tContentTypeString._PROMOTION,\n\t\tContentTypeString._SCRIPT,\n\t\tContentTypeString._SEO,\n\t\tContentTypeString._VIP_CRITERIA,\n\t\tContentTypeString._DEPOSIT_PROMOTION,\n\t];\n\tconst _EXCLUDE_TITLE_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT_CONTENT,\n\t\tContentTypeString._VIP_CRITERIA,\n\t];\n\tconst _EXCLUDE_CONTENT_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT,\n\t\tContentTypeString._PRODUCT_CATEGORY,\n\t\tContentTypeString._DEPOSIT_PROMOTION_CATEGORY,\n\t];\n\n\tconst {\n\t\tregister,\n\t\tunregister,\n\t\thandleSubmit,\n\t\terrors,\n\t\tsetError,\n\t\tsetValue,\n\t\tclearErrors,\n\t\ttrigger,\n\t\tgetValues,\n\t} = useForm();\n\tconst [languageId, setLanguageId] = useState(\"\");\n\n\tconst [languageDetailId, setLanguageDetailId] = useState();\n\tconst [languageType, setLanguageType] = useState(\"\");\n\tconst [title, setTitle] = useState(\"\");\n\tconst [description, setDescription] = useState(\"\");\n\tconst [content, setContent] = useState(\"\");\n\tconst [dataTypeId, setDataTypeId] = useState(\"\");\n\tconst [dataDisplayDevice, setDataDisplayDevice] = useState(0);\n\tconst [languageOption, setLanguageOption] = useState([]);\n\tconst [languageModalVisible, setLanguageModalVisible] = useState(false);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst logoDrop = (acceptedFiles, isDesktop) => {\n\t\tif (acceptedFiles.length !== 0) {\n\t\t\tconst file = acceptedFiles[0];\n\t\t\tif (isDesktop) {\n\t\t\t\tsetDesktopFile(file);\n\t\t\t} else {\n\t\t\t\tsetMobileFile(file);\n\t\t\t}\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onloadend = () => {\n\t\t\t\tif (isDesktop) {\n\t\t\t\t\tsetIsNewDesktopImage(true);\n\t\t\t\t\tsetDesktopImage(reader.result);\n\t\t\t\t} else {\n\t\t\t\t\tsetIsNewMobileImage(true);\n\t\t\t\t\tsetMobileImage(reader.result);\n\t\t\t\t}\n\t\t\t};\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst submit = async (data, e) => {\n\t\tlet params = {\n\t\t\ttype: languageType,\n\t\t\tlanguageId: data.languageId,\n\t\t\tdataId: dataTypeId,\n\t\t\tisNewDesktopFile: isNewDesktopImage,\n\t\t\tisNewMobileFile: isNewMobileImage,\n\t\t};\n\n\t\tif (!_EXCLUDE_CONTENT_TYPE.includes(languageType)) {\n\t\t\tparams[\"content\"] = data.content;\n\t\t}\n\n\t\tif (!_EXCLUDE_TITLE_TYPE.includes(languageType)) {\n\t\t\tparams[\"title\"] = data.title;\n\t\t}\n\n\t\tif (\n\t\t\t!_EXCLUDE_TITLE_TYPE.includes(languageType) &&\n\t\t\tlanguageType == ContentTypeString._DEPOSIT_PROMOTION\n\t\t) {\n\t\t\tparams[\"description\"] = data.description;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(languageDetailId)) {\n\t\t\tparams[\"id\"] = languageDetailId;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(desktopFile)) {\n\t\t\tparams[\"desktopFile\"] = desktopFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(desktopImage)) {\n\t\t\tparams[\"desktopImageRemoved\"] = true;\n\t\t}\n\n\t\tif (!stringIsNullOrEmpty(mobileFile)) {\n\t\t\tparams[\"mobileFile\"] = mobileFile;\n\t\t}\n\n\t\tif (stringIsNullOrEmpty(mobileImage)) {\n\t\t\tparams[\"mobileImageRemoved\"] = true;\n\t\t}\n\n\t\tlet formBody = createMultiPartFormBody(params);\n\t\t_dispatch(setBusy());\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_CONFIG_LANGUAGE, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: formBody,\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tcleanup();\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\t/// \n\t/// Author : -\n\t/// \n\tfunction cleanup() {\n\t\tunregister(\"content\");\n\t\tunregister(\"languageId\");\n\t\tsetLanguageDetailId(\"\");\n\t\tsetLanguageId(\"\");\n\t\tsetContent(\"\");\n\t\tsetTitle(\"\");\n\t\tsetDescription(\"\");\n\t\tsetDesktopImage(\"\");\n\t\tsetMobileImage(\"\");\n\t\tsetIsNewDesktopImage(true);\n\t\tsetIsNewMobileImage(true);\n\t\tsetDesktopFile([]);\n\t\tsetMobileFile([]);\n\t\tsetValue(\"title\", \"\");\n\t\tsetValue(\"description\", \"\");\n\t\tsetValue(\"content\", \"\");\n\t\tsetValue(\"languageId\", \"\");\n\t\tprops.onFinish();\n\t}\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tif (languageModalVisible) {\n\t\t\tinitForAssignment();\n\t\t} else {\n\t\t\tcleanup();\n\t\t}\n\t}, [languageModalVisible]);\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tsetLanguageDetailId(props[\"languageDetailId\"]);\n\t\tif (stringIsNullOrEmpty(props[\"languageDetailId\"])) {\n\t\t\tsetDesktopImage(\"\");\n\t\t\tsetMobileImage(\"\");\n\t\t}\n\t\tsetLanguageType(props[\"languageType\"]);\n\t\tsetDataTypeId(props[\"dataTypeId\"]);\n\t\tsetLanguageModalVisible(props[\"visible\"]);\n\t}, [props[\"visible\"]]);\n\n\t/// \n\t/// Author : -\n\t/// Editted: - (Change register content)\n\t/// \n\tasync function initForAssignment() {\n\t\tregister({ name: \"languageId\" }, { required: \"PLEASE_SELECT_LANGUAGE\" });\n\n\t\tif (_CUSTOM_CONTENT_REGISTER.includes(languageType)) {\n\t\t\tregister({ name: \"content\" }, { required: \"PLEASE_ENTER_CONTENT\" });\n\t\t}\n\n\t\tawait fetch(ApiUrl._API_GET_LANGUAGE, {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tconst languageList = [];\n\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY].forEach(function (language) {\n\t\t\t\t\t\tlanguageList.push({ label: language.name, value: language.id });\n\t\t\t\t\t});\n\n\t\t\t\t\tsetLanguageOption(languageList);\n\t\t\t\t}\n\t\t\t});\n\n\t\tclearErrors();\n\n\t\tif (!stringIsNullOrEmpty(languageDetailId)) {\n\t\t\tawait fetch(\n\t\t\t\tApiUrl._API_GET_CONFIG_LANGUAGE_BY_ID +\n\t\t\t\t\t\"?type=\" +\n\t\t\t\t\tlanguageType +\n\t\t\t\t\t\"&id=\" +\n\t\t\t\t\tlanguageDetailId,\n\t\t\t\t{\n\t\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\t\theaders: {\n\t\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t\t},\n\t\t\t\t}\n\t\t\t)\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tsetDataDisplayDevice(\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"dataDisplayDevice\"]\n\t\t\t\t\t\t);\n\t\t\t\t\t\tsetLanguageDetailId(responseJson[ApiKey._API_DATA_KEY][\"id\"]);\n\t\t\t\t\t\tsetLanguageId(responseJson[ApiKey._API_DATA_KEY][\"languageId\"]);\n\t\t\t\t\t\tsetContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n\t\t\t\t\t\tsetTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n\t\t\t\t\t\tsetDescription(responseJson[ApiKey._API_DATA_KEY][\"description\"])\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t!stringIsNullOrEmpty(\n\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tsetDesktopImage(\n\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"desktopImage\"]\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tsetDesktopImage(\"\");\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t!stringIsNullOrEmpty(\n\t\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\tsetMobileImage(responseJson[ApiKey._API_DATA_KEY][\"mobileImage\"]);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tsetMobileImage(\"\");\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetValue(\"content\", responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n\n\t\t\t\t\t\tsetValue(\n\t\t\t\t\t\t\t\"languageId\",\n\t\t\t\t\t\t\tresponseJson[ApiKey._API_DATA_KEY][\"languageId\"]\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tsetValue(\"title\", responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n\t\t\t\t\t\tsetValue(\"description\", responseJson[ApiKey._API_DATA_KEY][\"description\"]);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t} else {\n\t\t\tsetDataDisplayDevice(props.dataDisplayDevice);\n\t\t\tsetLanguageDetailId(\"\");\n\t\t\tsetLanguageId(\"\");\n\t\t\tsetContent(\"\");\n\t\t\tsetTitle(\"\");\n\t\t\tsetDescription(\"\");\n\t\t\tsetValue(\"title\", \"\");\n\t\t\tsetValue(\"description\", \"\");\n\t\t\tsetValue(\"content\", \"\");\n\t\t\tsetValue(\"languageId\", \"\");\n\t\t}\n\t}\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t cleanup()}\n\t\t\t\t\tsize=\"lg\"\n\t\t\t\t\tcentered\n\t\t\t\t>\n\t\t\t\t\t
    \n\t\t\t\t\t\t cleanup()}>\n\t\t\t\t\t\t\t{!stringIsNullOrEmpty(languageDetailId)\n\t\t\t\t\t\t\t\t? t(\"EDIT_LANGUAGE\")\n\t\t\t\t\t\t\t\t: t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t)[0] !== undefined\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t )[0].label\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: \"\"\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\tvalue={languageOption.filter(\n\t\t\t\t\t\t\t\t\t\t\t\t\t(option) => option.value == languageId\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetValue(\"languageId\", e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetLanguageId(e.value);\n\t\t\t\t\t\t\t\t\t\t\t\t\tclearErrors(\"languageId\");\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t{errors.languageId && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.languageId.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t{!_EXCLUDE_TITLE_TYPE.includes(languageType) && (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.title && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.title.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{!_EXCLUDE_TITLE_TYPE.includes(languageType) &&\n\t\t\t\t\t\t\t\t\tlanguageType == ContentTypeString._DEPOSIT_PROMOTION && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.description && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.description.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{!_EXCLUDE_CONTENT_TYPE.includes(languageType) && (\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{languageType == ContentTypeString._BANNER ||\n\t\t\t\t\t\t\t\t\t\t\t\tlanguageType == ContentTypeString._ANNOUNCEMENT ||\n\t\t\t\t\t\t\t\t\t\t\t\tlanguageType == ContentTypeString._VIDEO_TUTORIAL ||\n\t\t\t\t\t\t\t\t\t\t\t\tlanguageType == ContentTypeString._CONTENT ||\n\t\t\t\t\t\t\t\t\t\t\t\tlanguageType ==\n\t\t\t\t\t\t\t\t\t\t\t\t\tContentTypeString._VIP_BENEFIT_CONTENT ||\n\t\t\t\t\t\t\t\t\t\t\t\tlanguageType == ContentTypeString._DEPOSIT_PROMOTION ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t) : languageType == ContentTypeString._BONUS ? (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t/* {\n editor.setData(content);\n }}\n onChange={(event, editor) => {\n const data = editor.getData();\n setContent(data);\n setValue(\"content\", data);\n trigger(\"content\");\n }}\n />*/\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t{errors.content && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.content.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{languageType == ContentTypeString._BANNER && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{(dataDisplayDevice === 0 ||\n\t\t\t\t\t\t\t\t\t\t\t\tdataDisplayDevice === 1 ||\n\t\t\t\t\t\t\t\t\t\t\t\tdataDisplayDevice === 4) && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, true)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(desktopImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetDesktopImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetDesktopFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{languageType == ContentTypeString._BANNER && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{(dataDisplayDevice === 2 || dataDisplayDevice === 3) && (\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, false)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(mobileImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{languageType == ContentTypeString._DEPOSIT_PROMOTION && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, false)\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(mobileImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t{languageType == ContentTypeString._DEPOSIT_PROMOTION_CATEGORY && (\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tlogoDrop(acceptedFiles, false)\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{({ getRootProps, getInputProps }) => (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"DRAG_N_DROP_SOME_FILES_HERE_OR_CLICK_TO_SELECT_FILES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{!stringIsNullOrEmpty(mobileImage) && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileImage(\"\");\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetMobileFile();\n\t\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"REMOVE_IMAGE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t cleanup()}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"CLOSE\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport default ConfigurationLanguageDetail;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\n// import \"../../assets/css/custom.css\";\nimport {\n\tUncontrolledButtonDropdown,\n\tDropdownToggle,\n\tDropdownMenu,\n\tDropdownItem,\n} from \"reactstrap\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tContentTypeString,\n\tLanguageKey,\n} from \"../../util/Constant\";\nimport { stringIsNullOrEmpty } from \"../../util/Util\";\nimport { useTranslation } from \"react-i18next\";\nimport ConfigurationLanguageDetail from \"./ConfigurationLanguageDetail\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \nconst ManageConfigurationLanguage = (props) => {\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [data, setData] = useState([]);\n\tconst [languageDetailModalVisibility, setLanguageDetailModalVisibility] =\n\t\tuseState(false);\n\n\tconst _EXCLUDE_TITLE_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT_CONTENT,\n\t\tContentTypeString._VIP_CRITERIA,\n\t\tContentTypeString._CHAT_SPHERE,\n\t];\n\tconst _EXCLUDE_CONTENT_TYPE = [\n\t\tContentTypeString._VIP_BENEFIT,\n\t\tContentTypeString._PRODUCT_CATEGORY,\n\t\tContentTypeString._DEPOSIT_PROMOTION_CATEGORY,\n\t];\n\n\tconst [languageDetailId, setLanguageDetailId] = useState(\"\");\n\tconst [tableColumns, setTableColumns] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TITLE\",\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CONTENT\",\n\t\t\taccessor: \"content\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetLanguageDetailId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetLanguageDetailModalVisibility(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tlet _tableColumns2 = [\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TITLE\",\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"DESCRIPTION\",\n\t\t\taccessor: \"description\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"CONTENT\",\n\t\t\taccessor: \"content\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"MOBILE_IMAGE\",\n\t\t\taccessor: \"mobileImage\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{!stringIsNullOrEmpty(row.original.mobileImage) ? (\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\"\"\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetLanguageDetailId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetLanguageDetailModalVisibility(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tlet _tableColumns3 = [\n\t\t{\n\t\t\tHeader: \"LANGUAGE\",\n\t\t\taccessor: \"languageName\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TITLE\",\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: \"TITLE_IMAGE\",\n\t\t\taccessor: \"mobileImage\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{!stringIsNullOrEmpty(row.original.mobileImage) ? (\n\t\t\t\t\t\t\n\t\t\t\t\t) : (\n\t\t\t\t\t\t\"\"\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\t\tsetLanguageDetailId(row.original.id);\n\t\t\t\t\t\t\t\t\tsetLanguageDetailModalVisibility(true);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\t/// \n\t/// Author : -\n\t/// \n\tuseEffect(() => {\n\t\tgetConfigLanguage();\n\t\t/// Used to Exclude the column of table\n\t\tif (_EXCLUDE_CONTENT_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(2, 2);\n\t\t} else if (_EXCLUDE_TITLE_TYPE.includes(props.type)) {\n\t\t\t_tableColumns.splice(1, 1);\n\t\t}\n\n\t\tif (ContentTypeString._DEPOSIT_PROMOTION.includes(props.type)) {\n\t\t\tsetTableColumns(_tableColumns2);\n\t\t} else {\n\t\t\tsetTableColumns(_tableColumns);\n\t\t}\n\n\t\tif (ContentTypeString._DEPOSIT_PROMOTION_CATEGORY.includes(props.type)) {\n\t\t\tsetTableColumns(_tableColumns3);\n\t\t} else {\n\t\t\tsetTableColumns(_tableColumns);\n\t\t}\n\t}, []);\n\n\t/// \n\t/// Author : -\n\t/// \n\tconst getConfigLanguage = async () => {\n\t\tawait fetch(\n\t\t\tApiUrl._API_GET_CONFIG_LANGUAGE_BY_TYPE_ID +\n\t\t\t\t\"?type=\" +\n\t\t\t\tprops.type +\n\t\t\t\t\"&id=\" +\n\t\t\t\tprops.id,\n\t\t\t{\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t}\n\t\t)\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t\t {\n\t\t\t\t\t\tsetLanguageDetailModalVisibility(false);\n\t\t\t\t\t\tgetConfigLanguage();\n\t\t\t\t\t}}\n\t\t\t\t\tdataTypeId={props.id}\n\t\t\t\t\tlanguageDetailId={languageDetailId}\n\t\t\t\t\tlanguageType={props.type}\n\t\t\t\t/>\n\t\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t {\n\t\t\t\t\t\t\tsetLanguageDetailId(\"\");\n\t\t\t\t\t\t\tsetLanguageDetailModalVisibility(true);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tclassName=\"btn btn-purple\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{t(\"ADD_LANGUAGE\")}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default ManageConfigurationLanguage;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"./../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton\";\nimport {\n ApiKey,\n ApiUrl,\n DisplayMode,\n LanguageKey,\n ContentTypeString,\n AllVipOption,\n} from \"../../util/Constant\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport ManageChatSystemTemplateLanguage from \"./ManageChatSystemTemplateLanguage\";\nimport { TabContent, TabPane, Nav, NavItem, NavLink } from \"reactstrap\";\nimport classnames from \"classnames\";\nimport { fetch } from \"whatwg-fetch\";\n\n/// \n/// Author : -\n/// \n\nconst ChatSystemTemplate = (props) => {\n const _DETAIL_TAB = \"1\";\n const _LANGUAGE_TAB = \"2\";\n const { t } = useTranslation(LanguageKey._PRIMARY);\n let _history = useHistory();\n const _location = useLocation();\n const _dispatch = useDispatch();\n const { register, unregister, handleSubmit, errors, setValue } = useForm();\n const [announcementId, setAnnouncementId] = useState(\"\");\n const [announcementRefId, setAnnouncementRefId] = useState(\"\");\n const [languageOption, setLanguageOption] = useState([]);\n\n const [defaultContent, setDefaultContent] = useState(\"\");\n const [content, setContent] = useState([]);\n const [title, setTitle] = useState(\"\");\n const [code, setCode] = useState(\"\");\n\n const [language, setLanguage] = useState();\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n setTitle(\"\");\n init();\n }, []);\n\n const [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n /// \n /// Author : -\n /// \n const toggle = (tab) => {\n if (activeTab !== tab) {\n setActiveTab(tab);\n }\n };\n\n /// \n /// Author : -\n /// \n async function init() {\n console.log(_location.state)\n if (_location.state) {\n let templateCode = _location.state.code;\n var apiUrl = ApiUrl._API_GET_CHAT_TEMPLATE_CODE;\n apiUrl += \"?code=\" + templateCode;\n await fetch(apiUrl, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n setDefaultContent(responseJson[ApiKey._API_DATA_KEY][\"defaultContent\"]);\n setTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n setContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n setCode(responseJson[ApiKey._API_DATA_KEY][\"code\"]);\n\n fetch(ApiUrl._API_GET_LANGUAGE, {\n method: ApiKey._API_GET,\n headers: {\n \"Content-Type\": ApiKey._API_FORM_URLENCODED,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n })\n .then((response) => response.json())\n .then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n const languageList = [];\n responseJson[ApiKey._API_DATA_KEY].forEach(function (language) {\n languageList.push({ label: language.name, value: language.id });\n });\n\n setLanguageOption(languageList);\n }\n });\n\n }\n });\n }\n }\n\n /// \n /// Author : -\n /// \n const submitForm = async (data, e) => {\n\n if (!_location.state) {\n\n _dispatch(\n showMessage(\n 0,\n \"Error\"\n )\n );\n\n return false;\n }\n\n _dispatch(setBusy());\n\n fetch(ApiUrl._API_CREATE_OR_UPDATE_CHAT_SYSTEM_TEMPLATE, {\n method: ApiKey._API_POST,\n headers: {\n \"Content-Type\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n },\n body: JSON.stringify({\n code: _location.state.code,\n content: data.content,\n }),\n })\n .then((response) => response.json())\n .then((responseJson) => {\n _dispatch(setIdle());\n _dispatch(\n showMessage(\n responseJson[ApiKey._API_SUCCESS_KEY],\n t(responseJson[ApiKey._API_MESSAGE_KEY])\n )\n );\n\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n _history.goBack();\n }\n });\n };\n\n return (\n
    \n

    \n
    \n \n Edit Chat System Template\n
    \n
    \n

    \n \n \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n \n
    \n \n {errors.title && (\n
    \n {t(errors.title.message)}\n
    \n )}\n
    \n
    \n
    \n
    \n
    \n \n
    \n \n
    \n
    \n
    \n
    \n
    \n {languageOption.map((lang, index) => (\n
    \n
    \n
    \n \n
    \n item.id === lang.value)?.content || \"\"}\n onChange={(e) => {\n var templang = { ...language };\n templang[lang.value] = e.target.value\n setLanguage(templang);\n setValue(`content['l${lang.value}']`, e.target.value.toString()); // Making setValue dynamic\n }}\n >\n {errors[`content['l${lang.value}']`] && (\n
    \n {t(errors[`content['l${lang.value}']`].message)}\n
    \n )}\n
    \n
    \n
    \n
    \n ))}\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n
    \n \n {announcementId && (\n
    \n
    \n \n
    \n
    \n )}\n
    \n
    \n
    \n );\n};\n\nexport default ChatSystemTemplate;\n","import React, { useState, useEffect } from \"react\";\nimport ReactTable from \"../../components/constantComponent/reactTable/ReactTable.js\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport { navigateTo } from \"../../util/Util.js\";\nimport {\n\tApiUrl,\n\tApiKey,\n\tWebUrl,\n\tAccessRight,\n\tLanguageKey,\n} from \"../../util/Constant.js\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton.jsx\";\nimport { checkIfPermissionExist } from \"../../util/PermissionChecker.js\";\nimport { useTranslation } from \"react-i18next\";\nimport { fetch } from \"whatwg-fetch\";\n\nconst CustomChatTemplate = (props) => {\n\tlet _history = useHistory();\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tconst [contentData, setContentData] = useState([]);\n\n\tlet _tableColumns = [\n\t\t{\n\t\t\tHeader: t(\"TITLE\"),\n\t\t\taccessor: \"title\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"CONTENT\"),\n\t\t\taccessor: \"content\",\n\t\t\tdisableSortBy: true,\n\t\t},\n\t\t{\n\t\t\tHeader: t(\"STATUS\"),\n\t\t\taccessor: \"status\",\n\t\t\tdisableSortBy: true,\n\t\t\tCell: ({ row }) => (\n\t\t\t\t
    \n\t\t\t\t\t{row.original.status == true ? (\n\t\t\t\t\t\t{t(\"ACTIVE\")}\n\t\t\t\t\t) : (\n\t\t\t\t\t\t{t(\"INACTIVE\")}\n\t\t\t\t\t)}\n\t\t\t\t
    \n\t\t\t),\n\t\t},\n\t\t{\n\t\t\tid: \"action\",\n\t\t\tHeader: \"\",\n\t\t\tCell: ({ row }) =>\n\t\t\t\tcheckIfPermissionExist(\n\t\t\t\t\tAccessRight._LIVE_CHAT_CUSTOM_TEMPLATE_PERMISSION,\n\t\t\t\t\ttrue\n\t\t\t\t) && (\n\t\t\t\t\t
    \n\t\t\t\t\t\t {\n\t\t\t\t\t\t\t\tnavigateTo(\n\t\t\t\t\t\t\t\t\t_history,\n\t\t\t\t\t\t\t\t\tWebUrl._URL_MANAGE_CUSTOM_CHAT_TEMPLATE,\n\t\t\t\t\t\t\t\t\trow.original\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{t(\"EDIT\")}\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t),\n\t\t\tdisableSortBy: true,\n\t\t\tdisableFilters: true,\n\t\t\twidth: 100,\n\t\t\tstyle: { overflow: \"visible\" },\n\t\t},\n\t];\n\n\tuseEffect(() => {\n\t\tfetch(ApiUrl._API_GET_CUSTOM_CHAT_TEMPLATE + \"?all=true\", {\n\t\t\tmethod: ApiKey._API_GET,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\tsetContentData(responseJson[ApiKey._API_DATA_KEY]);\n\t\t\t\t}\n\t\t\t});\n\t}, []);\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t
    \n\t\t\t\t\t{t(\"CHAT_CUSTOM_TEMPLATE\")}\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n};\n\nexport default CustomChatTemplate;\n","import React, { useState, useEffect } from \"react\";\nimport { Panel, PanelBody } from \"../../components/panel/panel.jsx\";\nimport { useHistory } from \"react-router-dom\";\nimport Select from \"react-select\";\nimport NavigationButton from \"../../components/constantComponent/button/NavigationButton.jsx\";\nimport {\n\tApiKey,\n\tApiUrl,\n\tLanguageKey,\n} from \"../../util/Constant.js\";\nimport { useForm } from \"react-hook-form\";\nimport { useLocation } from \"react-router-dom\";\nimport { stringIsNullOrEmpty, createFormBody } from \"../../util/Util.js\";\nimport { setBusy, setIdle, showMessage } from \"../../redux/AppAction.js\";\nimport { useDispatch } from \"react-redux\";\nimport { useTranslation } from \"react-i18next\";\nimport { TabContent, TabPane } from \"reactstrap\";\nimport { fetch } from \"whatwg-fetch\";\n\nconst ManageCustomChatTemplate = (props) => {\n\tconst _DETAIL_TAB = \"1\";\n\tconst { t } = useTranslation(LanguageKey._PRIMARY);\n\tlet _history = useHistory();\n\tconst _location = useLocation();\n\tconst _dispatch = useDispatch();\n\tconst { register, unregister, handleSubmit, errors, setValue } = useForm();\n\tconst [content, setContent] = useState([]);\n\tconst [title, setTitle] = useState(\"\");\n\tconst [code, setCode] = useState(\"\");\n\tconst [status, setStatus] = useState(true);\n\n\tuseEffect(() => {\n\t\tsetTitle(\"\");\n\t\tinit();\n\t}, []);\n\n\tconst [activeTab, setActiveTab] = useState(_DETAIL_TAB);\n\n\tconst toggle = (tab) => {\n\t\tif (activeTab !== tab) {\n\t\t\tsetActiveTab(tab);\n\t\t}\n\t};\n\n\tasync function init() {\n\t\tif (_location.state) {\n\t\t\tlet templateCode = _location.state.code;\n\t\t\tvar apiUrl = ApiUrl._API_GET_CUSTOM_CHAT_TEMPLATE_CODE;\n\t\t\tapiUrl += \"?code=\" + templateCode;\n\t\t\tawait fetch(apiUrl, {\n\t\t\t\tmethod: ApiKey._API_GET,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": ApiKey._API_FORM_URLENCODED,\n\t\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t\t},\n\t\t\t})\n\t\t\t\t.then((response) => response.json())\n\t\t\t\t.then((responseJson) => {\n\t\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t\tsetTitle(responseJson[ApiKey._API_DATA_KEY][\"title\"]);\n\t\t\t\t\t\tsetContent(responseJson[ApiKey._API_DATA_KEY][\"content\"]);\n\t\t\t\t\t\tsetCode(responseJson[ApiKey._API_DATA_KEY][\"code\"]);\n\t\t\t\t\t\tsetStatus(responseJson[ApiKey._API_DATA_KEY][\"status\"]);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t}\n\n\tconst submitForm = async (data, e) => {\n\t\t_dispatch(setBusy());\n\n\t\tlet params = {\n\t\t\ttitle: String(data.title),\n\t\t\tcontent: String(data.content),\n\t\t\tstatus: Boolean(data.status),\n\t\t};\n\n\t\tif (!stringIsNullOrEmpty(code)) {\n\t\t\tparams[\"code\"] = code;\n\t\t}\n\n\t\tfetch(ApiUrl._API_CREATE_OR_UPDATE_CUSTOM_CHAT_TEMPLATE, {\n\t\t\tmethod: ApiKey._API_POST,\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": ApiKey._API_APPLICATION_JSON,\n\t\t\t\t\"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY,\n\t\t\t},\n\t\t\tbody: JSON.stringify(params),\n\t\t})\n\t\t\t.then((response) => response.json())\n\t\t\t.then((responseJson) => {\n\t\t\t\t_dispatch(setIdle());\n\t\t\t\t_dispatch(\n\t\t\t\t\tshowMessage(\n\t\t\t\t\t\tresponseJson[ApiKey._API_SUCCESS_KEY],\n\t\t\t\t\t\tt(responseJson[ApiKey._API_MESSAGE_KEY])\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\tif (responseJson[ApiKey._API_SUCCESS_KEY]) {\n\t\t\t\t\t_history.goBack();\n\t\t\t\t}\n\t\t\t});\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t{_location.state ? t(\"EDIT\") : t(\"ADD\")} {t(\"CHAT_CUSTOM_TEMPLATE\")}\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t

    \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{errors.title && (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(errors.title.message)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t setContent(e.target.value)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t setStatus(e.target.checked)}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue={true}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tchecked={status}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref={register}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{t(\"SAVE\")}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t
    \n\t);\n};\n\nexport default ManageCustomChatTemplate;\n","/// \nimport React from 'react';\nimport { Redirect } from 'react-router';\nimport { WebUrl, AccessRight, LoginType } from \"../util/Constant\";\n\n//Login\nimport Login from './../pages/home/Login';\n\nimport FAQHelp from './../pages/home/FAQHelp';\n\nimport Dashboard from './../pages/home/Dashboard.js';\nimport SuperAccount from './../pages/admin/SuperAccount.js';\nimport Company from './../pages/admin/ManageCompany.js';\nimport MemberDetail from './../pages/account/MemberDetail.js';\nimport ManageMember from './../pages/account/ManageMember.js';\nimport ManageMember2 from './../pages/account/ManageMember2.js';\nimport ManageMemberPO from './../pages/account/ManageMemberPO';\nimport ManageMemberCS from './../pages/account/ManageMemberCS';\n\nimport ChatRoom from './../pages/chat/chatroom.js';\nimport ChatTemplate from './../pages/chat/template.js';\n\nimport LiveMonitor from './../pages/home/LiveMonitor.js';\nimport RewardsSetting from './../pages/rewards/RewardsSetting.js';\nimport RewardsSchedule from './../pages/rewards/RewardsSchedule.js';\nimport ClaimedRewardsReport from './../pages/rewards/ClaimedRewardsReport';\nimport ForfeitedRewardsReport from './../pages/rewards/ForfeitedRewardsReport';\nimport SportsLiveMonitor from './../pages/home/SportsLiveMonitor.js';\nimport SportsTeamBetReport from './../pages/home/SportsTeamBetReport';\n\nimport ManageMemberProductUsername from './../pages/account/ManageMemberProductUsername.js';\nimport ManageMemberFullname from './../pages/report/ManageMemberFullname.js';\n\nimport WalletBalance from './../pages/account/WalletBalance.js';\nimport RollOverStatement from './../pages/account/RollOverStatement.js';\nimport ShareholdersList from './../pages/account/ShareholdersList.js';\nimport ShareholdersViewAccount from './../pages/account/ShareholdersViewAccount.js';\nimport ShareholdersProductList from './../pages/account/ShareholdersProductList.js';\nimport ShareholdersViewProduct from './../pages/account/ShareholdersViewProduct.js';\nimport ShareholdersViewPayout from './../pages/account/ShareholdersViewPayout.js';\nimport ShareholdersHuatTicket from './../pages/account/ShareholdersHuatTicket.js';\nimport ShareholdersViewHuatTicket from './../pages/account/ShareholdersViewHuatTicket.js';\nimport ShareholdersProcessSales from './../pages/account/ShareholdersProcessSales.js';\nimport TodayNewMembers from './../pages/account/TodayNewMembers.js';\nimport TransferLog from './../pages/account/TransferLog';\n\nimport MemberProductMaintenance from './../pages/account/MemberProductMaintenance.js';\nimport CompanyDetail from './../pages/admin/CompanyDetail.js';\nimport ManageRole from './../pages/admin/ManageRole.js';\nimport RoleDetail from './../pages/admin/RoleDetail.js';\nimport ChangePassword from './../pages/admin/ChangePassword.js';\nimport ChangePinNumber from './../pages/admin/ChangePinNumber.js';\nimport ManageSubAccount from './../pages/admin/ManageSubAccount.js';\nimport SubAccountDetail from './../pages/admin/SubAccountDetail.js';\nimport CompanyProductMaintenance from './../pages/admin/CompanyProductMaintenance';\nimport CompanyProductApiInfo from './../pages/admin/CompanyProductApiInfo';\nimport CompanyProductAccountInfo from './../pages/admin/CompanyProductAccountInfo';\nimport ActivityLog from './../pages/admin/ManageActivityLog';\nimport ViewAccount from './../pages/account/ViewAccount.js';\nimport ViewProductAccount from './../pages/account/ViewProductAccount.js';\nimport ManageIpBlock from './../pages/account/ManageIpBlock';\nimport TransactionQueue from './../pages/account/TransactionQueue.js';\nimport ManageMobileTAC from './../pages/account/ManageMobileTAC.js';\nimport ManageBirthdayRewards from './../pages/account/ManageMemberBirthdayReward.js';\nimport ManageMemberWeeklyRescue from '../pages/account/ManageMemberWeeklyRescue.js';\n\n\nimport ManageMemberRebate from './../pages/account/ManageMemberRebate.js';\nimport ClaimedPromotionDetails from './../pages/account/ClaimedPromotionDetail';\n//Product\nimport MasterProductDetail from './../pages/product/MasterProductDetail';\nimport ManageMasterProduct from './../pages//product/ManageMasterProduct.js';\nimport ProductMaintenance from './../pages/product/ProductMaintenance';\nimport ProductCategoryDetail from './../pages/product/ProductCategoryDetail';\nimport ManageProductCategory from './../pages/product/ManageProductCategory';\nimport AccountProductGameDetail from './../pages/product/AccountProductGameDetail';\nimport ManageAccountProductGame from './../pages/product/ManageAccountProductGame';\nimport Manage568WinBetLimit from './../pages/product/Manage568WinBetLimit';\n\nimport RetrieveMemberBetData from './../pages/product/RetrieveMemberBetData';\n\n//Bank\nimport ManageBank from './../pages/configuration/bank/ManageBank.js';\nimport BankDetail from './../pages/configuration/bank/BankDetail.js';\n\n//Bank Account\nimport ManageBankAccount from './../pages/configuration/bank/ManageBankAccount.js';\nimport BankAccountDetail from './../pages/configuration/bank/BankAccountDetail.js';\n\n//Product Setting\nimport ManageProductSetting from './../pages/product/ManageProductSetting.js';\nimport ProductSettingDetail from './../pages/product/ProductSettingDetail.js';\n\n//language\nimport ManageLanguage from './../pages/configuration/ManageLanguage.js';\nimport LanguageDetail from './../pages/configuration/LanguageDetail.js';\n\n//banking channel\nimport ManageBankingChannel from './../pages/configuration/bank/ManageBankingChannel.js';\nimport BankingChannelDetail from './../pages/configuration/bank/BankingChannelDetail.js';\n\n//Bonus Type\nimport ManageBonusType from './../pages/configuration/bonus/ManageBonusType.js';\nimport BonusTypeDetail from './../pages/configuration/bonus/BonusTypeDetail.js';\n\n//Configuration\nimport ManageInstantPaySetting from './../pages/configuration/ManageInstantPaySetting'\nimport InstantPaySettingDetail from './../pages/configuration/InstantPaySettingDetail'\nimport RejectReasonDetail from './../pages/configuration/RejectReasonDetail'\nimport ManageRejectReason from './../pages/configuration/ManageRejectReason'\nimport SmsContentDetail from './../pages/configuration/sms/SmsContentDetail'\nimport ManageSmsContent from './../pages/configuration/sms/ManageSmsContent'\nimport SmsSettings from './../pages/configuration/sms/SmsSettings'\nimport ManageAnnouncement from './../pages/configuration/ManageAnnouncement'\nimport AnnouncementDetail from './../pages/configuration/AnnouncementDetail'\nimport ManageBanner from './../pages/configuration/ManageBanner'\nimport BannerDetail from './../pages/configuration/BannerDetail'\nimport ManageRewardBanner from './../pages/configuration/ManageRewardBanner'\nimport RewardBannerDetail from './../pages/configuration/RewardBannerDetail'\nimport ManagePromotion from './../pages/configuration/ManagePromotion'\nimport PromotionDetail from './../pages/configuration/PromotionDetail'\nimport ManageScript from './../pages/configuration/ManageScript'\nimport ScriptDetail from './../pages/configuration/ScriptDetail'\nimport ManageEmail from './../pages/configuration/ManageEmail'\nimport EmailDetail from './../pages/configuration/EmailDetail'\nimport ManageContent from './../pages/configuration/ManageContent'\nimport ContentDetail from './../pages/configuration/ContentDetail'\nimport VipLevel from './../pages/configuration/ManageVipLevel'\nimport VipLevelDetail from './../pages/configuration/VipLevelDetail'\nimport Remark from './../pages/configuration/ManageRemark'\nimport RemarkDetail from './../pages/configuration/RemarkDetail'\nimport Tag from './../pages/configuration/ManageTag'\nimport TagDetail from './../pages/configuration/TagDetail'\nimport BankPackage from './../pages/configuration/bank/ManageBankPackage'\nimport BankPackageDetail from './../pages/configuration/bank/BankPackageDetail'\nimport DefaultBetSetting from './../pages/defaultBetSetting/ManageBetSetting'\nimport ManageContactUs from './../pages/configuration/ManageContactUs'\nimport ContactUsDetail from './../pages/configuration/ContactUsDetail'\nimport ManageVipBenefit from './../pages/configuration/ManageVipBenefit'\nimport VipBenefitDetail from './../pages/configuration/VipBenefitDetail'\nimport ManageVipBenefitContent from './../pages/configuration/ManageVipBenefitContent'\nimport VipBenefitContentDetail from './../pages/configuration/VipBenefitContentDetail'\nimport ManageCommunication from './../pages/configuration/ManageCommunicationChannels'\nimport CommunicationChannelDetail from './../pages/configuration/CommunicationChannelDetail'\nimport ManageSystemSetting from '../pages/configuration/ManageSystemSetting'\nimport ManageRecurringJob from '../pages/configuration/ManageRecurringJob'\nimport ManageManualJob from '../pages/configuration/ManageManualJob'\nimport WebContent from '../pages/configuration/WebContent'\nimport ManageWebContent from '../pages/configuration/ManageWebContent'\nimport ManageDepositPromotion from '../pages/configuration/ManageDepositPromotion'\nimport DepositPromotionDetail from '../pages/configuration/DepositPromotionDetail'\nimport MarqueeTagContent from '../pages/configuration/ManageMarqueeTagContent'\n\nimport ManageSkinSettings from './../pages/configuration/ManageSkinSettings'\nimport SkinSettingsDetail from './../pages/configuration/SkinSettingsDetail'\n\nimport ManageGame from './../pages/product/ManageGame.js'\nimport GameDetail from './../pages/product/GameDetail.js'\n\nimport ManageWeeklyRescue from '../pages/configuration/ManageWeeklyRescue.js'\nimport WeeklyRescueDetail from '../pages/configuration/WeeklyRescueDetail.js'\n\n//bonus\nimport ManageBonus from './../pages/configuration/bonus/ManageBonus'\nimport BonusDetail from './../pages/configuration/bonus/BonusDetail'\n\n//Transaction\nimport Withdrawal from './../pages/transaction/Withdrawal.js';\nimport Deposit from './../pages/transaction/Deposit.js';\nimport Adjustment from './../pages/transaction/Adjustment.js';\nimport Bonus from './../pages/transaction/Bonus.js';\nimport TransactionEnquiry from './../pages/transaction/TransactionEnquiry.js';\nimport InstantTransaction from './../pages/transaction/InstantTransaction.js';\nimport TransactionDetail from './../pages/transaction/TransactionDetail.js';\nimport CommissionAdjustment from './../pages/adjustment/CommissionAdjustment.js';\nimport BonusAdjustment from './../pages/adjustment/BonusAdjustment.js';\nimport TnGSettings from './../pages/transaction/TnGSettings.js';\nimport WithdrawalSettings from './../pages/transaction/WithdrawalSettings.js';\nimport AdjustmentBonusWallet from './../pages/transaction/AdjustmentBonusWallet.js';\n\n//Report\nimport ProfitLossReport from './../pages/report/ManageProfitLossReport.js';\nimport BetDetailReport from './../pages/report/ManageBetDetailReport.js';\nimport DailySummaryReport from './../pages/report/ManageDailySummaryReport.js';\nimport ChannelSummaryReport from './../pages/report/ManageChannelSummaryReport.js';\nimport BankSummaryReport from './../pages/report/ManageBankSummaryReport.js';\nimport MemberReport from './../pages/report/ManageMemberReport.js';\nimport ManageWinLossReport from './../pages/report/ManageWinLossReport';\nimport ManageTallyWinLossReport from './../pages/report/ManageTallyWinLossReport';\nimport ManageWinLossReport2 from './../pages/report/ManageWinLossReport2';\nimport ManageWinLossReport3 from './../pages/report/ManageWinLossReport3';\nimport ManageBonusCommReport from './../pages/report/ManageBonusCommReport';\nimport ManageWalletTransferReport from './../pages/report/ManageWalletTransfer';\nimport ServiceChargeReport from './../pages/report/ServiceChargeReport';\nimport TransactionReport from './../pages/report/TransactionReport';\nimport WalletTransferReport from './../pages/report/WalletTransferReport';\nimport AdjustmentReport from './../pages/report/AdjustmentReport';\nimport ReferralReport from '../pages/report/ReferralReport.js';\nimport ReferralReportDetails from '../pages/report/ReferralReportDetails.js';\n\nimport ShareholderProcessSalesReport from './../pages/report/ShareholderProcessSalesReport';\nimport ShareholderDownlineReport from './../pages/report/ShareholderDownlineReport';\n\nimport ProcessGameRecordReport from './../pages/report/ProcessGameRecordReport';\nimport NonProcessGameRecordReport from './../pages/report/NonProcessGameRecordReport';\n\nimport ShareholderUnclaimReport from './../pages/report/ShareholderUnclaimReport';\nimport ShareholderUnclaimReportList from './../pages/report/ShareholderUnclaimReportList';\nimport CommissionReportList from './../pages/report/CommissionReportList';\n\nimport TotalSharePayoutReport from './../pages/report/TotalSharePayoutReport';\n\nimport UsernameBetDetailReport from './../pages/report/UsernameBetDetailReport';\nimport TransactionSummaryReport from './../pages/report/TransactionSummaryReport';\nimport BirthdayRewardReport from './../pages/report/BirthdayRewardReport';\nimport GiftpaceReport from './../pages/report/GiftpaceReport';\nimport ActiveMemberReport from './../pages/report/ActiveMemberReport';\n\n//Tool\nimport ManageIPMonitor from './../pages/ipMonitor/ManageIPMonitor';\n\nimport Maintenance from './../pages/home/Maintenance';\nimport ManageWalletHistory from '../pages/account/ManageWalletHistory';\n\n\nimport ManageVideoTutorial from './../pages/configuration/ManageVideoTutorial';\nimport VideoTutorialDetail from './../pages/configuration/VideoTutorialDetail';\n\nimport ManageWalletRecon from '../pages/account/ManageWalletRecon';\nimport DepositReference from '../pages/transaction/DepositReference';\nimport MarqueeTagContentDetail from '../pages/configuration/MarqueeTagContentDeatail';\n\n// Daily Check In\nimport ManageDCItemList from '../pages/dc/ManageDCItemList';\nimport ManageDCRedemption from '../pages/dc/ManageDCRedemption';\nimport DCItemDetail from '../pages/dc/DCItemDetail';\nimport ManageDCPoints from '../pages/dc/ManageDCPoints';\nimport DCPointDetails from '../pages/dc/DCPointDetail';\nimport ManageMemberDCPoints from '../pages/dc/ManageMemberDCPoints';\nimport MemberDCPointsDetail from '../pages/dc/MemberDCPointsDetail';\nimport ManageDailyCheckIn from '../pages/dc/ManageDailyCheckIn.js'\nimport DailyCheckInDetail from '../pages/dc/DailyCheckInDetail.js'\nimport ManageMemberGamePoints from '../pages/account/ManageMemberGamePoints';\nimport PointsAdjustment from './../pages/adjustment/PointsAdjustment.js';\nimport PointsAdjustmentReport from './../pages/report/PointsAdjustmentReport.js';\nimport MemberPointsReport from './../pages/report/MemberPointsReport.js';\n\n//Deposit Promotion Category\nimport ManageDepositPromotionCategory from '../pages/configuration/ManageDepositPromotionCategory'\nimport DepositPromotionCategoryDetail from '../pages/configuration/DepositPromotionCategoryDetail'\nimport CreditRedemptionReport from '../pages/report/CreditRedemptionReport.js';\nimport ReferralBonusReport from '../pages/report/ReferralBonusReport.js';\nimport ManageBonusDeposit from '../pages/transaction/ManageBonusDeposit';\nimport BonusDepositDetail from '../pages/transaction/BonusDepositDetail';\nimport PlayerReconciliation from '../pages/home/PlayerReconciliation';\n\n//Chat Sphere\nimport ManageChatSphere from '../pages/configuration/ManageChatSphere';\nimport ManageChatSphereType from '../pages/configuration/ManageChatSphereType';\nimport ChatSphereTypeDetail from '../pages/configuration/ChatSphereTypeDetail';\nimport ChatSphereContentDetail from '../pages/configuration/ChatSphereDetail';\nimport ManageChatSpherePhoneNumber from '../pages/configuration/ManageChatSpherePhoneNumber';\nimport ChatSpherePhoneNumberDetail from '../pages/configuration/ChatSpherePhoneNumberDetail';\n\nimport ManageMemberBankAccount from './../pages/account/ManageMemberBankAccount.js';\nimport MemberBankAccountDetail from './../pages/account/MemberBankAccountDetail.js';\n\nimport ManageProductRanking from './../pages/product/CustomProductRanking.js';\nimport CustomGamesRanking from './../pages/product/CustomGamesRanking.js';\nimport GameList from './../pages/product/GameList.js';\n\nimport ManageMLMCommission from '../pages/account/ManageMLMCommission';\n\nimport ManageChatSystemTemplate from './../pages/chat/ManageChatSystemTemplate.js';\nimport CustomChatTemplate from './../pages/chat/CustomChatTemplate.js';\nimport ManageCustomChatTemplate from './../pages/chat/ManageCustomChatTemplate.js';\n\n/// \n/// Author : -\n/// \nexport const loginRoute =\n{\n path: '/',\n exact: false,\n authRequired: false,\n component: () => \n}\n\n/// \n/// Author : -\n/// \nexport const routes = [\n {\n path: WebUrl._URL_LOGIN,\n exact: true,\n title: 'LOGIN',\n authRequired: false,\n component: () => \n },\n {\n path: WebUrl._URL_MAIN,\n exact: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_MAIN,\n exact: true,\n loginType: [LoginType._LOGIN_TYPE_MEMBER],\n component: () => \n },\n {\n path: WebUrl._URL_DASHBOARD,\n exact: true,\n title: 'DASHBOARD',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_SUPER_ACCOUNT,\n title: 'SUPER_ACCOUNT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SUPER_COMPANY_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_COMPANY_PROFILE,\n title: 'PROFILE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_COMPANY,\n title: 'COMPANIES',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._COMPANY_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_EDIT_COMPANY,\n title: 'COMPANY_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._COMPANY_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_MEMBER,\n title: 'MEMBER_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MEMBER,\n title: 'MANAGE_MEMBER',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CHAT_ROOM,\n title: 'CHATROOM',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._LIVE_CHAT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CHAT_SYSTEM_TEMPLATE,\n title: 'CHATTEMPLATE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MEMBER_PRORUCT_MAINTENANCE,\n title: 'MANAGE_MEMBER_PRODUCT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_BANK,\n title: 'MANAGE_BANK',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANK_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_EDIT_BANK,\n title: 'BANK_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANK_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_LANGUAGE,\n title: 'MANAGE_LANGUAGE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._LANGUAGE_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_LANGUAGE,\n title: 'LANGUAGE_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._LANGUAGE_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BANKING_CHANNEL,\n title: 'MANAGE_BANKING_CHANNEL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANKING_CHANNEL_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_BANKING_CHANNEL,\n title: 'BANKING_CHANNEL_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANKING_CHANNEL_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BONUS_TYPE,\n title: 'MANAGE_BONUS_TYPE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BONUS_TYPE_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_BONUS_TYPE,\n title: 'BONUS_TYPE_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BONUS_TYPE_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BANK_ACCOUNT,\n title: 'MANAGE_BANK_ACCOUNT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANK_ACCOUNT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_BANK_ACCOUNT,\n title: 'BANK_ACCOUNT_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANK_ACCOUNT_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_ROLE,\n title: 'MANAGE_ROLE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SUB_ACCOUNT_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_ROLE,\n title: 'ROLE_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SUB_ACCOUNT_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_SUB_ACCOUNT,\n title: 'MANAGE_SUB_ACCOUNT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SUB_ACCOUNT_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_SUB_ACCOUNT,\n title: 'SUB_ACCOUNT_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SUB_ACCOUNT_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CHANGE_PASSWORD,\n title: 'CHANGE_PASSWORD',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_CHANGE_PIN_NUMBER,\n title: 'CHANGE_PIN_NUMBER',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_MASTER_PRODUCT,\n title: 'MASTER_PRODUCTS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MASTER_PRODUCT_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_MASTER_PRODUCT,\n title: 'MASTER_PRODUCT_DETAIL',\n permission: AccessRight._MASTER_PRODUCT_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_PRODUCT_GAME,\n title: 'PRODUCTS_GAME',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MASTER_PRODUCT_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_GAME,\n title: 'PRODUCTS_GAME_DETAIL',\n permission: AccessRight._MASTER_PRODUCT_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_INSTANT_PAY_SETTING,\n title: 'MANAGE_INSTANT_PAY_SETTINGS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._INSTANT_PAY_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_INSTANT_PAY_SETTING,\n title: 'INSTANT_PAY_SETTINGS_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._INSTANT_PAY_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_WITHDRAWAL,\n title: 'WITHDRAWAL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._WITHDRAWAL_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_DEPOSIT,\n title: 'DEPOSIT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DEPOSIT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_ADJUSTMENT,\n title: 'ADJUSTMENT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BONUS,\n title: 'BONUS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BONUS_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TRANSACTION_ENQUIRY,\n title: 'TRANSACTION_ENQUIRY',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._TRANSACTION_ENQUIRY_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_INSTANT_TRANSFER,\n title: 'INSTANT_TRANSACTION',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._INSTANT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_REJECT_REASON,\n title: 'MANAGE_REJECT_REASON',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REJECT_REASON_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_REJECT_REASON,\n title: 'MANAGE_REJECT_REASON',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REJECT_REASON_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_SMS_CONTENT,\n title: 'MANAGE_SMS_CONTENT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SMS_CONTENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_SMS_CONTENT,\n title: 'SMS_CONTENT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SMS_CONTENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SMS_SETTING,\n title: 'SMS_SETTINGS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SMS_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_WEB_CONTENT,\n title: 'WEB_CONTENTS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._WEB_CONTENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_WEB_CONTENT,\n title: 'MANAGE_WEB_CONTENTS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_WEB_CONTENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MARQUEE_TAG_CONTENT,\n title: 'MANAGE_MARQUEE_TAG_CONTENT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MARQUEE_TAG_CONTENT + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MARQUEE_TAG_CONTENT_DETAIL,\n title: 'MANAGE_MARQUEE_TAG_CONTENT_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MARQUEE_TAG_CONTENT + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_ANNOUNCEMENT,\n title: 'ANNOUNCEMENTS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._ANNOUNCEMENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_ANNOUNCEMENT,\n title: 'ANNOUNCEMENT_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._ANNOUNCEMENT_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BANNER,\n title: 'BANNERS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANNER_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_BANNER,\n title: 'BANNER_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANNER_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_REWARD_BANNER,\n title: 'REWARD_BANNERS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REWARD_BANNER_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_REWARD_BANNER,\n title: 'REWARD_BANNER_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REWARD_BANNER_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_PROMOTION,\n title: 'PROMOTIONS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PROMOTION_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_PROMOTION,\n title: 'PROMOTION_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PROMOTION_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SEO,\n title: 'SEO',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SEO_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_SEO,\n title: 'SEO_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SEO_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SCRIPT,\n title: 'SCRIPT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SCRIPT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_SCRIPT,\n title: 'SCRIPT_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SCRIPT_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_EMAIL,\n title: 'EMAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._EMAIL_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_EMAIL,\n title: 'EMAIL_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._EMAIL_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CONTENT,\n title: 'CONTENT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CONTENT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_CONTENT,\n title: 'CONTENT_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CONTENT_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_VIP_LEVEL,\n title: 'VIP_LEVEL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._VIP_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_VIP_LEVEL,\n title: 'VIP_LEVEL_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._VIP_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_REMARK,\n title: 'REMARK',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REMARK_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_REMARK,\n title: 'REMARK_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REMARK_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TAG,\n title: 'TAG',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._TAG_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_TAG,\n title: 'TAG_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._TAG_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BANK_PACKAGE,\n title: 'BANK_PACKAGE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANK_PACKAGE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_BANK_PACKAGE,\n title: 'BANK_PACKAGE_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANK_PACKAGE_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_DEFAULT_BET_SETTING,\n title: 'DEFAULT_BET_SETTING',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BET_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_USER_PRODUCT,\n title: 'PRODUCT_MAINTENANCE',\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PRODUCT_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n authRequired: true,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_BONUS,\n title: 'BONUS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BONUS_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_BONUS,\n title: 'BONUS_DETAIL',\n authRequired: true, \n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BONUS_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n }, \n {\n path: WebUrl._URL_COMPANY_PRODUCT_MAINTENANCE,\n title: 'COMPANY_PRODUCT_MAINTENANCE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._COMPANY_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_COMPANY_PRODUCT_API_INFO,\n title: 'COMPANY_PRODUCT_API_INFO',\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._COMPANY_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n authRequired: true,\n component: () => \n },\n {\n path: WebUrl._URL_COMPANY_PRODUCT_ACCOUNT_INFO,\n title: 'COMPANY_PRODUCT_ACCOUNT_INFO',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_PRODUCT_CATEGORY,\n title: 'PRODUCT_CATEGORY',\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PRODUCT_CATEGORY_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n authRequired: true,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_CATEGORY,\n title: 'PRODUCT_CATEGORY_DETAIL',\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PRODUCT_CATEGORY_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n authRequired: true,\n component: () => \n },\n {\n path: WebUrl._URL_PROFIT_LOSS_REPORT,\n title: 'PROFIT_LOSS_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PROFIT_LOSS_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BET_DETAIL_REPORT,\n title: 'BET_DETAIL_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BET_DETAIL_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_USERNAME_BET_DETAIL_REPORT,\n title: 'USERNAME_BET_DETAIL_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BET_DETAIL_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_DAILY_SUMMARY_REPORT,\n title: 'DAILY_SUMMARY_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DAILY_SUMMARY_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CHANNEL_SUMMARY_REPORT,\n title: 'CHANNEL_SUMMARY_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHANNEL_SUMMARY_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BANK_SUMMARY_REPORT,\n title: 'BANK_SUMMARY_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BANK_SUMMARY_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_WIN_LOSS_REPORT,\n title: 'WINLOSS_REPORT',\n authRequired: true,\n permission: AccessRight._WINLOSS_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TALLY_WIN_LOSS_REPORT,\n title: 'TALLY_WINLOSS_REPORT',\n authRequired: true,\n permission: AccessRight._TALLY_WINLOSS_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_WIN_LOSS_REPORT2,\n title: 'WINLOSS_REPORT2',\n authRequired: true,\n permission: AccessRight._WINLOSS_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_WIN_LOSS_REPORT3,\n title: 'WINLOSS_REPORT',\n authRequired: true,\n permission: AccessRight._WINLOSS_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BONUS_COMMISSION_REPORT,\n title: 'BONUS_COMMISSION_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BONUS_COMM_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n }, \n\t{\n path: WebUrl._URL_MANAGE_WALLET_REPORT,\n title: 'WALLET_TRANSFER_REPORT',\n authRequired: true,\n permission: AccessRight._WALLET_TRANSFER_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MEMBER_REPORT,\n title: 'MEMBER_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SERVICE_CHARGE_REPORT,\n title: 'SERVICE_CHARGE_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SERVICE_CHARGE_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TRANSACTION_REPORT,\n title: 'TRANSACTION_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._TRANSACTION_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_WALLET_TRANSFER_REPORT,\n title: 'WALLET_TRANSFER_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._WALLET_TRANSFER_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_IP_MONITOR,\n title: 'IP_MONITOR',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._IP_MONITOR_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_PRODUCT_SETTING,\n title: 'PRODUCT_SETTING',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PRODUCT_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_SETTING,\n title: 'PRODUCT_SETTING_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PRODUCT_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_PRODUCT_GAME_SETTING,\n title: 'MANAGE_PRODUCTS_GAME_SETTING',\n permission: AccessRight._PRODUCT_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_PRODUCT_GAME_SETTING,\n title: 'PRODUCTS_GAME_SETTING_DETAIL',\n permission: AccessRight._PRODUCT_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_ACTIVITY_LOG,\n title: 'ACTIVITY_LOG',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._ACTIVITY_LOG_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TRANSACTION_DETAIL,\n title: 'TRANSACTION_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._TRANSACTION_ENQUIRY_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_CONTACT_US,\n title: 'CONTACT_US',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CONTACT_US_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_CONTACT_US,\n title: \"CONTACT_US_DETAIL\",\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CONTACT_US_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_VIP_BENEFIT,\n title: 'VIP_BENEFIT_TITLE',\n permission: AccessRight._VIP_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_VIP_BENEFIT,\n title: \"VIP_BENEFIT_TITLE_DETAIL\",\n permission: AccessRight._VIP_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_VIP_BENEFIT_CONTENT,\n title: 'VIP_BENEFIT_CONTENT',\n permission: AccessRight._VIP_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_VIP_BENEFIT_CONTENT,\n title: \"VIP_BENEFIT_CONTENT_DETAIL\",\n permission: AccessRight._VIP_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_VIEW_ACCOUNT,\n title: \"VIEW_ACCOUNT\",\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n //permission: AccessRight._MEMBER_CONTROL_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MAINTENANCE,\n exact: true,\n title: 'MAINTENANCE',\n authRequired: false,\n component: () => \n },\n //{\n // path: WebUrl._URL_COMMISSION_ADJUSTMENT,\n // exact: true,\n // title: 'COMMISSION_ADJUSTMENT',\n // authRequired: true,\n // loginType: [LoginType._LOGIN_TYPE_USER],\n // permission: AccessRight._COMMISSION_ADJUSTMENT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n // component: () => \n //},\n //{\n // path: WebUrl._URL_BONUS_ADJUSTMENT,\n // exact: true,\n // title: 'BONUS_ADJUSTMENT',\n // authRequired: true,\n // loginType: [LoginType._LOGIN_TYPE_USER],\n // permission: AccessRight._BONUS_ADJUSTMENT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n // component: () => \n //},\n {\n path: WebUrl._URL_ADJUSTMENT_REPORT,\n exact: true,\n title: 'ADJUSTMENT_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._ADJUSTMENT_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_COMMUNICATION,\n exact: true,\n title: 'COMMUNICATION_CHANNELS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_COMMUNICATION_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_COMMUNICATION,\n exact: true,\n title: 'CREATE_EDIT_COMMUNICATION',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_COMMUNICATION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_IP_BLOCK,\n exact: true,\n title: 'MANAGE_IP_BLOCK',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_IP_BLOCK_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_SYSTEM_SETTING,\n exact: true,\n title: 'MANAGE_SYSTEM_SETTING',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SYSTEM_SETTING_ACCESS + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_VIEW_PRODUCT_ACCOUNT,\n exact: true,\n title: 'VIEW_PRODUCT_ACCOUNT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PRODUCT_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_LIST,\n title: 'SHAREHOLDERS_LIST',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_VIEW_ACCOUNT,\n title: \"SHAREHOLDER_VIEW_ACCOUNT\",\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_PRODUCTS,\n title: \"SHAREHOLDERS_PRODUCTS\",\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_PRODUCT_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_PRODUCTS_EDIT,\n title: \"SHAREHOLDERS_PRODUCTS_EDIT\",\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_PRODUCT_SETTING_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_PROCESS_HUAT_TICKET,\n title: \"SHAREHOLDERS_PROCESS_SALES_HUAT_TICKET\",\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_ADD_HUAT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_PROCESS,\n title: \"SHAREHOLDERS_PROCESS_SALES\",\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_PROCESS_SHARE_SALES_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_PAYOUT_EDIT,\n title: \"SHAREHOLDERS_PAYOUT_EDIT\",\n exact: false,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_PROCESS_SHARE_SALES_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_HUAT_TICKET_EDIT,\n title: \"SHAREHOLDERS_HUAT_TICKET_EDIT\",\n exact: false,\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_ADD_HUAT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_REPORT,\n title: 'SHAREHOLDERS_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_DOWNLINE_REPORT,\n title: 'SHAREHOLDERS_DOWNLINE_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_DOWNLINE_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_RECURRING_JOB,\n title: 'RECURRING_JOBS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._RECURRING_JOB_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MANUAL_JOB,\n title: 'MANUAL_JOBS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._RECURRING_JOB_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_PROCESS_GAME_RECORD_REPORT,\n title: 'PROCESS_GAME_RECORD_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._PROCESS_GAME_RECORD_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_568_NON_PROCESS_GAME_RECORD_REPORT,\n title: '568_NON_PROCESS_GAME_RECORD_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._NON_PROCESS_568_GAME_RECORD_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_UNCLAIMED_REPORT,\n title: 'SHAREHOLDER_UNCLAIM_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_UNCLAIMED_SALES_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SHAREHOLDERS_UNCLAIMED_REPORT_LIST,\n title: 'SHAREHOLDER_UNCLAIM_REPORT_LIST',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_UNCLAIMED_SALES_LIST_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_COMISSION_REPORT_LIST,\n title: 'NORMAL_COMMISSION_REPORT_LIST',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TOTAL_SHARE_PAYOUT_REPORT,\n title: 'TOTAL_SHARE_PAYOUT_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SHAREHOLDER_SHARE_PAYOUT_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_SKIN_SETTINGS,\n title: 'MANAGE_SKIN_SETTINGS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SKIN_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SKIN_SETTINGS_DETAIL,\n title: 'SKIN_SETTINGS_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._SKIN_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_VIDEO_TUTORIAL,\n title: 'MANAGE_VIDEO_TUTORIAL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._VIDEO_TUTORIAL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_VIDEO_TUTORIAL_DETAIL,\n title: 'VIDEO_TUTORIAL_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._VIDEO_TUTORIAL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MEMBER_WALLET_STATEMENT,\n title: 'MANAGE_MEMBER_WALLET_STATEMENT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_WALLET_STATEMENT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TODAY_NEW_MEMBERS,\n title: 'NEW_MEMBERS_7_DAYS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._NEW_MEMBER_LIST_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TRANSFER_LOG,\n title: 'TRANSFER_LOG',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._TRANSFER_LOG_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TNG_SETTINGS,\n title: 'TNG_SETTINGS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._TNG_SETTING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MEMBER_PRODUCT_USERNAME,\n title: 'MANAGE_MEMBER_PRODUCT_USERNAME',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_PRODUCT_USERNAME_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_LIVE_MONITOR,\n title: 'LIVE_MONITOR',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TRANSACTION_QUEUE,\n title: 'TRANSACTION_QUEUE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._TRANSACTION_QUEUE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_WITHDRAWAL_SETTINGS,\n title: 'WITHDRAWAL_SETTINGS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._WITHDRAWAL_SETTINGS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_REWARDS_SCHEDULE,\n title: 'REWARDS_SCHEDULE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_REWARDS_SETTING,\n title: 'REWARDS_SETTING',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MEMBER_FULL_NAME,\n title: 'MANAGE_MEMBER_FULL_NAME',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_FULLNAME_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_HELP,\n title: 'HELP',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n component: () => \n },\n {\n path: WebUrl._URL_SPORTS_LIVE_MONITOR,\n title: 'SPORTS_LIVE_MONITOR',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_568WIN_BET_LIMIT,\n title: 'ADJUST_BET_LIMIT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n //permission: AccessRight._MEMBER_FULLNAME_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CLAIMED_REWARDS_REPORT,\n title: 'CLAIMED_UNCLAIMED_REWARDS_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_FORFEITED_REWARDS_REPORT,\n title: 'FORFEITED_REWARDS_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REWARDS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_SPORTS_TEAM_BET_REPORT,\n title: 'SPORTS_TEAM_BET_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MEMBER_PO,\n title: 'MANAGE_MEMBER',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_MEMBER_PO_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MEMBER_CS,\n title: 'MANAGE_MEMBER',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_MEMBER_CS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_RETRIEVE_MEMBER_BET_DATA,\n title: 'RETRIEVE_MEMBER_BET_DATA',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._RETRIEVE_GAME_DATA_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MEMBER_WALLET_STATEMENT_RECON,\n title: 'MEMBER_WALLET_STATEMENT_RECON',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_WALLET_STATEMENT_RECON_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_DEPOSIT_REFERENCE,\n title: 'DEPOSIT_REFERENCE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DEPOSIT_REFERENCE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MOBILE_TAC,\n title: 'MANAGE_MOBILE_TAC',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_MOBILE_TAC_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_TRANSACTION_SUMMARY_REPORT,\n title: 'TRANSACTION_SUMMARY_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._TRANSACTION_SUMMARY_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_DEPOSIT_PROMOTION,\n title: 'MANAGE_DEPOSIT_PROMOTION',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DEPOSIT_PROMOTION_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_DEPOSIT_PROMOTION,\n title: 'DEPOSIT_PROMOTION_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DEPOSIT_PROMOTION_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BIRTHDAY_REWARDS,\n title: 'MANAGE_BIRTHDAY_REWARDS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_BIRTHDAY_REWRDS + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MEMBER_REBATE,\n title: 'MANAGE_MEMBER_REBATE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_BIRTHDAY_REWRDS + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MEMBER_WEEKLY_RESCUE,\n title: 'MANAGE_MEMBER_WEEKLY_RESCUE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_MEMBER_WEEKLY_RESCUE + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_WEEKLY_RESCUE,\n title: 'MANAGE_WEEKLY_RESCUE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._WEEKLY_RESCUE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_WEEKLY_RESCUE_DETAIL,\n title: 'WEEKLY_RESCUE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._WEEKLY_RESCUE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BIRTHDAY_REWARD_REPORT,\n title: 'BIRTHDAY_REWARD_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BIRTHDAY_REWARD_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_GIFTPACE_REPORT,\n title: 'GIFTPACE_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._GIFTPACE_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_DAILY_CHECK_IN,\n title: 'MANAGE_DAILY_CHECK_IN',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DAILY_CHECK_IN_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_DAILY_CHECK_IN_DETAIL,\n title: 'DAILY_CHECK_IN',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DAILY_CHECK_IN_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_DC_ITEM_LIST,\n title: 'DC_ITEM_LIST',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DC_ITEM_LIST_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_DC_REDEMPTION,\n title: 'DC_REDEMPTION',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DC_REDEMPTION_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_DC_ITEM,\n title: 'DC_ITEM_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DC_ITEM_LIST_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_DC_POINTS,\n title: 'DC_POINTS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DC_POINTS_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_UPDATE_DC_POINTS,\n title: 'DC_POINT_DETAILS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DC_POINTS_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MEMBER_DC_POINTS,\n title: 'MEMBER_POINTS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_DC_POINTS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MEMBER_DC_POINTS_DETAIL,\n title: 'MEMBER_DC_POINTS_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_DC_POINTS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_ACTIVE_MEMBER_REPORT,\n title: 'ACTIVE_MEMBER_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._ACTIVE_MEMBER_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MEMBER_GAME_POINTS,\n title: 'MANAGE_MEMBER_GAME_POINTS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MANAGE_MEMBER_GAME_POINTS + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_POINTS_ADJUSTMENT,\n title: 'ADJUSTMENT_MEMBER_POINTS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._ADJUSTMENT_POINTS_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_POINTS_ADJUSTMENT_REPORT,\n exact: true,\n title: 'POINTS_ADJUSTMENT_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._POINTS_ADJUSTMENT_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MEMBER_POINTS_REPORT,\n exact: true,\n title: 'MEMBER_POINTS_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_POINTS_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_DEPOSIT_PROMOTION_CATEGORY,\n title: 'MANAGE_DEPOSIT_PROMOTION_CATEGORY',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DEPOSIT_PROMOTION_CATEGORY_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_DEPOSIT_PROMOTION_CATEGORY,\n title: 'DEPOSIT_PROMOTION_CATEGORY_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._DEPOSIT_PROMOTION_CATEGORY_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MEMBER,\n title: 'MANAGE_MEMBER',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._MEMBER_CONTROL_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREDIT_REDEMPTION_REPORT,\n title: 'CREDIT_REDEMPTION_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CREDIT_REDEMPTION_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_REFERRAL_BONUS_REPORT,\n title: 'REFERRAL_BONUS_REPORT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CREDIT_REDEMPTION_REPORT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_BONUS_DEPOSIT,\n title: 'BONUS_DEPOSIT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BONUS_DEPOSIT_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_BONUS_DEPOSIT,\n title: 'BONUS_DEPOSIT_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._BONUS_DEPOSIT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_PLAYER_RECONCILIATION,\n title: 'PLAYER_RECONCILIATION',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._LIVE_MONITORING_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_CAHE_SPHERE,\n title: 'MANAGE_CHAT_SPHERE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_SPHERE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_CAHE_SPHERE_TYPE,\n title: 'MANAGE_CHAT_SPHERE_TYPE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_SPHERE_TYPE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CHAT_SPHERE_TYPE_DETAIL,\n title: 'MANAGE_CHAT_SPHERE_TYPE_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_SPHERE_TYPE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_CAHE_SPHERE_CONTENT_DETAIL,\n title: 'CHAT_SPHERE_CONTENT_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_SPHERE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CHAT_SPHERE_PHONE_NUMBER,\n title: 'MANAGE_CHAT_SPHERE_PHONE_NUMBER',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_SPHERE_PHONE_NUMBER_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CHAT_SPHERE_PHONE_NUMBER_DETAIL,\n title: 'MANAGE_CHAT_SPHERE_PHONE_NUMBER_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_SPHERE_PHONE_NUMBER_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_ADJUSTMENT_BONUS_WALLET,\n title: 'ADJUSTMENT_BONUS_WALLET',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._COIN_ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MEMBER_BANK_ACCOUNT,\n title: 'MANAGE_MEMBER_BANK_ACCOUNT',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n //permission: AccessRight._ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MEMBER_BANK_ACCOUNT_DETAIL,\n title: 'MEMBER_BANK_ACCOUNT_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n //permission: AccessRight._ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_ACCOUNT_PRODUCT_RANK,\n title: 'PRODUCT_RANKING',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n //permission: AccessRight._ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_PRODUCT_GAME_RANK,\n title: 'PRODUCT_GAME_SETTING',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n //permission: AccessRight._ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_GAME_LIST,\n title: 'GAME_LIST',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n //permission: AccessRight._ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CLAIMED_PROMOTION_DETAIL,\n title: 'Claimed Promotion Detail',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n //permission: AccessRight._ADJUSTMENT_TRANSACTION_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_MLM_COMMISSION,\n title: 'MANAGE_MLM_COMMISSION',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._GENERATE_COMMISSION_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CHAT_SYSTEM_TEMPALTE,\n title: 'CHAT_TEMPLATE_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_SYSTEM_TEMPLATE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CHAT_CUSTOM_TEMPALTE,\n title: 'CHAT_CUSTOM_TEMPLATE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_CUSTOM_TEMPLATE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_CREATE_OR_UPDATE_CHAT_SYSTEM_TEMPLATE,\n title: 'CHAT_TEMPLATE_DETAIL',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_SYSTEM_TEMPLATE_PERMISSION + AccessRight._READ_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_MANAGE_CUSTOM_CHAT_TEMPLATE,\n title: 'CHAT_CUSTOM_TEMPLATE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._CHAT_CUSTOM_TEMPLATE_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_REFERRAL_REPORT,\n title: 'REFERRAL_REPORT_TITLE',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n permission: AccessRight._REFERRAL_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n {\n path: WebUrl._URL_REFERRAL_REPORT_DETAILS,\n title: 'REFERRAL_REPORT_TITLE_DETAILS',\n authRequired: true,\n loginType: [LoginType._LOGIN_TYPE_USER],\n // permission: AccessRight._DAILY_SUMMARY_REPORT_PERMISSION + AccessRight._WRITE_PERMISSION_STRING,\n component: () => \n },\n];","import React, { useEffect, useState } from 'react';\nimport { Route, withRouter, useHistory } from 'react-router-dom';\nimport { routes as initRoutes, loginRoute } from './../../config/page-route.jsx';\nimport { PageSettings } from './../../config/page-settings.js';\nimport { useSelector, useDispatch } from \"react-redux\";\nimport { ApiKey, ApiUrl, AccessRight, Status, LanguageKey } from \"../../util/Constant\";\nimport { useTranslation } from 'react-i18next'\nimport i18next from 'i18next';\nimport { addLanguage } from \"../../redux/LanguageAction.js\";\nimport { fetch } from 'whatwg-fetch';\nimport { stringIsNullOrEmpty } from '../../util/Util.js';\n\n/// \n/// Author : -\n/// \nconst Content = props => {\n const _history = useHistory();\n const _dispatch = useDispatch();\n const authState = useSelector(state => state.authState);\n const [routes, setRoutes] = useState(initRoutes);\n const { t, i18n } = useTranslation(LanguageKey._PRIMARY);\n\n /// \n /// Author : -\n /// the fetch at here is used to support even login page also can translate\n /// \n useEffect(() => {\n (async function () {\n if (!_history.location.pathname.match(/login/ig)) {\n await fetch(ApiUrl._API_GET_PREFERENCE_LANGUAGE, {\n method: ApiKey._API_GET,\n headers: {\n \"Accept\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n }\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n responseJson[ApiKey._API_DATA_KEY].map((language, index) => {\n try {\n i18n.addResources(language.code, LanguageKey._PRIMARY, require(\"../../translations/\" + language.code + \"/common.json\"));\n }\n catch (ex) {\n return;\n }\n });\n \n ///below is used to add the data to reducer to be use at language selection to avoid fetch second time at there\n _dispatch(addLanguage(responseJson[ApiKey._API_DATA_KEY]));\n }\n });\n }\n \n })();\n }, []);\n\n /// \n /// Author : -\n /// \n const setTitle = (path, routeArray) => {\n var pageTitle;\n for (var i = 0; i < routeArray.length; i++) {\n if (routeArray[i].path === path) {\n\n pageTitle = \"OKGO Admin | \" + t(routeArray[i].title);\n }\n }\n document.title = (pageTitle) ? pageTitle : 'OKGO';\n }\n\n /// \n /// Author : -\n /// used to detect the first time language resource is added\n /// \n i18next.store.on('added', function (lng, ns) {\n setTitle(_history.location.pathname, routes);\n })\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n setTitle(_history.location.pathname, routes);\n }, [i18n.language]);\n\n /// \n /// Author : -\n /// \n useEffect(() => {\n _history.listen(() => {\n setTitle(_history.location.pathname, routes);\n })\n }, [_history.location.pathname])\n\n /// \n /// Author : -\n /// \n const PrivateRoute = (index, routeData) => {\n return (\n \n );\n }\n\n /// \n /// Author : -\n /// Editted: -\n /// \n const filterMenuByPermission = () => {\n var filteredRoutes = routes.filter(route => {\n return ((route.loginType == undefined ||\n route.loginType.filter(i => i == authState.userData.loginType).length != 0) ||\n (authState.isLoggedIn == false && route.path == _history.location.pathname)\n );\n });\n\n if (authState.userData.accessString !== undefined) {\n var userPermissionData = authState.userData.accessString.split(\";\");\n var permissionArrKey = [];\n\n for (var i = 0; i < userPermissionData.length; i++) {\n var keyValuePermission = userPermissionData[i].split(\":\");\n if (keyValuePermission.length == 2) {\n if (keyValuePermission[1][AccessRight._READ_BIT_POSITION] == Status._ENABLED.toString()) {\n permissionArrKey.push(keyValuePermission[0] + AccessRight._READ_PERMISSION_STRING);\n }\n if (keyValuePermission[1][AccessRight._WRITE_BIT_POSITION] == Status._ENABLED.toString()) {\n permissionArrKey.push(keyValuePermission[0] + AccessRight._WRITE_PERMISSION_STRING);\n }\n }\n }\n\n let finalRoutes = filteredRoutes.filter(item => {\n let permission = item.permission;\n //let match = '';\n //if (permission !== undefined){\n // let temp = permission.substring(0, permission.indexOf(AccessRight._READ_PERMISSION_STRING));\n // let temp1 = temp.split(' ');\n // temp1.map((word) => {\n // match += word.charAt(0);\n // });\n //}\n //if (!stringIsNullOrEmpty(match)) {\n // match += AccessRight._READ_PERMISSION_STRING;\n // return permissionArrKey.filter(item => item == match).length != 0;\n //}\n if (permission !== undefined) {\n return permissionArrKey.filter(item => item == permission).length != 0;\n }\n else {\n return true;\n }\n });\n\n return finalRoutes;\n }\n else {\n return filteredRoutes;\n }\n }\n\n let finalRoutes = filterMenuByPermission();\n return (\n \n {({ pageContentFullWidth, pageContentClass, pageContentInverseMode }) => (\n
    \n {finalRoutes.map((route, index) => (\n PrivateRoute(index, route)\n ))}\n
    \n )\n }\n
    \n );\n}\n\nexport default withRouter(Content);\n","import React from 'react';\n\nclass Footer extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props);\n\t\t\n\t\tvar date = new Date();\n\t\tthis.state = {\n\t\t\tyear: date.getFullYear()\n\t\t}\n\t}\n\trender() {\n\t\treturn (\n\t\t\t
    \n\t\t\t\t© { this.state.year } Color Admin Responsive Admin Template - Sean Ngu All Rights Reserved\n\t\t\t
    \n\t\t)\n\t}\n}\n\nexport default Footer;","import React from 'react';\nimport { Route, Link } from 'react-router-dom';\nimport { PageSettings } from './../../config/page-settings.js';\n\nclass FloatSubMenuList extends React.Component {\n\tstatic contextType = PageSettings;\n\t\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tactive: -1,\n\t\t\tclicked: -1\n\t\t};\n\t}\n\t\n\thandleExpand(e, i, match) {\n\t\te.preventDefault();\n\t\n\t\tthis.setState(state => ({\n\t\t\tactive: (this.state.active === i ? -1 : i),\n\t\t\tclicked: 1\n\t\t}));\n\t\tsetTimeout(() => {\n\t\t\tthis.context.handleFloatSubMenuClick();\n\t\t}, 0);\n\t}\n \n\trender() {\n\t\tvar icon = this.props.data.icon && ;\n\t\tvar img = this.props.data.img && \"\";\n\t\tvar caret = (this.props.data.children && !this.props.data.badge) && ;\n\t\tvar label = this.props.data.label && {this.props.data.label};\n\t\tvar badge = this.props.data.badge && {this.props.data.badge};\n\t\tvar title = this.props.data.title && {this.props.data.title} {label};\n\t\t\n\t\treturn (\n\t\t\t\n\t\t\t\t{({pageSidebarMinified}) => (\n\t\t\t\t\t (\n\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t{this.props.data.children ? (\n\t\t\t\t\t\t\t\t{ img } { icon } { title } { badge } { caret }\n\t\t\t\t\t\t\t):(\n\t\t\t\t\t\t\t\t{ img } { icon } { title } { badge } { caret }\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{this.props.data.children && (\n\t\t\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t\t\t{this.props.data.children && this.props.data.children.map((submenu, i) => (\n\t\t\t\t\t\t\t\t\t\t this.handleExpand(e, i, match)}\n\t\t\t\t\t\t\t\t\t\t\tactive={i === this.state.active} \n\t\t\t\t\t\t\t\t\t\t\tclicked={this.state.clicked}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t
  • \n\t\t\t\t\t)} />\n\t\t\t\t)}\n\t\t\t
    \n\t\t);\n\t}\n}\n\nexport default FloatSubMenuList;","import React from 'react';\nimport { Route } from 'react-router-dom';\nimport { PageSettings } from './../../config/page-settings.js';\nimport FloatSubMenuList from './float-sub-menu-list.jsx';\n\nclass FloatSubMenu extends React.Component {\n\tstatic contextType = PageSettings;\n\t\n\tconstructor(props) {\n\t\tsuper(props);\n\t\tthis.state = {\n\t\t\tactive: -1,\n\t\t\tclicked: -1\n\t\t};\n\t}\n\t\n\thandleExpand(e, i, match) {\n\t\te.preventDefault();\n\t\t\n\t\tif (this.state.clicked === -1 && match) {\n\t\t\tthis.setState(state => ({\n\t\t\t\tactive: -1,\n\t\t\t\tclicked: 1\n\t\t\t}));\n\t\t} else {\n\t\t\tthis.setState(state => ({\n\t\t\t\tactive: (this.state.active === i ? -1 : i),\n\t\t\t\tclicked: 1\n\t\t\t}));\n\t\t}\n\t\tsetTimeout(() => {\n\t\t\tthis.context.handleFloatSubMenuClick();\n\t\t}, 0);\n\t}\n\t\n\trender() {\n\t\treturn (\n\t\t\t\n\t\t\t\t{({ \n\t\t\t\t\tpageFloatSubMenu, \n\t\t\t\t\tpageFloatSubMenuActive,\n\t\t\t\t\tpageFloatSubMenuTop,\n\t\t\t\t\tpageFloatSubMenuLeft,\n\t\t\t\t\tpageFloatSubMenuBottom,\n\t\t\t\t\tpageFloatSubMenuLineTop,\n\t\t\t\t\tpageFloatSubMenuLineBottom,\n\t\t\t\t\tpageFloatSubMenuArrowTop,\n\t\t\t\t\tpageFloatSubMenuArrowBottom,\n\t\t\t\t\thandleFloatSubMenuOnMouseOver,\n\t\t\t\t\thandleFloatSubMenuOnMouseOut\n\t\t\t\t}) => (\n\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t\t
      \n\t\t\t\t\t\t\t{pageFloatSubMenu.children && pageFloatSubMenu.children.map((menu, i) => (\n\t\t\t\t\t\t\t\t (\n\t\t\t\t\t\t\t\t\t this.handleExpand(e, i, match)}\n\t\t\t\t\t\t\t\t\t\tactive={i === this.state.active} \n\t\t\t\t\t\t\t\t\t\tclicked={this.state.clicked}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)} />\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t)}\n\t\t\t
    \n\t\t);\n\t}\n};\n\nexport default FloatSubMenu;\n","import React from 'react';\nimport { PageSettings } from './config/page-settings.js';\n\nimport Header from './components/header/header.jsx';\nimport Sidebar from './components/sidebar/sidebar.jsx';\nimport Content from './components/content/content.jsx';\nimport Footer from './components/footer/footer.jsx';\nimport FloatSubMenu from './components/float-sub-menu/float-sub-menu.jsx';\nimport LoadingOverlay from 'react-loading-overlay';\nimport { disposeMessage } from \"./redux/AppAction.js\";\nimport { connect } from \"react-redux\";\nimport { updateLoginUser, resetLogin, performLogout } from \"./redux/AuthAction.js\";\nimport { ApiKey, ApiUrl, WebUrl } from \"./util/Constant\";\nimport SweetAlert from 'react-bootstrap-sweetalert';\nimport { stringIsNullOrEmpty } from './util/Util';\nimport moment from 'moment';\nimport { fetch } from 'whatwg-fetch';\nimport { ToastContainer, toast } from 'react-toastify';\nimport 'react-toastify/dist/ReactToastify.css';\nimport notificationSound from '../src/assets/notification.mp3';\nimport { Modal, ModalBody } from 'reactstrap';\n\nclass App extends React.Component {\n constructor(props) {\n super(props);\n\n this._1_HR_TIMEOUT_TIME = 60 * 60 * 1000;\n\n this.events = [\n \"load\",\n \"mousedown\",\n \"click\",\n \"keypress\"\n ]\n\n this.audio = new Audio(require(\"../src/assets/notification.mp3\"));\n\n const Msg = ({ Title, Body }) => (\n
    \n
    {Title}
    \n
    {Body}
    \n
    \n )\n\n this.pauseAudio = () => {\n if (window.location.pathname == WebUrl._URL_TRANSACTION_ENQUIRY) {\n this.audio.pause();\n }\n }\n\n this.toast = (messageContent) => {\n toast(Msg(messageContent));\n\n this.audio.loop = true;\n //this.audio.play();\n }\n\n this.toggleSidebarMinify = (e) => {\n e.preventDefault();\n if (this.state.pageSidebarMinify) {\n this.setState(state => ({\n pageFloatSubMenuActive: false\n }));\n }\n this.setState(state => ({\n pageSidebarMinify: !this.state.pageSidebarMinify\n }));\n }\n this.toggleMobileSidebar = (e) => {\n this.setState(state => ({\n pageSidebarToggled: !this.state.pageSidebarToggled\n }));\n }\n this.handleSetPageSidebar = (value) => {\n this.setState(state => ({\n pageSidebar: value\n }));\n }\n this.handleSetPageSidebarMinified = (value) => {\n this.setState(state => ({\n pageSidebarMinify: value\n }));\n }\n this.handleSetPageSidebarWide = (value) => {\n this.setState(state => ({\n pageSidebarWide: value\n }));\n }\n this.handleSetPageSidebarLight = (value) => {\n this.setState(state => ({\n pageSidebarLight: value\n }));\n }\n this.handleSetPageSidebarTransparent = (value) => {\n this.setState(state => ({\n pageSidebarTransparent: value\n }));\n }\n this.handleSetPageSidebarSearch = (value) => {\n this.setState(state => ({\n pageSidebarSearch: value\n }));\n }\n\n this.toggleRightSidebar = (e) => {\n e.preventDefault();\n this.setState(state => ({\n pageRightSidebarCollapsed: !this.state.pageRightSidebarCollapsed\n }));\n }\n this.toggleMobileRightSidebar = (e) => {\n e.preventDefault();\n this.setState(state => ({\n pageMobileRightSidebarToggled: !this.state.pageMobileRightSidebarToggled\n }));\n }\n this.handleSetPageRightSidebar = (value) => {\n this.setState(state => ({\n pageRightSidebar: value\n }));\n }\n\n var floatSubMenuRemove;\n var floatSubMenuCalculate;\n var floatSubMenuRemoveTime = 250;\n this.handleFloatSubMenuOnMouseOver = (e) => {\n clearTimeout(floatSubMenuRemove);\n clearTimeout(floatSubMenuCalculate);\n }\n this.handleFloatSubMenuOnMouseOut = (e) => {\n floatSubMenuRemove = setTimeout(() => {\n this.setState(state => ({\n pageFloatSubMenuActive: false\n }));\n }, floatSubMenuRemoveTime);\n }\n this.handleSidebarOnMouseOver = (e, menu) => {\n if (this.state.pageSidebarMinify) {\n if (menu.children) {\n var left = (document.getElementById('sidebar').offsetWidth + document.getElementById('sidebar').offsetLeft) + 'px';\n\n clearTimeout(floatSubMenuRemove);\n clearTimeout(floatSubMenuCalculate);\n\n this.setState(state => ({\n pageFloatSubMenu: menu,\n pageFloatSubMenuActive: true,\n pageFloatSubMenuLeft: left\n }));\n\n var offset = e.currentTarget.offsetParent.getBoundingClientRect();\n\n floatSubMenuCalculate = setTimeout(() => {\n var targetTop = offset.top;\n var windowHeight = window.innerHeight;\n var targetHeight = document.querySelector('.float-sub-menu-container').offsetHeight;\n var top, bottom, arrowTop, arrowBottom, lineTop, lineBottom;\n\n if ((windowHeight - targetTop) > targetHeight) {\n top = offset.top + 'px';\n bottom = 'auto';\n arrowTop = '20px';\n arrowBottom = 'auto';\n lineTop = '20px';\n lineBottom = 'auto';\n } else {\n var aBottom = (windowHeight - targetTop) - 21;\n top = 'auto';\n bottom = '0';\n arrowTop = 'auto';\n arrowBottom = aBottom + 'px';\n lineTop = '20px';\n lineBottom = aBottom + 'px';\n }\n\n this.setState(state => ({\n pageFloatSubMenuTop: top,\n pageFloatSubMenuBottom: bottom,\n pageFloatSubMenuLineTop: lineTop,\n pageFloatSubMenuLineBottom: lineBottom,\n pageFloatSubMenuArrowTop: arrowTop,\n pageFloatSubMenuArrowBottom: arrowBottom,\n pageFloatSubMenuOffset: offset\n }));\n }, 0);\n\n } else {\n floatSubMenuRemove = setTimeout(() => {\n this.setState(state => ({\n pageFloatSubMenu: '',\n pageFloatSubMenuActive: false\n }));\n }, floatSubMenuRemoveTime);\n }\n }\n }\n this.handleSidebarOnMouseOut = (e) => {\n if (this.state.pageSidebarMinify) {\n floatSubMenuRemove = setTimeout(() => {\n this.setState(state => ({\n pageFloatSubMenuActive: false\n }));\n }, floatSubMenuRemoveTime);\n }\n }\n this.handleFloatSubMenuClick = () => {\n if (this.state.pageSidebarMinify) {\n const windowHeight = window.innerHeight;\n const targetHeight = document.getElementById('float-sub-menu').offsetHeight;\n const targetTop = this.state.pageFloatSubMenuOffset.top;\n const top = ((windowHeight - targetTop) > targetHeight) ? targetTop : 'auto';\n const left = (this.state.pageFloatSubMenuOffset.left + document.getElementById('sidebar').offsetWidth) + 'px';\n const bottom = ((windowHeight - targetTop) > targetHeight) ? 'auto' : '0';\n const arrowTop = ((windowHeight - targetTop) > targetHeight) ? '20px' : 'auto';\n const arrowBottom = ((windowHeight - targetTop) > targetHeight) ? 'auto' : ((windowHeight - targetTop) - 21) + 'px';\n const lineTop = ((windowHeight - targetTop) > targetHeight) ? '20px' : 'auto';\n const lineBottom = ((windowHeight - targetTop) > targetHeight) ? 'auto' : ((windowHeight - targetTop) - 21) + 'px';\n\n this.setState(state => ({\n pageFloatSubMenuTop: top,\n pageFloatSubMenuLeft: left,\n pageFloatSubMenuBottom: bottom,\n pageFloatSubMenuLineTop: lineTop,\n pageFloatSubMenuLineBottom: lineBottom,\n pageFloatSubMenuArrowTop: arrowTop,\n pageFloatSubMenuArrowBottom: arrowBottom\n }));\n }\n }\n\n this.handleSetPageContent = (value) => {\n this.setState(state => ({\n pageContent: value\n }));\n }\n this.handleSetPageContentClass = (value) => {\n this.setState(state => ({\n pageContentClass: value\n }));\n }\n this.handleSetPageContentFullHeight = (value) => {\n this.setState(state => ({\n pageContentFullHeight: value\n }));\n }\n this.handleSetPageContentFullWidth = (value) => {\n this.setState(state => ({\n pageContentFullWidth: value\n }));\n }\n this.handleSetPageContentInverseMode = (value) => {\n this.setState(state => ({\n pageContentInverseMode: value\n }));\n }\n\n this.handleSetPageHeader = (value) => {\n this.setState(state => ({\n pageHeader: value\n }));\n }\n this.handleSetPageHeaderMegaMenu = (value) => {\n this.setState(state => ({\n pageHeaderMegaMenu: value\n }));\n }\n this.handleSetPageHeaderLanguageBar = (value) => {\n this.setState(state => ({\n pageHeaderLanguageBar: value\n }));\n }\n\n this.handleSetPageFooter = (value) => {\n this.setState(state => ({\n pageFooter: value\n }));\n }\n this.handleSetPageTopMenu = (value) => {\n this.setState(state => ({\n pageTopMenu: value\n }));\n }\n this.toggleMobileTopMenu = (e) => {\n e.preventDefault();\n this.setState(state => ({\n pageMobileTopMenu: !this.state.pageMobileTopMenu\n }));\n }\n this.handleSetPageTwoSidebar = (value) => {\n this.setState(state => ({\n pageTwoSidebar: value\n }));\n }\n this.handleSetPageBoxedLayout = (value) => {\n if (value === true) {\n document.body.classList.add('boxed-layout');\n } else {\n document.body.classList.remove('boxed-layout');\n }\n }\n this.handleSetBodyWhiteBg = (value) => {\n if (value === true) {\n document.body.classList.add('bg-white');\n } else {\n document.body.classList.remove('bg-white');\n }\n }\n\n /// \n /// Author : -\n /// \n this.resetTimeout = this.resetTimeout.bind(this);\n\n this.setTimeoutAlert = (value) => {\n this.setState(state => ({\n timeoutAlert: value\n }));\n }\n\n this.state = {\n pageHeader: true,\n pageheaderMegaMenu: false,\n pageHeaderLanguageBar: true,\n hasScroll: false,\n handleSetPageHeader: this.handleSetPageHeader,\n handleSetPageHeaderLanguageBar: this.handleSetPageHeaderLanguageBar,\n handleSetPageHeaderMegaMenu: this.handleSetPageHeaderMegaMenu,\n\n pageSidebar: true,\n pageSidebarWide: false,\n pageSidebarLight: false,\n pageSidebarMinify: false,\n pageSidebarToggled: false,\n pageSidebarTransparent: false,\n pageSidebarSearch: false,\n handleSetPageSidebar: this.handleSetPageSidebar,\n handleSetPageSidebarWide: this.handleSetPageSidebarWide,\n handleSetPageSidebarLight: this.handleSetPageSidebarLight,\n handleSetPageSidebarMinified: this.handleSetPageSidebarMinified,\n handleSetPageSidebarTransparent: this.handleSetPageSidebarTransparent,\n handleSetPageSidebarSearch: this.handleSetPageSidebarSearch,\n handleSidebarOnMouseOut: this.handleSidebarOnMouseOut,\n handleSidebarOnMouseOver: this.handleSidebarOnMouseOver,\n toggleSidebarMinify: this.toggleSidebarMinify,\n toggleMobileSidebar: this.toggleMobileSidebar,\n\n pageFloatSubMenuActive: false,\n pageFloatSubMenu: '',\n pageFloatSubMenuTop: 'auto',\n pageFloatSubMenuLeft: 'auto',\n pageFloatSubMenuBottom: 'auto',\n pageFloatSubMenuLineTop: 'auto',\n pageFloatSubMenuLineBottom: 'auto',\n pageFloatSubMenuArrowTop: 'auto',\n pageFloatSubMenuArrowBottom: 'auto',\n pageFloatSubMenuOffset: '',\n handleFloatSubMenuOnMouseOver: this.handleFloatSubMenuOnMouseOver,\n handleFloatSubMenuOnMouseOut: this.handleFloatSubMenuOnMouseOut,\n handleFloatSubMenuClick: this.handleFloatSubMenuClick,\n\n pageContent: true,\n pageContentClass: '',\n pageContentFullHeight: false,\n pageContentFullWidth: false,\n pageContentInverseMode: false,\n handleSetPageContent: this.handleSetPageContent,\n handleSetPageContentClass: this.handleSetPageContentClass,\n handleSetPageContentFullHeight: this.handleSetPageContentFullHeight,\n handleSetPageContentFullWidth: this.handleSetPageContentFullWidth,\n handleSetPageContentInverseMode: this.handleSetPageContentInverseMode,\n\n pageFooter: false,\n handleSetPageFooter: this.handleSetPageFooter,\n\n pageTopMenu: false,\n pageMobileTopMenu: false,\n toggleMobileTopMenu: this.toggleMobileTopMenu,\n handleSetPageTopMenu: this.handleSetPageTopMenu,\n\n pageTwoSidebar: false,\n handleSetPageTwoSidebar: this.handleSetPageTwoSidebar,\n\n pageRightSidebar: false,\n pageRightSidebarToggled: true,\n pageMobileRightSidebarToggled: false,\n toggleRightSidebar: this.toggleRightSidebar,\n toggleMobileRightSidebar: this.toggleMobileRightSidebar,\n handleSetPageRightSidebar: this.handleSetPageRightSidebar,\n\n handleSetBodyWhiteBg: this.handleSetBodyWhiteBg,\n handleSetPageBoxedLayout: this.handleSetPageBoxedLayout,\n\n /// \n /// Author : -\n /// \n timeoutAlert: false,\n setTimeoutAlert: this.setTimeoutAlert\n };\n }\n\n /// \n /// Author : -\n /// Edit: Add Checking for last active\n /// \n componentDidMount() {\n window.addEventListener(\"click\", this.pauseAudio);\n\n if (localStorage.getItem(\"lastActiveAt\") != null) {\n let lastDateTime = moment(localStorage.getItem(\"lastActiveAt\"));\n if (moment().diff(lastDateTime, \"hours\") >= 1) {\n this.props.performLogout();\n localStorage.removeItem(\"lastActiveAt\");\n return;\n }\n }\n\n fetch(ApiUrl._API_IS_LOGGED_IN, {\n method: ApiKey._API_GET,\n headers: {\n \"Accept\": ApiKey._API_APPLICATION_JSON,\n \"X-Requested-With\": ApiKey._API_XML_HTTP_REQUEST_KEY\n }\n }).then((response) => response.json()).then((responseJson) => {\n if (responseJson[ApiKey._API_SUCCESS_KEY]) {\n this.props.updateLoginUser(responseJson[ApiKey._API_DATA_KEY]);\n }\n else {\n this.props.resetLogin();\n }\n });\n }\n\n componentWillUnmount() {\n }\n\n /// \n /// Author : -\n /// \n componentDidUpdate(prevState) {\n if (this.props.firebaseState.dataContent != null) {\n this.toast(this.props.firebaseState.dataContent);\n }\n\n if (prevState.authState.isLoggedIn != this.props.authState.isLoggedIn) {\n if (this.props.authState.isLoggedIn) {\n this.resetTimeout();\n\n for (var i in this.events) {\n window.addEventListener(this.events[i], this.resetTimeout)\n }\n }\n else {\n this.destroyTimeout();\n\n for (var i in this.events) {\n window.removeEventListener(this.events[i], this.resetTimeout)\n }\n }\n }\n }\n\n /// \n /// Author : -\n /// Edit: added localstorage\n /// \n resetTimeout = () => {\n if (this.props.authState.isLoggedIn) {\n clearTimeout(this.startTimeout);\n this.startTimeout = setTimeout(() => { this.setTimeoutAlert(true); localStorage.removeItem(\"lastActiveAt\"); }, this._1_HR_TIMEOUT_TIME);\n localStorage.setItem(\"lastActiveAt\", moment().format(\"YYYY-MM-DD HH:mm:ss\"));\n }\n }\n\n /// \n /// Author : -\n /// Edit: added localstorage remove\n /// \n destroyTimeout = () => {\n if (this.startTimeout) {\n clearTimeout(this.startTimeout);\n localStorage.removeItem(\"lastActiveAt\");\n }\n }\n\n /**\n * \n * Author: -\n * added loading screen\n * \n **/\n render() {\n return (\n \n {this.state.timeoutAlert && { this.setTimeoutAlert(false); this.props.performLogout(); }}\n onCancel={() => { this.setTimeoutAlert(false); this.props.performLogout(); }}\n timeout={3000} />\n }\n ({\n ...base,\n zIndex: '10000',\n position: 'fixed',\n })\n }}\n text={this.props.appState.message}\n >\n \n {\n !stringIsNullOrEmpty(this.props.appState.responseMessage) &&\n { this.props.disposeMessage(); }}\n onCancel={() => { this.props.disposeMessage(); }} />\n }\n {this.props.authState.loginStateInitialized &&\n
    \n {this.state.pageHeader && (
    )}\n {this.state.pageSidebar && ()}\n {this.state.pageContent && ()}\n {this.state.pageFooter && (
    )}\n \n
    }\n
    \n )\n }\n}\n\nconst mapStateToProps = state => ({\n ...state\n});\n\nexport default connect(\n mapStateToProps,\n {\n disposeMessage: disposeMessage,\n updateLoginUser: updateLoginUser,\n resetLogin: resetLogin,\n performLogout: performLogout\n }\n)(App);","import React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport App from \"./app.jsx\";\nimport { BrowserRouter } from \"react-router-dom\";\nimport { Provider } from \"react-redux\";\nimport store from \"./ApplicationStore.js\";\nimport \"./i18n.js\";\n\n// css\nimport \"bootstrap/dist/css/bootstrap.css\";\nimport \"@fortawesome/fontawesome-free/css/all.min.css\";\nimport \"react-quill/dist/quill.snow.css\";\nimport \"codemirror/lib/codemirror.css\";\nimport \"codemirror/theme/material.css\";\nimport \"simple-line-icons/css/simple-line-icons.css\";\nimport \"flag-icon-css/css/flag-icon.min.css\";\nimport \"react-perfect-scrollbar/dist/css/styles.css\";\nimport \"./index.css\";\nimport \"./scss/react.scss\";\nimport \"bootstrap-social/bootstrap-social.css\";\nimport \"bootstrap-daterangepicker/daterangepicker.css\";\n\n// ========================================\n\nReactDOM.render(\n \n \n \n \n ,\n document.getElementById(\"root\")\n);\n"],"sourceRoot":""}