import { cancel as e, fork as o, put as a, take as r } from "redux-saga/effects"
import {
forwardMessageRoomListSaga as i,
resetForwardMessage as t,
setForwardMessageRoomTo as s,
} from "../forward-message"
import { switchRoomSubmit as m } from "../room.action"
import { taskErrorSaga as d } from "../../error"
import { setShareMessageIn as n, shareMessageInSubmit as f } from "./share-message-in.reducer"
export function* shareMessageInSaga({ appVersion: p }) {
for (;;) {
const {
payload: { text: l, media: c },
} = yield r(n)
if (!l && !c) {
yield d("shareMessageInSaga", "Unable to share message without text and media")
continue
}
const y = yield o(i, { appVersion: p }),
g = yield r([s, t])
if ((yield e(y), s.match(g))) {
const e = g.payload
;(yield a(f({ toRoomId: e, text: l, media: c })), yield a(m({ roomId: e })))
}
}
}