abachrome 0.1.5 → 0.1.6

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 (73) hide show
  1. checksums.yaml +4 -4
  2. data/abachrome.gemspec +1 -0
  3. data/devenv.nix +1 -1
  4. data/lib/abachrome/abc_decimal.rb +38 -35
  5. data/lib/abachrome/color.rb +37 -10
  6. data/lib/abachrome/color_mixins/blend.rb +7 -5
  7. data/lib/abachrome/color_mixins/lighten.rb +8 -6
  8. data/lib/abachrome/color_mixins/spectral_mix.rb +70 -0
  9. data/lib/abachrome/color_mixins/to_colorspace.rb +10 -8
  10. data/lib/abachrome/color_mixins/to_grayscale.rb +87 -0
  11. data/lib/abachrome/color_mixins/to_lrgb.rb +14 -12
  12. data/lib/abachrome/color_mixins/to_oklab.rb +16 -14
  13. data/lib/abachrome/color_mixins/to_oklch.rb +12 -10
  14. data/lib/abachrome/color_mixins/to_srgb.rb +17 -15
  15. data/lib/abachrome/color_models/cmyk.rb +159 -0
  16. data/lib/abachrome/color_models/hsv.rb +5 -3
  17. data/lib/abachrome/color_models/lms.rb +3 -1
  18. data/lib/abachrome/color_models/oklab.rb +3 -1
  19. data/lib/abachrome/color_models/oklch.rb +6 -4
  20. data/lib/abachrome/color_models/rgb.rb +4 -2
  21. data/lib/abachrome/color_models/xyz.rb +3 -1
  22. data/lib/abachrome/color_models/yiq.rb +37 -0
  23. data/lib/abachrome/color_space.rb +28 -14
  24. data/lib/abachrome/converter.rb +10 -8
  25. data/lib/abachrome/converters/base.rb +13 -11
  26. data/lib/abachrome/converters/cmyk_to_srgb.rb +42 -0
  27. data/lib/abachrome/converters/lms_to_lrgb.rb +5 -3
  28. data/lib/abachrome/converters/lms_to_srgb.rb +6 -4
  29. data/lib/abachrome/converters/lms_to_xyz.rb +5 -3
  30. data/lib/abachrome/converters/lrgb_to_lms.rb +3 -1
  31. data/lib/abachrome/converters/lrgb_to_oklab.rb +5 -3
  32. data/lib/abachrome/converters/lrgb_to_srgb.rb +6 -4
  33. data/lib/abachrome/converters/lrgb_to_xyz.rb +5 -3
  34. data/lib/abachrome/converters/oklab_to_lms.rb +9 -7
  35. data/lib/abachrome/converters/oklab_to_lrgb.rb +7 -7
  36. data/lib/abachrome/converters/oklab_to_oklch.rb +4 -2
  37. data/lib/abachrome/converters/oklab_to_srgb.rb +4 -2
  38. data/lib/abachrome/converters/oklch_to_lrgb.rb +5 -3
  39. data/lib/abachrome/converters/oklch_to_oklab.rb +5 -3
  40. data/lib/abachrome/converters/oklch_to_srgb.rb +6 -4
  41. data/lib/abachrome/converters/oklch_to_xyz.rb +6 -4
  42. data/lib/abachrome/converters/srgb_to_cmyk.rb +64 -0
  43. data/lib/abachrome/converters/srgb_to_lrgb.rb +5 -3
  44. data/lib/abachrome/converters/srgb_to_oklab.rb +4 -2
  45. data/lib/abachrome/converters/srgb_to_oklch.rb +5 -3
  46. data/lib/abachrome/converters/srgb_to_yiq.rb +49 -0
  47. data/lib/abachrome/converters/xyz_to_lms.rb +5 -3
  48. data/lib/abachrome/converters/xyz_to_oklab.rb +5 -3
  49. data/lib/abachrome/converters/yiq_to_srgb.rb +47 -0
  50. data/lib/abachrome/gamut/base.rb +3 -3
  51. data/lib/abachrome/gamut/p3.rb +3 -3
  52. data/lib/abachrome/gamut/rec2020.rb +2 -2
  53. data/lib/abachrome/gamut/srgb.rb +4 -2
  54. data/lib/abachrome/illuminants/base.rb +2 -2
  55. data/lib/abachrome/illuminants/d50.rb +2 -2
  56. data/lib/abachrome/illuminants/d55.rb +2 -2
  57. data/lib/abachrome/illuminants/d65.rb +2 -2
  58. data/lib/abachrome/illuminants/d75.rb +2 -2
  59. data/lib/abachrome/named/css.rb +149 -149
  60. data/lib/abachrome/named/tailwind.rb +265 -265
  61. data/lib/abachrome/outputs/css.rb +2 -2
  62. data/lib/abachrome/palette.rb +26 -25
  63. data/lib/abachrome/palette_mixins/interpolate.rb +3 -1
  64. data/lib/abachrome/palette_mixins/resample.rb +2 -2
  65. data/lib/abachrome/palette_mixins/stretch_luminance.rb +2 -2
  66. data/lib/abachrome/parsers/css.rb +86 -71
  67. data/lib/abachrome/parsers/hex.rb +2 -2
  68. data/lib/abachrome/parsers/tailwind.rb +8 -8
  69. data/lib/abachrome/spectral.rb +277 -0
  70. data/lib/abachrome/to_abcd.rb +4 -4
  71. data/lib/abachrome/version.rb +2 -2
  72. data/lib/abachrome.rb +66 -10
  73. metadata +29 -3
@@ -1,4 +1,4 @@
1
- #
1
+ # frozen_string_literal: true
2
2
 
3
3
  module Abachrome
4
4
  module Named
@@ -7,291 +7,291 @@ module Abachrome
7
7
  # Each color has shades from 50 to 950
8
8
 
9
9
  COLORS = {
10
- 'slate' => {
11
- '50' => [248, 250, 252],
12
- '100' => [241, 245, 249],
13
- '200' => [226, 232, 240],
14
- '300' => [203, 213, 225],
15
- '400' => [148, 163, 184],
16
- '500' => [100, 116, 139],
17
- '600' => [71, 85, 105],
18
- '700' => [51, 65, 85],
19
- '800' => [30, 41, 59],
20
- '900' => [15, 23, 42],
21
- '950' => [2, 6, 23]
10
+ "slate" => {
11
+ "50" => [248, 250, 252],
12
+ "100" => [241, 245, 249],
13
+ "200" => [226, 232, 240],
14
+ "300" => [203, 213, 225],
15
+ "400" => [148, 163, 184],
16
+ "500" => [100, 116, 139],
17
+ "600" => [71, 85, 105],
18
+ "700" => [51, 65, 85],
19
+ "800" => [30, 41, 59],
20
+ "900" => [15, 23, 42],
21
+ "950" => [2, 6, 23]
22
22
  },
23
- 'gray' => {
24
- '50' => [249, 250, 251],
25
- '100' => [243, 244, 246],
26
- '200' => [229, 231, 235],
27
- '300' => [209, 213, 219],
28
- '400' => [156, 163, 175],
29
- '500' => [107, 114, 128],
30
- '600' => [75, 85, 99],
31
- '700' => [55, 65, 81],
32
- '800' => [31, 41, 55],
33
- '900' => [17, 24, 39],
34
- '950' => [3, 7, 18]
23
+ "gray" => {
24
+ "50" => [249, 250, 251],
25
+ "100" => [243, 244, 246],
26
+ "200" => [229, 231, 235],
27
+ "300" => [209, 213, 219],
28
+ "400" => [156, 163, 175],
29
+ "500" => [107, 114, 128],
30
+ "600" => [75, 85, 99],
31
+ "700" => [55, 65, 81],
32
+ "800" => [31, 41, 55],
33
+ "900" => [17, 24, 39],
34
+ "950" => [3, 7, 18]
35
35
  },
36
- 'zinc' => {
37
- '50' => [250, 250, 250],
38
- '100' => [244, 244, 245],
39
- '200' => [228, 228, 231],
40
- '300' => [212, 212, 216],
41
- '400' => [161, 161, 170],
42
- '500' => [113, 113, 122],
43
- '600' => [82, 82, 91],
44
- '700' => [63, 63, 70],
45
- '800' => [39, 39, 42],
46
- '900' => [24, 24, 27],
47
- '950' => [9, 9, 11]
36
+ "zinc" => {
37
+ "50" => [250, 250, 250],
38
+ "100" => [244, 244, 245],
39
+ "200" => [228, 228, 231],
40
+ "300" => [212, 212, 216],
41
+ "400" => [161, 161, 170],
42
+ "500" => [113, 113, 122],
43
+ "600" => [82, 82, 91],
44
+ "700" => [63, 63, 70],
45
+ "800" => [39, 39, 42],
46
+ "900" => [24, 24, 27],
47
+ "950" => [9, 9, 11]
48
48
  },
49
- 'neutral' => {
50
- '50' => [250, 250, 250],
51
- '100' => [245, 245, 245],
52
- '200' => [229, 229, 229],
53
- '300' => [212, 212, 212],
54
- '400' => [163, 163, 163],
55
- '500' => [115, 115, 115],
56
- '600' => [82, 82, 82],
57
- '700' => [64, 64, 64],
58
- '800' => [38, 38, 38],
59
- '900' => [23, 23, 23],
60
- '950' => [10, 10, 10]
49
+ "neutral" => {
50
+ "50" => [250, 250, 250],
51
+ "100" => [245, 245, 245],
52
+ "200" => [229, 229, 229],
53
+ "300" => [212, 212, 212],
54
+ "400" => [163, 163, 163],
55
+ "500" => [115, 115, 115],
56
+ "600" => [82, 82, 82],
57
+ "700" => [64, 64, 64],
58
+ "800" => [38, 38, 38],
59
+ "900" => [23, 23, 23],
60
+ "950" => [10, 10, 10]
61
61
  },
62
- 'stone' => {
63
- '50' => [250, 250, 249],
64
- '100' => [245, 245, 244],
65
- '200' => [231, 229, 228],
66
- '300' => [214, 211, 209],
67
- '400' => [168, 162, 158],
68
- '500' => [120, 113, 108],
69
- '600' => [87, 83, 78],
70
- '700' => [68, 64, 60],
71
- '800' => [41, 37, 36],
72
- '900' => [28, 25, 23],
73
- '950' => [12, 10, 9]
62
+ "stone" => {
63
+ "50" => [250, 250, 249],
64
+ "100" => [245, 245, 244],
65
+ "200" => [231, 229, 228],
66
+ "300" => [214, 211, 209],
67
+ "400" => [168, 162, 158],
68
+ "500" => [120, 113, 108],
69
+ "600" => [87, 83, 78],
70
+ "700" => [68, 64, 60],
71
+ "800" => [41, 37, 36],
72
+ "900" => [28, 25, 23],
73
+ "950" => [12, 10, 9]
74
74
  },
75
- 'red' => {
76
- '50' => [254, 242, 242],
77
- '100' => [254, 226, 226],
78
- '200' => [254, 202, 202],
79
- '300' => [252, 165, 165],
80
- '400' => [248, 113, 113],
81
- '500' => [239, 68, 68],
82
- '600' => [220, 38, 38],
83
- '700' => [185, 28, 28],
84
- '800' => [153, 27, 27],
85
- '900' => [127, 29, 29],
86
- '950' => [69, 10, 10]
75
+ "red" => {
76
+ "50" => [254, 242, 242],
77
+ "100" => [254, 226, 226],
78
+ "200" => [254, 202, 202],
79
+ "300" => [252, 165, 165],
80
+ "400" => [248, 113, 113],
81
+ "500" => [239, 68, 68],
82
+ "600" => [220, 38, 38],
83
+ "700" => [185, 28, 28],
84
+ "800" => [153, 27, 27],
85
+ "900" => [127, 29, 29],
86
+ "950" => [69, 10, 10]
87
87
  },
88
- 'orange' => {
89
- '50' => [255, 247, 237],
90
- '100' => [255, 237, 213],
91
- '200' => [254, 215, 170],
92
- '300' => [253, 186, 116],
93
- '400' => [251, 146, 60],
94
- '500' => [249, 115, 22],
95
- '600' => [234, 88, 12],
96
- '700' => [194, 65, 12],
97
- '800' => [154, 52, 18],
98
- '900' => [124, 45, 18],
99
- '950' => [67, 20, 7]
88
+ "orange" => {
89
+ "50" => [255, 247, 237],
90
+ "100" => [255, 237, 213],
91
+ "200" => [254, 215, 170],
92
+ "300" => [253, 186, 116],
93
+ "400" => [251, 146, 60],
94
+ "500" => [249, 115, 22],
95
+ "600" => [234, 88, 12],
96
+ "700" => [194, 65, 12],
97
+ "800" => [154, 52, 18],
98
+ "900" => [124, 45, 18],
99
+ "950" => [67, 20, 7]
100
100
  },
101
- 'amber' => {
102
- '50' => [255, 251, 235],
103
- '100' => [254, 243, 199],
104
- '200' => [253, 230, 138],
105
- '300' => [252, 211, 77],
106
- '400' => [251, 191, 36],
107
- '500' => [245, 158, 11],
108
- '600' => [217, 119, 6],
109
- '700' => [180, 83, 9],
110
- '800' => [146, 64, 14],
111
- '900' => [120, 53, 15],
112
- '950' => [69, 26, 3]
101
+ "amber" => {
102
+ "50" => [255, 251, 235],
103
+ "100" => [254, 243, 199],
104
+ "200" => [253, 230, 138],
105
+ "300" => [252, 211, 77],
106
+ "400" => [251, 191, 36],
107
+ "500" => [245, 158, 11],
108
+ "600" => [217, 119, 6],
109
+ "700" => [180, 83, 9],
110
+ "800" => [146, 64, 14],
111
+ "900" => [120, 53, 15],
112
+ "950" => [69, 26, 3]
113
113
  },
114
- 'yellow' => {
115
- '50' => [254, 252, 232],
116
- '100' => [254, 249, 195],
117
- '200' => [254, 240, 138],
118
- '300' => [253, 224, 71],
119
- '400' => [250, 204, 21],
120
- '500' => [234, 179, 8],
121
- '600' => [202, 138, 4],
122
- '700' => [161, 98, 7],
123
- '800' => [133, 77, 14],
124
- '900' => [113, 63, 18],
125
- '950' => [66, 32, 6]
114
+ "yellow" => {
115
+ "50" => [254, 252, 232],
116
+ "100" => [254, 249, 195],
117
+ "200" => [254, 240, 138],
118
+ "300" => [253, 224, 71],
119
+ "400" => [250, 204, 21],
120
+ "500" => [234, 179, 8],
121
+ "600" => [202, 138, 4],
122
+ "700" => [161, 98, 7],
123
+ "800" => [133, 77, 14],
124
+ "900" => [113, 63, 18],
125
+ "950" => [66, 32, 6]
126
126
  },
127
- 'lime' => {
128
- '50' => [247, 254, 231],
129
- '100' => [236, 252, 203],
130
- '200' => [217, 249, 157],
131
- '300' => [190, 242, 100],
132
- '400' => [163, 230, 53],
133
- '500' => [132, 204, 22],
134
- '600' => [101, 163, 13],
135
- '700' => [77, 124, 15],
136
- '800' => [63, 98, 18],
137
- '900' => [54, 83, 20],
138
- '950' => [26, 46, 5]
127
+ "lime" => {
128
+ "50" => [247, 254, 231],
129
+ "100" => [236, 252, 203],
130
+ "200" => [217, 249, 157],
131
+ "300" => [190, 242, 100],
132
+ "400" => [163, 230, 53],
133
+ "500" => [132, 204, 22],
134
+ "600" => [101, 163, 13],
135
+ "700" => [77, 124, 15],
136
+ "800" => [63, 98, 18],
137
+ "900" => [54, 83, 20],
138
+ "950" => [26, 46, 5]
139
139
  },
140
- 'green' => {
141
- '50' => [240, 253, 244],
142
- '100' => [220, 252, 231],
143
- '200' => [187, 247, 208],
144
- '300' => [134, 239, 172],
145
- '400' => [74, 222, 128],
146
- '500' => [34, 197, 94],
147
- '600' => [22, 163, 74],
148
- '700' => [21, 128, 61],
149
- '800' => [22, 101, 52],
150
- '900' => [20, 83, 45],
151
- '950' => [5, 46, 22]
140
+ "green" => {
141
+ "50" => [240, 253, 244],
142
+ "100" => [220, 252, 231],
143
+ "200" => [187, 247, 208],
144
+ "300" => [134, 239, 172],
145
+ "400" => [74, 222, 128],
146
+ "500" => [34, 197, 94],
147
+ "600" => [22, 163, 74],
148
+ "700" => [21, 128, 61],
149
+ "800" => [22, 101, 52],
150
+ "900" => [20, 83, 45],
151
+ "950" => [5, 46, 22]
152
152
  },
153
- 'emerald' => {
154
- '50' => [236, 253, 245],
155
- '100' => [209, 250, 229],
156
- '200' => [167, 243, 208],
157
- '300' => [110, 231, 183],
158
- '400' => [52, 211, 153],
159
- '500' => [16, 185, 129],
160
- '600' => [5, 150, 105],
161
- '700' => [4, 120, 87],
162
- '800' => [6, 95, 70],
163
- '900' => [6, 78, 59],
164
- '950' => [2, 44, 34]
153
+ "emerald" => {
154
+ "50" => [236, 253, 245],
155
+ "100" => [209, 250, 229],
156
+ "200" => [167, 243, 208],
157
+ "300" => [110, 231, 183],
158
+ "400" => [52, 211, 153],
159
+ "500" => [16, 185, 129],
160
+ "600" => [5, 150, 105],
161
+ "700" => [4, 120, 87],
162
+ "800" => [6, 95, 70],
163
+ "900" => [6, 78, 59],
164
+ "950" => [2, 44, 34]
165
165
  },
166
- 'teal' => {
167
- '50' => [240, 253, 250],
168
- '100' => [204, 251, 241],
169
- '200' => [153, 246, 228],
170
- '300' => [94, 234, 212],
171
- '400' => [45, 212, 191],
172
- '500' => [20, 184, 166],
173
- '600' => [13, 148, 136],
174
- '700' => [15, 118, 110],
175
- '800' => [17, 94, 89],
176
- '900' => [19, 78, 74],
177
- '950' => [4, 47, 46]
166
+ "teal" => {
167
+ "50" => [240, 253, 250],
168
+ "100" => [204, 251, 241],
169
+ "200" => [153, 246, 228],
170
+ "300" => [94, 234, 212],
171
+ "400" => [45, 212, 191],
172
+ "500" => [20, 184, 166],
173
+ "600" => [13, 148, 136],
174
+ "700" => [15, 118, 110],
175
+ "800" => [17, 94, 89],
176
+ "900" => [19, 78, 74],
177
+ "950" => [4, 47, 46]
178
178
  },
179
- 'cyan' => {
180
- '50' => [236, 254, 255],
181
- '100' => [207, 250, 254],
182
- '200' => [165, 243, 252],
183
- '300' => [103, 232, 249],
184
- '400' => [34, 211, 238],
185
- '500' => [6, 182, 212],
186
- '600' => [8, 145, 178],
187
- '700' => [14, 116, 144],
188
- '800' => [21, 94, 117],
189
- '900' => [22, 78, 99],
190
- '950' => [8, 51, 68]
179
+ "cyan" => {
180
+ "50" => [236, 254, 255],
181
+ "100" => [207, 250, 254],
182
+ "200" => [165, 243, 252],
183
+ "300" => [103, 232, 249],
184
+ "400" => [34, 211, 238],
185
+ "500" => [6, 182, 212],
186
+ "600" => [8, 145, 178],
187
+ "700" => [14, 116, 144],
188
+ "800" => [21, 94, 117],
189
+ "900" => [22, 78, 99],
190
+ "950" => [8, 51, 68]
191
191
  },
192
- 'sky' => {
193
- '50' => [240, 249, 255],
194
- '100' => [224, 242, 254],
195
- '200' => [186, 230, 253],
196
- '300' => [125, 211, 252],
197
- '400' => [56, 189, 248],
198
- '500' => [14, 165, 233],
199
- '600' => [2, 132, 199],
200
- '700' => [3, 105, 161],
201
- '800' => [7, 89, 133],
202
- '900' => [12, 74, 110],
203
- '950' => [8, 47, 73]
192
+ "sky" => {
193
+ "50" => [240, 249, 255],
194
+ "100" => [224, 242, 254],
195
+ "200" => [186, 230, 253],
196
+ "300" => [125, 211, 252],
197
+ "400" => [56, 189, 248],
198
+ "500" => [14, 165, 233],
199
+ "600" => [2, 132, 199],
200
+ "700" => [3, 105, 161],
201
+ "800" => [7, 89, 133],
202
+ "900" => [12, 74, 110],
203
+ "950" => [8, 47, 73]
204
204
  },
205
- 'blue' => {
206
- '50' => [239, 246, 255],
207
- '100' => [219, 234, 254],
208
- '200' => [191, 219, 254],
209
- '300' => [147, 197, 253],
210
- '400' => [96, 165, 250],
211
- '500' => [59, 130, 246],
212
- '600' => [37, 99, 235],
213
- '700' => [29, 78, 216],
214
- '800' => [30, 64, 175],
215
- '900' => [30, 58, 138],
216
- '950' => [23, 37, 84]
205
+ "blue" => {
206
+ "50" => [239, 246, 255],
207
+ "100" => [219, 234, 254],
208
+ "200" => [191, 219, 254],
209
+ "300" => [147, 197, 253],
210
+ "400" => [96, 165, 250],
211
+ "500" => [59, 130, 246],
212
+ "600" => [37, 99, 235],
213
+ "700" => [29, 78, 216],
214
+ "800" => [30, 64, 175],
215
+ "900" => [30, 58, 138],
216
+ "950" => [23, 37, 84]
217
217
  },
218
- 'indigo' => {
219
- '50' => [238, 242, 255],
220
- '100' => [224, 231, 255],
221
- '200' => [199, 210, 254],
222
- '300' => [165, 180, 252],
223
- '400' => [129, 140, 248],
224
- '500' => [99, 102, 241],
225
- '600' => [79, 70, 229],
226
- '700' => [67, 56, 202],
227
- '800' => [55, 48, 163],
228
- '900' => [49, 46, 129],
229
- '950' => [30, 27, 75]
218
+ "indigo" => {
219
+ "50" => [238, 242, 255],
220
+ "100" => [224, 231, 255],
221
+ "200" => [199, 210, 254],
222
+ "300" => [165, 180, 252],
223
+ "400" => [129, 140, 248],
224
+ "500" => [99, 102, 241],
225
+ "600" => [79, 70, 229],
226
+ "700" => [67, 56, 202],
227
+ "800" => [55, 48, 163],
228
+ "900" => [49, 46, 129],
229
+ "950" => [30, 27, 75]
230
230
  },
231
- 'violet' => {
232
- '50' => [245, 243, 255],
233
- '100' => [237, 233, 254],
234
- '200' => [221, 214, 254],
235
- '300' => [196, 181, 253],
236
- '400' => [167, 139, 250],
237
- '500' => [139, 92, 246],
238
- '600' => [124, 58, 237],
239
- '700' => [109, 40, 217],
240
- '800' => [91, 33, 182],
241
- '900' => [76, 29, 149],
242
- '950' => [46, 16, 101]
231
+ "violet" => {
232
+ "50" => [245, 243, 255],
233
+ "100" => [237, 233, 254],
234
+ "200" => [221, 214, 254],
235
+ "300" => [196, 181, 253],
236
+ "400" => [167, 139, 250],
237
+ "500" => [139, 92, 246],
238
+ "600" => [124, 58, 237],
239
+ "700" => [109, 40, 217],
240
+ "800" => [91, 33, 182],
241
+ "900" => [76, 29, 149],
242
+ "950" => [46, 16, 101]
243
243
  },
244
- 'purple' => {
245
- '50' => [250, 245, 255],
246
- '100' => [243, 232, 255],
247
- '200' => [233, 213, 255],
248
- '300' => [216, 180, 254],
249
- '400' => [192, 132, 252],
250
- '500' => [168, 85, 247],
251
- '600' => [147, 51, 234],
252
- '700' => [126, 34, 206],
253
- '800' => [107, 33, 168],
254
- '900' => [88, 28, 135],
255
- '950' => [59, 7, 100]
244
+ "purple" => {
245
+ "50" => [250, 245, 255],
246
+ "100" => [243, 232, 255],
247
+ "200" => [233, 213, 255],
248
+ "300" => [216, 180, 254],
249
+ "400" => [192, 132, 252],
250
+ "500" => [168, 85, 247],
251
+ "600" => [147, 51, 234],
252
+ "700" => [126, 34, 206],
253
+ "800" => [107, 33, 168],
254
+ "900" => [88, 28, 135],
255
+ "950" => [59, 7, 100]
256
256
  },
257
- 'fuchsia' => {
258
- '50' => [253, 244, 255],
259
- '100' => [250, 232, 255],
260
- '200' => [245, 208, 254],
261
- '300' => [240, 171, 252],
262
- '400' => [232, 121, 249],
263
- '500' => [217, 70, 239],
264
- '600' => [192, 38, 211],
265
- '700' => [162, 28, 175],
266
- '800' => [134, 25, 143],
267
- '900' => [112, 26, 117],
268
- '950' => [74, 4, 78]
257
+ "fuchsia" => {
258
+ "50" => [253, 244, 255],
259
+ "100" => [250, 232, 255],
260
+ "200" => [245, 208, 254],
261
+ "300" => [240, 171, 252],
262
+ "400" => [232, 121, 249],
263
+ "500" => [217, 70, 239],
264
+ "600" => [192, 38, 211],
265
+ "700" => [162, 28, 175],
266
+ "800" => [134, 25, 143],
267
+ "900" => [112, 26, 117],
268
+ "950" => [74, 4, 78]
269
269
  },
270
- 'pink' => {
271
- '50' => [253, 242, 248],
272
- '100' => [252, 231, 243],
273
- '200' => [251, 207, 232],
274
- '300' => [249, 168, 212],
275
- '400' => [244, 114, 182],
276
- '500' => [236, 72, 153],
277
- '600' => [219, 39, 119],
278
- '700' => [190, 24, 93],
279
- '800' => [157, 23, 77],
280
- '900' => [131, 24, 67],
281
- '950' => [80, 7, 36]
270
+ "pink" => {
271
+ "50" => [253, 242, 248],
272
+ "100" => [252, 231, 243],
273
+ "200" => [251, 207, 232],
274
+ "300" => [249, 168, 212],
275
+ "400" => [244, 114, 182],
276
+ "500" => [236, 72, 153],
277
+ "600" => [219, 39, 119],
278
+ "700" => [190, 24, 93],
279
+ "800" => [157, 23, 77],
280
+ "900" => [131, 24, 67],
281
+ "950" => [80, 7, 36]
282
282
  },
283
- 'rose' => {
284
- '50' => [255, 241, 242],
285
- '100' => [255, 228, 230],
286
- '200' => [254, 205, 211],
287
- '300' => [253, 164, 175],
288
- '400' => [251, 113, 133],
289
- '500' => [244, 63, 94],
290
- '600' => [225, 29, 72],
291
- '700' => [190, 18, 60],
292
- '800' => [159, 18, 57],
293
- '900' => [136, 19, 55],
294
- '950' => [76, 5, 25]
283
+ "rose" => {
284
+ "50" => [255, 241, 242],
285
+ "100" => [255, 228, 230],
286
+ "200" => [254, 205, 211],
287
+ "300" => [253, 164, 175],
288
+ "400" => [251, 113, 133],
289
+ "500" => [244, 63, 94],
290
+ "600" => [225, 29, 72],
291
+ "700" => [190, 18, 60],
292
+ "800" => [159, 18, 57],
293
+ "900" => [136, 19, 55],
294
+ "950" => [76, 5, 25]
295
295
  }
296
296
  }.freeze
297
297
  end
@@ -1,4 +1,4 @@
1
- #
1
+ # frozen_string_literal: true
2
2
 
3
3
  require_relative "../color"
4
4
  require_relative "../color_space"
@@ -116,4 +116,4 @@ module Abachrome
116
116
  end
117
117
  end
118
118
 
119
- # Copyright (c) 2025 Durable Programming, LLC. All rights reserved.
119
+ # Copyright (c) 2025 Durable Programming, LLC. All rights reserved.