export function getOriginalLabel()

in superset-frontend/plugins/plugin-chart-echarts/src/BigNumber/utils.ts [55:93]


export function getOriginalLabel(
  metric: QueryFormMetric,
  metrics: Metric[] = [],
): string {
  const metricLabel = typeof metric === 'string' ? metric : metric.label || '';

  if (isSavedMetric(metric)) {
    const metricEntry = metrics.find(m => m.metric_name === metric);
    return (
      metricEntry?.verbose_name ||
      metricEntry?.metric_name ||
      metric ||
      'Unknown Metric'
    );
  }

  if (isAdhocMetricSimple(metric)) {
    const column = metric.column || {};
    const columnName = column.column_name || 'unknown_column';
    const verboseName = column.verbose_name || columnName;
    const aggregate = metric.aggregate || 'UNKNOWN';
    return metric.hasCustomLabel && metric.label
      ? metric.label
      : `${aggregate}(${verboseName})`;
  }

  if (
    typeof metric === 'object' &&
    'expressionType' in metric &&
    metric.expressionType === 'SQL' &&
    'sqlExpression' in metric
  ) {
    return metric.hasCustomLabel && metric.label
      ? metric.label
      : metricLabel || 'Custom Metric';
  }

  return metricLabel || 'Unknown Metric';
}