- Updated .gitignore to include new binary paths and retain .gitkeep.
- Modified Gitleaks configuration to ignore additional directories.
- Adjusted CI workflows to prevent execution on version bump pushes and improved version bump handling in scripts.
- Bumped BetterDesk Console Manager version to 3.3.136 in betterdesk.sh and related scripts.
- Bumped `vitest` and `vite` versions in both root and agent-client lockfiles.
- Added `web-nodejs` overrides for `@babel/core` and `js-yaml` to address Dependabot alerts.
- Implemented `NewConnLimiterFromInt` for relay per-IP limits in the Go server, removing the deprecated `deepSet` function from the patch-role-scope-i18n script.
- Extended CodeQL coverage to include new query filters and improved npm audit configurations.
Commit web-nodejs lockfile with tar override; CI uses npm ci and moderate npm audit.
Add LOG_LEVEL filtering and log redaction in Node console and Go server.
Validate WS tokens on bd-signal; require single-use token for remote-agent relay.
Limit active relay sessions per IP and block open enrollment without TLS.
Help operators reach the panel at https://domain without :5443 via installer prompts, docs, and cleaner HTTP redirects, and align fresh-install self-signed cert permissions with the #219 deploy flow.
- Implemented input validation for `orgId` and `deviceId` in CDAP and organization detail routes using `assertSafeApiId`, returning a 400 error for invalid inputs.
- Added HTML escaping for `deviceId` and `orgId` in views to prevent XSS vulnerabilities.
- Hardened `patch-role-scope-i18n.js` against prototype pollution with a guard for unsafe nested keys.
- Updated CodeQL configuration to include new exclusions and ensure documented exclusions are applied.
GO_API_PORT now overrides API_PORT=21121 in Go LoadEnv and systemd so handlers stay on :21114 while the Node Client API proxy keeps :21121. Ships via panel update and Repair HTTPS/TLS.
Refs #219
Fixes#242. Replace 24h JWT-only client tokens with configurable DB sessions (default 7 days, sliding renewal up to 30 days) and panel settings under Authentication -> RustDesk clients.
- Updated billing contract structure to support multiple target types (organization, device group, folder, device).
- Refactored API handlers to accommodate new billing contract model, including creation, deletion, and listing functionalities.
- Enhanced database interactions for billing contracts, ensuring backward compatibility with legacy billing_org_contracts.
- Added new billing statistics endpoint to provide insights on active sessions and expiring contracts.
- Improved error handling and validation in billing package management.
- Updated CSS to ensure the monitors menu displays as a flex container only when open, improving layout consistency.
- Removed unnecessary JavaScript that displayed the monitors button by default, enhancing code clarity and functionality.
- Updated CSS for the monitors menu to improve layout with flexbox, ensuring better responsiveness and usability.
- Modified JavaScript to encapsulate monitor and virtual display items within dedicated wrappers for improved organization and styling.
- Introduced custom scrollbar styles for better visual integration.
- Added new CSS styles for a responsive display settings dropdown, enhancing usability with a grid layout.
- Updated HTML structure to organize dropdown items into sections for better clarity and accessibility.
- Removed redundant JavaScript calls to close dropdowns on item selection, streamlining interaction.
- Enhanced CSS for the toolbar handle and drawer, adding new styles for expanded and collapsed states.
- Updated HTML structure to reposition the toolbar handle for better accessibility and user experience.
- Improved transition effects for smoother visibility during interactions, including adjustments to padding and margins.
- Updated CSS for the toolbar handle and drawer, improving transitions and visibility during interactions.
- Refined JavaScript to manage the toolbar's expanded and collapsed states, including new aria attributes for accessibility.
- Introduced a drawer-pulling effect for smoother user experience when toggling the toolbar.
- Adjusted HTML structure to support new features and ensure proper functionality of the toolbar components.
- Added new CSS styles for the toolbar chrome exit animation to improve user experience during session disconnections.
- Updated JavaScript functions to manage the toolbar chrome's visibility and animations based on session states, ensuring smoother transitions.
- Introduced a mechanism to handle reduced motion preferences for users, enhancing accessibility.
- Refined toolbar state management to synchronize visibility with session activity, improving overall functionality.