color_namer_ruby 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,163 +0,0 @@
1
- module ColorNamerRuby
2
- class Html
3
- def self.get_name_from_hex(hex)
4
- self.colours.select { |swatch| swatch[:hex] == hex.upcase }.first&.dig(:name)
5
- end
6
-
7
- private
8
-
9
- def self.colours
10
- [
11
- { name: 'aqua', hex: '#00FFFF' },
12
- { name: 'aliceblue', hex: '#F0F8FF' },
13
- { name: 'antiquewhite', hex: '#FAEBD7' },
14
- { name: 'black', hex: '#000000' },
15
- { name: 'blue', hex: '#0000FF' },
16
- { name: 'cyan', hex: '#00FFFF' },
17
- { name: 'darkblue', hex: '#00008B' },
18
- { name: 'darkcyan', hex: '#008B8B' },
19
- { name: 'darkgreen', hex: '#006400' },
20
- { name: 'darkturquoise', hex: '#00CED1' },
21
- { name: 'deepskyblue', hex: '#00BFFF' },
22
- { name: 'green', hex: '#008000' },
23
- { name: 'lime', hex: '#00FF00' },
24
- { name: 'mediumblue', hex: '#0000CD' },
25
- { name: 'mediumspringgreen', hex: '#00FA9A' },
26
- { name: 'navy', hex: '#000080' },
27
- { name: 'springgreen', hex: '#00FF7F' },
28
- { name: 'teal', hex: '#008080' },
29
- { name: 'midnightblue', hex: '#191970' },
30
- { name: 'dodgerblue', hex: '#1E90FF' },
31
- { name: 'lightseagreen', hex: '#20B2AA' },
32
- { name: 'forestgreen', hex: '#228B22' },
33
- { name: 'seagreen', hex: '#2E8B57' },
34
- { name: 'darkslategray', hex: '#2F4F4F' },
35
- { name: 'darkslategrey', hex: '#2F4F4F' },
36
- { name: 'limegreen', hex: '#32CD32' },
37
- { name: 'mediumseagreen', hex: '#3CB371' },
38
- { name: 'turquoise', hex: '#40E0D0' },
39
- { name: 'royalblue', hex: '#4169E1' },
40
- { name: 'steelblue', hex: '#4682B4' },
41
- { name: 'darkslateblue', hex: '#483D8B' },
42
- { name: 'mediumturquoise', hex: '#48D1CC' },
43
- { name: 'indigo', hex: '#4B0082' },
44
- { name: 'darkolivegreen', hex: '#556B2F' },
45
- { name: 'cadetblue', hex: '#5F9EA0' },
46
- { name: 'cornflowerblue', hex: '#6495ED' },
47
- { name: 'mediumaquamarine', hex: '#66CDAA' },
48
- { name: 'dimgray', hex: '#696969' },
49
- { name: 'dimgrey', hex: '#696969' },
50
- { name: 'slateblue', hex: '#6A5ACD' },
51
- { name: 'olivedrab', hex: '#6B8E23' },
52
- { name: 'slategray', hex: '#708090' },
53
- { name: 'slategrey', hex: '#708090' },
54
- { name: 'lightslategray', hex: '#778899' },
55
- { name: 'lightslategrey', hex: '#778899' },
56
- { name: 'mediumslateblue', hex: '#7B68EE' },
57
- { name: 'lawngreen', hex: '#7CFC00' },
58
- { name: 'aquamarine', hex: '#7FFFD4' },
59
- { name: 'chartreuse', hex: '#7FFF00' },
60
- { name: 'gray', hex: '#808080' },
61
- { name: 'grey', hex: '#808080' },
62
- { name: 'maroon', hex: '#800000' },
63
- { name: 'olive', hex: '#808000' },
64
- { name: 'purple', hex: '#800080' },
65
- { name: 'lightskyblue', hex: '#87CEFA' },
66
- { name: 'skyblue', hex: '#87CEEB' },
67
- { name: 'blueviolet', hex: '#8A2BE2' },
68
- { name: 'darkmagenta', hex: '#8B008B' },
69
- { name: 'darkred', hex: '#8B0000' },
70
- { name: 'saddlebrown', hex: '#8B4513' },
71
- { name: 'darkseagreen', hex: '#8FBC8F' },
72
- { name: 'lightgreen', hex: '#90EE90' },
73
- { name: 'mediumpurple', hex: '#9370DB' },
74
- { name: 'darkviolet', hex: '#9400D3' },
75
- { name: 'palegreen', hex: '#98FB98' },
76
- { name: 'darkorchid', hex: '#9932CC' },
77
- { name: 'yellowgreen', hex: '#9ACD32' },
78
- { name: 'sienna', hex: '#A0522D' },
79
- { name: 'brown', hex: '#A52A2A' },
80
- { name: 'darkgray', hex: '#A9A9A9' },
81
- { name: 'darkgrey', hex: '#A9A9A9' },
82
- { name: 'greenyellow', hex: '#ADFF2F' },
83
- { name: 'lightblue', hex: '#ADD8E6' },
84
- { name: 'paleturquoise', hex: '#AFEEEE' },
85
- { name: 'lightsteelblue', hex: '#B0C4DE' },
86
- { name: 'powderblue', hex: '#B0E0E6' },
87
- { name: 'firebrick', hex: '#B22222' },
88
- { name: 'darkgoldenrod', hex: '#B8860B' },
89
- { name: 'mediumorchid', hex: '#BA55D3' },
90
- { name: 'rosybrown', hex: '#BC8F8F' },
91
- { name: 'darkkhaki', hex: '#BDB76B' },
92
- { name: 'silver', hex: '#C0C0C0' },
93
- { name: 'mediumvioletred', hex: '#C71585' },
94
- { name: 'indianred', hex: '#CD5C5C' },
95
- { name: 'peru', hex: '#CD853F' },
96
- { name: 'chocolate', hex: '#D2691E' },
97
- { name: 'tan', hex: '#D2B48C' },
98
- { name: 'lightgray', hex: '#D3D3D3' },
99
- { name: 'lightgrey', hex: '#D3D3D3' },
100
- { name: 'thistle', hex: '#D8BFD8' },
101
- { name: 'goldenrod', hex: '#DAA520' },
102
- { name: 'orchid', hex: '#DA70D6' },
103
- { name: 'palevioletred', hex: '#DB7093' },
104
- { name: 'crimson', hex: '#DC143C' },
105
- { name: 'gainsboro', hex: '#DCDCDC' },
106
- { name: 'plum', hex: '#DDA0DD' },
107
- { name: 'burlywood', hex: '#DEB887' },
108
- { name: 'lightcyan', hex: '#E0FFFF' },
109
- { name: 'lavender', hex: '#E6E6FA' },
110
- { name: 'darksalmon', hex: '#E9967A' },
111
- { name: 'palegoldenrod', hex: '#EEE8AA' },
112
- { name: 'violet', hex: '#EE82EE' },
113
- { name: 'azure', hex: '#F0FFFF' },
114
- { name: 'honeydew', hex: '#F0FFF0' },
115
- { name: 'khaki', hex: '#F0E68C' },
116
- { name: 'lightcoral', hex: '#F08080' },
117
- { name: 'sandybrown', hex: '#F4A460' },
118
- { name: 'beige', hex: '#F5F5DC' },
119
- { name: 'mintcream', hex: '#F5FFFA' },
120
- { name: 'wheat', hex: '#F5DEB3' },
121
- { name: 'whitesmoke', hex: '#F5F5F5' },
122
- { name: 'ghostwhite', hex: '#F8F8FF' },
123
- { name: 'lightgoldenrodyellow', hex: '#FAFAD2' },
124
- { name: 'linen', hex: '#FAF0E6' },
125
- { name: 'salmon', hex: '#FA8072' },
126
- { name: 'oldlace', hex: '#FDF5E6' },
127
- { name: 'bisque', hex: '#FFE4C4' },
128
- { name: 'blanchedalmond', hex: '#FFEBCD' },
129
- { name: 'coral', hex: '#FF7F50' },
130
- { name: 'cornsilk', hex: '#FFF8DC' },
131
- { name: 'darkorange', hex: '#FF8C00' },
132
- { name: 'deeppink', hex: '#FF1493' },
133
- { name: 'floralwhite', hex: '#FFFAF0' },
134
- { name: 'fuchsia', hex: '#FF00FF' },
135
- { name: 'gold', hex: '#FFD700' },
136
- { name: 'hotpink', hex: '#FF69B4' },
137
- { name: 'ivory', hex: '#FFFFF0' },
138
- { name: 'lavenderblush', hex: '#FFF0F5' },
139
- { name: 'lemonchiffon', hex: '#FFFACD' },
140
- { name: 'lightpink', hex: '#FFB6C1' },
141
- { name: 'lightsalmon', hex: '#FFA07A' },
142
- { name: 'lightyellow', hex: '#FFFFE0' },
143
- { name: 'magenta', hex: '#FF00FF' },
144
- { name: 'mistyrose', hex: '#FFE4E1' },
145
- { name: 'moccasin', hex: '#FFE4B5' },
146
- { name: 'navajowhite', hex: '#FFDEAD' },
147
- { name: 'orange', hex: '#FFA500' },
148
- { name: 'orangered', hex: '#FF4500' },
149
- { name: 'papayawhip', hex: '#FFEFD5' },
150
- { name: 'peachpuff', hex: '#FFDAB9' },
151
- { name: 'pink', hex: '#FFC0CB' },
152
- { name: 'red', hex: '#FF0000' },
153
- { name: 'seashell', hex: '#FFF5EE' },
154
- { name: 'snow', hex: '#FFFAFA' },
155
- { name: 'tomato', hex: '#FF6347' },
156
- { name: 'white', hex: '#FFFFFF' },
157
- { name: 'yellow', hex: '#FFFF00' },
158
- ]
159
- end
160
- end
161
- end
162
-
163
-
@@ -1,44 +0,0 @@
1
- require 'color_conversion'
2
- require 'active_support/core_ext/object/blank'
3
-
4
- module ColorNamerRuby
5
- class Namer
6
- def self.get_name(colour_value, pick: [], omit: [], **alt_colour_value)
7
- # alt_colour_value are used to collect colour paramaters when they are passed in the key format
8
- @hex = ColorConversion::Color.new(colour_value.presence || alt_colour_value).hex
9
-
10
- name = self.check_lists(pick, omit)
11
- return name if name.present?
12
-
13
- name_object = ColorNamerRuby::Distance.get_names_from_hex(@hex, pick, omit, 1).first
14
- return name_object.dig(:name)
15
- end
16
-
17
- def self.get_names(colour_value, pick: [], omit: [], limit: -1, **alt_colour_value)
18
- @hex = ColorConversion::Color.new(colour_value.presence || alt_colour_value).hex
19
-
20
- name_objects = ColorNamerRuby::Distance.get_names_from_hex(@hex, pick, omit, limit)
21
- return name_objects
22
- end
23
-
24
- def self.list_names
25
- ['basic', 'html', 'ntc', 'pantone', 'roygbiv', 'x11']
26
- end
27
-
28
- private
29
-
30
- def self.check_lists(pick, omit)
31
- name = nil
32
-
33
- self.list_names.each do |list_name|
34
- if (pick.empty? || pick.include?(list_name)) && !omit.include?(list_name)
35
- name = Object.const_get("ColorNamerRuby::#{list_name.capitalize}").get_name_from_hex(@hex)
36
- end
37
-
38
- break if name.present?
39
- end
40
-
41
- name || ''
42
- end
43
- end
44
- end