From f480439985409d32a79fbe0ef4b49402752eee5d Mon Sep 17 00:00:00 2001 From: Colin Maudry Date: Wed, 4 Feb 2026 13:04:11 +0100 Subject: [PATCH] =?UTF-8?q?acheteur=20:=20le=20clientside=20callback=20est?= =?UTF-8?q?=20aussi=20trigger=20quand=20les=20colonnes=20affich=C3=A9es=20?= =?UTF-8?q?changent?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/acheteur.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/pages/acheteur.py b/src/pages/acheteur.py index f225d97..0ca2253 100644 --- a/src/pages/acheteur.py +++ b/src/pages/acheteur.py @@ -1,4 +1,5 @@ import datetime +import uuid import dash_bootstrap_components as dbc import polars as pl @@ -11,6 +12,7 @@ from dash import ( clientside_callback, dcc, html, + no_update, register_page, ) @@ -404,16 +406,19 @@ clientside_callback( @callback( Output("acheteur-hidden-columns", "data", allow_duplicate=True), + Output("filter-cleanup-trigger-acheteur", "data", allow_duplicate=True), Input("acheteur_column_list", "selected_rows"), + State("acheteur-filters", "data"), prevent_initial_call=True, ) -def update_hidden_columns_from_checkboxes(selected_columns): +def update_hidden_columns_from_checkboxes(selected_columns, filter_query): + trigger_cleanup = str(uuid.uuid4()) if filter_query else no_update if selected_columns: selected_columns = [columns[i] for i in selected_columns] hidden_columns = [col for col in columns if col not in selected_columns] - return hidden_columns + return hidden_columns, trigger_cleanup else: - return [] + return [], trigger_cleanup @callback(