From e9eba2e2914e6c9aa01dd3d6267c969bcba3bb2f Mon Sep 17 00:00:00 2001 From: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> Date: Wed, 2 Apr 2025 15:06:27 +1100 Subject: cleanup: remove popdown stuff Popdowns were replaced with the sidebar --- src/modules/popdowns/updates.tsx | 145 --------------------------------------- 1 file changed, 145 deletions(-) delete mode 100644 src/modules/popdowns/updates.tsx (limited to 'src/modules/popdowns/updates.tsx') diff --git a/src/modules/popdowns/updates.tsx b/src/modules/popdowns/updates.tsx deleted file mode 100644 index 4cb95e7..0000000 --- a/src/modules/popdowns/updates.tsx +++ /dev/null @@ -1,145 +0,0 @@ -import Palette from "@/services/palette"; -import Updates, { Repo as IRepo, Update as IUpdate } from "@/services/updates"; -import { MenuItem } from "@/utils/widgets"; -import PopdownWindow from "@/widgets/popdownwindow"; -import { bind, execAsync, GLib, Variable } from "astal"; -import { App, Astal, Gtk } from "astal/gtk3"; - -const constructItem = (label: string, exec: string, quiet = true) => - new MenuItem({ - label, - onActivate() { - App.get_window("updates")?.hide(); - execAsync(exec).catch(e => !quiet && console.error(e)); - }, - }); - -const Update = (update: IUpdate) => { - const menu = new Gtk.Menu(); - menu.append(constructItem("Open info in browser", `xdg-open '${update.url}'`, false)); - menu.append(constructItem("Open info in terminal", `uwsm app -- foot -H pacman -Qi ${update.name}`)); - menu.append(new Gtk.SeparatorMenuItem({ visible: true })); - menu.append(constructItem("Reinstall", `uwsm app -T -- yay -S ${update.name}`)); - menu.append(constructItem("Remove with dependencies", `uwsm app -T -- yay -Rns ${update.name}`)); - - return ( - - ); -}; - -const Repo = ({ repo, first }: { repo: IRepo; first?: boolean }) => { - const expanded = Variable(first); - - return ( - - - - - {repo.updates.map(Update)} - - - - ); -}; - -const News = ({ news }: { news: string }) => { - const expanded = Variable(true); - - news = news - .replace(/^([0-9]{4}-[0-9]{2}-[0-9]{2} .+)$/gm, "$1") // Make titles bold - .replaceAll("\n\x1b[0m\n", "\n\n") // Remove unopened \x1b[0m after each piece of news - .slice(0, -5) // Remove last unopened \x1b[0m - .replaceAll("\x1b[0m", ""); // Replace reset code with end span - - return ( - - - - - - ); -}; - -const List = () => ( - - {bind(Updates.get_default(), "updateData").as(d => - d.news - ? [, ...d.repos.map(r => )] - : d.repos.map((r, i) => ) - )} - -); - -export default () => ( - - execAsync("uwsm app -T -- yay") - .then(() => Updates.get_default().getUpdates()) - // Ignore errors - .catch(() => {}), - }, - { - label: bind(Updates.get_default(), "loading").as(l => (l ? "Loading" : "Reload")), - onClicked: () => Updates.get_default().getUpdates(), - enabled: bind(Updates.get_default(), "loading"), - }, - ]} - emptyIcon="deployed_code_history" - emptyLabel="All packages up to date!" - list={} - /> -); -- cgit v1.2.3-freya