Files
LifeTrinket/src/Components/Buttons/SettingsButton.tsx
Viktor Rådberg 2eebdc130c use babel macros
2023-08-04 13:40:04 +02:00

48 lines
1.1 KiB
TypeScript

import styled, { css } from 'styled-components/macro';
import SettingsIcon from '../../Icons/SettingsIcon';
import { Rotation } from '../../Types/Player';
export const StyledSettingsButton = styled.button<{ rotation: number }>`
position: absolute;
flex-grow: 1;
border: none;
outline: none;
cursor: pointer;
top: 12vmin;
right: 1vmax;
background-color: transparent;
user-select: none;
-webkit-touch-callout: none;
-webkit-tap-highlight-color: transparent;
-moz-user-select: -moz-none;
-webkit-user-select: none;
-ms-user-select: none;
${(props) => {
if (
props.rotation === Rotation.Side ||
props.rotation === Rotation.SideFlipped
) {
return css`
right: auto;
top: 1vmax;
left: 12vmin;
`;
}
}}
`;
type SettingsButtonProps = {
onClick: () => void;
rotation: number;
};
const SettingsButton = ({ onClick, rotation }: SettingsButtonProps) => {
return (
<StyledSettingsButton onClick={onClick} rotation={rotation}>
<SettingsIcon size="5vmin" />
</StyledSettingsButton>
);
};
export default SettingsButton;