/** * 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. */ import { t } from '@apache-superset/core/translation'; import { Behavior, ChartMetadata, ChartPlugin } from '@superset-ui/core'; import transformProps from './transformProps'; import thumbnail from './images/thumbnail.png'; import thumbnailDark from './images/thumbnail-dark.png'; import example1 from './images/Table.jpg'; import example1Dark from './images/Table-dark.jpg'; import example2 from './images/Table2.jpg'; import example2Dark from './images/Table2-dark.jpg'; import example3 from './images/Table3.jpg'; import example3Dark from './images/Table3-dark.jpg'; import controlPanel from './controlPanel'; import buildQuery from './buildQuery'; import { TableChartFormData, TableChartProps } from './types'; // must export something for the module to be exist in dev mode export { default as __hack__ } from './types'; export * from './types'; export { convertAgGridStateToOwnState, convertSortModel, convertColumnState, convertFilterModel, } from './stateConversion'; const metadata = new ChartMetadata({ behaviors: [ Behavior.InteractiveChart, Behavior.DrillToDetail, Behavior.DrillBy, ], category: t('Table'), canBeAnnotationTypes: ['EVENT', 'INTERVAL'], description: t( 'Classic row-by-column spreadsheet like view of a dataset. Use tables to showcase a view into the underlying data or to show aggregated metrics.', ), exampleGallery: [ { url: example1, urlDark: example1Dark }, { url: example2, urlDark: example2Dark }, { url: example3, urlDark: example3Dark }, ], name: t('Table V2'), tags: [ t('Additive'), t('Business'), t('Pattern'), t('Featured'), t('Report'), t('Sequential'), t('Tabular'), ], thumbnail, thumbnailDark, }); export default class AgGridTableChartPlugin extends ChartPlugin< TableChartFormData, TableChartProps > { constructor() { super({ loadChart: () => import('./AgGridTableChart'), metadata, transformProps, controlPanel, buildQuery, }); } }