// retoor import { Http } from "./Http.js"; class AdminNotificationDefaults { constructor() { this.root = document.querySelector("[data-admin-notif]"); if (!this.root) return; this.root .querySelectorAll("[data-notif-toggle]") .forEach((input) => this.bind(input)); } bind(input) { input.addEventListener("change", async () => { const desired = input.checked; input.disabled = true; try { await Http.send("/admin/notifications", { notification_type: input.dataset.type, channel: input.dataset.channel, value: desired ? "true" : "false", }); this.flash(desired ? "Default enabled" : "Default disabled", "success"); } catch (error) { input.checked = !desired; this.flash("Could not save default", "error"); } finally { input.disabled = false; } }); } flash(message, type) { if (window.app && window.app.toast) { window.app.toast.show(message, { type }); } } } window.AdminNotificationDefaults = AdminNotificationDefaults; export { AdminNotificationDefaults };