Unvendor fnv1a

This commit is contained in:
Ken-Håvard Lieng 2020-05-06 06:50:53 +02:00
parent 7d97d10e76
commit 497f9e882c
4 changed files with 117 additions and 1536 deletions

View file

@ -1,25 +1,5 @@
/* eslint-disable no-bitwise */
import { hsluvToHex } from 'hsluv';
//
// github.com/sindresorhus/fnv1a
//
const OFFSET_BASIS_32 = 2166136261;
const fnv1a = string => {
let hash = OFFSET_BASIS_32;
for (let i = 0; i < string.length; i++) {
hash ^= string.charCodeAt(i);
// 32-bit FNV prime: 2**24 + 2**8 + 0x93 = 16777619
// Using bitshift for accuracy and performance. Numbers in JS suck.
hash +=
(hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24);
}
return hash >>> 0;
};
import fnv1a from '@sindresorhus/fnv1a';
const colors = [];