css_parser 1.5.0.pre → 1.5.0.pre2
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.
- checksums.yaml +4 -4
- data/lib/css_parser/parser.rb +13 -0
- data/lib/css_parser/regexps.rb +157 -4
- data/lib/css_parser/rule_set.rb +2 -2
- data/lib/css_parser/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bcad7a186fec9e364d7b615e821fad091db568cc
|
4
|
+
data.tar.gz: 4b0c9be7d82bf15144bda6bf09e1a0b328d7a5d0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d5a2a1d8f77eb1dc9ed16d03bf6141385238d3c3fb774b9352df83d49a6c64881ba26226d8d5ff88af68130c503fef4164a44f0a0a0aa0662911659b1f1ae877
|
7
|
+
data.tar.gz: 451dd77df3050fe539cc7098da6ba7f07b25fe977eae29d579f3ce55f85c7e72cfe9b45f25bf93d588f97e291ad2c0b6c553782980a9032ad22566f712a7bc9c
|
data/lib/css_parser/parser.rb
CHANGED
@@ -189,6 +189,19 @@ module CssParser
|
|
189
189
|
@rules << {:media_types => media_types, :rules => ruleset}
|
190
190
|
end
|
191
191
|
|
192
|
+
# Remove a CssParser RuleSet object.
|
193
|
+
#
|
194
|
+
# +media_types+ can be a symbol or an array of symbols.
|
195
|
+
def remove_rule_set!(ruleset, media_types = :all)
|
196
|
+
raise ArgumentError unless ruleset.kind_of?(CssParser::RuleSet)
|
197
|
+
|
198
|
+
media_types = [media_types].flatten.collect { |mt| CssParser.sanitize_media_query(mt)}
|
199
|
+
|
200
|
+
@rules.reject! do |rule|
|
201
|
+
rule[:media_types] == media_types && rule[:rules].to_s == ruleset.to_s
|
202
|
+
end
|
203
|
+
end
|
204
|
+
|
192
205
|
# Iterate through RuleSet objects.
|
193
206
|
#
|
194
207
|
# +media_types+ can be a symbol or an array of symbols.
|
data/lib/css_parser/regexps.rb
CHANGED
@@ -83,10 +83,163 @@ module CssParser
|
|
83
83
|
)/ix
|
84
84
|
|
85
85
|
# Colours
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
86
|
+
NAMED_COLOURS = %w[
|
87
|
+
aliceblue
|
88
|
+
antiquewhite
|
89
|
+
aqua
|
90
|
+
aquamarine
|
91
|
+
azure
|
92
|
+
beige
|
93
|
+
bisque
|
94
|
+
black
|
95
|
+
blanchedalmond
|
96
|
+
blue
|
97
|
+
blueviolet
|
98
|
+
brown
|
99
|
+
burlywood
|
100
|
+
cadetblue
|
101
|
+
chartreuse
|
102
|
+
chocolate
|
103
|
+
coral
|
104
|
+
cornflowerblue
|
105
|
+
cornsilk
|
106
|
+
crimson
|
107
|
+
cyan
|
108
|
+
darkblue
|
109
|
+
darkcyan
|
110
|
+
darkgoldenrod
|
111
|
+
darkgray
|
112
|
+
darkgreen
|
113
|
+
darkgrey
|
114
|
+
darkkhaki
|
115
|
+
darkmagenta
|
116
|
+
darkolivegreen
|
117
|
+
darkorange
|
118
|
+
darkorchid
|
119
|
+
darkred
|
120
|
+
darksalmon
|
121
|
+
darkseagreen
|
122
|
+
darkslateblue
|
123
|
+
darkslategray
|
124
|
+
darkslategrey
|
125
|
+
darkturquoise
|
126
|
+
darkviolet
|
127
|
+
deeppink
|
128
|
+
deepskyblue
|
129
|
+
dimgray
|
130
|
+
dimgrey
|
131
|
+
dodgerblue
|
132
|
+
firebrick
|
133
|
+
floralwhite
|
134
|
+
forestgreen
|
135
|
+
fuchsia
|
136
|
+
gainsboro
|
137
|
+
ghostwhite
|
138
|
+
gold
|
139
|
+
goldenrod
|
140
|
+
gray
|
141
|
+
green
|
142
|
+
greenyellow
|
143
|
+
grey
|
144
|
+
honeydew
|
145
|
+
hotpink
|
146
|
+
indianred
|
147
|
+
indigo
|
148
|
+
ivory
|
149
|
+
khaki
|
150
|
+
lavender
|
151
|
+
lavenderblush
|
152
|
+
lawngreen
|
153
|
+
lemonchiffon
|
154
|
+
lightblue
|
155
|
+
lightcoral
|
156
|
+
lightcyan
|
157
|
+
lightgoldenrodyellow
|
158
|
+
lightgray
|
159
|
+
lightgreen
|
160
|
+
lightgrey
|
161
|
+
lightpink
|
162
|
+
lightsalmon
|
163
|
+
lightseagreen
|
164
|
+
lightskyblue
|
165
|
+
lightslategray
|
166
|
+
lightslategrey
|
167
|
+
lightsteelblue
|
168
|
+
lightyellow
|
169
|
+
lime
|
170
|
+
limegreen
|
171
|
+
linen
|
172
|
+
magenta
|
173
|
+
maroon
|
174
|
+
mediumaquamarine
|
175
|
+
mediumblue
|
176
|
+
mediumorchid
|
177
|
+
mediumpurple
|
178
|
+
mediumseagreen
|
179
|
+
mediumslateblue
|
180
|
+
mediumspringgreen
|
181
|
+
mediumturquoise
|
182
|
+
mediumvioletred
|
183
|
+
midnightblue
|
184
|
+
mintcream
|
185
|
+
mistyrose
|
186
|
+
moccasin
|
187
|
+
navajowhite
|
188
|
+
navy
|
189
|
+
oldlace
|
190
|
+
olive
|
191
|
+
olivedrab
|
192
|
+
orange
|
193
|
+
orangered
|
194
|
+
orchid
|
195
|
+
palegoldenrod
|
196
|
+
palegreen
|
197
|
+
paleturquoise
|
198
|
+
palevioletred
|
199
|
+
papayawhip
|
200
|
+
peachpuff
|
201
|
+
peru
|
202
|
+
pink
|
203
|
+
plum
|
204
|
+
powderblue
|
205
|
+
purple
|
206
|
+
red
|
207
|
+
rosybrown
|
208
|
+
royalblue
|
209
|
+
saddlebrown
|
210
|
+
salmon
|
211
|
+
sandybrown
|
212
|
+
seagreen
|
213
|
+
seashell
|
214
|
+
sienna
|
215
|
+
silver
|
216
|
+
skyblue
|
217
|
+
slateblue
|
218
|
+
slategray
|
219
|
+
slategrey
|
220
|
+
snow
|
221
|
+
springgreen
|
222
|
+
steelblue
|
223
|
+
tan
|
224
|
+
teal
|
225
|
+
thistle
|
226
|
+
tomato
|
227
|
+
turquoise
|
228
|
+
violet
|
229
|
+
wheat
|
230
|
+
white
|
231
|
+
whitesmoke
|
232
|
+
yellow
|
233
|
+
yellowgreen
|
234
|
+
|
235
|
+
transparent
|
236
|
+
inherit
|
237
|
+
currentColor
|
238
|
+
]
|
239
|
+
RE_COLOUR_NUMERIC = /\b(hsl|rgb)\s*\(-?\s*-?\d+(\.\d+)?%?\s*%?,-?\s*-?\d+(\.\d+)?%?\s*%?,-?\s*-?\d+(\.\d+)?%?\s*%?\)/i
|
240
|
+
RE_COLOUR_NUMERIC_ALPHA = /\b(hsla|rgba)\s*\(-?\s*-?\d+(\.\d+)?%?\s*%?,-?\s*-?\d+(\.\d+)?%?\s*%?,-?\s*-?\d+(\.\d+)?%?\s*%?,-?\s*-?\d+(\.\d+)?%?\s*%?\)/i
|
241
|
+
RE_COLOUR_HEX = /\s*#([0-9a-fA-F]{6}|[0-9a-fA-F]{3})\b/
|
242
|
+
RE_COLOUR_NAMED = /\s*\b(#{NAMED_COLOURS.join('|')})\b/i
|
90
243
|
RE_COLOUR = Regexp.union(RE_COLOUR_NUMERIC, RE_COLOUR_NUMERIC_ALPHA, RE_COLOUR_HEX, RE_COLOUR_NAMED)
|
91
244
|
# :startdoc:
|
92
245
|
end
|
data/lib/css_parser/rule_set.rb
CHANGED
@@ -195,9 +195,9 @@ module CssParser
|
|
195
195
|
# can split easily on spaces.
|
196
196
|
#
|
197
197
|
# TODO: rgba, hsl, hsla
|
198
|
-
value.gsub!(RE_COLOUR) { |c| c.gsub(/(\s
|
198
|
+
value.gsub!(RE_COLOUR) { |c| c.gsub(/(\s*\,\s*)/, ',') }
|
199
199
|
|
200
|
-
matches = value.strip.split(
|
200
|
+
matches = value.strip.split(/\s+/)
|
201
201
|
|
202
202
|
t, r, b, l = nil
|
203
203
|
|
data/lib/css_parser/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: css_parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.5.0.
|
4
|
+
version: 1.5.0.pre2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Dunae
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|