mirror of
https://github.com/luxfi/explore.git
synced 2026-09-24 00:28:18 +00:00
* update paddings on homepage * update styles for network menu * search input paddings updates * update action bar paddings * update sepolia preset * fix scroll to active tab * update padding for navigation menu * add comment * update screenshots * fix screenshots
120 lines
2.4 KiB
TypeScript
120 lines
2.4 KiB
TypeScript
import { inputAnatomy as parts } from '@chakra-ui/anatomy';
|
|
import { Input as InputComponent } from '@chakra-ui/react';
|
|
import {
|
|
createMultiStyleConfigHelpers,
|
|
defineStyle,
|
|
} from '@chakra-ui/styled-system';
|
|
import { mode } from '@chakra-ui/theme-tools';
|
|
|
|
const { definePartsStyle, defineMultiStyleConfig } =
|
|
createMultiStyleConfigHelpers(parts.keys);
|
|
|
|
import getDefaultTransitionProps from '../utils/getDefaultTransitionProps';
|
|
import getOutlinedFieldStyles from '../utils/getOutlinedFieldStyles';
|
|
|
|
const size = {
|
|
xs: defineStyle({
|
|
fontSize: 'md',
|
|
lineHeight: '24px',
|
|
px: '8px',
|
|
py: '4px',
|
|
h: '32px',
|
|
borderRadius: 'base',
|
|
}),
|
|
sm: defineStyle({
|
|
fontSize: 'md',
|
|
lineHeight: '24px',
|
|
px: '8px',
|
|
py: '12px',
|
|
h: '40px',
|
|
borderRadius: 'base',
|
|
}),
|
|
// TEMPORARY INPUT SIZE!!!
|
|
// soon we will migrate to the new size and get rid off this one
|
|
// lg -> 60
|
|
// md -> 48
|
|
// sm -> 40
|
|
// xs ->32
|
|
sm_md: defineStyle({
|
|
fontSize: 'md',
|
|
lineHeight: '24px',
|
|
px: '8px',
|
|
py: '12px',
|
|
h: '48px',
|
|
borderRadius: 'base',
|
|
}),
|
|
md: defineStyle({
|
|
fontSize: 'md',
|
|
lineHeight: '20px',
|
|
px: '20px',
|
|
py: '20px',
|
|
h: '60px',
|
|
borderRadius: 'base',
|
|
}),
|
|
lg: defineStyle({
|
|
fontSize: 'md',
|
|
lineHeight: '20px',
|
|
px: '24px',
|
|
py: '28px',
|
|
h: '80px',
|
|
borderRadius: 'base',
|
|
}),
|
|
};
|
|
|
|
const variantOutline = definePartsStyle((props) => {
|
|
const transitionProps = getDefaultTransitionProps();
|
|
|
|
return {
|
|
field: getOutlinedFieldStyles(props),
|
|
addon: {
|
|
border: '2px solid',
|
|
borderColor: 'transparent',
|
|
bg: mode('blackAlpha.100', 'whiteAlpha.200')(props),
|
|
color: mode('blackAlpha.800', 'whiteAlpha.800')(props),
|
|
...transitionProps,
|
|
},
|
|
};
|
|
});
|
|
|
|
const sizes = {
|
|
xs: definePartsStyle({
|
|
field: size.xs,
|
|
addon: size.xs,
|
|
}),
|
|
sm: definePartsStyle({
|
|
field: size.sm,
|
|
addon: size.sm,
|
|
}),
|
|
sm_md: definePartsStyle({
|
|
field: size.sm_md,
|
|
addon: size.sm_md,
|
|
}),
|
|
md: definePartsStyle({
|
|
field: size.md,
|
|
addon: size.md,
|
|
}),
|
|
lg: definePartsStyle({
|
|
field: size.lg,
|
|
addon: size.lg,
|
|
}),
|
|
};
|
|
|
|
const variants = {
|
|
outline: variantOutline,
|
|
};
|
|
|
|
const Input = defineMultiStyleConfig({
|
|
sizes,
|
|
variants,
|
|
defaultProps: {
|
|
size: 'md',
|
|
},
|
|
});
|
|
|
|
InputComponent.defaultProps = {
|
|
...InputComponent.defaultProps,
|
|
placeholder: ' ',
|
|
};
|
|
|
|
export default Input;
|