mirror of
https://git.mirrors.martin98.com/https://github.com/SigNoz/signoz
synced 2025-08-13 19:25:54 +08:00
feat: support for legend in query builderformulas (#1530)
This commit is contained in:
parent
f48a884f90
commit
5e0eb05a9c
@ -30,4 +30,5 @@ export const QueryBuilderQueryTemplate = {
|
||||
export const QueryBuilderFormulaTemplate = {
|
||||
expression: '',
|
||||
disabled: false,
|
||||
legend: '',
|
||||
};
|
||||
|
@ -68,15 +68,20 @@ function QuerySection({
|
||||
const handleFormulaChange = ({
|
||||
formulaIndex,
|
||||
expression,
|
||||
legend,
|
||||
toggleDisable,
|
||||
toggleDelete,
|
||||
}: IQueryBuilderFormulaHandleChange): void => {
|
||||
const allFormulas = formulaQueries;
|
||||
const current = allFormulas[formulaIndex];
|
||||
if (expression) {
|
||||
if (expression !== undefined) {
|
||||
current.expression = expression;
|
||||
}
|
||||
|
||||
if (legend !== undefined) {
|
||||
current.legend = legend;
|
||||
}
|
||||
|
||||
if (toggleDisable) {
|
||||
current.disabled = !current.disabled;
|
||||
}
|
||||
@ -179,6 +184,7 @@ function QuerySection({
|
||||
formulaOnly: true,
|
||||
expression: 'A',
|
||||
disabled: false,
|
||||
legend: '',
|
||||
};
|
||||
|
||||
setFormulaQueries({ ...formulas });
|
||||
|
@ -37,6 +37,14 @@ function MetricsBuilderFormula({
|
||||
style={{ marginBottom: '0.5rem' }}
|
||||
rows={2}
|
||||
/>
|
||||
<Input
|
||||
onChange={(event): void => {
|
||||
handleFormulaChange({ formulaIndex, legend: event.target.value });
|
||||
}}
|
||||
size="middle"
|
||||
defaultValue={formulaData.legend}
|
||||
addonBefore="Legend Format"
|
||||
/>
|
||||
</QueryHeader>
|
||||
);
|
||||
}
|
||||
|
@ -85,6 +85,7 @@ function QueryBuilderQueryContainer({
|
||||
const handleQueryBuilderFormulaChange = ({
|
||||
formulaIndex,
|
||||
expression,
|
||||
legend,
|
||||
toggleDisable,
|
||||
toggleDelete,
|
||||
}: IQueryBuilderFormulaHandleChange): void => {
|
||||
@ -94,9 +95,12 @@ function QueryBuilderQueryContainer({
|
||||
];
|
||||
const currentIndexFormula = allFormulas[formulaIndex as number];
|
||||
|
||||
if (expression) {
|
||||
if (expression !== undefined) {
|
||||
currentIndexFormula.expression = expression;
|
||||
}
|
||||
if (legend !== undefined) {
|
||||
currentIndexFormula.legend = legend;
|
||||
}
|
||||
|
||||
if (toggleDisable) {
|
||||
currentIndexFormula.disabled = !currentIndexFormula.disabled;
|
||||
|
@ -19,5 +19,6 @@ export interface IQueryBuilderFormulaHandleChange {
|
||||
formulaIndex: number | string;
|
||||
expression?: IMetricsBuilderFormula['expression'];
|
||||
toggleDisable?: IMetricsBuilderFormula['disabled'];
|
||||
legend?: IMetricsBuilderFormula['legend'];
|
||||
toggleDelete?: boolean;
|
||||
}
|
||||
|
@ -76,9 +76,11 @@ export async function GetMetricQueryRange({
|
||||
|
||||
queryData[WIDGET_QUERY_BUILDER_FORMULA_KEY_NAME].map((formula) => {
|
||||
const generatedFormulaPayload = {};
|
||||
legendMap[formula.name] = formula.legend || formula.name;
|
||||
generatedFormulaPayload.queryName = formula.name;
|
||||
generatedFormulaPayload.expression = formula.expression;
|
||||
generatedFormulaPayload.disabled = formula.disabled;
|
||||
generatedFormulaPayload.legend = formula.legend;
|
||||
builderQueries[formula.name] = generatedFormulaPayload;
|
||||
});
|
||||
QueryPayload.compositeMetricQuery.builderQueries = builderQueries;
|
||||
|
@ -28,10 +28,9 @@ export interface IBuilderQueries {
|
||||
// for api calls
|
||||
export interface IBuilderQuery
|
||||
extends Omit<
|
||||
IMetricQuery,
|
||||
'aggregateOperator' | 'legend' | 'metricName' | 'tagFilters'
|
||||
>,
|
||||
Omit<IFormulaQuery, 'expression'> {
|
||||
IMetricQuery,
|
||||
'aggregateOperator' | 'legend' | 'metricName' | 'tagFilters'
|
||||
> {
|
||||
aggregateOperator: EAggregateOperator | undefined;
|
||||
disabled: boolean;
|
||||
name: string;
|
||||
|
@ -71,6 +71,7 @@ export interface IMetricsBuilderFormula {
|
||||
expression: string;
|
||||
disabled: boolean;
|
||||
name: string;
|
||||
legend: string;
|
||||
}
|
||||
export interface IMetricsBuilderQuery {
|
||||
aggregateOperator: EAggregateOperator;
|
||||
|
Loading…
x
Reference in New Issue
Block a user