From d51169f6411b68a226d76d2d39826904de484929 Mon Sep 17 00:00:00 2001
From: Ariel Costas Guerrero <ariel@costas.dev>
Date: Wed, 19 Nov 2025 15:04:55 +0100
Subject: feat: Add About and Favourites pages, update routing and context
 management

- Added new routes for About and Favourites pages.
- Implemented About page with version information and credits.
- Created Favourites page with a placeholder message for empty favourites.
- Refactored RegionConfig import paths for consistency.
- Introduced PageTitleContext to manage page titles dynamically.
- Updated various components to utilize the new context for setting page titles.
- Enhanced AppShell layout with a responsive Drawer for navigation.
- Added CSS styles for new components and pages.
- Integrated commit hash display in the About page for version tracking.
---
 src/frontend/app/components/ui/Button.tsx | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)
 create mode 100644 src/frontend/app/components/ui/Button.tsx

(limited to 'src/frontend/app/components/ui/Button.tsx')

diff --git a/src/frontend/app/components/ui/Button.tsx b/src/frontend/app/components/ui/Button.tsx
new file mode 100644
index 0000000..18a15b2
--- /dev/null
+++ b/src/frontend/app/components/ui/Button.tsx
@@ -0,0 +1,25 @@
+import React from "react";
+import "./Button.css";
+
+interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
+  variant?: "primary" | "secondary" | "outline";
+  icon?: React.ReactNode;
+}
+
+export const Button: React.FC<ButtonProps> = ({
+  children,
+  variant = "primary",
+  icon,
+  className = "",
+  ...props
+}) => {
+  return (
+    <button
+      className={`ui-button ui-button--${variant} ${className}`}
+      {...props}
+    >
+      {icon && <span className="ui-button__icon">{icon}</span>}
+      {children}
+    </button>
+  );
+};
-- 
cgit v1.3

