Color: extract a common color Space type

Bug:none
Change-Id: Ia56f6a9b86b10be617e895a8bbb660c4ec0e2db0
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/5725535
Auto-Submit: Paul Irish <paulirish@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Commit-Queue: Paul Irish <paulirish@chromium.org>
This commit is contained in:
Paul Irish
2024-07-19 12:18:01 +00:00
committed by Devtools-frontend LUCI CQ
parent 6d89bba2a5
commit 220f9e11aa
+12 -46
View File
@@ -2385,49 +2385,19 @@ export const IsolationModeHighlight = {
Mask: Legacy.fromRGBA([248, 249, 249, 1]),
};
type Space = number|{
min: number,
max: number,
count: (number|undefined),
};
export class Generator {
readonly #hueSpace: number|{
min: number,
max: number,
count: (number|undefined),
};
readonly #satSpace: number|{
min: number,
max: number,
count: (number|undefined),
};
readonly #lightnessSpace: number|{
min: number,
max: number,
count: (number|undefined),
};
readonly #alphaSpace: number|{
min: number,
max: number,
count: (number|undefined),
};
readonly #hueSpace: Space;
readonly #satSpace: Space;
readonly #lightnessSpace: Space;
readonly #alphaSpace: Space;
readonly #colors: Map<string, string>;
constructor(
hueSpace?: number|{
min: number,
max: number,
count: (number|undefined),
},
satSpace?: number|{
min: number,
max: number,
count: (number|undefined),
},
lightnessSpace?: number|{
min: number,
max: number,
count: (number|undefined),
},
alphaSpace?: number|{
min: number,
max: number,
count: (number|undefined),
}) {
constructor(hueSpace?: Space, satSpace?: Space, lightnessSpace?: Space, alphaSpace?: Space) {
this.#hueSpace = hueSpace || {min: 0, max: 360, count: undefined};
this.#satSpace = satSpace || 67;
this.#lightnessSpace = lightnessSpace || 80;
@@ -2461,11 +2431,7 @@ export class Generator {
return `${start})`;
}
private indexToValueInSpace(index: number, space: number|{
min: number,
max: number,
count: (number|undefined),
}): number {
private indexToValueInSpace(index: number, space: Space): number {
if (typeof space === 'number') {
return space;
}