// This runs in the browser // deno-lint-ignore-file no-window import type { FeedbackSubmission } from "./types.ts"; let lastFeedbackItemId: string | null = null; const feedbackYes = document.getElementById("feedback-yes"); const feedbackNo = document.getElementById("feedback-no"); const feedbackForm = document.getElementById("feedback-form"); const feedbackSection = document.getElementById("feedback-section"); feedbackYes?.addEventListener("click", () => { sendFeedback({ sentiment: "yes", }); }); feedbackNo?.addEventListener("click", () => { sendFeedback({ sentiment: "no", }); }); feedbackForm?.addEventListener("submit", (event) => { event.preventDefault(); const formData = new FormData(feedbackForm as HTMLFormElement); const form = Object.fromEntries(formData.entries()); sendFeedback({ sentiment: form["feedback-vote"] as "yes" | "no", comment: form["feedback-comment"] as string, contact: form["feedback-contact"] as string, }); if (feedbackSection) { feedbackSection.innerHTML = "
Thank you for helping make the Deno docs awesome!
"; } }); async function sendFeedback(feedback: Partial