import { useEffect, useState } from "react";
import { Button, _Divider, Drawer, Space } from "antd";
import { FullscreenOutlined, FullscreenExitOutlined } from "@ant-design/icons";
import _DiscussionTopic from "./DiscussionTopic";
import _DiscussionListCard, { type TResType } from "./DiscussionListCard";
import type { _IComment } from "./DiscussionItem"
import _DiscussionAnchor from "./DiscussionAnchor";
import { Link } from "react-router";
import { useIntl } from "react-intl";
import Discussion from "./Discussion";
export interface IAnswerCount {
id: string;
count: number;
}
interface IWidget {
trigger?: JSX.Element;
open?: boolean;
onClose?: () => void;
resId?: string;
resType?: TResType;
}
const DiscussionDrawerWidget = ({
trigger,
open,
onClose,
resId,
resType,
}: IWidget) => {
const intl = useIntl();
const [openDrawer, setOpenDrawer] = useState(open);
useEffect(() => {
setOpenDrawer(open);
}, [open]);
const drawerMinWidth = 600;
const drawerMaxWidth = 1100;
const [drawerWidth, setDrawerWidth] = useState(drawerMinWidth);
return (
<>
{
setOpenDrawer(true);
}}
>
{trigger}
{intl.formatMessage(
{
id: "buttons.open.in.new.tab",
},
{ item: "" }
)}
{drawerWidth === drawerMinWidth ? (
}
onClick={() => setDrawerWidth(drawerMaxWidth)}
/>
) : (
}
onClick={() => setDrawerWidth(drawerMinWidth)}
/>
)}
}
width={drawerWidth}
onClose={() => {
if (onClose) {
onClose();
} else {
setOpenDrawer(false);
}
if (document.getElementsByTagName("body")[0].hasAttribute("style")) {
document.getElementsByTagName("body")[0].removeAttribute("style");
}
}}
open={openDrawer}
maskClosable={false}
>
>
);
};
export default DiscussionDrawerWidget;