"use client"; "use client"; import React, { useEffect, useState } from "react"; import { useForm, Controller } from "react-hook-form"; import { Input } from "@/components/ui/input"; import { Button } from "@/components/ui/button"; import { Label } from "@/components/ui/label"; import { Card } from "@/components/ui/card"; import { zodResolver } from "@hookform/resolvers/zod"; import * as z from "zod"; import Swal from "sweetalert2"; import withReactContent from "sweetalert2-react-content"; import { useParams } from "next/navigation"; import { SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select"; import { Avatar, AvatarImage } from "@/components/ui/avatar"; import { getCuratorUser, getEscalationDiscussion, getQuestionTicket, getTicketingDetail, getTicketingInternalDetail, getTicketingInternalDiscussion, saveTicketInternalReply, saveTicketsQuestion, } from "@/service/communication/communication"; import { Textarea } from "@/components/ui/textarea"; import { Icon } from "@iconify/react/dist/iconify.js"; import { Link } from "@/i18n/routing"; import { loading } from "@/lib/swal"; import { id } from "date-fns/locale"; import { DetailTicket } from "../ticketing/info-lainnya-types"; import { Description } from "@radix-ui/react-toast"; import { Popover, PopoverContent, PopoverTrigger, } from "@/components/ui/popover"; import { ChevronDownIcon } from "lucide-react"; import { getOperatorUser } from "@/service/management-user/management-user"; import makeAnimated from "react-select/animated"; import Select from "react-select"; interface Option { id: string; label: string; value: string; fullname: string; userLevel: string; userLevelId: string; } const taskSchema = z.object({ title: z.string().min(1, { message: "Judul diperlukan" }), description: z.string().min(2, { message: "Narasi Penugasan harus lebih dari 2 karakter.", }), }); export type replyDetail = { id: number; message: string; createdAt: string; messageFrom: { id: number; fullname: string; }; messageTo: { id: number; fullname: string; }; }; const optionsData = [ { value: "1", label: "Low" }, { value: "2", label: "Medium" }, { value: "3", label: "High" }, ]; type OptionType = { value: string; label: string; }; export default function FormQuestionsForward() { const MySwal = withReactContent(Swal); const { id } = useParams() as { id: string }; const [detail, setDetail] = useState(); const [ticketReply, setTicketReply] = useState([]); const [replyVisible, setReplyVisible] = useState(false); const [listDiscussion, setListDiscussion] = useState(); const [message, setMessage] = useState(""); const [detailTickets, setDetailTickets] = useState(null); // const [selectedPriority, setSelectedPriority] = useState(""); const [selectedPriority, setSelectedPriority] = useState( null ); const [replyMessage, setReplyMessage] = useState(""); const [selectedStatus, setSelectedStatus] = useState(""); const [operatorOpt, setOperatorOpt] = useState< { id: string; label: string; value: string }[] >([]); const [selectedOperator, setSelectedOperator] = useState([]); const [options, setOptions] = useState([]); const animatedComponent = makeAnimated(); const [selectedOption, setSelectedOption] = useState