diff --git a/superset-frontend/package-lock.json b/superset-frontend/package-lock.json
index de2d1a60f81f4..2e845ffab4f53 100644
--- a/superset-frontend/package-lock.json
+++ b/superset-frontend/package-lock.json
@@ -51,6 +51,7 @@
"@superset-ui/switchboard": "file:./packages/superset-ui-switchboard",
"@vx/responsive": "^0.0.195",
"abortcontroller-polyfill": "^1.1.9",
+ "ace-builds": "^1.4.14",
"antd": "^4.9.4",
"array-move": "^2.2.1",
"babel-plugin-typescript-to-proptypes": "^2.0.0",
@@ -24403,9 +24404,9 @@
}
},
"node_modules/ace-builds": {
- "version": "1.4.13",
- "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.4.13.tgz",
- "integrity": "sha512-SOLzdaQkY6ecPKYRDDg+MY1WoGgXA34cIvYJNNoBMGGUswHmlauU2Hy0UL96vW0Fs/LgFbMUjD+6vqzWTldIYQ=="
+ "version": "1.4.14",
+ "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.4.14.tgz",
+ "integrity": "sha512-NBOQlm9+7RBqRqZwimpgquaLeTJFayqb9UEPtTkpC3TkkwDnlsT/TwsCC0svjt9kEZ6G9mH5AEOHSz6Q/HrzQQ=="
},
"node_modules/acorn": {
"version": "7.1.1",
@@ -58467,6 +58468,8 @@
"license": "Apache-2.0",
"dependencies": {
"@react-icons/all-files": "^4.1.0",
+ "@types/enzyme": "^3.10.5",
+ "@types/react": "*",
"lodash": "^4.17.15",
"prop-types": "^15.7.2"
},
@@ -58479,10 +58482,11 @@
"@testing-library/react": "^11.2.0",
"@testing-library/react-hooks": "^5.0.3",
"@testing-library/user-event": "^12.7.0",
- "@types/enzyme": "^3.10.5",
- "@types/react": "*",
+ "ace-builds": "^1.4.14",
"antd": "^4.9.4",
+ "brace": "^0.11.1",
"react": "^16.13.1",
+ "react-ace": "^9.4.4",
"react-dom": "^16.13.1"
}
},
@@ -59324,6 +59328,7 @@
"prop-types": "^15.6.2"
},
"peerDependencies": {
+ "@emotion/react": "^11.4.1",
"@superset-ui/chart-controls": "*",
"@superset-ui/core": "*",
"react": "^16.13.1"
@@ -76177,6 +76182,8 @@
"version": "file:packages/superset-ui-chart-controls",
"requires": {
"@react-icons/all-files": "^4.1.0",
+ "@types/enzyme": "^3.10.5",
+ "@types/react": "*",
"lodash": "^4.17.15",
"prop-types": "^15.7.2"
}
@@ -79091,9 +79098,9 @@
}
},
"ace-builds": {
- "version": "1.4.13",
- "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.4.13.tgz",
- "integrity": "sha512-SOLzdaQkY6ecPKYRDDg+MY1WoGgXA34cIvYJNNoBMGGUswHmlauU2Hy0UL96vW0Fs/LgFbMUjD+6vqzWTldIYQ=="
+ "version": "1.4.14",
+ "resolved": "https://registry.npmjs.org/ace-builds/-/ace-builds-1.4.14.tgz",
+ "integrity": "sha512-NBOQlm9+7RBqRqZwimpgquaLeTJFayqb9UEPtTkpC3TkkwDnlsT/TwsCC0svjt9kEZ6G9mH5AEOHSz6Q/HrzQQ=="
},
"acorn": {
"version": "7.1.1",
diff --git a/superset-frontend/package.json b/superset-frontend/package.json
index f122d09464390..edf122a24992c 100644
--- a/superset-frontend/package.json
+++ b/superset-frontend/package.json
@@ -111,6 +111,7 @@
"@superset-ui/switchboard": "file:./packages/superset-ui-switchboard",
"@vx/responsive": "^0.0.195",
"abortcontroller-polyfill": "^1.1.9",
+ "ace-builds": "^1.4.14",
"antd": "^4.9.4",
"array-move": "^2.2.1",
"babel-plugin-typescript-to-proptypes": "^2.0.0",
diff --git a/superset-frontend/packages/superset-ui-chart-controls/package.json b/superset-frontend/packages/superset-ui-chart-controls/package.json
index bdb6be4daf846..1890a5e38a08b 100644
--- a/superset-frontend/packages/superset-ui-chart-controls/package.json
+++ b/superset-frontend/packages/superset-ui-chart-controls/package.json
@@ -24,6 +24,8 @@
],
"dependencies": {
"@react-icons/all-files": "^4.1.0",
+ "@types/enzyme": "^3.10.5",
+ "@types/react": "*",
"lodash": "^4.17.15",
"prop-types": "^15.7.2"
},
@@ -36,10 +38,11 @@
"@testing-library/react": "^11.2.0",
"@testing-library/react-hooks": "^5.0.3",
"@testing-library/user-event": "^12.7.0",
- "@types/enzyme": "^3.10.5",
- "@types/react": "*",
+ "ace-builds": "^1.4.14",
"antd": "^4.9.4",
+ "brace": "^0.11.1",
"react": "^16.13.1",
+ "react-ace": "^9.4.4",
"react-dom": "^16.13.1"
},
"publishConfig": {
diff --git a/superset-frontend/packages/superset-ui-chart-controls/src/components/ColumnOption.tsx b/superset-frontend/packages/superset-ui-chart-controls/src/components/ColumnOption.tsx
index dd7775ec4dd06..fce2e8ff2ad07 100644
--- a/superset-frontend/packages/superset-ui-chart-controls/src/components/ColumnOption.tsx
+++ b/superset-frontend/packages/superset-ui-chart-controls/src/components/ColumnOption.tsx
@@ -20,10 +20,10 @@ import React, { useState, ReactNode, useLayoutEffect } from 'react';
import { css, styled, SupersetTheme } from '@superset-ui/core';
import { Tooltip } from './Tooltip';
import { ColumnTypeLabel } from './ColumnTypeLabel/ColumnTypeLabel';
-import InfoTooltipWithTrigger from './InfoTooltipWithTrigger';
import CertifiedIconWithTooltip from './CertifiedIconWithTooltip';
import { ColumnMeta } from '../types';
import { getColumnLabelText, getColumnTooltipNode } from './labelUtils';
+import { SQLPopover } from './SQLPopover';
export type ColumnOptionProps = {
column: ColumnMeta;
@@ -69,17 +69,7 @@ export function ColumnOption({
{getColumnLabelText(column)}
-
- {hasExpression && (
-