Custom expression editor: decouple suggestions and diagnostics (#18773)
With the suggestions and highlighting being done through via lexical analysis only, there is no need to run the computationally-expensive syntactical analysis on every keystroke anymore. We only need to do that when the user finishes the editing and wants to use the expression.
Showing
- frontend/src/metabase/lib/expressions/diagnostics.js 65 additions, 0 deletionsfrontend/src/metabase/lib/expressions/diagnostics.js
- frontend/src/metabase/lib/expressions/process.js 1 addition, 19 deletionsfrontend/src/metabase/lib/expressions/process.js
- frontend/src/metabase/lib/expressions/suggest.js 1 addition, 1 deletionfrontend/src/metabase/lib/expressions/suggest.js
- frontend/src/metabase/lib/expressions/tokenizer.js 0 additions, 9 deletionsfrontend/src/metabase/lib/expressions/tokenizer.js
- frontend/src/metabase/query_builder/components/expressions/ExpressionEditorTextfield.jsx 55 additions, 145 deletions...lder/components/expressions/ExpressionEditorTextfield.jsx
- frontend/src/metabase/query_builder/components/expressions/TokenizedInput.jsx 0 additions, 1 deletion...e/query_builder/components/expressions/TokenizedInput.jsx
- frontend/test/metabase/lib/expressions/diagnostics.unit.spec.js 55 additions, 0 deletions...nd/test/metabase/lib/expressions/diagnostics.unit.spec.js
- frontend/test/metabase/lib/expressions/tokenizer.unit.spec.js 0 additions, 11 deletions...tend/test/metabase/lib/expressions/tokenizer.unit.spec.js
- frontend/test/metabase/scenarios/custom-column/cc-error-feedback.cy.spec.js 0 additions, 61 deletions...base/scenarios/custom-column/cc-error-feedback.cy.spec.js
Loading
Please register or sign in to comment