mirror of
https://github.com/luxfi/explore.git
synced 2026-09-24 00:28:18 +00:00
65 lines
1.1 KiB
TypeScript
65 lines
1.1 KiB
TypeScript
import type { Size, ChakraStylesConfig } from 'chakra-react-select';
|
|
|
|
import type { Option } from './types';
|
|
|
|
function getValueContainerStyles(size?: Size) {
|
|
switch (size) {
|
|
case 'sm':
|
|
case 'md': {
|
|
return {
|
|
paddingLeft: 4,
|
|
};
|
|
}
|
|
case 'lg': {
|
|
return {
|
|
paddingLeft: 6,
|
|
};
|
|
}
|
|
default: {
|
|
return {};
|
|
}
|
|
}
|
|
}
|
|
|
|
function getSingleValueStyles(size?: Size) {
|
|
switch (size) {
|
|
case 'sm':
|
|
case 'md': {
|
|
return {
|
|
top: '26px',
|
|
};
|
|
}
|
|
case 'lg': {
|
|
return {
|
|
top: '38px',
|
|
};
|
|
}
|
|
default: {
|
|
return {};
|
|
}
|
|
}
|
|
}
|
|
|
|
const chakraStyles: ChakraStylesConfig<Option> = {
|
|
// control: (provided) => ({
|
|
// ...provided,
|
|
// }),
|
|
inputContainer: (provided) => ({
|
|
...provided,
|
|
py: 0,
|
|
mx: 0,
|
|
}),
|
|
valueContainer: (provided, state) => ({
|
|
...provided,
|
|
...getValueContainerStyles(state.selectProps.size),
|
|
}),
|
|
singleValue: (provided, state) => ({
|
|
...provided,
|
|
mx: 0,
|
|
transform: 'none',
|
|
...getSingleValueStyles(state.selectProps.size),
|
|
}),
|
|
};
|
|
|
|
export { chakraStyles };
|