From 273cb24a4737d4e9113816e893235321958a6026 Mon Sep 17 00:00:00 2001 From: sasha-astiadi Date: Tue, 16 Sep 2025 14:24:25 +0200 Subject: [PATCH] add --- public/images/logomark.png | Bin 0 -> 4813 bytes public/images/logomark.svg | 14 +++++++ src/components/Button.tsx | 5 ++- src/components/CallToAction.tsx | 6 +-- src/components/GetStarted.tsx | 4 +- src/components/GridStats.tsx | 2 +- src/components/Header.tsx | 2 +- src/components/Logo.tsx | 66 +++++++++++++++----------------- src/components/UseCases.tsx | 2 +- src/components/ui/Button.tsx | 59 ---------------------------- 10 files changed, 55 insertions(+), 105 deletions(-) create mode 100644 public/images/logomark.png create mode 100644 public/images/logomark.svg delete mode 100644 src/components/ui/Button.tsx diff --git a/public/images/logomark.png b/public/images/logomark.png new file mode 100644 index 0000000000000000000000000000000000000000..39b84076c11c0ca8b9b28e3a8d9d6963412f791b GIT binary patch literal 4813 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 + + + + + + + + + + + + + diff --git a/src/components/Button.tsx b/src/components/Button.tsx index 30c4aaf..7e2279c 100644 --- a/src/components/Button.tsx +++ b/src/components/Button.tsx @@ -5,7 +5,7 @@ const baseStyles = { solid: 'inline-flex justify-center rounded-lg py-2 px-3 text-sm font-semibold transition-colors', outline: - 'inline-flex justify-center rounded-lg border py-[calc(--spacing(2)-1px)] px-[calc(--spacing(3)-1px)] text-sm transition-colors', + 'inline-flex justify-center rounded-lg border py-[calc(theme(spacing.2)-1px)] px-[calc(theme(spacing.3)-1px)] text-sm transition-colors', } const variantStyles = { @@ -16,7 +16,8 @@ const variantStyles = { gray: 'bg-gray-800 text-white hover:bg-gray-900 active:bg-gray-800 active:text-white/80', }, outline: { - gray: 'border-gray-300 text-gray-200 hover:border-gray-400 active:bg-gray-100 active:text-white', + gray: 'border-gray-300 text-gray-700 hover:border-gray-400 active:bg-gray-100 active:text-gray-700/80', + white: 'border-gray-300 text-white hover:border-gray-400 active:bg-gray-100 active:text-white/80', }, } diff --git a/src/components/CallToAction.tsx b/src/components/CallToAction.tsx index 09d0152..8b106f5 100644 --- a/src/components/CallToAction.tsx +++ b/src/components/CallToAction.tsx @@ -17,7 +17,7 @@ export function CallToAction() { > -
+
@@ -31,10 +31,10 @@ export function CallToAction() { build your own. Ready to own your intelligence?

- -
diff --git a/src/components/GetStarted.tsx b/src/components/GetStarted.tsx index cf1d8b0..0aaa533 100644 --- a/src/components/GetStarted.tsx +++ b/src/components/GetStarted.tsx @@ -1,7 +1,7 @@ "use client"; import { H2, P, CP } from "@/components/Texts"; -import { Button } from "@/components/ui/Button"; +import { Button } from "@/components/Button"; export function GetStarted() { const items = [ @@ -58,7 +58,7 @@ export function GetStarted() { {/* Title + Button Row */}

{item.title}

-
diff --git a/src/components/GridStats.tsx b/src/components/GridStats.tsx index 30f52a0..94e710f 100644 --- a/src/components/GridStats.tsx +++ b/src/components/GridStats.tsx @@ -27,7 +27,7 @@ export function GridStats() {

Mycelium's groundbreaking technology provides dedicated, performance-validated GPUs for your AI workloads.

- + diff --git a/src/components/Header.tsx b/src/components/Header.tsx index ffed19e..2791276 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -122,7 +122,7 @@ export function Header() { FAQs
- diff --git a/src/components/Logo.tsx b/src/components/Logo.tsx index e301179..bc21b60 100644 --- a/src/components/Logo.tsx +++ b/src/components/Logo.tsx @@ -3,44 +3,38 @@ export function Logomark(props: React.ComponentPropsWithoutRef<'svg'>) { - - - - - - - - - - - - - - - - - + + + + + + + + + + + ) } diff --git a/src/components/UseCases.tsx b/src/components/UseCases.tsx index 5f45107..6d72e30 100644 --- a/src/components/UseCases.tsx +++ b/src/components/UseCases.tsx @@ -93,7 +93,7 @@ function Review({ {...props} >
- {React.createElement(getReviewIcon(title), { className: "h-6 w-6 text-[#2F3178] mb-2" })} + {React.createElement(getReviewIcon(title), { className: "h-6 w-6 text-white mb-2" })} {title} diff --git a/src/components/ui/Button.tsx b/src/components/ui/Button.tsx deleted file mode 100644 index 9817766..0000000 --- a/src/components/ui/Button.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import Link from 'next/link' -import clsx from 'clsx' - -const baseStyles = { - solid: - 'inline-flex justify-center rounded-lg py-2 px-3 text-sm font-semibold transition-colors', - outline: - 'inline-flex justify-center rounded-lg border py-[calc(theme(spacing.2)-1px)] px-[calc(theme(spacing.3)-1px)] text-sm transition-colors', -} - -const variantStyles = { - solid: { - primary: 'bg-[#005eff] text-white hover:bg-[#005eff]/90 active:bg-[#005eff]/80', - white: 'bg-white text-black hover:bg-white/90 active:bg-white/90 active:text-gray-400', - gray: 'bg-gray-800 text-white hover:bg-gray-900 active:bg-gray-800 active:text-white/80', - }, - outline: { - primary: 'border-[#005eff] text-[#005eff] hover:border-[#005eff]/80 hover:text-[#005eff]/80 active:bg-gray-100 active:text-[#005eff]/70', - gray: 'border-gray-300 text-gray-700 hover:border-gray-400 active:bg-gray-100 active:text-gray-700/80', - }, -} - -type ButtonProps = ( - | { variant?: 'solid'; color?: keyof typeof variantStyles.solid } - | { variant: 'outline'; color?: keyof typeof variantStyles.outline } - ) & ( - | Omit, 'color'> - | (Omit, 'color'> & { - href?: undefined - }) - ) - -export function Button({ className, ...props }: ButtonProps) { - props.variant ??= 'solid' - if (props.variant === 'solid') { - props.color ??= 'primary' - } else { - props.color ??= 'gray' - } - - let variantClass: string | undefined; - if (props.variant === 'outline') { - variantClass = variantStyles.outline[props.color as keyof typeof variantStyles.outline]; - } else if (props.variant === 'solid') { - variantClass = variantStyles.solid[props.color as keyof typeof variantStyles.solid]; - } - - className = clsx( - baseStyles[props.variant], - variantClass, - className, - ) - - return typeof props.href === 'undefined' ? ( -