mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-18 22:00:31 +00:00
feat: optimize accounts performance.
feat: optimize alerts architecture. feat: optimize datatable architecture. feat: optimize datatable style.
This commit is contained in:
@@ -13,5 +13,21 @@ export function closeDialog(name, payload) {
|
||||
type: t.CLOSE_DIALOG,
|
||||
name: name,
|
||||
payload: payload,
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
export function openAlert(name, payload) {
|
||||
return {
|
||||
type: t.OPEN_ALERT,
|
||||
name,
|
||||
payload,
|
||||
};
|
||||
}
|
||||
|
||||
export function closeAlert(name, payload) {
|
||||
return {
|
||||
type: t.CLOSE_ALERT,
|
||||
name,
|
||||
payload,
|
||||
};
|
||||
}
|
||||
@@ -11,6 +11,7 @@ const initialState = {
|
||||
sidebarExpended: true,
|
||||
previousSidebarExpended: null,
|
||||
dialogs: {},
|
||||
alerts: {},
|
||||
topbarEditViewId: null,
|
||||
requestsLoading: 0,
|
||||
backLink: false,
|
||||
@@ -47,6 +48,20 @@ const reducerInstance = createReducer(initialState, {
|
||||
};
|
||||
},
|
||||
|
||||
[t.OPEN_ALERT]: (state, action) => {
|
||||
state.alerts[action.name] = {
|
||||
isOpen: true,
|
||||
payload: action.payload || {},
|
||||
};
|
||||
},
|
||||
|
||||
[t.CLOSE_ALERT]: (state, action) => {
|
||||
state.alerts[action.name] = {
|
||||
...state.alerts[action.name],
|
||||
isOpen: false,
|
||||
};
|
||||
},
|
||||
|
||||
[t.CLOSE_ALL_DIALOGS]: (state, action) => {
|
||||
|
||||
},
|
||||
|
||||
@@ -14,4 +14,20 @@ export const getDialogPayloadFactory = () => createSelector(
|
||||
(dialog) => {
|
||||
return { ...dialog?.payload };
|
||||
},
|
||||
);
|
||||
);
|
||||
|
||||
const alertByNameSelector = (state, props) => state.dashboard.alerts?.[props.name];
|
||||
|
||||
export const isAlertOpenFactory = () => createSelector(
|
||||
alertByNameSelector,
|
||||
(alert) => {
|
||||
return alert && alert.isOpen;
|
||||
},
|
||||
);
|
||||
|
||||
export const getAlertPayloadFactory = () => createSelector(
|
||||
alertByNameSelector,
|
||||
(alert) => {
|
||||
return { ...alert?.payload };
|
||||
},
|
||||
);
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
|
||||
|
||||
|
||||
export default {
|
||||
OPEN_DIALOG: 'OPEN_DIALOG',
|
||||
CLOSE_DIALOG: 'CLOSE_DIALOG',
|
||||
OPEN_ALERT: 'OPEN_ALERT',
|
||||
CLOSE_ALERT: 'CLOSE_ALERT',
|
||||
CLOSE_ALL_DIALOGS: 'CLOSE_ALL_DIALOGS',
|
||||
CLOSE_ALL_ALERTS: 'CLOSE_ALL_ALERTS',
|
||||
CHANGE_DASHBOARD_PAGE_TITLE: 'CHANGE_DASHBOARD_PAGE_TITLE',
|
||||
CHANGE_DASHBOARD_PAGE_HINT: 'CHANGE_DASHBOARD_PAGE_HINT',
|
||||
CHANGE_PREFERENCES_PAGE_TITLE: 'CHANGE_PREFERENCES_PAGE_TITLE',
|
||||
|
||||
Reference in New Issue
Block a user