caoqianming
0c2ce48d23
feat(frontend): handle UnitRuntimeChanged WebSocket message
2026-03-24 14:58:29 +08:00
caoqianming
21f6008cba
feat(frontend): add start/stop control buttons to equipment cards
2026-03-24 14:58:16 +08:00
caoqianming
89023e867b
feat(frontend): show runtime state and auto/ack buttons on unit cards
2026-03-24 14:58:07 +08:00
caoqianming
31ccf49b75
feat(frontend): add runtimes map to state
2026-03-24 14:57:41 +08:00
caoqianming
49a4afa4a4
feat(web): auto-toast on API errors with dismissible notifications
...
Add showToast() utility in api.js and a matching toast stylesheet.
apiFetch now automatically shows a toast for any 400+ response before
re-throwing, so callers can still .catch() for additional handling.
Toasts stack at the bottom-right, auto-dismiss after 4s, and support
error/warning/success/info levels via a left-border colour accent.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-24 13:43:57 +08:00
caoqianming
a38204511a
refactor(control): align point roles and equipment kind
2026-03-24 13:17:53 +08:00
caoqianming
c50127b9d0
feat(event): stream created events over websocket
2026-03-24 12:28:12 +08:00
caoqianming
1f29eb3871
feat(web): add unit and event management views
2026-03-24 10:56:57 +08:00
caoqianming
4d53ee0337
refactor(web): split index html into flat fragments
2026-03-23 14:14:19 +08:00
caoqianming
6cdc51a249
refactor(point): fold binding into edit action
2026-03-23 13:20:03 +08:00
caoqianming
e55c1d5efb
fix(chart): restore realtime updates and axes
2026-03-23 12:55:12 +08:00
caoqianming
fec7b60d6b
feat(web): reorganize equipment layout and point flows
2026-03-23 12:49:26 +08:00
caoqianming
06ace5e67d
refactor(app): split services and web modules
2026-03-23 11:31:38 +08:00