Releases: witchcraftjs/expressit
v0.4.2
0.4.2 (2026-02-06)
⭐ New Features
examples: ShortcutContextParser can now take in a function that returns the dummyContext (238b7d6)
This makes it easier to work with it when the context is built in parts from
different parts of an app or if it might grow stale after the parser is
initialized.
🐛 Fixes
fixed typedoc (649f18e)
v0.4.1
v0.4.0
v0.3.1
v0.2.2
v0.2.1
v0.2.0
0.2.0 (2024-06-09)
⭐ New Features
- simplified auto-quoting/escape in autocomplete (252726e)
- Note that values that have had their quotes escaped but have no spaces are no longer quoted.
🐛 Fixes
- fix demo lockfile (adbef9a)
⚠️ BREAKING CHANGES
- converted classes to plain object (baaab41)
-
The nodes are no longer classes but simple objects. Readonly has been removed
from all the properties of their interfaces and the parser result is not longer
"sealed". They should still not be mutated, but if you really want to you can. -
Nodes no longer have a parent property to avoid circular references. Instead
you can generate a parents map from a parser result to use getParent on if needed. -
To check a node or token is of a certain type, they now all have a
typeproperty. -
To check if an object is a node or a token,
you can use the newisNodeandisTokenutility functions. -
The non-node normalized Condition and Expression classes
are now the NormalizedCondition and NormalizedExpression interfaces.
Their object will return false if passed to isNode/Token, but they
have an AST_TYPE to be able to tell them apart. -
All node creation functions have been moved to /ast/*, /ast/classes has been removed.
-
Several internal helpers have been moved, there is now an internals export
(just in case), it's not really meant to be used.