Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | 1x 148x 148x 1x 1x 16x 16x 148x | import named from 'colors-named'; import hex from 'colors-named-hex'; export type ColorKeywords = { [key in (typeof named)[number]]: (typeof hex)[number]; }; /** * Extended color keywords * https://www.w3.org/TR/css-color-3/#svg-color */ export const colorKeywords = named.reduce((obj, key, index) => { obj[key] = hex[index]; return obj; }, {} as ColorKeywords); export const baseNamed = [ 'aqua', 'black', 'blue', 'fuchsia', 'gray', 'green', 'lime', 'maroon', 'navy', 'olive', 'purple', 'red', 'silver', 'teal', 'white', 'yellow', ] as const; export type ColorKeywordsBase = { [key in (typeof baseNamed)[number]]: ColorKeywords[key]; }; export const colorKeywordsBase = baseNamed.reduce((obj, key) => { obj[key] = colorKeywords[key]; return obj; }, {} as ColorKeywordsBase); export default function colorNameToHex(name: keyof ColorKeywords) { return colorKeywords[name]; } |