UNPKG

@nuxt/ui

Version:

A UI Library for Modern Web Apps, powered by Vue & Tailwind CSS.

255 lines (251 loc) 8.22 kB
const color = [ "primary", "secondary", "success", "info", "warning", "error", "neutral" ] as const const variant = [ "pill", "link" ] as const const orientation = [ "horizontal", "vertical" ] as const const size = [ "xs", "sm", "md", "lg", "xl" ] as const export default { "slots": { "root": "flex items-center gap-2", "list": "relative flex p-1 group", "indicator": "absolute transition-[translate,width] duration-200", "trigger": [ "group relative inline-flex items-center shrink-0 min-w-0 data-[state=inactive]:text-(--ui-text-muted) hover:data-[state=inactive]:not-disabled:text-(--ui-text) font-medium rounded-[calc(var(--ui-radius)*1.5)] disabled:cursor-not-allowed disabled:opacity-75", "transition-colors" ], "content": "focus:outline-none w-full", "leadingIcon": "shrink-0", "leadingAvatar": "shrink-0", "leadingAvatarSize": "", "label": "truncate" }, "variants": { "color": { "primary": "", "secondary": "", "success": "", "info": "", "warning": "", "error": "", "neutral": "" }, "variant": { "pill": { "list": "bg-(--ui-bg-elevated) rounded-[calc(var(--ui-radius)*2)]", "trigger": "flex-1 w-full", "indicator": "rounded-[calc(var(--ui-radius)*1.5)] shadow-xs" }, "link": { "list": "border-(--ui-border)", "indicator": "rounded-full" } }, "orientation": { "horizontal": { "root": "flex-col", "list": "w-full", "indicator": "left-0 w-(--reka-tabs-indicator-size) translate-x-(--reka-tabs-indicator-position)", "trigger": "justify-center" }, "vertical": { "list": "flex-col", "indicator": "top-0 h-(--reka-tabs-indicator-size) translate-y-(--reka-tabs-indicator-position)" } }, "size": { "xs": { "trigger": "px-2 py-1 text-xs gap-1", "leadingIcon": "size-4", "leadingAvatarSize": "3xs" }, "sm": { "trigger": "px-2.5 py-1.5 text-xs gap-1.5", "leadingIcon": "size-4", "leadingAvatarSize": "3xs" }, "md": { "trigger": "px-3 py-1.5 text-sm gap-1.5", "leadingIcon": "size-5", "leadingAvatarSize": "2xs" }, "lg": { "trigger": "px-3 py-2 text-sm gap-2", "leadingIcon": "size-5", "leadingAvatarSize": "2xs" }, "xl": { "trigger": "px-3 py-2 text-base gap-2", "leadingIcon": "size-6", "leadingAvatarSize": "xs" } } }, "compoundVariants": [ { "orientation": "horizontal" as typeof orientation[number], "variant": "pill" as typeof variant[number], "class": { "indicator": "inset-y-1" } }, { "orientation": "horizontal" as typeof orientation[number], "variant": "link" as typeof variant[number], "class": { "list": "border-b -mb-px", "indicator": "-bottom-px h-px" } }, { "orientation": "vertical" as typeof orientation[number], "variant": "pill" as typeof variant[number], "class": { "indicator": "inset-x-1", "list": "items-center" } }, { "orientation": "vertical" as typeof orientation[number], "variant": "link" as typeof variant[number], "class": { "list": "border-s -ms-px", "indicator": "-start-px w-px" } }, { "color": "primary" as typeof color[number], "variant": "pill" as typeof variant[number], "class": { "indicator": "bg-(--ui-primary)", "trigger": "data-[state=active]:text-(--ui-bg) focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--ui-primary)" } }, { "color": "secondary" as typeof color[number], "variant": "pill" as typeof variant[number], "class": { "indicator": "bg-(--ui-secondary)", "trigger": "data-[state=active]:text-(--ui-bg) focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--ui-secondary)" } }, { "color": "success" as typeof color[number], "variant": "pill" as typeof variant[number], "class": { "indicator": "bg-(--ui-success)", "trigger": "data-[state=active]:text-(--ui-bg) focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--ui-success)" } }, { "color": "info" as typeof color[number], "variant": "pill" as typeof variant[number], "class": { "indicator": "bg-(--ui-info)", "trigger": "data-[state=active]:text-(--ui-bg) focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--ui-info)" } }, { "color": "warning" as typeof color[number], "variant": "pill" as typeof variant[number], "class": { "indicator": "bg-(--ui-warning)", "trigger": "data-[state=active]:text-(--ui-bg) focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--ui-warning)" } }, { "color": "error" as typeof color[number], "variant": "pill" as typeof variant[number], "class": { "indicator": "bg-(--ui-error)", "trigger": "data-[state=active]:text-(--ui-bg) focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--ui-error)" } }, { "color": "neutral" as typeof color[number], "variant": "pill" as typeof variant[number], "class": { "indicator": "bg-(--ui-bg-inverted)", "trigger": "data-[state=active]:text-(--ui-bg) focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--ui-border-inverted)" } }, { "color": "primary" as typeof color[number], "variant": "link" as typeof variant[number], "class": { "indicator": "bg-(--ui-primary)", "trigger": "data-[state=active]:text-(--ui-primary) focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-(--ui-primary)" } }, { "color": "secondary" as typeof color[number], "variant": "link" as typeof variant[number], "class": { "indicator": "bg-(--ui-secondary)", "trigger": "data-[state=active]:text-(--ui-secondary) focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-(--ui-secondary)" } }, { "color": "success" as typeof color[number], "variant": "link" as typeof variant[number], "class": { "indicator": "bg-(--ui-success)", "trigger": "data-[state=active]:text-(--ui-success) focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-(--ui-success)" } }, { "color": "info" as typeof color[number], "variant": "link" as typeof variant[number], "class": { "indicator": "bg-(--ui-info)", "trigger": "data-[state=active]:text-(--ui-info) focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-(--ui-info)" } }, { "color": "warning" as typeof color[number], "variant": "link" as typeof variant[number], "class": { "indicator": "bg-(--ui-warning)", "trigger": "data-[state=active]:text-(--ui-warning) focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-(--ui-warning)" } }, { "color": "error" as typeof color[number], "variant": "link" as typeof variant[number], "class": { "indicator": "bg-(--ui-error)", "trigger": "data-[state=active]:text-(--ui-error) focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-(--ui-error)" } }, { "color": "neutral" as typeof color[number], "variant": "link" as typeof variant[number], "class": { "indicator": "bg-(--ui-bg-inverted)", "trigger": "data-[state=active]:text-(--ui-text-highlighted) focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-(--ui-border-inverted)" } } ], "defaultVariants": { "color": "primary" as typeof color[number], "variant": "pill" as typeof variant[number], "size": "md" as typeof size[number] } }