UNPKG

@andrew-codes/color-functions

Version:

Collection of functions to manipulate colors in JavaScript

1 lines 860 B
'use strict';Object.defineProperty(exports,'__esModule',{value:true});var _toRgba=require('./../conversionFunctions/toRgba');var _toRgba2=_interopRequireDefault(_toRgba);var _clamp=require('./../utilities/clamp');var _clamp2=_interopRequireDefault(_clamp);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(color1,color2,amount){var w=amount*2-1;var rgba1=(0,_toRgba2.default)(color1);var rgba2=(0,_toRgba2.default)(color2);var a=rgba1.alpha-rgba2.alpha;var w1=((w*a===-1?w:(w+a)/(1+w*a))+1)/2;var w2=1-w1;var r=(0,_clamp2.default)(Math.round(rgba1.r*w1+rgba2.r*w2),0,255);var g=(0,_clamp2.default)(Math.round(rgba1.g*w1+rgba2.g*w2),0,255);var b=(0,_clamp2.default)(Math.round(rgba1.b*w1+rgba2.b*w2),0,255);var alpha=rgba1.alpha*amount+rgba2.alpha*(1-amount);return{alpha:alpha,b:b,g:g,r:r,type:'rgba'}};