Retrospring/app/javascript/legacy/util.coffee

24 lines
641 B
CoffeeScript
Raw Normal View History

import tinycolor from 'tinycolor2'
window.doppler = (percentage, value, relative = false) ->
while percentage >= 1
percentage /= 10
tc_color = tinycolor(value).toRgb()
color = [tc_color.r, tc_color.g, tc_color.b]
if relative
for _c, i in color
x = (255 - color[i]) * percentage
if x == 0
x = color[i] * percentage
color[i] -= x
else
color[i] += x
else
adj = 255 * percentage
for _c, i in color
if color[i] + adj > 255
color[i] -= adj
else
color[i] += adj
'#' + color.map((x) -> Math.floor(Math.max(0, Math.min(255, x))).toString(16)).join ''