From 1995658668e7b3751a5cfb190d13650aaadef226 Mon Sep 17 00:00:00 2001
From: Tom Robinson <tlrobinson@gmail.com>
Date: Fri, 23 Dec 2016 16:12:22 -0800
Subject: [PATCH] Lint fixes

---
 .../src/metabase/lib/expressions/parser.js    |  2 +-
 .../components/AggregationPopover.jsx         |  2 +-
 .../expressions/TokenizedExpression.jsx       | 41 +++++++++----------
 3 files changed, 22 insertions(+), 23 deletions(-)

diff --git a/frontend/src/metabase/lib/expressions/parser.js b/frontend/src/metabase/lib/expressions/parser.js
index 7a9b8ad8978..d0ef13d0259 100644
--- a/frontend/src/metabase/lib/expressions/parser.js
+++ b/frontend/src/metabase/lib/expressions/parser.js
@@ -2,7 +2,7 @@ import { Lexer, Parser, getImage } from "chevrotain";
 
 import _ from "underscore";
 
-import { formatFieldName, formatMetricName, formatExpressionName, formatAggregationName } from "../expressions";
+import { formatFieldName, formatExpressionName, formatAggregationName } from "../expressions";
 
 import {
     VALID_AGGREGATIONS,
diff --git a/frontend/src/metabase/query_builder/components/AggregationPopover.jsx b/frontend/src/metabase/query_builder/components/AggregationPopover.jsx
index 34fff01b20f..f6467d10641 100644
--- a/frontend/src/metabase/query_builder/components/AggregationPopover.jsx
+++ b/frontend/src/metabase/query_builder/components/AggregationPopover.jsx
@@ -114,7 +114,7 @@ export default class AggregationPopover extends Component {
     }
 
     render() {
-        const { availableAggregations, tableMetadata, isNew } = this.props;
+        const { availableAggregations, tableMetadata } = this.props;
         const { choosingField, editingAggregation } = this.state;
         const aggregation = NamedClause.getContent(this.state.aggregation);
 
diff --git a/frontend/src/metabase/query_builder/components/expressions/TokenizedExpression.jsx b/frontend/src/metabase/query_builder/components/expressions/TokenizedExpression.jsx
index 11a3d0755fd..66163c0abab 100644
--- a/frontend/src/metabase/query_builder/components/expressions/TokenizedExpression.jsx
+++ b/frontend/src/metabase/query_builder/components/expressions/TokenizedExpression.jsx
@@ -2,18 +2,34 @@ import React, { Component, PropTypes } from "react";
 
 import "./TokenizedExpression.css";
 
-import { parse } from "metabase/lib/expressions/parser";
-
 import cx from "classnames";
 
+export default class TokenizedExpression extends React.Component {
+    render() {
+        // TODO: use the Chevrotain parser or tokenizer
+        // let parsed = parse(this.props.source, this.props.parserInfo);
+        const parsed = parse(this.props.source);
+        return renderSyntaxTree(parsed);
+    }
+}
+
+const renderSyntaxTree = (node, index) =>
+    <span key={index} className={cx("Expression-node", "Expression-" + node.type, { "Expression-tokenized": node.tokenized })}>
+        {node.text != null ?
+            node.text
+        : node.children ?
+            node.children.map(renderSyntaxTree)
+        : null }
+    </span>
+
+
 function nextNonWhitespace(tokens, index) {
     while (index < tokens.length && /^\s+$/.test(tokens[++index])) {
     }
     return tokens[index];
 }
 
-function parsePartial(expressionString) {
-    // TODO: use the Chevrotain parser or tokenizer
+function parse(expressionString) {
     let tokens = (expressionString || " ").match(/[a-zA-Z]\w*|"(?:[^\\"]+|\\(?:[bfnrtv"\\/]|u[0-9a-fA-F]{4}))*"|\(|\)|\d+|\s+|[*/+-]|.+/g);
 
     let root = { type: "group", children: [] };
@@ -90,20 +106,3 @@ function parsePartial(expressionString) {
     }
     return root;
 }
-
-const renderSyntaxTree = (node, index) =>
-    <span key={index} className={cx("Expression-node", "Expression-" + node.type, { "Expression-tokenized": node.tokenized })}>
-        {node.text != null ?
-            node.text
-        : node.children ?
-            node.children.map(renderSyntaxTree)
-        : null }
-    </span>
-
-export default class TokenizedExpression extends React.Component {
-    render() {
-        // let parsed = parse(this.props.source, this.props.parserInfo);
-        const parsed = parsePartial(this.props.source);
-        return renderSyntaxTree(parsed);
-    }
-}
-- 
GitLab