18 Commits
Author SHA1 Message Date
DrSmoothl f452c657ed fix(webui): tint default surfaces with the active accent 2026-11-03 11:03:29 +08:00
DrSmoothl 1cd838e7a1 feat(webui): adopt lavender mascot branding 2026-11-03 10:41:11 +08:00
DrSmoothl 5cd4ae61dd feat(webui): add opt-in MaiBot appearance overlay 2026-10-21 13:07:44 +08:00
手瓜一十雪 0f358b2ac2 fix(webui): stop idle polling and release background timers 2026-10-18 13:49:48 +08:00
手瓜一十雪 fb39af6c28 fix: unify stream cleanup and async request ownership 2026-10-18 13:20:22 +08:00
手瓜一十雪 9b165a8971 refactor: await native operations across the bridge lifecycle 2026-10-18 13:19:21 +08:00
手瓜一十雪 1faa6c58fa fix: unify stream cleanup and configuration response handling 2026-10-18 13:18:25 +08:00
手瓜一十雪 38a7c3da63 fix: standardize version parsing and simplify string escaping 2026-10-18 13:00:39 +08:00
手瓜一十雪 5032cbb8c0 feat(core): add staged self-updates and unify application version 2026-10-18 12:50:11 +08:00
H3CoF6 f6ca9d5f65 feat(bridge): detect local QQ accounts with shared process snapshots (#525)
Read QQ account databases and attribute identities to their owning processes. Share snapshots across REST, watcher updates and login reconciliation, discard stale results, and report detection failures.
2026-10-18 12:10:37 +08:00
8e24995fc3 feat(core): add process facts to ordered account notifications (#539)
* feat(core): carry hook process status in notifications

`offline` alone cannot tell an external supervisor whether the QQ session dropped (log back in) or the process is gone (restart the client). Resolve the hook process behind a UIN at notify time and expose `status`, `pid` and `error` as template variables; a failing lookup degrades to empty values so delivery is never blocked.

The default webhook/email templates gain a process-status line; existing channels keep their stored template untouched.

* fix(core): preserve notification lifecycle ordering and simplify state

---------

Co-authored-by: zhngzhu <215231231+zhngzhu@users.noreply.github.com>
Co-authored-by: 手瓜一十雪 <nanaeonn@outlook.com>
2026-10-18 11:13:58 +08:00
DrSmoothl 5150d83403 fix(webui): preserve reverse proxy authentication
Prevent login loops when the WebUI is protected by HTTP authentication
at a reverse proxy. Apply the fix to settings, uploads, and live streams
while retaining compatibility with existing WebUI clients.

Fixes #523
2026-10-14 08:13:50 +08:00
MliKiowa c7428363cb feat: add async SQLite on Node 24 and improve messaging diagnostics (#520)
Move database work off the main thread on Node.js 24 and improve message handling and runtime diagnostics.

Preserve migration, restart, and concurrency coverage with the async SQLite driver.
2026-10-13 10:12:47 +08:00
DrSmoothl 958d17ecc0 feat(webui): add developer settings tools
Expose onboarding replay and page crash testing from a dedicated settings page.\n\nKeep replay actions isolated from persisted consent and password state.
2026-08-01 00:40:44 +08:00
DrSmoothl 3c13838867 feat(webui): standardize content loading states
Use consistent delayed placeholders across data-backed console surfaces.
Avoid flashing loading UI for fast local responses while keeping slower transitions stable.
Keep failures visible and prevent gated content from opening on incomplete checks.
2026-07-31 16:56:44 +08:00
DrSmoothl f066f3c89c feat(webui): strengthen password change guidance
Use consistent field labels, validation, and strength guidance in both password-change flows.

Show requirements only while the new-password field is active and surface validation failures clearly.
2026-07-31 15:35:29 +08:00
DrSmoothl b982927b4a feat(webui): improve operation feedback
Keep confirmations in dialogs while showing clear progress and results for long-running actions.

Auto-close completed notices, preserve important outcomes across reloads, and avoid noise from routine edits.
2026-07-31 15:35:03 +08:00
手瓜一十雪 39f1672b29 Migrate project to pnpm monorepo
Restructure the repository into a pnpm workspace under packages/ (core, webui, runtime). Move source files for core and webui into packages/*, add package manifests for @snowluma/core and @snowluma/runtime, and remove the old launcher package.json. Update root package.json to be a monorepo controller (scripts delegate to pnpm filters, set packageManager and Node engine). Configure build outputs to emit into the repo-root dist/ (vite config changes) so the existing release pipeline continues to work. Add .npmrc with mirrors, expand .gitignore for monorepo layout, add tsconfig base and package-level tsconfigs, and add vitest config for the core package. Adjust injector native search paths and update tests import paths to the new package layout. Small CI/workflow comment added to clarify build behavior and README updated with monorepo structure and common commands.
2026-05-03 14:02:29 +08:00