slider: smarter step increments; disable clicking on track

This commit is contained in:
mantikoros 2022-09-08 23:55:33 -05:00
parent 987ebccdfd
commit eac56b1f4f
2 changed files with 28 additions and 4 deletions

View File

@ -122,6 +122,18 @@ export function BuyAmountInput(props: {
}
}
const parseRaw = (x: number) => {
if (x <= 100) return x
if (x <= 130) return 100 + (x - 100) * 5
return 250 + (x - 130) * 10
}
const getRaw = (x: number) => {
if (x <= 100) return x
if (x <= 250) return 100 + (x - 100) / 5
return 130 + (x - 250) / 10
}
return (
<>
<AmountInput
@ -138,10 +150,10 @@ export function BuyAmountInput(props: {
<input
type="range"
min="0"
max="200"
value={amount ?? 0}
onChange={(e) => onAmountChange(parseInt(e.target.value))}
className="range range-lg z-40 mb-2 xl:hidden"
max="205"
value={getRaw(amount ?? 0)}
onChange={(e) => onAmountChange(parseRaw(parseInt(e.target.value)))}
className="range range-lg only-thumb z-40 mb-2 xl:hidden"
step="5"
/>
)}

View File

@ -60,6 +60,18 @@ module.exports = {
'overflow-wrap': 'anywhere',
'word-break': 'break-word', // for Safari
},
'.only-thumb': {
'pointer-events': 'none',
'&::-webkit-slider-thumb': {
'pointer-events': 'auto !important',
},
'&::-moz-range-thumb': {
'pointer-events': 'auto !important',
},
'&::-ms-thumb': {
'pointer-events': 'auto !important',
},
},
})
}),
],