{"version":3,"sources":["utils/genState.js","store/lookups/actions.js","store/group/actions.js","store/spinningWheel/actions.js","utils/reduxsauce/Types.js","store/attendances/actions.js","store/userManagement/actions.js","store/auth/actions.js","store/survey/actions.js","utility/context/ThemeColors.js","utility/context/Can.js","store/city/actions.js","store/prize/actions.js","store/promoter/actions.js","services/setting/index.js","@core/components/spinner/Fallback-spinner.js","utility/context/Internationalization.js","store/supervisor/actions.js","store/products/actions.js","assets/images/logo/roi.png","store/brands/actions.js","store/reports/actions.js","store/userManagement/reducer.js","store/setting/reducer.js","store/brands/reducer.js","store/outlets/actions.js","store/products/reducer.js","store/lookups/reducer.js","store/companyInfo/reducer.js","store/prize/reducer.js","store/offers/reducer.js","store/outlets/reducer.js","store/city/reducer.js","store/nationalities/reducer.js","store/ageRange/reducer.js","store/promoter/reducer.js","store/survey/reducer.js","store/supervisor/reducer.js","store/reports/reducer.js","store/dashboard/reducer.js","store/refusalReason/reducer.js","store/shiftSessions/reducer.js","store/outletType/reducer.js","store/channel/reducer.js","store/group/reducer.js","store/spinningWheel/reducer.js","store/dashboard/actions.js","store/attendances/reducer.js","store/tmr/reducer.js","store/area/reducer.js","store/tmr/actions.js","store/outletType/actions.js","store/channel/actions.js","store/offers/actions.js","store/area/actions.js","store/companyInfo/actions.js","store/ageRange/actions.js","../ /^/.//.*//messages/.po$/ groupOptions: {} namespace object","store/auth/reducer.js","store/layout/reducer.js","store/navbar/reducer.js","store/reducers.js","services/storage.js","utils/genLogic.js","store/ageRange/logic.js","store/app/logic.js","store/auth/logic.js","store/brands/logic.js","store/channel/logic.js","store/city/logic.js","store/companyInfo/logic.js","store/dashboard/logic.js","store/group/logic.js","store/lookups/logic.js","store/nationalities/logic.js","store/offers/logic.js","store/outletType/logic.js","store/outlets/logic.js","store/prize/logic.js","store/products/logic.js","store/promoter/logic.js","store/refusalReason/logic.js","store/reports/logic.js","store/setting/logic.js","store/shiftSessions/logic.js","store/spinningWheel/logic.js","store/supervisor/logic.js","store/survey/logic.js","store/userManagement/logic.js","store/attendances/logic.js","store/tmr/logic.js","store/area/logic.js","store/logics.js","services/index.js","services/auth/index.js","services/userManagement/index.js","services/products/index.js","services/outlets/index.js","services/brands/index.js","services/offers/index.js","services/companyInfo/index.js","services/lookups/index.js","services/prize/index.js","services/city/index.js","services/nationalities/index.js","services/ageRange/index.js","services/promoter/index.js","services/supervisors/index.js","services/reports/index.js","services/survey/index.js","services/dashboard/index.js","services/refusalReason/index.js","services/shiftSession/index.js","services/outletType/index.js","services/channel/index.js","services/group/index.js","services/spinningWheel/index.js","services/attendance/index.js","services/tmr/index.js","services/area/index.js","store/index.js","store/configureStore.js","@core/components/ripple-button/index.js","serviceWorker.js","configs/permission/userAbitlity.js","configs/permission/userPermission.jsx","utility/providers/SignalRProvider.js","utility/hooks/useSignalR.js","components/TransKeyNotFound.js","index.js","store/refusalReason/actions.js","store/constants.js","store/app/reducer.js","store/nationalities/actions.js","store/app/actions.js","store/shiftSessions/actions.js","utils/reduxsauce/createTypes.js","utils/reduxsauce/createActions.js","utils/reduxsauce/resettableReducer.js","utils/reduxsauce/index.js","store/SupportedLocales.js","configs/index.js","utils/reduxsauce/createReducer.js","store/setting/actions.js","configs/themeConfig.js","store/layout/actions.js"],"names":["defaultState","stateName","extraProps","defaults","extraPropsState","Object","keys","length","map","a","setState","isPaginated","state","payload","produce","draft","setStateSuccess","successCb","items","metadata","setStateFail","failCb","undefined","bindReducers","actionTypes","options","action","async","actionName","replace","toUpperCase","Error","reducers","bindSyncReducers","doneCb","setSyncState","createActions","getQuestionTypes","args","meta","getAppTypes","prefix","Types","Creators","ActionTypes","getAllGroups","getGroupWithId","createGroup","updateGroup","deleteGroup","getGroupClients","createGroupClient","createGroupClients","getNonGroupedOutlets","createGroupOutlet","createGroupOutlets","removeGroupOutlet","getGroupOutletsList","uploadGroupOutlets","removeGroupOutlets","showDialog","showDeleteDialog","resetDialog","setGroup","getAllSpin","getSpinWithId","createSpin","updateSpin","deleteSpin","removeSupervisorFromSpin","assignSupervisor","assignedSupervisor","notAssignedSupervisor","getAllRewards","getRewardWithId","createReward","updateReward","deleteReward","setReward","setData","DEFAULT","getAllAttendances","getUsers","getUser","getPermissions","createUser","createUsers","createAppUser","deleteUser","setUser","createRole","getRoles","getRole","editUser","editRole","deleteRole","login","updateToken","getNotifications","addNotification","logout","setAuthToken","readNotification","updateProfile","changePassword","resetChangePassword","updateUserScore","AuthActions","saveSurveyInformation","getSurveyWithId","getSurveys","getSurveyResults","getUserSurveys","getUserSurveysWithId","createSurvey","addSurveyResponse","editSurvey","deleteSurvey","addSurveyQuestion","removeSurveyQuestion","editSurveyQuestion","setSurvey","ThemeColors","createContext","ThemeContext","children","useState","colors","setColors","useEffect","window","getHex","color","getComputedStyle","document","body","getPropertyValue","trim","obj","primary","light","concat","main","secondary","success","danger","warning","info","dark","Provider","value","AbilityContext","createContextualCan","Consumer","createCountry","editCountry","deleteCountry","getAllCountries","getCities","getAllCities","createCity","editCity","deleteCity","getAllPrizes","addPrize","editPrize","deletePrize","getAllOutletPrizes","addOutletPrize","editOutletPrize","deleteOutletPrize","getAllPromoters","getAllSupervisors","getPromoter","addPromoter","deletePromoter","editPromoter","api","settings","getSettings","get","editSetting","id","put","editAllSettings","SpinnerComponent","className","src","themeConfig","app","appLogoImage","alt","width","Context","dynamicActivate","locale","messages","i18n","load","activate","loadLocaleData","result","key","locales","plurals","plurs","loadedLocales","IntlProviderWrapper","lang","localStorage","getItem","currentLang","values","find","l","default","code","setLocale","dispatch","useDispatch","AppActions","changeLocale","switchLanguage","defaultLocale","getAllSupervisorsTasks","getSupervisor","setSupervisor","addSupervisor","deleteSupervisor","editSupervisor","showDetailsDialog","getAllProducts","getProductWithId","addProduct","editProduct","saveProductCityOffers","deleteProductCityOffers","deleteProduct","setProduct","getAllBrands","getBrandWithId","addBrand","editBrand","deleteBrand","getAllReportResponses","getReportResponseWithId","getAllReportQuestions","addReportQuestion","editReportQuestion","deleteReportQuestion","storeSelectedItemIndex","initialState","selectedUser","openDialog","openDeleteDialog","userCreatedSuccess","users","reducer","createReducer","filter","roles","userIndex","findIndex","u","roleIndex","user_errors","settingIndex","brands","brandIndex","brand","products","productIndex","p","ptoductIndex","splice","brand_errors","getAllOutlets","getOutletWithId","addOutlet","uploadOutlets","editOutlet","deleteOutlet","product","cityOffers","cityId","data","questionTypes","appTypes","CompanyInfos","CompanyInfoIndex","companyInfos","prizes","prizeIndex","outletPrizes","offers","outlets","outlet","cities","countries","index","r","nationalities","nationalityIndex","ageRanges","ageRangeIndex","console","log","selectedPromoter","promoters","promoterIndex","promoter_errors","selectedSurvey","userSurveys","surveyIndex","surveys","survey","questions","questionIndex","selectedSupervisor","supervisors","supervisorIndex","openDetailsDialog","supervisor_errors","reportQuestions","selectedItem","responsesSummary","refusalReasons","refusalReasonIndex","shiftSessions","exportedSessions","shiftSession","monthlyReports","valueOf","outletTypes","outletTypeIndex","outletType_errors","channels","channelIndex","channel_errors","groups","groupIndex","groupOutletsList","nonGroupedOutlets","includes","spins","item","rewards","rewardIndex","reward","assignedSupervisors","getGeneralInfo","getClientResponse","getProducts","getOffers","getClientResponces","getClientResponceWithId","getResponsesSummary","attendances","selectedTmr","tmrs","tmrIndex","tmr_errors","areas","getAllTmr","getTmr","setTmr","addTmr","deleteTmr","editTmr","getAllOutletTypes","getOutletTypeWithId","createOutletType","updateOutletType","deleteOutletType","getAllChannels","getChannelWithId","createChannel","updateChannel","deleteChannel","getAllOffers","getOfferWithId","addOffer","editOffer","deleteOffer","setOffer","createArea","editArea","deleteArea","getAllAreas","getAreaById","getAllCompanyInfos","getCompanyInfoWithId","addCompanyInfo","editCompanyInfo","deleteCompanyInfo","getAllAgeRanges","getAgeRangeWithId","addAgeRange","editAgeRange","deleteAgeRange","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","then","e","ids","t","module","exports","user","isLoggedIn","token","loginError","notifications","authReducer","jwtDecoder","loginLoading","JSON","parse","role","some","toLowerCase","setItem","stringify","refreshToken","active","removeItem","changePassword_errors","score","LOGOUT","GET_NOTIFICATIONS","GET_NOTIFICATIONS_SUCCESS","GET_NOTIFICATIONS_FAIL","message","ADD_NOTIFICATION","notify","READ_NOTIFICATION","READ_NOTIFICATION_SUCCESS","forEach","notifyId","notficiationId","read","READ_NOTIFICATION_FAIL","isRTL","layout","menuCollapsed","menu","isCollapsed","initialMenuCollapsed","menuHidden","isHidden","contentWidth","logo","appName","url","layoutReducer","suggestions","bookmarks","query","navbarReducer","type","val","objectToUpdate","isBookmarked","bookmarkIndex","x","push","rootPersistConfig","storage","blacklist","Storage","normalizeActionName","error","split","pop","i","charAt","substring","join","exp","moment","unix","response","ok","_validateApi","apiNamespace","api_name","logic","successMessage","errorMessage","showSuccessMessage","showErrorMessage","createLogic","latest","process","done","getState","apiURI","setBaseURL","res","toast","status","authActions","_errorMsg","errors","errorCode","getAllAgeRangesLogic","GET_ALL_AGE_RANGES","GET_AGE_RANGE_WITH_ID","addAgeRangeLogic","ADD_AGE_RANGE","editAgeRangeLogic","EDIT_AGE_RANGE","deleteAgeRangeLogic","DELETE_AGE_RANGE","pingLogic","PING","getCountriesLogic","GET_COUNTRIES","getCitiesLogic","GET_CITIES","getNotificationsLogic","auth","loginRequest","readNotificationLogic","loginLogic","LOGIN","jwtDecode","changePasswordLogic","CHANGE_PASSWORD","updateProfileLogic","UPDATE_PROFILE","getAllBrandsLogic","GET_ALL_BRANDS","getBrandWithIdLogic","GET_BRAND_WITH_ID","addBrandLogic","ADD_BRAND","editBrandLogic","EDIT_BRAND","deleteBrandLogic","DELETE_BRAND","getAllChannelsLogic","GET_ALL_CHANNELS","getChannelWithIdLogic","GET_CHANNEL_WITH_ID","createChannelLogic","CREATE_CHANNEL","updateChannelLogic","UPDATE_CHANNEL","deleteChannelLogic","DELETE_CHANNEL","getAllCitiesLogic","GET_ALL_CITIES","getAllCountriesLogic","GET_ALL_COUNTRIES","createCountryLogic","CREATE_COUNTRY","editCountryLogic","EDIT_COUNTRY","deleteCountryLogic","DELETE_COUNTRY","createCityLogic","CREATE_CITY","editCityLogic","EDIT_CITY","deleteCityLogic","DELETE_CITY","getAllCompanyInfosLogic","GET_ALL_COMPANY_INFOS","GET_COMPANY_INFO_WITH_ID","addCompanyInfoLogic","ADD_COMPANY_INFO","editCompanyInfoLogic","EDIT_COMPANY_INFO","deleteCompanyInfoLogic","DELETE_COMPANY_INFO","getGeneralInfoLogic","GET_GENERAL_INFO","getClientResponseLogic","GET_CLIENT_RESPONSE","getProductsLogic","GET_PRODUCTS","getOffersLogic","GET_OFFERS","getClientResponcesLogic","GET_CLIENT_RESPONCES","getClientResponceWithIdLogic","GET_CLIENT_RESPONCE_WITH_ID","getResponsesSummaryLogic","GET_RESPONSES_SUMMARY","getAllGroupsLogic","GET_ALL_GROUPS","getGroupWithIdLogic","GET_GROUP_WITH_ID","createGroupLogic","CREATE_GROUP","updateGroupLogic","UPDATE_GROUP","deleteGroupLogic","DELETE_GROUP","getGroupClientsLogic","GET_GROUP_CLIENTS","createGroupClientLogic","CREATE_GROUP_CLIENT","createGroupClientsLogic","CREATE_GROUP_CLIENTS","createGroupOutletLogic","CREATE_GROUP_OUTLET","removeGroupOutletLogic","REMOVE_GROUP_OUTLET","createGroupOutletsLogic","CREATE_GROUP_OUTLETS","getGroupOutletsListLogic","GET_GROUP_OUTLETS_LIST","getNonGroupedOutletsLogic","GET_NON_GROUPED_OUTLETS","uploadGroupOutletsLogic","UPLOAD_GROUP_OUTLETS","removeGroupOutletsLogic","REMOVE_GROUP_OUTLETS","getQuestionTypesLogic","GET_QUESTION_TYPES","getAppTypesLogic","GET_APP_TYPES","getAllNationalitiesLogic","GET_ALL_NATIONALITIES","addNationalityLogic","ADD_NATIONALITY","editNationalityLogic","EDIT_NATIONALITY","deleteNationalityLogic","DELETE_NATIONALITY","GET_ALL_OFFERS","GET_OFFER_WITH_ID","ADD_OFFER","EDIT_OFFER","DELETE_OFFER","GET_ALL_OUTLET_TYPES","GET_OUTLET_TYPE_WITH_ID","CREATE_OUTLET_TYPE","UPDATE_OUTLET_TYPE","DELETE_OUTLET_TYPE","getAllOutletsLogic","GET_ALL_OUTLETS","getOutletWithIdLogic","GET_OUTLET_WITH_ID","addOutletLogic","ADD_OUTLET","uploadOutletsLogic","UPLOAD_OUTLETS","EDIT_OUTLET","DELETE_OUTLET","GET_ALL_PRIZES","ADD_PRIZE","EDIT_PRIZE","DELETE_PRIZE","GET_ALL_OUTLET_PRIZES","ADD_OUTLET_PRIZE","EDIT_OUTLET_PRIZE","DELETE_OUTLET_PRIZE","getAllProductsLogic","GET_ALL_PRODUCTS","getProductWithIdLogic","GET_PRODUCT_WITH_ID","addProductLogic","ADD_PRODUCT","SaveProductCityOffersLogic","SAVE_PRODUCT_CITY_OFFERS","deleteProductCityOffersLogic","DELETE_PRODUCT_CITY_OFFERS","EDIT_PRODUCT","DELETE_PRODUCT","getAllPromotersLogic","GET_ALL_PROMOTERS","getAllSupervisorsLogic","GET_ALL_SUPERVISORS","getPromoterLogic","GET_PROMOTER","getPermissionsLogic","GET_PERMISSIONS","ADD_PROMOTER","DELETE_PROMOTER","EDIT_PROMOTER","getRefusalReasonsLogic","GET_REFUSAL_REASONS","getRefusalReasonWithId","GET_REFUSAL_REASON_WITH_ID","ADD_REFUSAL_REASON","EDIT_REFUSAL_REASON","DELETE_REFUSAL_REASON","GET_ALL_REPORT_RESPONSES","GET_REPORT_RESPONSE_WITH_ID","GET_ALL_REPORT_QUESTIONS","ADD_REPORT_QUESTION","EDIT_REPORT_QUESTION","DELETE_REPORT_QUESTION","GET_SETTINGS","EDIT_SETTING","EDIT_ALL_SETTINGS","getAllShiftSessionsLogic","GET_ALL_SHIFT_SESSIONS","getExportedSessionsLogic","GET_EXPORTED_SESSIONS","GET_SHIFT_SESSION_WITH_ID","GET_MONTHLY_REPORTS","getAllSpinLogic","GET_ALL_SPIN","getSpinWithIdLogic","GET_SPIN_WITH_ID","createSpinLogic","CREATE_SPIN","updateSpinLogic","UPDATE_SPIN","deleteSpinLogic","DELETE_SPIN","getAllRewardsLogic","GET_ALL_REWARDS","getRewardWithIdLogic","GET_REWARD_WITH_ID","createRewardLogic","CREATE_REWARD","updateRewardLogic","UPDATE_REWARD","deleteRewardLogic","DELETE_REWARD","ASSIGNED_SUPERVISOR","NOT_ASSIGNED_SUPERVISOR","ASSIGN_SUPERVISOR","REMOVE_SUPERVISOR_FROM_SPIN","getAllSupervisorsTasksLogic","GET_ALL_SUPERVISORS_TASKS","getSupervisorLogic","GET_SUPERVISOR","ADD_SUPERVISOR","DELETE_SUPERVISOR","EDIT_SUPERVISOR","getSurveyWithIdLogic","GET_SURVEY_WITH_ID","getSurveysLogic","GET_SURVEYS","getSurveyResultsLogic","GET_SURVEY_RESULTS","getUserSurveysLogic","GET_USER_SURVEYS","getUserSurveysWithIdLogic","GET_USER_SURVEYS_WITH_ID","createSurveyLogic","CREATE_SURVEY","addSurveyResponseLogic","ADD_SURVEY_RESPONSE","addSurveyQuestionLogic","ADD_SURVEY_QUESTION","editSurveyQuestionLogic","EDIT_SURVEY_QUESTION","removeSurveyQuestionLogic","REMOVE_SURVEY_QUESTION","editSurveyLogic","EDIT_SURVEY","DELETE_SURVEY","getUsersLogic","GET_USERS","getUserLogic","GET_USER","createUserLogic","CREATE_USER","createUsersLogic","CREATE_USERS","createAppUserLogic","CREATE_APP_USER","createRoleLogic","CREATE_ROLE","getRolesLogic","GET_ROLES","getRoleLogic","GET_ROLE","deleteUserLogic","DELETE_USER","editUserLogic","EDIT_USER","editRoleLogic","EDIT_ROLE","DELETE_ROLE","GET_ALL_ATTENDANCES","GET_ALL_TMR","GET_TMR","ADD_TMR","DELETE_TMR","EDIT_TMR","GET_AREA_BY_ID","GET_ALL_AREAS","CREATE_AREA","EDIT_AREA","DELETE_AREA","appLogic","authLogic","usersLogic","settingLogic","brandsLogic","productsLogic","lookupsLogic","companyInfoLogic","prizeLogic","offersLogic","outletsLogic","cityLogic","nationalityLogic","ageRangeLogic","promoterLogic","supervisorLogic","reportsLogic","surveysLogic","dashboardLogic","refusalReasonLogic","shiftSessionLogic","outletTypeLogic","channelLogic","groupLogic","spinWheelLogic","attendanceLogic","tmrLogics","areaLogic","baseURL","apisauce","create","headers","timeout","addAsyncResponseTransform","customeError","addAsyncRequestTransform","request","culture","cultureCode","userIp","post","accessToken","paging","userManegment","delete","usersApi","settingsApi","productsApi","outletApi","getBrandsWithId","brandsApi","offersApi","companyInfoApi","lookups","lookupsApi","prizeApi","Cities","cityApi","Nationalities","getAllNationalities","addNationality","editNationality","deleteNationality","NationalityApi","ageRangeApi","Promoters","promoterApi","Supervisors","supervisorApi","reports","reportsApi","surveysApi","dashboards","dashboard","filters","dashboardApi","getRefusalReasons","addRefusalReason","editRefusalReason","deleteRefusalReason","refusalReasonApi","getAllShiftSessions","getShiftSessionWithId","getMonthlyReports","getExportedSessions","shiftSessionApi","outletType","outletTypeApi","channel","channelApi","group","groupApi","spinningWheel","spinWheel","spinEventId","supervisorId","spinningWheelApi","attendance","attendanceApi","tmr","Tmr","tmrApi","area","Areas","areaApi","setHeader","setHeaders","history","createBrowserHistory","injectedApi","API","logicMiddleware","createLogicMiddleware","logics","middlewares","routerMiddleware","enhancers","applyMiddleware","composeEnhancers","compose","rootReducer","asyncReducers","persistReducer","combineReducers","router","connectRouter","require","navbar","store","createStore","persistedStore","persistStore","configureStore","Button","Ripple","onClick","rest","mounted","setMounted","isRippling","setIsRippling","y","coords","setCoords","setTimeout","classnames","rect","target","getBoundingClientRect","clientX","left","clientY","top","style","Boolean","location","hostname","match","permissions","this","updateValues","permission","SignalProvider","React","SignalRProvider","props","connection","signalR","withUrl","config","baseUrl","accessTokenFactory","withAutomaticReconnect","configureLogging","Debug","build","connect","conn","start","catch","sleep","msec","startHub","err","onclose","onReceiveNotify","on","closeHub","stop","useSignalR","useSelector","TransKeyNotFound","LazyApp","lazy","ReactDOM","render","fallback","userAbility","newestOnTop","getElementById","navigator","serviceWorker","ready","registration","unregister","DEFAULT_DIRECTION","DIRECTIONS","LTR","supportedLocales","direction","defaultCurrency","priceDisplay","lastPing","isLoadingHotels","theme","sidebarCollapsed","navbarColor","navbarType","footerType","disableCustomizer","hideScrollToTop","menuTheme","extraStarred","starred","defaultLat","defaultLong","defaultZoom","_locale","getElementsByTagName","setAttribute","textAlign","ping","changeCurrency","changePriceDisplay","setIsLoading","clearIsLoading","getCountries","isNilOrEmpty","anyPass","isNil","isEmpty","defaultOptions","types","merge","pipe","reject","fromPairs","camelToScreamingSnake","toUpper","convertToTypes","opts","successPostfix","failPostfix","k","_config","flatten","createTypes","convertToCreators","creators","mapObjIndexed","num","name","is","Array","zipObj","defaultProps","valueObject","providedProps","pick","successKey","failKey","fail","_value","isArray","createActionCreator","curry","typeToReset","originalReducer","String","resetState","cr","emptyObj","flag","useLocalApi","appTitle","appDescription","devApiRoot","pageOptions","contactPhone","contactMail","addressOnMap","gen_password_length","gen_password_characters","appSelected","REACT_APP_BASE_API_URL","handlers","any","equals","has","handler","skin","routerTransition","backgroundColor","footer","customizer","scrollTop","handleRtl","handleMenuHidden","handleMenuCollapsed","setLogo","setAppName","setUrl","LayoutActions"],"mappings":"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","file":"static/js/main.c3e604ad.chunk.js","sourcesContent":["import { produce } from \"immer\";\n\n/**\n *\n * @param {String} stateName the base state name to be used, it will generate statename, statename_loading, statename_errors\n * @param {String{}} extraProps for any extra propers it will generate statename_propname, ...\n */\nconst defaultState = (stateName, extraProps = {}, defaults = null) => {\n let extraPropsState = {};\n if (extraProps && Object.keys(extraProps).length > 0)\n Object.keys(extraProps).map((a) => {\n extraPropsState[`${stateName}_${a}`] = extraProps[a];\n return { [`${stateName}_${a}`]: extraProps[a] };\n });\n\n return {\n [stateName]: defaults,\n [`${stateName}_loading`]: false,\n [`${stateName}_errors`]: [],\n ...extraPropsState,\n };\n};\n\nconst setState = (stateName, isPaginated) => {\n return (state, { payload }) => {\n return produce(state, (draft) => {\n draft[stateName] = isPaginated ? [] : state[stateName];\n draft[`${stateName}_loading`] = true;\n draft[`${stateName}_errors`] = [];\n if (isPaginated) {\n draft[`${stateName}_metadata`] = {};\n }\n });\n };\n};\n\nconst setStateSuccess = (stateName, successCb, isPaginated) => {\n return (state, { payload }) => {\n return produce(state, (draft) => {\n draft[stateName] = isPaginated ? payload.items : payload;\n draft[`${stateName}_loading`] = false;\n draft[`${stateName}_errors`] = [];\n if (successCb) successCb(state, draft, payload);\n if (isPaginated) {\n draft[`${stateName}_metadata`] = payload.metadata;\n }\n });\n };\n};\n\nconst setStateFail = (stateName, failCb, isPaginated) => {\n return (state, { payload }) => {\n return produce(state, (draft) => {\n draft[stateName] = isPaginated ? [] : undefined;\n draft[`${stateName}_loading`] = false;\n draft[`${stateName}_errors`] = payload;\n if (failCb) failCb(state, draft, payload);\n if (isPaginated) {\n draft[`${stateName}_metadata`] = {};\n }\n });\n };\n};\n\nconst setSyncState = (stateName, doneCb) => {\n return (state, { payload }) => {\n return produce(state, (draft) => {\n if (stateName) draft[stateName] = payload;\n if (doneCb) doneCb(state, draft, payload);\n });\n };\n};\n\n/**\n *\n * @param {String} actionTypes action types\n * @param {String{}} options options which contain action => action name ,\n * @param {String} options.stateName => state name the will bind pubish the result on it,\n * @param {Function} options.successCb => custom success callback for more custom logic,\n * @param {Function} options.failCb => custom failure call back for custom error logic,\n * @param {Boolean} options.isPaginated => by default false , true if the result contains metadata\n * @param {Boolean} options.async => true if you are action doesn't require calling api\n */\nconst bindReducers = (actionTypes, options = {}) => {\n const { action, stateName, successCb, failCb, isPaginated, async } = options;\n let actionName = action.replace(/([A-Z])/g, \"_$1\").toUpperCase();\n if (!actionTypes[`${actionName}`])\n throw new Error(`handlers cannot have an undefined key ${actionName}`);\n\n if (!async)\n return bindSyncReducers(actionTypes, actionName, stateName, successCb);\n else {\n const reducers = {\n [actionTypes[`${actionName}`]]: setState(stateName, isPaginated),\n [actionTypes[`${actionName}_SUCCESS`]]: setStateSuccess(\n stateName,\n successCb,\n isPaginated\n ),\n [actionTypes[`${actionName}_FAIL`]]: setStateFail(\n stateName,\n failCb,\n isPaginated\n ),\n };\n return reducers;\n }\n};\n\nconst bindSyncReducers = (actionTypes, actionName, stateName, doneCb) => {\n const reducers = {\n [actionTypes[`${actionName}`]]: setSyncState(stateName, doneCb),\n };\n\n return reducers;\n};\n\nexport {\n defaultState,\n bindReducers,\n // , bindSyncReducers\n};\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getQuestionTypes:{ args: [], meta: { async: true } },\n getAppTypes:{ args: [], meta: { async: true } },\n },\n {\n prefix: \"@app/Lookups/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllGroups: { args: [\"payload\"], meta: { async: true } },\n getGroupWithId: { args: [\"payload\"], meta: { async: true } },\n createGroup: { args: [\"payload\"], meta: { async: true } },\n updateGroup: { args: [\"payload\"], meta: { async: true } },\n deleteGroup: { args: [\"payload\"], meta: { async: true } },\n\n /// group clients\n getGroupClients: { args: [\"payload\"], meta: { async: true } },\n createGroupClient: { args: [\"payload\"], meta: { async: true } },\n createGroupClients: { args: [\"payload\"], meta: { async: true } },\n\n /// group outlets\n getNonGroupedOutlets: { args: [\"payload\"], meta: { async: true } },\n createGroupOutlet: { args: [\"payload\"], meta: { async: true } },\n createGroupOutlets: { args: [\"payload\"], meta: { async: true } },\n removeGroupOutlet: { args: [\"payload\"], meta: { async: true } },\n getGroupOutletsList: { args: [\"payload\"], meta: { async: true } },\n uploadGroupOutlets: { args: [\"payload\"], meta: { async: true } },\n removeGroupOutlets: { args: [\"payload\"], meta: { async: true } },\n\n\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n setGroup: { args: [\"payload\"], meta: { async: false } },\n },\n {\n prefix: \"@app/group/\",\n }\n);\n\nexport const ActionTypes = Types;\nexport default Creators;\nexport const AuthActions = Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllSpin: { args: [\"payload\"], meta: { async: true } },\n getSpinWithId: { args: [\"payload\"], meta: { async: true } },\n createSpin: { args: [\"payload\"], meta: { async: true } },\n updateSpin: { args: [\"payload\"], meta: { async: true } },\n deleteSpin: { args: [\"payload\"], meta: { async: true } },\n\n // Supervisor\n removeSupervisorFromSpin: { args: [\"payload\"], meta: { async: true } },\n assignSupervisor: { args: [\"payload\"], meta: { async: true } },\n assignedSupervisor: { args: [\"payload\"], meta: { async: true } },\n notAssignedSupervisor: { args: [\"payload\"], meta: { async: true } },\n\n // Rewards\n getAllRewards: { args: [\"payload\"], meta: { async: true } },\n getRewardWithId: { args: [\"payload\"], meta: { async: true } },\n createReward: { args: [\"payload\"], meta: { async: true } },\n updateReward: { args: [\"payload\"], meta: { async: true } },\n deleteReward: { args: [\"payload\"], meta: { async: true } },\n setReward: { args: [\"payload\"], meta: { async: false } },\n\n setData: { args: [\"payload\"], meta: { async: false } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/spinWheel/\",\n }\n);\n\nexport const ActionTypes = Types;\nexport default Creators;\nexport const AuthActions = Creators;\n","export const DEFAULT = \"REDUXSAUCE.DEFAULT\";\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllAttendances: { args: [\"payload\"], meta: { async: true } },\n },\n {\n prefix: \"@app/Attendances/\",\n },\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getUsers: { args: [\"payload\"], meta: { async: true } },\n getUser: { args: [\"payload\"], meta: { async: true } },\n getPermissions: { args: [], meta: { async: true } },\n createUser: { args: [\"payload\"], meta: { async: true } },\n createUsers: { args: [\"payload\"], meta: { async: true } },\n createAppUser: { args: [\"payload\"], meta: { async: true } },\n deleteUser: { args: [\"payload\"], meta: { async: true } },\n setUser: { args: [\"payload\"], meta: { async: false } },\n createRole: { args: [\"payload\"], meta: { async: true } },\n getRoles: { args: [\"payload\"], meta: { async: true } },\n getRole: { args: [\"payload\"], meta: { async: true } },\n editUser: { args: [\"payload\"], meta: { async: true } },\n editRole: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n deleteRole: { args: [\"payload\"], meta: { async: true } },\n },\n {\n prefix: \"@app/users/\"\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n login: { args: [\"payload\"], meta: { async: true } },\n updateToken: { args: [\"payload\"], meta: { async: false } },\n getNotifications: { args: [\"pagin\"], meta: { async: true } },\n addNotification: { args: [\"notify\"] },\n logout: { args: [\"token\"] },\n setAuthToken: { args: [\"token\"], meta: { async: false } },\n readNotification:{ args: [\"payload\"], meta: { async: true } },\n updateProfile:{ args: [\"payload\"], meta: { async: true } },\n changePassword:{ args: [\"payload\"], meta: { async: true } },\n resetChangePassword:{ args: [\"payload\"]},\n updateUserScore:{ args: [\"payload\"]}\n },\n {\n prefix: \"@app/auth/\"\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\nexport const AuthActions=Creators;","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n saveSurveyInformation: { args: [\"payload\"], meta: { async: false } },\n getSurveyWithId: { args: [\"payload\"], meta: { async: true } },\n getSurveys: { args: [\"payload\"], meta: { async: true } },\n getSurveyResults: { args: [\"payload\"], meta: { async: true } },\n getUserSurveys: { args: [\"payload\"], meta: { async: true } },\n getUserSurveysWithId: { args: [\"payload\"], meta: { async: true } },\n createSurvey: { args: [\"payload\"], meta: { async: true } },\n addSurveyResponse: { args: [\"payload\"], meta: { async: true } },\n editSurvey: { args: [\"payload\"], meta: { async: true } },\n deleteSurvey: { args: [\"payload\"], meta: { async: true } },\n addSurveyQuestion: { args: [\"payload\"], meta: { async: true } },\n removeSurveyQuestion: { args: [\"payload\"], meta: { async: true } },\n editSurveyQuestion: { args: [\"payload\"], meta: { async: true } },\n setSurvey: { args: [\"payload\"], meta: { async: false } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/surveys/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","// ** React Imports\nimport { useEffect, useState, createContext } from 'react'\n\n// ** Create Context\nconst ThemeColors = createContext()\n\nconst ThemeContext = ({ children }) => {\n // ** State\n const [colors, setColors] = useState({})\n //** ComponentDidMount\n useEffect(() => {\n if (window !== 'undefined') {\n //** Get variable value\n const getHex = color => window.getComputedStyle(document.body).getPropertyValue(color).trim()\n\n //** Colors obj\n const obj = {\n primary: {\n light: getHex('--primary').concat('1a'),\n main: getHex('--primary')\n },\n secondary: {\n light: getHex('--secondary').concat('1a'),\n main: getHex('--secondary')\n },\n success: {\n light: getHex('--success').concat('1a'),\n main: getHex('--success')\n },\n danger: {\n light: getHex('--danger').concat('1a'),\n main: getHex('--danger')\n },\n warning: {\n light: getHex('--warning').concat('1a'),\n main: getHex('--warning')\n },\n info: {\n light: getHex('--info').concat('1a'),\n main: getHex('--info')\n },\n dark: {\n light: getHex('--dark').concat('1a'),\n main: getHex('--dark')\n }\n }\n\n setColors({ ...obj })\n }\n }, [])\n\n return {children}\n}\n\nexport { ThemeColors, ThemeContext }\n","// ** Imports createContext function\nimport { createContext } from 'react'\n\n// ** Imports createContextualCan function\nimport { createContextualCan } from '@casl/react'\n\n// ** Create Context\nexport const AbilityContext = createContext()\n\n// ** Init Can Context\nexport const Can = createContextualCan(AbilityContext.Consumer)\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n\n createCountry: { args: [\"payload\"], meta: { async: true } },\n editCountry: { args: [\"payload\"], meta: { async: true } },\n deleteCountry: { args: [\"payload\"], meta: { async: true } },\n getAllCountries: { args: [\"payload\"], meta: { async: true } },\n getCities: { args: [\"payload\"], meta: { async: true } },\n getAllCities: { args: [\"payload\"], meta: { async: true } },\n createCity: { args: [\"payload\"], meta: { async: true } },\n editCity: { args: [\"payload\"], meta: { async: true } },\n deleteCity: { args: [\"payload\"], meta: { async: true } },\n\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/Cities/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllPrizes: { args: [\"payload\"], meta: { async: true } },\n addPrize: { args: [\"payload\"], meta: { async: true } },\n editPrize: { args: [\"payload\"], meta: { async: true } },\n deletePrize: { args: [\"payload\"], meta: { async: true } },\n\n ///////\n getAllOutletPrizes: { args: [\"payload\"], meta: { async: true } },\n addOutletPrize: { args: [\"payload\"], meta: { async: true } },\n editOutletPrize: { args: [\"payload\"], meta: { async: true } },\n deleteOutletPrize: { args: [\"payload\"], meta: { async: true } },\n\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/Prizes/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllPromoters: { args: [\"payload\"], meta: { async: true } },\n getAllCities: { args: [\"payload\"], meta: { async: true } },\n getAllSupervisors: { args: [\"payload\"], meta: { async: true } },\n getPromoter: { args: [\"payload\"], meta: { async: true } },\n getPermissions: { args: [], meta: { async: true } },\n addPromoter: { args: [\"payload\"], meta: { async: true } },\n deletePromoter: { args: [\"payload\"], meta: { async: true } },\n editPromoter: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } }\n },\n {\n prefix: \"@app/promoters/\"\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;","export default function (/**@type {ApisauceInstance} */ api) {\n const getSettings = () => api.get(\"Setting/settings\");\n const editSetting = ({ payload, id }) => api.put(`Setting/edit-setting/${id}`, payload);\n const editAllSettings = (payload) => api.put(`Setting/edit-all-setting`, payload);\n \n \n return {\n settings: {\n getSettings,\n editSetting,\n editAllSettings\n }\n };\n }\n ","// ** Logo\n// import logo from '@src/assets/images/logo/logo.png'\n\nimport themeConfig from 'src/configs/themeConfig'\n\nconst SpinnerComponent = () => {\n return (\n
\n logo\n
\n
\n
\n
\n
\n
\n )\n}\n\nexport default SpinnerComponent\n","// ** React Imports\nimport { useState, createContext, useEffect } from 'react'\n\n// ** Intl Provider Import\nimport { I18nProvider } from \"@lingui/react\";\n\n// ** Core Language Data\nimport messagesEn from '@assets/data/locales/en.json'\nimport messagesAr from '@assets/data/locales/ar.json'\n\n// ** User Language Data\nimport userMessagesEn from '@src/assets/data/locales/en.json'\nimport userMessagesAr from '@src/assets/data/locales/ar.json'\nimport { AppActions } from 'src/store/app/actions'\nimport { locales } from 'src/store/SupportedLocales'\nimport { useDispatch } from 'react-redux'\nimport { i18n } from '@lingui/core';\nimport * as plurs from 'make-plural/plurals';\n// ** Menu msg obj\n// const menuMessages = {\n// en: { ...messagesEn, ...userMessagesEn },\n// ar: { ...messagesAr, ...userMessagesAr },\n// }\n\n// ** Create Context\nconst Context = createContext()\n\nconst loadedLocales = () => {\n let result = {}\n for (const key in locales) {\n result[key] = { plurals: plurs[key] }\n }\n return result;\n}\ni18n.loadLocaleData(loadedLocales())\nasync function dynamicActivate(locale) {\n const { messages } = await import(`@lingui/loader!src/locales/${locale}/messages.po`)\n i18n.load(locale, messages)\n i18n.activate(locale)\n}\n\nconst IntlProviderWrapper = ({ children }) => {\n const lang = localStorage.getItem(\"language\");\n const currentLang = lang ? locales[lang] : Object.values(locales).find(l => l.default);\n\n // ** States\n const [locale, setLocale] = useState(currentLang.code)\n // const [messages, setMessages] = useState(menuMessages[currentLang.code])\n const dispatch = useDispatch();\n useEffect(() => {\n dispatch(AppActions.changeLocale(currentLang))\n dynamicActivate(currentLang.code);\n }, [])\n // ** Switches Language\n const switchLanguage = lang => {\n setLocale(lang.code)\n // setMessages(menuMessages[lang.code])\n dispatch(AppActions.changeLocale(lang))\n dynamicActivate(lang.code);\n }\n\n return (\n \n \n {children}\n \n \n )\n}\n\nexport { IntlProviderWrapper, Context as IntlContext }\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllSupervisors: { args: [\"payload\"], meta: { async: true } },\n getAllSupervisorsTasks: { args: [\"payload\"], meta: { async: true } },\n getSupervisor: { args: [\"payload\"], meta: { async: true } },\n setSupervisor: { args: [\"payload\"], meta: { async: true } },\n addSupervisor: { args: [\"payload\"], meta: { async: true } },\n deleteSupervisor: { args: [\"payload\"], meta: { async: true } },\n editSupervisor: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDetailsDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/supervisors/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllProducts: { args: [\"payload\"], meta: { async: true } },\n getProductWithId: { args: [\"payload\"], meta: { async: true } },\n addProduct: { args: [\"payload\"], meta: { async: true } },\n editProduct: { args: [\"payload\"], meta: { async: true } },\n saveProductCityOffers: { args: [\"payload\"], meta: { async: true } },\n deleteProductCityOffers: { args: [\"payload\"], meta: { async: true } },\n deleteProduct: { args: [\"payload\"], meta: { async: true } },\n\n setProduct: { args: [\"payload\"], meta: { async: false } },\n\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/products/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAH4AAAA4CAYAAAA7Ikz5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MzQyMDExNjI0NDYzMTFFQzhGOEVFNTYyNUFFQjUyMEEiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MzQyMDExNjE0NDYzMTFFQzhGOEVFNTYyNUFFQjUyMEEiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjlDRjcyMjM5OTQwRTExRTRCMDEyOTk1RUI5MDJDOEM3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjlDRjcyMjNBOTQwRTExRTRCMDEyOTk1RUI5MDJDOEM3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+eJIIuwAAGb1JREFUeNrsXQmUVNWZ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\"","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n // categories\n getAllBrands: { args: [\"payload\"], meta: { async: true } },\n getBrandWithId: { args: [\"payload\"], meta: { async: true } },\n addBrand: { args: [\"payload\"], meta: { async: true } },\n editBrand: { args: [\"payload\"], meta: { async: true } },\n deleteBrand: { args: [\"payload\"], meta: { async: true } },\n // products\n addProduct: { args: [\"payload\"], meta: { async: true } },\n editProduct: { args: [\"payload\"], meta: { async: true } },\n deleteProduct: { args: [\"payload\"], meta: { async: true } },\n\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/brands/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n //Reports\n getAllReportResponses: { args: [\"payload\"], meta: { async: true } },\n getReportResponseWithId: { args: [\"payload\"], meta: { async: true } },\n //Questions\n getAllReportQuestions: { args: [\"payload\"], meta: { async: true } },\n addReportQuestion: { args: [\"payload\"], meta: { async: true } },\n editReportQuestion: { args: [\"payload\"], meta: { async: true } },\n deleteReportQuestion: { args: [\"payload\"], meta: { async: true } },\n\n storeSelectedItemIndex: { args: [\"payload\"], meta: { async: false } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/reports/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","// import { createReducer } from \"utils/reduxsauce\";\nimport { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\n \"users\",\n {\n metadata: undefined,\n selectedUser: undefined,\n openDialog: false,\n openDeleteDialog: false,\n },\n []\n ),\n ...defaultState(\n \"roles\",\n { metadata: undefined, selectedUser: undefined },\n []\n ),\n};\n\nconst userCreatedSuccess = (state, draft, payload) => {\n const users = state.users || [];\n draft.users = [...users, payload];\n\n draft.openDialog = false;\n};\nconst userDeleteSuccess = (state, draft, payload) => {\n const users = state.users || [];\n draft.users = users.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\nconst roleDeleteSuccess = (state, draft, payload) => {\n const roles = state.roles || [];\n draft.roles = roles.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\nconst roleCreatedSuccess = (state, draft, payload) => {\n const roles = state.roles || [];\n draft.roles = [...roles, payload];\n\n // draft.openDialog = false;\n};\n\nconst userEditedSuccess = (state, draft, payload) => {\n const users = state.users || [];\n var userIndex = users.findIndex((u) => u.id === payload.id);\n draft.users[userIndex] = payload;\n draft.openDialog = false;\n};\nconst roleEditedSuccess = (state, draft, payload) => {\n const roles = state.roles || [];\n var roleIndex = roles.findIndex((u) => u.id === payload.id);\n draft.roles[roleIndex] = payload;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\n\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.user_errors = [];\n};\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"deleteUser\",\n stateName: \"user\",\n async: true,\n isPaginated: false,\n successCb: userDeleteSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"getUsers\",\n stateName: \"users\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setUser\",\n stateName: \"user\",\n async: false,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getUser\",\n stateName: \"user\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createUser\",\n stateName: \"user\",\n async: true,\n isPaginated: false,\n successCb: userCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createUsers\",\n stateName: \"users\",\n async: true,\n isPaginated: false,\n successCb: userCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createAppUser\",\n stateName: \"user\",\n async: true,\n isPaginated: false,\n successCb: userCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createRole\",\n stateName: \"role\",\n async: true,\n isPaginated: false,\n successCb: roleCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editUser\",\n stateName: \"user\",\n async: true,\n isPaginated: false,\n successCb: userEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editRole\",\n stateName: \"role\",\n async: true,\n isPaginated: false,\n successCb: roleEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getRoles\",\n stateName: \"roles\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getRole\",\n stateName: \"role\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getPermissions\",\n stateName: \"permissions\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: true,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: true,\n successCb: resetDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteRole\",\n stateName: \"role\",\n async: true,\n isPaginated: false,\n successCb: roleDeleteSuccess,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\n\nconst initialState = {\n ...defaultState(\n \"settings\", { metadata: undefined, },\n []\n ),\n};\n\nconst settingEditedSuccess = (state, draft, payload) => {\n const settings = state.settings || [];\n var settingIndex = settings.findIndex((u) => u.id === payload.id);\n draft.settings[settingIndex] = payload;\n};\n\n\n\nexport const reducer = createReducer(initialState, {\n\n ...bindReducers(ActionTypes, {\n action: \"getSettings\",\n stateName: \"settings\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editSetting\",\n stateName: \"setting\",\n async: true,\n isPaginated: false,\n successCb: settingEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editAllSettings\",\n stateName: \"settings\",\n async: true,\n isPaginated: false,\n // successCb: settingEditedSuccess,\n }),\n\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"brands\", { metadata: undefined }, []),\n};\n\n//** Brands\nconst brandEditedSuccess = (state, draft, payload) => {\n const brands = state.brands || [];\n var brandIndex = brands.findIndex((u) => u.id === payload.id);\n draft.brands[brandIndex] = payload;\n draft.openDialog = false;\n};\n\nconst brandCreatedSuccess = (state, draft, payload) => {\n const brands = state.brands || [];\n draft.brands = [...brands, payload];\n draft.openDialog = false;\n};\n\nconst brandDeleteSuccess = (state, draft, payload) => {\n const brands = state.brands || [];\n draft.brands = brands.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\n//** products\nconst productAddedSuccessfully = (state, draft, payload) => {\n draft.brand.products = [payload, ...state.brand.products];\n};\n\nconst productEditedSuccessfully = (state, draft, payload) => {\n debugger;\n const products = state.brand.products || [];\n var productIndex = products.findIndex((p) => p.id === payload.id);\n draft.brand.products[productIndex] = payload;\n};\n\nconst productDeletedSuccessfully = (state, draft, payload) => {\n const products = state.brand.products || [];\n var ptoductIndex = products.findIndex((p) => p.id === payload.id);\n draft.brand.products.splice(ptoductIndex, 1);\n};\n\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.brand_errors = [];\n};\n\nexport const reducer = createReducer(initialState, {\n //**Brands\n ...bindReducers(ActionTypes, {\n action: \"getAllBrands\",\n stateName: \"brands\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getBrandWithId\",\n stateName: \"brand\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addBrand\",\n stateName: \"brand\",\n async: true,\n isPaginated: false,\n successCb: brandCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editBrand\",\n stateName: \"brand\",\n async: true,\n isPaginated: false,\n successCb: brandEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteBrand\",\n stateName: \"brand\",\n async: true,\n isPaginated: false,\n successCb: brandDeleteSuccess,\n }),\n\n //** Products\n ...bindReducers(ActionTypes, {\n action: \"addProduct\",\n stateName: \"brandProduct\",\n async: true,\n isPaginated: false,\n successCb: productAddedSuccessfully,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editProduct\",\n stateName: \"brandProduct\",\n async: true,\n isPaginated: false,\n successCb: productEditedSuccessfully,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteProduct\",\n stateName: \"brandProduct\",\n async: true,\n isPaginated: false,\n successCb: productDeletedSuccessfully,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllOutlets: { args: [\"payload\"], meta: { async: true } },\n getOutletWithId: { args: [\"payload\"], meta: { async: true } },\n addOutlet: { args: [\"payload\"], meta: { async: true } },\n uploadOutlets: { args: [\"payload\"], meta: { async: true } },\n editOutlet: { args: [\"payload\"], meta: { async: true } },\n deleteOutlet: { args: [\"payload\"], meta: { async: true } },\n\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/outlets/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"products\", { metadata: undefined }, []),\n};\n\nconst productDeleteSuccess = (state, draft, payload) => {\n const products = state.products || [];\n draft.products = products.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\nconst deleteProductCityOffersSuccess=(state, draft, payload) => {\n //debugger\n draft.product.cityOffers = state.product.cityOffers.filter((a) => a.cityId != payload.data);\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllProducts\",\n stateName: \"products\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getProductWithId\",\n stateName: \"product\",\n async: true,\n isPaginated: false,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"addProduct\",\n stateName: \"product\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editProduct\",\n stateName: \"product\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteProduct\",\n stateName: \"product\",\n async: true,\n isPaginated: false,\n successCb: productDeleteSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteProductCityOffers\",\n stateName: \"productCityOffer\",\n async: true,\n isPaginated: false,\n successCb:deleteProductCityOffersSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"saveProductCityOffers\",\n stateName: \"productCityOffer\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setProduct\",\n stateName: \"product\",\n async: false,\n isPaginated: false,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\n \"lookups\",\n { metadata: undefined },\n {\n questionTypes: [],\n appTypes: [],\n }\n ),\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getQuestionTypes\",\n stateName: \"questionTypes\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getAppTypes\",\n stateName: \"appTypes\",\n async: true,\n isPaginated: false,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"companyInfos\", { metadata: undefined }, []),\n ...defaultState(\n \"companyInfo\",\n { metadata: undefined },\n {\n products: [],\n }\n ),\n};\n\n\nconst companyInfoEditedSuccess = (state, draft, payload) => {\n const CompanyInfos = state.CompanyInfos || [];\n var CompanyInfoIndex = CompanyInfos.findIndex((u) => u.id === payload.id);\n draft.CompanyInfos[CompanyInfoIndex] = payload;\n};\n\nconst companyInfoCreatedSuccess = (state, draft, payload) => {\n \n const CompanyInfos = state.CompanyInfos || [];\n draft.CompanyInfos = [...CompanyInfos, payload];\n\n draft.openDialog = false;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.brand_errors = [];\n};\n\nconst companyInfoDeleteSuccess = (state, draft, payload) => {\n debugger\n const companyInfos = state.companyInfos || [];\n draft.companyInfos = companyInfos.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\n\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllCompanyInfos\",\n stateName: \"companyInfos\",\n async: true,\n isPaginated: true\n }),\n ...bindReducers(ActionTypes, {\n action: \"getCompanyInfoWithId\",\n stateName: \"companyInfo\",\n async: true,\n isPaginated: false,\n \n }),\n ...bindReducers(ActionTypes, {\n action: \"addCompanyInfo\",\n stateName: \"companyInfo\",\n async: true,\n isPaginated: false,\n successCb:companyInfoCreatedSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"editCompanyInfo\",\n stateName: \"companyInfo\",\n async: true,\n isPaginated: false,\n successCb:companyInfoEditedSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteCompanyInfo\",\n stateName: \"companyInfo\",\n async: true,\n isPaginated: false,\n successCb:companyInfoDeleteSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"prizes\", { metadata: undefined }, []),\n ...defaultState(\n \"prize\",\n { metadata: undefined },\n {\n products: [],\n }\n ),\n ...defaultState(\"outletPrizes\", { metadata: undefined }, []),\n ...defaultState(\"outletPrize\", { metadata: undefined }, {}),\n};\n\nconst prizeEditedSuccess = (state, draft, payload) => {\n const prizes = state.prizes || [];\n var prizeIndex = prizes.findIndex((u) => u.id === payload.id);\n draft.prizes[prizeIndex] = payload;\n draft.openDialog = false;\n};\n\nconst prizeCreatedSuccess = (state, draft, payload) => {\n // debugger\n const prizes = state.prizes || [];\n draft.prizes = [...prizes, payload];\n draft.openDialog = false;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.brand_errors = [];\n};\n\nconst prizeDeleteSuccess = (state, draft, payload) => {\n const prizes = state.prizes || [];\n draft.prizes = prizes.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\nconst outletPrizeEditedSuccess = (state, draft, payload) => {\n const outletPrizes = state.outletPrizes || [];\n var prizeIndex = outletPrizes.findIndex((u) => u.id === payload.id);\n draft.outletPrizes[prizeIndex] = payload;\n draft.openDialog = false;\n};\n\nconst outletPrizeCreatedSuccess = (state, draft, payload) => {\n // debugger\n const outletPrizes = state.outletPrizes || [];\n draft.outletPrizes = [...outletPrizes, payload];\n draft.openDialog = false;\n};\nconst outletPrizeDeleteSuccess = (state, draft, payload) => {\n const outletPrizes = state.outletPrizes || [];\n draft.outletPrizes = outletPrizes.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllPrizes\",\n stateName: \"prizes\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addPrize\",\n stateName: \"prize\",\n async: true,\n isPaginated: false,\n successCb: prizeCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editPrize\",\n stateName: \"prize\",\n async: true,\n isPaginated: false,\n successCb: prizeEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deletePrize\",\n stateName: \"prize\",\n async: true,\n isPaginated: false,\n successCb: prizeDeleteSuccess,\n }),\n /////////////////////\n ...bindReducers(ActionTypes, {\n action: \"getAllOutletPrizes\",\n stateName: \"outletPrizes\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addOutletPrize\",\n stateName: \"outletPrize\",\n async: true,\n isPaginated: false,\n successCb: outletPrizeCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editOutletPrize\",\n stateName: \"outletPrize\",\n async: true,\n isPaginated: false,\n successCb: outletPrizeEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteOutletPrize\",\n stateName: \"outletPrize\",\n async: true,\n isPaginated: false,\n successCb: outletPrizeDeleteSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"offers\", { metadata: undefined }, []),\n};\n\nconst offerDeleteSuccess = (state, draft, payload) => {\n debugger;\n const offers = state.offers || [];\n draft.offers = offers.filter((a) => a.id != payload.data.id);\n draft.openDeleteDialog = false;\n};\n\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllOffers\",\n stateName: \"offers\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getOfferWithId\",\n stateName: \"offer\",\n async: true,\n isPaginated: false,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"addOffer\",\n stateName: \"offer\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editOffer\",\n stateName: \"offer\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteOffer\",\n stateName: \"offer\",\n async: true,\n isPaginated: false,\n successCb: offerDeleteSuccess,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"setOffer\",\n stateName: \"offer\",\n async: false,\n isPaginated: false,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"outlets\", { metadata: undefined }, []),\n};\n\nconst outletDeleteSuccess = (state, draft, payload) => {\n debugger;\n const outlets = state.outlets || [];\n draft.outlets = outlets.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.outlet = undefined;\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllOutlets\",\n stateName: \"outlets\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getOutletWithId\",\n stateName: \"outlet\",\n async: true,\n isPaginated: false,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"addOutlet\",\n stateName: \"outlet\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"uploadOutlets\",\n stateName: \"outlets\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editOutlet\",\n stateName: \"outlet\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteOutlet\",\n stateName: \"outlet\",\n async: true,\n isPaginated: false,\n successCb: outletDeleteSuccess,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"cities\", { metadata: undefined }, []),\n ...defaultState(\"countries\", { metadata: undefined }, {}),\n};\n\nconst editCitySuccess = (state, draft, payload) => {\n const index = state.cities.findIndex(r => r.id === payload.id)\n if (index >= 0) {\n draft.cities[index] = payload;\n }\n draft.openDialog = false;\n};\nconst editCountrySuccess = (state, draft, payload) => {\n const index = state.countries.findIndex(r => r.id === payload.id)\n if (index >= 0) {\n draft.countries[index] = payload;\n }\n draft.openDialog = false;\n};\nconst cityCreatedSuccess = (state, draft, payload) => {\n const cities = state.cities || [];\n draft.cities = [...cities, payload];\n draft.openDialog = false;\n};\nconst countryCreatedSuccess = (state, draft, payload) => {\n const countries = state.countries || [];\n draft.countries = [...countries, payload];\n draft.openDialog = false;\n};\n\nconst cityDeleteSuccess = (state, draft, payload) => {\n const cities = state.cities || [];\n draft.cities = cities.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\nconst countryDeleteSuccess = (state, draft, payload) => {\n const countries = state.countries || [];\n draft.countries = countries.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getCities\",\n stateName: \"cities\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getAllCountries\",\n stateName: \"countries\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createCity\",\n stateName: \"city\",\n async: true,\n isPaginated: false,\n successCb: cityCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createCountry\",\n stateName: \"country\",\n async: true,\n isPaginated: false,\n successCb: countryCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editCity\",\n stateName: \"city\",\n async: true,\n isPaginated: false,\n successCb: editCitySuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"editCountry\",\n stateName: \"country\",\n async: true,\n isPaginated: false,\n successCb: editCountrySuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteCity\",\n stateName: \"city\",\n async: true,\n isPaginated: false,\n successCb: cityDeleteSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteCountry\",\n stateName: \"country\",\n async: true,\n isPaginated: false,\n successCb: countryDeleteSuccess\n }),\n\n\n\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"nationalities\", { metadata: undefined }, []),\n ...defaultState(\n \"nationality\",\n { metadata: undefined },\n {\n products: [],\n }\n ),\n};\n\n\nconst nationalityEditedSuccess = (state, draft, payload) => {\n const nationalities = state.nationalities || [];\n var nationalityIndex = nationalities.findIndex((u) => u.id === payload.id);\n draft.nationalities[nationalityIndex] = payload;\n draft.openDialog = false;\n\n};\n\nconst nationalityCreatedSuccess = (state, draft, payload) => {\n // debugger\n const nationalities = state.nationalities || [];\n draft.nationalities = [...nationalities, payload];\n draft.openDialog = false;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.brand_errors = [];\n};\n\nconst nationalityDeleteSuccess = (state, draft, payload) => {\n const nationalities = state.nationalities || [];\n draft.nationalities = nationalities.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\n\n\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllNationalities\",\n stateName: \"nationalities\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addNationality\",\n stateName: \"nationality\",\n async: true,\n isPaginated: false,\n successCb:nationalityCreatedSuccess\n \n }),\n ...bindReducers(ActionTypes, {\n action: \"editNationality\",\n stateName: \"nationality\",\n async: true,\n isPaginated: false,\n successCb:nationalityEditedSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteNationality\",\n stateName: \"nationality\",\n async: true,\n isPaginated: false,\n successCb:nationalityDeleteSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n};\n\n\nconst ageRangeEditedSuccess = (state, draft, payload) => {\n const ageRanges = state.ageRanges|| [];\n var ageRangeIndex = ageRanges.findIndex((u) => u.id === payload.id);\n console.log(\"index\",ageRangeIndex)\n draft.ageRanges[ageRangeIndex] = payload;\n draft.openDialog = false;\n\n};\n\nconst ageRangeCreatedSuccess = (state, draft, payload) => {\n // debugger\n const ageRanges = state.ageRanges || [];\n \n draft.ageRanges= [...ageRanges, payload];\n draft.openDialog = false;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.brand_errors = [];\n};\n\nconst ageRangeDeleteSuccess = (state, draft, payload) => {\n const ageRanges = state.ageRanges || [];\n draft.ageRanges = ageRanges.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\n\n\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllAgeRanges\",\n stateName: \"ageRanges\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addAgeRange\",\n stateName: \"ageRange\",\n async: true,\n isPaginated: false,\n successCb:ageRangeCreatedSuccess\n \n }),\n ...bindReducers(ActionTypes, {\n action: \"editAgeRange\",\n stateName: \"ageRange\",\n async: true,\n isPaginated: false,\n successCb:ageRangeEditedSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteAgeRange\",\n stateName: \"ageRange\",\n async: true,\n isPaginated: false,\n successCb:ageRangeDeleteSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n\n});\n","// import { createReducer } from \"utils/reduxsauce\";\nimport { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\n \"promoters\",\n {\n metadata: undefined,\n selectedPromoter: undefined,\n openDialog: false,\n openDeleteDialog: false,\n },\n [],\n ),\n ...defaultState(\n \"supervisors\",\n {\n metadata: undefined,\n selectedPromoter: undefined,\n openDialog: false,\n openDeleteDialog: false,\n },\n [],\n ),\n};\n\nconst promoterCreatedSuccess = (state, draft, payload) => {\n const promoters = state.promoters || [];\n draft.promoters = [...promoters, payload];\n\n draft.openDialog = false;\n};\nconst promoterDeleteSuccess = (state, draft, payload) => {\n const promoters = state.promoters || [];\n draft.promoters = promoters.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\n\nconst promoterEditedSuccess = (state, draft, payload) => {\n const promoters = state.promoters || [];\n var promoterIndex = promoters.findIndex((u) => u.id === payload.id);\n draft.promoters[promoterIndex] = payload;\n draft.openDialog = false;\n};\n\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\n\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.promoter_errors = [];\n};\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"deletePromoter\",\n stateName: \"promoter\",\n async: true,\n isPaginated: false,\n successCb: promoterDeleteSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"getAllPromoters\",\n stateName: \"promoters\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getAllCities\",\n stateName: \"cities\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getAllSupervisors\",\n stateName: \"supervisors\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getPromoter\",\n stateName: \"promoter\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addPromoter\",\n stateName: \"promoter\",\n async: true,\n isPaginated: false,\n successCb: promoterCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editPromoter\",\n stateName: \"promoter\",\n async: true,\n isPaginated: false,\n successCb: promoterEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getPermissions\",\n stateName: \"permissions\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: true,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: true,\n successCb: resetDialog,\n })\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\n \"surveys\",\n {\n metadata: undefined,\n selectedSurvey: undefined,\n openDialog: false,\n openDeleteDialog: false,\n },\n []\n ),\n ...defaultState(\n \"surveyResults\",\n {\n metadata: undefined,\n },\n []\n ),\n\n userSurveys: [],\n ...defaultState(\n \"survey\",\n {\n metadata: undefined,\n selectedSurvey: undefined,\n openDialog: false,\n openDeleteDialog: false,\n },\n {}\n ),\n};\n\nconst surveyEditedSuccess = (state, draft, payload) => {\n //debugger;\n const surveys = state.surveys || [];\n var surveyIndex = surveys.findIndex((u) => u.id === payload.id);\n draft.surveys[surveyIndex] = payload;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.brand_errors = [];\n};\n\nconst surveyDeleteSuccess = (state, draft, payload) => {\n debugger;\n const surveys = state.surveys || [];\n draft.surveys = surveys.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\nconst addSurveyQuestionSuccess = (state, draft, payload) => {\n draft.survey.questions = [...draft.survey.questions, payload];\n};\nconst editSurveyQuestionSuccess = (state, draft, payload) => {\n const questionIndex =\n draft?.survey?.questions?.findIndex((a) => a.id === payload.id) || -1;\n if (questionIndex > -1) draft.survey.questions[questionIndex] = payload;\n};\n\nconst removeSurveyQuestionSuccess = (state, draft, payload) => {\n debugger;\n const questionIndex = draft?.survey?.questions?.findIndex(\n (a) => a.id === payload.id\n );\n draft.survey.questions.splice(questionIndex, 1);\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"saveSurveyInformation\",\n stateName: \"survey\",\n async: false,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getSurveyWithId\",\n stateName: \"survey\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getSurveys\",\n stateName: \"surveys\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getSurveyResults\",\n stateName: \"surveyResults\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getUserSurveys\",\n stateName: \"userSurveys\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getUserSurveysWithId\",\n stateName: \"userSurveysWithId\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createSurvey\",\n stateName: \"survey\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addSurveyResponse\",\n stateName: \"surveyResponse\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editSurvey\",\n stateName: \"survey\",\n async: true,\n isPaginated: false,\n successCb: surveyEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addSurveyQuestion\",\n stateName: \"surveyQuestion\",\n async: true,\n isPaginated: false,\n successCb: addSurveyQuestionSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editSurveyQuestion\",\n stateName: \"surveyQuestion\",\n async: true,\n isPaginated: false,\n successCb: editSurveyQuestionSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"removeSurveyQuestion\",\n stateName: \"surveyQuestion\",\n async: true,\n isPaginated: false,\n successCb: removeSurveyQuestionSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteSurvey\",\n stateName: \"survey\",\n async: true,\n isPaginated: false,\n successCb: surveyDeleteSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setSurvey\",\n stateName: \"survey\",\n async: false,\n isPaginated: false,\n }),\n});\n","// import { createReducer } from \"utils/reduxsauce\";\nimport { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\n \"supervisors\",\n {\n metadata: undefined,\n selectedSupervisor: undefined,\n openDialog: false,\n openDeleteDialog: false,\n },\n []\n ),\n};\n\nconst supervisorCreatedSuccess = (state, draft, payload) => {\n const supervisors = state.supervisors || [];\n draft.supervisors = [...supervisors, payload];\n\n draft.openDialog = false;\n};\nconst supervisorDeleteSuccess = (state, draft, payload) => {\n const supervisors = state.supervisors || [];\n draft.supervisors = supervisors.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\nconst supervisorEditedSuccess = (state, draft, payload) => {\n const supervisors = state.supervisors || [];\n var supervisorIndex = supervisors.findIndex((u) => u.id === payload.id);\n draft.supervisors[supervisorIndex] = payload;\n draft.openDialog = false;\n};\n\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\n\nconst showDetailsDialog = (state, draft, payload) => {\n draft.openDetailsDialog = true;\n};\n\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\n\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.openDetailsDialog = false;\n draft.supervisor_errors = [];\n};\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"deleteSupervisor\",\n stateName: \"supervisor\",\n async: true,\n isPaginated: false,\n successCb: supervisorDeleteSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setSupervisor\",\n stateName: \"supervisor\",\n async: false,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"getAllSupervisors\",\n stateName: \"supervisors\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getAllSupervisorsTasks\",\n stateName: \"supervisorsTasks\",\n async: true,\n isPaginated: true,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"getSupervisor\",\n stateName: \"supervisor\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addSupervisor\",\n stateName: \"supervisor\",\n async: true,\n isPaginated: false,\n successCb: supervisorCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editSupervisor\",\n stateName: \"supervisor\",\n async: true,\n isPaginated: false,\n successCb: supervisorEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: true,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDetailsDialog\",\n stateName: \"openDetailsDialog\",\n async: false,\n isPaginated: true,\n successCb: showDetailsDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: true,\n successCb: resetDialog,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"reportResponses\", { metadata: undefined }, []),\n ...defaultState(\"reportResponse\", { metadata: undefined }, {}),\n ...defaultState(\"reportQuestions\", { metadata: undefined }, []),\n};\n\nconst reportQuestionAdded = (state, draft, payload) => {\n const reportQuestions = state.reportQuestions || [];\n draft.reportQuestions = [...reportQuestions, payload];\n draft.openDialog = false;\n};\n\nconst reportQuestionEdited = (state, draft, payload) => {\n debugger\n const index = state.selectedItem;\n draft.reportQuestions[index] = payload;\n draft.openDialog = false;\n};\n\nconst reportQuestionDeleted = (state, draft, payload) => {\n const index = state.selectedItem;\n draft.reportQuestions.splice(index, 1);\n draft.openDeleteDialog = false;\n};\n\n//\nconst storeSelectedItemIndex = (state, draft, payload) => {\n draft.selectedItem = payload;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.brand_errors = [];\n};\n\nexport const reducer = createReducer(initialState, {\n //reports\n\n ...bindReducers(ActionTypes, {\n action: \"getAllReportResponses\",\n stateName: \"reportResponses\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getReportResponseWithId\",\n stateName: \"reportResponse\",\n async: true,\n isPaginated: false,\n }),\n\n //questions\n\n ...bindReducers(ActionTypes, {\n action: \"getAllReportQuestions\",\n stateName: \"reportQuestions\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addReportQuestion\",\n stateName: \"reportQuestion\",\n async: true,\n isPaginated: false,\n successCb: reportQuestionAdded,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editReportQuestion\",\n stateName: \"reportQuestion\",\n async: true,\n isPaginated: false,\n successCb: reportQuestionEdited,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteReportQuestion\",\n stateName: \"reportQuestion\",\n async: true,\n isPaginated: false,\n successCb: reportQuestionDeleted,\n }),\n\n //\n ...bindReducers(ActionTypes, {\n action: \"storeSelectedItemIndex\",\n stateName: \"selectedItemIndex\",\n async: false,\n isPaginated: false,\n successCb: storeSelectedItemIndex,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n responsesSummary: {},\n};\n\nexport const reducer = createReducer(initialState, {\n //**Categories\n ...bindReducers(ActionTypes, {\n action: \"getGeneralInfo\",\n stateName: \"generalInfo\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getClientResponse\",\n stateName: \"clientResponse\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getProducts\",\n stateName: \"products\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getOffers\",\n stateName: \"offers\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getClientResponces\",\n stateName: \"clientResponces\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getClientResponceWithId\",\n stateName: \"clientResponce\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getResponsesSummary\",\n stateName: \"responsesSummary\",\n async: true,\n isPaginated: false,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"refusalReasons\", { metadata: undefined }, []),\n ...defaultState(\n \"refusalReason\",\n { metadata: undefined },\n\n ),\n};\n\n\nconst refusalReasonEditedSuccess = (state, draft, payload) => {\n const refusalReasons = state.refusalReasons || [];\n var refusalReasonIndex = refusalReasons.findIndex((u) => u.id === payload.id);\n draft.refusalReasons[refusalReasonIndex] = payload;\n draft.openDialog = false;\n\n};\n\nconst refusalReasonCreatedSuccess = (state, draft, payload) => {\n // debugger\n const refusalReasons = state.refusalReasons || [];\n\n draft.refusalReasons = [...refusalReasons, payload];\n draft.openDialog = false;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.brand_errors = [];\n};\n\nconst refusalReasonDeleteSuccess = (state, draft, payload) => {\n const refusalReasons = state.refusalReasons || [];\n draft.refusalReasons = refusalReasons.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\n\n\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getRefusalReasons\",\n stateName: \"refusalReasons\",\n async: true,\n isPaginated: true,\n // successCb: console.log(\"hhhhhdone\")\n }),\n ...bindReducers(ActionTypes, {\n action: \"addRefusalReason\",\n stateName: \"refusalReason\",\n async: true,\n isPaginated: false,\n successCb: refusalReasonCreatedSuccess\n\n }),\n ...bindReducers(ActionTypes, {\n action: \"editRefusalReason\",\n stateName: \"refusalReason\",\n async: true,\n isPaginated: false,\n successCb: refusalReasonEditedSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteRefusalReason\",\n stateName: \"refusalReason\",\n async: true,\n isPaginated: false,\n successCb: refusalReasonDeleteSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n shiftSessions: [],\n exportedSessions: [],\n shiftSession: {},\n monthlyReports:[]\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllShiftSessions\",\n stateName: \"shiftSessions\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getExportedSessions\",\n stateName: \"exportedSessions\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getMonthlyReports\",\n stateName: \"monthlyReports\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getShiftSessionWithId\",\n stateName: \"shiftSession\",\n async: true,\n isPaginated: false,\n }),\n});\n","\n \nimport { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"../../utils/genState\";\nimport createReducer from \"../../utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"outletTypes\", { metadata: undefined }, []),\n ...defaultState(\"outletType\", { metadata: undefined }, {}),\n};\nconst outletTypeEditedSuccess = (state, draft, payload) => {\n const outletTypes = state.outletTypes || [];\n var outletTypeIndex = outletTypes.findIndex((u) => u.id === payload.id);\n draft.outletTypes[outletTypeIndex] = payload;\n draft.openDialog = false;\n};\n\nconst outletTypeCreatedSuccess = (state, draft, payload) => {\n const outletTypes = state.outletTypes || [];\n draft.outletTypes = [...outletTypes, payload];\n draft.openDialog = false;\n};\n\nconst outletTypeDeleteSuccess = (state, draft, payload) => {\n const outletTypes = state.outletTypes || [];\n draft.outletTypes = outletTypes.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.outletType_errors = [];\n};\n\nexport const reducer = createReducer(initialState, { \n ...bindReducers(ActionTypes, {\n action: \"getAllOutletTypes\",\n stateName: \"outletTypes\",\n async: true,\n isPaginated: true\n }),\n ...bindReducers(ActionTypes, {\n action: \"getOutletTypeWithId\",\n stateName: \"outletType\",\n async: true,\n isPaginated: false\n }),\n ...bindReducers(ActionTypes, {\n action: \"createOutletType\",\n stateName: \"outletType\",\n async: true,\n isPaginated: false.valueOf,\n successCb:outletTypeCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"updateOutletType\",\n stateName: \"outletType\",\n async: true,\n isPaginated: false,\n successCb:outletTypeEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteOutletType\",\n stateName: \"outletType\",\n async: true,\n isPaginated: false,\n successCb:outletTypeDeleteSuccess,\n }),\n \n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n ","\n \nimport { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"../../utils/genState\";\nimport createReducer from \"../../utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"channels\", { metadata: undefined }, []),\n ...defaultState(\"channel\", { metadata: undefined }, {}),\n};\nconst channelEditedSuccess = (state, draft, payload) => {\n const channels = state.channels || [];\n var channelIndex = channels.findIndex((u) => u.id === payload.id);\n draft.channels[channelIndex] = payload;\n draft.openDialog = false;\n};\n\nconst channelCreatedSuccess = (state, draft, payload) => {\n const channels = state.channels || [];\n draft.channels = [...channels, payload];\n draft.openDialog = false;\n};\n\nconst channelDeleteSuccess = (state, draft, payload) => {\n const channels = state.channels || [];\n draft.channels = channels.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.channel_errors = [];\n};\n\nexport const reducer = createReducer(initialState, { \n ...bindReducers(ActionTypes, {\n action: \"getAllChannels\",\n stateName: \"channels\",\n async: true,\n isPaginated: true\n }),\n ...bindReducers(ActionTypes, {\n action: \"getChannelWithId\",\n stateName: \"channel\",\n async: true,\n isPaginated: false\n }),\n ...bindReducers(ActionTypes, {\n action: \"createChannel\",\n stateName: \"channel\",\n async: true,\n isPaginated: false,\n successCb:channelCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"updateChannel\",\n stateName: \"channel\",\n async: true,\n isPaginated: false,\n successCb:channelEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteChannel\",\n stateName: \"channel\",\n async: true,\n isPaginated: false,\n successCb:channelDeleteSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n ","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"../../utils/genState\";\nimport createReducer from \"../../utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"groups\", { metadata: undefined }, []),\n ...defaultState(\"group\", { metadata: undefined }, {}),\n};\nconst groupEditedSuccess = (state, draft, payload) => {\n const groups = state.groups || [];\n var groupIndex = groups.findIndex((u) => u.id === payload.id);\n draft.groups[groupIndex] = payload;\n draft.openDialog = false;\n};\nconst createGroupSuccess = (state, draft, payload) => {\n const groups = state.groups || [];\n draft.groups = [...groups, payload];\n draft.openDialog = false;\n};\nconst groupDeleteSuccess = (state, draft, payload) => {\n const groups = state.groups || [];\n draft.groups = groups.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.brand_errors = [];\n};\n\nconst outletAssignedSuccess = (state, draft, payload) => {\n debugger;\n const groupOutletsList = state.groupOutletsList || [];\n draft.groupOutletsList = [...groupOutletsList, payload?.data];\n draft.nonGroupedOutlets = state?.nonGroupedOutlets?.filter(\n (a) => a.id != payload?.data?.id\n );\n draft.openDialog = false;\n};\n\nconst outletRemoveSuccess = (state, draft, payload) => {\n debugger;\n const groupOutletsList = state.groupOutletsList || [];\n draft.groupOutletsList = groupOutletsList.filter(\n (a) => a.id != payload?.data?.id\n );\n draft.nonGroupedOutlets = [...state?.nonGroupedOutlets, payload?.data];\n draft.openDeleteDialog = false;\n};\nconst bulkRemoveSuccess = (state, draft, payload) => {\n debugger;\n const groupOutletsList = state.groupOutletsList || [];\n draft.groupOutletsList = groupOutletsList.filter(\n (a) => !payload?.data.includes(a.id)\n );\n\n draft.openDialog = false;\n};\nconst bulkAssignSuccess = (state, draft, payload) => {\n debugger;\n const nonGroupedOutlets = state.nonGroupedOutlets || [];\n draft.nonGroupedOutlets = nonGroupedOutlets.filter(\n (a) => !payload?.data.includes(a.id)\n );\n\n draft.openDialog = false;\n};\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllGroups\",\n stateName: \"groups\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getGroupWithId\",\n stateName: \"group\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createGroup\",\n stateName: \"group\",\n async: true,\n isPaginated: false,\n successCb: createGroupSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"updateGroup\",\n stateName: \"group\",\n async: true,\n isPaginated: false,\n successCb: groupEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteGroup\",\n stateName: \"group\",\n async: true,\n isPaginated: false,\n successCb: groupDeleteSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getGroupClients\",\n stateName: \"groupClients\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createGroupClient\",\n stateName: \"groupClient\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createGroupClients\",\n stateName: \"groupClientsState\",\n async: true,\n isPaginated: false,\n }),\n ///outlets\n ...bindReducers(ActionTypes, {\n action: \"getNonGroupedOutlets\",\n stateName: \"nonGroupedOutlets\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getGroupOutletsList\",\n stateName: \"groupOutletsList\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createGroupOutlet\",\n stateName: \"groupOutlet\",\n async: true,\n isPaginated: false,\n successCb: outletAssignedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createGroupOutlets\",\n stateName: \"groupOutletsCreated\",\n async: true,\n isPaginated: false,\n successCb: bulkAssignSuccess,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"removeGroupOutlet\",\n stateName: \"groupOutletRemoved\",\n async: true,\n isPaginated: false,\n successCb: outletRemoveSuccess,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"removeGroupOutlets\",\n stateName: \"groupOutletsRemoved\",\n async: true,\n isPaginated: false,\n successCb: bulkRemoveSuccess,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"uploadGroupOutlets\",\n stateName: \"groupOutletsUploaded\",\n async: true,\n isPaginated: false,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setGroup\",\n stateName: \"group\",\n async: false,\n isPaginated: false,\n }),\n});\n","import { bindReducers, defaultState } from \"../../utils/genState\";\n\nimport { ActionTypes } from \"./actions\";\nimport createReducer from \"../../utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"spins\", { metadata: undefined }, []),\n ...defaultState(\"rewards\", { metadata: undefined }, []),\n};\n\nconst removeSupervisorFromSpinSuccess = (state, draft, payload) => {\n const supervisors = state.assignedSupervisors || [];\n draft.assignedSupervisors = supervisors.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\nconst assignSupervisorSuccess = (state, draft, payload) => {\n //debugger\n const supervisors = state.assignedSupervisors || [];\n draft.assignedSupervisors = [...supervisors, payload];\n};\n\nconst spinDeleteSuccess = (state, draft, payload) => {\n const spins = state.spins || [];\n draft.spins = spins.filter((a) => a.id != payload?.id);\n draft.openDeleteDialog = false;\n};\n\n// const spinCreatedSuccess = (state, draft, payload) => {\n// const spins = state.spins || [];\n// draft.spins = [...spins, payload];\n// draft.openDialog = false;\n// };\n\nconst setData = (state, draft, payload) => {\n const { item, value } = payload;\n draft[item] = value;\n};\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\n\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n};\n// Rewards\nconst rewardEditedSuccess = (state, draft, payload) => {\n const rewards = state.rewards || [];\n let rewardIndex = rewards.findIndex((u) => u.id === payload.id);\n draft.rewards[rewardIndex] = payload;\n draft.openDialog = false;\n};\n\nconst rewardCreatedSuccess = (state, draft, payload) => {\n const rewards = state.rewards || [];\n draft.rewards = [...rewards, payload];\n};\n\nconst rewardDeleteSuccess = (state, draft, payload) => {\n const rewards = state.rewards || [];\n draft.rewards = rewards.filter((a) => a.id != payload);\n draft.openDeleteDialog = false;\n};\nconst setReward = (state, draft, payload) => {\n draft.reward = undefined;\n};\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllSpin\",\n stateName: \"spins\",\n async: true,\n isPaginated: true,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"getSpinWithId\",\n stateName: \"spin\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createSpin\",\n stateName: \"spin\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"updateSpin\",\n stateName: \"spin\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteSpin\",\n stateName: \"spin\",\n async: true,\n isPaginated: false,\n successCb: spinDeleteSuccess,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"setData\",\n stateName: \"data\",\n async: false,\n isPaginated: false,\n successCb: setData,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: true,\n successCb: resetDialog,\n }),\n ///rewards\n ...bindReducers(ActionTypes, {\n action: \"getAllRewards\",\n stateName: \"rewards\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getRewardWithId\",\n stateName: \"reward\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createReward\",\n stateName: \"reward\",\n async: true,\n isPaginated: false,\n successCb: rewardCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"updateReward\",\n stateName: \"reward\",\n async: true,\n isPaginated: false,\n successCb: rewardEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteReward\",\n stateName: \"reward\",\n async: true,\n isPaginated: false,\n successCb: rewardDeleteSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setReward\",\n stateName: \"reward\",\n async: false,\n isPaginated: false,\n successCb: setReward,\n }),\n // Supervisor\n ...bindReducers(ActionTypes, {\n action: \"assignedSupervisor\",\n stateName: \"assignedSupervisors\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"notAssignedSupervisor\",\n stateName: \"notAssignedSupervisors\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"removeSupervisorFromSpin\",\n stateName: \"assignedSupervisor\",\n async: true,\n isPaginated: false,\n successCb: removeSupervisorFromSpinSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"assignSupervisor\",\n stateName: \"assignedSupervisor\",\n async: true,\n isPaginated: false,\n successCb: assignSupervisorSuccess,\n }),\n});\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getGeneralInfo: { args: [\"payload\"], meta: { async: true } },\n getClientResponse: { args: [\"payload\"], meta: { async: true } },\n getProducts: { args: [\"payload\"], meta: { async: true } },\n getOffers: { args: [\"payload\"], meta: { async: true } },\n getClientResponces: { args: [\"payload\"], meta: { async: true } },\n getClientResponceWithId: { args: [\"payload\"], meta: { async: true } },\n getResponsesSummary: { args: [\"payload\"], meta: { async: true } },\n },\n {\n prefix: \"@app/dashboard/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n attendances: [],\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllAttendances\",\n stateName: \"attendances\",\n async: true,\n isPaginated: true,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\n \"tmrs\",\n {\n metadata: undefined,\n selectedTmr: undefined,\n openDialog: false,\n openDeleteDialog: false,\n },\n []\n ),\n};\n\nconst tmrCreatedSuccess = (state, draft, payload) => {\n const tmrs = state.tmrs || [];\n draft.tmrs = [...tmrs, payload];\n\n draft.openDialog = false;\n};\n\nconst tmrDeleteSuccess = (state, draft, payload) => {\n const tmrs = state.tmrs || [];\n draft.tmrs = tmrs.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\nconst tmrEditedSuccess = (state, draft, payload) => {\n const tmrs = state.tmrs || [];\n var tmrIndex = tmrs.findIndex((u) => u.id === payload.id);\n draft.tmrs[tmrIndex] = payload;\n draft.openDialog = false;\n};\n\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\n\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n draft.tmr_errors = [];\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"deleteTmr\",\n stateName: \"tmr\",\n async: true,\n isPaginated: false,\n successCb: tmrDeleteSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setTmr\",\n stateName: \"tmr\",\n async: false,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getAllTmr\",\n stateName: \"tmrs\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getTmr\",\n stateName: \"tmr\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"addTmr\",\n stateName: \"tmr\",\n async: true,\n isPaginated: false,\n successCb: tmrCreatedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"editTmr\",\n stateName: \"tmr\",\n async: true,\n isPaginated: false,\n successCb: tmrEditedSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: true,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: true,\n successCb: resetDialog,\n }),\n});\n","import { ActionTypes } from \"./actions\";\nimport { defaultState, bindReducers } from \"src/utils/genState\";\nimport createReducer from \"src/utils/reduxsauce/createReducer\";\n\nconst initialState = {\n ...defaultState(\"areas\", { metadata: undefined }, []),\n};\n\nconst editAreaSuccess = (state, draft, payload) => {\n const index = state.areas.findIndex((r) => r.id === payload.id);\n if (index >= 0) {\n draft.areas[index] = payload;\n }\n draft.openDialog = false;\n};\n\nconst areaCreatedSuccess = (state, draft, payload) => {\n const areas = state.areas || [];\n draft.areas = [...areas, payload];\n draft.openDialog = false;\n};\n\nconst areaDeleteSuccess = (state, draft, payload) => {\n const areas = state.areas || [];\n draft.areas = areas.filter((a) => a.id != payload.id);\n draft.openDeleteDialog = false;\n};\n\nconst showDialog = (state, draft, payload) => {\n draft.openDialog = true;\n};\nconst showDeleteDialog = (state, draft, payload) => {\n draft.openDeleteDialog = true;\n};\nconst resetDialog = (state, draft, payload) => {\n draft.openDialog = false;\n draft.openDeleteDialog = false;\n};\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"getAllAreas\",\n stateName: \"areas\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"getAreaById\",\n stateName: \"area\",\n async: true,\n isPaginated: true,\n }),\n ...bindReducers(ActionTypes, {\n action: \"createArea\",\n stateName: \"area\",\n async: true,\n isPaginated: false,\n successCb: areaCreatedSuccess,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"editArea\",\n stateName: \"area\",\n async: true,\n isPaginated: false,\n successCb: editAreaSuccess,\n }),\n ...bindReducers(ActionTypes, {\n action: \"deleteArea\",\n stateName: \"area\",\n async: true,\n isPaginated: false,\n successCb: areaDeleteSuccess,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDeleteDialog\",\n stateName: \"showDeleteDialog\",\n async: false,\n isPaginated: false,\n successCb: showDeleteDialog,\n }),\n\n ...bindReducers(ActionTypes, {\n action: \"showDialog\",\n stateName: \"showDialog\",\n async: false,\n isPaginated: false,\n successCb: showDialog,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetDialog\",\n stateName: \"resetDialog\",\n async: false,\n isPaginated: false,\n successCb: resetDialog,\n }),\n});\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllTmr: { args: [\"payload\"], meta: { async: true } },\n getTmr: { args: [\"payload\"], meta: { async: true } },\n setTmr: { args: [\"payload\"], meta: { async: true } },\n addTmr: { args: [\"payload\"], meta: { async: true } },\n deleteTmr: { args: [\"payload\"], meta: { async: true } },\n editTmr: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/Tmr/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","\nimport { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllOutletTypes: { args: [\"payload\"], meta: { async: true } },\n getOutletTypeWithId: { args: [\"payload\"], meta: { async: true } },\n createOutletType: { args: [\"payload\"], meta: { async: true } },\n updateOutletType: { args: [\"payload\"], meta: { async: true } },\n deleteOutletType: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/outletType/\"\n }\n);\n\nexport const ActionTypes = Types;\nexport default Creators;\nexport const AuthActions=Creators;\n\n ","\nimport { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllChannels: { args: [\"payload\"], meta: { async: true } },\n getChannelWithId: { args: [\"payload\"], meta: { async: true } },\n createChannel: { args: [\"payload\"], meta: { async: true } },\n updateChannel: { args: [\"payload\"], meta: { async: true } },\n deleteChannel: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/channel/\"\n }\n);\n\nexport const ActionTypes = Types;\nexport default Creators;\nexport const AuthActions=Creators;\n\n ","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllOffers: { args: [\"payload\"], meta: { async: true } },\n getOfferWithId: { args: [\"payload\"], meta: { async: true } },\n addOffer: { args: [\"payload\"], meta: { async: true } },\n editOffer: { args: [\"payload\"], meta: { async: true } },\n deleteOffer: { args: [\"payload\"], meta: { async: true } },\n\n setOffer: { args: [\"payload\"], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/offers/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n createArea: { args: [\"payload\"], meta: { async: true } },\n editArea: { args: [\"payload\"], meta: { async: true } },\n deleteArea: { args: [\"payload\"], meta: { async: true } },\n getAllAreas: { args: [\"payload\"], meta: { async: true } },\n getAreaById: { args: [\"payload\"], meta: { async: true } },\n\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/Areas/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllCompanyInfos: { args: [], meta: { async: true } },\n getCompanyInfoWithId: { args: [\"payload\"], meta: { async: true } },\n addCompanyInfo: { args: [\"payload\"], meta: { async: true } },\n editCompanyInfo: { args: [\"payload\"], meta: { async: true } },\n deleteCompanyInfo: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/CompanyInfos/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllAgeRanges: { args: [\"payload\"], meta: { async: true } },\n getAgeRangeWithId: { args: [\"payload\"], meta: { async: true } },\n addAgeRange: { args: [\"payload\"], meta: { async: true } },\n editAgeRange: { args: [\"payload\"], meta: { async: true } },\n deleteAgeRange: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/ageRanges/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","var map = {\n\t\"./ar/messages.po\": [\n\t\t569,\n\t\t79\n\t],\n\t\"./en/messages.po\": [\n\t\t570,\n\t\t80\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(function() {\n\t\treturn __webpack_require__.t(id, 7);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 555;\nmodule.exports = webpackAsyncContext;","import { createReducer } from \"reduxsauce\";\nimport { produce } from \"immer\";\nimport jwtDecoder from \"jwt-decode\";\n\nimport { ActionTypes } from \"./actions\";\nimport { bindReducers } from \"src/utils/genState\";\n\nconst initialState = {\n user: null,\n isLoggedIn: false,\n token: null,\n loginError: undefined,\n notifications: [],\n};\n\nconst login = state => {\n return produce(state, draft => {\n draft.loginLoading = true;\n });\n};\nconst loginSuccess = (state, draft, payload) => {\n\n const user = jwtDecoder(payload.data.token);\n draft.user = user;\n draft.isLoggedIn = true;\n draft.loginLoading = false;\n const roles = JSON.parse(user?.role);\n const isAdmin = !roles.some(r => r.toLowerCase() === \"promoter\");\n localStorage.setItem('userData', JSON.stringify(user))\n localStorage.setItem('jwtToken', payload.data.token)\n localStorage.setItem('refreshToken', payload.data.refreshToken)\n};\nconst loginFail = (state, { payload }) => {\n\n return produce(state, draft => {\n draft.loginLoading = false;\n draft.loginError = payload.message\n });\n};\nconst updateTokenSuccess = (state, draft, payload) => {\n const user = jwtDecoder(payload);\n if (user.active === false) {\n localStorage.removeItem('userData')\n localStorage.removeItem('jwtToken')\n draft.user = undefined;\n draft.isLoggedIn = false;\n return;\n }\n draft.user = user;\n draft.loginLoading = false;\n localStorage.setItem('userData', JSON.stringify(user))\n localStorage.setItem('jwtToken', payload)\n};\nconst updateUserScoreSuccess = (state, draft, payload) => {\n draft.user={...draft.user,score:payload}\n};\n\nconst logout = (state, { payload }) => {\n return produce(state, draft => {\n localStorage.removeItem('userData')\n localStorage.removeItem('jwtToken')\n draft.user = undefined;\n draft.isLoggedIn = false;\n });\n};\n\nconst getNotifications = state => {\n return produce(state, draft => {\n draft.loginLoading = true;\n });\n};\nconst getNotificationsSuccess = (state, { payload }) => {\n return produce(state, draft => {\n draft.notifications = payload.data\n draft.loginLoading = false;\n\n });\n};\nconst getNotificationsFail = (state, { payload }) => {\n return produce(state, draft => {\n draft.loginLoading = false;\n draft.loginError = payload.message\n });\n};\nconst addNotification = (state, { notify }) => {\n return produce(state, draft => {\n draft.loginLoading = false;\n draft.notifications = [notify, ...state.notifications]\n });\n};\nconst readNotification = (state, { notify }) => {\n return produce(state, draft => {\n });\n};\nconst readNotificationSuccess = (state, { payload }) => {\n return produce(state, draft => {\n draft.notifications.forEach(a => {\n if (a.notifyId === payload.data.notficiationId)\n a.read = true;\n });\n });\n};\nconst readNotificationFailed = (state, { notify }) => {\n return produce(state, draft => {\n });\n};\nconst resetPasswordSuccess = (state, draft, payload) => {\n draft.changePassword_errors = null\n};\n\n\nexport const authReducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"login\",\n stateName: \"login\",\n async: true,\n isPaginated: false,\n successCb: loginSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"updateToken\",\n stateName: \"updateToken\",\n async: false,\n isPaginated: false,\n successCb: updateTokenSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"updateProfile\",\n stateName: \"updateProfile\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"changePassword\",\n stateName: \"changePassword\",\n async: true,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"resetChangePassword\",\n stateName: \"resetChangePassword\",\n successCb: resetPasswordSuccess\n }),\n ...bindReducers(ActionTypes, {\n action: \"updateUserScore\",\n async: false,\n isPaginated: false,\n successCb: updateUserScoreSuccess\n }),\n // [ActionTypes.LOGIN]: login,\n // [ActionTypes.LOGIN_SUCCESS]: loginSuccess,\n // [ActionTypes.LOGIN_FAIL]: loginFail,\n [ActionTypes.LOGOUT]: logout,\n [ActionTypes.GET_NOTIFICATIONS]: getNotifications,\n [ActionTypes.GET_NOTIFICATIONS_SUCCESS]: getNotificationsSuccess,\n [ActionTypes.GET_NOTIFICATIONS_FAIL]: getNotificationsFail,\n [ActionTypes.ADD_NOTIFICATION]: addNotification,\n [ActionTypes.READ_NOTIFICATION]: readNotification,\n [ActionTypes.READ_NOTIFICATION_SUCCESS]: readNotificationSuccess,\n [ActionTypes.READ_NOTIFICATION_FAIL]: readNotificationFailed,\n});","// ** ThemeConfig Import\nimport themeConfig from 'src/configs/themeConfig'\nimport { createReducer } from \"reduxsauce\";\nimport { produce } from \"immer\";\n\nimport { ActionTypes } from \"./actions\";\nimport { bindReducers } from \"src/utils/genState\";\n\n// ** Returns Initial Menu Collapsed State\nconst initialMenuCollapsed = () => {\n const item = window.localStorage.getItem('menuCollapsed')\n //** Parse stored json or if none return initialValue\n return item ? JSON.parse(item) : themeConfig.layout.menu.isCollapsed\n}\n\n// ** Initial State\nconst initialState = {\n isRTL: themeConfig.layout.isRTL,\n menuCollapsed: initialMenuCollapsed(),\n menuHidden: themeConfig.layout.menu.isHidden,\n contentWidth: themeConfig.layout.contentWidth,\n logo: \"roi\",\n appName: \"roi\",\n url: \"\"\n}\n\nconst setRtl = (state, draft, payload) => {\n draft.isRTL = payload;\n}\nconst setMenuHidden = (state, draft, payload) => {\n draft.menuHidden = payload;\n}\nconst setMenuCollapsed = (state, draft, payload) => {\n draft.menuCollapsed = payload;\n}\n\nconst layoutReducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {\n action: \"handleRtl\",\n stateName: \"isRTL\",\n async: false,\n isPaginated: false,\n successCb: setRtl,\n }),\n ...bindReducers(ActionTypes, {\n action: \"handleMenuHidden\",\n stateName: \"isRTL\",\n async: false,\n isPaginated: false,\n successCb: setMenuHidden,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setLogo\",\n stateName: \"logo\",\n async: false,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setAppName\",\n stateName: \"appName\",\n async: false,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"setUrl\",\n stateName: \"url\",\n async: false,\n isPaginated: false,\n }),\n ...bindReducers(ActionTypes, {\n action: \"handleMenuCollapsed\",\n stateName: \"menuCollapsed\",\n async: false,\n isPaginated: false,\n successCb: setMenuCollapsed,\n }),\n\n // [ActionTypes.LOGOUT]: logout,\n\n});\n\n// const layoutReducer = (state = initialState, action) => {\n// switch (action.type) {\n// case 'HANDLE_CONTENT_WIDTH':\n// return { ...state, contentWidth: action.value }\n// case 'HANDLE_MENU_COLLAPSED':\n// window.localStorage.setItem('menuCollapsed', action.value)\n// return { ...state, menuCollapsed: action.value }\n// case 'HANDLE_MENU_HIDDEN':\n// return { ...state, menuHidden: action.value }\n// case 'HANDLE_RTL':\n// return { ...state, isRTL: action.value }\n// default:\n// return state\n// }\n// }\n\nexport default layoutReducer\n","// ** Initial State\nconst initialState = {\n suggestions: [],\n bookmarks: [],\n query: ''\n}\n\nconst navbarReducer = (state = initialState, action) => {\n switch (action.type) {\n case 'HANDLE_SEARCH_QUERY':\n return { ...state, query: action.val }\n case 'GET_BOOKMARKS':\n return { ...state, suggestions: action.data, bookmarks: action.bookmarks }\n case 'UPDATE_BOOKMARKED':\n let objectToUpdate\n\n // ** find & update object\n state.suggestions.find(item => {\n if (item.id === action.id) {\n item.isBookmarked = !item.isBookmarked\n objectToUpdate = item\n }\n })\n\n // ** Get index to add or remove bookmark from array\n const bookmarkIndex = state.bookmarks.findIndex(x => x.id === action.id)\n\n if (bookmarkIndex === -1) {\n state.bookmarks.push(objectToUpdate)\n } else {\n state.bookmarks.splice(bookmarkIndex, 1)\n }\n\n return { ...state }\n default:\n return state\n }\n}\n\nexport default navbarReducer\n","import { authReducer } from \"./auth/reducer\";\nimport { combineReducers } from \"redux\";\nimport { connectRouter } from \"connected-react-router\";\nimport layoutReducer from \"./layout/reducer\";\nimport navbarReducer from \"./navbar/reducer\";\nimport { persistReducer } from \"redux-persist\";\nimport storage from \"redux-persist/lib/storage\";\n\n// -------------------\n\nconst rootPersistConfig = {\n key: \"root\",\n storage,\n blacklist: [\n \"router\",\n \"userManegment\",\n \"products\",\n \"brands\",\n \"offers\",\n \"outlets\",\n \"outletType\",\n \"channels\",\n \"companyInfos\",\n \"prizes\",\n \"cities\",\n \"refusalReasons\",\n \"nationalities\",\n \"ageRanges\",\n \"promoters\",\n \"supervisors\",\n \"reports\",\n \"lookups\",\n \"shiftSessions\",\n \"dashboard\",\n \"survey\",\n \"group\",\n \"spinWheel\",\n \"attendances\",\n ],\n};\n\nexport default function createReducer(asyncReducers, history) {\n return persistReducer(\n rootPersistConfig,\n combineReducers({\n ...asyncReducers,\n router: connectRouter(history),\n app: require(\"./app/reducer\").reducer,\n auth: authReducer,\n layout: layoutReducer,\n navbar: navbarReducer,\n userManegment: require(\"./userManagement/reducer\").reducer,\n settings: require(\"./setting/reducer\").reducer,\n brands: require(\"./brands/reducer\").reducer,\n products: require(\"./products/reducer\").reducer,\n lookups: require(\"./lookups/reducer\").reducer,\n companyInfos: require(\"./companyInfo/reducer\").reducer,\n prizes: require(\"./prize/reducer\").reducer,\n offers: require(\"./offers/reducer\").reducer,\n outlets: require(\"./outlets/reducer\").reducer,\n cities: require(\"./city/reducer\").reducer,\n nationalities: require(\"./nationalities/reducer\").reducer,\n ageRanges: require(\"./ageRange/reducer\").reducer,\n promoters: require(\"./promoter/reducer\").reducer,\n survey: require(\"./survey/reducer\").reducer,\n supervisors: require(\"./supervisor/reducer\").reducer,\n reports: require(\"./reports/reducer\").reducer,\n dashboard: require(\"./dashboard/reducer\").reducer,\n refusalReasons: require(\"./refusalReason/reducer\").reducer,\n shiftSessions: require(\"./shiftSessions/reducer\").reducer,\n outletType: require(\"./outletType/reducer\").reducer,\n channels: require(\"./channel/reducer\").reducer,\n group: require(\"./group/reducer\").reducer,\n spinWheel: require(\"./spinningWheel/reducer\").reducer,\n attendances: require(\"./attendances/reducer\").reducer,\n tmr: require(\"./tmr/reducer\").reducer,\n area: require(\"./area/reducer\").reducer,\n })\n );\n}\n","const Storage = window.localStorage;\n\nexport default Storage;","import { createLogic } from \"redux-logic\";\nimport { toast } from \"react-toastify\";\nimport { push } from \"connected-react-router\";\n// import adminActions from \"store/admin/actions\";\nimport authActions from \"src/store/auth/actions\";\nimport storage from \"src/services/storage\";\nimport jwtDecoder from 'jwt-decode';\nimport * as moment from 'moment';\nconst normalizeActionName = (actionName) => {\n if (actionName == undefined) {\n console.error(\"action is not correct passed to logic generator\");\n }\n return actionName\n .toLowerCase()\n .split(\"/\")\n .pop()\n .split(\"_\")\n .map((a, i) => (i > 0 ? a.charAt(0).toUpperCase() + a.substring(1) : a))\n .join(\"\");\n};\n\nconst sleep = (ms) => {\n return new Promise((resolve) => setTimeout(resolve, ms));\n};\n\n/**\n *\n * @param {String} apiNamespace api namespace\n * @param {String{}} options options which contain all options ,\n * @param {String} options.actionName => action name which will be executed,\n * @param {Function} options.successCb => custom success callback for more custom logic,\n * @param {Function} options.failCb => custom failure call back for custom error logic,\n * @param {String} options.successMessage => success message that will show on toastr when action successeded ,\n * @param {String} options.errorMessage => error message that will show on toastr when action failed,\n * @param {Boolean} options.showSuccessMessage => boolean if you have a custom success message by default false,\n * @param {Boolean} options.showErrorMessage => boolean if you have a custom error message by default false,\n *\n */\nexport const logic = (apiNamespace, options = {}) => {\n const {\n actionName,\n successCb,\n failCb,\n successMessage,\n errorMessage,\n showSuccessMessage,\n showErrorMessage,\n } = options;\n const api_name = normalizeActionName(actionName);\n const logic = createLogic({\n type: actionName,\n latest: true,\n\n async process({ getState, action, api }, dispatch, done) {\n try {\n _validateApi(api, apiNamespace, api_name, action);\n await refreshToken(api);\n\n let app = localStorage.getItem('app_name');\n let apiURI = app === 'roi' ?\n process.env.REACT_APP_BASE_API_URL\n : process.env.REACT_APP_BASE_API_URL_NAKHLA;\n\n api.setBaseURL(apiURI);\n\n const res = await api[apiNamespace][api_name](action.payload);\n if (!res.ok) {\n if (res.status == 401) {\n const token = \"jwtToken\";\n const currentToken = storage.getItem(token);\n if (currentToken)\n storage.removeItem(token);\n dispatch(authActions.logout());\n dispatch(push(\"/\"));\n } else {\n const _errorMsg =\n (res.data && (res.data.errors || res.data.errorMessage)) ||\n \"Unknown Error\";\n dispatch({\n type: `${actionName}_FAIL`,\n payload: _errorMsg,\n error: true,\n });\n\n if (failCb) {\n failCb(dispatch, res.data);\n } else if (showErrorMessage) {\n if (errorMessage) toast.error(errorMessage);\n else {\n if (res.data && res.data.errorCode == \"404\") {\n toast.error(\"No data found\");\n } else {\n toast.error(res.data.errorMessage);\n }\n }\n }\n }\n } else {\n dispatch({ type: `${actionName}_SUCCESS`, payload: res.data });\n successCb && successCb(dispatch, res.data);\n if (showSuccessMessage) toast.success(successMessage);\n }\n } catch (err) {\n console.error(\"Unhandled error in logic \", err);\n dispatch({ type: `${actionName}_FAIL`, payload: err, error: true });\n failCb && failCb(dispatch);\n }\n done();\n },\n });\n return logic;\n};\n\nconst refreshToken = async (api) => {\n const token = localStorage.getItem(\"jwtToken\");\n if (token) {\n const decoder = jwtDecoder(token);\n if (decoder.exp < moment().unix()) {\n const refreshToken = localStorage.getItem(\"refreshToken\");\n const response = await api[\"auth\"][\"refreshToken\"]({\n token: token,\n refreshToken: refreshToken\n });\n if (response.ok) {\n const payload = response.data;\n localStorage.setItem('jwtToken', payload.data.token)\n localStorage.setItem('refreshToken', payload.data.refreshToken)\n }\n }\n }\n}\n\nfunction _validateApi(api, apiNamespace, api_name, action) {\n //todo: validatte api\n const func = api[apiNamespace][api_name];\n if (!func) {\n }\n}\n\nexport default logic;\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { Trans } from \"@lingui/react\";\n\nconst apiNamespace = \"ageRanges\";\n\nconst getAllAgeRangesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_AGE_RANGES,\n});\n\nconst getAgeRangeWithId = logic(apiNamespace, {\n actionName: ActionTypes.GET_AGE_RANGE_WITH_ID,\n});\nconst addAgeRangeLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_AGE_RANGE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst editAgeRangeLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_AGE_RANGE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst deleteAgeRangeLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_AGE_RANGE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getAllAgeRangesLogic,\n addAgeRangeLogic,\n editAgeRangeLogic,\n deleteAgeRangeLogic,\n getAgeRangeWithId,\n];\n","import { ActionTypes } from \"./actions\";\nimport logic from \"src/utils/genLogic\";\n\nconst apiNamespace = \"app\";\n\nconst pingLogic = logic(apiNamespace, {actionName:ActionTypes.PING});\nconst getCountriesLogic = logic(apiNamespace, {actionName:ActionTypes.GET_COUNTRIES});\nconst getCitiesLogic = logic(apiNamespace, {actionName:ActionTypes.GET_CITIES});\n\nexport default [pingLogic,getCountriesLogic,getCitiesLogic];\n","import { createLogic } from \"redux-logic\";\nimport { ActionTypes } from \"./actions\";\nimport logic from \"src/utils/genLogic\";\nimport { push } from \"connected-react-router\";\nimport jwtDecode from \"jwt-decode\";\n\nconst apiNamespace = \"auth\";\nexport const getNotificationsLogic = createLogic({\n type: ActionTypes.GET_NOTIFICATIONS,\n latest: true,\n\n async process({ getState, action, api }, dispatch, done) {\n try {\n const res = await api.auth.getNotifications(action.loginRequest);\n if (!res.ok || !res.data.success) {\n dispatch({\n type: ActionTypes.GET_NOTIFICATIONS_FAIL,\n payload: res.data || \"Unknown Error\",\n error: true\n })\n ;\n } else {\n dispatch({ type: ActionTypes.GET_NOTIFICATIONS_SUCCESS, payload: res.data });\n }\n } catch (err) {\n dispatch({ type: ActionTypes.GET_NOTIFICATIONS_FAIL, payload: err, error: true });\n }\n\n done();\n } \n});\nexport const readNotificationLogic = createLogic({\n type: ActionTypes.READ_NOTIFICATION,\n latest: true,\n\n async process({ getState, action, api }, dispatch, done) {\n try {\n const res = await api.auth.readNotification(action.payload);\n if (!res.ok || !res.data.success) {\n dispatch({\n type: ActionTypes.READ_NOTIFICATION_FAIL,\n payload: res.data || \"Unknown Error\",\n error: true\n })\n ;\n } else {\n dispatch({ type: ActionTypes.READ_NOTIFICATION_SUCCESS, payload: res.data });\n }\n } catch (err) {\n dispatch({ type: ActionTypes.READ_NOTIFICATION_FAIL, payload: err, error: true });\n }\n\n done();\n } \n});\nconst loginLogic = logic(apiNamespace, {actionName:ActionTypes.LOGIN,showErrorMessage:true,errorMessage:'Invalid login ',\nshowSuccessMessage:false,\n// successMessage:\"Welcome back\",\nsuccessCb:(dispatch,payload)=>{\n const user= jwtDecode(payload.data.token); \n if(user.role.includes(\"Promoter\")){\n dispatch(push(\"/survey\"));\n\n }else\n dispatch(push(\"/home\"));\n}\n\n});\nconst changePasswordLogic = logic(apiNamespace, {actionName:ActionTypes.CHANGE_PASSWORD,showErrorMessage:true,errorMessage:'Faild to change your password ',\nshowSuccessMessage:true,\nsuccessMessage:\"Your password updated successfully\"});\nconst updateProfileLogic = logic(apiNamespace, {actionName:ActionTypes.UPDATE_PROFILE,showErrorMessage:true,errorMessage:'Faild to update your profile',\nshowSuccessMessage:true,\nsuccessMessage:\"Your profile updated successfully\"});\n\nexport default [changePasswordLogic,updateProfileLogic, loginLogic,getNotificationsLogic,readNotificationLogic];","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { Trans } from \"@lingui/react\";\nconst apiNamespace = \"brands\";\n\nconst getAllBrandsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_BRANDS,\n});\nconst getBrandWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_BRAND_WITH_ID,\n});\nconst addBrandLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_BRAND,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst editBrandLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_BRAND,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst deleteBrandLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_BRAND,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getAllBrandsLogic,\n getBrandWithIdLogic,\n addBrandLogic,\n editBrandLogic,\n deleteBrandLogic,\n];\n","\nimport { ActionTypes } from \"./actions\";\nimport logic from \"../../utils/genLogic\";\nimport { Trans } from \"@lingui/react\";\nconst apiNamespace = \"channel\";\n\nconst getAllChannelsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_CHANNELS,\n});\nconst getChannelWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_CHANNEL_WITH_ID,\n});\nconst createChannelLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_CHANNEL,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\nconst updateChannelLogic = logic(apiNamespace, {\n actionName: ActionTypes.UPDATE_CHANNEL,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\nconst deleteChannelLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_CHANNEL,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getAllChannelsLogic,\n getChannelWithIdLogic,\n createChannelLogic, \n updateChannelLogic,\n deleteChannelLogic\n];\n \n ","import logic from \"src/utils/genLogic\";\nimport actions, { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\nimport { Trans } from \"@lingui/react\";\nconst apiNamespace = \"Cities\";\n\nconst getCitiesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_CITIES,\n});\n\nconst getAllCitiesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_CITIES,\n});\n\nconst getAllCountriesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_COUNTRIES,\n});\nconst createCountryLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_COUNTRY,\n\n});\nconst editCountryLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_COUNTRY,\n});\nconst deleteCountryLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_COUNTRY,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n\n});\nconst createCityLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_CITY,\n successCb: (dispatch) => {\n dispatch(push(\"/cities/list\"));\n },\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\nconst editCityLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_CITY,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\nconst deleteCityLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_CITY,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getCitiesLogic,\n createCityLogic,\n editCityLogic,\n deleteCityLogic,\n getAllCountriesLogic,\n createCountryLogic,\n editCountryLogic,\n deleteCountryLogic,\n getAllCitiesLogic\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\n\nconst apiNamespace = \"companyInfos\";\n\n\nconst getAllCompanyInfosLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_COMPANY_INFOS,\n});\n\nconst getCompanyInfoWithId = logic(apiNamespace, {\n actionName: ActionTypes.GET_COMPANY_INFO_WITH_ID,\n});\nconst addCompanyInfoLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_COMPANY_INFO,\n successCb: (dispatch) => {\n dispatch(push(\"/companyInfo\"));\n }\n});\n\nconst editCompanyInfoLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_COMPANY_INFO,\n successCb: (dispatch) => {\n dispatch(push(\"/companyInfo\"));\n }\n});\n\nconst deleteCompanyInfoLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_COMPANY_INFO,\n});\n\n\n\nexport default [\n getAllCompanyInfosLogic,\n addCompanyInfoLogic,\n editCompanyInfoLogic,\n deleteCompanyInfoLogic,\n getCompanyInfoWithId\n\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\n\nconst apiNamespace = \"dashboard\";\n\n// categories\n\nconst getGeneralInfoLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_GENERAL_INFO,\n});\n\nconst getClientResponseLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_CLIENT_RESPONSE,\n});\nconst getProductsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_PRODUCTS,\n});\nconst getOffersLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_OFFERS,\n});\nconst getClientResponcesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_CLIENT_RESPONCES,\n});\nconst getClientResponceWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_CLIENT_RESPONCE_WITH_ID,\n});\nconst getResponsesSummaryLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_RESPONSES_SUMMARY,\n});\nexport default [\n getGeneralInfoLogic,\n getClientResponseLogic,\n getProductsLogic,\n getOffersLogic,\n getClientResponcesLogic,\n getClientResponceWithIdLogic,\n getResponsesSummaryLogic\n];\n","import { ActionTypes } from \"./actions\";\nimport logic from \"../../utils/genLogic\";\nimport { Trans } from \"@lingui/react\";\nimport { push } from \"connected-react-router\";\n\nconst apiNamespace = \"group\";\n\nconst getAllGroupsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_GROUPS,\n});\nconst getGroupWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_GROUP_WITH_ID,\n});\nconst createGroupLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_GROUP,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/group/list\"));\n },\n});\nconst updateGroupLogic = logic(apiNamespace, {\n actionName: ActionTypes.UPDATE_GROUP,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/group/list\"));\n },\n});\nconst deleteGroupLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_GROUP,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst getGroupClientsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_GROUP_CLIENTS,\n});\n\nconst createGroupClientLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_GROUP_CLIENT,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst createGroupClientsLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_GROUP_CLIENTS,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/Group/list\"));\n },\n});\n\n//outlets\n\nconst createGroupOutletLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_GROUP_OUTLET,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\nconst removeGroupOutletLogic = logic(apiNamespace, {\n actionName: ActionTypes.REMOVE_GROUP_OUTLET,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst createGroupOutletsLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_GROUP_OUTLETS,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n // successCb: (dispatch) => {\n // dispatch(push(\"/Group/list\"));\n // },\n});\n\nconst getGroupOutletsListLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_GROUP_OUTLETS_LIST,\n});\nconst getNonGroupedOutletsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_NON_GROUPED_OUTLETS,\n});\n\nconst uploadGroupOutletsLogic = logic(apiNamespace, {\n actionName: ActionTypes.UPLOAD_GROUP_OUTLETS,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/Group/list\"));\n },\n});\nconst removeGroupOutletsLogic = logic(apiNamespace, {\n actionName: ActionTypes.REMOVE_GROUP_OUTLETS,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n // successCb: (dispatch) => {\n // dispatch(push(\"/Group/list\"));\n // },\n});\nexport default [\n getAllGroupsLogic,\n getGroupWithIdLogic,\n createGroupLogic,\n updateGroupLogic,\n deleteGroupLogic,\n getGroupClientsLogic,\n createGroupClientLogic,\n createGroupClientsLogic,\n getNonGroupedOutletsLogic,\n createGroupOutletLogic,\n createGroupOutletsLogic,\n removeGroupOutletLogic,\n getGroupOutletsListLogic,\n uploadGroupOutletsLogic,\n removeGroupOutletsLogic,\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\n\nconst apiNamespace = \"lookups\";\n\nconst getQuestionTypesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_QUESTION_TYPES,\n});\nconst getAppTypesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_APP_TYPES,\n});\n\n\n\nexport default [\n getQuestionTypesLogic,\n getAppTypesLogic\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { Trans } from \"@lingui/react\";\nconst apiNamespace = \"Nationalities\";\n\n\nconst getAllNationalitiesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_NATIONALITIES,\n});\nconst addNationalityLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_NATIONALITY,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst editNationalityLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_NATIONALITY,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst deleteNationalityLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_NATIONALITY,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\n\n\nexport default [\n getAllNationalitiesLogic,\n addNationalityLogic,\n editNationalityLogic,\n deleteNationalityLogic,\n\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\nimport { Trans } from \"@lingui/react\";\nconst apiNamespace = \"offers\";\n\nconst getAllOffersLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_OFFERS,\n});\nconst getOfferWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_OFFER_WITH_ID,\n});\n\nconst addOfferLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_OFFER,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/offers/list\"));\n },\n});\n\nconst editOfferLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_OFFER,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/offers/list\"));\n },\n});\n\nconst deleteOfferLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_OFFER,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getAllOffersLogic,\n getOfferWithIdLogic,\n addOfferLogic,\n editOfferLogic,\n deleteOfferLogic,\n];\n","\nimport { ActionTypes } from \"./actions\";\nimport logic from \"../../utils/genLogic\";\nimport { Trans } from \"@lingui/react\";\n\nconst apiNamespace = \"outletType\";\n\nconst getAllOutletTypesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_OUTLET_TYPES,\n});\nconst getOutletTypeWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_OUTLET_TYPE_WITH_ID,\n});\nconst createOutletTypeLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_OUTLET_TYPE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\nconst updateOutletTypeLogic = logic(apiNamespace, {\n actionName: ActionTypes.UPDATE_OUTLET_TYPE,\n});\nconst deleteOutletTypeLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_OUTLET_TYPE,\n});\n\nexport default [\n getAllOutletTypesLogic,\n getOutletTypeWithIdLogic,\n createOutletTypeLogic, \n updateOutletTypeLogic,\n deleteOutletTypeLogic\n];\n \n ","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\nimport { Trans } from \"@lingui/react\";\nconst apiNamespace = \"outlets\";\n\nconst getAllOutletsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_OUTLETS,\n});\nconst getOutletWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_OUTLET_WITH_ID,\n});\n\nconst addOutletLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_OUTLET,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/outlet/list\"));\n }\n});\nconst uploadOutletsLogic = logic(apiNamespace, {\n actionName: ActionTypes.UPLOAD_OUTLETS,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/outlet/list\"));\n }\n});\n\nconst editOutletLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_OUTLET,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/outlet/list\"));\n }\n});\n\nconst deleteOutletLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_OUTLET,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getAllOutletsLogic,\n getOutletWithIdLogic,\n addOutletLogic,\n editOutletLogic,\n deleteOutletLogic,\n uploadOutletsLogic\n];\n","import { Trans } from \"@lingui/react\";\nimport logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\n\nconst apiNamespace = \"prizes\";\n\nconst getAllPrizesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_PRIZES,\n});\nconst addPrizeLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_PRIZE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst editPrizeLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_PRIZE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst deletePrizeLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_PRIZE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst getAllOutletPrizesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_OUTLET_PRIZES,\n});\nconst addOutletPrizeLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_OUTLET_PRIZE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst editOutletPrizeLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_OUTLET_PRIZE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst deleteOutletPrizeLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_OUTLET_PRIZE,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getAllPrizesLogic,\n addPrizeLogic,\n editPrizeLogic,\n deletePrizeLogic,\n //////\n getAllOutletPrizesLogic,\n addOutletPrizeLogic,\n editOutletPrizeLogic,\n deleteOutletPrizeLogic,\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\nimport { Trans } from \"@lingui/react\";\n\nconst apiNamespace = \"products\";\n\nconst getAllProductsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_PRODUCTS,\n});\nconst getProductWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_PRODUCT_WITH_ID,\n});\n\nconst addProductLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_PRODUCT,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/products/list\"));\n }\n});\n\nconst SaveProductCityOffersLogic = logic(apiNamespace, {\n actionName: ActionTypes.SAVE_PRODUCT_CITY_OFFERS,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n // successCb: (dispatch) => {\n // dispatch(push(\"/products/list\"));\n // }\n});\nconst deleteProductCityOffersLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_PRODUCT_CITY_OFFERS,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n // successCb: (dispatch) => {\n // dispatch(push(\"/products/list\"));\n // }\n});\nconst editProductLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_PRODUCT,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/products/list\"));\n }\n});\n\nconst deleteProductLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_PRODUCT,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getAllProductsLogic,\n getProductWithIdLogic,\n addProductLogic,\n editProductLogic,\n deleteProductLogic,\n deleteProductCityOffersLogic,\n SaveProductCityOffersLogic\n];\n","// import { createLogic } from \"redux-logic\";\nimport logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\n\n\nconst apiNamespace = \"Promoters\";\n\nconst getAllPromotersLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_PROMOTERS,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\nconst getAllCitiesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_CITIES,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\nconst getAllSupervisorsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_SUPERVISORS,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\nconst getPromoterLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_PROMOTER,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\nconst getPermissionsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_PERMISSIONS,\n showErrorMessage: false,\n showSuccessMessage: false,\n});\nconst addPromoterLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_PROMOTER,\n showErrorMessage: true,\n successMessage: \"Promoter created successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/promoters/list\"));\n },\n});\n\nconst deletePromoterLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_PROMOTER,\n showErrorMessage: true,\n successMessage: \"Promoter Deleted successfully\",\n showSuccessMessage: true,\n});\nconst editPromoterLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_PROMOTER,\n showErrorMessage: true,\n showSuccessMessage: \"Promoter Edited Successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/promoters/list\"));\n },\n});\n\n\nexport default [\n getAllPromotersLogic,\n addPromoterLogic,\n deletePromoterLogic,\n editPromoterLogic,\n getPermissionsLogic,\n getPromoterLogic,\n getAllCitiesLogic,\n getAllSupervisorsLogic\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { Trans } from \"@lingui/react\";\n\nconst apiNamespace = \"refusalReasons\";\n\nconst getRefusalReasonsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_REFUSAL_REASONS,\n});\n\nconst getRefusalReasonWithId = logic(apiNamespace, {\n actionName: ActionTypes.GET_REFUSAL_REASON_WITH_ID,\n});\nconst addRefusalReasonLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_REFUSAL_REASON,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst editRefusalReasonLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_REFUSAL_REASON,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst deleteRefusalReasonLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_REFUSAL_REASON,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getRefusalReasonsLogic,\n addRefusalReasonLogic,\n editRefusalReasonLogic,\n deleteRefusalReasonLogic,\n getRefusalReasonWithId,\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { Trans } from \"@lingui/react\";\nconst apiNamespace = \"reports\";\n\nconst getAllReportResponsesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_REPORT_RESPONSES,\n});\nconst getReportResponseWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_REPORT_RESPONSE_WITH_ID,\n});\n\n// Questions \nconst getAllReportQuestionsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_REPORT_QUESTIONS,\n});\n\nconst addReportQuestionLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_REPORT_QUESTION,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n \n});\n\nconst editReportQuestionLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_REPORT_QUESTION,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst deleteReportQuestionLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_REPORT_QUESTION,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n // Reports\n getAllReportResponsesLogic,\n getReportResponseWithIdLogic,\n\n // Questions\n getAllReportQuestionsLogic,\n addReportQuestionLogic,\n editReportQuestionLogic,\n deleteReportQuestionLogic,\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\n\nconst apiNamespace = \"settings\";\nconst getSettingsLogic = logic(apiNamespace, {actionName:ActionTypes.GET_SETTINGS});\n\nconst editSettingLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_SETTING,\n successCb: (dispatch) => {\n dispatch(push('/home/setting'))\n \n }});\n\n const editAllSettingsLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_ALL_SETTINGS,\n successCb: (dispatch) => {\n dispatch(push('/home/setting'))\n \n }});\n\n \n\nexport default [getSettingsLogic,editSettingLogic,editAllSettingsLogic];\n\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\n\nconst apiNamespace = \"shiftSessions\";\n\nconst getAllShiftSessionsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_SHIFT_SESSIONS,\n});\n\nconst getExportedSessionsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_EXPORTED_SESSIONS,\n});\n\nconst getShiftSessionWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_SHIFT_SESSION_WITH_ID,\n});\nconst getMonthlyReportsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_MONTHLY_REPORTS,\n});\n\nexport default [\n getAllShiftSessionsLogic,\n getShiftSessionWithIdLogic,\n getMonthlyReportsLogic,\n getExportedSessionsLogic\n\n];\n","import { ActionTypes } from \"./actions\";\nimport { Trans } from \"@lingui/react\";\nimport logic from \"../../utils/genLogic\";\nimport { push } from \"connected-react-router\";\n\nconst apiNamespace = \"spinWheel\";\n\nconst getAllSpinLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_SPIN,\n});\n\nconst getSpinWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_SPIN_WITH_ID,\n});\n\nconst createSpinLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_SPIN,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/SpinningWheel/list\"));\n },\n});\n\nconst updateSpinLogic = logic(apiNamespace, {\n actionName: ActionTypes.UPDATE_SPIN,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/SpinningWheel/list\"));\n },\n});\nconst deleteSpinLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_SPIN,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\n// Rewards\nconst getAllRewardsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_REWARDS,\n});\n\nconst getRewardWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_REWARD_WITH_ID,\n});\nconst createRewardLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_REWARD,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n // successCb: (dispatch) => {\n // dispatch(push(\"/rewards/list\"));\n // },\n});\n\nconst updateRewardLogic = logic(apiNamespace, {\n actionName: ActionTypes.UPDATE_REWARD,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n successCb: (dispatch) => {\n dispatch(push(\"/rewards/list\"));\n },\n});\n\nconst deleteRewardLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_REWARD,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\n// Supervisor\nconst assignedSupervisorLogic = logic(apiNamespace, {\n actionName: ActionTypes.ASSIGNED_SUPERVISOR,\n});\n\nconst notAssignedSupervisorLogic = logic(apiNamespace, {\n actionName: ActionTypes.NOT_ASSIGNED_SUPERVISOR,\n});\n\nconst assignSupervisorLogic = logic(apiNamespace, {\n actionName: ActionTypes.ASSIGN_SUPERVISOR,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst removeSupervisorFromSpinLogic = logic(apiNamespace, {\n actionName: ActionTypes.REMOVE_SUPERVISOR_FROM_SPIN,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getAllSpinLogic,\n getSpinWithIdLogic,\n createSpinLogic,\n updateSpinLogic,\n deleteSpinLogic,\n\n // Supervisor\n assignedSupervisorLogic,\n notAssignedSupervisorLogic,\n assignSupervisorLogic,\n removeSupervisorFromSpinLogic,\n\n // Rewards\n getAllRewardsLogic,\n getRewardWithIdLogic,\n createRewardLogic,\n updateRewardLogic,\n deleteRewardLogic,\n];\n","// import { createLogic } from \"redux-logic\";\nimport logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\n\nconst apiNamespace = \"Supervisors\";\n\nconst getAllSupervisorsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_SUPERVISORS,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\n\nconst getAllSupervisorsTasksLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_SUPERVISORS_TASKS,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\n\nconst getSupervisorLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_SUPERVISOR,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\n\nconst addSupervisorLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_SUPERVISOR,\n showErrorMessage: true,\n successMessage: \"Supervisor created successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/supervisors/list\"));\n },\n});\n\nconst deleteSupervisorLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_SUPERVISOR,\n showErrorMessage: true,\n successMessage: \"Supervisor Deleted successfully\",\n showSuccessMessage: true,\n});\nconst editSupervisorLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_SUPERVISOR,\n showErrorMessage: true,\n showSuccessMessage: \"Supervisor Edited Successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/supervisors/list\"));\n },\n});\n\nexport default [\n getAllSupervisorsLogic,\n addSupervisorLogic,\n deleteSupervisorLogic,\n editSupervisorLogic,\n getSupervisorLogic,\n getAllSupervisorsTasksLogic,\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\n\nconst apiNamespace = \"survey\";\nconst getSurveyWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_SURVEY_WITH_ID,\n});\nconst getSurveysLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_SURVEYS,\n});\nconst getSurveyResultsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_SURVEY_RESULTS,\n});\nconst getUserSurveysLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_USER_SURVEYS,\n});\nconst getUserSurveysWithIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_USER_SURVEYS_WITH_ID,\n});\nconst createSurveyLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_SURVEY,\n successCb: (dispatch) => {\n dispatch(push(\"/survey/survey-management/list\"));\n },\n});\nconst addSurveyResponseLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_SURVEY_RESPONSE,\n});\nconst addSurveyQuestionLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_SURVEY_QUESTION,\n showErrorMessage: true,\n showSuccessMessage: true,\n successMessage: \"تم اضافة السؤال بنجاح\",\n});\nconst editSurveyQuestionLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_SURVEY_QUESTION,\n showErrorMessage: true,\n showSuccessMessage: true,\n successMessage: \"تم تعديل السؤال بنجاح\",\n});\nconst removeSurveyQuestionLogic = logic(apiNamespace, {\n actionName: ActionTypes.REMOVE_SURVEY_QUESTION,\n showErrorMessage: true,\n showSuccessMessage: true,\n successMessage: \"تم حذف السؤال بنجاح\",\n});\n\nconst editSurveyLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_SURVEY,\n successCb: (dispatch) => {\n dispatch(push(\"/survey/survey-management/list\"));\n },\n});\nconst deleteSurveyLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_SURVEY,\n});\n\nexport default [\n createSurveyLogic,\n getSurveysLogic,\n deleteSurveyLogic,\n getSurveyWithIdLogic,\n editSurveyLogic,\n addSurveyResponseLogic,\n getUserSurveysLogic,\n getUserSurveysWithIdLogic,\n addSurveyQuestionLogic,\n editSurveyQuestionLogic,\n removeSurveyQuestionLogic,\n getSurveyResultsLogic,\n];\n","// import { createLogic } from \"redux-logic\";\nimport logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\n\nconst apiNamespace = \"userManegment\";\nconst getUsersLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_USERS,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\nconst getUserLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_USER,\n showErrorMessage: false,\n showSuccessMessage: false,\n});\nconst getPermissionsLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_PERMISSIONS,\n showErrorMessage: false,\n showSuccessMessage: false,\n});\nconst createUserLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_USER,\n showErrorMessage: true,\n successMessage: \"user created successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/user-managment/users/list\"));\n },\n});\nconst createUsersLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_USERS,\n showErrorMessage: true,\n successMessage: \"users created successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/user-managment/users/list\"));\n },\n});\nconst createAppUserLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_APP_USER,\n showErrorMessage: true,\n successMessage: \"user created successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/user-managment/users/list\"));\n },\n});\nconst createRoleLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_ROLE,\n successCb: (dispatch) => {\n dispatch(push(\"/user-managment/roles/list\"));\n },\n});\nconst getRolesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ROLES,\n showErrorMessage: false,\n showSuccessMessage: false,\n});\nconst getRoleLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ROLE,\n showErrorMessage: false,\n showSuccessMessage: false,\n});\nconst deleteUserLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_USER,\n showErrorMessage: true,\n successMessage: \"user Deleted successfully\",\n showSuccessMessage: true,\n});\nconst editUserLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_USER,\n showErrorMessage: true,\n showSuccessMessage: \"User Edited Successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/user-managment/users/list\"));\n },\n});\nconst editRoleLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_ROLE,\n successCb: (dispatch) => {\n dispatch(push(\"/user-managment/roles/list\"));\n },\n});\nconst deleteRoleLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_ROLE,\n showErrorMessage: true,\n successMessage: \"Role Deleted successfully\",\n showSuccessMessage: true,\n});\n\nexport default [\n getUsersLogic,\n createUserLogic,\n createUsersLogic,\n createAppUserLogic,\n getRolesLogic,\n getUserLogic,\n deleteUserLogic,\n editUserLogic,\n createRoleLogic,\n getPermissionsLogic,\n deleteRoleLogic,\n editRoleLogic,\n getRoleLogic,\n];\n","import logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\n\nconst apiNamespace = \"attendances\";\n\nconst getAllAttendancesLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_ATTENDANCES,\n});\n\n\nexport default [getAllAttendancesLogic];\n","// import { createLogic } from \"redux-logic\";\nimport logic from \"src/utils/genLogic\";\nimport { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\n\nconst apiNamespace = \"Tmr\";\n\nconst getAllTmrLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_TMR,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\n\nconst getTmrLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_TMR,\n showErrorMessage: true,\n showSuccessMessage: false,\n});\n\nconst addTmrLogic = logic(apiNamespace, {\n actionName: ActionTypes.ADD_TMR,\n showErrorMessage: true,\n successMessage: \"Tmr created successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/tmr/list\"));\n },\n});\n\nconst deleteTmrLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_TMR,\n showErrorMessage: true,\n successMessage: \"Tmr Deleted successfully\",\n showSuccessMessage: true,\n});\n\nconst editTmrLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_TMR,\n showErrorMessage: true,\n showSuccessMessage: \"Tmr Edited Successfully\",\n showSuccessMessage: true,\n successCb: (dispatch) => {\n dispatch(push(\"/tmr/list\"));\n },\n});\n\nexport default [\n getAllTmrLogic,\n getTmrLogic,\n addTmrLogic,\n deleteTmrLogic,\n editTmrLogic,\n];\n","import logic from \"src/utils/genLogic\";\nimport actions, { ActionTypes } from \"./actions\";\nimport { push } from \"connected-react-router\";\nimport { Trans } from \"@lingui/react\";\n\nconst apiNamespace = \"Areas\";\n\nconst getAreaByIdLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_AREA_BY_ID,\n});\n\nconst getAllAreasLogic = logic(apiNamespace, {\n actionName: ActionTypes.GET_ALL_AREAS,\n});\n\nconst createAreaLogic = logic(apiNamespace, {\n actionName: ActionTypes.CREATE_AREA,\n successCb: (dispatch) => {\n dispatch(push(\"/areas/list\"));\n },\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst editAreaLogic = logic(apiNamespace, {\n actionName: ActionTypes.EDIT_AREA,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nconst deleteAreaLogic = logic(apiNamespace, {\n actionName: ActionTypes.DELETE_AREA,\n showErrorMessage: true,\n errorMessage: ,\n showSuccessMessage: true,\n successMessage: ,\n});\n\nexport default [\n getAreaByIdLogic,\n getAllAreasLogic,\n createAreaLogic,\n editAreaLogic,\n deleteAreaLogic,\n];\n","import ageRangeLogic from \"./ageRange/logic\";\nimport appLogic from \"./app/logic\";\nimport authLogic from \"./auth/logic\";\nimport brandsLogic from \"./brands/logic\";\nimport channelLogic from \"./channel/logic\";\nimport cityLogic from \"./city/logic\";\nimport companyInfoLogic from \"./companyInfo/logic\";\nimport dashboardLogic from \"./dashboard/logic\";\nimport groupLogic from \"./group/logic\";\nimport lookupsLogic from \"./lookups/logic\";\nimport nationalityLogic from \"./nationalities/logic\";\nimport offersLogic from \"./offers/logic\";\nimport outletTypeLogic from \"./outletType/logic\";\nimport outletsLogic from \"./outlets/logic\";\nimport prizeLogic from \"./prize/logic\";\nimport productsLogic from \"./products/logic\";\nimport promoterLogic from \"./promoter/logic\";\nimport refusalReasonLogic from \"./refusalReason/logic\";\nimport reportsLogic from \"./reports/logic\";\nimport settingLogic from \"./setting/logic\";\nimport shiftSessionLogic from \"./shiftSessions/logic\";\nimport spinWheelLogic from \"./spinningWheel/logic\";\nimport supervisorLogic from \"./supervisor/logic\";\nimport surveysLogic from \"./survey/logic\";\nimport usersLogic from \"./userManagement/logic\";\nimport attendanceLogic from \"./attendances/logic\";\nimport tmrLogics from \"./tmr/logic\";\nimport areaLogic from \"./area/logic\";\n//---------------------------\n\nexport default [\n ...appLogic,\n ...authLogic,\n ...usersLogic,\n ...settingLogic,\n ...brandsLogic,\n ...productsLogic,\n ...lookupsLogic,\n ...companyInfoLogic,\n ...prizeLogic,\n ...offersLogic,\n ...outletsLogic,\n ...cityLogic,\n ...nationalityLogic,\n ...ageRangeLogic,\n ...promoterLogic,\n ...supervisorLogic,\n ...reportsLogic,\n ...surveysLogic,\n ...dashboardLogic,\n ...refusalReasonLogic,\n ...shiftSessionLogic,\n ...outletTypeLogic,\n ...channelLogic,\n ...groupLogic,\n ...spinWheelLogic,\n ...attendanceLogic,\n ...tmrLogics,\n ...areaLogic,\n];\n","import NationalityApi from \"./nationalities\";\nimport ageRangeApi from \"./ageRange\";\nimport apisauce from \"apisauce\";\nimport authApi from \"./auth\";\nimport brandsApi from \"./brands\";\nimport channelApi from \"./channel\";\nimport cityApi from \"./city\";\nimport companyInfoApi from \"./companyInfo\";\nimport config from \"../configs\";\nimport configs from \"src/configs\";\nimport dashboardApi from \"./dashboard\";\nimport groupApi from \"./group\";\nimport lookupsApi from \"./lookups\";\nimport offersApi from \"./offers\";\nimport outletApi from \"./outlets\";\nimport outletTypeApi from \"./outletType\";\nimport prizeApi from \"./prize\";\nimport productsApi from \"./products\";\nimport promoterApi from \"./promoter\";\nimport refusalReasonApi from \"./refusalReason\";\nimport reportsApi from \"./reports\";\nimport settingsApi from \"./setting\";\nimport shiftSessionApi from \"./shiftSession\";\nimport spinningWheelApi from \"./spinningWheel\";\nimport supervisorApi from \"./supervisors\";\nimport surveysApi from \"./survey\";\nimport { useSelector } from \"react-redux\";\nimport usersApi from \"./userManagement\";\nimport attendanceApi from \"./attendance\";\nimport tmrApi from \"./tmr\";\nimport areaApi from \"./area\";\n//---------------------\n\n// const apiURI = config.useLocalApi ? config.devApiRoot : config.apiRoot;\n// const apiURI = configs.REACT_APP_BASE_API_URL;\n\nlet api = null;\n\nconst create = (baseURL) => {\n let app = localStorage.getItem(\"app_name\");\n\n let apiURI =\n app === \"roi\"\n ? process.env.REACT_APP_BASE_API_URL\n : process.env.REACT_APP_BASE_API_URL_NAKHLA;\n\n api = apisauce.create({\n baseURL: apiURI,\n headers: {\n \"Cache-Control\": \"no-cache\",\n },\n timeout: 1200000, //30 sec\n });\n //add access token on each request\n\n api.addAsyncResponseTransform((response) => async () => {\n if (!response.ok) {\n const customeError = {\n errors: response.data?.errors || [\n { errorMessage: response.data?.errorMessage || \"\" },\n ],\n // title: response.data.title,\n errorMessage: response.data?.errorMessage || \"\",\n // details: response.data.details,\n // data: response.data.result,\n status: response.status,\n code: response.data?.errorCode || response.status,\n };\n response.data = customeError;\n }\n });\n\n api.addAsyncRequestTransform((request) => async () => {\n const token = localStorage.getItem(\"jwtToken\");\n\n const culture = localStorage.getItem(\"culture\");\n const cultureCode = localStorage.getItem(\"cultureCode\");\n const userIp = localStorage.getItem(\"userIp\");\n\n request.headers[\"culture\"] = culture || \"en\";\n request.headers[\"cultureCode\"] = cultureCode || \"en-US\";\n request.headers[\"userIp\"] = userIp || \"\";\n\n if (token) {\n request.headers[\"Authorization\"] = `Bearer ${token}`;\n } else {\n delete request.headers[\"Authorization\"];\n }\n });\n\n const auth = authApi(api);\n const users = usersApi(api);\n const settings = settingsApi(api);\n // --------------------\n const products = productsApi(api);\n const outlets = outletApi(api);\n const brands = brandsApi(api);\n const offers = offersApi(api);\n const companyInfos = companyInfoApi(api);\n const lookups = lookupsApi(api);\n const prizes = prizeApi(api);\n const cities = cityApi(api);\n const nationalities = NationalityApi(api);\n const ageRanges = ageRangeApi(api);\n const promoters = promoterApi(api);\n const supervisors = supervisorApi(api);\n const reports = reportsApi(api);\n const surveys = surveysApi(api);\n const dashboards = dashboardApi(api);\n const refusalReasons = refusalReasonApi(api);\n const shiftSessions = shiftSessionApi(api);\n const outletTypes = outletTypeApi(api);\n const channels = channelApi(api);\n const group = groupApi(api);\n const spinningWheel = spinningWheelApi(api);\n const attendance = attendanceApi(api);\n const tmr = tmrApi(api);\n const area = areaApi(api);\n // const transactions = transactionsApi(api);\n return {\n setHeader: api.setHeader,\n setHeaders: api.setHeaders,\n ...auth,\n ...users,\n ...settings,\n ...brands,\n ...products,\n ...offers,\n ...companyInfos,\n ...lookups,\n ...prizes,\n ...outlets,\n ...cities,\n ...nationalities,\n ...ageRanges,\n ...promoters,\n ...reports,\n ...surveys,\n ...supervisors,\n ...reports,\n ...dashboards,\n ...refusalReasons,\n ...shiftSessions,\n ...outletTypes,\n ...channels,\n ...group,\n ...spinningWheel,\n ...attendance,\n ...tmr,\n ...area,\n setBaseURL: api?.setBaseURL,\n };\n};\n\nexport default { create };\n","export default function(/**@type {ApisauceInstance} */ api) {\n const login = loginRequest => api.post(\"auth/login\", loginRequest);\n const updateProfile = loginRequest => api.post(\"auth/update-profile\", loginRequest);\n const changePassword = loginRequest => api.post(\"auth/change-password\", loginRequest);\n const logout = accessToken => api.post(\"auth/logout\", { accessToken });\n const getNotifications = paging => api.get(\"user/getnotifications\",paging); \n const readNotification = (id) => api.get(\"user/readNotify/\"+id); \n const refreshToken = (payload) => api.post(\"auth/refresh-token/\",payload); \n return {\n auth: {\n login,\n logout,\n getNotifications,\n readNotification,\n updateProfile,\n changePassword,\n refreshToken\n }\n };\n }","export default function (/**@type {ApisauceInstance} */ api) {\n const getUsers = (paging) => api.get(\"user-management/users\", paging);\n const getPermissions = () => api.get(\"user-management/permissions\");\n const createUser = (payload) => api.post(\"user-management/users\", payload);\n const createUsers = (payload) => api.post(\"user-management/add-users\", payload);\n const createAppUser = (payload) => api.post(\"user-management/users/app-user\", payload);\n const getUser = (id) => api.get(`user-management/users/${id}`);\n const getRoles = (paging) => api.get(\"user-management/roles\", paging);\n const deleteUser = (id) => api.delete(`user-management/users/delete-user/${id}`);\n const createRole = (payload) => api.post(\"user-management/roles/add-role\", payload);\n const editUser = ({ payload, id }) => api.put(`user-management/users/edit-user/${id}`, payload);\n const deleteRole = (id) => api.delete(`user-management/roles/delete-role/${id}`);\n const editRole = ({ payload, id }) => api.put(`user-management/roles/edit-role/${id}`, payload);\n const getRole = (id) => api.get(`user-management/roles/${id}`);\n return {\n userManegment: {\n getUsers,\n getUser,\n createUser,\n createUsers,\n createAppUser,\n deleteUser,\n getRoles,\n editUser,\n createRole,\n getPermissions,\n deleteRole,\n editRole,\n getRole\n }\n };\n}\n\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllProducts = (paging) => api.get(`product`, paging);\n const getProductWithId = (id) => api.get(`product/admin/${id}`);\n const addProduct = (payload) => api.post(`product`, payload);\n const editProduct = ({ payload, id }) => api.put(`product/${id}`, payload);\n const saveProductCityOffers = (payload) => api.put(`product/save-product-city-offers`, payload);\n const deleteProduct = (id) => api.delete(`product/${id}`);\n const deleteProductCityOffers = (payload) => api.put(`product/remove-product-city-offers`,payload);\n\n\n return {\n products: {\n getAllProducts,\n getProductWithId,\n addProduct,\n editProduct,\n deleteProduct,\n deleteProductCityOffers,\n saveProductCityOffers\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllOutlets = (paging) => api.get(`Outlet`, paging);\n const getOutletWithId = (id) => api.get(`Outlet/${id}`);\n const addOutlet = (payload) => api.post(`Outlet`, payload);\n const uploadOutlets = (payload) => api.post(`Outlet/upload-outlets`, payload);\n const editOutlet = ({ payload, id }) => api.put(`Outlet/${id}`, payload);\n const deleteOutlet = (id) => api.delete(`Outlet/${id}`);\n\n return {\n outlets: {\n getAllOutlets,\n getOutletWithId,\n addOutlet,\n uploadOutlets,\n editOutlet,\n deleteOutlet,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n // brands\n\n const getAllBrands = (paging) => api.get(`brand`, paging);\n const getBrandsWithId = (id) => api.get(`brand/${id}`);\n const addBrand = (payload) => api.post(`brand`, payload);\n\n const editBrand = ({ payload, id }) => api.put(`brand/${id}`, payload);\n\n const deleteBrand = (id) => api.delete(`brand/${id}`);\n\n // products\n const addProduct = ({ payload }) => api.post(`product`, payload);\n\n const editProduct = ({ payload, id }) => api.put(`product/${id}`, payload);\n\n const deleteProduct = (id) => api.delete(`product/${id}`);\n\n return {\n brands: {\n // brands\n getAllBrands,\n getBrandsWithId,\n addBrand,\n editBrand,\n deleteBrand,\n // products\n addProduct,\n editProduct,\n deleteProduct,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllOffers = (paging) => api.get(`offer`, paging);\n const getOfferWithId = (id) => api.get(`offer/${id}`);\n const addOffer = (payload) => api.post(`offer`, payload);\n const editOffer = ({ payload, id }) => api.put(`offer/${id}`, payload);\n const deleteOffer = (id) => api.delete(`offer/${id}`);\n\n return {\n offers: {\n getAllOffers,\n getOfferWithId,\n addOffer,\n editOffer,\n deleteOffer,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n\n \n const getAllCompanyInfos = () => api.get(`CompanyInfo/companyInfos`);\n\n const getCompanyInfoWithId = (id) => api.get(`CompanyInfo/companyInfo/${id}`);\n\n const addCompanyInfo = (payload) =>api.post(`CompanyInfo/add-company-info`, payload);\n \n const editCompanyInfo = ({payload, id }) =>api.put(`CompanyInfo/edit-company-info/${id}`, payload);\n \n const deleteCompanyInfo = (id) => api.delete(`CompanyInfo/delete-company-info/${id}`);\n\n return {\n companyInfos: {\n getAllCompanyInfos,\n addCompanyInfo,\n editCompanyInfo,\n deleteCompanyInfo,\n getCompanyInfoWithId\n },\n };\n }\n ","export default function (/**@type {ApisauceInstance} */ api) {\n const getQuestionTypes = () => api.get(`lookups/questions-types`);\n const getAppTypes = () => api.get(`lookups/app-types`);\n\n return {\n lookups: {\n getQuestionTypes,\n getAppTypes,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllPrizes = (paging) => api.get(`Prize/prizes`, paging);\n\n const addPrize = (payload) => api.post(`Prize/add-prize`, payload);\n\n const editPrize = ({ payload, id }) =>\n api.put(`Prize/edit-prize/${id}`, payload);\n\n const deletePrize = (id) => api.delete(`Prize/delete-prize/${id}`);\n\n ////outlet-prize\n const getAllOutletPrizes = (paging) => api.get(`OutletPrize/prizes`, paging);\n\n const addOutletPrize = (payload) =>\n api.post(`OutletPrize/add-prize`, payload);\n\n const editOutletPrize = ({ payload, id }) =>\n api.put(`OutletPrize/edit-prize/${id}`, payload);\n\n const deleteOutletPrize = (id) =>\n api.delete(`OutletPrize/delete-prize/${id}`);\n\n return {\n prizes: {\n getAllPrizes,\n addPrize,\n editPrize,\n deletePrize,\n /////\n getAllOutletPrizes,\n addOutletPrize,\n editOutletPrize,\n deleteOutletPrize,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n\n\n const getAllCountries = () => api.get(`Country`);\n const createCountry = (payload) => api.post(`Country/add-country`, payload);\n const editCountry = ({ id, payload }) => api.put(`Country/edit-country/${id}`, payload);\n const deleteCountry = (id) => api.delete(`Country/delete-country/${id}`);\n const getAllCities = (paging) => api.get(`City`);\n const getCities = (paging) => api.get(`City`, paging);\n const createCity = (payload) => api.post(`City`, payload);\n const editCity = ({ id, payload }) => api.put(`City/${id}`, payload);\n const deleteCity = (id) => api.delete(`City/${id}`);\n\n return {\n Cities: {\n getAllCities,\n getCities,\n createCity,\n editCity,\n deleteCity,\n getAllCountries,\n createCountry,\n editCountry,\n deleteCountry,\n },\n };\n}\n\n","export default function (/**@type {ApisauceInstance} */ api) {\n\n \n const getAllNationalities = (paging) => api.get(`Nationality`,paging);\n\n const addNationality = (payload) => api.post(`Nationality`, payload);\n \n const editNationality = ({ payload, id }) =>api.put(`Nationality/${id}`, payload);\n \n const deleteNationality = (id) => api.delete(`Nationality/${id}`);\n\n return {\n Nationalities: {\n getAllNationalities,\n addNationality,\n editNationality,\n deleteNationality\n },\n };\n }\n ","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllAgeRanges = (paging) => api.get(`AgeRange`,paging);\n const getAgeRangeWithId= (id) => api.get(`AgeRange/age-range/${id}`);\n const addAgeRange = (payload) => api.post(`AgeRange/add-age-range`, payload);\n const editAgeRange = ({ id, payload }) => api.put(`AgeRange/edit-age-range/${id}`, payload);\n const deleteAgeRange = (id) => api.delete(`AgeRange/delete-age-range/${id}`);\n \n return {\n ageRanges: {\n getAllAgeRanges,\n getAgeRangeWithId,\n addAgeRange,\n editAgeRange,\n deleteAgeRange\n },\n };\n }\n ","export default function (/**@type {ApisauceInstance} */ api) {\n\n \n const getAllPromoters = (paging) => api.get(`Promoter/promoters`,paging);\n\n const getAllCities = () => api.get(`City`);\n\n const getAllSupervisors = (paging) => api.get(`Supervisor/supervisors`,paging);\n\n const addPromoter = (payload) => api.post(`Promoter/add-promoter`, payload);\n\n const getPromoter = (id) => api.get(`Promoter/${id}`);\n const editPromoter = ({ payload, id }) =>api.put(`Promoter/edit-promoter/${id}`, payload);\n \n const deletePromoter = (id) => api.delete(`Promoter/delete-promoter/${id}`);\n\n return {\n Promoters: {\n getAllPromoters,\n addPromoter,\n editPromoter,\n deletePromoter,\n getPromoter,\n getAllCities,\n getAllSupervisors\n },\n };\n }\n ","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllSupervisors = (paging) =>\n api.get(`Supervisor/supervisors`, paging);\n\n const getAllSupervisorsTasks = (paging) =>\n api.get(`Survey/supervisor-tasks`, paging);\n\n const addSupervisor = (payload) => api.post(`Supervisor/supervisor`, payload);\n\n const getSupervisor = (id) => api.get(`Supervisor/${id}`);\n const editSupervisor = ({ payload, id }) =>\n api.put(`Supervisor/edit-supervisor/${id}`, payload);\n\n const deleteSupervisor = (id) =>\n api.delete(`Supervisor/delete-supervisor/${id}`);\n\n return {\n Supervisors: {\n getAllSupervisors,\n addSupervisor,\n editSupervisor,\n deleteSupervisor,\n getSupervisor,\n getAllSupervisorsTasks,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n //Reports\n const getAllReportResponses = (paging) => api.get(`ReportResponse`, paging);\n const getReportResponseWithId = (id) => api.get(`ReportResponse/${id}`);\n\n //Questions\n const getAllReportQuestions = (paging) => api.get(`ReportQuestion`, paging);\n const addReportQuestion = (payload) => api.post(`ReportQuestion`, payload);\n const editReportQuestion = ({ payload, id }) =>\n api.put(`ReportQuestion/${id}`, payload);\n const deleteReportQuestion = (id) => api.delete(`ReportQuestion/${id}`);\n\n return {\n reports: {\n //Reports\n getAllReportResponses,\n getReportResponseWithId,\n //Questions\n getAllReportQuestions,\n addReportQuestion,\n editReportQuestion,\n deleteReportQuestion,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getSurveys = (paging) => api.get(\"survey\", paging);\n const getUserSurveys = () => api.get(\"survey/user-surveys\");\n const getSurveyResults = (paging) => api.get(\"survey/survey-answers\",paging);\n const getUserSurveysWithId = (id) => api.get(`survey/user-surveys/${id}`);\n const getSurveyWithId = (id) => api.get(`survey/${id}`);\n const deleteSurvey = (id) => api.delete(`survey/delete-survey/${id}`);\n const editSurvey = ({ payload, id }) =>\n api.put(`survey/edit-survey/${id}`, payload);\n\n const createSurvey = (payload) => api.post(\"survey/add-survey\", payload);\n const addSurveyResponse = (payload) => api.post(\"survey/add-survey-response\", payload);\n const addSurveyQuestion = (payload) => api.post(\"survey/add-question\", payload);\n const editSurveyQuestion = ({id,payload}) => api.put(`survey/edit-question/${id}`, payload);\n const removeSurveyQuestion = (id) => api.delete(`survey/remove-question/${id}`);\n\n return {\n survey: {\n getUserSurveysWithId,\n createSurvey,\n getSurveyResults,\n getSurveys,\n getSurveyWithId,\n deleteSurvey,\n editSurvey,\n getUserSurveys,\n addSurveyResponse,\n addSurveyQuestion,\n editSurveyQuestion,\n removeSurveyQuestion\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getGeneralInfo = () => api.get(`dashboard/general-info`);\n const getClientResponse = (filters) => api.get(`dashboard/daily-client-surveys`, filters);\n const getProducts = (filters) => api.get(`dashboard/most-selected-products`, filters);\n const getOffers = (filters) => api.get(`dashboard/most-selected-offers`, filters);\n\n const getClientResponces = (paging) =>\n api.get(`Survey/client-response`, paging);\n const getClientResponceWithId = (id) =>\n api.get(`Survey/client-response/${id}`);\n\n const getResponsesSummary = (filters) =>\n api.get(`dashboard/responses-summary`, filters);\n\n return {\n dashboard: {\n getGeneralInfo,\n getClientResponse,\n getProducts,\n getOffers,\n getClientResponces,\n getClientResponceWithId,\n getResponsesSummary,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getRefusalReasons = (paging) => api.get(`RefusalReason`, paging);\n const getRefusalReasonWithId = (id) => api.get(`RefusalReason/refusal-reason/${id}`);\n const addRefusalReason = (payload) => api.post(`RefusalReason/add-refusal-reason`, payload);\n const editRefusalReason = ({ id, payload }) => api.put(`RefusalReason/edit-refusal-reason/${id}`, payload);\n const deleteRefusalReason = (id) => api.delete(`RefusalReason/delete-refusal-reason/${id}`);\n\n return {\n refusalReasons: {\n getRefusalReasons,\n getRefusalReasonWithId,\n addRefusalReason,\n editRefusalReason,\n deleteRefusalReason\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n\n\n const getAllShiftSessions = (paging) => api.get(`Session`, paging);\n const getMonthlyReports = (paging) => api.get(`Session/monthly-reports`, paging);\n const getExportedSessions = (payload) => api.get(`survey/client-response-to-excel`, payload);\n const getShiftSessionWithId = (id) => api.get(`Session/shift-session-with-id/${id}`);\n\n return {\n shiftSessions: {\n getAllShiftSessions,\n getShiftSessionWithId,\n getMonthlyReports,\n getExportedSessions\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n \n const getAllOutletTypes = (paging) => api.get(`outletType`, paging);\n const getOutletTypeWithId = (id) => api.get(`outletType/${id}`);\n const createOutletType = (payload) => api.post(`outletType`, payload);\n \n const updateOutletType = ({ payload, id }) => api.put(`outletType/${id}`, payload);\n \n const deleteOutletType = (id) => api.delete(`outletType/${id}`);\n \n \n \n return {\n outletType: {\n getAllOutletTypes,\n getOutletTypeWithId,\n createOutletType,\n updateOutletType,\n deleteOutletType,\n },\n };\n }\n ","export default function (/**@type {ApisauceInstance} */ api) {\n \n const getAllChannels = (paging) => api.get(`channel`, paging);\n const getChannelWithId = (id) => api.get(`channel/${id}`);\n const createChannel = (payload) => api.post(`channel`, payload);\n \n const updateChannel = ({ payload, id }) => api.put(`channel/${id}`, payload);\n \n const deleteChannel = (id) => api.delete(`channel/${id}`);\n \n \n \n return {\n channel: {\n getAllChannels,\n getChannelWithId,\n createChannel,\n updateChannel,\n deleteChannel,\n },\n };\n }\n ","export default function (/**@type {ApisauceInstance} */ api) {\n ///main group props\n const getAllGroups = (paging) => api.get(\"/group/search\", paging);\n\n const getGroupWithId = (id) => api.get(\"/group/find/\" + id);\n\n const createGroup = (payload) => api.post(\"/group/create\", payload);\n\n const updateGroup = ({ payload, id }) => api.put(`group/${id}`, payload);\n\n const deleteGroup = (id) => api.delete(\"/group/remove/\" + id);\n\n /// group clients\n const getGroupClients = (id) => api.get(\"/group/clients/\", id);\n const createGroupClient = (payload) => api.post(\"/group/add-client\", payload);\n const createGroupClients = (payload) =>\n api.post(\"/group/add-clients\", payload);\n /// group outlets\n const getNonGroupedOutlets = (paging) =>\n api.get(\"/group/non-gouped-outlets\", paging);\n const createGroupOutlet = (payload) => api.post(\"/group/add-outlet\", payload);\n\n const createGroupOutlets = (payload) =>\n api.post(\"/group/add-outlets\", payload);\n\n const removeGroupOutlet = (payload) =>\n api.post(\"/group/remove-outlet\", payload);\n const removeGroupOutlets = (payload) =>\n api.post(\"/group/remove-outlets\", payload);\n\n const getGroupOutletsList = (id) => api.get(\"/group/group-outlets/\" + id);\n\n const uploadGroupOutlets = (payload) =>\n api.post(\"/group/upload-outlets\", payload);\n\n return {\n group: {\n getAllGroups,\n getGroupWithId,\n createGroup,\n updateGroup,\n deleteGroup,\n getGroupClients,\n getNonGroupedOutlets,\n createGroupClient,\n createGroupClients,\n createGroupOutlet,\n createGroupOutlets,\n removeGroupOutlet,\n getGroupOutletsList,\n uploadGroupOutlets,\n removeGroupOutlets,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllSpin = (paging) => api.get(\"/Spin/search\", paging);\n const getSpinWithId = (id) => api.get(\"/Spin/find/\" + id);\n const createSpin = (payload) => api.post(\"/Spin/create\", payload);\n const updateSpin = (payload) => api.put(\"/Spin/edit\", payload);\n const deleteSpin = (id) => api.delete(\"/Spin/remove/\" + id);\n\n // assign spin to supervisor\n const assignSupervisor = (payload) => api.post(\"/Spin/assign-supervisor-to-spin\", payload);\n const removeSupervisorFromSpin = ({spinEventId,supervisorId}) => \n api.delete(`/Spin/remove-supervisor-from-spin/${spinEventId}/${supervisorId}`);\n const assignedSupervisor = (paging) => api.get(\"/Spin/assigned-supervisors-to-event\", paging);\n const notAssignedSupervisor = (paging) => api.get(\"/Spin/not-assigned-supervisors-to-event\", paging);\n\n // Rewards\n const getAllRewards = (paging) => api.get(\"/Spin/spin-rewards\", paging);\n const getRewardWithId = (id) => api.get(\"/Spin/spin-reward/\" + id);\n const createReward = (payload) => api.post(\"/Spin/create-spin-reward\", payload);\n const updateReward = (payload) => api.put(\"/Spin/edit-spin-reward\", payload);\n const deleteReward = (id) => api.delete(\"/Spin/remove-spin-reward/\" + id);\n\n return {\n spinWheel: {\n getAllSpin,\n getSpinWithId,\n createSpin,\n updateSpin,\n deleteSpin,\n\n assignSupervisor,\n assignedSupervisor,\n notAssignedSupervisor,\n removeSupervisorFromSpin,\n\n getAllRewards,\n getRewardWithId,\n createReward,\n updateReward,\n deleteReward,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllAttendances = (paging) =>\n api.get(`Attendance/get-attendances`, paging);\n\n return {\n attendances: {\n getAllAttendances,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllTmr = (paging) => api.get(`Tmr/search`, paging);\n\n const addTmr = (payload) => api.post(`Tmr/create`, payload);\n const getTmr = (id) => api.get(`Tmr/get/${id}`);\n const editTmr = ({ payload, id }) => api.put(`Tmr/edit/${id}`, payload);\n\n const deleteTmr = (id) => api.delete(`Tmr/delete/${id}`);\n\n return {\n Tmr: {\n getAllTmr,\n addTmr,\n editTmr,\n deleteTmr,\n getTmr,\n },\n };\n}\n","export default function (/**@type {ApisauceInstance} */ api) {\n const getAllAreas = (paging) => api.get(`Area`, paging);\n const getAreaById = (id) => api.get(`Area/${id}`);\n const createArea = (payload) => api.post(`Area`, payload);\n const editArea = ({ id, payload }) => api.put(`Area/${id}`, payload);\n const deleteArea = (id) => api.delete(`Area/${id}`);\n\n return {\n Areas: {\n getAllAreas,\n createArea,\n editArea,\n deleteArea,\n getAreaById,\n },\n };\n}\n","import configureStore from \"./configureStore\";\n\n// Create redux store with history\nimport { createBrowserHistory } from \"history\";\nconst initialState = {};\nexport const history = createBrowserHistory();\nexport const { store, persistedStore } = configureStore(initialState, history);","import { createStore, applyMiddleware, compose } from \"redux\";\nimport { routerMiddleware } from \"connected-react-router\";\nimport { createLogicMiddleware } from \"redux-logic\";\nimport { persistStore } from \"redux-persist\";\n\n// import { loadingBarMiddleware } from \"./middlewares\";\nimport createReducer from \"./reducers\";\nimport logics from \"./logics\";\nimport API from \"../services\";\n\nexport default function configureStore(initialState, history) {\n // inject helpers, make requestUtil available to all logic\n const api = API.create();\n const injectedApi = { api };\n const logicMiddleware = createLogicMiddleware([...logics], injectedApi);\n\n // Create the store with two middlewares\n // 1. logicMiddleware: enables redux-logic\n // 2. routerMiddleware: Syncs the location/URL path to the state\n const middlewares = [\n //NOTE: later I will use this middleware to automate loading pattern, however this need to maintain a good name conventions for action that will cause this loading mechanism, not every async operation should display this loading screen\n //loadingBarMiddleware,\n logicMiddleware,\n routerMiddleware(history) // for dispatching history actions\n ];\n\n const enhancers = [applyMiddleware(...middlewares)];\n\n // If Redux DevTools Extension is installed use it, otherwise use Redux compose\n /* eslint-disable no-underscore-dangle */\n const composeEnhancers =\n process.env.NODE_ENV !== \"production\" && typeof window === \"object\" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__\n ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__\n : compose;\n /* eslint-enable */\n\n const rootReducer = createReducer(/* asyncReducers */ {}, history);\n \n const store = createStore(rootReducer, initialState, composeEnhancers(...enhancers));\n const persistedStore = persistStore(store);\n\n // Extensions\n store.logicMiddleware = logicMiddleware;\n store.asyncReducers = {}; // Async reducer registry\n store.history = history; //pass history singleton to store for async reloading\n\n // Make reducers hot reloadable, see http://mxs.is/googmo\n /* istanbul ignore next */\n if (module.hot) {\n module.hot.accept(\"./reducers\", () => {\n import(\"./reducers\").then(reducerModule => {\n const createReducers = reducerModule.default;\n const nextReducers = createReducers(store.asyncReducers, store.history);\n\n store.replaceReducer(nextReducers);\n });\n });\n }\n\n return { store, persistedStore };\n}\n","// ** React Imports\nimport { useState, useEffect } from 'react'\n\n// ** Third Party Components\nimport { Button } from 'reactstrap'\nimport classnames from 'classnames'\n\n// ** Styles\nimport './ripple-button.scss'\n\nconst RippleButton = ({ className, children, onClick, ...rest }) => {\n // ** States\n const [mounted, setMounted] = useState(false)\n const [isRippling, setIsRippling] = useState(false)\n const [coords, setCoords] = useState({ x: -1, y: -1 })\n\n // ** Toggle mounted on mount & unmount\n useEffect(() => {\n setMounted(true)\n return () => setMounted(false)\n }, [])\n\n // ** Check for coords and set ripple\n useEffect(() => {\n if (mounted) {\n if (coords.x !== -1 && coords.y !== -1) {\n setIsRippling(true)\n setTimeout(() => setIsRippling(false), 500)\n } else {\n setIsRippling(false)\n }\n }\n }, [coords])\n\n // ** Reset Coords on ripple end\n useEffect(() => {\n if (mounted) {\n if (!isRippling) setCoords({ x: -1, y: -1 })\n }\n }, [isRippling])\n\n return (\n {\n const rect = e.target.getBoundingClientRect()\n setCoords({ x: e.clientX - rect.left, y: e.clientY - rect.top })\n if (onClick) {\n onClick(e)\n }\n }}\n {...rest}\n >\n {children}\n {isRippling ? (\n \n ) : null}\n \n )\n}\n\n// ** PropTypes\nRippleButton.propTypes = {\n ...Button.propTypes\n}\n\nButton.Ripple = RippleButton\n","/*eslint-disable */\n// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\n)\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href)\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets see https://github.com/facebook/create-react-app/issues/2374\n return\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config)\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n )\n })\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config)\n }\n })\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing\n if (installingWorker === null) {\n return\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n )\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration)\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.')\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration)\n }\n }\n }\n }\n }\n })\n .catch(error => {\n console.error('Error during service worker registration:', error)\n })\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type')\n if (response.status === 404 || (contentType !== null && contentType.indexOf('javascript') === -1)) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload()\n })\n })\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config)\n }\n })\n .catch(() => {\n console.log('No internet connection found. App is running in offline mode.')\n })\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister()\n })\n }\n}\n","import { Permission } from \"./userPermission\";\n\nexport default new Permission()","export class Permission {\n user = null;\n permissions = [];\n roles = [];\n constructor() {\n this.updateValues();\n }\n\n updateValues() {\n let u = localStorage.getItem('userData');\n this.user = u ? JSON.parse(u) : null\n this.permissions = this.user ? JSON.parse(this.user.permissions) : []\n this.roles = this.user &&this.user.role &&JSON.parse(this.user.role)||[]\n }\n can(permission) {\n if (!this.user){\n this.updateValues();\n }\n return this.permissions.includes(permission);\n }\n}\n\n// export const useCurrentUser=()=>{\n// let user = null;\n// let permissions = [];\n// let roles = [];\n\n// function updateValues() {\n// let u = localStorage.getItem('userData');\n// user = u ? JSON.parse(u) : null\n// permissions = user ? JSON.parse(user.permissions) : []\n// roles = user &&user.role &&JSON.parse(user.role)||[]\n// }\n\n// if(!user){\n// updateValues();\n// }\n// return {\n// user,\n// permissions,\n// roles\n// }\n\n// }\n","import React from 'react'\nimport { useSelector } from 'react-redux';\nimport { useSignalR } from '../hooks/useSignalR';\n\n\nexport const SignalProvider = React.createContext();\n\nfunction SignalRProvider({ children, ...props }) {\n\n const { startHub, onReceiveNotify ,closeHub} = useSignalR();\n const {\n user\n } = useSelector(state => state.auth)\n React.useEffect(() => {\n if (user) {\n const token = localStorage.getItem(\"jwtToken\");\n\n startHub(token);\n onReceiveNotify();\n return;\n }\n closeHub();\n }, [user])\n\n\n return (\n \n {children}\n \n )\n}\n\nexport default SignalRProvider\n","import * as signalR from '@microsoft/signalr'\nimport config from 'src/configs'\nimport { AuthActions } from 'src/store/auth/actions';\nimport { useDispatch } from 'react-redux';\n\nexport const useSignalR = () => {\n const hub = new signalR.HubConnectionBuilder();\n let connection = hub\n .withUrl(`${config.baseUrl}/notificationHub`,\n {\n accessTokenFactory: () => localStorage.getItem(\"jwtToken\"),\n\n })\n .withAutomaticReconnect()\n .configureLogging(signalR.LogLevel.Debug)\n .build();\n const startHub = (token) => {\n if (!config.signalR) return;\n try {\n\n connection.start()\n .then()\n .catch(err => {\n // console.log('Error while starting connection' + err)\n\n })\n } catch (error) {\n // console.log(\"start the hub error\", error)\n }\n\n connection.onclose((error) => {\n // console.log(\"connection closed\")\n connect(connection);\n })\n\n\n }\n\n async function connect(conn) {\n if (!config.signalR) return;\n conn.start().catch(e => {\n sleep(5000);\n // console.log(\"Reconnecting Socket\");\n connect(conn);\n }\n )\n }\n async function sleep(msec) {\n return new Promise(resolve => setTimeout(resolve, msec));\n }\n\n const closeHub = () => {\n if (connection)\n connection.stop();\n\n }\n\n const dispatch = useDispatch();\n const onReceiveNotify = () => {\n if (!config.signalR) return;\n connection.on(\"ReceiveMessage\", (message) => {\n dispatch(AuthActions.updateToken(message))\n // dispatch(AuthActions.addNotification({ ...message, createdDate: new Date() }))\n })\n }\n return {\n startHub,\n onReceiveNotify,\n closeHub\n }\n\n}\n\n","import { Trans } from \"@lingui/react\";\nimport React from \"react\";\n\nfunction TransKeyNotFound() {\n return (\n
\n \n
\n );\n}\n\nexport default TransKeyNotFound;\n","// ** React Imports\nimport { Suspense, lazy } from 'react'\nimport ReactDOM from 'react-dom'\n\n// ** Redux Imports\nimport { Provider } from 'react-redux'\n// import { store } from './redux/storeConfig/store'\nimport { history, store } from './store'\n\n// ** Toast & ThemeColors Context\nimport { ToastContainer } from 'react-toastify'\nimport { ThemeContext } from './utility/context/ThemeColors'\n\nimport { AbilityContext } from 'src/utility/context/Can'\n// ** Spinner (Splash Screen)\nimport Spinner from './@core/components/spinner/Fallback-spinner'\n\n// ** Ripple Button\nimport './@core/components/ripple-button'\n\n// ** PrismJS\nimport 'prismjs'\nimport 'prismjs/themes/prism-tomorrow.css'\nimport 'prismjs/components/prism-jsx.min'\n\n// ** React Perfect Scrollbar\nimport 'react-perfect-scrollbar/dist/css/styles.css'\n\n// ** React Toastify\nimport '@styles/react/libs/toastify/toastify.scss'\n\n// ** Core styles\nimport './@core/assets/fonts/feather/iconfont.css'\nimport './@core/scss/core.scss'\nimport './assets/scss/style.scss'\nimport \"@fortawesome/fontawesome-free/css/all.min.css\";\n// ** Service Worker\nimport * as serviceWorker from './serviceWorker'\nimport { IntlProviderWrapper } from './utility/context/Internationalization'\n// import ability from './configs/acl/ability';\nimport userAbility from 'src/configs/permission/userAbitlity';\nimport { ConnectedRouter } from 'connected-react-router'\nimport { Router } from 'react-router-dom'\nimport SignalRProvider from './utility/providers/SignalRProvider'\nimport TransKeyNotFound from './components/TransKeyNotFound'\n\n// ** Lazy load app\nconst LazyApp = lazy(() => import('./App'))\n\nReactDOM.render(\n \n \n }>\n \n \n \n \n\n {/* */}\n \n \n \n {/* */}\n \n \n \n \n \n \n ,\n document.getElementById('root')\n)\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister()\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getRefusalReasons: { args: [\"payload\"], meta: { async: true } },\n getRefusalReasonWithId: { args: [\"payload\"], meta: { async: true } },\n addRefusalReason: { args: [\"payload\"], meta: { async: true } },\n editRefusalReason: { args: [\"payload\"], meta: { async: true } },\n deleteRefusalReason: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/RefusalReasons/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { DIRECTIONS } from \"react-with-direction/dist/DirectionProvider\";\n\nexport const DEFAULT_DIRECTION = DIRECTIONS.LTR;\nexport const DEFAULT_LOCALE = \"en\";\nexport const DEFAULT_CURRENCY = \"SAR\";\n","import createReducer from \"src/utils/reduxsauce/createReducer\";\nimport { DEFAULT_LOCALE, DEFAULT_DIRECTION, getLocaleDirection, DEFAULT_CURRENCY } from \"../constants\";\nimport { ActionTypes } from \"./actions\";\nimport {locales} from \"../SupportedLocales\";\n\nimport { defaultState, bindReducers } from \"src/utils/genState\";\n\nconst initialState = {\n supportedLocales: locales,\n locale: locales[DEFAULT_LOCALE],\n direction: DEFAULT_DIRECTION,\n defaultCurrency: DEFAULT_CURRENCY,\n priceDisplay: \"baseprice\", //allawed values: baseprice, fees, prepayamount, totalamount\n lastPing: \"\",\n isLoadingHotels: false,\n layout: \"vertical\", // options[String]: \"vertical\"(default), \"horizontal\"\n theme: \"light\", // options[String]: 'light'(default), 'dark', 'semi-dark'\n sidebarCollapsed: false, // options[Boolean]: true, false(default)\n navbarColor: \"default\", // options[String]: default / primary / success / danger / info / warning / dark\n navbarType: \"floating\", // options[String]: floating(default) / static / sticky / hidden\n footerType: \"static\", // options[String]: static(default) / sticky / hidden\n disableCustomizer: true, // options[Boolean]: true, false(default)\n hideScrollToTop: false, // options[Boolean]: true, false(default)\n menuTheme: \"primary\", // options[String]: primary / success / danger / info / warning / dark\n extraStarred: [],\n suggestions: [],\n starred: [],\n defaultLat:21.4233733,\n defaultLong:39.821831,\n defaultZoom:12.5,\n ...defaultState(\"isoCountries\"),\n};\n\nconst changeLocale = (state, draft, locale) => {\n\n let _locale = locales[locale.code];\n if (!_locale) _locale = locales[DEFAULT_LOCALE];\n\n draft.locale = _locale;\n draft.direction = _locale.direction.toLowerCase() === \"rtl\" ? \"rtl\" : \"ltr\";\n localStorage.setItem(\"culture\", _locale.code);\n localStorage.setItem(\"language\", _locale.code);\n localStorage.setItem(\"cultureCode\", _locale.culture);\n localStorage.setItem(\"isRTL\", _locale.isRTL);\n\n // window.recaptchaOptions = {\n // lang: locale,\n // };\n\n document.getElementsByTagName(\"html\")[0].setAttribute(\"dir\", _locale.direction);\n document.getElementsByTagName(\"body\")[0].setAttribute(\"dir\", _locale.direction);\n document.getElementsByTagName(\"body\")[0].setAttribute(\"direction\", _locale.direction);\n document.getElementsByTagName(\"body\")[0].style.direction=_locale.direction;\n document.getElementsByTagName(\"body\")[0].style.textAlign=_locale.direction===\"RTL\"?\"right\":\"unset\";\n};\nconst changeCurrencySuccess = (state, draft, payload ) => {\n // const { currency } = payload;\n // draft.currency = SupportedCurrencies[currency];\n // storage.setItem(\"currency\", currency);\n};\n\nconst changePriceDisplay = (state, draft,{ priceDisplay }) => {\n draft.priceDisplay = priceDisplay;\n};\n\nconst ping = (state,draft, payload) => {\n draft.lastPing = payload;\n};\n\nconst setIsLoading = (state,draft, payload) => {\n draft.isLoadingHotels = true;\n};\n\nconst clearIsLoading = (state,draft, payload) => {\n draft.isLoadingHotels = false;\n};\n\n\n\nexport const reducer = createReducer(initialState, {\n ...bindReducers(ActionTypes, {action:\"setIsLoading\",async:false,successCb:setIsLoading}),\n ...bindReducers(ActionTypes, {action:\"clearIsLoading\",async:false,successCb:clearIsLoading}),\n ...bindReducers(ActionTypes, {action:\"changeLocale\",async:false,successCb:changeLocale}),\n});\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllNationalities: { args: [\"payload\"], meta: { async: true } },\n addNationality: { args: [\"payload\"], meta: { async: true } },\n editNationality: { args: [\"payload\"], meta: { async: true } },\n deleteNationality: { args: [\"payload\"], meta: { async: true } },\n showDialog: { args: [], meta: { async: false } },\n showDeleteDialog: { args: [], meta: { async: false } },\n resetDialog: { args: [], meta: { async: false } },\n },\n {\n prefix: \"@app/Nationalities/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;\n","import { createActions } from \"src/utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n ping: { args: [], meta: { async: true } },\n changeLocale: { args: [\"payload\"] },\n changeCurrency: { args: [\"payload\"], meta: { async: true } },\n changePriceDisplay: { args: [\"payload\"] },\n setIsLoading: { args: [] },\n clearIsLoading: { args: [] },\n getCountries:{ args: [], meta: { async: true } },\n getCities:{ args: [], meta: { async: true } }\n },\n {\n prefix: \"@app/app/\"\n }\n);\n\nexport const ActionTypes = Types;\nexport default Creators;\nexport const AppActions = Creators;\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getAllShiftSessions: { args: [\"payload\"], meta: { async: true } },\n getMonthlyReports: { args: [\"payload\"], meta: { async: true } },\n getExportedSessions: { args: [\"payload\"], meta: { async: true } },\n getShiftSessionWithId: { args: [\"payload\"], meta: { async: true } },\n\n },\n {\n prefix: \"@app/ShiftSessions/\",\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;","import pipe from \"ramda/es/pipe\";\nimport trim from \"ramda/es/trim\";\nimport merge from \"ramda/es/merge\";\nimport split from \"ramda/es/split\";\nimport reject from \"ramda/es/reject\";\nimport map from \"ramda/es/map\";\nimport fromPairs from \"ramda/es/fromPairs\";\nimport anyPass from \"ramda/es/anyPass\";\nimport isNil from \"ramda/es/isNil\";\nimport isEmpty from \"ramda/es/isEmpty\";\n\nconst isNilOrEmpty = anyPass([isNil, isEmpty]);\n\nconst defaultOptions = {\n prefix: \"\"\n};\n\nexport default (types, options = {}) => {\n if (isNilOrEmpty(types)) throw new Error(\"valid types are required\");\n\n const { prefix } = merge(defaultOptions, options);\n\n return pipe(\n trim,\n split(/\\s/),\n map(trim),\n reject(isNilOrEmpty),\n map(x => [x, prefix + x]),\n fromPairs\n )(types);\n};\n","import createTypes from \"./createTypes\";\nimport is from \"ramda/es/is\";\nimport isNil from \"ramda/es/isNil\";\nimport isEmpty from \"ramda/es/isEmpty\";\nimport join from \"ramda/es/join\";\nimport keys from \"ramda/es/keys\";\nimport map from \"ramda/es/map\";\nimport mapObjIndexed from \"ramda/es/mapObjIndexed\";\nimport merge from \"ramda/es/merge\";\nimport pick from \"ramda/es/pick\";\nimport pipe from \"ramda/es/pipe\";\nimport replace from \"ramda/es/replace\";\nimport toUpper from \"ramda/es/toUpper\";\nimport zipObj from \"ramda/es/zipObj\";\nimport flatten from \"ramda/es/flatten\";\n\nconst defaultOptions = {\n prefix: \"\"\n};\n\n// matches each word in a camelCaseString (except the first)\n// consecutive capitals are treated as one word\nconst RX_CAPS = /(?!^)([A-Z][a-z]+|[A-Z]+(?=[A-Z]|\\b))/g;\n\n// converts a camelCaseWord into a SCREAMING_SNAKE_CASE word\nconst camelToScreamingSnake = pipe(\n replace(RX_CAPS, \"_$1\"),\n toUpper\n);\n\n// build Action Types out of an object\nconst convertToTypes = (config, options) => {\n const opts = merge(defaultOptions, options);\n const { successPostfix, failPostfix } = opts;\n\n return pipe(\n keys, // just the keys\n keys => {\n return keys.map(k => {\n const _config = config[k];\n if (_config && _config.meta && _config.meta.async) {\n return [k, `${k}${successPostfix || \"Success\"}`, `${k}${failPostfix || \"Fail\"}`];\n } else return k;\n });\n },\n flatten,\n map(camelToScreamingSnake), // CONVERT_THEM\n join(\" \"), // space separated\n types => createTypes(types, opts) // make them into Redux Types\n )(config);\n};\n\n// an action creator with additional properties\nconst createActionCreator = (name, config, options) => {\n const { prefix } = merge(defaultOptions, options);\n // types are upcase and snakey\n const type = `${prefix}${camelToScreamingSnake(name)}`;\n\n const { args, meta } = config;\n const creators = {};\n\n // do we need extra props for this?\n const noKeys = isNil(args) || isEmpty(args);\n\n // a type-only action creator\n if (noKeys) {\n creators[name] = () => ({ type, meta: { ...meta } });\n }\n // an action creator with type + properties\n // \"properties\" is defined as an array of prop names\n else if (is(Array, args)) {\n creators[name] = (...values) => {\n const extraProps = zipObj(args, values);\n return { type, ...extraProps, meta: { ...meta } };\n };\n }\n // an action creator with type + properties\n // \"properties\" is defined as an object of {prop name: default value}\n else if (is(Object, args)) {\n const defaultProps = args;\n creators[name] = valueObject => {\n const providedProps = pick(Object.keys(defaultProps), valueObject);\n return { type, ...defaultProps, ...providedProps, meta: { ...meta } };\n };\n }\n\n if (isEmpty(creators)) {\n throw new Error(\"action props must be a null/array/object/function\");\n }\n\n if (meta && meta.async) {\n const { successPostfix, failPostfix } = options;\n\n const successKey = `${name}${successPostfix || \"Success\"}`;\n const failKey = `${name}${failPostfix || \"Fail\"}`;\n const success = `${prefix}${camelToScreamingSnake(name)}_${(successPostfix || \"success\").toUpperCase()}`;\n const fail = `${prefix}${camelToScreamingSnake(name)}_${(failPostfix || \"fail\").toUpperCase()}`;\n\n creators[successKey] = (...values) => {\n if (values && values.length === 1) {\n const _value = values[0];\n if (Array.isArray(_value)) {\n return { type: success, meta: { done: true }, payload: _value };\n } else {\n return { type: success, meta: { done: true }, payload: { ...values[0] } };\n }\n } else {\n return { type: success, meta: { done: true }, payload: { ...flatten(values) } };\n }\n };\n\n creators[failKey] = error => {\n return { type: fail, meta: { done: true }, error };\n };\n }\n\n return creators;\n};\n\n// build Action Creators out of an objet\nconst convertToCreators = (config, options) => {\n let creators = {};\n mapObjIndexed((num, key, value) => {\n if (typeof value[key] === \"function\") {\n // the user brought their own action creator\n creators[key] = value[key];\n } else {\n // lets make an action creator for them!\n creators = merge(creators, { ...createActionCreator(key, value[key], options) });\n }\n })(config);\n\n return creators;\n};\n\nexport default (config, options) => {\n const emptyObj = {\n Types: undefined,\n Creators: undefined\n };\n if (isNil(config)) {\n return emptyObj;\n throw new Error(\"an object is required to setup types and creators\");\n }\n if (isEmpty(config)) {\n return emptyObj;\n throw new Error(\"empty objects are not supported\");\n }\n\n return {\n Types: convertToTypes(config, options),\n Creators: convertToCreators(config, options)\n };\n};\n","import curry from \"ramda/es/curry\";\nimport is from \"ramda/es/is\";\n/**\n * Allows your reducers to be reset.\n *\n * @param {string} typeToReset - The action type to listen for.\n * @param {function} originalReducer - The reducer to wrap.\n */\nfunction resettableReducer(typeToReset, originalReducer) {\n // a valid type is required\n if (!is(String, typeToReset) || typeToReset === \"\") {\n throw new Error(\"A valid reset type is required.\");\n }\n\n // an original reducer is required\n if (typeof originalReducer !== \"function\") {\n throw new Error(\"A reducer is required.\");\n }\n // run it through first to get what the default state should be\n let resetState = originalReducer(undefined, {});\n\n // create our own reducer that wraps the original one and hijacks the reset\n function reducer(state = resetState, action) {\n if (action && action.type === typeToReset) {\n return resetState;\n } else {\n return originalReducer(state, action);\n }\n }\n return reducer;\n}\n\nexport default curry(resettableReducer);\n","import cr from \"./createReducer\";\nimport ct from \"./createTypes\";\nimport ca from \"./createActions\";\nimport rr from \"./resettableReducer\";\nimport * as Types from \"./Types\";\n\nexport const createReducer = cr;\nexport const createTypes = ct;\nexport const createActions = ca;\nexport const resettableReducer = rr;\nexport { Types };\n","// import { toAbsoluteUrl } from \"src/_metronic/_helpers\";\n\nexport const locales = {\n \"ar\": {\n \"code\": \"ar\",\n \"name\": \"العربية\",\n \"direction\": \"RTL\",\n // \"flag\": toAbsoluteUrl(\"/media/svg/flags/158-egypt.svg\"),\n \"culture\": \"ar-SA\",\n flag:\"eg\",\n isRTL:true,\n default: true\n },\n \"en\": {\n \"code\": \"en\",\n \"name\": \"English\",\n \"direction\": \"LTR\",\n // \"flag\": toAbsoluteUrl(\"/media/svg/flags/226-united-states.svg\"),\n \"culture\": \"en-US\",\n flag:\"us\",\n default: false\n }\n}","\nlet app = localStorage.getItem('app_name');\n\n\nexport default {\n useLocalApi: true,\n appName: \"Razy\",\n appTitle: \"Razy\",\n appDescription: \"razytech\",\n signalR: false,\n baseUrl: \"\",\n // baseUrl:\"https://www.nileappco.com/\",\n // apiRoot: \"https://www.nileappco.com/api\",\n // devApiRoot: \"http://localhost:5000/api\",\n devApiRoot: \"https://localhost:5260/\",\n // devApiRoot: \"https://www.nileappco.com/api\",\n pageOptions: [5, 10, 50, 100],\n contactPhone: \"\",\n contactMail: \"\",\n addressOnMap: \"\",\n gen_password_length: 10,\n gen_password_characters: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijaklmnopqrstuvwxyz1234567890',\n appSelected: app ? true : false,\n app: app,\n REACT_APP_BASE_API_URL: app === 'roi' ?\n process.env.REACT_APP_BASE_API_URL\n : process.env.REACT_APP_BASE_API_URL_NAKHLA,\n};\n","import isNil from \"ramda/es/isNil\";\nimport is from \"ramda/es/is\";\nimport has from \"ramda/es/has\";\nimport any from \"ramda/es/any\";\nimport equals from \"ramda/es/equals\";\nimport keys from \"ramda/es/keys\";\n\nimport { DEFAULT } from \"./Types\";\n/**\n Creates a reducer.\n @param {string} initialState - The initial state for this reducer.\n @param {object} handlers - Keys are action types (strings), values are reducers (functions).\n @return {object} A reducer object.\n */\nexport default (initialState, handlers) => {\n // initial state is required\n if (isNil(initialState)) {\n throw new Error(\"initial state is required\");\n }\n\n // handlers must be an object\n if (isNil(handlers) || !is(Object, handlers)) {\n throw new Error(\"handlers must be an object\");\n }\n\n // handlers cannot have an undefined key\n if (any(equals(\"undefined\"))(keys(handlers))) {\n throw new Error(\"handlers cannot have an undefined key\");\n }\n\n // create the reducer function\n return (state = initialState, action) => {\n // wrong actions, just return state\n if (isNil(action)) return state;\n if (!has(\"type\", action)) return state;\n\n // look for the handler\n const handler = handlers[action.type] || handlers[DEFAULT];\n\n // no handler no cry\n if (isNil(handler)) return state;\n\n // execute the handler\n return handler(state, action);\n };\n};\n","import { createActions } from \"../../utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n getSettings: { args: [], meta: { async: true } },\n editSetting:{ args: [\"payload\"], meta: { async: true } },\n editAllSettings:{ args: [\"payload\"], meta: { async: true } },\n },\n {\n prefix: \"@app/settings/\"\n }\n);\nexport const ActionTypes = Types;\nexport default Creators;","import configs from '.'\n\n// You can customize the template with the help of this file\n\n//Template config options\nconst themeConfig = {\n app: {\n appName: '',\n appLogoImage: require('@src/assets/images/logo/roi.png').default\n // require('@src/assets/images/nakhla.png').default\n },\n layout: {\n isRTL: true,\n skin: 'light', // light, dark, bordered, semi-dark\n routerTransition: 'fadeIn', // fadeIn, fadeInLeft, zoomIn, none or check this for more transition https://animate.style/\n type: 'vertical', // vertical, horizontal\n contentWidth: 'full', // full, boxed\n menu: {\n isHidden: true,\n isCollapsed: false,\n },\n navbar: {\n // ? For horizontal menu, navbar type will work for navMenu type\n type: 'sticky', // static , sticky , floating, hidden\n backgroundColor: 'white' // BS color options [primary, success, etc]\n },\n footer: {\n type: 'static' // static, sticky, hidden\n },\n customizer: false,\n scrollTop: true // Enable scroll to top button\n }\n}\n\nexport default themeConfig\n","// ** Handles Layout Content Width (full / boxed)\nexport const handleContentWidth = value => dispatch => dispatch({ type: 'HANDLE_CONTENT_WIDTH', value })\n\n// ** Handles Menu Collapsed State (Bool)\nexport const handleMenuCollapsed = value => dispatch => dispatch({ type: 'HANDLE_MENU_COLLAPSED', value })\n\n// ** Handles Menu Hidden State (Bool)\n// export const handleMenuHidden = value => dispatch => dispatch({ type: 'HANDLE_MENU_HIDDEN', value })\n\n// ** Handles RTL (Bool)\n// export const handleRTL = value => dispatch => dispatch({ type: 'HANDLE_RTL', value })\n\nimport { createActions } from \"src/utils/reduxsauce\";\n\nconst { Types, Creators } = createActions(\n {\n handleRtl: { args: [\"payload\"] },\n handleMenuHidden: { args: [\"payload\"] },\n handleMenuCollapsed: { args: [\"payload\"] },\n setLogo: { args: [\"payload\"] },\n setAppName: { args: [\"payload\"] },\n setUrl: { args: [\"payload\"] },\n },\n {\n prefix: \"@app/layout/\"\n }\n);\n\nexport const ActionTypes = Types;\nexport default Creators;\nexport const LayoutActions = Creators;\n"],"sourceRoot":""}