Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,24 @@
## [2.7.0] - 2026-09-17

### Added
- **The notification bell can be filtered.** `@simpleworkjs/frontend` 0.4.3 →
0.5.0 brings muting -- `'Resource:update'` (one model, one action),
`'Resource'` (one model, every action) and `'*:update'` (one action, every
model, the "hide updates" button) -- persisted per-app in `localStorage`.
`views/top.ejs` gains the `#notify-filters` container the controls render
into; without it muting still works, it just has no UI, and a filter nobody
can reach is not a filter.

### Fixed
- **A burst of events no longer raises a burst of toasts.** The feed popped one
toast and one desktop notification per arriving event while its own list
collapsed correctly, so a sweep that produced one tidy "42 resources updated"
row also stacked 42 toasts beside it. Popups now buffer briefly and are
collapsed the same way the list is.
- **Root `package.json` was two patch versions behind** at `2.6.0` on a tree
released as `v2.6.2`. Nothing consumes that field, which is exactly why it
keeps drifting; both manifests now agree.

## [2.6.2] - 2026-09-16

### Fixed
Expand Down
12 changes: 6 additions & 6 deletions nodejs/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions nodejs/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "theta-proxy",
"version": "2.6.2",
"version": "2.7.0",
"author": [
{
"name": "William Mantly",
Expand All @@ -24,7 +24,7 @@
"@simpleworkjs/app-stack": "^1.0.0",
"@simpleworkjs/bao-conf": "^1.0.2",
"@simpleworkjs/conf": "^1.2.0",
"@simpleworkjs/frontend": "^0.4.3",
"@simpleworkjs/frontend": "^0.5.0",
"@simpleworkjs/ldap": "^1.0.0",
"@simpleworkjs/oidc-client": "^1.1.1",
"acme-client": "^5.4.0",
Expand Down
6 changes: 6 additions & 0 deletions nodejs/views/top.ejs
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,12 @@
</div>
</div>
<ul id="notify-list" class="list-unstyled mb-0 py-1"></ul>
<!-- app.notify renders mute controls here, built from the
models actually present in the feed. Without this
element muting still works via configure({mutes}),
it just has no UI -- and a filter nobody can reach
is not a filter. -->
<div id="notify-filters" class="bg-light"></div>
<div class="px-3 py-2 border-top bg-light text-center">
<a href="#" id="notify-desktop-toggle" class="small text-decoration-none"></a>
</div>
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "theta-proxy",
"version": "2.6.0",
"version": "2.7.0",
"description": "Reverse proxy and SSL certificate manager for Theta Suite",
"scripts": {
"test": "npm --prefix nodejs test",
Expand Down
Loading