diff --git a/app/gui2/src/components/visualizations/TableVisualization.vue b/app/gui2/src/components/visualizations/TableVisualization.vue index 22e2f9e4e89f..fda33fed4355 100644 --- a/app/gui2/src/components/visualizations/TableVisualization.vue +++ b/app/gui2/src/components/visualizations/TableVisualization.vue @@ -136,7 +136,7 @@ useAutoBlur(tableNode) const widths = reactive(new Map()) const defaultColDef = { editable: false, - sortable: true as boolean, + sortable: true, filter: true, resizable: true, minWidth: 25, @@ -327,14 +327,24 @@ function toField(name: string, valueType?: ValueType | null | undefined): ColDef icon = 'mixed' } const svgTemplate = ` ` + const menu = ` ` + const sort = ` + + + + + + ` const template = icon ? - `
${name} ${svgTemplate}
` - : `
${name}
` + ` ${name} ${menu} ${sort} ${svgTemplate}` + : `${name} ${menu} ${sort}` return { field: name, headerComponentParams: { template, + enableSorting: true, + setAriaSort: () => {}, }, headerTooltip: displayValue ? displayValue : '', } @@ -541,7 +551,6 @@ watchEffect(() => { // If data is truncated, we cannot rely on sorting/filtering so will disable. options.defaultColDef.filter = !isTruncated.value - options.defaultColDef.sortable = !isTruncated.value options.api.setColumnDefs(mergedColumnDefs) options.api.setRowData(rowData) })