1- import { getTheme } from '..' ;
21import type { VersionToColorMap , VersionsMap } from '../../types/versions' ;
32
43import { getMajorVersion , getMinorVersion } from './parseVersion' ;
@@ -10,35 +9,70 @@ export const hashCode = (s: string) => {
109 } , 0 ) ;
1110} ;
1211
13- const DARK_COLORS = [
14- [ '#D50C38' , '#FF2051' , '#FB3A64' , '#FF6989' ] ,
15- [ '#EB3320' , '#FF503E' , '#FF8376' , '#FFA399' ] ,
16- [ '#F47B10' , '#FF9B43' , '#FFB06A' , '#FFC693' ] ,
17- [ '#FFEA00' , '#FFEE31' , '#FFF480' , '#FFF8A9' ] ,
18- [ '#83D400' , '#B1FF33' , '#CBFF78' , '#DDFFA7' ] ,
19- [ '#27C98B' , '#16FFA6' , '#4CFFBA' , '#9BFFD8' ] ,
20- [ '#0EDBDE' , '#0CFBFF' , '#63FDFF' , '#B1FEFF' ] ,
21- [ '#2059FF' , '#4070FF' , '#658BFF' , '#A1B9FF' ] ,
22- [ '#AB07E3' , '#C92CFF' , '#DD78FF' , '#E79FFF' ] ,
23- [ '#E71498' , '#FF34B3' , '#FF75CB' , '#FFB0E1' ] ,
12+ export const COLORS = [
13+ [
14+ 'var(--versions-red-1)' ,
15+ 'var(--versions-red-2)' ,
16+ 'var(--versions-red-3)' ,
17+ 'var(--versions-red-4)' ,
18+ ] ,
19+ [
20+ 'var(--versions-orange-red-1)' ,
21+ 'var(--versions-orange-red-2)' ,
22+ 'var(--versions-orange-red-3)' ,
23+ 'var(--versions-orange-red-4)' ,
24+ ] ,
25+ [
26+ 'var(--versions-orange-1)' ,
27+ 'var(--versions-orange-2)' ,
28+ 'var(--versions-orange-3)' ,
29+ 'var(--versions-orange-4)' ,
30+ ] ,
31+ [
32+ 'var(--versions-yellow-1)' ,
33+ 'var(--versions-yellow-2)' ,
34+ 'var(--versions-yellow-3)' ,
35+ 'var(--versions-yellow-4)' ,
36+ ] ,
37+ [
38+ 'var(--versions-green-1)' ,
39+ 'var(--versions-green-2)' ,
40+ 'var(--versions-green-3)' ,
41+ 'var(--versions-green-4)' ,
42+ ] ,
43+ [
44+ 'var(--versions-teal-1)' ,
45+ 'var(--versions-teal-2)' ,
46+ 'var(--versions-teal-3)' ,
47+ 'var(--versions-teal-4)' ,
48+ ] ,
49+ [
50+ 'var(--versions-cyan-1)' ,
51+ 'var(--versions-cyan-2)' ,
52+ 'var(--versions-cyan-3)' ,
53+ 'var(--versions-cyan-4)' ,
54+ ] ,
55+ [
56+ 'var(--versions-blue-1)' ,
57+ 'var(--versions-blue-2)' ,
58+ 'var(--versions-blue-3)' ,
59+ 'var(--versions-blue-4)' ,
60+ ] ,
61+ [
62+ 'var(--versions-purple-1)' ,
63+ 'var(--versions-purple-2)' ,
64+ 'var(--versions-purple-3)' ,
65+ 'var(--versions-purple-4)' ,
66+ ] ,
67+ [
68+ 'var(--versions-pink-1)' ,
69+ 'var(--versions-pink-2)' ,
70+ 'var(--versions-pink-3)' ,
71+ 'var(--versions-pink-4)' ,
72+ ] ,
2473] ;
2574
26- const LIGHT_COLORS = [
27- [ '#F4315B' , '#FF426B' , '#FF7391' , '#FF8BA4' ] ,
28- [ '#FF6050' , '#FF7A6D' , '#FFAFA6' , '#FFBCB5' ] ,
29- [ '#FF9233' , '#FFAD65' , '#FFC593' , '#FFD3AC' ] ,
30- [ '#FFEA00' , '#FFEE31' , '#FFF480' , '#FFF8A9' ] ,
31- [ '#A1EE26' , '#B1FF33' , '#CBFF78' , '#DDFFA7' ] ,
32- [ '#31EBA4' , '#16FFA6' , '#4CFFBA' , '#9BFFD8' ] ,
33- [ '#2EE4E8' , '#0CFBFF' , '#63FDFF' , '#B1FEFF' ] ,
34- [ '#386BFF' , '#4070FF' , '#658BFF' , '#A1B9FF' ] ,
35- [ '#C73AF7' , '#C92CFF' , '#DD78FF' , '#E79FFF' ] ,
36- [ '#FF49BB' , '#FF34B3' , '#FF75CB' , '#FFB0E1' ] ,
37- ] ;
38-
39- export function getColors ( ) {
40- return getTheme ( ) === 'dark' ? DARK_COLORS : LIGHT_COLORS ;
41- }
75+ export const DEFAULT_COLOR = 'var(--g-color-base-generic-medium)' ;
4276
4377/** Calculates sub color index */
4478export function getMinorVersionColorVariant ( minorIndex : number , minorQuantity : number ) {
@@ -64,9 +98,6 @@ export function getMinorVersionColorVariant(minorIndex: number, minorQuantity: n
6498 return Math . floor ( ( 4 * minorIndex ) / minorQuantity ) ;
6599}
66100
67- // TODO: replace with color suggested by designer
68- export const DEFAULT_COLOR = 'saddlebrown' ;
69-
70101export const getVersionsMap = ( versions : string [ ] , initialMap : VersionsMap = new Map ( ) ) => {
71102 versions . forEach ( ( version ) => {
72103 const majorVersion = getMajorVersion ( version ) ;
@@ -87,23 +118,21 @@ export const getVersionToColorMap = (versionsMap: VersionsMap) => {
87118 } ;
88119 } ) ;
89120
90- const colors = getColors ( ) ;
91-
92121 const versionToColor : VersionToColorMap = new Map ( ) ;
93122 // not every version is colored, therefore iteration index can't be used consistently
94123 // init with the colors length to put increment right after condition for better readability
95- let currentColorIndex = colors . length - 1 ;
124+ let currentColorIndex = COLORS . length - 1 ;
96125
97126 clustersVersions
98127 // ascending by version name, just for consistency
99128 // sorting only impacts color choose for a version
100129 . sort ( ( a , b ) => a . hash - b . hash )
101130 . forEach ( ( item ) => {
102131 if ( / ^ ( \w + - ) ? s t a b l e / . test ( item . version ) ) {
103- currentColorIndex = ( currentColorIndex + 1 ) % colors . length ;
132+ currentColorIndex = ( currentColorIndex + 1 ) % COLORS . length ;
104133
105134 // Use fisrt color for major
106- versionToColor . set ( item . version , colors [ currentColorIndex ] [ 0 ] ) ;
135+ versionToColor . set ( item . version , COLORS [ currentColorIndex ] [ 0 ] ) ;
107136
108137 const minors = Array . from ( versionsMap . get ( item . version ) || [ ] )
109138 . filter ( ( v ) => v !== item . version )
@@ -125,7 +154,7 @@ export const getVersionToColorMap = (versionsMap: VersionsMap) => {
125154 minorIndex ,
126155 minorQuantity ,
127156 ) ;
128- const minorColor = colors [ currentColorIndex ] [ minorColorVariant ] ;
157+ const minorColor = COLORS [ currentColorIndex ] [ minorColorVariant ] ;
129158 versionToColor . set ( minor . version , minorColor ) ;
130159 } ) ;
131160 } else {
0 commit comments