diff --git a/app/components/Button.tsx b/app/components/Button.tsx index 0ae06e6ab5..67eafce6b6 100644 --- a/app/components/Button.tsx +++ b/app/components/Button.tsx @@ -5,7 +5,7 @@ import { twMerge } from "tailwind-merge"; export interface ButtonPropsI extends React.ButtonHTMLAttributes { icon?: IconDefinition; - variant?: "primary" | "secondary"; + variant?: "primary" | "secondary" | "action"; } export const Button = ({ @@ -25,6 +25,9 @@ export const Button = ({ case "secondary": { return " bg-brand-secondary hover:bg-brand-secondary-900 text-white focus-visible:outline-brand-secondary"; } + case "action": { + return " bg-action hover:bg-action-500 text-white focus-visible:outline-action"; + } case "primary": default: { return " bg-brand-primary hover:bg-brand-primary-400 text-white focus-visible:outline-brand-primary-600"; diff --git a/app/components/Input.tsx b/app/components/Input.tsx index a8ce2232f9..2d5ebbfe6d 100644 --- a/app/components/Input.tsx +++ b/app/components/Input.tsx @@ -2,17 +2,23 @@ import { twMerge } from "tailwind-merge"; import { IconDefinition } from "@fortawesome/pro-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { Label } from "./Typography"; +import { kebabCase } from "~/utilities"; interface InputProps extends React.InputHTMLAttributes { label?: string; - className?: string; icon?: IconDefinition } -export function Input({label, icon, className, ...rest }: InputProps) { +export function Input({ + label, icon, className, id, ...rest +}: InputProps) { return (
- {label && } + {label && + + }
{icon && ( @@ -22,6 +28,7 @@ export function Input({label, icon, className, ...rest }: InputProps) { /> )} & { label?: string; @@ -22,8 +24,14 @@ export const Textarea = ({ }) => { return (
- {label && } + {label && + + } +