mirror of
https://github.com/hanzoai/bootnode.git
synced 2026-10-25 02:31:30 +00:00
Names the two halves for what they are. The repo already holds both (12407e9 merged bootnode/bootnode into this history); this makes the frontend directory say so, so the layout reads the way the owner describes the system: backend and frontend separate, one repo. git mv throughout — 187 renames, history preserved. Every path reference follows: hanzo.yml build context and dockerfile, compose.yml, compose.prod.yml, start.sh, LLM.md, infra/k8s/web-deployments.yaml, infra/cloud/deploy.sh, and the Dockerfile's own COPY paths. Image and container names (bootnode-web, the -web tag suffix) are deliberately NOT renamed here: those are a deploy contract the App CR and ingress bind to on port 3001, and breaking them is a separate, staged change. Console builds green after the move; the Go tree builds. Co-authored-by: Hanzo Dev <[email protected]>
39 lines
1.7 KiB
TypeScript
39 lines
1.7 KiB
TypeScript
import * as React from "react"
|
|
import { cva, type VariantProps } from "class-variance-authority"
|
|
import { cn } from "@/lib/utils"
|
|
|
|
// Badge == lux.cloud's `.pill`: a fully-round 12px label, medium weight, no
|
|
// shadow. The three status variants carry the leading dot lux.cloud gives
|
|
// `.pill.live` / `.pill.pending` — a colour alone is not a state readable by
|
|
// someone who cannot distinguish it, and the dot makes the tint deliberate
|
|
// rather than decorative.
|
|
const badgeVariants = cva(
|
|
"inline-flex items-center gap-1.5 rounded-full border px-2.5 py-0.5 text-xs font-medium transition-colors focus:outline-none focus:ring-1 focus:ring-ring",
|
|
{
|
|
variants: {
|
|
variant: {
|
|
default: "border-transparent bg-primary text-primary-foreground hover:bg-primary/90",
|
|
secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
outline: "border-border-strong text-foreground",
|
|
destructive:
|
|
"border-transparent bg-destructive/12 text-destructive before:size-1.5 before:rounded-full before:bg-current",
|
|
success:
|
|
"border-transparent bg-success/12 text-success before:size-1.5 before:rounded-full before:bg-current",
|
|
warning:
|
|
"border-transparent bg-warning/12 text-warning before:size-1.5 before:rounded-full before:bg-current",
|
|
},
|
|
},
|
|
defaultVariants: {
|
|
variant: "default",
|
|
},
|
|
}
|
|
)
|
|
|
|
export interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {}
|
|
|
|
function Badge({ className, variant, ...props }: BadgeProps) {
|
|
return <div className={cn(badgeVariants({ variant }), className)} {...props} />
|
|
}
|
|
|
|
export { Badge, badgeVariants }
|