Fix a bug when important has been set by another plugin #346
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request fixes a bug related to some of the value directives and the
important
property of a declaration.Some value directives assume that if the
important
property of a declaration istrue
, thenraws.important
has a value (the place of the directive). This is the case if theimportant
is coming from the source code and the directive has been placed after!important
, but that is not the case, for example, ifimportant
was set by a previouspostcss
plugin. In these cases, theimportant
property is true butraws.important
isundefined
, because the CSS in those cases will be something like this (the directive will end before the important):And in those cases the next error will be thrown:
Because of these types of conditions:
The solution is just to check for the existence of
raws.important
before trying to access to its string methods:Closes: #329