diff --git a/dist/index.html b/dist/index.html index c1a36b2..39166e4 100644 --- a/dist/index.html +++ b/dist/index.html @@ -1155,6 +1155,8 @@

Color Properties

harveyHue, } from "./index.mjs"; + import { rybHsl2rgb } from "https://esm.sh/rybitten/"; + console.clear(); const $favicon = document.querySelector('link[rel="icon"]'); @@ -1587,7 +1589,7 @@

Color Properties

pane.addInput(PARAMS, 'Color Mode', { options: - ['hsl', 'okhsl', 'hsv', 'okhsv', 'hsi', 'hwb', 'lch', 'oklch'] + ['hsl', 'okhsl', 'hsv', 'okhsv', 'hsi', 'hwb', 'lch', 'oklch', 'RYBItten'] }); const createPalette = (hueList = null) => { @@ -1703,18 +1705,25 @@

Color Properties

channels.c = s * 150; channels.h = h; css = colorToCSS([h, s, l], 'lch'); + } else if (colorMode === 'RYBItten') { + const [ ry, gy, by ] = rybHsl2rgb([h, s, l]); + channels.r = ry; + channels.g = gy; + channels.b = by; } + const computedColorMode = colorMode === 'RYBItten' ? 'rgb' : colorMode; + const { r, g, b } = culori.converter("rgb")({ - mode: colorMode, + mode: computedColorMode, ...channels }); return { hsl: [h, s, l], rgb: [r * 255, g * 255, b * 255], - hex: culori.formatHex({ mode: colorMode, ...channels }), - css: css || culori.formatHex({ mode: colorMode, ...channels }), + hex: culori.formatHex({ mode: computedColorMode, ...channels }), + css: css || culori.formatHex({ mode: computedColorMode, ...channels }), contrast: { white: culori.wcagContrast("#ffffff", { mode: 'hsl', ...channels }), black: culori.wcagContrast("#000000", { mode: 'hsl', ...channels }),