19 const packageSunHSValues = [211, 21];
20 const packageComSunValueLMax = 55;
21 const packageComSunValueL = 45;
22 const packageComSunHSValues = [204, 5];
23 const packageRestValueHMax = 360;
24 const packageRestValueH = 0;
25 const packageRestSLValues = [42, 53];
26 const packageConsideredDepth = 3;
27 const packageMarkerJava = "java";
28 const packageMarkerSun = "sun";
29 const packageMarkerComSun = "comSun";
30 const packageMarkerRest = "rest";
31 const packagesIdentifierMap = new Map().set("java.", packageMarkerJava).set("sun.", packageMarkerSun)
32 .set("com.sun.", packageMarkerComSun);
33 const packageColorMap = new Map().set("", rootPackageColor);
34
35 const colorByPackage = function (p) {
36 if (p === undefined) {
37 return invalidPackageColor;
38 } else {
39 const packageNameStrip = stripPackageName(p);
40 const packageSelectedColor = packageColorMap.get(packageNameStrip);
41 if (packageSelectedColor === undefined) {
42 const packageMarkerSelected = getPackageMarker(packageNameStrip);
43 const packageNameStripHash = packageNameStrip.hashCode();
44 switch (packageMarkerSelected) {
45 case packageMarkerJava:
46 const packageJavaSelectedColor = createHslColorString(packageJavaHslHSValues[0], packageJavaHslHSValues[1], adjustHslPropertyByHash(packageNameStripHash, packageJavaValueL, packageJavaValueLMax));
47 packageColorMap.set(packageNameStrip, packageJavaSelectedColor);
48 break;
49 case packageMarkerComSun:
50 const packageComSunSelectedColor = createHslColorString(packageComSunHSValues[0], packageComSunHSValues[1], adjustHslPropertyByHash(packageNameStripHash, packageComSunValueL, packageComSunValueLMax));
51 packageColorMap.set(packageNameStrip, packageComSunSelectedColor);
52 break;
53 case packageMarkerSun:
54 const packageSunSelectedColor = createHslColorString(packageSunHSValues[0], packageSunHSValues[1], adjustHslPropertyByHash(packageNameStripHash, packageSunValueL, packageSunValueLMax));
55 packageColorMap.set(packageNameStrip, packageSunSelectedColor);
56 break;
57 case packageMarkerRest:
58 const packageRestSelectedColor = createHslColorString(adjustHslPropertyByHash(packageNameStripHash, packageRestValueH, packageRestValueHMax), packageRestSLValues[0], packageRestSLValues[1]);
59 packageColorMap.set(packageNameStrip, packageRestSelectedColor);
60 break;
61 }
62 return packageColorMap.get(packageNameStrip);
63 } else {
64 return packageSelectedColor;
65 }
66 }
67 };
68
69 const getPackageMarker = function(p){
70 for(let k of packagesIdentifierMap.keys()){
71 if(p.startsWith(k)){
72 return packagesIdentifierMap.get(k);
|
19 const packageSunHSValues = [211, 21];
20 const packageComSunValueLMax = 55;
21 const packageComSunValueL = 45;
22 const packageComSunHSValues = [204, 5];
23 const packageRestValueHMax = 360;
24 const packageRestValueH = 0;
25 const packageRestSLValues = [42, 53];
26 const packageConsideredDepth = 3;
27 const packageMarkerJava = "java";
28 const packageMarkerSun = "sun";
29 const packageMarkerComSun = "comSun";
30 const packageMarkerRest = "rest";
31 const packagesIdentifierMap = new Map().set("java.", packageMarkerJava).set("sun.", packageMarkerSun)
32 .set("com.sun.", packageMarkerComSun);
33 const packageColorMap = new Map().set("", rootPackageColor);
34
35 const colorByPackage = function (p) {
36 if (p === undefined) {
37 return invalidPackageColor;
38 } else {
39 const packageNameStrip = stripPackageName(p);
40 const packageSelectedColor = packageColorMap.get(packageNameStrip);
41 if (packageSelectedColor === undefined) {
42 const packageMarkerSelected = getPackageMarker(packageNameStrip);
43 const packageNameStripHash = packageNameStrip.hashCode();
44 switch (packageMarkerSelected) {
45 case packageMarkerJava:
46 const packageJavaSelectedColor = createHslColorString(packageJavaHslHSValues[0], packageJavaHslHSValues[1], adjustHslPropertyByHash(packageNameStripHash, packageJavaValueL, packageJavaValueLMax));
47 packageColorMap.set(packageNameStrip, packageJavaSelectedColor);
48 break;
49 case packageMarkerComSun:
50 const packageComSunSelectedColor = createHslColorString(packageComSunHSValues[0], packageComSunHSValues[1], adjustHslPropertyByHash(packageNameStripHash, packageComSunValueL, packageComSunValueLMax));
51 packageColorMap.set(packageNameStrip, packageComSunSelectedColor);
52 break;
53 case packageMarkerSun:
54 const packageSunSelectedColor = createHslColorString(packageSunHSValues[0], packageSunHSValues[1], adjustHslPropertyByHash(packageNameStripHash, packageSunValueL, packageSunValueLMax));
55 packageColorMap.set(packageNameStrip, packageSunSelectedColor);
56 break;
57 case packageMarkerRest:
58 const packageRestSelectedColor = createHslColorString(adjustHslPropertyByHash(packageNameStripHash, packageRestValueH, packageRestValueHMax), packageRestSLValues[0], packageRestSLValues[1]);
59 packageColorMap.set(packageNameStrip, packageRestSelectedColor);
60 break;
61 }
62 return packageColorMap.get(packageNameStrip);
63 } else {
64 return packageSelectedColor;
65 }
66 }
67 };
68
69 const getPackageMarker = function(p){
70 for(let k of packagesIdentifierMap.keys()){
71 if(p.startsWith(k)){
72 return packagesIdentifierMap.get(k);
|