emit added

pull/1154/head
TeamAbronDev 2025-01-27 16:14:52 +03:30
parent 4dfaa43c15
commit 6f622a9a88
3 changed files with 24 additions and 33 deletions

View File

@ -280,38 +280,28 @@ export default observer(
({ channel }: { channel: Channel; }) => {
const [hidden, setHidden] = useState(true);
const unhide = () => setHidden(false);
// useEffect(() => setHidden(false), [last_id]);
// useEffect(() => internalSubscribe("NewMessages", "hide", hide), []);
// useEffect(() => {
// const onKeyDown = (e: KeyboardEvent) =>
// e.key === "Escape" && hide();
// document.addEventListener("keydown", onKeyDown);
// return () => document.removeEventListener("keydown", onKeyDown);
// }, []);
// const extendedMessage = new MessageExtendedClass(client);
// useEffect(() => {
// if (last_id) {
// try {
// setTimeAgo(dayjs(decodeTime(last_id)).fromNow());
// } catch (err) { }
// }
// }, [last_id]);
const renderer = getRenderer(channel);
useEffect(() => {
// Subscribe to the update event for pinned messages
const unsubscribe = internalSubscribe(
"PinnedMessage",
"update",
(newMessage: unknown) => {
const message = newMessage as MessageI;
if (!renderer.pinned_messages.find((msg) => msg._id === message._id)) {
renderer.pinned_messages.push(message);
}
}
);
// Cleanup subscription on unmount
return () => unsubscribe();
}, [renderer]);
const history = useHistory();
if (renderer.state !== "RENDER") return null;
// if (!last_id) return null;
// if (hidden) return null;
// console.log(renderer.pinned_messages, "PINNED MESSAGES")
// renderer.pinned_messages.slice().reverse().map((res, i) => {
// console.log(res, 8989)
// })
function truncateText(text: string, chars: number) {
if (text.length > chars) {
return text.slice(0, chars) + "..";
@ -321,7 +311,6 @@ export default observer(
const client = useClient()
let pinFound = false
return (
<>

View File

@ -214,14 +214,16 @@ export default function ContextMenus() {
const index = messages.findIndex(
(x) => x._id === data.message._id,
);
let message
if (index > -1) {
message = messages[index];
}
console.log(message,7878)
if (message) {
internalEmit("PinnedMessage", "update", message);
}
internalEmit("MessageBox", "pin", message);
// data.message.channel?.ack(pin_id, true);

View File

@ -100,7 +100,7 @@ export const Channel = observer(
const client = useClient();
const state = useApplicationState();
if (!client.channels.exists(id) && server_id) {
if (!client.channels.get(id)) {
if (server_id) {
const server = client.servers.get(server_id);
if (server && server.channel_ids.length > 0) {