Transformation: show message if not applied on single frame (#36469)

* Transformation: show message if not applied on single frame

* Use FieldValidationMessage component instead

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
This commit is contained in:
Matthias Blümel 2021-07-06 16:41:28 +02:00 committed by GitHub
parent eabf3fb674
commit b49b7faeee
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 3 deletions

View File

@ -1,12 +1,17 @@
import React from 'react';
import { DataTransformerID, standardTransformers, TransformerRegistryItem, TransformerUIProps } from '@grafana/data';
import { MergeTransformerOptions } from '@grafana/data/src/transformations/transformers/merge';
import { MergeTransformerOptions } from '../../../../../packages/grafana-data/src/transformations/transformers/merge';
import { FieldValidationMessage } from '@grafana/ui';
export const MergeTransformerEditor: React.FC<TransformerUIProps<MergeTransformerOptions>> = ({
input,
options,
onChange,
}) => {
if (input.length <= 1) {
// Show warning that merge is useless only apply on a single frame
return <FieldValidationMessage>Merge has no effect when applied on a single frame.</FieldValidationMessage>;
}
return null;
};

View File

@ -10,7 +10,7 @@ import {
TransformerUIProps,
getFieldDisplayName,
} from '@grafana/data';
import { stylesFactory, useTheme, Input, IconButton, Icon } from '@grafana/ui';
import { stylesFactory, useTheme, Input, IconButton, Icon, FieldValidationMessage } from '@grafana/ui';
import { OrganizeFieldsTransformerOptions } from '@grafana/data/src/transformations/transformers/organize';
import { createOrderFieldsComparer } from '@grafana/data/src/transformations/transformers/order';
@ -73,7 +73,11 @@ const OrganizeFieldsTransformerEditor: React.FC<OrganizeFieldsTransformerEditorP
// Show warning that we only apply the first frame
if (input.length > 1) {
return <div>Organize fields only works with a single frame. Consider applying a join transformation first.</div>;
return (
<FieldValidationMessage>
Organize fields only works with a single frame. Consider applying a join transformation first.
</FieldValidationMessage>
);
}
return (