From 069de014e7b0159d0ea70e509e0911b8437baa3c Mon Sep 17 00:00:00 2001 From: Joaquin Terrasa Date: Sun, 3 May 2026 18:54:12 +0200 Subject: [PATCH 01/46] chore(ui): install shadcn popover, progress, and textarea components --- apps/web/src/shared/components/ui/popover.tsx | 87 +++++++++++++++++++ .../web/src/shared/components/ui/progress.tsx | 31 +++++++ .../web/src/shared/components/ui/textarea.tsx | 18 ++++ 3 files changed, 136 insertions(+) create mode 100644 apps/web/src/shared/components/ui/popover.tsx create mode 100644 apps/web/src/shared/components/ui/progress.tsx create mode 100644 apps/web/src/shared/components/ui/textarea.tsx diff --git a/apps/web/src/shared/components/ui/popover.tsx b/apps/web/src/shared/components/ui/popover.tsx new file mode 100644 index 00000000..319ca6b5 --- /dev/null +++ b/apps/web/src/shared/components/ui/popover.tsx @@ -0,0 +1,87 @@ +import * as React from "react" +import { Popover as PopoverPrimitive } from "radix-ui" + +import { cn } from "#/lib/utils" + +function Popover({ + ...props +}: React.ComponentProps) { + return +} + +function PopoverTrigger({ + ...props +}: React.ComponentProps) { + return +} + +function PopoverContent({ + className, + align = "center", + sideOffset = 4, + ...props +}: React.ComponentProps) { + return ( + + + + ) +} + +function PopoverAnchor({ + ...props +}: React.ComponentProps) { + return +} + +function PopoverHeader({ className, ...props }: React.ComponentProps<"div">) { + return ( +
+ ) +} + +function PopoverTitle({ className, ...props }: React.ComponentProps<"h2">) { + return ( +
+ ) +} + +function PopoverDescription({ + className, + ...props +}: React.ComponentProps<"p">) { + return ( +

+ ) +} + +export { + Popover, + PopoverTrigger, + PopoverContent, + PopoverAnchor, + PopoverHeader, + PopoverTitle, + PopoverDescription, +} diff --git a/apps/web/src/shared/components/ui/progress.tsx b/apps/web/src/shared/components/ui/progress.tsx new file mode 100644 index 00000000..9f58a139 --- /dev/null +++ b/apps/web/src/shared/components/ui/progress.tsx @@ -0,0 +1,31 @@ +"use client" + +import * as React from "react" +import { Progress as ProgressPrimitive } from "radix-ui" + +import { cn } from "#/lib/utils" + +function Progress({ + className, + value, + ...props +}: React.ComponentProps) { + return ( + + + + ) +} + +export { Progress } diff --git a/apps/web/src/shared/components/ui/textarea.tsx b/apps/web/src/shared/components/ui/textarea.tsx new file mode 100644 index 00000000..47591225 --- /dev/null +++ b/apps/web/src/shared/components/ui/textarea.tsx @@ -0,0 +1,18 @@ +import * as React from "react" + +import { cn } from "#/lib/utils" + +function Textarea({ className, ...props }: React.ComponentProps<"textarea">) { + return ( +