diff --git a/frontend/src2/charts/components/DrillDown.vue b/frontend/src2/charts/components/DrillDown.vue index 9c563fe9..c15b604e 100644 --- a/frontend/src2/charts/components/DrillDown.vue +++ b/frontend/src2/charts/components/DrillDown.vue @@ -4,6 +4,7 @@ import DataTable from '../../components/DataTable.vue' import { Query } from '../../query/query' import { Operation, QueryResult, QueryResultColumn, QueryResultRow } from '../../types/query.types' import { getDrillDownQuery } from '../helpers' +import { column } from '../../query/helpers' const props = defineProps<{ chart: { @@ -17,6 +18,7 @@ const props = defineProps<{ const showDrillDownResults = ref(false) const drillDownQuery = ref(null) +const sortOrder = ref>({}) watch( () => props.row || props.column, @@ -42,6 +44,21 @@ watch( }, { immediate: true, deep: true } ) + +function onSort(newSortOrder: Record) { + sortOrder.value = newSortOrder + + if (drillDownQuery.value) { + Object.entries(newSortOrder).forEach(([columnName, direction]) => { + drillDownQuery.value?.addOrderBy({ + column: column(columnName), + direction, + }) + }) + + drillDownQuery.value.execute() + } +}