/** * 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 React from 'react'; import { t } from '@superset-ui/core'; import { ControlPanelConfig, formatSelectOptions, D3_FORMAT_DOCS, D3_FORMAT_OPTIONS, D3_TIME_FORMAT_OPTIONS, sections, } from '@superset-ui/chart-controls'; const config: ControlPanelConfig = { controlPanelSections: [ sections.legacyTimeseriesTime, { label: t('Query'), expanded: true, controlSetRows: [ ['metrics'], ['adhoc_filters'], ['groupby'], ['limit', 'timeseries_limit_metric'], [ { name: 'order_desc', config: { type: 'CheckboxControl', label: t('Sort Descending'), default: true, description: t('Whether to sort descending or ascending'), visibility: ({ controls }) => Boolean(controls?.timeseries_limit_metric.value), }, }, { name: 'contribution', config: { type: 'CheckboxControl', label: t('Contribution'), default: false, description: t('Compute the contribution to the total'), }, }, ], ['row_limit', null], ], }, { label: t('Chart Options'), expanded: true, controlSetRows: [ ['color_scheme'], [ { name: 'number_format', config: { type: 'SelectControl', freeForm: true, label: t('Number format'), renderTrigger: true, default: 'SMART_NUMBER', choices: D3_FORMAT_OPTIONS, description: D3_FORMAT_DOCS, }, }, { name: 'date_time_format', config: { type: 'SelectControl', freeForm: true, label: t('Date Time Format'), renderTrigger: true, default: 'smart_date', choices: D3_TIME_FORMAT_OPTIONS, description: D3_FORMAT_DOCS, }, }, ], [ { name: 'rich_tooltip', config: { type: 'CheckboxControl', label: t('Rich Tooltip'), renderTrigger: true, default: true, description: t( 'The rich tooltip shows a list of all series for that point in time', ), }, }, { name: 'rose_area_proportion', config: { type: 'CheckboxControl', label: t('Use Area Proportions'), description: t( 'Check if the Rose Chart should use segment area instead of ' + 'segment radius for proportioning', ), default: false, renderTrigger: true, }, }, ], ], }, { label: t('Advanced Analytics'), tabOverride: 'data', description: t( 'This section contains options ' + 'that allow for advanced analytical post processing ' + 'of query results', ), controlSetRows: [ // eslint-disable-next-line react/jsx-key [