import React, { useEffect, useState } from "react"; import { IconClose } from "../../../icons"; import { useDashboardContext } from "../DashboardContext"; import MultiSelect from "./MultiSelect"; import { __ } from "@wordpress/i18n"; import Select from "react-select"; import { applyFilters } from "@wordpress/hooks"; import { toast } from "react-toastify"; import { decodeEntities } from "@wordpress/html-entities"; import useAuthorsQuery from "../hooks/useAuthorsQuery"; import useAuthorsSearchQuery from "../hooks/useAuthorsSearchQuery"; const QuickEdit = ({ setDocuments }) => { const { data, setData: setQuickEditContext } = useDashboardContext(); const { docData, docId: selectedDocId } = data; const [saveText, setSaveText] = useState("Save"); const [quickEditData, setQuickEditData] = useState({ author: "", title: "", slug: "", comment_status: "", status: "", date: "", password: "", }); const [currentDocUser, setCurrentDocUser] = useState({}); const { usersLoading, authors, authorParams, setAuthorParams, isNextPageAvailable } = useAuthorsQuery('authors-list-view', { per_page:10, page:1 }); const { searchLoading, searchedUsers, setUserSearchValue } = useAuthorsSearchQuery(); const [privacyOption, setPrivacyOption] = useState(""); useEffect(() => { setQuickEditData({ author: docData?.author, title: docData.title.rendered, slug: docData.slug, comment_status: docData.comment_status, status: docData.status, date: docData?.date, password: docData?.password, }); setCurrentDocUser({ value: docData.author, label: docData.author_info.name, }); if (docData.status == "private") { setPrivacyOption("private"); } else if (docData?.content?.protected) { setPrivacyOption("password"); } else { setPrivacyOption("none"); } }, [docData]); const authorOptions = docData?.author_list?.map((author) => ({ value: author.ID, label: author.display_name, })); const statusOptions = [ { value: "publish", label: __("Published", "betterdocs") }, { value: "pending", label: __("Pending review", "betterdocs") }, { value: "draft", label: __("Draft", "betterdocs") }, ]; return (