ngx-tencent-im
Version:
Instant messaging for Angular.
18 lines • 3.58 kB
JavaScript
import { createReducer, on } from '@ngrx/store';
import { resetUserAction, SDKReadyAction, updateCurrentUserProfileAction } from '../actions';
export const initialState = {
currentUserProfile: {},
isLogin: false,
isSDKReady: false,
userID: 0,
userSig: '',
sdkAppID: 0,
};
const _userReducer = createReducer(initialState, on(SDKReadyAction, (state, { SDKReadyState }) => ({ ...state, isSDKReady: SDKReadyState })), on(updateCurrentUserProfileAction, (state, { profile }) => ({ ...state, currentUserProfile: profile })), on(resetUserAction, (state) => ({
...state,
...initialState
})));
export function UserReducer(state, action) {
return _userReducer(state, action);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRlbmNlbnQtaW0vc3JjL3N0b3JlL3JlZHVjZXIvdXNlci5yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBVSxhQUFhLEVBQUUsRUFBRSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXhELE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBWTdGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBYztJQUNyQyxrQkFBa0IsRUFBRSxFQUFhO0lBQ2pDLE9BQU8sRUFBRSxLQUFLO0lBQ2QsVUFBVSxFQUFFLEtBQUs7SUFDakIsTUFBTSxFQUFFLENBQUM7SUFDVCxPQUFPLEVBQUUsRUFBRTtJQUNYLFFBQVEsRUFBRSxDQUFDO0NBQ1osQ0FBQztBQUVGLE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FDaEMsWUFBWSxFQUNaLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDLEVBQzNGLEVBQUUsQ0FBQyw4QkFBOEIsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsT0FBa0IsRUFBRSxDQUFDLENBQUMsRUFDbEgsRUFBRSxDQUFDLGVBQWUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM5QixHQUFHLEtBQUs7SUFDUixHQUFHLFlBQVk7Q0FDaEIsQ0FBQyxDQUFDLENBQ0osQ0FBQztBQUVGLE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBNEIsRUFBRSxNQUFjO0lBQ3RFLE9BQU8sWUFBWSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbmltcG9ydCB7IEFjdGlvbiwgY3JlYXRlUmVkdWNlciwgb24gfSBmcm9tICdAbmdyeC9zdG9yZSc7XHJcbmltcG9ydCB7IFByb2ZpbGUgfSBmcm9tICd0aW0tanMtc2RrJztcclxuaW1wb3J0IHsgcmVzZXRVc2VyQWN0aW9uLCBTREtSZWFkeUFjdGlvbiwgdXBkYXRlQ3VycmVudFVzZXJQcm9maWxlQWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucyc7XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBVc2VyU3RhdGUge1xyXG4gIGN1cnJlbnRVc2VyUHJvZmlsZTogUHJvZmlsZSxcclxuICBpc0xvZ2luOiBib29sZWFuLFxyXG4gIGlzU0RLUmVhZHk6IGJvb2xlYW4sIC8vIFRJTSBTREsg5piv5ZCmIHJlYWR5XHJcbiAgdXNlcklEOiBudW1iZXIsXHJcbiAgdXNlclNpZzogc3RyaW5nLFxyXG4gIHNka0FwcElEOiBudW1iZXIsXHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBpbml0aWFsU3RhdGU6IFVzZXJTdGF0ZSA9IHtcclxuICBjdXJyZW50VXNlclByb2ZpbGU6IHt9IGFzIFByb2ZpbGUsXHJcbiAgaXNMb2dpbjogZmFsc2UsXHJcbiAgaXNTREtSZWFkeTogZmFsc2UsIC8vIFRJTSBTREsg5piv5ZCmIHJlYWR5XHJcbiAgdXNlcklEOiAwLFxyXG4gIHVzZXJTaWc6ICcnLFxyXG4gIHNka0FwcElEOiAwLFxyXG59O1xyXG5cclxuY29uc3QgX3VzZXJSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcihcclxuICBpbml0aWFsU3RhdGUsXHJcbiAgb24oU0RLUmVhZHlBY3Rpb24sIChzdGF0ZSwgeyBTREtSZWFkeVN0YXRlIH0pID0+ICh7IC4uLnN0YXRlLCBpc1NES1JlYWR5OiBTREtSZWFkeVN0YXRlIH0pKSxcclxuICBvbih1cGRhdGVDdXJyZW50VXNlclByb2ZpbGVBY3Rpb24sIChzdGF0ZSwgeyBwcm9maWxlIH0pID0+ICh7IC4uLnN0YXRlLCBjdXJyZW50VXNlclByb2ZpbGU6IHByb2ZpbGUgYXMgUHJvZmlsZSB9KSksXHJcbiAgb24ocmVzZXRVc2VyQWN0aW9uLCAoc3RhdGUpID0+ICh7XHJcbiAgICAuLi5zdGF0ZSxcclxuICAgIC4uLmluaXRpYWxTdGF0ZVxyXG4gIH0pKSxcclxuKTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBVc2VyUmVkdWNlcihzdGF0ZTogVXNlclN0YXRlIHwgdW5kZWZpbmVkLCBhY3Rpb246IEFjdGlvbikge1xyXG4gIHJldHVybiBfdXNlclJlZHVjZXIoc3RhdGUsIGFjdGlvbik7XHJcbn1cclxuIl19