Skip to content
This repository has been archived by the owner on Dec 10, 2024. It is now read-only.

Commit

Permalink
fix(css-to-twconfig): fix types
Browse files Browse the repository at this point in the history
  • Loading branch information
saeidex committed Sep 21, 2024
1 parent b6284d0 commit 5d2cb47
Show file tree
Hide file tree
Showing 2 changed files with 107 additions and 122 deletions.
148 changes: 74 additions & 74 deletions tooling/css-to-twconfig/colors-hsl.css
Original file line number Diff line number Diff line change
Expand Up @@ -4,51 +4,51 @@

@layer base {
:root {
--ubus-sys-color-primary: 57.62 100.00% 19.80%;
--ubus-sys-color-surface-tint: 57.62 100.00% 19.80%;
--ubus-sys-color-on-primary: 0.00 0.00% 100.00%;
--ubus-sys-color-primary: 57.62 100% 19.8%;
--ubus-sys-color-surface-tint: 57.62 100% 19.8%;
--ubus-sys-color-on-primary: 0 0% 100%;
--ubus-sys-color-primary-container: 57.05 76.57% 46.86%;
--ubus-sys-color-on-primary-container: 56.90 100.00% 11.37%;
--ubus-sys-color-on-primary-container: 56.9 100% 11.37%;
--ubus-sys-color-secondary: 56.31 48.15% 26.47%;
--ubus-sys-color-on-secondary: 0.00 0.00% 100.00%;
--ubus-sys-color-on-secondary: 0 0% 100%;
--ubus-sys-color-secondary-container: 55.61 69.49% 76.86%;
--ubus-sys-color-on-secondary-container: 57.14 67.74% 18.24%;
--ubus-sys-color-tertiary: 97.22 100.00% 21.18%;
--ubus-sys-color-on-tertiary: 0.00 0.00% 100.00%;
--ubus-sys-color-tertiary: 97.22 100% 21.18%;
--ubus-sys-color-on-tertiary: 0 0% 100%;
--ubus-sys-color-tertiary-container: 99.49 61.26% 62.55%;
--ubus-sys-color-on-tertiary-container: 100.00 100.00% 12.35%;
--ubus-sys-color-error: 0.00 75.47% 41.57%;
--ubus-sys-color-on-error: 0.00 0.00% 100.00%;
--ubus-sys-color-error-container: 5.85 100.00% 91.96%;
--ubus-sys-color-on-error-container: 358.15 100.00% 12.75%;
--ubus-sys-color-on-tertiary-container: 100 100% 12.35%;
--ubus-sys-color-error: 0 75.47% 41.57%;
--ubus-sys-color-on-error: 0 0% 100%;
--ubus-sys-color-error-container: 5.85 100% 91.96%;
--ubus-sys-color-on-error-container: 358.15 100% 12.75%;
--ubus-sys-color-background: 46.36 91.67% 95.29%;
--ubus-sys-color-on-background: 55.00 26.09% 9.02%;
--ubus-sys-color-on-background: 55 26.09% 9.02%;
--ubus-sys-color-surface: 46.36 91.67% 95.29%;
--ubus-sys-color-on-surface: 55.00 26.09% 9.02%;
--ubus-sys-color-on-surface: 55 26.09% 9.02%;
--ubus-sys-color-surface-variant: 50.62 41.03% 84.71%;
--ubus-sys-color-on-surface-variant: 54.29 16.80% 24.51%;
--ubus-sys-color-outline: 55.20 11.42% 42.94%;
--ubus-sys-color-outline-variant: 52.00 22.39% 73.73%;
--ubus-sys-color-shadow: 0.00 0.00% 0.00%;
--ubus-sys-color-scrim: 0.00 0.00% 0.00%;
--ubus-sys-color-on-surface-variant: 54.29 16.8% 24.51%;
--ubus-sys-color-outline: 55.2 11.42% 42.94%;
--ubus-sys-color-outline-variant: 52 22.39% 73.73%;
--ubus-sys-color-shadow: 0 0% 0%;
--ubus-sys-color-scrim: 0 0% 0%;
--ubus-sys-color-inverse-surface: 55.38 14.94% 17.06%;
--ubus-sys-color-inverse-on-surface: 49.09 52.38% 91.76%;
--ubus-sys-color-inverse-primary: 57.03 75.21% 47.45%;
--ubus-sys-color-primary-fixed: 56.65 86.47% 59.41%;
--ubus-sys-color-on-primary-fixed: 56.00 100.00% 5.88%;
--ubus-sys-color-on-primary-fixed: 56 100% 5.88%;
--ubus-sys-color-primary-fixed-dim: 57.03 75.21% 47.45%;
--ubus-sys-color-on-primary-fixed-variant: 56.84 100.00% 14.90%;
--ubus-sys-color-on-primary-fixed-variant: 56.84 100% 14.9%;
--ubus-sys-color-secondary-fixed: 55.56 66.94% 76.27%;
--ubus-sys-color-on-secondary-fixed: 56.00 100.00% 5.88%;
--ubus-sys-color-on-secondary-fixed: 56 100% 5.88%;
--ubus-sys-color-secondary-fixed-dim: 55.38 44.83% 65.88%;
--ubus-sys-color-on-secondary-fixed-variant: 56.25 72.73% 17.25%;
--ubus-sys-color-tertiary-fixed: 98.85 88.41% 72.94%;
--ubus-sys-color-on-tertiary-fixed: 105.45 100.00% 6.47%;
--ubus-sys-color-on-tertiary-fixed: 105.45 100% 6.47%;
--ubus-sys-color-tertiary-fixed-dim: 99.15 61.46% 62.35%;
--ubus-sys-color-on-tertiary-fixed-variant: 98.78 100.00% 16.08%;
--ubus-sys-color-on-tertiary-fixed-variant: 98.78 100% 16.08%;
--ubus-sys-color-surface-dim: 48.57 24.14% 82.94%;
--ubus-sys-color-surface-bright: 46.36 91.67% 95.29%;
--ubus-sys-color-surface-container-lowest: 0.00 0.00% 100.00%;
--ubus-sys-color-surface-container-lowest: 0 0% 100%;
--ubus-sys-color-surface-container-low: 49.09 61.11% 92.94%;
--ubus-sys-color-surface-container: 49.09 45.83% 90.59%;
--ubus-sys-color-surface-container-high: 46.36 37.93% 88.63%;
Expand All @@ -58,55 +58,55 @@
}

.dark {
--md-sys-color-primary: 56.65 84.83% 58.63%;
--md-sys-color-surface-tint: 57.03 75.21% 47.45%;
--md-sys-color-on-primary: 57.69 100.00% 10.20%;
--md-sys-color-primary-container: 57.24 100.00% 38.43%;
--md-sys-color-on-primary-container: 57.39 100.00% 9.02%;
--md-sys-color-secondary: 55.38 44.83% 65.88%;
--md-sys-color-on-secondary: 57.69 100.00% 10.20%;
--md-sys-color-secondary-container: 57.14 86.30% 14.31%;
--md-sys-color-on-secondary-container: 55.50 54.05% 70.98%;
--md-sys-color-tertiary: 98.68 84.62% 71.96%;
--md-sys-color-on-tertiary: 100.71 100.00% 10.98%;
--md-sys-color-tertiary-container: 99.13 51.57% 56.27%;
--md-sys-color-on-tertiary-container: 101.63 100.00% 9.61%;
--md-sys-color-error: 6.43 100.00% 83.53%;
--md-sys-color-on-error: 357.14 100.00% 20.59%;
--md-sys-color-error-container: 355.92 100.00% 28.82%;
--md-sys-color-on-error-container: 5.85 100.00% 91.96%;
--md-sys-color-background: 54.55 35.48% 6.08%;
--md-sys-color-on-background: 49.09 31.43% 86.27%;
--md-sys-color-surface: 54.55 35.48% 6.08%;
--md-sys-color-on-surface: 49.09 31.43% 86.27%;
--md-sys-color-surface-variant: 54.29 16.80% 24.51%;
--md-sys-color-on-surface-variant: 52.00 22.39% 73.73%;
--md-sys-color-outline: 51.11 11.30% 53.14%;
--md-sys-color-outline-variant: 54.29 16.80% 24.51%;
--md-sys-color-shadow: 0.00 0.00% 0.00%;
--md-sys-color-scrim: 0.00 0.00% 0.00%;
--md-sys-color-inverse-surface: 49.09 31.43% 86.27%;
--md-sys-color-inverse-on-surface: 55.38 14.94% 17.06%;
--md-sys-color-inverse-primary: 57.62 100.00% 19.80%;
--md-sys-color-primary-fixed: 56.65 86.47% 59.41%;
--md-sys-color-on-primary-fixed: 56.00 100.00% 5.88%;
--md-sys-color-primary-fixed-dim: 57.03 75.21% 47.45%;
--md-sys-color-on-primary-fixed-variant: 56.84 100.00% 14.90%;
--md-sys-color-secondary-fixed: 55.56 66.94% 76.27%;
--md-sys-color-on-secondary-fixed: 56.00 100.00% 5.88%;
--md-sys-color-secondary-fixed-dim: 55.38 44.83% 65.88%;
--md-sys-color-on-secondary-fixed-variant: 56.25 72.73% 17.25%;
--md-sys-color-tertiary-fixed: 98.85 88.41% 72.94%;
--md-sys-color-on-tertiary-fixed: 105.45 100.00% 6.47%;
--md-sys-color-tertiary-fixed-dim: 99.15 61.46% 62.35%;
--md-sys-color-on-tertiary-fixed-variant: 98.78 100.00% 16.08%;
--md-sys-color-surface-dim: 54.55 35.48% 6.08%;
--md-sys-color-surface-bright: 55.71 13.46% 20.39%;
--md-sys-color-surface-container-lowest: 60.00 42.86% 4.12%;
--md-sys-color-surface-container-low: 55.00 26.09% 9.02%;
--md-sys-color-surface-container: 55.00 22.22% 10.59%;
--md-sys-color-surface-container-high: 50.77 17.33% 14.71%;
--md-sys-color-surface-container-highest: 55.38 13.68% 18.63%;
--ubus-sys-color-primary: 56.65 84.83% 58.63%;
--ubus-sys-color-surface-tint: 57.03 75.21% 47.45%;
--ubus-sys-color-on-primary: 57.69 100% 10.2%;
--ubus-sys-color-primary-container: 57.24 100% 38.43%;
--ubus-sys-color-on-primary-container: 57.39 100% 9.02%;
--ubus-sys-color-secondary: 55.38 44.83% 65.88%;
--ubus-sys-color-on-secondary: 57.69 100% 10.2%;
--ubus-sys-color-secondary-container: 57.14 86.3% 14.31%;
--ubus-sys-color-on-secondary-container: 55.5 54.05% 70.98%;
--ubus-sys-color-tertiary: 98.68 84.62% 71.96%;
--ubus-sys-color-on-tertiary: 100.71 100% 10.98%;
--ubus-sys-color-tertiary-container: 99.13 51.57% 56.27%;
--ubus-sys-color-on-tertiary-container: 101.63 100% 9.61%;
--ubus-sys-color-error: 6.43 100% 83.53%;
--ubus-sys-color-on-error: 357.14 100% 20.59%;
--ubus-sys-color-error-container: 355.92 100% 28.82%;
--ubus-sys-color-on-error-container: 5.85 100% 91.96%;
--ubus-sys-color-background: 54.55 35.48% 6.08%;
--ubus-sys-color-on-background: 49.09 31.43% 86.27%;
--ubus-sys-color-surface: 54.55 35.48% 6.08%;
--ubus-sys-color-on-surface: 49.09 31.43% 86.27%;
--ubus-sys-color-surface-variant: 54.29 16.8% 24.51%;
--ubus-sys-color-on-surface-variant: 52 22.39% 73.73%;
--ubus-sys-color-outline: 51.11 11.3% 53.14%;
--ubus-sys-color-outline-variant: 54.29 16.8% 24.51%;
--ubus-sys-color-shadow: 0 0% 0%;
--ubus-sys-color-scrim: 0 0% 0%;
--ubus-sys-color-inverse-surface: 49.09 31.43% 86.27%;
--ubus-sys-color-inverse-on-surface: 55.38 14.94% 17.06%;
--ubus-sys-color-inverse-primary: 57.62 100% 19.8%;
--ubus-sys-color-primary-fixed: 56.65 86.47% 59.41%;
--ubus-sys-color-on-primary-fixed: 56 100% 5.88%;
--ubus-sys-color-primary-fixed-dim: 57.03 75.21% 47.45%;
--ubus-sys-color-on-primary-fixed-variant: 56.84 100% 14.9%;
--ubus-sys-color-secondary-fixed: 55.56 66.94% 76.27%;
--ubus-sys-color-on-secondary-fixed: 56 100% 5.88%;
--ubus-sys-color-secondary-fixed-dim: 55.38 44.83% 65.88%;
--ubus-sys-color-on-secondary-fixed-variant: 56.25 72.73% 17.25%;
--ubus-sys-color-tertiary-fixed: 98.85 88.41% 72.94%;
--ubus-sys-color-on-tertiary-fixed: 105.45 100% 6.47%;
--ubus-sys-color-tertiary-fixed-dim: 99.15 61.46% 62.35%;
--ubus-sys-color-on-tertiary-fixed-variant: 98.78 100% 16.08%;
--ubus-sys-color-surface-dim: 54.55 35.48% 6.08%;
--ubus-sys-color-surface-bright: 55.71 13.46% 20.39%;
--ubus-sys-color-surface-container-lowest: 60 42.86% 4.12%;
--ubus-sys-color-surface-container-low: 55 26.09% 9.02%;
--ubus-sys-color-surface-container: 55 22.22% 10.59%;
--ubus-sys-color-surface-container-high: 50.77 17.33% 14.71%;
--ubus-sys-color-surface-container-highest: 55.38 13.68% 18.63%;

--radius: 0.5rem;
}
Expand Down
81 changes: 33 additions & 48 deletions tooling/css-to-twconfig/src/rgb-to-hsl.ts
Original file line number Diff line number Diff line change
@@ -1,52 +1,37 @@
export const rgbToHsl = (r: number, g: number, b: number) => {
var min,
max,
i,
l,
s,
maxcolor,
h,
rgb = [];
rgb[0] = r / 255;
rgb[1] = g / 255;
rgb[2] = b / 255;
min = rgb[0];
max = rgb[0];
maxcolor = 0;
for (i = 0; i < rgb.length - 1; i++) {
if (rgb[i + 1] <= min) {
min = rgb[i + 1];
}
if (rgb[i + 1] >= max) {
max = rgb[i + 1];
maxcolor = i + 1;
}
}
if (maxcolor == 0) {
h = (rgb[1] - rgb[2]) / (max - min);
}
if (maxcolor == 1) {
h = 2 + (rgb[2] - rgb[0]) / (max - min);
}
if (maxcolor == 2) {
h = 4 + (rgb[0] - rgb[1]) / (max - min);
}
if (isNaN(h)) {
h = 0;
}
h = h * 60;
if (h < 0) {
h = h + 360;
}
l = (min + max) / 2;
if (min == max) {
s = 0;
} else {
if (l < 0.5) {
s = (max - min) / (max + min);
} else {
s = (max - min) / (2 - max - min);
let h = 0;
let s = 0;

const rgb: [number, number, number] = [r / 255, g / 255, b / 255];

const min = Math.min(...rgb);
const max = Math.max(...rgb);

const l = (min + max) / 2;

if (min !== max) {
const delta = max - min;

s = l > 0.5 ? delta / (2 - max - min) : delta / (max + min);

switch (max) {
case rgb[0]:
h = (rgb[1] - rgb[2]) / delta + (rgb[1] < rgb[2] ? 6 : 0);
break;
case rgb[1]:
h = (rgb[2] - rgb[0]) / delta + 2;
break;
case rgb[2]:
h = (rgb[0] - rgb[1]) / delta + 4;
break;
}

h *= 60;
}
return { h: h.toFixed(2), s: (s * 100).toFixed(2), l: (l * 100).toFixed(2) };

return {
h: h.toFixed(2),
s: (s * 100).toFixed(2),
l: (l * 100).toFixed(2),
};
};

0 comments on commit 5d2cb47

Please sign in to comment.