From 29a4de2997de71a6c54fd42bd3ca117142172803 Mon Sep 17 00:00:00 2001 From: michivonah Date: Sun, 27 Apr 2025 11:52:39 +0200 Subject: [PATCH] create news card --- public/example-image.jpg | Bin 0 -> 24946 bytes src/app/home/page.tsx | 17 +++++----- src/components/news-card.tsx | 27 ++++++++++++++++ src/components/ui/button.tsx | 59 +++++++++++++++++++++++++++++++++++ 4 files changed, 93 insertions(+), 10 deletions(-) create mode 100644 public/example-image.jpg create mode 100644 src/components/news-card.tsx create mode 100644 src/components/ui/button.tsx diff --git a/public/example-image.jpg b/public/example-image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3b2711bea2d6418724ff6fcfba302ed776af4565 GIT binary patch literal 24946 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 -
- - - News title - - -

Hello World!

-
-
+
+ + + + +
); diff --git a/src/components/news-card.tsx b/src/components/news-card.tsx new file mode 100644 index 0000000..ae6d44a --- /dev/null +++ b/src/components/news-card.tsx @@ -0,0 +1,27 @@ +import { Card, CardHeader, CardTitle, CardDescription, CardContent, CardFooter } from '@/components/ui/card'; +import Image from 'next/image'; +import { Button } from "@/components/ui/button"; + +export default function NewsCard(){ + return ( + + + News title + That's just some story + + + News article + + + + + + + ); +} \ No newline at end of file diff --git a/src/components/ui/button.tsx b/src/components/ui/button.tsx new file mode 100644 index 0000000..a2df8dc --- /dev/null +++ b/src/components/ui/button.tsx @@ -0,0 +1,59 @@ +import * as React from "react" +import { Slot } from "@radix-ui/react-slot" +import { cva, type VariantProps } from "class-variance-authority" + +import { cn } from "@/lib/utils" + +const buttonVariants = cva( + "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", + { + variants: { + variant: { + default: + "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90", + destructive: + "bg-destructive text-white shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60", + outline: + "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50", + secondary: + "bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80", + ghost: + "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50", + link: "text-primary underline-offset-4 hover:underline", + }, + size: { + default: "h-9 px-4 py-2 has-[>svg]:px-3", + sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5", + lg: "h-10 rounded-md px-6 has-[>svg]:px-4", + icon: "size-9", + }, + }, + defaultVariants: { + variant: "default", + size: "default", + }, + } +) + +function Button({ + className, + variant, + size, + asChild = false, + ...props +}: React.ComponentProps<"button"> & + VariantProps & { + asChild?: boolean + }) { + const Comp = asChild ? Slot : "button" + + return ( + + ) +} + +export { Button, buttonVariants }