Files
custum-hyprpanel/globals/notification.ts

38 lines
1.1 KiB
TypeScript

import icons from "modules/icons/index";
import { Notification } from "types/service/notifications";
export const removingNotifications = Variable<boolean>(false);
export const getNotificationIcon = (app_name: string, app_icon: string, app_entry: string) => {
let icon: string = icons.fallback.notification;
if (Utils.lookUpIcon(app_name) || Utils.lookUpIcon(app_name.toLowerCase() || "")) {
icon = Utils.lookUpIcon(app_name)
? app_name
: Utils.lookUpIcon(app_name.toLowerCase())
? app_name.toLowerCase()
: "";
}
if (Utils.lookUpIcon(app_icon) && icon === "") {
icon = app_icon;
}
if (Utils.lookUpIcon(app_entry || "") && icon === "") {
icon = app_entry || "";
}
return icon;
};
export const closeNotifications = async (notifications: Notification[]) => {
removingNotifications.value = true;
for (const notif of notifications) {
notif.close();
await new Promise(resolve => setTimeout(resolve, 100));
}
removingNotifications.value = false;
}
globalThis["removingNotifications"] = removingNotifications;