You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
malwilley
changed the title
Evolved Issues Search: Add support for parentheses in query
Evolved Issues Search: Add basic support for paren characters in query
May 15, 2024
Ref #70953
For the new search component, parens will need to be parsed as separate
tokens and the parser cannot error out when faced with mismatched
parens. Therefore the parser should be updated to allow for this.
I've added a new token type, `PAREN`, which may be returned as part of
the parse result. When there are mismatched parentheses, this is now
matched which allows the parser to return a successful result. A new
config option has been added, `flattenParenGroups` (name could be
workshopped), which causes the `PAREN` token to take precedence over
`LOGIC_GROUP` and thus return parens separately from the contents when
enabled. When disabled (the default), logic groups are still returned as
you would expect.
Previous behavior:
- Unmatched parens will throw an error and return nothing from the
parser
- Matched parens are parsed as a `LOGIC_GROUP` with boolean operators,
free text, and filters inside the `token.inner` array.
New behavior (with the default `flattenParenGroups=false`):
- Unmatched parens will not throw an error. The parser will return a
normal result, with the unmatched parens parsed as a `PAREN` token.
- Matched parens will return a `LOGIC_GROUP` as normal.
New behavior (with the new `flattenParenGroups=true`):
- Unmatched parens will not throw an error. The parser will return a
normal result, with the unmatched parens parsed as a `PAREN` token.
- Matched parens will _not_ return a `LOGIC_GROUP`
You can see now that syntax highlighting is no longer broken when adding
a mismatched paren.
This has two parts:
Internal Figma
The text was updated successfully, but these errors were encountered: