You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by ta...@apache.org on 2020/10/01 17:07:18 UTC
[incubator-superset] branch master updated: fix: Revert "Replace
reactable with DataTable from superset-ui in QueryTable (#10981)" (#11125)
This is an automated email from the ASF dual-hosted git repository.
tai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-superset.git
The following commit(s) were added to refs/heads/master by this push:
new 7a72082 fix: Revert "Replace reactable with DataTable from superset-ui in QueryTable (#10981)" (#11125)
7a72082 is described below
commit 7a72082d31257012235c962db853e908f8e4af4c
Author: ʈᵃᵢ <td...@gmail.com>
AuthorDate: Thu Oct 1 10:06:22 2020 -0700
fix: Revert "Replace reactable with DataTable from superset-ui in QueryTable (#10981)" (#11125)
This reverts commit e93d92e8ac6d4f85d193943e27d585fb6e01568c.
---
.../spec/javascripts/sqllab/QueryTable_spec.jsx | 24 ++++++++------------
.../spec/javascripts/sqllab/fixtures.ts | 5 -----
.../src/SqlLab/components/QueryTable.jsx | 26 +++++++++-------------
3 files changed, 19 insertions(+), 36 deletions(-)
diff --git a/superset-frontend/spec/javascripts/sqllab/QueryTable_spec.jsx b/superset-frontend/spec/javascripts/sqllab/QueryTable_spec.jsx
index e9e54f0..7bd205a 100644
--- a/superset-frontend/spec/javascripts/sqllab/QueryTable_spec.jsx
+++ b/superset-frontend/spec/javascripts/sqllab/QueryTable_spec.jsx
@@ -18,33 +18,27 @@
*/
import React from 'react';
import { shallow } from 'enzyme';
-import DataTable from '@superset-ui/plugin-chart-table/lib/DataTable';
-import * as useMountedMemo from '@superset-ui/plugin-chart-table/lib/DataTable/utils/useMountedMemo';
+import { Table } from 'reactable-arc';
import QueryTable from 'src/SqlLab/components/QueryTable';
-import { dataTableProps } from 'spec/javascripts/sqllab/fixtures';
+import { queries } from './fixtures';
describe('QueryTable', () => {
- // hack for mocking hook that implements sticky behaviour of DataTable
- jest
- .spyOn(useMountedMemo, 'default')
- .mockImplementation(() => ({ width: 100, height: 100 }));
const mockedProps = {
- ...dataTableProps,
- displayLimit: 10000,
+ queries,
};
it('is valid', () => {
- expect(React.isValidElement(<QueryTable {...mockedProps} />)).toBe(true);
+ expect(React.isValidElement(<QueryTable />)).toBe(true);
});
it('is valid with props', () => {
expect(React.isValidElement(<QueryTable {...mockedProps} />)).toBe(true);
});
it('renders a proper table', () => {
const wrapper = shallow(<QueryTable {...mockedProps} />);
- expect(wrapper.find(DataTable)).toExist();
- expect(wrapper.find(DataTable).shallow().find('table')).toExist();
- expect(
- wrapper.find(DataTable).shallow().find('tbody').find('tr'),
- ).toHaveLength(2);
+ expect(wrapper.find(Table)).toExist();
+ expect(wrapper.find(Table).shallow().find('table')).toExist();
+ expect(wrapper.find(Table).shallow().find('table').find('Tr')).toHaveLength(
+ 2,
+ );
});
});
diff --git a/superset-frontend/spec/javascripts/sqllab/fixtures.ts b/superset-frontend/spec/javascripts/sqllab/fixtures.ts
index 3e3fc5d..d71ffe9 100644
--- a/superset-frontend/spec/javascripts/sqllab/fixtures.ts
+++ b/superset-frontend/spec/javascripts/sqllab/fixtures.ts
@@ -493,8 +493,3 @@ export const query = {
ctas: false,
cached: false,
};
-
-export const dataTableProps = {
- columns: ['dbId', 'sql'],
- queries,
-};
diff --git a/superset-frontend/src/SqlLab/components/QueryTable.jsx b/superset-frontend/src/SqlLab/components/QueryTable.jsx
index 6edf79f..978427d 100644
--- a/superset-frontend/src/SqlLab/components/QueryTable.jsx
+++ b/superset-frontend/src/SqlLab/components/QueryTable.jsx
@@ -19,17 +19,17 @@
import React from 'react';
import PropTypes from 'prop-types';
import moment from 'moment';
+import { Table } from 'reactable-arc';
import { ProgressBar, Well } from 'react-bootstrap';
import Label from 'src/components/Label';
import { t } from '@superset-ui/core';
-import DataTable from '@superset-ui/plugin-chart-table/lib/DataTable';
import Button from 'src/components/Button';
-import { fDuration } from 'src/modules/dates';
import Link from '../../components/Link';
import ResultSet from './ResultSet';
import ModalTrigger from '../../components/ModalTrigger';
import HighlightedSql from './HighlightedSql';
+import { fDuration } from '../../modules/dates';
import QueryStateLabel from './QueryStateLabel';
const propTypes = {
@@ -213,20 +213,14 @@ class QueryTable extends React.PureComponent {
})
.reverse();
return (
- <DataTable
- tableClassName="table table-condensed"
- columns={this.props.columns.map(column => ({
- accessor: column,
- Header: () => <th>{column}</th>,
- Cell: ({ value }) => <td>{value}</td>,
- }))}
- data={data}
- pageSize={10}
- maxPageItemCount={9}
- searchInput={false}
- height="100%"
- sticky
- />
+ <div className="QueryTable">
+ <Table
+ columns={this.props.columns}
+ className="table table-condensed"
+ data={data}
+ itemsPerPage={50}
+ />
+ </div>
);
}
}