feat: Update Footer component styles and enhance link titles with icons for better UX
Some checks failed
Compile / compile-infrastructure-agent (push) Has been cancelled
MCP Server Test / test (push) Has been cancelled
ProbeIngest Test / test (push) Has been cancelled
Probe Test / test (push) Has been cancelled
Telemetry Test / test (push) Has been cancelled
Tests / test-app (push) Has been cancelled
Tests / test-home (push) Has been cancelled
Tests / test-worker (push) Has been cancelled
Compile / compile-accounts (push) Has been cancelled
Compile / compile-nginx (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Common Jobs / helm-lint (push) Has been cancelled
Build / docker-build-accounts (push) Has been cancelled
Build / docker-build-isolated-vm (push) Has been cancelled
Build / docker-build-home (push) Has been cancelled
Build / docker-build-worker (push) Has been cancelled
Build / docker-build-workflow (push) Has been cancelled
Build / docker-build-api-reference (push) Has been cancelled
Build / docker-build-docs (push) Has been cancelled
Build / docker-build-otel-collector (push) Has been cancelled
Build / docker-build-app (push) Has been cancelled
Build / docker-build-e2e (push) Has been cancelled
Build / docker-build-admin-dashboard (push) Has been cancelled
Build / docker-build-dashboard (push) Has been cancelled
Build / docker-build-probe (push) Has been cancelled
Build / docker-build-probe-ingest (push) Has been cancelled
Build / docker-build-server-monitor-ingest (push) Has been cancelled
Build / docker-build-telemetry (push) Has been cancelled
Build / docker-build-incoming-request-ingest (push) Has been cancelled
Build / docker-build-status-page (push) Has been cancelled
Build / docker-build-test-server (push) Has been cancelled
Build / docker-build-ai-agent (push) Has been cancelled
OpenAPI Spec Generation / generate-openapi-spec (push) Has been cancelled
Terraform Provider Generation / generate-terraform-provider (push) Has been cancelled
Common Jobs / js-lint (push) Has been cancelled
Compile / compile-isolated-vm (push) Has been cancelled
Compile / compile-common (push) Has been cancelled
Compile / compile-app (push) Has been cancelled
Compile / compile-home (push) Has been cancelled
Compile / compile-worker (push) Has been cancelled
Compile / compile-workflow (push) Has been cancelled
Compile / compile-api-reference (push) Has been cancelled
Compile / compile-docs-reference (push) Has been cancelled
Compile / compile-admin-dashboard (push) Has been cancelled
Compile / compile-dashboard (push) Has been cancelled
Compile / compile-e2e (push) Has been cancelled
Compile / compile-probe (push) Has been cancelled
Compile / compile-probe-ingest (push) Has been cancelled
Compile / compile-server-monitor-ingest (push) Has been cancelled
Compile / compile-telemetry (push) Has been cancelled
Compile / compile-incoming-request-ingest (push) Has been cancelled
Compile / compile-status-page (push) Has been cancelled
Compile / compile-test-server (push) Has been cancelled
Compile / compile-mcp (push) Has been cancelled
Compile / compile-ai-agent (push) Has been cancelled
AIAgent Test / test (push) Has been cancelled
Common Test / test (push) Has been cancelled
Incoming Request Ingest Test / test (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / generate-build-number (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / read-version (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / mcp-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / nginx-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / e2e-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / test-server-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / otel-collector-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / isolated-vm-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / home-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / status-page-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / test-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / probe-ingest-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / server-monitor-ingest-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / incoming-request-ingest-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / telemetry-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / probe-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / dashboard-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / admin-dashboard-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / app-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / api-reference-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / accounts-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / ai-agent-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / worker-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / workflow-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / docs-docker-image-deploy (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / publish-terraform-provider (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / test-helm-chart (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / test-e2e-test-saas (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / test-e2e-test-self-hosted (push) Has been cancelled
Push Test Images to Docker Hub and GitHub Container Registry / infrastructure-agent-deploy (push) Has been cancelled

This commit is contained in:
Nawaz Dhandala 2025-12-26 22:17:21 +00:00
parent 77a922b27e
commit c8df86011c
No known key found for this signature in database
GPG key ID: 96C5DCA24769DBCA
2 changed files with 41 additions and 11 deletions

View file

@ -24,12 +24,14 @@ const Footer: FunctionComponent<ComponentProps> = (
return (
<React.Fragment>
<footer
className={props.className || "bg-white min-h-16"}
className={
props.className || "bg-gray-50/50 border-t border-gray-100 min-h-16"
}
style={props.style}
>
<div className="mx-auto w-full py-5 px-6 md:flex md:items-center md:justify-between lg:px-0">
<div className="mx-auto w-full py-6 px-6 md:flex md:items-center md:justify-between lg:px-8">
{/* Mobile: Stack links vertically, Desktop: Horizontal layout */}
<div className="flex flex-col space-y-3 md:flex-row md:justify-center md:space-y-0 md:space-x-6 md:order-2">
<div className="flex flex-col space-y-3 md:flex-row md:justify-center md:items-center md:space-y-0 md:space-x-8 md:order-2">
{props.links &&
props.links.length > 0 &&
props.links.map((link: FooterLink, i: number) => {
@ -37,7 +39,7 @@ const Footer: FunctionComponent<ComponentProps> = (
return (
<div
key={i}
className="text-gray-400 hover:text-gray-500 text-center md:text-left"
className="text-gray-500 text-sm text-center md:text-left transition-colors duration-200"
>
{link.content}
</div>
@ -51,7 +53,7 @@ const Footer: FunctionComponent<ComponentProps> = (
return (
<UILink
key={i}
className="text-gray-400 hover:text-gray-500 text-center md:text-left"
className="text-gray-500 hover:text-gray-700 text-sm font-medium text-center md:text-left transition-colors duration-200"
to={link.to}
openInNewTab={link.openInNewTab}
onClick={link.onClick}
@ -62,9 +64,9 @@ const Footer: FunctionComponent<ComponentProps> = (
})}
</div>
{/* Copyright: Show on mobile, hide on larger screens unless specified */}
<div className="mt-4 md:order-1 md:mt-0 block md:hidden lg:block">
<div className="mt-5 md:order-1 md:mt-0 block md:hidden lg:block">
{props.copyright && (
<p className="text-center text-base text-gray-400">
<p className="text-center text-sm text-gray-400">
&copy; {props.copyright}
</p>
)}

View file

@ -4,8 +4,10 @@ import Dictionary from "Common/Types/Dictionary";
import BadDataException from "Common/Types/Exception/BadDataException";
import { PromiseVoidFunction } from "Common/Types/FunctionTypes";
import { JSONObject } from "Common/Types/JSON";
import IconProp from "Common/Types/Icon/IconProp";
import API from "Common/Utils/API";
import Footer from "Common/UI/Components/Footer/Footer";
import Icon from "Common/UI/Components/Icon/Icon";
import ConfirmModal from "Common/UI/Components/Modal/ConfirmModal";
import EditionLabel from "Common/UI/Components/EditionLabel/EditionLabel";
import { HOST, HTTP_PROTOCOL } from "Common/UI/Config";
@ -68,22 +70,48 @@ const DashboardFooter: () => JSX.Element = () => {
return (
<>
<Footer
className="bg-white px-8"
className="bg-gray-50/50 border-t border-gray-100 px-8"
copyright="HackerBay, Inc."
links={[
{
content: <EditionLabel />,
},
{
title: "Help and Support",
title: (
<span className="inline-flex items-center gap-1.5 text-gray-400 hover:text-gray-500">
<Icon
icon={IconProp.Help}
className="h-3.5 w-3.5"
/>
Help and Support
</span>
),
to: URL.fromString("https://oneuptime.com/support"),
openInNewTab: true,
},
{
title: "Legal",
title: (
<span className="inline-flex items-center gap-1.5 text-gray-400 hover:text-gray-500">
<Icon
icon={IconProp.ShieldCheck}
className="h-3.5 w-3.5"
/>
Legal
</span>
),
to: URL.fromString("https://oneuptime.com/legal"),
openInNewTab: true,
},
{
title: "Version",
title: (
<span className="inline-flex items-center gap-1.5 text-gray-400 hover:text-gray-500">
<Icon
icon={IconProp.Info}
className="h-3.5 w-3.5"
/>
Version
</span>
),
onClick: async () => {
setShowAboutModal(true);
await fetchVersions();