sai 0.2.0 → 0.3.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.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -1
  3. data/CHANGELOG.md +38 -1
  4. data/README.md +39 -241
  5. data/docs/USAGE.md +351 -0
  6. data/lib/sai/ansi/color_parser.rb +109 -0
  7. data/lib/sai/ansi/sequence_processor.rb +269 -0
  8. data/lib/sai/ansi/sequenced_string.rb +475 -0
  9. data/lib/sai/ansi/style_parser.rb +66 -0
  10. data/lib/sai/ansi.rb +0 -27
  11. data/lib/sai/conversion/color_sequence.rb +4 -4
  12. data/lib/sai/conversion/rgb/color_classifier.rb +209 -0
  13. data/lib/sai/conversion/rgb/color_indexer.rb +48 -0
  14. data/lib/sai/conversion/rgb/color_space.rb +192 -0
  15. data/lib/sai/conversion/rgb/color_transformer.rb +140 -0
  16. data/lib/sai/conversion/rgb.rb +23 -269
  17. data/lib/sai/decorator/color_manipulations.rb +157 -0
  18. data/lib/sai/decorator/delegation.rb +84 -0
  19. data/lib/sai/decorator/gradients.rb +363 -0
  20. data/lib/sai/decorator/hex_colors.rb +56 -0
  21. data/lib/sai/decorator/named_colors.rb +780 -0
  22. data/lib/sai/decorator/named_styles.rb +276 -0
  23. data/lib/sai/decorator/rgb_colors.rb +64 -0
  24. data/lib/sai/decorator.rb +35 -795
  25. data/lib/sai/mode_selector.rb +19 -19
  26. data/lib/sai/named_colors.rb +437 -0
  27. data/lib/sai.rb +753 -23
  28. data/sig/manifest.yaml +3 -0
  29. data/sig/sai/ansi/color_parser.rbs +77 -0
  30. data/sig/sai/ansi/sequence_processor.rbs +178 -0
  31. data/sig/sai/ansi/sequenced_string.rbs +380 -0
  32. data/sig/sai/ansi/style_parser.rbs +59 -0
  33. data/sig/sai/ansi.rbs +0 -10
  34. data/sig/sai/conversion/rgb/color_classifier.rbs +165 -0
  35. data/sig/sai/conversion/rgb/color_indexer.rbs +41 -0
  36. data/sig/sai/conversion/rgb/color_space.rbs +129 -0
  37. data/sig/sai/conversion/rgb/color_transformer.rbs +99 -0
  38. data/sig/sai/conversion/rgb.rbs +15 -198
  39. data/sig/sai/decorator/color_manipulations.rbs +125 -0
  40. data/sig/sai/decorator/delegation.rbs +47 -0
  41. data/sig/sai/decorator/gradients.rbs +267 -0
  42. data/sig/sai/decorator/hex_colors.rbs +48 -0
  43. data/sig/sai/decorator/named_colors.rbs +1491 -0
  44. data/sig/sai/decorator/named_styles.rbs +72 -0
  45. data/sig/sai/decorator/rgb_colors.rbs +52 -0
  46. data/sig/sai/decorator.rbs +25 -202
  47. data/sig/sai/mode_selector.rbs +19 -19
  48. data/sig/sai/named_colors.rbs +65 -0
  49. data/sig/sai.rbs +1485 -44
  50. metadata +38 -4
@@ -0,0 +1,780 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'sai/named_colors'
4
+
5
+ module Sai
6
+ class Decorator
7
+ # Named color methods for the {Decorator} class
8
+ #
9
+ # @author {https://aaronmallen.me Aaron Allen}
10
+ # @since 0.3.1
11
+ #
12
+ # @abstract This module is meant to be included in the {Decorator} class to provide named color methods
13
+ # @api private
14
+ #
15
+ # @note For each named color, two methods are dynamically generated:
16
+ # * color_name - Applies the color to the foreground
17
+ # * on_color_name - Applies the color to the backgroundAll color methods return {Decorator}
18
+ # @see Sai::NamedColors Sai::NamedColors for available color names
19
+ #
20
+ # @example Using a named color
21
+ # decorator.azure.decorate('Hello') #=> "\e[38;2;0;127;255mHello\e[0m"
22
+ # decorator.on_azure.decorate('Hello') #=> "\e[48;2;0;127;255mHello\e[0m"
23
+ module NamedColors
24
+ # @rbs!
25
+ # def alice_blue: () -> Decorator
26
+ # def antique_white: () -> Decorator
27
+ # def aqua: () -> Decorator
28
+ # def aqua_system: () -> Decorator
29
+ # def aquamarine: () -> Decorator
30
+ # def aquamarine1: () -> Decorator
31
+ # def aquamarine1_122: () -> Decorator
32
+ # def aquamarine3: () -> Decorator
33
+ # def azure: () -> Decorator
34
+ # def beige: () -> Decorator
35
+ # def bisque: () -> Decorator
36
+ # def black: () -> Decorator
37
+ # def black_system: () -> Decorator
38
+ # def blanched_almond: () -> Decorator
39
+ # def blue: () -> Decorator
40
+ # def blue1: () -> Decorator
41
+ # def blue3: () -> Decorator
42
+ # def blue3_20: () -> Decorator
43
+ # def blue_system: () -> Decorator
44
+ # def blue_violet: () -> Decorator
45
+ # def bright_black: () -> Decorator
46
+ # def bright_blue: () -> Decorator
47
+ # def bright_cyan: () -> Decorator
48
+ # def bright_green: () -> Decorator
49
+ # def bright_magenta: () -> Decorator
50
+ # def bright_red: () -> Decorator
51
+ # def bright_white: () -> Decorator
52
+ # def bright_yellow: () -> Decorator
53
+ # def brown: () -> Decorator
54
+ # def burly_wood: () -> Decorator
55
+ # def cadet_blue: () -> Decorator
56
+ # def cadet_blue_73: () -> Decorator
57
+ # def chartreuse: () -> Decorator
58
+ # def chartreuse1: () -> Decorator
59
+ # def chartreuse2: () -> Decorator
60
+ # def chartreuse2_112: () -> Decorator
61
+ # def chartreuse3: () -> Decorator
62
+ # def chartreuse3_76: () -> Decorator
63
+ # def chartreuse4: () -> Decorator
64
+ # def chocolate: () -> Decorator
65
+ # def coral: () -> Decorator
66
+ # def cornflower_blue: () -> Decorator
67
+ # def cornsilk: () -> Decorator
68
+ # def cornsilk1: () -> Decorator
69
+ # def crimson: () -> Decorator
70
+ # def cyan: () -> Decorator
71
+ # def cyan1: () -> Decorator
72
+ # def cyan2: () -> Decorator
73
+ # def cyan3: () -> Decorator
74
+ # def dark_blue: () -> Decorator
75
+ # def dark_cyan: () -> Decorator
76
+ # def dark_goldenrod: () -> Decorator
77
+ # def dark_gray: () -> Decorator
78
+ # def dark_green: () -> Decorator
79
+ # def dark_khaki: () -> Decorator
80
+ # def dark_magenta: () -> Decorator
81
+ # def dark_magenta_91: () -> Decorator
82
+ # def dark_olive_green: () -> Decorator
83
+ # def dark_olive_green1: () -> Decorator
84
+ # def dark_olive_green1_192: () -> Decorator
85
+ # def dark_olive_green2: () -> Decorator
86
+ # def dark_olive_green3: () -> Decorator
87
+ # def dark_olive_green3_113: () -> Decorator
88
+ # def dark_olive_green3_149: () -> Decorator
89
+ # def dark_orange: () -> Decorator
90
+ # def dark_orange3: () -> Decorator
91
+ # def dark_orange3_166: () -> Decorator
92
+ # def dark_orchid: () -> Decorator
93
+ # def dark_red: () -> Decorator
94
+ # def dark_red_88: () -> Decorator
95
+ # def dark_salmon: () -> Decorator
96
+ # def dark_sea_green: () -> Decorator
97
+ # def dark_sea_green1: () -> Decorator
98
+ # def dark_sea_green1_193: () -> Decorator
99
+ # def dark_sea_green2: () -> Decorator
100
+ # def dark_sea_green2_157: () -> Decorator
101
+ # def dark_sea_green3: () -> Decorator
102
+ # def dark_sea_green3_150: () -> Decorator
103
+ # def dark_sea_green4: () -> Decorator
104
+ # def dark_sea_green4_71: () -> Decorator
105
+ # def dark_slate_blue: () -> Decorator
106
+ # def dark_slate_gray: () -> Decorator
107
+ # def dark_slate_gray1: () -> Decorator
108
+ # def dark_slate_gray2: () -> Decorator
109
+ # def dark_slate_gray3: () -> Decorator
110
+ # def dark_turquoise: () -> Decorator
111
+ # def dark_violet: () -> Decorator
112
+ # def dark_violet_128: () -> Decorator
113
+ # def deep_pink: () -> Decorator
114
+ # def deep_pink1: () -> Decorator
115
+ # def deep_pink1_199: () -> Decorator
116
+ # def deep_pink2: () -> Decorator
117
+ # def deep_pink3: () -> Decorator
118
+ # def deep_pink3_162: () -> Decorator
119
+ # def deep_pink4: () -> Decorator
120
+ # def deep_pink4_125: () -> Decorator
121
+ # def deep_pink4_89: () -> Decorator
122
+ # def deep_sky_blue: () -> Decorator
123
+ # def deep_sky_blue1: () -> Decorator
124
+ # def deep_sky_blue2: () -> Decorator
125
+ # def deep_sky_blue3: () -> Decorator
126
+ # def deep_sky_blue3_32: () -> Decorator
127
+ # def deep_sky_blue4: () -> Decorator
128
+ # def deep_sky_blue4_24: () -> Decorator
129
+ # def deep_sky_blue4_25: () -> Decorator
130
+ # def dim_gray: () -> Decorator
131
+ # def dodger_blue: () -> Decorator
132
+ # def dodger_blue1: () -> Decorator
133
+ # def dodger_blue2: () -> Decorator
134
+ # def dodger_blue3: () -> Decorator
135
+ # def firebrick: () -> Decorator
136
+ # def floral_white: () -> Decorator
137
+ # def forest_green: () -> Decorator
138
+ # def fuchsia: () -> Decorator
139
+ # def fuchsia_system: () -> Decorator
140
+ # def gainsboro: () -> Decorator
141
+ # def ghost_white: () -> Decorator
142
+ # def gold: () -> Decorator
143
+ # def gold1: () -> Decorator
144
+ # def gold3: () -> Decorator
145
+ # def gold3_178: () -> Decorator
146
+ # def goldenrod: () -> Decorator
147
+ # def gray: () -> Decorator
148
+ # def green: () -> Decorator
149
+ # def green1: () -> Decorator
150
+ # def green3: () -> Decorator
151
+ # def green3_40: () -> Decorator
152
+ # def green4: () -> Decorator
153
+ # def green_system: () -> Decorator
154
+ # def green_yellow: () -> Decorator
155
+ # def grey0: () -> Decorator
156
+ # def grey100: () -> Decorator
157
+ # def grey11: () -> Decorator
158
+ # def grey15: () -> Decorator
159
+ # def grey19: () -> Decorator
160
+ # def grey23: () -> Decorator
161
+ # def grey27: () -> Decorator
162
+ # def grey3: () -> Decorator
163
+ # def grey30: () -> Decorator
164
+ # def grey35: () -> Decorator
165
+ # def grey37: () -> Decorator
166
+ # def grey39: () -> Decorator
167
+ # def grey42: () -> Decorator
168
+ # def grey46: () -> Decorator
169
+ # def grey50: () -> Decorator
170
+ # def grey53: () -> Decorator
171
+ # def grey54: () -> Decorator
172
+ # def grey58: () -> Decorator
173
+ # def grey62: () -> Decorator
174
+ # def grey66: () -> Decorator
175
+ # def grey7: () -> Decorator
176
+ # def grey70: () -> Decorator
177
+ # def grey74: () -> Decorator
178
+ # def grey78: () -> Decorator
179
+ # def grey82: () -> Decorator
180
+ # def grey84: () -> Decorator
181
+ # def grey85: () -> Decorator
182
+ # def grey89: () -> Decorator
183
+ # def grey93: () -> Decorator
184
+ # def grey_system: () -> Decorator
185
+ # def honeydew: () -> Decorator
186
+ # def honeydew2: () -> Decorator
187
+ # def hot_pink: () -> Decorator
188
+ # def hot_pink2: () -> Decorator
189
+ # def hot_pink3: () -> Decorator
190
+ # def hot_pink3_168: () -> Decorator
191
+ # def hot_pink_206: () -> Decorator
192
+ # def indian_red: () -> Decorator
193
+ # def indian_red1: () -> Decorator
194
+ # def indian_red1_204: () -> Decorator
195
+ # def indian_red_167: () -> Decorator
196
+ # def indigo: () -> Decorator
197
+ # def ivory: () -> Decorator
198
+ # def khaki: () -> Decorator
199
+ # def khaki1: () -> Decorator
200
+ # def khaki3: () -> Decorator
201
+ # def lavender: () -> Decorator
202
+ # def lavender_blush: () -> Decorator
203
+ # def lawn_green: () -> Decorator
204
+ # def lemon_chiffon: () -> Decorator
205
+ # def light_blue: () -> Decorator
206
+ # def light_coral: () -> Decorator
207
+ # def light_cyan: () -> Decorator
208
+ # def light_cyan1: () -> Decorator
209
+ # def light_cyan3: () -> Decorator
210
+ # def light_goldenrod1: () -> Decorator
211
+ # def light_goldenrod2: () -> Decorator
212
+ # def light_goldenrod2_221: () -> Decorator
213
+ # def light_goldenrod3: () -> Decorator
214
+ # def light_goldenrod_yellow: () -> Decorator
215
+ # def light_gray: () -> Decorator
216
+ # def light_green: () -> Decorator
217
+ # def light_green_120: () -> Decorator
218
+ # def light_pink: () -> Decorator
219
+ # def light_pink1: () -> Decorator
220
+ # def light_pink3: () -> Decorator
221
+ # def light_pink4: () -> Decorator
222
+ # def light_salmon: () -> Decorator
223
+ # def light_salmon1: () -> Decorator
224
+ # def light_salmon3: () -> Decorator
225
+ # def light_salmon3_173: () -> Decorator
226
+ # def light_sea_green: () -> Decorator
227
+ # def light_sky_blue: () -> Decorator
228
+ # def light_sky_blue1: () -> Decorator
229
+ # def light_sky_blue3: () -> Decorator
230
+ # def light_sky_blue3_110: () -> Decorator
231
+ # def light_slate_blue: () -> Decorator
232
+ # def light_slate_gray: () -> Decorator
233
+ # def light_slate_grey: () -> Decorator
234
+ # def light_steel_blue: () -> Decorator
235
+ # def light_steel_blue1: () -> Decorator
236
+ # def light_steel_blue3: () -> Decorator
237
+ # def light_yellow: () -> Decorator
238
+ # def lime: () -> Decorator
239
+ # def lime_green: () -> Decorator
240
+ # def lime_system: () -> Decorator
241
+ # def linen: () -> Decorator
242
+ # def magenta: () -> Decorator
243
+ # def magenta1: () -> Decorator
244
+ # def magenta2: () -> Decorator
245
+ # def magenta2_200: () -> Decorator
246
+ # def magenta3: () -> Decorator
247
+ # def magenta3_163: () -> Decorator
248
+ # def magenta3_164: () -> Decorator
249
+ # def maroon: () -> Decorator
250
+ # def maroon_system: () -> Decorator
251
+ # def medium_aquamarine: () -> Decorator
252
+ # def medium_blue: () -> Decorator
253
+ # def medium_orchid: () -> Decorator
254
+ # def medium_orchid1: () -> Decorator
255
+ # def medium_orchid1_207: () -> Decorator
256
+ # def medium_orchid3: () -> Decorator
257
+ # def medium_purple: () -> Decorator
258
+ # def medium_purple1: () -> Decorator
259
+ # def medium_purple2: () -> Decorator
260
+ # def medium_purple2_140: () -> Decorator
261
+ # def medium_purple3: () -> Decorator
262
+ # def medium_purple3_98: () -> Decorator
263
+ # def medium_purple4: () -> Decorator
264
+ # def medium_sea_green: () -> Decorator
265
+ # def medium_slate_blue: () -> Decorator
266
+ # def medium_spring_green: () -> Decorator
267
+ # def medium_turquoise: () -> Decorator
268
+ # def medium_violet_red: () -> Decorator
269
+ # def midnight_blue: () -> Decorator
270
+ # def mint_cream: () -> Decorator
271
+ # def misty_rose: () -> Decorator
272
+ # def misty_rose1: () -> Decorator
273
+ # def misty_rose3: () -> Decorator
274
+ # def moccasin: () -> Decorator
275
+ # def navajo_white: () -> Decorator
276
+ # def navajo_white1: () -> Decorator
277
+ # def navajo_white3: () -> Decorator
278
+ # def navy: () -> Decorator
279
+ # def navy_blue: () -> Decorator
280
+ # def navy_system: () -> Decorator
281
+ # def old_lace: () -> Decorator
282
+ # def olive: () -> Decorator
283
+ # def olive_drab: () -> Decorator
284
+ # def olive_system: () -> Decorator
285
+ # def on_alice_blue: () -> Decorator
286
+ # def on_antique_white: () -> Decorator
287
+ # def on_aqua: () -> Decorator
288
+ # def on_aqua_system: () -> Decorator
289
+ # def on_aquamarine: () -> Decorator
290
+ # def on_aquamarine1: () -> Decorator
291
+ # def on_aquamarine1_122: () -> Decorator
292
+ # def on_aquamarine3: () -> Decorator
293
+ # def on_azure: () -> Decorator
294
+ # def on_beige: () -> Decorator
295
+ # def on_bisque: () -> Decorator
296
+ # def on_black: () -> Decorator
297
+ # def on_black_system: () -> Decorator
298
+ # def on_blanched_almond: () -> Decorator
299
+ # def on_blue: () -> Decorator
300
+ # def on_blue1: () -> Decorator
301
+ # def on_blue3: () -> Decorator
302
+ # def on_blue3_20: () -> Decorator
303
+ # def on_blue_system: () -> Decorator
304
+ # def on_blue_violet: () -> Decorator
305
+ # def on_bright_black: () -> Decorator
306
+ # def on_bright_blue: () -> Decorator
307
+ # def on_bright_cyan: () -> Decorator
308
+ # def on_bright_green: () -> Decorator
309
+ # def on_bright_magenta: () -> Decorator
310
+ # def on_bright_red: () -> Decorator
311
+ # def on_bright_white: () -> Decorator
312
+ # def on_bright_yellow: () -> Decorator
313
+ # def on_brown: () -> Decorator
314
+ # def on_burly_wood: () -> Decorator
315
+ # def on_cadet_blue: () -> Decorator
316
+ # def on_cadet_blue_73: () -> Decorator
317
+ # def on_chartreuse: () -> Decorator
318
+ # def on_chartreuse1: () -> Decorator
319
+ # def on_chartreuse2: () -> Decorator
320
+ # def on_chartreuse2_112: () -> Decorator
321
+ # def on_chartreuse3: () -> Decorator
322
+ # def on_chartreuse3_76: () -> Decorator
323
+ # def on_chartreuse4: () -> Decorator
324
+ # def on_chocolate: () -> Decorator
325
+ # def on_coral: () -> Decorator
326
+ # def on_cornflower_blue: () -> Decorator
327
+ # def on_cornsilk: () -> Decorator
328
+ # def on_cornsilk1: () -> Decorator
329
+ # def on_crimson: () -> Decorator
330
+ # def on_cyan: () -> Decorator
331
+ # def on_cyan1: () -> Decorator
332
+ # def on_cyan2: () -> Decorator
333
+ # def on_cyan3: () -> Decorator
334
+ # def on_dark_blue: () -> Decorator
335
+ # def on_dark_cyan: () -> Decorator
336
+ # def on_dark_goldenrod: () -> Decorator
337
+ # def on_dark_gray: () -> Decorator
338
+ # def on_dark_green: () -> Decorator
339
+ # def on_dark_khaki: () -> Decorator
340
+ # def on_dark_magenta: () -> Decorator
341
+ # def on_dark_magenta_91: () -> Decorator
342
+ # def on_dark_olive_green: () -> Decorator
343
+ # def on_dark_olive_green1: () -> Decorator
344
+ # def on_dark_olive_green1_192: () -> Decorator
345
+ # def on_dark_olive_green2: () -> Decorator
346
+ # def on_dark_olive_green3: () -> Decorator
347
+ # def on_dark_olive_green3_113: () -> Decorator
348
+ # def on_dark_olive_green3_149: () -> Decorator
349
+ # def on_dark_orange: () -> Decorator
350
+ # def on_dark_orange3: () -> Decorator
351
+ # def on_dark_orange3_166: () -> Decorator
352
+ # def on_dark_orchid: () -> Decorator
353
+ # def on_dark_red: () -> Decorator
354
+ # def on_dark_red_88: () -> Decorator
355
+ # def on_dark_salmon: () -> Decorator
356
+ # def on_dark_sea_green: () -> Decorator
357
+ # def on_dark_sea_green1: () -> Decorator
358
+ # def on_dark_sea_green1_193: () -> Decorator
359
+ # def on_dark_sea_green2: () -> Decorator
360
+ # def on_dark_sea_green2_157: () -> Decorator
361
+ # def on_dark_sea_green3: () -> Decorator
362
+ # def on_dark_sea_green3_150: () -> Decorator
363
+ # def on_dark_sea_green4: () -> Decorator
364
+ # def on_dark_sea_green4_71: () -> Decorator
365
+ # def on_dark_slate_blue: () -> Decorator
366
+ # def on_dark_slate_gray: () -> Decorator
367
+ # def on_dark_slate_gray1: () -> Decorator
368
+ # def on_dark_slate_gray2: () -> Decorator
369
+ # def on_dark_slate_gray3: () -> Decorator
370
+ # def on_dark_turquoise: () -> Decorator
371
+ # def on_dark_violet: () -> Decorator
372
+ # def on_dark_violet_128: () -> Decorator
373
+ # def on_deep_pink: () -> Decorator
374
+ # def on_deep_pink1: () -> Decorator
375
+ # def on_deep_pink1_199: () -> Decorator
376
+ # def on_deep_pink2: () -> Decorator
377
+ # def on_deep_pink3: () -> Decorator
378
+ # def on_deep_pink3_162: () -> Decorator
379
+ # def on_deep_pink4: () -> Decorator
380
+ # def on_deep_pink4_125: () -> Decorator
381
+ # def on_deep_pink4_89: () -> Decorator
382
+ # def on_deep_sky_blue: () -> Decorator
383
+ # def on_deep_sky_blue1: () -> Decorator
384
+ # def on_deep_sky_blue2: () -> Decorator
385
+ # def on_deep_sky_blue3: () -> Decorator
386
+ # def on_deep_sky_blue3_32: () -> Decorator
387
+ # def on_deep_sky_blue4: () -> Decorator
388
+ # def on_deep_sky_blue4_24: () -> Decorator
389
+ # def on_deep_sky_blue4_25: () -> Decorator
390
+ # def on_dim_gray: () -> Decorator
391
+ # def on_dodger_blue: () -> Decorator
392
+ # def on_dodger_blue1: () -> Decorator
393
+ # def on_dodger_blue2: () -> Decorator
394
+ # def on_dodger_blue3: () -> Decorator
395
+ # def on_firebrick: () -> Decorator
396
+ # def on_floral_white: () -> Decorator
397
+ # def on_forest_green: () -> Decorator
398
+ # def on_fuchsia: () -> Decorator
399
+ # def on_fuchsia_system: () -> Decorator
400
+ # def on_gainsboro: () -> Decorator
401
+ # def on_ghost_white: () -> Decorator
402
+ # def on_gold: () -> Decorator
403
+ # def on_gold1: () -> Decorator
404
+ # def on_gold3: () -> Decorator
405
+ # def on_gold3_178: () -> Decorator
406
+ # def on_goldenrod: () -> Decorator
407
+ # def on_gray: () -> Decorator
408
+ # def on_green: () -> Decorator
409
+ # def on_green1: () -> Decorator
410
+ # def on_green3: () -> Decorator
411
+ # def on_green3_40: () -> Decorator
412
+ # def on_green4: () -> Decorator
413
+ # def on_green_system: () -> Decorator
414
+ # def on_green_yellow: () -> Decorator
415
+ # def on_grey0: () -> Decorator
416
+ # def on_grey100: () -> Decorator
417
+ # def on_grey11: () -> Decorator
418
+ # def on_grey15: () -> Decorator
419
+ # def on_grey19: () -> Decorator
420
+ # def on_grey23: () -> Decorator
421
+ # def on_grey27: () -> Decorator
422
+ # def on_grey3: () -> Decorator
423
+ # def on_grey30: () -> Decorator
424
+ # def on_grey35: () -> Decorator
425
+ # def on_grey37: () -> Decorator
426
+ # def on_grey39: () -> Decorator
427
+ # def on_grey42: () -> Decorator
428
+ # def on_grey46: () -> Decorator
429
+ # def on_grey50: () -> Decorator
430
+ # def on_grey53: () -> Decorator
431
+ # def on_grey54: () -> Decorator
432
+ # def on_grey58: () -> Decorator
433
+ # def on_grey62: () -> Decorator
434
+ # def on_grey66: () -> Decorator
435
+ # def on_grey7: () -> Decorator
436
+ # def on_grey70: () -> Decorator
437
+ # def on_grey74: () -> Decorator
438
+ # def on_grey78: () -> Decorator
439
+ # def on_grey82: () -> Decorator
440
+ # def on_grey84: () -> Decorator
441
+ # def on_grey85: () -> Decorator
442
+ # def on_grey89: () -> Decorator
443
+ # def on_grey93: () -> Decorator
444
+ # def on_grey_system: () -> Decorator
445
+ # def on_honeydew: () -> Decorator
446
+ # def on_honeydew2: () -> Decorator
447
+ # def on_hot_pink: () -> Decorator
448
+ # def on_hot_pink2: () -> Decorator
449
+ # def on_hot_pink3: () -> Decorator
450
+ # def on_hot_pink3_168: () -> Decorator
451
+ # def on_hot_pink_206: () -> Decorator
452
+ # def on_indian_red: () -> Decorator
453
+ # def on_indian_red1: () -> Decorator
454
+ # def on_indian_red1_204: () -> Decorator
455
+ # def on_indian_red_167: () -> Decorator
456
+ # def on_indigo: () -> Decorator
457
+ # def on_ivory: () -> Decorator
458
+ # def on_khaki: () -> Decorator
459
+ # def on_khaki1: () -> Decorator
460
+ # def on_khaki3: () -> Decorator
461
+ # def on_lavender: () -> Decorator
462
+ # def on_lavender_blush: () -> Decorator
463
+ # def on_lawn_green: () -> Decorator
464
+ # def on_lemon_chiffon: () -> Decorator
465
+ # def on_light_blue: () -> Decorator
466
+ # def on_light_coral: () -> Decorator
467
+ # def on_light_cyan: () -> Decorator
468
+ # def on_light_cyan1: () -> Decorator
469
+ # def on_light_cyan3: () -> Decorator
470
+ # def on_light_goldenrod1: () -> Decorator
471
+ # def on_light_goldenrod2: () -> Decorator
472
+ # def on_light_goldenrod2_221: () -> Decorator
473
+ # def on_light_goldenrod3: () -> Decorator
474
+ # def on_light_goldenrod_yellow: () -> Decorator
475
+ # def on_light_gray: () -> Decorator
476
+ # def on_light_green: () -> Decorator
477
+ # def on_light_green_120: () -> Decorator
478
+ # def on_light_pink: () -> Decorator
479
+ # def on_light_pink1: () -> Decorator
480
+ # def on_light_pink3: () -> Decorator
481
+ # def on_light_pink4: () -> Decorator
482
+ # def on_light_salmon: () -> Decorator
483
+ # def on_light_salmon1: () -> Decorator
484
+ # def on_light_salmon3: () -> Decorator
485
+ # def on_light_salmon3_173: () -> Decorator
486
+ # def on_light_sea_green: () -> Decorator
487
+ # def on_light_sky_blue: () -> Decorator
488
+ # def on_light_sky_blue1: () -> Decorator
489
+ # def on_light_sky_blue3: () -> Decorator
490
+ # def on_light_sky_blue3_110: () -> Decorator
491
+ # def on_light_slate_blue: () -> Decorator
492
+ # def on_light_slate_gray: () -> Decorator
493
+ # def on_light_slate_grey: () -> Decorator
494
+ # def on_light_steel_blue: () -> Decorator
495
+ # def on_light_steel_blue1: () -> Decorator
496
+ # def on_light_steel_blue3: () -> Decorator
497
+ # def on_light_yellow: () -> Decorator
498
+ # def on_lime: () -> Decorator
499
+ # def on_lime_green: () -> Decorator
500
+ # def on_lime_system: () -> Decorator
501
+ # def on_linen: () -> Decorator
502
+ # def on_magenta: () -> Decorator
503
+ # def on_magenta1: () -> Decorator
504
+ # def on_magenta2: () -> Decorator
505
+ # def on_magenta2_200: () -> Decorator
506
+ # def on_magenta3: () -> Decorator
507
+ # def on_magenta3_163: () -> Decorator
508
+ # def on_magenta3_164: () -> Decorator
509
+ # def on_maroon: () -> Decorator
510
+ # def on_maroon_system: () -> Decorator
511
+ # def on_medium_aquamarine: () -> Decorator
512
+ # def on_medium_blue: () -> Decorator
513
+ # def on_medium_orchid: () -> Decorator
514
+ # def on_medium_orchid1: () -> Decorator
515
+ # def on_medium_orchid1_207: () -> Decorator
516
+ # def on_medium_orchid3: () -> Decorator
517
+ # def on_medium_purple: () -> Decorator
518
+ # def on_medium_purple1: () -> Decorator
519
+ # def on_medium_purple2: () -> Decorator
520
+ # def on_medium_purple2_140: () -> Decorator
521
+ # def on_medium_purple3: () -> Decorator
522
+ # def on_medium_purple3_98: () -> Decorator
523
+ # def on_medium_purple4: () -> Decorator
524
+ # def on_medium_sea_green: () -> Decorator
525
+ # def on_medium_slate_blue: () -> Decorator
526
+ # def on_medium_spring_green: () -> Decorator
527
+ # def on_medium_turquoise: () -> Decorator
528
+ # def on_medium_violet_red: () -> Decorator
529
+ # def on_midnight_blue: () -> Decorator
530
+ # def on_mint_cream: () -> Decorator
531
+ # def on_misty_rose: () -> Decorator
532
+ # def on_misty_rose1: () -> Decorator
533
+ # def on_misty_rose3: () -> Decorator
534
+ # def on_moccasin: () -> Decorator
535
+ # def on_navajo_white: () -> Decorator
536
+ # def on_navajo_white1: () -> Decorator
537
+ # def on_navajo_white3: () -> Decorator
538
+ # def on_navy: () -> Decorator
539
+ # def on_navy_blue: () -> Decorator
540
+ # def on_navy_system: () -> Decorator
541
+ # def on_old_lace: () -> Decorator
542
+ # def on_olive: () -> Decorator
543
+ # def on_olive_drab: () -> Decorator
544
+ # def on_olive_system: () -> Decorator
545
+ # def on_orange: () -> Decorator
546
+ # def on_orange1: () -> Decorator
547
+ # def on_orange3: () -> Decorator
548
+ # def on_orange4: () -> Decorator
549
+ # def on_orange4_94: () -> Decorator
550
+ # def on_orange_red: () -> Decorator
551
+ # def on_orange_red1: () -> Decorator
552
+ # def on_orchid: () -> Decorator
553
+ # def on_orchid1: () -> Decorator
554
+ # def on_orchid2: () -> Decorator
555
+ # def on_pale_goldenrod: () -> Decorator
556
+ # def on_pale_green: () -> Decorator
557
+ # def on_pale_green1: () -> Decorator
558
+ # def on_pale_green1_156: () -> Decorator
559
+ # def on_pale_green3: () -> Decorator
560
+ # def on_pale_green3_114: () -> Decorator
561
+ # def on_pale_turquoise: () -> Decorator
562
+ # def on_pale_turquoise1: () -> Decorator
563
+ # def on_pale_turquoise4: () -> Decorator
564
+ # def on_pale_violet_red: () -> Decorator
565
+ # def on_pale_violet_red1: () -> Decorator
566
+ # def on_papaya_whip: () -> Decorator
567
+ # def on_peach_puff: () -> Decorator
568
+ # def on_peru: () -> Decorator
569
+ # def on_pink: () -> Decorator
570
+ # def on_pink1: () -> Decorator
571
+ # def on_pink3: () -> Decorator
572
+ # def on_plum: () -> Decorator
573
+ # def on_plum1: () -> Decorator
574
+ # def on_plum2: () -> Decorator
575
+ # def on_plum3: () -> Decorator
576
+ # def on_plum4: () -> Decorator
577
+ # def on_powder_blue: () -> Decorator
578
+ # def on_purple: () -> Decorator
579
+ # def on_purple3: () -> Decorator
580
+ # def on_purple4: () -> Decorator
581
+ # def on_purple4_55: () -> Decorator
582
+ # def on_purple_129: () -> Decorator
583
+ # def on_purple_system: () -> Decorator
584
+ # def on_red: () -> Decorator
585
+ # def on_red1: () -> Decorator
586
+ # def on_red3: () -> Decorator
587
+ # def on_red3_160: () -> Decorator
588
+ # def on_red_system: () -> Decorator
589
+ # def on_rosy_brown: () -> Decorator
590
+ # def on_royal_blue: () -> Decorator
591
+ # def on_royal_blue1: () -> Decorator
592
+ # def on_saddle_brown: () -> Decorator
593
+ # def on_salmon: () -> Decorator
594
+ # def on_salmon1: () -> Decorator
595
+ # def on_sandy_brown: () -> Decorator
596
+ # def on_sea_green: () -> Decorator
597
+ # def on_sea_shell: () -> Decorator
598
+ # def on_sienna: () -> Decorator
599
+ # def on_silver: () -> Decorator
600
+ # def on_silver_system: () -> Decorator
601
+ # def on_sky_blue: () -> Decorator
602
+ # def on_sky_blue1: () -> Decorator
603
+ # def on_sky_blue2: () -> Decorator
604
+ # def on_sky_blue3: () -> Decorator
605
+ # def on_slate_blue: () -> Decorator
606
+ # def on_slate_blue1: () -> Decorator
607
+ # def on_slate_blue3: () -> Decorator
608
+ # def on_slate_blue3_62: () -> Decorator
609
+ # def on_slate_gray: () -> Decorator
610
+ # def on_snow: () -> Decorator
611
+ # def on_spring_green: () -> Decorator
612
+ # def on_spring_green1: () -> Decorator
613
+ # def on_spring_green2: () -> Decorator
614
+ # def on_spring_green2_47: () -> Decorator
615
+ # def on_spring_green3: () -> Decorator
616
+ # def on_spring_green3_41: () -> Decorator
617
+ # def on_spring_green4: () -> Decorator
618
+ # def on_steel_blue: () -> Decorator
619
+ # def on_steel_blue1: () -> Decorator
620
+ # def on_steel_blue1_81: () -> Decorator
621
+ # def on_steel_blue3: () -> Decorator
622
+ # def on_tan: () -> Decorator
623
+ # def on_teal: () -> Decorator
624
+ # def on_teal_system: () -> Decorator
625
+ # def on_thistle: () -> Decorator
626
+ # def on_thistle1: () -> Decorator
627
+ # def on_thistle3: () -> Decorator
628
+ # def on_tomato: () -> Decorator
629
+ # def on_turquoise: () -> Decorator
630
+ # def on_turquoise2: () -> Decorator
631
+ # def on_turquoise4: () -> Decorator
632
+ # def on_violet: () -> Decorator
633
+ # def on_wheat: () -> Decorator
634
+ # def on_wheat1: () -> Decorator
635
+ # def on_wheat4: () -> Decorator
636
+ # def on_white: () -> Decorator
637
+ # def on_white_smoke: () -> Decorator
638
+ # def on_white_system: () -> Decorator
639
+ # def on_yellow: () -> Decorator
640
+ # def on_yellow1: () -> Decorator
641
+ # def on_yellow2: () -> Decorator
642
+ # def on_yellow3: () -> Decorator
643
+ # def on_yellow3_184: () -> Decorator
644
+ # def on_yellow4: () -> Decorator
645
+ # def on_yellow4_106: () -> Decorator
646
+ # def on_yellow_green: () -> Decorator
647
+ # def on_yellow_system: () -> Decorator
648
+ # def orange: () -> Decorator
649
+ # def orange1: () -> Decorator
650
+ # def orange3: () -> Decorator
651
+ # def orange4: () -> Decorator
652
+ # def orange4_94: () -> Decorator
653
+ # def orange_red: () -> Decorator
654
+ # def orange_red1: () -> Decorator
655
+ # def orchid: () -> Decorator
656
+ # def orchid1: () -> Decorator
657
+ # def orchid2: () -> Decorator
658
+ # def pale_goldenrod: () -> Decorator
659
+ # def pale_green: () -> Decorator
660
+ # def pale_green1: () -> Decorator
661
+ # def pale_green1_156: () -> Decorator
662
+ # def pale_green3: () -> Decorator
663
+ # def pale_green3_114: () -> Decorator
664
+ # def pale_turquoise: () -> Decorator
665
+ # def pale_turquoise1: () -> Decorator
666
+ # def pale_turquoise4: () -> Decorator
667
+ # def pale_violet_red: () -> Decorator
668
+ # def pale_violet_red1: () -> Decorator
669
+ # def papaya_whip: () -> Decorator
670
+ # def peach_puff: () -> Decorator
671
+ # def peru: () -> Decorator
672
+ # def pink: () -> Decorator
673
+ # def pink1: () -> Decorator
674
+ # def pink3: () -> Decorator
675
+ # def plum: () -> Decorator
676
+ # def plum1: () -> Decorator
677
+ # def plum2: () -> Decorator
678
+ # def plum3: () -> Decorator
679
+ # def plum4: () -> Decorator
680
+ # def powder_blue: () -> Decorator
681
+ # def purple: () -> Decorator
682
+ # def purple3: () -> Decorator
683
+ # def purple4: () -> Decorator
684
+ # def purple4_55: () -> Decorator
685
+ # def purple_129: () -> Decorator
686
+ # def purple_system: () -> Decorator
687
+ # def red: () -> Decorator
688
+ # def red1: () -> Decorator
689
+ # def red3: () -> Decorator
690
+ # def red3_160: () -> Decorator
691
+ # def red_system: () -> Decorator
692
+ # def rosy_brown: () -> Decorator
693
+ # def royal_blue: () -> Decorator
694
+ # def royal_blue1: () -> Decorator
695
+ # def saddle_brown: () -> Decorator
696
+ # def salmon: () -> Decorator
697
+ # def salmon1: () -> Decorator
698
+ # def sandy_brown: () -> Decorator
699
+ # def sea_green: () -> Decorator
700
+ # def sea_shell: () -> Decorator
701
+ # def sienna: () -> Decorator
702
+ # def silver: () -> Decorator
703
+ # def silver_system: () -> Decorator
704
+ # def sky_blue: () -> Decorator
705
+ # def sky_blue1: () -> Decorator
706
+ # def sky_blue2: () -> Decorator
707
+ # def sky_blue3: () -> Decorator
708
+ # def slate_blue: () -> Decorator
709
+ # def slate_blue1: () -> Decorator
710
+ # def slate_blue3: () -> Decorator
711
+ # def slate_blue3_62: () -> Decorator
712
+ # def slate_gray: () -> Decorator
713
+ # def snow: () -> Decorator
714
+ # def spring_green: () -> Decorator
715
+ # def spring_green1: () -> Decorator
716
+ # def spring_green2: () -> Decorator
717
+ # def spring_green2_47: () -> Decorator
718
+ # def spring_green3: () -> Decorator
719
+ # def spring_green3_41: () -> Decorator
720
+ # def spring_green4: () -> Decorator
721
+ # def steel_blue: () -> Decorator
722
+ # def steel_blue1: () -> Decorator
723
+ # def steel_blue1_81: () -> Decorator
724
+ # def steel_blue3: () -> Decorator
725
+ # def tan: () -> Decorator
726
+ # def teal: () -> Decorator
727
+ # def teal_system: () -> Decorator
728
+ # def thistle: () -> Decorator
729
+ # def thistle1: () -> Decorator
730
+ # def thistle3: () -> Decorator
731
+ # def tomato: () -> Decorator
732
+ # def turquoise: () -> Decorator
733
+ # def turquoise2: () -> Decorator
734
+ # def turquoise4: () -> Decorator
735
+ # def violet: () -> Decorator
736
+ # def wheat: () -> Decorator
737
+ # def wheat1: () -> Decorator
738
+ # def wheat4: () -> Decorator
739
+ # def white: () -> Decorator
740
+ # def white_smoke: () -> Decorator
741
+ # def white_system: () -> Decorator
742
+ # def yellow: () -> Decorator
743
+ # def yellow1: () -> Decorator
744
+ # def yellow2: () -> Decorator
745
+ # def yellow3: () -> Decorator
746
+ # def yellow3_184: () -> Decorator
747
+ # def yellow4: () -> Decorator
748
+ # def yellow4_106: () -> Decorator
749
+ # def yellow_green: () -> Decorator
750
+ # def yellow_system: () -> Decorator
751
+
752
+ Sai::NamedColors.names.each do |color|
753
+ define_method(color) do
754
+ apply_named_color(:foreground, color)
755
+ end
756
+ define_method(:"on_#{color}") do
757
+ apply_named_color(:background, color)
758
+ end
759
+ end
760
+
761
+ private
762
+
763
+ # Apply a named color to the specified style type
764
+ #
765
+ # @author {https://aaronmallen.me Aaron Allen}
766
+ # @since 0.1.0
767
+ #
768
+ # @api private
769
+ #
770
+ # @param style_type [Symbol] the style type to apply the color to
771
+ # @param color [Symbol] the color to apply
772
+ #
773
+ # @return [Decorator] a new instance of Decorator with the color applied
774
+ # @rbs (Conversion::ColorSequence::style_type style_type, Symbol color) -> Decorator
775
+ def apply_named_color(style_type, color)
776
+ dup.tap { |duped| duped.instance_variable_set(:"@#{style_type}", color) } #: Decorator
777
+ end
778
+ end
779
+ end
780
+ end