{"version":3,"file":"mix.cjs","sources":["../../../../../../../../../.yarn/berry/cache/chroma-js-npm-3.2.0-d5c39f5077-10c0.zip/node_modules/chroma-js/src/generator/mix.js"],"sourcesContent":["import Color from '../Color.js';\nimport { type } from '../utils/index.js';\nimport interpolator from '../interpolator/index.js';\n\nexport default (col1, col2, f = 0.5, ...rest) => {\n    let mode = rest[0] || 'lrgb';\n    if (!interpolator[mode] && !rest.length) {\n        // fall back to the first supported mode\n        mode = Object.keys(interpolator)[0];\n    }\n    if (!interpolator[mode]) {\n        throw new Error(`interpolation mode ${mode} is not defined`);\n    }\n    if (type(col1) !== 'object') col1 = new Color(col1);\n    if (type(col2) !== 'object') col2 = new Color(col2);\n    return interpolator[mode](col1, col2, f).alpha(\n        col1.alpha() + f * (col2.alpha() - col1.alpha())\n    );\n};\n"],"names":["interpolator"],"mappings":";;;;AAIA,MAAA,MAAe,CAAC,MAAM,MAAM,IAAI,QAAQ,SAAS;AAC7C,MAAI,OAAO,KAAK,CAAC,KAAK;AACtB,MAAI,CAACA,MAAa,IAAI,KAAK,CAAC,KAAK,QAAQ;AAErC,WAAO,OAAO,KAAKA,KAAY,EAAE,CAAC;AAAA,EACtC;AACA,MAAI,CAACA,MAAa,IAAI,GAAG;AACrB,UAAM,IAAI,MAAM,sBAAsB,IAAI,iBAAiB;AAAA,EAC/D;AACA,MAAI,KAAK,IAAI,MAAM,SAAU,QAAO,IAAI,MAAM,IAAI;AAClD,MAAI,KAAK,IAAI,MAAM,SAAU,QAAO,IAAI,MAAM,IAAI;AAClD,SAAOA,MAAa,IAAI,EAAE,MAAM,MAAM,CAAC,EAAE;AAAA,IACrC,KAAK,MAAK,IAAK,KAAK,KAAK,MAAK,IAAK,KAAK,MAAK;AAAA,EACrD;AACA;;","x_google_ignoreList":[0]}