diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/.gitignore b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/.gitignore index 168f2efa8157..a69307bb776f 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/.gitignore +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/.gitignore @@ -1,30 +1,56 @@ -.babelrc -.cache -.cache-loader .DS_Store +*.DS_Store + +# Logs +logs/ +*.log + +# Cache +.bundle/ +.happo/ +.idea/ +.next/ +.cache .eslintcache -.eslintignore -.eslintrc.js .idea .npm -.prettierignore .vscode .yarnclean -*.log -*.map -*.min.js - -babel.config.js +# Directories build/ coverage/ +dist/ esm/ -jest.config.js lib/ -logs/ +public/ node_modules/ -package-lock.json +tmp/ + +# Custom +*.map +*.min.js +test-changelog.md + +# Configs (provided by Nimbus) +.babelrc +.eslintignore +.eslintrc.js +.flowconfig +.prettierignore +babel.config.js +jest.config.js prettier.config.js +tsconfig.eslint.json tsconfig.json +tsconfig.options.json +*.tsbuildinfo +webpack.config.js + +# Lock files, libs should not have lock files +npm-shrinkwrap.json +package-lock.json yarn.lock +old-yarn.lock +.*.swp _gh-pages \ No newline at end of file diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/README.md b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/README.md index aac648f24e37..c1b878283482 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/README.md +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/README.md @@ -1,8 +1,7 @@ # @superset-ui/plugins-deckgl 🔌💡 [![Codecov branch](https://img.shields.io/codecov/c/github/apache-superset/superset-ui-plugins-deckgl/master.svg?style=flat-square)](https://codecov.io/gh/apache-superset/superset-ui-plugins-deckgl/branch/master) -[![Build Status](https://img.shields.io/travis/com/apache-superset/superset-ui-plugins-deckgl/master.svg?style=flat-square -)](https://travis-ci.com/apache-superset/superset-ui-plugins-deckgl) +[![Build Status](https://img.shields.io/travis/com/apache-superset/superset-ui-plugins-deckgl/master.svg?style=flat-square)](https://travis-ci.com/apache-superset/superset-ui-plugins-deckgl) [![David](https://img.shields.io/david/dev/apache-superset/superset-ui-plugins-deckgl.svg?style=flat-square)](https://david-dm.org/apache-superset/superset-ui-plugins-deckgl?type=dev) [![Netlify Status](https://api.netlify.com/api/v1/badges/4d054ead-0e76-4e03-b684-797ca5924161/deploy-status)](https://app.netlify.com/sites/superset-ui-plugins-deckgl/deploys) @@ -14,14 +13,16 @@ Current master: https://superset-ui-plugins-deckgl.netlify.com ## Packages -| Package | Version | -|--|--| +| Package | Version | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [@superset-ui/legacy-preset-chart-deckgl](https://github.com/apache-superset/superset-ui-plugins-deckgl/tree/master/packages/superset-ui-legacy-preset-chart-deckgl) | [![Version](https://img.shields.io/npm/v/@superset-ui/legacy-preset-chart-deckgl.svg?style=flat-square)](https://img.shields.io/npm/v/@superset-ui/legacy-preset-chart-deckgl.svg?style=flat-square) | ## Contribution and development guide -Please read the [contributing guidelines](https://github.com/apache-superset/superset-ui/blob/master/CONTRIBUTING.md) which include development environment setup -and other things you should know about coding in this repo. +Please read the +[contributing guidelines](https://github.com/apache-superset/superset-ui/blob/master/CONTRIBUTING.md) +which include development environment setup and other things you should know about coding in this +repo. ### License diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/package.json b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/package.json index 53c027ed9c5f..1542cc8ae714 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/package.json +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/package.json @@ -4,25 +4,28 @@ "description": "Superset UI Plugins - deck.gl", "private": true, "scripts": { - "build": "yarn build:cjs && yarn build:esm && yarn run type:dts && yarn build:assets", - "build:cjs": "NODE_ENV=production beemo babel --extensions=\".js,.jsx,.ts,.tsx\" ./src --out-dir lib/ --delete-dir-on-start --minify --workspaces=\"@superset-ui/!(plugins-demo)\"", - "build:esm": "NODE_ENV=production beemo babel --extensions=\".js,.jsx,.ts,.tsx\" ./src --out-dir esm/ --delete-dir-on-start --esm --minify --workspaces=\"@superset-ui/!(plugins-demo)\"", - "build:assets": "node ./buildAssets.js", + "build": "yarn babel && yarn type && yarn build:assets", + "babel": "yarn babel:cjs && yarn babel:esm", + "babel:cjs": "nimbus babel --clean --workspaces=\"@superset-ui/!(plugins-demo)\"", + "babel:esm": "nimbus babel --clean --workspaces=\"@superset-ui/!(plugins-demo)\" --esm", + "build:assets": "node ./scripts/buildAssets.js", + "clean": "rm -rf ./packages/**/{lib,esm}", "commit": "superset-commit", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0", - "type": "NODE_ENV=production beemo typescript --workspaces=\"@superset-ui/((preset|plugin)-*)\" --noEmit", - "type:dts": "NODE_ENV=production beemo typescript --workspaces=\"@superset-ui/((preset|plugin)-*)\" --emitDeclarationOnly", - "lint": "beemo create-config prettier && beemo eslint \"./packages/*/{src,test,storybook}/**/*.{js,jsx,ts,tsx}\"", - "lint:fix": "beemo create-config prettier && beemo eslint --fix \"./packages/*/{src,test,storybook}/**/*.{js,jsx,ts,tsx}\"", - "jest": "beemo jest --color --coverage --react", + "format": "yarn prettier --write", + "jest": "NODE_ENV=test nimbus jest --coverage --verbose", + "lint": "nimbus eslint && nimbus prettier --check", + "lint:fix": "nimbus eslint --fix", + "prettier": "nimbus prettier", + "test": "yarn type", + "test:watch": "yarn lint:fix && yarn jest --watch", + "type": "nimbus typescript --build --reference-workspaces", + "prepare-release": "git checkout master && git pull --rebase origin master && lerna bootstrap && yarn install && yarn test", + "prerelease": "yarn build", + "pretest": "yarn lint", + "release": "yarn prepare-release && lerna publish --exact && yarn postrelease", "postrelease": "lerna run deploy-demo", - "prepare-release": "git checkout master && git pull --rebase origin master && lerna bootstrap && yarn run test", - "prerelease": "yarn run build", - "pretest": "yarn run lint", - "prettier": "beemo prettier \"./packages/*/{src,test,storybook}/**/*.{js,jsx,ts,tsx,json,md}\"", - "release": "yarn run prepare-release && lerna publish && yarn run postrelease", - "test": "yarn run type && yarn run jest", - "test:watch": "yarn run lint:fix && beemo create-config jest --react && jest --watch" + "storybook": "cd packages/superset-ui-plugins-demo && yarn storybook" }, "repository": "https://github.com/apache-superset/superset-ui-plugins-deckgl.git", "keywords": [ @@ -33,65 +36,99 @@ "analysis", "visualization", "react", - "d3", - "data-ui", - "vx" + "d3" ], "license": "Apache-2.0", "devDependencies": { - "@superset-ui/build-config": "^0.1.0", - "@superset-ui/chart": "^0.12.1", - "@superset-ui/chart-composition": "^0.12.1", - "@superset-ui/color": "^0.12.1", + "@airbnb/config-babel": "^2.1.3", + "@airbnb/config-eslint": "^2.1.3", + "@airbnb/config-jest": "^2.1.3", + "@airbnb/config-prettier": "^2.0.4", + "@airbnb/config-typescript": "^2.1.2", + "@airbnb/nimbus": "^2.1.3", + "@babel/plugin-transform-runtime": "^7.8.3", "@superset-ui/commit-config": "^0.0.9", - "@superset-ui/connection": "^0.12.0", - "@superset-ui/core": "^0.12.0", - "@superset-ui/dimension": "^0.12.0", - "@superset-ui/number-format": "^0.12.1", - "@superset-ui/query": "^0.12.2", - "@superset-ui/time-format": "^0.12.1", - "@superset-ui/translation": "^0.12.0", - "@types/react": "^16.8.8", - "core-js": "^3.0.1", + "@superset-ui/superset-ui": "^0.12.5", + "@types/enzyme": "^3.10.3", + "@types/jest": "^25.1.1", + "@types/jsdom": "^12.2.4", + "@types/react": "^16.9.0", + "@types/react-test-renderer": "^16.9.0", "csstype": "^2.6.3", + "enzyme": "^3.10.0", + "enzyme-adapter-react-16": "^1.15.1", + "enzyme-to-json": "^3.4.3", "fast-glob": "^3.0.1", "fs-extra": "^8.0.1", - "husky": "^3.0.3", - "lerna": "^3.2.1", - "lint-staged": "^9.2.1", - "luma.gl": "^7.3.0", - "react": "^16.6.0", - "react-dom": "^16.6.0", - "yarn": "^1.9.4" + "husky": "^4.2.1", + "jest-mock-console": "^1.0.0", + "lerna": "^3.15.0", + "lint-staged": "^10.0.7", + "luma.gl": "^7.3.2", + "react-test-renderer": "^16.9.0", + "react-dom": "^16.9.0", + "react": "^16.9.0" }, "engines": { - "node": ">=8.10.0" + "node": ">=10.10.0", + "npm": ">=6.8.0", + "yarn": ">=1.13.0" }, - "beemo": { - "module": "@superset-ui/build-config", + "workspaces": [ + "./packages/*" + ], + "nimbus": { "drivers": [ "babel", "eslint", - { - "driver": "jest", - "env": { - "NODE_ENV": "test" - } - }, + "jest", "prettier", "typescript" ], + "settings": { + "library": true, + "react": true, + "next": true, + "env": { + "corejs": 3, + "useBuiltIns": "usage" + } + }, + "babel": { + "plugins": [["@babel/plugin-transform-runtime", { "corejs": 3 }]] + }, + "jest": { + "timers": "real", + "setupFilesAfterEnv": [ + "@airbnb/config-jest/enzyme" + ], + "coverageThreshold": { + "global": { + "branches": 0, + "functions": 0, + "lines": 0, + "statements": 0 + } + } + }, + "eslint": { + "overrides": [ + { + "files": "*.{js,jsx,ts,tsx}", + "rules": { + "react/jsx-no-literals": "off", + "prefer-exponentiation-operator": "off", + "@typescript-eslint/no-explicit-any": ["warn", { "fixToUnknown": false }] + } + } + ] + }, "typescript": { "compilerOptions": { - "typeRoots": [ - "../../node_modules/vega-lite/typings" - ] + "emitDeclarationOnly": true } } }, - "workspaces": [ - "./packages/*" - ], "husky": { "hooks": { "pre-commit": "lint-staged", @@ -100,7 +137,7 @@ }, "lint-staged": { "./packages/*/{src,test,storybook}/**/*.{js,jsx,ts,tsx,json,md}": [ - "yarn run prettier --write", + "yarn prettier --write", "git add" ] } diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/AnimatableDeckGLContainer.jsx b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/AnimatableDeckGLContainer.jsx index 3f7e399ba805..fccfaf519a9e 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/AnimatableDeckGLContainer.jsx +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/AnimatableDeckGLContainer.jsx @@ -1,7 +1,6 @@ -/* eslint-disable react/jsx-handler-names */ -/* eslint-disable react/destructuring-assignment */ +/* eslint-disable react/jsx-sort-default-props */ +/* eslint-disable react/sort-prop-types */ /* eslint-disable react/forbid-prop-types */ -/* eslint-disable sort-keys */ /* eslint-disable react/require-default-props */ /** * Licensed to the Apache Software Foundation (ASF) under one diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/CategoricalDeckGLContainer.jsx b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/CategoricalDeckGLContainer.jsx index 8beef6141d04..a7ba604cc1df 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/CategoricalDeckGLContainer.jsx +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/CategoricalDeckGLContainer.jsx @@ -1,17 +1,9 @@ +/* eslint-disable react/sort-prop-types */ /* eslint-disable react/require-default-props */ /* eslint-disable react/no-unused-prop-types */ -/* eslint-disable react/forbid-prop-types */ /* eslint-disable react/no-access-state-in-setstate */ -/* eslint-disable compat/compat */ -/* eslint-disable react/destructuring-assignment */ -/* eslint-disable react/jsx-handler-names */ -/* eslint-disable react/no-unsafe */ -/* eslint-disable react/sort-comp */ /* eslint-disable camelcase */ /* eslint-disable no-prototype-builtins */ -/* eslint-disable sort-keys */ -/* eslint-disable no-eq-null */ -/* eslint-disable no-magic-numbers */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -107,6 +99,7 @@ export default class CategoricalDeckGLContainer extends React.PureComponent { }); } + // eslint-disable-next-line class-methods-use-this getStateFromProps(props, state) { const features = props.payload.data.features || []; const timestamps = features.map(f => f.__timestamp); @@ -178,6 +171,7 @@ export default class CategoricalDeckGLContainer extends React.PureComponent { return [getLayer(fd, filteredPayload, onAddFilter, setTooltip)]; } + // eslint-disable-next-line class-methods-use-this addColor(data, fd) { const c = fd.color_picker || { r: 0, g: 0, b: 0, a: 1 }; const colorFn = getScale(fd.color_scheme); @@ -233,7 +227,6 @@ export default class CategoricalDeckGLContainer extends React.PureComponent { end={this.state.end} getStep={this.state.getStep} values={this.state.values} - onValuesChange={this.onValuesChange} disabled={this.state.disabled} viewport={this.state.viewport} mapboxApiAccessToken={this.props.mapboxApiKey} diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/DeckGLContainer.jsx b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/DeckGLContainer.jsx index 48806a8c3e30..bd0049c068e5 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/DeckGLContainer.jsx +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/DeckGLContainer.jsx @@ -1,6 +1,6 @@ +/* eslint-disable react/jsx-sort-default-props */ +/* eslint-disable react/sort-prop-types */ /* eslint-disable react/jsx-handler-names */ -/* eslint-disable react/destructuring-assignment */ -/* eslint-disable sort-keys */ /* eslint-disable react/forbid-prop-types */ /** * Licensed to the Apache Software Foundation (ASF) under one @@ -98,13 +98,13 @@ export default class DeckGLContainer extends React.Component { return (
); } diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/BootstrapSliderWrapper.css b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/BootstrapSliderWrapper.css index c5d83f20a7d0..dc54046e4c25 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/BootstrapSliderWrapper.css +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/BootstrapSliderWrapper.css @@ -17,10 +17,9 @@ * under the License. */ .BootstrapSliderWrapper .slider-selection { - background: #efefef; + background: #efefef; } .BootstrapSliderWrapper .slider-handle { - background: #b3b3b3; + background: #b3b3b3; } - diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/Legend.css b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/Legend.css index 6b6345c0a002..706dfaf0cd23 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/Legend.css +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/Legend.css @@ -17,28 +17,28 @@ * under the License. */ div.legend { - font-size: 90%; - position: absolute; - background: #fff; - box-shadow: 0 0 4px rgba(0, 0, 0, 0.15); - margin: 24px; - padding: 12px 20px; - outline: none; - overflow-y: scroll; - max-height: 200px; + font-size: 90%; + position: absolute; + background: #fff; + box-shadow: 0 0 4px rgba(0, 0, 0, 0.15); + margin: 24px; + padding: 12px 20px; + outline: none; + overflow-y: scroll; + max-height: 200px; } ul.categories { - list-style: none; - padding-left: 0; - margin: 0; + list-style: none; + padding-left: 0; + margin: 0; } ul.categories li a { - color: rgb(51, 51, 51); - text-decoration: none; + color: rgb(51, 51, 51); + text-decoration: none; } ul.categories li a span { - margin-right: 10px; + margin-right: 10px; } diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/Legend.jsx b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/Legend.jsx index 6f12ba6fea0b..7a892296656a 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/Legend.jsx +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/Legend.jsx @@ -1,7 +1,6 @@ -/* eslint-disable react/destructuring-assignment */ +/* eslint-disable react/jsx-sort-default-props */ +/* eslint-disable react/sort-prop-types */ /* eslint-disable jsx-a11y/anchor-is-valid */ -/* eslint-disable sort-keys */ -/* eslint-disable react/forbid-prop-types */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/PlaySlider.css b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/PlaySlider.css index 0c21b3e8fe0f..f4b6f5de2eea 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/PlaySlider.css +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/PlaySlider.css @@ -17,30 +17,30 @@ * under the License. */ .play-slider { - display: flex; - height: 40px; - width: 100%; - margin: 0; + display: flex; + height: 40px; + width: 100%; + margin: 0; } .play-slider-controls { - flex: 0 0 80px; - text-align: middle; + flex: 0 0 80px; + text-align: middle; } .play-slider-scrobbler { - flex: 1; + flex: 1; } .slider.slider-horizontal { - width: 100% !important; + width: 100% !important; } .slider-button { - color: #b3b3b3; - margin-right: 5px; + color: #b3b3b3; + margin-right: 5px; } div.slider > div.tooltip.tooltip-main.top.in { - margin-left: 0 !important; + margin-left: 0 !important; } diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/PlaySlider.jsx b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/PlaySlider.jsx index a9ac022e7adf..1d19c4b60744 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/PlaySlider.jsx +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/components/PlaySlider.jsx @@ -1,10 +1,9 @@ +/* eslint-disable react/jsx-sort-default-props */ +/* eslint-disable react/sort-prop-types */ /* eslint-disable react/jsx-handler-names */ /* eslint-disable jsx-a11y/click-events-have-key-events */ /* eslint-disable jsx-a11y/no-static-element-interactions */ /* eslint-disable no-negated-condition */ -/* eslint-disable react/destructuring-assignment */ -/* eslint-disable no-eq-null */ -/* eslint-disable sort-keys */ /* eslint-disable react/forbid-prop-types */ /** * Licensed to the Apache Software Foundation (ASF) under one diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/css/deckgl.css b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/css/deckgl.css index b085d1c6b2e3..f836c27f0878 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/css/deckgl.css +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/css/deckgl.css @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ - .deckgl-tooltip > div { - overflow: hidden; - text-overflow: ellipsis; - } +.deckgl-tooltip > div { + overflow: hidden; + text-overflow: ellipsis; +} diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/factory.jsx b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/factory.jsx index e4f730cddbaf..23cc01f4a825 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/factory.jsx +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/factory.jsx @@ -1,11 +1,7 @@ +/* eslint-disable react/sort-prop-types */ /* eslint-disable react/jsx-handler-names */ -/* eslint-disable react/destructuring-assignment */ -/* eslint-disable react/sort-comp */ /* eslint-disable camelcase */ -/* eslint-disable react/no-unsafe */ -/* eslint-disable sort-keys */ /* eslint-disable react/no-unused-prop-types */ -/* eslint-disable react/forbid-prop-types */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -76,6 +72,7 @@ export function createDeckGLComponent(getLayer, getPoints) { this.setState({ viewport }); } + // eslint-disable-next-line class-methods-use-this computeLayer(props) { const { formData, payload, onAddFilter, setTooltip } = props; @@ -93,9 +90,9 @@ export function createDeckGLComponent(getLayer, getPoints) { layers={[layer]} mapStyle={formData.mapbox_style} setControlValue={setControlValue} - onViewportChange={this.onViewportChange} width={width} height={height} + onViewportChange={this.onViewportChange} /> ); } @@ -108,16 +105,7 @@ export function createDeckGLComponent(getLayer, getPoints) { export function createCategoricalDeckGLComponent(getLayer, getPoints) { function Component(props) { - const { - formData, - payload, - setControlValue, - onAddFilter, - setTooltip, - viewport, - width, - height, - } = props; + const { formData, payload, setControlValue, setTooltip, viewport, width, height } = props; return ( d.polygon).flat(); + return features.flatMap(d => d.polygon); } function getElevation(d, colorScaler) { @@ -77,10 +74,9 @@ export function getLayer(formData, payload, onAddFilter, setTooltip, selected, o const sc = fd.stroke_color_picker; let data = [...payload.data.features]; - // eslint-disable-next-line no-eq-null if (filters != null) { filters.forEach(f => { - data = data.filter(f); + data = data.filter(x => f(x)); }); } @@ -101,14 +97,14 @@ export function getLayer(formData, payload, onAddFilter, setTooltip, selected, o // when polygons are selected, reduce the opacity of non-selected polygons const colorScaler = d => { const baseColor = baseColorScaler(d); - if (selected.length > 0 && selected.indexOf(d[fd.line_column]) === -1) { + if (selected.length > 0 && !selected.includes(d[fd.line_column])) { baseColor[3] /= 2; } return baseColor; }; const tooltipContentGenerator = - fd.line_column && fd.metric && ['geohash', 'zipcode'].indexOf(fd.line_type) >= 0 + fd.line_column && fd.metric && ['geohash', 'zipcode'].includes(fd.line_type) ? setTooltipContent(fd) : undefined; @@ -265,12 +261,12 @@ class DeckGLPolygon extends React.Component { return (
{formData.metric !== null && ( { - data = data.filter(f); + data = data.filter(x => f(x)); }); } @@ -179,12 +175,12 @@ class DeckGLScreenGrid extends React.PureComponent { return (
); diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/layers/common.jsx b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/layers/common.jsx index 76516df1911f..01e4216f82b0 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/layers/common.jsx +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/layers/common.jsx @@ -1,4 +1,3 @@ -/* eslint-disable no-magic-numbers */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -61,7 +60,10 @@ export function getBounds(points) { const latBounds = latExt[0] === latExt[1] ? getLatBoundsForSingleCoordinate(latExt) : latExt; const lngBounds = lngExt[0] === lngExt[1] ? getLngBoundsForSingleCoordinate(lngExt) : lngExt; - return [[lngBounds[0], latBounds[0]], [lngBounds[1], latBounds[1]]]; + return [ + [lngBounds[0], latBounds[0]], + [lngBounds[1], latBounds[1]], + ]; } export function fitViewport(viewport, points, padding = 10) { @@ -77,9 +79,9 @@ export function fitViewport(viewport, points, padding = 10) { width: viewport.width, }), }; - } catch (e) { + } catch (error) { /* eslint no-console: 0 */ - console.error('Could not auto zoom', e); + console.error('Could not auto zoom', error); return viewport; } @@ -153,5 +155,5 @@ export function getAggFunc(type = 'sum', accessor = null) { return arr => d3func(arr); } - return arr => d3func(arr.map(accessor)); + return arr => d3func(arr.map(x => accessor(x))); } diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/layers/index.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/layers/index.js index 4ac334b5a8de..b77d5bd12c49 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/layers/index.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/layers/index.js @@ -1,4 +1,3 @@ -/* eslint-disable sort-keys */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils.js index 2fc36ee5e4c8..dd0df89f15a3 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils.js @@ -1,4 +1,3 @@ -/* eslint-disable no-magic-numbers */ /* eslint-disable no-negated-condition */ /** * Licensed to the Apache Software Foundation (ASF) under one @@ -44,7 +43,7 @@ export function getBreakPoints( const precision = delta === 0 ? 0 : Math.max(0, Math.ceil(Math.log10(1 / delta))); const extraBucket = maxValue > maxValue.toFixed(precision) ? 1 : 0; - return Array(numBuckets + 1 + extraBucket) + return new Array(numBuckets + 1 + extraBucket) .fill() .map((_, i) => (minValue + i * delta).toFixed(precision)); } @@ -111,7 +110,7 @@ export function getBreakPointColorScaler( if (maskPoint(v)) { c[3] = 0; } else { - c[3] = (opacity / 100.0) * 255; + c[3] = (opacity / 100) * 255; } return c; diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/colors.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/colors.js index eaa1055021fc..8d8e2bd6fc8f 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/colors.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/colors.js @@ -1,4 +1,3 @@ -/* eslint-disable no-magic-numbers */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/explore.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/explore.js index 00f4df148574..44aff588e400 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/explore.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/explore.js @@ -6,7 +6,7 @@ const MAX_URL_LENGTH = 8000; export function getURIDirectory(formData, endpointType = 'base') { // Building the directory part of the URI let directory = '/superset/explore/'; - if (['json', 'csv', 'query', 'results', 'samples'].indexOf(endpointType) >= 0) { + if (['json', 'csv', 'query', 'results', 'samples'].includes(endpointType)) { directory = '/superset/explore_json/'; } diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/geo.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/geo.js index fac3d60a1f4b..b75ad8d4df53 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/geo.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/geo.js @@ -1,5 +1,3 @@ -/* eslint-disable no-restricted-properties */ -/* eslint-disable no-magic-numbers */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -33,15 +31,20 @@ const METER_TO_MILE = 1609.34; export function unitToRadius(unit, num) { if (unit === 'square_m') { return Math.sqrt(num / Math.PI); - } else if (unit === 'radius_m') { + } + if (unit === 'radius_m') { return num; - } else if (unit === 'radius_km') { + } + if (unit === 'radius_km') { return num * 1000; - } else if (unit === 'radius_miles') { + } + if (unit === 'radius_miles') { return num * METER_TO_MILE; - } else if (unit === 'square_km') { + } + if (unit === 'square_km') { return Math.sqrt(num / Math.PI) * 1000; - } else if (unit === 'square_miles') { + } + if (unit === 'square_miles') { return Math.sqrt(num / Math.PI) * METER_TO_MILE; } @@ -55,7 +58,7 @@ export function kmToPixels(kilometers, latitude, zoomLevel) { // Algorithm from: https://wiki.openstreetmap.org/wiki/Zoom_levels const latitudeRad = latitude * (Math.PI / 180); // Seems like the zoomLevel is off by one - const kmPerPixel = (EARTH_CIRCUMFERENCE_KM * Math.cos(latitudeRad)) / Math.pow(2, zoomLevel + 9); + const kmPerPixel = (EARTH_CIRCUMFERENCE_KM * Math.cos(latitudeRad)) / 2 ** (zoomLevel + 9); return roundDecimal(kilometers / kmPerPixel, 2); } diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/safeStringify.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/safeStringify.js index f734e8d163ee..4e4bf1e8e478 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/safeStringify.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/safeStringify.js @@ -36,7 +36,7 @@ export function safeStringify(object) { try { // Quick deep copy to duplicate if this is a repeat rather than a circle. return JSON.parse(JSON.stringify(value)); - } catch (err) { + } catch (error) { // Discard key if value cannot be duplicated. return; } diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/sandbox.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/sandbox.js index 0eb948ca2723..3082774a7386 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/sandbox.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/sandbox.js @@ -1,5 +1,3 @@ -/* eslint-disable sort-keys */ -/* eslint-disable no-magic-numbers */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/time.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/time.js index 5eb605bd3a1f..41bf7c166a52 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/time.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/time.js @@ -1,8 +1,4 @@ -/* eslint-disable sort-keys */ -/* eslint-disable babel/no-invalid-this */ -/* eslint-disable no-eq-null */ /* eslint-disable no-negated-condition */ -/* eslint-disable func-names */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -52,7 +48,8 @@ export function truncate(timestamp, step) { const difference = part - explodedLowerBound[i]; return part - ((part - truncatePartTo[i]) % difference); - } else if (i < firstDiffIndex || firstDiffIndex === -1) { + } + if (i < firstDiffIndex || firstDiffIndex === -1) { return part; } @@ -85,7 +82,7 @@ export function getPlaySliderParams(timestamps, timeGrain) { let step; let reference; - if (timeGrain.indexOf('/') !== -1) { + if (timeGrain.includes('/')) { // Here, time grain is a time interval instead of a simple duration, either // `reference/duration` or `duration/reference`. We need to parse the // duration and make sure that start and end are in the right places. For diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/utils.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/utils.js index 4f59617db800..d582f26b6cf8 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/utils.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-deckgl/src/utils/utils.js @@ -1,5 +1,3 @@ -/* eslint-disable no-magic-numbers */ -/* eslint-disable no-restricted-properties */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -25,7 +23,7 @@ export function roundDecimal(number, precision) { let roundedNumber; if (precision) { // eslint-disable-next-line no-param-reassign - roundedNumber = Math.round(number * (precision = Math.pow(10, precision))) / precision; + roundedNumber = Math.round(number * (precision = 10 ** precision)) / precision; } else { roundedNumber = Math.round(number); } diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/package.json b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/package.json index 91bbc327d9f0..1813df7e6b6d 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/package.json +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/package.json @@ -31,6 +31,7 @@ "mapbox-gl": "^0.53.0", "prop-types": "^15.6.0", "react-palm": "^3.1.2", + "redux": "^4.0.5", "shortid": "^2.2.15", "styled-components": "^4.4.0", "viewport-mercator-project": "^6.1.1" diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/Kepler.jsx b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/Kepler.jsx index a2aa492b6433..defe3788a502 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/Kepler.jsx +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/Kepler.jsx @@ -1,12 +1,12 @@ +/* eslint-disable react/sort-prop-types */ +/* eslint-disable max-classes-per-file */ /* eslint-disable import/no-extraneous-dependencies */ /* eslint-disable prefer-destructuring */ -/* eslint-disable react/destructuring-assignment */ /* eslint-disable react/jsx-handler-names */ /* eslint-disable react/no-deprecated */ /* eslint-disable no-negated-condition */ /* eslint-disable react/prop-types */ /* eslint-disable react/require-default-props */ -/* eslint-disable sort-keys */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -69,7 +69,7 @@ class Kepler extends React.PureComponent { const { keplerGl } = this.props; return KeplerGlSchema.getConfigToSave(keplerGl[this.state.keplerId]); - } catch (e) { + } catch (error) { return null; } } @@ -114,8 +114,8 @@ class Kepler extends React.PureComponent {
@@ -128,12 +128,8 @@ Kepler.propTypes = propTypes; const mapStateToProps = state => ({ keplerGl: state.keplerGl }); const dispatchToProps = dispatch => ({ dispatch }); -const KeplerConnected = connect( - mapStateToProps, - dispatchToProps, -)(Kepler); +const KeplerConnected = connect(mapStateToProps, dispatchToProps)(Kepler); -// eslint-disable-next-line react/no-multi-comp export default class SubApp extends React.Component { constructor(props) { super(props); diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/KeplerChartPlugin.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/KeplerChartPlugin.js index a33e97404bef..0d80064d3dcf 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/KeplerChartPlugin.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/KeplerChartPlugin.js @@ -1,4 +1,3 @@ -/* eslint-disable sort-keys */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/store.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/store.js index acbf4d017c20..b9f07e236f3a 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/store.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/store.js @@ -1,9 +1,3 @@ -/* eslint-disable babel/new-cap */ -/* eslint-disable babel/no-invalid-this */ -/* eslint-disable compat/compat */ -/* eslint-disable import/no-extraneous-dependencies */ -/* eslint-disable no-magic-numbers */ -/* eslint-disable sort-keys */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -68,6 +62,7 @@ const rateLimitedUpdateConfigControl = RateLimit(updateConfigControl, 1000); export default function getKeplerStore(setControlValue) { // Using react-palm middleware to intercept changes and // save the state into the config control as text + // eslint-disable-next-line unicorn/consistent-function-scoping const stateChangeMiddleware = store => next => action => { const returnValue = next(action); rateLimitedUpdateConfigControl(store, setControlValue); diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/transformProps.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/transformProps.js index 1375072c777c..d34ff6f98744 100644 --- a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/transformProps.js +++ b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/packages/superset-ui-legacy-preset-chart-kepler/src/transformProps.js @@ -1,4 +1,3 @@ -/* eslint-disable sort-keys */ /** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file diff --git a/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/buildAssets.js b/superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/scripts/buildAssets.js similarity index 100% rename from superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/buildAssets.js rename to superset-frontend/temporary_superset_ui/superset-ui-plugins-deckgl/scripts/buildAssets.js