✨ Primary buttons working
This commit is contained in:
parent
acc8e97a7a
commit
ddc660ba2c
@ -4,11 +4,9 @@
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
border: 1px solid;
|
||||
gap: 12px;
|
||||
box-sizing: border-box;
|
||||
height: fit-content;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
background: transparent;
|
||||
font-style: normal;
|
||||
font-weight: 500;
|
||||
@ -22,59 +20,137 @@
|
||||
height: 18px;
|
||||
}
|
||||
|
||||
/**
|
||||
* Every possible variants
|
||||
*/
|
||||
|
||||
&[variant="primary"] {
|
||||
color: var(--color-generic-white);
|
||||
background-color: var(--color-primary-500);
|
||||
color: var(--color-primary-500);
|
||||
background: var(--color-primary-500);
|
||||
border-color: var(--color-primary-500);
|
||||
padding: 24px 48px;
|
||||
font-weight: 400;
|
||||
font-size: 18px;
|
||||
line-height: 22px;
|
||||
|
||||
&:hover {
|
||||
background: var(--color-primary-700);
|
||||
border-color: var(--color-primary-700);
|
||||
background-color: var(--color-primary-700);
|
||||
}
|
||||
|
||||
&:disabled {
|
||||
border-color: var(--color-primary-500-soft);
|
||||
background-color: var(--color-primary-500-soft);
|
||||
pointer-events: none;
|
||||
&:focus,
|
||||
&:active {
|
||||
background: var(--color-primary-800);
|
||||
border-color: var(--color-primary-800);
|
||||
}
|
||||
|
||||
&[styleType="outlined"] {
|
||||
color: var(--color-primary-500);
|
||||
border-color: var(--color-primary-500);
|
||||
|
||||
&:hover {
|
||||
background-color: var(--color-primary-50);
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&:active {
|
||||
background-color: var(--color-primary-100);
|
||||
color: var(--color-primary-700);
|
||||
border-color: var(--color-primary-700);
|
||||
}
|
||||
}
|
||||
|
||||
&[styleType="text"] {
|
||||
color: var(--color-primary-500);
|
||||
border-color: var(--color-primary-500);
|
||||
|
||||
&:hover {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
&:focus,
|
||||
&:active {
|
||||
background-color: transparent;
|
||||
color: var(--color-primary-800);
|
||||
border-color: var(--color-primary-800);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&[variant="secondary"] {
|
||||
color: var(--color-generic-white);
|
||||
background-color: var(--color-error-600);
|
||||
border-color: var(--color-error-600);
|
||||
padding: 24px 48px;
|
||||
font-weight: 400;
|
||||
font-size: 18px;
|
||||
line-height: 22px;
|
||||
|
||||
&:hover {
|
||||
border-color: var(--color-error-800);
|
||||
background-color: var(--color-error-800);
|
||||
}
|
||||
|
||||
&:disabled {
|
||||
border-color: var(--color-error-600-soft);
|
||||
background-color: var(--color-error-600-soft);
|
||||
pointer-events: none;
|
||||
}
|
||||
}
|
||||
|
||||
&[variant="line"] {
|
||||
color: var(--color-secondary-500);
|
||||
background-color: transparent;
|
||||
border-color: transparent;
|
||||
padding: 0;
|
||||
font-weight: 400;
|
||||
font-size: 18px;
|
||||
line-height: 22px;
|
||||
text-decoration-line: underline;
|
||||
background: var(--color-secondary-500);
|
||||
border-color: var(--color-secondary-500);
|
||||
}
|
||||
|
||||
&[variant="neutral"] {
|
||||
color: var(--color-neutral-500);
|
||||
background: var(--color-neutral-500);
|
||||
border-color: var(--color-neutral-500);
|
||||
}
|
||||
|
||||
&[variant="error"] {
|
||||
color: var(--color-error-600);
|
||||
background: var(--color-error-600);
|
||||
border-color: var(--color-error-600);
|
||||
}
|
||||
|
||||
&[variant="warning"] {
|
||||
color: var(--color-warning-600);
|
||||
background: var(--color-warning-600);
|
||||
border-color: var(--color-warning-600);
|
||||
}
|
||||
|
||||
&[variant="success"] {
|
||||
color: var(--color-success-600);
|
||||
background: var(--color-success-600);
|
||||
border-color: var(--color-success-600);
|
||||
}
|
||||
|
||||
&[variant="info"] {
|
||||
color: var(--color-info-700);
|
||||
background: var(--color-info-700);
|
||||
border-color: var(--color-info-700);
|
||||
}
|
||||
|
||||
/**
|
||||
* Every possible sizes
|
||||
*/
|
||||
|
||||
&[sizing="sm"] {
|
||||
padding: var(--spacing-0-5) var(--spacing-1-5);
|
||||
gap: var(--spacing-0-75);
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
&[sizing="md"] {
|
||||
padding: var(--spacing-1) var(--spacing-2);
|
||||
gap: var(--spacing-0-75);
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
&[sizing="lg"] {
|
||||
padding: var(--spacing-2) var(--spacing-3);
|
||||
gap: var(--spacing-1-5);
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
/**
|
||||
* Every possible style types
|
||||
*/
|
||||
&[styleType="contained"] {
|
||||
color: var(--color-generic-white);
|
||||
}
|
||||
|
||||
&[styleType="outlined"] {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
&[styleType="text"] {
|
||||
background: transparent;
|
||||
border: none;
|
||||
border-bottom: 1px solid;
|
||||
}
|
||||
|
||||
/**
|
||||
* Every possible states
|
||||
*/
|
||||
&[fullwidthattr="true"] {
|
||||
width: 100%;
|
||||
flex: 1;
|
||||
@ -87,4 +163,8 @@
|
||||
&[touppercase="false"] {
|
||||
text-transform: inherit;
|
||||
}
|
||||
|
||||
&[disabled="true"] {
|
||||
opacity: var(--opacity-disabled, 0.3);
|
||||
}
|
||||
}
|
||||
|
@ -45,7 +45,7 @@ type IProps = {
|
||||
export default function Button(props: IProps) {
|
||||
let {
|
||||
variant = EButtonVariant.PRIMARY,
|
||||
size = EButtonSize.MD,
|
||||
size = EButtonSize.LG,
|
||||
styleType = EButtonStyleType.CONTAINED,
|
||||
disabled = false,
|
||||
type = "button",
|
||||
@ -62,7 +62,7 @@ export default function Button(props: IProps) {
|
||||
const fullwidthattr = fullwidth.toString();
|
||||
const isloadingattr = isLoading.toString();
|
||||
|
||||
const attributes = { ...props, variant, disabled, type, isloadingattr, fullwidthattr, size, styleType };
|
||||
const attributes = { ...props, variant, disabled, type, isloadingattr, fullwidthattr, sizing: size, styleType };
|
||||
delete attributes.fullwidth;
|
||||
delete attributes.icon;
|
||||
delete attributes.iconstyle;
|
||||
|
Loading…
x
Reference in New Issue
Block a user