var colours = { 'aqua':'#00FFFF', 'aliceblue':'#F0F8FF', 'antiquewhite':'#FAEBD7', 'black':'#000000', 'off':'#000000', 'blue':'#0000FF', 'cyan':'#00FFFF', 'darkblue':'#00008B', 'darkcyan':'#008B8B', 'darkgreen':'#006400', 'darkturquoise':'#00CED1', 'deepskyblue':'#00BFFF', 'green':'#008000', 'lime':'#00FF00', 'mediumblue':'#0000CD', 'mediumspringgreen':'#00FA9A', 'navy':'#000080', 'springgreen':'#00FF7F', 'teal':'#008080', 'midnightblue':'#191970', 'dodgerblue':'#1E90FF', 'lightseagreen':'#20B2AA', 'forestgreen':'#228B22', 'seagreen':'#2E8B57', 'darkslategray':'#2F4F4F', 'darkslategrey':'#2F4F4F', 'limegreen':'#32CD32', 'mediumseagreen':'#3CB371', 'turquoise':'#40E0D0', 'royalblue':'#4169E1', 'steelblue':'#4682B4', 'darkslateblue':'#483D8B', 'mediumturquoise':'#48D1CC', 'indigo':'#4B0082', 'darkolivegreen':'#556B2F', 'cadetblue':'#5F9EA0', 'cornflowerblue':'#6495ED', 'mediumaquamarine':'#66CDAA', 'dimgray':'#696969', 'dimgrey':'#696969', 'slateblue':'#6A5ACD', 'olivedrab':'#6B8E23', 'slategray':'#708090', 'slategrey':'#708090', 'lightslategray':'#778899', 'lightslategrey':'#778899', 'mediumslateblue':'#7B68EE', 'lawngreen':'#7CFC00', 'aquamarine':'#7FFFD4', 'chartreuse':'#7FFF00', 'gray':'#808080', 'grey':'#808080', 'maroon':'#800000', 'olive':'#808000', 'purple':'#800080', 'lightskyblue':'#87CEFA', 'skyblue':'#87CEEB', 'blueviolet':'#8A2BE2', 'darkmagenta':'#8B008B', 'darkred':'#8B0000', 'saddlebrown':'#8B4513', 'darkseagreen':'#8FBC8F', 'lightgreen':'#90EE90', 'mediumpurple':'#9370DB', 'darkviolet':'#9400D3', 'palegreen':'#98FB98', 'darkorchid':'#9932CC', 'yellowgreen':'#9ACD32', 'sienna':'#A0522D', 'brown':'#A52A2A', 'darkgray':'#A9A9A9', 'darkgrey':'#A9A9A9', 'greenyellow':'#ADFF2F', 'lightblue':'#ADD8E6', 'paleturquoise':'#AFEEEE', 'lightsteelblue':'#B0C4DE', 'powderblue':'#B0E0E6', 'firebrick':'#B22222', 'darkgoldenrod':'#B8860B', 'mediumorchid':'#BA55D3', 'rosybrown':'#BC8F8F', 'darkkhaki':'#BDB76B', 'silver':'#C0C0C0', 'mediumvioletred':'#C71585', 'indianred':'#CD5C5C', 'peru':'#CD853F', 'chocolate':'#D2691E', 'tan':'#D2B48C', 'lightgray':'#D3D3D3', 'lightgrey':'#D3D3D3', 'thistle':'#D8BFD8', 'goldenrod':'#DAA520', 'orchid':'#DA70D6', 'palevioletred':'#DB7093', 'crimson':'#DC143C', 'gainsboro':'#DCDCDC', 'plum':'#DDA0DD', 'burlywood':'#DEB887', 'lightcyan':'#E0FFFF', 'lavender':'#E6E6FA', 'darksalmon':'#E9967A', 'palegoldenrod':'#EEE8AA', 'violet':'#EE82EE', 'azure':'#F0FFFF', 'honeydew':'#F0FFF0', 'khaki':'#F0E68C', 'lightcoral':'#F08080', 'sandybrown':'#F4A460', 'beige':'#F5F5DC', 'mintcream':'#F5FFFA', 'wheat':'#F5DEB3', 'whitesmoke':'#F5F5F5', 'ghostwhite':'#F8F8FF', 'lightgoldenrodyellow':'#FAFAD2', 'linen':'#FAF0E6', 'salmon':'#FA8072', 'oldlace':'#FDF5E6', 'warmwhite':'#FDF5E6', 'bisque':'#FFE4C4', 'blanchedalmond':'#FFEBCD', 'coral':'#FF7F50', 'cornsilk':'#FFF8DC', 'darkorange':'#FF8C00', 'deeppink':'#FF1493', 'floralwhite':'#FFFAF0', 'fuchsia':'#FF00FF', 'gold':'#FFD700', 'hotpink':'#FF69B4', 'ivory':'#FFFFF0', 'lavenderblush':'#FFF0F5', 'lemonchiffon':'#FFFACD', 'lightpink':'#FFB6C1', 'lightsalmon':'#FFA07A', 'lightyellow':'#FFFFE0', 'magenta':'#FF00FF', 'mistyrose':'#FFE4E1', 'moccasin':'#FFE4B5', 'navajowhite':'#FFDEAD', 'orange':'#FFA500', 'orangered':'#FF4500', 'papayawhip':'#FFEFD5', 'peachpuff':'#FFDAB9', 'pink':'#FFC0CB', 'red':'#FF0000', 'seashell':'#FFF5EE', 'snow':'#FFFAFA', 'tomato':'#FF6347', 'white':'#FFFFFF', 'yellow':'#FFFF00', 'amber':'#FFD200' }; var hexColour = /^#([0-9A-F][0-9A-F][0-9A-F]){1,2}$/i; var r, g, b; module.exports.getRGB = function(col,rgb) { if (!col) { return null; } if (/^\d{1,3},\d{1,3},\d{1,3}$/.test(col)) { return col; } col = col.toString().toLowerCase(); if (col in colours) { col = colours[col]; } if (hexColour.test(col)) { if (col.length === 4) { col = "#"+col[1]+col[1]+col[2]+col[2]+col[3]+col[3]; } if (rgb === "grb") { g = parseInt(col.slice(1,3),16); r = parseInt(col.slice(3,5),16); b = parseInt(col.slice(5),16); } else { r = parseInt(col.slice(1,3),16); g = parseInt(col.slice(3,5),16); b = parseInt(col.slice(5),16); } return r+","+g+","+b; } else { return null; } } module.exports.getHex = function(col) { col = col.toString().toLowerCase(); if (col in colours) { return colours[col]; } else { return null; } } module.exports.HexRGB = function(hex) { try { r = parseInt(hex.slice(1,3),16); g = parseInt(hex.slice(3,5),16); b = parseInt(hex.slice(5),16); return r+","+g+","+b; } catch(e) { return null; } }