mirror of
https://github.com/apache/superset.git
synced 2024-09-06 13:57:40 -04:00
Eslint dependencies versions updates (#10839)
* Update eslint version to 7.8.1 * Give names to unnamed functions to fix lint errors * Update eslint-import-resolver-webpack * Update eslint-plugin-cypress * Add eslint-plugin-react-hooks * Update necessary peer dependencies for eslint-config-airbnb * Update eslint airbnb config and ts plugins * Remove "this" from functional component * Disable all rules that cause new errors * Fix linting errors in tests * Add licenses to .eslintrc files * Add path and zlib to package.json * Disable incompatible rule in eslint-plugin-cypress * Remove redundant config for typescript linting * Mark disabled rules with comments * Remove path and zlib from deps, disable import rule for webpack files
This commit is contained in:
parent
1f31e0eb38
commit
8a774d59ed
@ -17,7 +17,7 @@
|
|||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
module.exports = {
|
module.exports = {
|
||||||
extends: ['airbnb', 'prettier'],
|
extends: ['airbnb', 'prettier', 'prettier/react'],
|
||||||
parser: 'babel-eslint',
|
parser: 'babel-eslint',
|
||||||
parserOptions: {
|
parserOptions: {
|
||||||
ecmaFeatures: {
|
ecmaFeatures: {
|
||||||
@ -36,6 +36,12 @@ module.exports = {
|
|||||||
'global-require': 0,
|
'global-require': 0,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
files: ['webpack*.js'],
|
||||||
|
rules: {
|
||||||
|
'import/no-extraneous-dependencies': 0,
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
files: ['*.ts', '*.tsx'],
|
files: ['*.ts', '*.tsx'],
|
||||||
parser: '@typescript-eslint/parser',
|
parser: '@typescript-eslint/parser',
|
||||||
@ -44,24 +50,25 @@ module.exports = {
|
|||||||
'plugin:@typescript-eslint/recommended',
|
'plugin:@typescript-eslint/recommended',
|
||||||
'prettier',
|
'prettier',
|
||||||
'prettier/@typescript-eslint',
|
'prettier/@typescript-eslint',
|
||||||
|
'prettier/react',
|
||||||
],
|
],
|
||||||
plugins: ['@typescript-eslint/eslint-plugin', 'prettier', 'react'],
|
plugins: ['@typescript-eslint/eslint-plugin', 'prettier', 'react'],
|
||||||
rules: {
|
rules: {
|
||||||
'@typescript-eslint/ban-ts-ignore': 0,
|
'@typescript-eslint/ban-ts-ignore': 0,
|
||||||
'@typescript-eslint/camelcase': [
|
'@typescript-eslint/ban-ts-comment': 0, // disabled temporarily
|
||||||
'error',
|
'@typescript-eslint/ban-types': 0, // disabled temporarily
|
||||||
{
|
|
||||||
allow: ['^UNSAFE_'],
|
|
||||||
properties: 'never',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
'@typescript-eslint/no-empty-function': 0,
|
'@typescript-eslint/no-empty-function': 0,
|
||||||
'@typescript-eslint/no-explicit-any': 0,
|
'@typescript-eslint/no-explicit-any': 0,
|
||||||
|
'@typescript-eslint/no-non-null-assertion': 0, // disabled temporarily
|
||||||
|
'@typescript-eslint/no-use-before-define': 1, // disabled temporarily
|
||||||
|
'@typescript-eslint/no-unused-vars': 0, // disabled temporarily
|
||||||
'@typescript-eslint/explicit-function-return-type': 0,
|
'@typescript-eslint/explicit-function-return-type': 0,
|
||||||
|
'@typescript-eslint/explicit-module-boundary-types': 0, // re-enable up for discussion
|
||||||
camelcase: 0,
|
camelcase: 0,
|
||||||
'class-methods-use-this': 0,
|
'class-methods-use-this': 0,
|
||||||
'func-names': 0,
|
'func-names': 0,
|
||||||
'guard-for-in': 0,
|
'guard-for-in': 0,
|
||||||
|
'import/no-cycle': 0, // re-enable up for discussion, might require some major refactors
|
||||||
'import/extensions': [
|
'import/extensions': [
|
||||||
'error',
|
'error',
|
||||||
{
|
{
|
||||||
@ -72,19 +79,26 @@ module.exports = {
|
|||||||
],
|
],
|
||||||
'import/no-named-as-default': 0,
|
'import/no-named-as-default': 0,
|
||||||
'import/no-named-as-default-member': 0,
|
'import/no-named-as-default-member': 0,
|
||||||
|
'import/no-useless-path-segments': 0, // disabled temporarily
|
||||||
'import/prefer-default-export': 0,
|
'import/prefer-default-export': 0,
|
||||||
indent: 0,
|
indent: 0,
|
||||||
'jsx-a11y/anchor-has-content': 0,
|
'jsx-a11y/anchor-has-content': 0,
|
||||||
'jsx-a11y/href-no-hash': 0,
|
'jsx-a11y/anchor-is-valid': 0, // disabled temporarily
|
||||||
|
'jsx-a11y/click-events-have-key-events': 0, // re-enable up for discussion
|
||||||
|
'jsx-a11y/control-has-associated-label': 0, // disabled temporarily
|
||||||
|
'jsx-a11y/mouse-events-have-key-events': 0, // re-enable up for discussion
|
||||||
|
'lines-between-class-members': 0, // disabled temporarily
|
||||||
'new-cap': 0,
|
'new-cap': 0,
|
||||||
'no-bitwise': 0,
|
'no-bitwise': 0,
|
||||||
'no-confusing-arrow': 0,
|
'no-confusing-arrow': 0,
|
||||||
'no-continue': 0,
|
'no-continue': 0,
|
||||||
|
'no-else-return': 0, // disabled temporarily
|
||||||
'no-mixed-operators': 0,
|
'no-mixed-operators': 0,
|
||||||
'no-multi-assign': 0,
|
'no-multi-assign': 0,
|
||||||
'no-multi-spaces': 0,
|
'no-multi-spaces': 0,
|
||||||
'no-plusplus': 0,
|
'no-plusplus': 0,
|
||||||
'no-prototype-builtins': 0,
|
'no-prototype-builtins': 0,
|
||||||
|
'no-restricted-globals': 0, // disabled temporarily
|
||||||
'no-restricted-properties': 0,
|
'no-restricted-properties': 0,
|
||||||
'no-restricted-syntax': 0,
|
'no-restricted-syntax': 0,
|
||||||
'no-restricted-imports': [
|
'no-restricted-imports': [
|
||||||
@ -99,18 +113,30 @@ module.exports = {
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
'no-shadow': 0, // re-enable up for discussion
|
||||||
|
'no-use-before-define': 0, // disabled temporarily
|
||||||
'padded-blocks': 0,
|
'padded-blocks': 0,
|
||||||
'prefer-arrow-callback': 0,
|
'prefer-arrow-callback': 0,
|
||||||
|
'prefer-destructuring': 0, // disabled temporarily
|
||||||
|
'react/default-props-match-prop-types': 0, // disabled temporarily
|
||||||
|
'react/destructuring-assignment': 0, // re-enable up for discussion
|
||||||
'react/forbid-prop-types': 0,
|
'react/forbid-prop-types': 0,
|
||||||
|
'react/jsx-curly-brace-presence': 0, // disabled temporarily
|
||||||
'react/jsx-filename-extension': [1, { extensions: ['.jsx', '.tsx'] }],
|
'react/jsx-filename-extension': [1, { extensions: ['.jsx', '.tsx'] }],
|
||||||
|
'react/jsx-fragments': 1,
|
||||||
'react/jsx-no-bind': 0,
|
'react/jsx-no-bind': 0,
|
||||||
|
'react/jsx-props-no-spreading': 0, // re-enable up for discussion
|
||||||
|
'react/no-access-state-in-setstate': 0, // disabled temporarily
|
||||||
'react/no-array-index-key': 0,
|
'react/no-array-index-key': 0,
|
||||||
'react/no-string-refs': 0,
|
'react/no-string-refs': 0,
|
||||||
'react/no-unescaped-entities': 0,
|
'react/no-unescaped-entities': 0,
|
||||||
'react/no-unused-prop-types': 0,
|
'react/no-unused-prop-types': 0,
|
||||||
'react/require-default-props': 0,
|
'react/no-unused-state': 0, // disabled temporarily
|
||||||
'react/jsx-fragments': 1,
|
|
||||||
'react/prop-types': 0,
|
'react/prop-types': 0,
|
||||||
|
'react/require-default-props': 0,
|
||||||
|
'react/sort-comp': 0, // disabled temporarily
|
||||||
|
'react/state-in-constructor': 0, // disabled temporarily
|
||||||
|
'react/static-property-placement': 0, // re-enable up for discussion
|
||||||
'prettier/prettier': 'error',
|
'prettier/prettier': 'error',
|
||||||
},
|
},
|
||||||
settings: {
|
settings: {
|
||||||
@ -174,12 +200,20 @@ module.exports = {
|
|||||||
'.json': 'always',
|
'.json': 'always',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
'import/no-cycle': 0, // re-enable up for discussion, might require some major refactors
|
||||||
'import/no-named-as-default': 0,
|
'import/no-named-as-default': 0,
|
||||||
|
'import/no-useless-path-segments': 0, // disabled temporarily
|
||||||
'import/prefer-default-export': 0,
|
'import/prefer-default-export': 0,
|
||||||
indent: 0,
|
indent: 0,
|
||||||
'jsx-a11y/anchor-has-content': 0,
|
'jsx-a11y/anchor-has-content': 0,
|
||||||
'jsx-a11y/href-no-hash': 0,
|
'jsx-a11y/anchor-is-valid': 0, // disabled temporarily
|
||||||
|
'jsx-a11y/click-events-have-key-events': 0, // re-enable up for discussion
|
||||||
|
'jsx-a11y/control-has-associated-label': 0, // disabled temporarily
|
||||||
|
'jsx-a11y/mouse-events-have-key-events': 0, // re-enable up for discussion
|
||||||
|
'lines-between-class-members': 0, // disabled temporarily
|
||||||
'new-cap': 0,
|
'new-cap': 0,
|
||||||
|
'no-restricted-globals': 0, // disabled temporarily
|
||||||
|
'no-else-return': 0, // disabled temporarily
|
||||||
'no-bitwise': 0,
|
'no-bitwise': 0,
|
||||||
'no-confusing-arrow': 0,
|
'no-confusing-arrow': 0,
|
||||||
'no-continue': 0,
|
'no-continue': 0,
|
||||||
@ -202,19 +236,30 @@ module.exports = {
|
|||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
'no-shadow': 0, // re-enable up for discussion
|
||||||
'padded-blocks': 0,
|
'padded-blocks': 0,
|
||||||
'prefer-arrow-callback': 0,
|
'prefer-arrow-callback': 0,
|
||||||
'prefer-object-spread': 1,
|
'prefer-object-spread': 1,
|
||||||
|
'prefer-destructuring': 0, // disabled temporarily
|
||||||
|
'react/default-props-match-prop-types': 0, // disabled temporarily
|
||||||
|
'react/destructuring-assignment': 0, // re-enable up for discussion
|
||||||
'react/forbid-prop-types': 0,
|
'react/forbid-prop-types': 0,
|
||||||
|
'react/jsx-curly-brace-presence': 0, // disabled temporarily
|
||||||
'react/jsx-filename-extension': [1, { extensions: ['.jsx', '.tsx'] }],
|
'react/jsx-filename-extension': [1, { extensions: ['.jsx', '.tsx'] }],
|
||||||
|
'react/jsx-fragments': 1,
|
||||||
'react/jsx-no-bind': 0,
|
'react/jsx-no-bind': 0,
|
||||||
|
'react/jsx-props-no-spreading': 0, // re-enable up for discussion
|
||||||
|
'react/no-access-state-in-setstate': 0, // disabled temporarily
|
||||||
'react/no-array-index-key': 0,
|
'react/no-array-index-key': 0,
|
||||||
'react/no-string-refs': 0,
|
'react/no-string-refs': 0,
|
||||||
'react/no-unescaped-entities': 0,
|
'react/no-unescaped-entities': 0,
|
||||||
'react/no-unused-prop-types': 0,
|
'react/no-unused-prop-types': 0,
|
||||||
'react/require-default-props': 0,
|
'react/no-unused-state': 0, // disabled temporarily
|
||||||
'react/jsx-fragments': 1,
|
|
||||||
'react/prop-types': 0,
|
'react/prop-types': 0,
|
||||||
|
'react/require-default-props': 0,
|
||||||
|
'react/sort-comp': 0, // disabled temporarily
|
||||||
|
'react/state-in-constructor': 0, // disabled temporarily
|
||||||
|
'react/static-property-placement': 0, // disabled temporarily
|
||||||
'prettier/prettier': 'error',
|
'prettier/prettier': 'error',
|
||||||
},
|
},
|
||||||
settings: {
|
settings: {
|
||||||
|
@ -1,3 +1,21 @@
|
|||||||
|
/**
|
||||||
|
* Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
* or more contributor license agreements. See the NOTICE file
|
||||||
|
* distributed with this work for additional information
|
||||||
|
* regarding copyright ownership. The ASF licenses this file
|
||||||
|
* to you under the Apache License, Version 2.0 (the
|
||||||
|
* "License"); you may not use this file except in compliance
|
||||||
|
* with the License. You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*/
|
||||||
{
|
{
|
||||||
"parser": "@typescript-eslint/parser",
|
"parser": "@typescript-eslint/parser",
|
||||||
"plugins": ["cypress", "@typescript-eslint"],
|
"plugins": ["cypress", "@typescript-eslint"],
|
||||||
@ -10,7 +28,8 @@
|
|||||||
"@typescript-eslint/explicit-function-return-type": 0,
|
"@typescript-eslint/explicit-function-return-type": 0,
|
||||||
"@typescript-eslint/explicit-module-boundary-types": 0,
|
"@typescript-eslint/explicit-module-boundary-types": 0,
|
||||||
"@typescript-eslint/no-var-requires": 0,
|
"@typescript-eslint/no-var-requires": 0,
|
||||||
"@typescript-eslint/camelcase": 0
|
"@typescript-eslint/camelcase": 0,
|
||||||
|
"cypress/no-unnecessary-waiting": 0 // see issue https://github.com/cypress-io/eslint-plugin-cypress/issues/69
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
"import/resolver": {
|
"import/resolver": {
|
||||||
|
1989
superset-frontend/package-lock.json
generated
1989
superset-frontend/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -217,8 +217,8 @@
|
|||||||
"@types/rison": "0.0.6",
|
"@types/rison": "0.0.6",
|
||||||
"@types/sinon": "^9.0.5",
|
"@types/sinon": "^9.0.5",
|
||||||
"@types/yargs": "12 - 15",
|
"@types/yargs": "12 - 15",
|
||||||
"@typescript-eslint/eslint-plugin": "^2.20.0",
|
"@typescript-eslint/eslint-plugin": "^4.1.0",
|
||||||
"@typescript-eslint/parser": "^2.20.0",
|
"@typescript-eslint/parser": "^4.1.0",
|
||||||
"babel-eslint": "^10.1.0",
|
"babel-eslint": "^10.1.0",
|
||||||
"babel-jest": "^26.1.0",
|
"babel-jest": "^26.1.0",
|
||||||
"babel-loader": "^8.0.6",
|
"babel-loader": "^8.0.6",
|
||||||
@ -233,17 +233,18 @@
|
|||||||
"emotion-ts-plugin": "^0.5.3",
|
"emotion-ts-plugin": "^0.5.3",
|
||||||
"enzyme": "^3.10.0",
|
"enzyme": "^3.10.0",
|
||||||
"enzyme-adapter-react-16": "^1.14.0",
|
"enzyme-adapter-react-16": "^1.14.0",
|
||||||
"eslint": "^6.2.2",
|
"eslint": "^7.8.1",
|
||||||
"eslint-config-airbnb": "^15.0.1",
|
"eslint-config-airbnb": "^18.2.0",
|
||||||
"eslint-config-prettier": "^6.11.0",
|
"eslint-config-prettier": "^6.11.0",
|
||||||
"eslint-import-resolver-webpack": "^0.10.1",
|
"eslint-import-resolver-webpack": "^0.12.2",
|
||||||
"eslint-plugin-cypress": "^2.0.1",
|
"eslint-plugin-cypress": "^2.11.1",
|
||||||
"eslint-plugin-import": "^2.2.0",
|
"eslint-plugin-import": "^2.22.0",
|
||||||
"eslint-plugin-jest": "^23.17.1",
|
"eslint-plugin-jest": "^23.17.1",
|
||||||
"eslint-plugin-jsx-a11y": "^5.1.1",
|
"eslint-plugin-jsx-a11y": "^6.3.1",
|
||||||
"eslint-plugin-no-only-tests": "^2.0.1",
|
"eslint-plugin-no-only-tests": "^2.0.1",
|
||||||
"eslint-plugin-prettier": "^3.1.3",
|
"eslint-plugin-prettier": "^3.1.3",
|
||||||
"eslint-plugin-react": "^7.16.0",
|
"eslint-plugin-react": "^7.20.6",
|
||||||
|
"eslint-plugin-react-hooks": "^4.1.0",
|
||||||
"exports-loader": "^0.7.0",
|
"exports-loader": "^0.7.0",
|
||||||
"fetch-mock": "^7.7.3",
|
"fetch-mock": "^7.7.3",
|
||||||
"file-loader": "^6.0.0",
|
"file-loader": "^6.0.0",
|
||||||
|
@ -1,3 +1,21 @@
|
|||||||
|
/**
|
||||||
|
* Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
* or more contributor license agreements. See the NOTICE file
|
||||||
|
* distributed with this work for additional information
|
||||||
|
* regarding copyright ownership. The ASF licenses this file
|
||||||
|
* to you under the Apache License, Version 2.0 (the
|
||||||
|
* "License"); you may not use this file except in compliance
|
||||||
|
* with the License. You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*/
|
||||||
{
|
{
|
||||||
"plugins": ["jest", "no-only-tests"],
|
"plugins": ["jest", "no-only-tests"],
|
||||||
"env": {
|
"env": {
|
||||||
@ -7,6 +25,7 @@
|
|||||||
"rules": {
|
"rules": {
|
||||||
"import/no-extraneous-dependencies": ["error", { "devDependencies": true }],
|
"import/no-extraneous-dependencies": ["error", { "devDependencies": true }],
|
||||||
"jest/consistent-test-it": "error",
|
"jest/consistent-test-it": "error",
|
||||||
"no-only-tests/no-only-tests": "error"
|
"no-only-tests/no-only-tests": "error",
|
||||||
|
"prefer-promise-reject-errors": 0
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -20,7 +20,6 @@
|
|||||||
"no-multi-assign": 2,
|
"no-multi-assign": 2,
|
||||||
"no-restricted-properties": 2,
|
"no-restricted-properties": 2,
|
||||||
"no-prototype-builtins": 2,
|
"no-prototype-builtins": 2,
|
||||||
"jsx-a11y/href-no-hash": 2,
|
|
||||||
"class-methods-use-this": 2,
|
"class-methods-use-this": 2,
|
||||||
"import/no-named-as-default": 2,
|
"import/no-named-as-default": 2,
|
||||||
"import/prefer-default-export": 2,
|
"import/prefer-default-export": 2,
|
||||||
|
@ -29,7 +29,7 @@ import HoverMenu from 'src/dashboard/components/menu/HoverMenu';
|
|||||||
import ResizableContainer from 'src/dashboard/components/resizable/ResizableContainer';
|
import ResizableContainer from 'src/dashboard/components/resizable/ResizableContainer';
|
||||||
|
|
||||||
import { mockStore } from '../../fixtures/mockStore';
|
import { mockStore } from '../../fixtures/mockStore';
|
||||||
import { sliceId } from '../../fixtures/mockSliceEntities';
|
import { sliceId } from '../../fixtures/mockChartQueries';
|
||||||
import { dashboardLayout as mockLayout } from '../../fixtures/mockDashboardLayout';
|
import { dashboardLayout as mockLayout } from '../../fixtures/mockDashboardLayout';
|
||||||
import WithDragDropContext from '../../helpers/WithDragDropContext';
|
import WithDragDropContext from '../../helpers/WithDragDropContext';
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ import {
|
|||||||
import newComponentFactory from 'src/dashboard/util/newComponentFactory';
|
import newComponentFactory from 'src/dashboard/util/newComponentFactory';
|
||||||
|
|
||||||
import { sliceId as chartId } from './mockChartQueries';
|
import { sliceId as chartId } from './mockChartQueries';
|
||||||
import { filterId } from './mockDashboardFilters';
|
import { filterId } from './mockSliceEntities';
|
||||||
|
|
||||||
export const sliceId = chartId;
|
export const sliceId = chartId;
|
||||||
|
|
||||||
|
@ -20,7 +20,6 @@
|
|||||||
"no-multi-assign": 2,
|
"no-multi-assign": 2,
|
||||||
"no-restricted-properties": 2,
|
"no-restricted-properties": 2,
|
||||||
"no-prototype-builtins": 2,
|
"no-prototype-builtins": 2,
|
||||||
"jsx-a11y/href-no-hash": 2,
|
|
||||||
"class-methods-use-this": 2,
|
"class-methods-use-this": 2,
|
||||||
"import/no-named-as-default": 2,
|
"import/no-named-as-default": 2,
|
||||||
"import/prefer-default-export": 2,
|
"import/prefer-default-export": 2,
|
||||||
|
@ -12,7 +12,7 @@
|
|||||||
"no-confusing-arrow": 2,
|
"no-confusing-arrow": 2,
|
||||||
"jsx-a11y/no-static-element-interactions": 2,
|
"jsx-a11y/no-static-element-interactions": 2,
|
||||||
"jsx-a11y/anchor-has-content": 2,
|
"jsx-a11y/anchor-has-content": 2,
|
||||||
"react/require-default-props": 2,
|
"react/require-default-props": 0,
|
||||||
"no-plusplus": 2,
|
"no-plusplus": 2,
|
||||||
"no-mixed-operators": 0,
|
"no-mixed-operators": 0,
|
||||||
"no-continue": 2,
|
"no-continue": 2,
|
||||||
@ -20,7 +20,6 @@
|
|||||||
"no-multi-assign": 2,
|
"no-multi-assign": 2,
|
||||||
"no-restricted-properties": 2,
|
"no-restricted-properties": 2,
|
||||||
"no-prototype-builtins": 2,
|
"no-prototype-builtins": 2,
|
||||||
"jsx-a11y/href-no-hash": 2,
|
|
||||||
"class-methods-use-this": 2,
|
"class-methods-use-this": 2,
|
||||||
"import/no-named-as-default": 2,
|
"import/no-named-as-default": 2,
|
||||||
"import/prefer-default-export": 2,
|
"import/prefer-default-export": 2,
|
||||||
|
@ -48,7 +48,7 @@ import getLocationHash from '../util/getLocationHash';
|
|||||||
import newComponentFactory from '../util/newComponentFactory';
|
import newComponentFactory from '../util/newComponentFactory';
|
||||||
import { TIME_RANGE } from '../../visualizations/FilterBox/FilterBox';
|
import { TIME_RANGE } from '../../visualizations/FilterBox/FilterBox';
|
||||||
|
|
||||||
export default function (bootstrapData) {
|
export default function getInitialState(bootstrapData) {
|
||||||
const { user_id, datasources, common, editMode, urlParams } = bootstrapData;
|
const { user_id, datasources, common, editMode, urlParams } = bootstrapData;
|
||||||
|
|
||||||
const dashboard = { ...bootstrapData.dashboard_data };
|
const dashboard = { ...bootstrapData.dashboard_data };
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
import { TABS_TYPE } from './componentTypes';
|
import { TABS_TYPE } from './componentTypes';
|
||||||
import { DASHBOARD_ROOT_ID } from './constants';
|
import { DASHBOARD_ROOT_ID } from './constants';
|
||||||
|
|
||||||
export default function (layout = {}) {
|
export default function findFirstParentContainerId(layout = {}) {
|
||||||
// DASHBOARD_GRID_TYPE or TABS_TYPE?
|
// DASHBOARD_GRID_TYPE or TABS_TYPE?
|
||||||
let parent = layout[DASHBOARD_ROOT_ID];
|
let parent = layout[DASHBOARD_ROOT_ID];
|
||||||
if (
|
if (
|
||||||
|
@ -24,7 +24,7 @@ import {
|
|||||||
DASHBOARD_VERSION_KEY,
|
DASHBOARD_VERSION_KEY,
|
||||||
} from './constants';
|
} from './constants';
|
||||||
|
|
||||||
export default function () {
|
export default function getEmptyLayout() {
|
||||||
return {
|
return {
|
||||||
[DASHBOARD_VERSION_KEY]: 'v2',
|
[DASHBOARD_VERSION_KEY]: 'v2',
|
||||||
[DASHBOARD_ROOT_ID]: {
|
[DASHBOARD_ROOT_ID]: {
|
||||||
|
@ -76,7 +76,7 @@ const SelectAsyncControl = props => {
|
|||||||
dataEndpoint={dataEndpoint}
|
dataEndpoint={dataEndpoint}
|
||||||
onChange={onSelectionChange}
|
onChange={onSelectionChange}
|
||||||
onAsyncError={errorMsg =>
|
onAsyncError={errorMsg =>
|
||||||
this.props.addDangerToast(`${onAsyncErrorMessage}: ${errorMsg}`)
|
props.addDangerToast(`${onAsyncErrorMessage}: ${errorMsg}`)
|
||||||
}
|
}
|
||||||
mutator={mutator}
|
mutator={mutator}
|
||||||
multi={multi}
|
multi={multi}
|
||||||
|
Loading…
Reference in New Issue
Block a user