UNPKG

@taiga-ui/kit

Version:
23 lines 2.7 kB
/** * Converts a string to an HSL color * @param value string to convert * @return HSL color string */ // @bad TODO: convert stringHashToHsl to stringHashToRgb export function stringHashToHsl(value) { if (value === '') { return ''; } var hash = 0; for (var i = 0; i < value.length; i++) { /* tslint:disable: no-bitwise */ hash = value.charCodeAt(i) + ((hash << 5) - hash); hash = hash & hash; /* tslint:enable: no-bitwise */ } var hue = hash % 360; var saturation = 60 + (hash % 5); var lightness = 80 + (hash % 5); return "hsl(" + hue + "," + saturation + "%," + lightness + "%)"; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWhhc2gtdG8taHNsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2tpdC91dGlscy9mb3JtYXQvIiwic291cmNlcyI6WyJzdHJpbmctaGFzaC10by1oc2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILHdEQUF3RDtBQUN4RCxNQUFNLFVBQVUsZUFBZSxDQUFDLEtBQWE7SUFDekMsSUFBSSxLQUFLLEtBQUssRUFBRSxFQUFFO1FBQ2QsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUVELElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQztJQUViLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ25DLGdDQUFnQztRQUNoQyxJQUFJLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ2xELElBQUksR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ25CLCtCQUErQjtLQUNsQztJQUVELElBQU0sR0FBRyxHQUFHLElBQUksR0FBRyxHQUFHLENBQUM7SUFDdkIsSUFBTSxVQUFVLEdBQUcsRUFBRSxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ25DLElBQU0sU0FBUyxHQUFHLEVBQUUsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQztJQUVsQyxPQUFPLFNBQU8sR0FBRyxTQUFJLFVBQVUsVUFBSyxTQUFTLE9BQUksQ0FBQztBQUN0RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb252ZXJ0cyBhIHN0cmluZyB0byBhbiBIU0wgY29sb3JcbiAqIEBwYXJhbSB2YWx1ZSBzdHJpbmcgdG8gY29udmVydFxuICogQHJldHVybiBIU0wgY29sb3Igc3RyaW5nXG4gKi9cbi8vIEBiYWQgVE9ETzogY29udmVydCBzdHJpbmdIYXNoVG9Ic2wgdG8gc3RyaW5nSGFzaFRvUmdiXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5nSGFzaFRvSHNsKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PT0gJycpIHtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgIH1cblxuICAgIGxldCBoYXNoID0gMDtcblxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFsdWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgLyogdHNsaW50OmRpc2FibGU6IG5vLWJpdHdpc2UgKi9cbiAgICAgICAgaGFzaCA9IHZhbHVlLmNoYXJDb2RlQXQoaSkgKyAoKGhhc2ggPDwgNSkgLSBoYXNoKTtcbiAgICAgICAgaGFzaCA9IGhhc2ggJiBoYXNoO1xuICAgICAgICAvKiB0c2xpbnQ6ZW5hYmxlOiBuby1iaXR3aXNlICovXG4gICAgfVxuXG4gICAgY29uc3QgaHVlID0gaGFzaCAlIDM2MDtcbiAgICBjb25zdCBzYXR1cmF0aW9uID0gNjAgKyAoaGFzaCAlIDUpO1xuICAgIGNvbnN0IGxpZ2h0bmVzcyA9IDgwICsgKGhhc2ggJSA1KTtcblxuICAgIHJldHVybiBgaHNsKCR7aHVlfSwke3NhdHVyYXRpb259JSwke2xpZ2h0bmVzc30lKWA7XG59XG4iXX0=