UNPKG

@uimkit/uikit-react

Version:

<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>

49 lines (46 loc) 2.02 kB
import { __assign, __spreadArray } from 'tslib'; import '../../types/models.js'; import '../../types/events.js'; import { CONSTANT_DISPATCH_TYPE } from '../../constants.js'; import { handleUploadPendingMessage } from './utils.js'; import 'react'; var chatReducer = function (state, action) { switch (action === null || action === void 0 ? void 0 : action.type) { case CONSTANT_DISPATCH_TYPE.RESET: return __assign({}, initialState); case CONSTANT_DISPATCH_TYPE.SET_HIGH_LIGHTED_MESSAGE_ID: return __assign(__assign({}, state), { highlightedMessageId: action.value }); case CONSTANT_DISPATCH_TYPE.OPERATE_MESSAGE: return __assign(__assign({}, state), { operateData: __assign({}, action.value) }); case CONSTANT_DISPATCH_TYPE.SET_AUDIO_SOURCE: return __assign(__assign({}, state), { audioSource: action.value }); case CONSTANT_DISPATCH_TYPE.SET_VIDEO_SOURCE: return __assign(__assign({}, state), { videoSource: action.value }); case CONSTANT_DISPATCH_TYPE.UPDATE_UPLOAD_PENDDING_MESSAGE_LIST: return __assign(__assign({}, state), { uploadPenddingMessageList: __spreadArray([], handleUploadPendingMessage(state.uploadPenddingMessageList, action.value), true) }); case CONSTANT_DISPATCH_TYPE.JUMP_TO_LATEST_MESSAGE: { return __assign(__assign({}, state), { // hasMoreNewer: false, highlightedMessageId: undefined, suppressAutoscroll: false }); } default: return state; } }; var initialState = { hasMore: true, hasMoreNewer: false, loadingMore: false, loadingMoreNewer: false, messages: [], highlightedMessageId: '', lastMessageID: '', suppressAutoscroll: false, init: false, isSameLastMessageID: false, operateData: {}, audioSource: null, vidoeSource: null, uploadPenddingMessageList: [], }; export { chatReducer, initialState }; //# sourceMappingURL=ChatState.js.map