The dist files merged in #60621 were built using master's node_modules,
which had @nextcloud/dialogs@7.3.0. That version bundles a Vue 3-compiled
floating-vue/vue-resize that imports withScopeId, openBlock, createBlock
from 'vue'. Vue 2.7.16 (used in stable31) does not export these APIs,
causing a TypeError on page load that crashed all Cypress tests.
Rebuilt using stable31's package-lock.json (@nextcloud/dialogs@6.4.2)
with Node 20 as required by the project's engine constraint.
AI-Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Anna Larch <anna@nextcloud.com>
Backport of #60617 for stable31.
When comments are loaded via the Activity sidebar integration, call
markCommentsAsRead() so the file-row unread comment bubble clears after
viewing. Also add a DELETE /notifications/{id} endpoint and call it for
each comment that mentions the current user so the notification bell
clears without navigating via the notification link.
Fixes: nextcloud/activity#2531
AI-Assisted-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Anna Larch <anna@nextcloud.com>