import { createAction as e, createSelector as s } from "@reduxjs/toolkit"
import { ROOM_STATE_KEY as t } from "../room.constant"
export const setShareMessageIn = e("room/share/set-share-message-in")
export const shareMessageInSubmit = e("room/share/share-message-in-submit")
export const resetShareMessageIn = e("room/share/reset-share-message-in")
export const SHARE_MESSAGE_IN_MESSAGE_INITIAL_STATE = { toRoomId: "", text: "", media: void 0 }
export const SHARE_MESSAGE_IN_STATE_KEY = "shareMessageIn"
export const shareMessageInReducer = (e = SHARE_MESSAGE_IN_MESSAGE_INITIAL_STATE, s) => {
switch (s.type) {
case shareMessageInSubmit.type: {
const { toRoomId: t, text: o, media: r } = s.payload
return { ...e, toRoomId: t, text: o, media: r }
}
case resetShareMessageIn.type:
return SHARE_MESSAGE_IN_MESSAGE_INITIAL_STATE
default:
return e
}
}
export const getShareMessageInState = (e) => e[t].shareMessageIn
export const makeGetShareMessageInByRoomId = (e) =>
s(getShareMessageInState, (s) => {
if (s.toRoomId === e) return s
})