hamster1963
d295d549da
refactor: optimize ServerDetail loading and update MapTooltip positioning logic
2026-07-05 04:19:39 +08:00
hamster1963
6c7ba30cee
feat: refactor DashCommand to use useMemo for shortcuts and server commands
...
feat: optimize GlobalMap component with useMemo for country data processing
feat: enhance ServerCard and ServerCardInline components with memoization
feat: improve ServiceTracker component by processing service data with useMemo
feat: add VirtualServerList component for efficient rendering of server lists
refactor: update Servers page to utilize VirtualServerList for better performance
test: add tests for DashCommand and GlobalMap components, including virtualization checks
2026-07-05 04:09:22 +08:00
hamster1963
8f3a2f3eb3
chore(deps): update @radix-ui/react-dialog, react-router-dom, @tailwindcss/postcss, @vitejs/plugin-react, tailwindcss, and vite to latest versions
2026-07-02 17:47:22 +08:00
Copilot
9f2f6d9d29
Set build target to safari15 for iOS Safari compatibility ( #76 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
2026-07-02 17:44:52 +08:00
仓鼠
8d58f41856
Implement scroll position management for navigation ( #73 )
...
* feat: implement scroll position management for main page navigation
* fix: import saveMainPageScrollPosition in ServerCard and ServerCardInline components
* feat: save scroll position when navigating to server from DashCommand
* fix: prevent restoring stale scroll positions without main page origin
2026-06-20 16:21:32 +08:00
hamster1963
5a4e47d520
chore(deps): update @radix-ui/react-dialog, react-router-dom, @vitest/coverage-v8, and vitest to latest versions
2026-06-20 00:53:33 +08:00
hamster1963
bdabc0158b
feat: integrate NumericText component for improved numeric display in ServerDetailOverview
2026-06-20 00:48:30 +08:00
hamster1963
03977c4b4d
refactor: update websocket context to use structured data and lazy load components
...
- Changed websocket context to use `lastData` instead of `lastMessage` for better type safety and clarity.
- Updated components to handle the new websocket data structure, including `DashCommand`, `Header`, `ServerDetail`, and various chart components.
- Introduced lazy loading for `NotFound`, `ServerDetail`, and `NetworkChart` components to improve performance.
- Added skeleton loading states for `ServerDetail` to enhance user experience during data fetching.
- Updated tests to reflect changes in websocket data handling and component structure.
2026-06-20 00:48:30 +08:00
dependabot[bot]
f2b13da7b1
chore(deps): bump actions/checkout from 6 to 7 in the all group ( #71 )
...
Bumps the all group with 1 update: [actions/checkout](https://github.com/actions/checkout ).
Updates `actions/checkout` from 6 to 7
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v6...v7 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-19 23:03:21 +08:00
hamster1963
21d60076ce
fix(api): enhance token refresh handling with CSRF token support
2026-06-15 18:51:19 +08:00
hamster1963
ea19d3cc27
chore(deps): update tailwindcss and postcss to version 4.3.1
2026-06-15 18:46:36 +08:00
hamster1963
f536d4ecf5
fix(api): implement CSRF token handling for refresh token requests
2026-06-15 18:45:29 +08:00
hamster1963
5720af9108
test: add unit tests for various components and utilities
...
- Created tests for formatBytes function to ensure correct formatting of byte values.
- Implemented tests for InjectContext to validate resource injection and cleanup.
- Added tests for logo-class helpers to verify platform alias mappings.
- Developed tests for nezha-api functions to check API response handling.
- Introduced tests for static geographic data to validate country coordinates and GeoJSON structure.
- Created comprehensive tests for utility functions including date formatting and public note parsing.
- Added tests for Server page to ensure correct rendering and functionality.
- Implemented tests for simple pages including error handling and navigation.
- Set up testing environment with Vitest and configured coverage reporting.
2026-06-15 11:29:48 +08:00
hamster1963
5670811991
chore(deps): update biome and radix-ui packages to latest versions
2026-06-10 15:21:26 +08:00
hamster1963
a3afa04c69
feat(i18n): add translation for "All" in GroupSwitch component for English, Simplified Chinese, and Traditional Chinese
2026-06-10 15:19:34 +08:00
hamster1963
575c14dfe5
fix: update sort label translation in Servers component
2026-06-10 15:19:20 +08:00
hamster1963
78c412a517
fix: update formatBytes function to return "0 KiB" for zero bytes and streamline size array
2026-06-10 15:04:05 +08:00
hamster1963
6015e616fa
feat: add @numeric-text/react for improved numeric display in Header and ServerOverview components
2026-06-10 15:04:00 +08:00
hamster1963
c6e58167a3
chore(deps): update @radix-ui/react-dialog and react-router-dom to latest versions
2026-06-10 13:23:39 +08:00
hamster1963
eb682dc75f
refactor: remove framer-motion dependencies and implement custom active indicator for improved performance and animations
2026-06-10 13:23:10 +08:00
hamster1963
8e0f7a2fb6
fix(deps): remove bun.lock
2026-06-10 13:22:54 +08:00
hamster1963
67f70ab7d3
fix: add service fetching and conditional rendering for service button
2026-06-06 19:11:23 +08:00
hamster1963
3c9613a179
fix: remove animations from CommandDialog content for improved performance
2026-06-06 18:36:33 +08:00
hamster1963
f9e4c12a6a
fix: enhance dropdown menu styling for improved animations and transitions
2026-06-06 18:34:22 +08:00
dependabot[bot]
00dc5c99dd
chore(deps): bump the all group with 7 updates ( #68 )
...
Bumps the all group with 7 updates:
| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout ) | `4` | `6` |
| [pnpm/action-setup](https://github.com/pnpm/action-setup ) | `4` | `6` |
| [actions/setup-node](https://github.com/actions/setup-node ) | `4` | `6` |
| [softprops/action-gh-release](https://github.com/softprops/action-gh-release ) | `2` | `3` |
| [oven-sh/setup-bun](https://github.com/oven-sh/setup-bun ) | `1` | `2` |
| [stefanzweifel/git-auto-commit-action](https://github.com/stefanzweifel/git-auto-commit-action ) | `5` | `7` |
| [actions/github-script](https://github.com/actions/github-script ) | `7` | `9` |
Updates `actions/checkout` from 4 to 6
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v4...v6 )
Updates `pnpm/action-setup` from 4 to 6
- [Release notes](https://github.com/pnpm/action-setup/releases )
- [Commits](https://github.com/pnpm/action-setup/compare/v4...v6 )
Updates `actions/setup-node` from 4 to 6
- [Release notes](https://github.com/actions/setup-node/releases )
- [Commits](https://github.com/actions/setup-node/compare/v4...v6 )
Updates `softprops/action-gh-release` from 2 to 3
- [Release notes](https://github.com/softprops/action-gh-release/releases )
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md )
- [Commits](https://github.com/softprops/action-gh-release/compare/v2...v3 )
Updates `oven-sh/setup-bun` from 1 to 2
- [Release notes](https://github.com/oven-sh/setup-bun/releases )
- [Commits](https://github.com/oven-sh/setup-bun/compare/v1...v2 )
Updates `stefanzweifel/git-auto-commit-action` from 5 to 7
- [Release notes](https://github.com/stefanzweifel/git-auto-commit-action/releases )
- [Changelog](https://github.com/stefanzweifel/git-auto-commit-action/blob/master/CHANGELOG.md )
- [Commits](https://github.com/stefanzweifel/git-auto-commit-action/compare/v5...v7 )
Updates `actions/github-script` from 7 to 9
- [Release notes](https://github.com/actions/github-script/releases )
- [Commits](https://github.com/actions/github-script/compare/v7...v9 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: all
- dependency-name: pnpm/action-setup
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: all
- dependency-name: actions/setup-node
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: all
- dependency-name: softprops/action-gh-release
dependency-version: '3'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: all
- dependency-name: oven-sh/setup-bun
dependency-version: '2'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: all
- dependency-name: stefanzweifel/git-auto-commit-action
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: all
- dependency-name: actions/github-script
dependency-version: '9'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: all
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-04 11:26:53 +08:00
仓鼠
8a2d8d67bd
Refactor CI workflows and add Dependabot configuration ( #67 )
...
* fix: remove duplicate pnpm setup step in CI and build workflows
* fix: remove version specification for pnpm setup in CI and build workflows
* feat: add Dependabot configuration for GitHub Actions updates
* chore: auto-fix linting and formatting issues
2026-06-04 11:24:59 +08:00
hamster1963
20adf873fc
fix: update pnpm version in CI workflow to ensure compatibility
2026-06-04 11:15:11 +08:00
hamster1963
70532eb44d
fix: improve theme management and styling for better user experience
2026-06-04 11:11:49 +08:00
hamster1963
c8b7dcc8a8
fix: update build workflow to use Node.js and pnpm, and upgrade react-router-dom version
2026-06-04 10:24:16 +08:00
hamster1963
ad0682bbf1
fix: add sorting labels and types for multiple languages in translation files
2026-06-01 15:20:35 +08:00
hamster1963
631390586b
fix: update sort controls styling for improved visibility and consistency
2026-06-01 15:13:21 +08:00
hamster1963
f323f4248b
fix: simplify sorting UI by removing popover and integrating sort controls directly
2026-06-01 15:07:55 +08:00
hamster1963
eac9d6a245
fix: enhance sorting functionality and UI for server list
2026-06-01 14:51:01 +08:00
hamster1963
33ba092345
fix: update button padding and hover styles for improved user interaction
2026-06-01 11:58:33 +08:00
hamster1963
30fb1fbe30
fix: update tooltip styling for improved visual consistency
2026-06-01 11:53:15 +08:00
hamster1963
d69190abd5
fix: improve card styling and hover effects across components
2026-06-01 11:53:11 +08:00
hamster1963
57aaba3918
fix: enhance loading state handling in NetworkChart component
2026-06-01 11:19:41 +08:00
hamster1963
fcaff0bae0
fix: add responsive container handling for chart components
2026-05-31 20:05:35 +08:00
2d46fb6b86
fix: support per-server max/from/to in cycle transfer stats ( #64 )
...
* Initial plan
* fix: support per-server max/from/to values in cycle transfer stats
When the Nezha backend has multiple transfer rules within one alert rule,
the API may return per-server max values (as a map) instead of a single
max value. Update the TypeScript interface and CycleTransferStats component
to handle both formats:
- Single value (number/string): used for all servers (current behavior)
- Per-server map ({[serverId]: value}): uses the correct value per server
Fixes #63
Agent-Logs-Url: https://github.com/hamster1963/nezha-dash-v2/sessions/88f98dad-c2eb-4728-ac98-e02a95d5144d
Co-authored-by: hamster1963 <71394853+hamster1963@users.noreply.github.com >
* fix: update schema version in biome.json and improve null checks in components
* chore: auto-fix linting and formatting issues
* fix: guard null/zero in CycleTransferStats per-server map lookups
Agent-Logs-Url: https://github.com/hamster1963/nezha-dash-v2/sessions/2fb2306b-8011-487d-b284-9768778db8c3
Co-authored-by: hamster1963 <71394853+hamster1963@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: hamster1963 <71394853+hamster1963@users.noreply.github.com >
Co-authored-by: hamster1963 <1410514192@qq.com >
2026-05-26 01:34:02 +08:00
hamster1963
f69f480d3b
fix: enhance sorting functionality by adding forced sort type and order handling
2026-05-25 01:57:50 +08:00
hamster1963
4b0106c011
fix: simplify className usage for icons in Server component
2026-05-25 01:42:49 +08:00
hamster1963
a1b382c3eb
fix: update dependencies in package.json to latest versions
2026-05-25 01:42:43 +08:00
hamster1963
2dcf6fb9d8
fix: remove unused prerelease condition from GitHub Actions workflow
2026-04-02 17:31:50 +08:00
hamster1963
9a21a664c9
fix: add draft condition for release based on tag naming conventions
2026-04-02 17:29:48 +08:00
ffb6102211
Translations update from Hosted Weblate ( #62 )
...
* Translated using Weblate (Ukrainian)
Currently translated at 2.9% (3 of 103 strings)
Added translation using Weblate (Ukrainian)
Added translation using Weblate (Japanese)
Co-authored-by: Hosted Weblate <hosted@weblate.org >
Co-authored-by: Zilong Liu <2821624044@qq.com >
Co-authored-by: Руслан Пузич <visp80@gmail.com >
Translate-URL: https://hosted.weblate.org/projects/nezha/user-frontend/uk/
Translation: Nezha/User frontend
* Translated using Weblate (Ukrainian)
Currently translated at 11.6% (12 of 103 strings)
Translation: Nezha/User frontend
Translate-URL: https://hosted.weblate.org/projects/nezha/user-frontend/uk/
* Added translation using Weblate (Galician)
* Translated using Weblate (Galician)
Currently translated at 100.0% (103 of 103 strings)
Translation: Nezha/User frontend
Translate-URL: https://hosted.weblate.org/projects/nezha/user-frontend/gl/
* Translated using Weblate (Ukrainian)
Currently translated at 50.4% (52 of 103 strings)
Translation: Nezha/User frontend
Translate-URL: https://hosted.weblate.org/projects/nezha/user-frontend/uk/
* Translated using Weblate (Indonesian)
Currently translated at 100.0% (103 of 103 strings)
Translation: Nezha/User frontend
Translate-URL: https://hosted.weblate.org/projects/nezha/user-frontend/id/
* chore: auto-fix linting and formatting issues
---------
Co-authored-by: Zilong Liu <2821624044@qq.com >
Co-authored-by: Руслан Пузич <visp80@gmail.com >
Co-authored-by: nlimeres <dynosaurioprogramador@gmail.com >
Co-authored-by: Arif Budiman <arifpedia@gmail.com >
Co-authored-by: weblate <1607653+weblate@users.noreply.github.com >
Co-authored-by: 仓鼠 <71394853+hamster1963@users.noreply.github.com >
2026-04-02 17:19:50 +08:00
hamster1963
f7662d2751
chore: add CI workflow and update dependencies in package.json and vite.config.ts
2026-04-02 17:17:16 +08:00
Copilot and hamster1963
e4ba96ea76
fix: default network chart period to 1d instead of 30d ( #61 )
...
* Initial plan
* fix: change network chart default period from 30d to 1d
Co-authored-by: hamster1963 <71394853+hamster1963@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: hamster1963 <71394853+hamster1963@users.noreply.github.com >
2026-03-10 15:30:42 +08:00
hamster1963
d7f4f61001
chore: bump version to 2.0.2 in package.json
2026-02-25 17:22:27 +08:00
eceadb6bff
fix: Update service to use display_index as the main sort order ( #60 )
...
* fix: Update service to use display_index as the main sort order
* chore: auto-fix linting and formatting issues
* Update src/types/nezha-api.ts
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
---------
Co-authored-by: huYang <306061454@qq.com >
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-02-25 17:20:42 +08:00
b030cd45d6
Translations update from Hosted Weblate ( #59 )
...
* Translated using Weblate (Ukrainian)
Currently translated at 2.9% (3 of 103 strings)
Added translation using Weblate (Ukrainian)
Added translation using Weblate (Japanese)
Co-authored-by: Hosted Weblate <hosted@weblate.org >
Co-authored-by: Zilong Liu <2821624044@qq.com >
Co-authored-by: Руслан Пузич <visp80@gmail.com >
Translate-URL: https://hosted.weblate.org/projects/nezha/user-frontend/uk/
Translation: Nezha/User frontend
* Translated using Weblate (Ukrainian)
Currently translated at 11.6% (12 of 103 strings)
Translation: Nezha/User frontend
Translate-URL: https://hosted.weblate.org/projects/nezha/user-frontend/uk/
* Added translation using Weblate (Galician)
* Translated using Weblate (Galician)
Currently translated at 100.0% (103 of 103 strings)
Translation: Nezha/User frontend
Translate-URL: https://hosted.weblate.org/projects/nezha/user-frontend/gl/
* Translated using Weblate (Ukrainian)
Currently translated at 50.4% (52 of 103 strings)
Translation: Nezha/User frontend
Translate-URL: https://hosted.weblate.org/projects/nezha/user-frontend/uk/
* chore: auto-fix linting and formatting issues
---------
Co-authored-by: Zilong Liu <2821624044@qq.com >
Co-authored-by: Руслан Пузич <visp80@gmail.com >
Co-authored-by: nlimeres <dynosaurioprogramador@gmail.com >
Co-authored-by: weblate <1607653+weblate@users.noreply.github.com >
Co-authored-by: 仓鼠 <71394853+hamster1963@users.noreply.github.com >
2026-02-22 13:50:33 +08:00