mirror of
https://github.com/cinnyapp/cinny.git
synced 2025-11-13 18:50:29 +03:00
add radii variant to sequence card component
This commit is contained in:
parent
4ce9323a95
commit
2555a5a704
2 changed files with 49 additions and 10 deletions
|
|
@ -9,12 +9,25 @@ export const SequenceCard = as<
|
||||||
ComponentProps<typeof Box> & ContainerColorVariants & css.SequenceCardVariants
|
ComponentProps<typeof Box> & ContainerColorVariants & css.SequenceCardVariants
|
||||||
>(
|
>(
|
||||||
(
|
(
|
||||||
{ as: AsSequenceCard = 'div', className, variant, firstChild, lastChild, outlined, ...props },
|
{
|
||||||
|
as: AsSequenceCard = 'div',
|
||||||
|
className,
|
||||||
|
variant,
|
||||||
|
radii,
|
||||||
|
firstChild,
|
||||||
|
lastChild,
|
||||||
|
outlined,
|
||||||
|
...props
|
||||||
|
},
|
||||||
ref
|
ref
|
||||||
) => (
|
) => (
|
||||||
<Box
|
<Box
|
||||||
as={AsSequenceCard}
|
as={AsSequenceCard}
|
||||||
className={classNames(css.SequenceCard({ outlined }), ContainerColor({ variant }), className)}
|
className={classNames(
|
||||||
|
css.SequenceCard({ radii, outlined }),
|
||||||
|
ContainerColor({ variant }),
|
||||||
|
className
|
||||||
|
)}
|
||||||
data-first-child={firstChild}
|
data-first-child={firstChild}
|
||||||
data-last-child={lastChild}
|
data-last-child={lastChild}
|
||||||
{...props}
|
{...props}
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ import { RecipeVariants, recipe } from '@vanilla-extract/recipes';
|
||||||
import { config } from 'folds';
|
import { config } from 'folds';
|
||||||
|
|
||||||
const outlinedWidth = createVar('0');
|
const outlinedWidth = createVar('0');
|
||||||
|
const radii = createVar(config.radii.R400);
|
||||||
export const SequenceCard = recipe({
|
export const SequenceCard = recipe({
|
||||||
base: {
|
base: {
|
||||||
vars: {
|
vars: {
|
||||||
|
|
@ -13,25 +14,25 @@ export const SequenceCard = recipe({
|
||||||
borderBottomWidth: 0,
|
borderBottomWidth: 0,
|
||||||
selectors: {
|
selectors: {
|
||||||
'&:first-child, :not(&) + &': {
|
'&:first-child, :not(&) + &': {
|
||||||
borderTopLeftRadius: config.radii.R400,
|
borderTopLeftRadius: [radii],
|
||||||
borderTopRightRadius: config.radii.R400,
|
borderTopRightRadius: [radii],
|
||||||
},
|
},
|
||||||
'&:last-child, &:not(:has(+&))': {
|
'&:last-child, &:not(:has(+&))': {
|
||||||
borderBottomLeftRadius: config.radii.R400,
|
borderBottomLeftRadius: [radii],
|
||||||
borderBottomRightRadius: config.radii.R400,
|
borderBottomRightRadius: [radii],
|
||||||
borderBottomWidth: outlinedWidth,
|
borderBottomWidth: outlinedWidth,
|
||||||
},
|
},
|
||||||
[`&[data-first-child="true"]`]: {
|
[`&[data-first-child="true"]`]: {
|
||||||
borderTopLeftRadius: config.radii.R400,
|
borderTopLeftRadius: [radii],
|
||||||
borderTopRightRadius: config.radii.R400,
|
borderTopRightRadius: [radii],
|
||||||
},
|
},
|
||||||
[`&[data-first-child="false"]`]: {
|
[`&[data-first-child="false"]`]: {
|
||||||
borderTopLeftRadius: 0,
|
borderTopLeftRadius: 0,
|
||||||
borderTopRightRadius: 0,
|
borderTopRightRadius: 0,
|
||||||
},
|
},
|
||||||
[`&[data-last-child="true"]`]: {
|
[`&[data-last-child="true"]`]: {
|
||||||
borderBottomLeftRadius: config.radii.R400,
|
borderBottomLeftRadius: [radii],
|
||||||
borderBottomRightRadius: config.radii.R400,
|
borderBottomRightRadius: [radii],
|
||||||
},
|
},
|
||||||
[`&[data-last-child="false"]`]: {
|
[`&[data-last-child="false"]`]: {
|
||||||
borderBottomLeftRadius: 0,
|
borderBottomLeftRadius: 0,
|
||||||
|
|
@ -44,6 +45,28 @@ export const SequenceCard = recipe({
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
variants: {
|
variants: {
|
||||||
|
radii: {
|
||||||
|
'0': {
|
||||||
|
vars: {
|
||||||
|
[radii]: config.radii.R0,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'300': {
|
||||||
|
vars: {
|
||||||
|
[radii]: config.radii.R300,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'400': {
|
||||||
|
vars: {
|
||||||
|
[radii]: config.radii.R400,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'500': {
|
||||||
|
vars: {
|
||||||
|
[radii]: config.radii.R500,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
outlined: {
|
outlined: {
|
||||||
true: {
|
true: {
|
||||||
vars: {
|
vars: {
|
||||||
|
|
@ -52,5 +75,8 @@ export const SequenceCard = recipe({
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
defaultVariants: {
|
||||||
|
radii: '400',
|
||||||
|
},
|
||||||
});
|
});
|
||||||
export type SequenceCardVariants = RecipeVariants<typeof SequenceCard>;
|
export type SequenceCardVariants = RecipeVariants<typeof SequenceCard>;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue