2.2.3
- Resolves an issue where the parser would not reduce multiple spaces between an
ampersand and another simple selector in lossy mode (thanks to @adam-26).
2.2.2
- No longer hangs on an unescaped semicolon; instead the parser will throw
an exception for these cases.
2.2.1
- Allows a consumer to specify whitespace tokens when creating a new Node
(thanks to @Semigradsky).
2.2.0
- Added a new option to normalize whitespace when parsing the selector string
(thanks to @adam-26).
2.1.1
- Better unquoted value handling within attribute selectors
(thanks to @evilebottnawi).
2.1.0
- Added: Use string constants for all node types & expose them on the main
parser instance (thanks to @Aweary).
# 2.0.0
This release contains the following breaking changes:
- Renamed all
eachInside iterators to walk. For example, eachTag is now
walkTags, and eachInside is now walk.
- Renamed
Node#removeSelf() to Node#remove().
- Renamed
Container#remove() to Container#removeChild().
- Renamed
Node#raw to Node#raws (thanks to @davidtheclark).
- Now parses
& as the nesting selector, rather than a tag selector.
- Fixes misinterpretation of Sass interpolation (e.g.
#{foo}) as an
id selector (thanks to @davidtheclark).
and;
- Fixes parsing of attribute selectors with equals signs in them
(e.g.
[data-attr="foo=bar"]) (thanks to @montmanu).
- Adds
quoted and raw.unquoted properties to attribute nodes
(thanks to @davidtheclark).
1.3.3
- Fixes an infinite loop on
) and ] tokens when they had no opening pairs.
Now postcss-selector-parser will throw when it encounters these lone tokens.
# 1.3.2
- Now uses plain integers rather than
str.charCodeAt(0) for compiled builds.
1.3.1
- Update flatten to v1.x (thanks to @shinnn).
1.3.0
- Adds a new node type,
String, to fix a crash on selectors such as
foo:bar("test").
1.2.1
- Fixes a crash when the parser encountered a trailing combinator.
1.2.0
- A more descriptive error is thrown when the parser expects to find a
pseudo-class/pseudo-element (thanks to @ashelley).
- Adds support for line/column locations for selector nodes, as well as a
Node#sourceIndex method (thanks to @davidtheclark).
1.1.4
- Fixes a crash when a selector started with a
> combinator. The module will
now no longer throw if a selector has a leading/trailing combinator node.
1.1.3
- Fixes a crash on
@ tokens.
1.1.2
- Fixes an infinite loop caused by using parentheses in a non-pseudo element
context.
1.1.1
- Fixes a crash when a backslash ended a selector string.
1.1.0
- Adds support for replacing multiple nodes at once with
replaceWith
(thanks to @jonathantneal).
- Parser no longer throws on sequential IDs and trailing commas, to support
parsing of selector hacks.
1.0.1
- Fixes using
insertAfter and insertBefore during iteration.
1.0.0
- Adds
clone and replaceWith methods to nodes.
- Adds
insertBefore and insertAfter to containers.
- Stabilises API.
0.0.5
- Fixes crash on extra whitespace inside a pseudo selector's parentheses.
- Adds sort function to the container class.
- Enables the parser to pass its input through without transforming.
- Iteration-safe
each and eachInside.
0.0.4
- Tidy up redundant duplication.
- Fixes a bug where the parser would loop infinitely on universal selectors
inside pseudo selectors.
- Adds
length getter and eachInside, map, reduce to the container class.
- When a selector has been removed from the tree, the root node will no longer
cast it to a string.
- Adds node type iterators to the container class (e.g.
eachComment).
- Adds filter function to the container class.
- Adds split function to the container class.
- Create new node types by doing
parser.id(opts) etc.
- Adds support for pseudo classes anywhere in the selector.
0.0.3
- Adds
next and prev to the node class.
- Adds
first and last getters to the container class.
- Adds
every and some iterators to the container class.
- Add
empty alias for removeAll.
- Combinators are now types of node.
- Fixes the at method so that it is not an alias for
index.
- Tidy up creation of new nodes in the parser.
- Refactors how namespaces are handled for consistency & less redundant code.
- Refactors AST to use
nodes exclusively, and eliminates excessive nesting.
- Fixes nested pseudo parsing.
- Fixes whitespace parsing.
0.0.2
- Adds support for namespace selectors.
- Adds support for selectors joined by escaped spaces - such as
.\31\ 0.
0.0.1