mirror of
https://github.com/apache/superset.git
synced 2026-04-26 19:44:58 +00:00
feat: Implement drag and drop for metrics (#13575)
* Convert MetricsControl to functional component * Implement drag and drop for metrics * Implement customizable placeholder for DndSelectLabel
This commit is contained in:
committed by
GitHub
parent
1b95ed7267
commit
d439da2fe0
@@ -18,16 +18,20 @@
|
||||
*/
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Metric } from '@superset-ui/chart-controls/lib/types';
|
||||
import columnType from 'src/explore/propTypes/columnType';
|
||||
import { OptionControlLabel } from 'src/explore/components/OptionControls';
|
||||
import AdhocMetricOption from './AdhocMetricOption';
|
||||
import AdhocMetric from './AdhocMetric';
|
||||
import savedMetricType from './savedMetricType';
|
||||
import adhocMetricType from './adhocMetricType';
|
||||
import { DndItemType } from '../../DndItemType';
|
||||
|
||||
const propTypes = {
|
||||
option: PropTypes.oneOfType([savedMetricType, adhocMetricType]).isRequired,
|
||||
option: PropTypes.oneOfType([
|
||||
savedMetricType,
|
||||
adhocMetricType,
|
||||
Metric,
|
||||
PropTypes.string,
|
||||
]).isRequired,
|
||||
index: PropTypes.number.isRequired,
|
||||
onMetricEdit: PropTypes.func,
|
||||
onRemoveMetric: PropTypes.func,
|
||||
@@ -81,19 +85,6 @@ export default function MetricDefinitionValue({
|
||||
|
||||
return <AdhocMetricOption {...metricOptionProps} />;
|
||||
}
|
||||
if (typeof option === 'string') {
|
||||
return (
|
||||
<OptionControlLabel
|
||||
label={option}
|
||||
onRemove={onRemoveMetric}
|
||||
onMoveLabel={onMoveLabel}
|
||||
onDropLabel={onDropLabel}
|
||||
type={DndItemType.FilterOption}
|
||||
index={index}
|
||||
isFunction
|
||||
/>
|
||||
);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
MetricDefinitionValue.propTypes = propTypes;
|
||||
|
||||
Reference in New Issue
Block a user