From c66d290db72f69fc03a532665f9d05d3671d76c5 Mon Sep 17 00:00:00 2001 From: Ivan Date: Wed, 22 Apr 2026 20:10:55 -0500 Subject: [PATCH] feat(sieve-filters): implement Sieve Filters page and integrate notification suppression logic --- meshchatx/src/frontend/components/App.vue | 3 + .../components/tools/SieveFiltersPage.vue | 447 ++++++++++++++++++ .../frontend/components/tools/ToolsPage.vue | 8 + .../tools/internal/SieveFlowNetwork.vue | 257 ++++++++++ tests/frontend/SieveFiltersPage.test.js | 114 +++++ tests/frontend/ToolsPage.test.js | 5 +- 6 files changed, 832 insertions(+), 2 deletions(-) create mode 100644 meshchatx/src/frontend/components/tools/SieveFiltersPage.vue create mode 100644 meshchatx/src/frontend/components/tools/internal/SieveFlowNetwork.vue create mode 100644 tests/frontend/SieveFiltersPage.test.js diff --git a/meshchatx/src/frontend/components/App.vue b/meshchatx/src/frontend/components/App.vue index 5a5d520..43b23df 100644 --- a/meshchatx/src/frontend/components/App.vue +++ b/meshchatx/src/frontend/components/App.vue @@ -1119,6 +1119,9 @@ export default { if (this.config?.do_not_disturb_enabled) { break; } + if (json.sieve_suppress_notifications) { + break; + } // show notification for new messages if window is not focussed // only for incoming messages from people (with content) diff --git a/meshchatx/src/frontend/components/tools/SieveFiltersPage.vue b/meshchatx/src/frontend/components/tools/SieveFiltersPage.vue new file mode 100644 index 0000000..437d0b2 --- /dev/null +++ b/meshchatx/src/frontend/components/tools/SieveFiltersPage.vue @@ -0,0 +1,447 @@ + + +