Files
bigcapital/packages/webapp/src/store/VendorCredit/VendorCredit.reducer.tsx
2025-11-03 21:40:24 +02:00

41 lines
938 B
TypeScript

// @ts-nocheck
import { createReducer } from '@reduxjs/toolkit';
import { persistReducer, purgeStoredState } from 'redux-persist';
import storage from 'redux-persist/lib/storage';
import { createTableStateReducers } from '@/store/tableState.reducer';
import t from '@/store/types';
export const defaultTableQuery = {
pageSize: 20,
pageIndex: 0,
filterRoles: [],
viewSlug: null,
};
const initialState = {
tableState: defaultTableQuery,
selectedRows: [],
};
const STORAGE_KEY = 'bigcapital:vendor_credits';
const CONFIG = {
key: STORAGE_KEY,
whitelist: [],
storage,
};
const reducerInstance = createReducer(initialState, {
...createTableStateReducers('VENDOR_CREDITS', defaultTableQuery),
[`VENDOR_CREDITS/SET_SELECTED_ROWS`]: (state, action) => {
state.selectedRows = action.payload;
},
[t.RESET]: () => {
purgeStoredState(CONFIG);
},
});
export default persistReducer(CONFIG, reducerInstance);