Completed
Pull Request — master (#104)
by
unknown
05:51 queued 01:20
created

ColourUtil   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 273
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 0
dl 0
loc 273
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A map256to8() 0 4 1
1
<?php
2
3
namespace PhpSchool\CliMenu\Util;
4
5
class ColourUtil
6
{
7
    /**
8
     * @var array
9
     */
10
    private $coloursMap = [
11
        0 => 'black',
12
        1 => 'red',
13
        2 => 'green',
14
        3 => 'yellow',
15
        4 => 'blue',
16
        5 => 'magenta',
17
        6 => 'cyan',
18
        7 => 'white',
19
        8 => 'black',
20
        9 => 'red',
21
        10 => 'green',
22
        11 => 'yellow',
23
        12 => 'blue',
24
        13 => 'magenta',
25
        14 => 'cyan',
26
        15 => 'white',
27
        16 => 'black',
28
        17 => 'blue',
29
        18 => 'blue',
30
        19 => 'blue',
31
        20 => 'blue',
32
        21 => 'blue',
33
        22 => 'green',
34
        23 => 'cyan',
35
        24 => 'cyan',
36
        25 => 'blue',
37
        26 => 'blue',
38
        27 => 'blue',
39
        28 => 'green',
40
        29 => 'green',
41
        30 => 'cyan',
42
        31 => 'cyan',
43
        32 => 'blue',
44
        33 => 'blue',
45
        34 => 'green',
46
        35 => 'green',
47
        36 => 'green',
48
        37 => 'cyan',
49
        38 => 'cyan',
50
        39 => 'cyan',
51
        40 => 'green',
52
        41 => 'green',
53
        42 => 'green',
54
        43 => 'cyan',
55
        44 => 'cyan',
56
        45 => 'cyan',
57
        46 => 'green',
58
        47 => 'green',
59
        48 => 'green',
60
        49 => 'green',
61
        50 => 'cyan',
62
        51 => 'cyan',
63
        52 => 'red',
64
        53 => 'blue',
65
        54 => 'blue',
66
        55 => 'blue',
67
        56 => 'blue',
68
        57 => 'blue',
69
        58 => 'yellow',
70
        59 => 'black',
71
        60 => 'blue',
72
        61 => 'blue',
73
        62 => 'blue',
74
        63 => 'blue',
75
        64 => 'green',
76
        65 => 'green',
77
        66 => 'cyan',
78
        67 => 'cyan',
79
        68 => 'blue',
80
        69 => 'blue',
81
        70 => 'green',
82
        71 => 'green',
83
        72 => 'green',
84
        73 => 'cyan',
85
        74 => 'cyan',
86
        75 => 'cyan',
87
        76 => 'green',
88
        77 => 'green',
89
        78 => 'green',
90
        79 => 'green',
91
        80 => 'cyan',
92
        81 => 'cyan',
93
        82 => 'green',
94
        83 => 'green',
95
        84 => 'green',
96
        85 => 'green',
97
        86 => 'cyan',
98
        87 => 'cyan',
99
        88 => 'red',
100
        89 => 'magenta',
101
        90 => 'magenta',
102
        91 => 'magenta',
103
        92 => 'blue',
104
        93 => 'blue',
105
        94 => 'yellow',
106
        95 => 'red',
107
        96 => 'magenta',
108
        97 => 'magenta',
109
        98 => 'blue',
110
        99 => 'blue',
111
        100 => 'yellow',
112
        101 => 'yellow',
113
        102 => 'white',
114
        103 => 'blue',
115
        104 => 'blue',
116
        105 => 'blue',
117
        106 => 'green',
118
        107 => 'green',
119
        108 => 'green',
120
        109 => 'cyan',
121
        110 => 'cyan',
122
        111 => 'cyan',
123
        112 => 'green',
124
        113 => 'green',
125
        114 => 'green',
126
        115 => 'green',
127
        116 => 'cyan',
128
        117 => 'cyan',
129
        118 => 'green',
130
        119 => 'green',
131
        120 => 'green',
132
        121 => 'green',
133
        122 => 'green',
134
        123 => 'cyan',
135
        124 => 'red',
136
        125 => 'magenta',
137
        126 => 'magenta',
138
        127 => 'magenta',
139
        128 => 'magenta',
140
        129 => 'magenta',
141
        130 => 'red',
142
        131 => 'red',
143
        132 => 'magenta',
144
        133 => 'magenta',
145
        134 => 'magenta',
146
        135 => 'magenta',
147
        136 => 'yellow',
148
        137 => 'red',
149
        138 => 'red',
150
        139 => 'magenta',
151
        140 => 'magenta',
152
        141 => 'magenta',
153
        142 => 'yellow',
154
        143 => 'yellow',
155
        144 => 'yellow',
156
        145 => 'white',
157
        146 => 'white',
158
        147 => 'white',
159
        148 => 'yellow',
160
        149 => 'green',
161
        150 => 'green',
162
        151 => 'green',
163
        152 => 'cyan',
164
        153 => 'white',
165
        154 => 'green',
166
        155 => 'green',
167
        156 => 'green',
168
        157 => 'green',
169
        158 => 'green',
170
        159 => 'cyan',
171
        160 => 'red',
172
        161 => 'magenta',
173
        162 => 'magenta',
174
        163 => 'magenta',
175
        164 => 'magenta',
176
        165 => 'magenta',
177
        166 => 'red',
178
        167 => 'red',
179
        168 => 'magenta',
180
        169 => 'magenta',
181
        170 => 'magenta',
182
        171 => 'magenta',
183
        172 => 'red',
184
        173 => 'red',
185
        174 => 'red',
186
        175 => 'magenta',
187
        176 => 'magenta',
188
        177 => 'magenta',
189
        178 => 'yellow',
190
        179 => 'yellow',
191
        180 => 'white',
192
        181 => 'white',
193
        182 => 'magenta',
194
        183 => 'magenta',
195
        184 => 'yellow',
196
        185 => 'yellow',
197
        186 => 'yellow',
198
        187 => 'yellow',
199
        188 => 'white',
200
        189 => 'white',
201
        190 => 'yellow',
202
        191 => 'yellow',
203
        192 => 'green',
204
        193 => 'green',
205
        194 => 'green',
206
        195 => 'cyan',
207
        196 => 'red',
208
        197 => 'red',
209
        198 => 'magenta',
210
        199 => 'magenta',
211
        200 => 'magenta',
212
        201 => 'magenta',
213
        202 => 'red',
214
        203 => 'red',
215
        204 => 'magenta',
216
        205 => 'magenta',
217
        206 => 'magenta',
218
        207 => 'magenta',
219
        208 => 'red',
220
        209 => 'red',
221
        210 => 'red',
222
        211 => 'magenta',
223
        212 => 'magenta',
224
        213 => 'magenta',
225
        214 => 'red',
226
        215 => 'white',
227
        216 => 'red',
228
        217 => 'red',
229
        218 => 'magenta',
230
        219 => 'magenta',
231
        220 => 'yellow',
232
        221 => 'yellow',
233
        222 => 'yellow',
234
        223 => 'white',
235
        224 => 'white',
236
        225 => 'magenta',
237
        226 => 'yellow',
238
        227 => 'yellow',
239
        228 => 'yellow',
240
        229 => 'yellow',
241
        230 => 'yellow',
242
        231 => 'white',
243
        232 => 'black',
244
        233 => 'black',
245
        234 => 'black',
246
        235 => 'black',
247
        236 => 'black',
248
        237 => 'black',
249
        238 => 'black',
250
        239 => 'black',
251
        240 => 'black',
252
        241 => 'black',
253
        242 => 'black',
254
        243 => 'black',
255
        244 => 'white',
256
        245 => 'white',
257
        246 => 'white',
258
        247 => 'white',
259
        248 => 'white',
260
        249 => 'white',
261
        250 => 'white',
262
        251 => 'white',
263
        252 => 'white',
264
        253 => 'white',
265
        254 => 'white',
266
        255 => 'white',
267
    ];
268
    
269
    /**
270
     * Simple function to transform a 8-bit (256 colours) colour code
271
     * to one of the default 8 colors available in the terminal
272
     */
273
    public static function map256to8(int $colourCode) : string
274
    {
275
        return static::coloursMap[$colourCode];
276
    }
277
}
278