Files
NapCatQQ/.pnpm-store/v3/files/ab/faeb60351aaafb7837bcf418539a503ee0790bcb78737754d2ab99b4907af27808d5d142043107140d10ab18d8c4c13b034e7af39902406a66479eface75f9
T
TanTan e311ca3275
Build NapCat Artifacts / Type Check & Test (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

486 lines
8.7 KiB
Plaintext

import {
colorVariants
} from "./chunk-GQT3YUX3.mjs";
import {
tv
} from "./chunk-UWE6H66T.mjs";
import {
ringClasses
} from "./chunk-GH5E4FQB.mjs";
// src/components/chip.ts
var chip = tv({
slots: {
base: [
"relative",
"max-w-fit",
"min-w-min",
"inline-flex",
"items-center",
"justify-between",
"box-border",
"whitespace-nowrap"
],
content: "flex-1 text-inherit font-normal",
dot: ["w-2", "h-2", "ml-1", "rounded-full"],
avatar: "flex-shrink-0",
closeButton: [
"z-10",
"appearance-none",
"outline-none",
"select-none",
"transition-opacity",
"opacity-70",
"hover:opacity-100",
"cursor-pointer",
"active:opacity-disabled",
"tap-highlight-transparent"
]
},
variants: {
variant: {
solid: {},
bordered: {
base: "border-medium bg-transparent"
},
light: {
base: "bg-transparent"
},
flat: {},
faded: {
base: "border-medium"
},
shadow: {},
dot: {
base: "border-medium border-default text-foreground bg-transparent"
}
},
color: {
default: {
dot: "bg-default-400"
},
primary: {
dot: "bg-primary"
},
secondary: {
dot: "bg-secondary"
},
success: {
dot: "bg-success"
},
warning: {
dot: "bg-warning"
},
danger: {
dot: "bg-danger"
}
},
size: {
sm: {
base: "px-1 h-6 text-tiny",
content: "px-1",
closeButton: "text-medium",
avatar: "w-4 h-4"
},
md: {
base: "px-1 h-7 text-small",
content: "px-2",
closeButton: "text-large",
avatar: "w-5 h-5"
},
lg: {
base: "px-2 h-8 text-medium",
content: "px-2",
closeButton: "text-xl",
avatar: "w-6 h-6"
}
},
radius: {
none: {
base: "rounded-none"
},
sm: {
base: "rounded-small"
},
md: {
base: "rounded-medium"
},
lg: {
base: "rounded-large"
},
full: {
base: "rounded-full"
}
},
isOneChar: {
true: {},
false: {}
},
isCloseable: {
true: {},
false: {}
},
hasStartContent: {
true: {}
},
hasEndContent: {
true: {}
},
isDisabled: {
true: { base: "opacity-disabled pointer-events-none" }
},
isCloseButtonFocusVisible: {
true: {
closeButton: [...ringClasses, "ring-1", "rounded-full"]
}
}
},
defaultVariants: {
variant: "solid",
color: "default",
size: "md",
radius: "full",
isDisabled: false
},
compoundVariants: [
{
variant: "solid",
color: "default",
class: {
base: colorVariants.solid.default
}
},
{
variant: "solid",
color: "primary",
class: {
base: colorVariants.solid.primary
}
},
{
variant: "solid",
color: "secondary",
class: {
base: colorVariants.solid.secondary
}
},
{
variant: "solid",
color: "success",
class: {
base: colorVariants.solid.success
}
},
{
variant: "solid",
color: "warning",
class: {
base: colorVariants.solid.warning
}
},
{
variant: "solid",
color: "danger",
class: {
base: colorVariants.solid.danger
}
},
{
variant: "shadow",
color: "default",
class: {
base: colorVariants.shadow.default
}
},
{
variant: "shadow",
color: "primary",
class: {
base: colorVariants.shadow.primary
}
},
{
variant: "shadow",
color: "secondary",
class: {
base: colorVariants.shadow.secondary
}
},
{
variant: "shadow",
color: "success",
class: {
base: colorVariants.shadow.success
}
},
{
variant: "shadow",
color: "warning",
class: {
base: colorVariants.shadow.warning
}
},
{
variant: "shadow",
color: "danger",
class: {
base: colorVariants.shadow.danger
}
},
{
variant: "bordered",
color: "default",
class: {
base: colorVariants.bordered.default
}
},
{
variant: "bordered",
color: "primary",
class: {
base: colorVariants.bordered.primary
}
},
{
variant: "bordered",
color: "secondary",
class: {
base: colorVariants.bordered.secondary
}
},
{
variant: "bordered",
color: "success",
class: {
base: colorVariants.bordered.success
}
},
{
variant: "bordered",
color: "warning",
class: {
base: colorVariants.bordered.warning
}
},
{
variant: "bordered",
color: "danger",
class: {
base: colorVariants.bordered.danger
}
},
{
variant: "flat",
color: "default",
class: {
base: colorVariants.flat.default
}
},
{
variant: "flat",
color: "primary",
class: {
base: colorVariants.flat.primary
}
},
{
variant: "flat",
color: "secondary",
class: {
base: colorVariants.flat.secondary
}
},
{
variant: "flat",
color: "success",
class: {
base: colorVariants.flat.success
}
},
{
variant: "flat",
color: "warning",
class: {
base: colorVariants.flat.warning
}
},
{
variant: "flat",
color: "danger",
class: {
base: colorVariants.flat.danger
}
},
{
variant: "faded",
color: "default",
class: {
base: colorVariants.faded.default
}
},
{
variant: "faded",
color: "primary",
class: {
base: colorVariants.faded.primary
}
},
{
variant: "faded",
color: "secondary",
class: {
base: colorVariants.faded.secondary
}
},
{
variant: "faded",
color: "success",
class: {
base: colorVariants.faded.success
}
},
{
variant: "faded",
color: "warning",
class: {
base: colorVariants.faded.warning
}
},
{
variant: "faded",
color: "danger",
class: {
base: colorVariants.faded.danger
}
},
{
variant: "light",
color: "default",
class: {
base: colorVariants.light.default
}
},
{
variant: "light",
color: "primary",
class: {
base: colorVariants.light.primary
}
},
{
variant: "light",
color: "secondary",
class: {
base: colorVariants.light.secondary
}
},
{
variant: "light",
color: "success",
class: {
base: colorVariants.light.success
}
},
{
variant: "light",
color: "warning",
class: {
base: colorVariants.light.warning
}
},
{
variant: "light",
color: "danger",
class: {
base: colorVariants.light.danger
}
},
{
isOneChar: true,
hasStartContent: false,
hasEndContent: false,
size: "sm",
class: {
base: "w-5 h-5 min-w-5 min-h-5"
}
},
{
isOneChar: true,
hasStartContent: false,
hasEndContent: false,
size: "md",
class: {
base: "w-6 h-6 min-w-6 min-h-6"
}
},
{
isOneChar: true,
hasStartContent: false,
hasEndContent: false,
size: "lg",
class: {
base: "w-7 h-7 min-w-7 min-h-7"
}
},
{
isOneChar: true,
isCloseable: false,
hasStartContent: false,
hasEndContent: false,
class: {
base: "px-0 justify-center",
content: "px-0 flex-none"
}
},
{
isOneChar: true,
isCloseable: true,
hasStartContent: false,
hasEndContent: false,
class: {
base: "w-auto"
}
},
{
isOneChar: true,
variant: "dot",
class: {
base: "w-auto h-7 px-1 items-center",
content: "px-2"
}
},
{
hasStartContent: true,
size: "sm",
class: {
content: "pl-0.5"
}
},
{
hasStartContent: true,
size: ["md", "lg"],
class: {
content: "pl-1"
}
},
{
hasEndContent: true,
size: "sm",
class: {
content: "pr-0.5"
}
},
{
hasEndContent: true,
size: ["md", "lg"],
class: {
content: "pr-1"
}
}
]
});
export {
chip
};