Sarath Francis and GitHub
cdc8897519
Fix childless at-rule losing its semicolon before a comment ( #2115 )
...
A childless (statement) at-rule that is the last non-comment child but is
followed by comment siblings was stringified without its terminating
semicolon. On re-parse the trailing comments were folded into the
at-rule prelude and dropped, so building such a tree with append() or
insertBefore() silently lost the comment nodes.
Emit the semicolon when a childless at-rule still has following siblings
so the output round-trips.
2026-07-21 10:53:42 +02:00
Sarath Francis and GitHub
680ebe0244
Fix missing space when AtRule#params is set after parsing ( #2113 )
2026-07-19 10:23:15 +02:00
Andrey Sitnik
69d5b399fd
Fix Maximum call stack size exceeded error
2026-07-11 19:06:38 +00:00
James Garbutt
e712faf51f
fix: always call raw to retrieve raw values
...
Without this, it becomes impossible to override the stringifier with
your own raw computation, etc.
2026-05-04 12:37:08 +01:00
Andrey Sitnik
ee5ea010bc
Update dependencies
2026-04-30 20:16:14 +00:00
Andrey Sitnik
b2c52e2a9a
Revert stringifier changes because of the conflict with postcss-scss
2026-04-30 20:14:57 +00:00
Alan Zabihi and Andrey Sitnik
08acc2128f
Cache node.raws locally in Stringifier hot methods
...
Cache node.raws references locally in hot methods (atrule, block, body,
comment, decl) to avoid repeated property chain resolution. In decl(),
inline the common rawValue() path when node.raws.value exists. In raw(),
cache root.rawCache in a local variable. In body(), short-circuit
raw(child, 'before') when child.raws.before is already defined. In
block() and comment(), inline the raws check to skip raw() call overhead
when the value is already present.
2026-04-16 15:44:46 +02:00
Andrey Sitnik and GitHub
675d4292f7
Escape </style> in CSS output ( #2074 )
2026-04-15 16:38:35 +02:00
Andrey Sitnik
89b7f7ac78
Update dependencies and code style
2023-07-06 13:38:48 +02:00
Andrey Sitnik
e5a9cc1111
Clean up code style
2021-11-21 00:35:57 +01:00
Andrey Sitnik and GitHub
c0a025e543
Merge pull request #1675 from 43081j/stringifier-types
...
fix: add stringifier type definitions
2021-11-21 00:34:22 +01:00
James Garbutt
023b91c593
fix: add stringifier type definitions
2021-11-19 09:30:42 +00:00
Andrey Kim
c5059e1501
Convert istanbul ignores to c8
2021-11-15 23:10:13 +03:00
Aleks Hudochenkov
430ee0d902
Add Document node and related API ( #1498 )
2021-05-16 20:15:56 +02:00
Andrey Sitnik
843ab11b6e
Add Prettier
2021-03-11 19:11:37 -05:00
James Garbutt
37765f9c4b
remove root assignment
2020-12-29 13:44:55 +00:00
Andrey Sitnik
ffea543086
Improve error message on unknown type
2020-12-16 16:49:39 -05:00
Andrey Sitnik
0048657b13
Add "use strict" because it may effect on tokenizer performance
2020-09-08 01:46:46 -04:00
Andrey Sitnik
887783b405
Change plugin running code and mark moved nodes as dirty
2020-09-05 00:31:30 -04:00
Andrey Sitnik
fa6b5f9981
Add PrettierX
2020-07-06 17:24:57 -07:00
Andrey Sitnik
f157349a49
SHortut for \S regexp
2020-06-21 19:13:53 -04:00
Andrey Sitnik
288d2ffdb6
Clean up code
2020-06-21 19:13:53 -04:00
Andrey Sitnik
04b816cbde
Remove Babel
2020-06-21 19:13:52 -04:00
Andrey Sitnik
f43a45a907
Use .es6 ext for ES6 sources
2015-08-17 16:20:40 +03:00
Andrey Sitnik
9a1113fbff
Do not add before spaces to root stringifing
2015-08-17 16:20:38 +03:00
Andrey Sitnik
877f51b4fe
Split Stringify#style to submethods
2015-08-17 16:20:37 +03:00
Andrey Sitnik
42dd6ebfcb
Move Node#style to Stringifier
2015-08-17 16:20:37 +03:00
Andrey Sitnik
b76b5a34fc
Move code style properties to Node#raw
2015-08-17 16:20:37 +03:00
Andrey Sitnik
7d6f4de392
Make stringifier as a class
2015-08-17 16:20:37 +03:00
Andrey Sitnik
a6efbaf345
Move stringifing to separated file
2015-08-17 16:20:37 +03:00