Files
CBS-Mobile-App/src/app/rootReducer.ts
T
Abin ToppoandClaude Opus 4.8 58af541536 Add global search, in-app + push notifications, and fix card/beneficiary/scroll issues
- Global feature search for the user app, wired to the home search icon
- Notifications screen: swipe-to-delete, vanish animation, unread badge,
  and Notifee-backed foreground + background (scheduled) OS notifications
- Fix Add Beneficiary save (single source of truth via beneficiaries slice)
- Fix Cards tab scroll freeze and bottom blank space (use ScreenShell scroll)
- User-friendly toast copy across the app
- Android build tuning: parallel/caching/JVM G1 args, mobile-only ABIs

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-02 16:36:27 +05:30

47 lines
1.9 KiB
TypeScript

import { combineReducers } from '@reduxjs/toolkit';
import { baseApi } from '../services/api/baseApi';
import { authReducer } from '../modules/auth/store/authSlice';
import { accountReducer } from '../modules/home/store/accountSlice';
import { transferReducer } from '../modules/transfer/store/transferSlice';
import { paymentsReducer } from '../modules/payments/store/paymentsSlice';
import { depositReducer } from '../modules/deposit/store/depositSlice';
import { serviceReducer } from '../modules/services/store/serviceSlice';
import { loanReducer } from '../modules/loan/store/loanSlice';
import { insuranceReducer } from '../modules/insurance/store/insuranceSlice';
import { cardsReducer } from '../modules/cards/store/cardsSlice';
import { userReducer } from '../modules/profile/store/userSlice';
import { uiReducer } from '../modules/ui/store/uiSlice';
import { agentReducer } from '../modules/agent/store/agentSlice';
import { schemesReducer } from '../modules/schemes/store/schemesSlice';
import { schemesApi } from '../modules/schemes/services/schemesApi';
import { beneficiariesReducer } from '../modules/payments/store/beneficiariesSlice';
import { notificationsReducer } from '../modules/notifications/store/notificationsSlice';
const appReducer = combineReducers({
auth: authReducer,
user: userReducer,
account: accountReducer,
transfer: transferReducer,
payments: paymentsReducer,
deposit: depositReducer,
service: serviceReducer,
loan: loanReducer,
insurance: insuranceReducer,
cards: cardsReducer,
ui: uiReducer,
schemes: schemesReducer,
beneficiaries: beneficiariesReducer,
notifications: notificationsReducer,
agent: agentReducer,
[baseApi.reducerPath]: baseApi.reducer,
[schemesApi.reducerPath]: schemesApi.reducer,
});
export const rootReducer = (state: any, action: any) => {
if (action.type === 'auth/logoutSession/fulfilled') {
state = undefined;
}
return appReducer(state, action);
};