{"version":3,"file":"_hsx.mjs","sources":["../../../../../../../../node_modules/chroma-js/src/interpolator/_hsx.js"],"sourcesContent":["import Color from '../Color.js';\n\nexport default (col1, col2, f, m) => {\n    let xyz0, xyz1;\n    if (m === 'hsl') {\n        xyz0 = col1.hsl();\n        xyz1 = col2.hsl();\n    } else if (m === 'hsv') {\n        xyz0 = col1.hsv();\n        xyz1 = col2.hsv();\n    } else if (m === 'hcg') {\n        xyz0 = col1.hcg();\n        xyz1 = col2.hcg();\n    } else if (m === 'hsi') {\n        xyz0 = col1.hsi();\n        xyz1 = col2.hsi();\n    } else if (m === 'lch' || m === 'hcl') {\n        m = 'hcl';\n        xyz0 = col1.hcl();\n        xyz1 = col2.hcl();\n    } else if (m === 'oklch') {\n        xyz0 = col1.oklch().reverse();\n        xyz1 = col2.oklch().reverse();\n    }\n\n    let hue0, hue1, sat0, sat1, lbv0, lbv1;\n    if (m.substr(0, 1) === 'h' || m === 'oklch') {\n        [hue0, sat0, lbv0] = xyz0;\n        [hue1, sat1, lbv1] = xyz1;\n    }\n\n    let sat, hue, lbv, dh;\n\n    if (!isNaN(hue0) && !isNaN(hue1)) {\n        // both colors have hue\n        if (hue1 > hue0 && hue1 - hue0 > 180) {\n            dh = hue1 - (hue0 + 360);\n        } else if (hue1 < hue0 && hue0 - hue1 > 180) {\n            dh = hue1 + 360 - hue0;\n        } else {\n            dh = hue1 - hue0;\n        }\n        hue = hue0 + f * dh;\n    } else if (!isNaN(hue0)) {\n        hue = hue0;\n        if ((lbv1 == 1 || lbv1 == 0) && m != 'hsv') sat = sat0;\n    } else if (!isNaN(hue1)) {\n        hue = hue1;\n        if ((lbv0 == 1 || lbv0 == 0) && m != 'hsv') sat = sat1;\n    } else {\n        hue = Number.NaN;\n    }\n\n    if (sat === undefined) sat = sat0 + f * (sat1 - sat0);\n    lbv = lbv0 + f * (lbv1 - lbv0);\n    return m === 'oklch'\n        ? new Color([lbv, sat, hue], m)\n        : new Color([hue, sat, lbv], m);\n};\n"],"names":[],"mappings":"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","x_google_ignoreList":[0]}