/* * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ #pragma once #include #include #include #include #include "katja/repository.hpp" namespace katja { class PackageListBase : public ftxui::ComponentBase { std::string title; const std::vector packages; std::optional selected; public: PackageListBase(const std::string& title, const std::vector& packages = {}); ftxui::Element OnRender() override; bool OnEvent(ftxui::Event event) override; }; ftxui::Component PackageList(const std::string& title, const std::vector& packages = {}); }