naiba
4d17b2e018
Merge pull request #167 from nezhahq/dependabot/npm_and_yarn/npm-dependencies-1adf4e205b
2026-06-17 09:40:13 +08:00
dependabot[bot]
c20ba4bc66
chore(deps): bump the npm-dependencies group with 22 updates
...
Bumps the npm-dependencies group with 22 updates:
| Package | From | To |
| --- | --- | --- |
| [@radix-ui/react-alert-dialog](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/alert-dialog ) | `1.1.15` | `1.1.16` |
| [@radix-ui/react-avatar](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/avatar ) | `1.1.11` | `1.1.12` |
| [@radix-ui/react-checkbox](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/checkbox ) | `1.3.3` | `1.3.4` |
| [@radix-ui/react-dialog](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/dialog ) | `1.1.15` | `1.1.16` |
| [@radix-ui/react-dropdown-menu](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/dropdown-menu ) | `2.1.16` | `2.1.17` |
| [@radix-ui/react-label](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/label ) | `2.1.8` | `2.1.9` |
| [@radix-ui/react-navigation-menu](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/navigation-menu ) | `1.2.14` | `1.2.15` |
| [@radix-ui/react-popover](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/popover ) | `1.1.15` | `1.1.16` |
| [@radix-ui/react-scroll-area](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/scroll-area ) | `1.2.10` | `1.2.11` |
| [@radix-ui/react-select](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/select ) | `2.2.6` | `2.3.0` |
| [@radix-ui/react-separator](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/separator ) | `1.1.8` | `1.1.9` |
| [@radix-ui/react-slot](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/slot ) | `1.2.4` | `1.2.5` |
| [@radix-ui/react-switch](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/switch ) | `1.2.6` | `1.3.0` |
| [@radix-ui/react-tabs](https://github.com/radix-ui/primitives/tree/HEAD/packages/react/tabs ) | `1.1.13` | `1.1.14` |
| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss ) | `4.3.0` | `4.3.1` |
| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react ) | `1.17.0` | `1.18.0` |
| [react-hook-form](https://github.com/react-hook-form/react-hook-form ) | `7.77.0` | `7.78.0` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) | `25.9.2` | `25.9.3` |
| [eslint](https://github.com/eslint/eslint ) | `10.4.1` | `10.5.0` |
| [swagger-typescript-api](https://github.com/acacode/swagger-typescript-api ) | `13.12.1` | `13.12.2` |
| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss ) | `4.3.0` | `4.3.1` |
| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint ) | `8.60.1` | `8.61.0` |
Updates `@radix-ui/react-alert-dialog` from 1.1.15 to 1.1.16
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/alert-dialog/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/alert-dialog )
Updates `@radix-ui/react-avatar` from 1.1.11 to 1.1.12
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/avatar/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/avatar )
Updates `@radix-ui/react-checkbox` from 1.3.3 to 1.3.4
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/checkbox/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/checkbox )
Updates `@radix-ui/react-dialog` from 1.1.15 to 1.1.16
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/dialog/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/dialog )
Updates `@radix-ui/react-dropdown-menu` from 2.1.16 to 2.1.17
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/dropdown-menu/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/dropdown-menu )
Updates `@radix-ui/react-label` from 2.1.8 to 2.1.9
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/label/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/label )
Updates `@radix-ui/react-navigation-menu` from 1.2.14 to 1.2.15
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/navigation-menu/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/navigation-menu )
Updates `@radix-ui/react-popover` from 1.1.15 to 1.1.16
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/popover/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/popover )
Updates `@radix-ui/react-scroll-area` from 1.2.10 to 1.2.11
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/scroll-area/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/scroll-area )
Updates `@radix-ui/react-select` from 2.2.6 to 2.3.0
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/select/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/select )
Updates `@radix-ui/react-separator` from 1.1.8 to 1.1.9
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/separator/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/separator )
Updates `@radix-ui/react-slot` from 1.2.4 to 1.2.5
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/slot/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/slot )
Updates `@radix-ui/react-switch` from 1.2.6 to 1.3.0
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/switch/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/switch )
Updates `@radix-ui/react-tabs` from 1.1.13 to 1.1.14
- [Changelog](https://github.com/radix-ui/primitives/blob/main/packages/react/tabs/CHANGELOG.md )
- [Commits](https://github.com/radix-ui/primitives/commits/HEAD/packages/react/tabs )
Updates `@tailwindcss/postcss` from 4.3.0 to 4.3.1
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases )
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md )
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.3.1/packages/@tailwindcss-postcss )
Updates `lucide-react` from 1.17.0 to 1.18.0
- [Release notes](https://github.com/lucide-icons/lucide/releases )
- [Commits](https://github.com/lucide-icons/lucide/commits/1.18.0/packages/lucide-react )
Updates `react-hook-form` from 7.77.0 to 7.78.0
- [Release notes](https://github.com/react-hook-form/react-hook-form/releases )
- [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md )
- [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.77.0...v7.78.0 )
Updates `@types/node` from 25.9.2 to 25.9.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `eslint` from 10.4.1 to 10.5.0
- [Release notes](https://github.com/eslint/eslint/releases )
- [Commits](https://github.com/eslint/eslint/compare/v10.4.1...v10.5.0 )
Updates `swagger-typescript-api` from 13.12.1 to 13.12.2
- [Release notes](https://github.com/acacode/swagger-typescript-api/releases )
- [Changelog](https://github.com/acacode/swagger-typescript-api/blob/main/CHANGELOG.md )
- [Commits](https://github.com/acacode/swagger-typescript-api/compare/v13.12.1...v13.12.2 )
Updates `tailwindcss` from 4.3.0 to 4.3.1
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases )
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md )
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.3.1/packages/tailwindcss )
Updates `typescript-eslint` from 8.60.1 to 8.61.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.61.0/packages/typescript-eslint )
---
updated-dependencies:
- dependency-name: "@radix-ui/react-alert-dialog"
dependency-version: 1.1.16
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-avatar"
dependency-version: 1.1.12
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-checkbox"
dependency-version: 1.3.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-dialog"
dependency-version: 1.1.16
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-dropdown-menu"
dependency-version: 2.1.17
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-label"
dependency-version: 2.1.9
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-navigation-menu"
dependency-version: 1.2.15
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-popover"
dependency-version: 1.1.16
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-scroll-area"
dependency-version: 1.2.11
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-select"
dependency-version: 2.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-separator"
dependency-version: 1.1.9
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-slot"
dependency-version: 1.2.5
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-switch"
dependency-version: 1.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-tabs"
dependency-version: 1.1.14
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@tailwindcss/postcss"
dependency-version: 4.3.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: lucide-react
dependency-version: 1.18.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: react-hook-form
dependency-version: 7.78.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: "@types/node"
dependency-version: 25.9.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: eslint
dependency-version: 10.5.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: swagger-typescript-api
dependency-version: 13.12.2
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: tailwindcss
dependency-version: 4.3.1
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: typescript-eslint
dependency-version: 8.61.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-06-12 23:36:39 +00:00
Hosted Weblate and Arif Budiman
47feb7fc68
Translated using Weblate (Indonesian)
...
Currently translated at 100.0% (301 of 301 strings)
Co-authored-by: Arif Budiman <arifpedia@gmail.com >
Translate-URL: https://hosted.weblate.org/projects/nezha/admin-frontend/id/
Translation: Nezha/Admin frontend
2026-06-06 02:01:06 +00:00
naiba
2ff923220f
fix: migrate to tailwind v4 and TS6, add oauth2 dashboard_host setting
...
- migrate Tailwind v3->v4 (postcss @tailwindcss/postcss, CSS-first @theme/@plugin/@custom-variant)
- fix TS6 build: ignoreDeprecations for baseUrl, react-day-picker v10 classNames, test type fixes
- add dashboard_host setting field with i18n
2026-06-06 01:39:25 +00:00
dependabot[bot]
ee99e93e5e
chore(deps-dev): bump flatted from 3.3.3 to 3.4.2 ( #165 )
...
Bumps [flatted](https://github.com/WebReflection/flatted ) from 3.3.3 to 3.4.2.
- [Commits](https://github.com/WebReflection/flatted/compare/v3.3.3...v3.4.2 )
---
updated-dependencies:
- dependency-name: flatted
dependency-version: 3.4.2
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-06 08:17:48 +08:00
dependabot[bot]
1589fe6a4c
chore(deps): bump the github-actions group with 8 updates ( #160 )
...
Bumps the github-actions group with 8 updates:
| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout ) | `4` | `6` |
| [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` |
| [actions/setup-node](https://github.com/actions/setup-node ) | `4` | `6` |
| [actions/setup-go](https://github.com/actions/setup-go ) | `5` | `6` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact ) | `4` | `7` |
| [softprops/action-gh-release](https://github.com/softprops/action-gh-release ) | `2` | `3` |
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 `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 )
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 `actions/setup-go` from 5 to 6
- [Release notes](https://github.com/actions/setup-go/releases )
- [Commits](https://github.com/actions/setup-go/compare/v5...v6 )
Updates `actions/upload-artifact` from 4 to 7
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v7 )
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 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: oven-sh/setup-bun
dependency-version: '2'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: stefanzweifel/git-auto-commit-action
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/github-script
dependency-version: '9'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/setup-node
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/setup-go
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/upload-artifact
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: softprops/action-gh-release
dependency-version: '3'
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-06 08:15:40 +08:00
dependabot[bot]
bad0c5d4b4
chore(deps): bump the npm-dependencies group with 44 updates ( #164 )
...
Bumps the npm-dependencies group with 44 updates:
| Package | From | To |
| --- | --- | --- |
| [@hookform/resolvers](https://github.com/react-hook-form/resolvers ) | `5.2.2` | `5.4.0` |
| [@radix-ui/react-avatar](https://github.com/radix-ui/primitives ) | `1.1.10` | `1.1.11` |
| [@radix-ui/react-label](https://github.com/radix-ui/primitives ) | `2.1.7` | `2.1.8` |
| [@radix-ui/react-separator](https://github.com/radix-ui/primitives ) | `1.1.7` | `1.1.8` |
| [@radix-ui/react-slot](https://github.com/radix-ui/primitives ) | `1.2.3` | `1.2.4` |
| [@tailwindcss/postcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss ) | `4.1.14` | `4.3.0` |
| [@trivago/prettier-plugin-sort-imports](https://github.com/trivago/prettier-plugin-sort-imports ) | `5.2.2` | `6.0.2` |
| [@xterm/addon-attach](https://github.com/xtermjs/xterm.js ) | `0.11.0` | `0.12.0` |
| [@xterm/addon-fit](https://github.com/xtermjs/xterm.js ) | `0.10.0` | `0.11.0` |
| [@xterm/xterm](https://github.com/xtermjs/xterm.js ) | `5.5.0` | `6.0.0` |
| [copy-to-clipboard](https://github.com/sudodoki/copy-to-clipboard ) | `3.3.3` | `4.0.2` |
| [date-fns](https://github.com/date-fns/date-fns ) | `4.1.0` | `4.4.0` |
| [framer-motion](https://github.com/motiondivision/motion ) | `12.23.22` | `12.40.0` |
| [i18next](https://github.com/i18next/i18next ) | `25.5.3` | `26.3.1` |
| [i18next-browser-languagedetector](https://github.com/i18next/i18next-browser-languageDetector ) | `8.2.0` | `8.2.1` |
| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react ) | `0.545.0` | `1.17.0` |
| [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss ) | `0.6.14` | `0.8.0` |
| [react](https://github.com/facebook/react/tree/HEAD/packages/react ) | `19.2.0` | `19.2.7` |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react ) | `19.2.14` | `19.2.17` |
| [react-day-picker](https://github.com/gpbl/react-day-picker/tree/HEAD/packages/react-day-picker ) | `9.13.2` | `10.0.1` |
| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom ) | `19.2.0` | `19.2.7` |
| [react-hook-form](https://github.com/react-hook-form/react-hook-form ) | `7.71.1` | `7.77.0` |
| [react-i18next](https://github.com/i18next/react-i18next ) | `16.0.0` | `17.0.8` |
| [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom ) | `7.13.0` | `7.17.0` |
| [react-virtuoso](https://github.com/petyosi/react-virtuoso/tree/HEAD/packages/react-virtuoso ) | `4.14.1` | `4.18.7` |
| [swr](https://github.com/vercel/swr ) | `2.3.6` | `2.4.1` |
| [tailwind-merge](https://github.com/dcastil/tailwind-merge ) | `3.3.1` | `3.6.0` |
| [zod](https://github.com/colinhacks/zod ) | `4.3.6` | `4.4.3` |
| [zustand](https://github.com/pmndrs/zustand ) | `5.0.8` | `5.0.14` |
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js ) | `9.39.2` | `10.0.1` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) | `24.10.13` | `25.9.2` |
| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react ) | `5.0.4` | `6.0.2` |
| [autoprefixer](https://github.com/postcss/autoprefixer ) | `10.4.21` | `10.5.0` |
| [eslint](https://github.com/eslint/eslint ) | `9.39.2` | `10.4.1` |
| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks ) | `7.0.1` | `7.1.1` |
| [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh ) | `0.4.23` | `0.5.2` |
| [globals](https://github.com/sindresorhus/globals ) | `16.4.0` | `17.6.0` |
| [postcss](https://github.com/postcss/postcss ) | `8.4.24` | `8.5.15` |
| [swagger-typescript-api](https://github.com/acacode/swagger-typescript-api ) | `13.2.17` | `13.12.1` |
| [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss ) | `3.4.19` | `4.3.0` |
| [typescript](https://github.com/microsoft/TypeScript ) | `5.9.3` | `6.0.3` |
| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint ) | `8.55.0` | `8.60.1` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) | `7.3.1` | `8.0.16` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest ) | `4.1.7` | `4.1.8` |
Updates `@hookform/resolvers` from 5.2.2 to 5.4.0
- [Release notes](https://github.com/react-hook-form/resolvers/releases )
- [Commits](https://github.com/react-hook-form/resolvers/compare/v5.2.2...v5.4.0 )
Updates `@radix-ui/react-avatar` from 1.1.10 to 1.1.11
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md )
- [Commits](https://github.com/radix-ui/primitives/commits )
Updates `@radix-ui/react-label` from 2.1.7 to 2.1.8
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md )
- [Commits](https://github.com/radix-ui/primitives/commits )
Updates `@radix-ui/react-separator` from 1.1.7 to 1.1.8
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md )
- [Commits](https://github.com/radix-ui/primitives/commits )
Updates `@radix-ui/react-slot` from 1.2.3 to 1.2.4
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md )
- [Commits](https://github.com/radix-ui/primitives/commits )
Updates `@tailwindcss/postcss` from 4.1.14 to 4.3.0
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases )
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md )
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/@tailwindcss-postcss )
Updates `@trivago/prettier-plugin-sort-imports` from 5.2.2 to 6.0.2
- [Release notes](https://github.com/trivago/prettier-plugin-sort-imports/releases )
- [Changelog](https://github.com/trivago/prettier-plugin-sort-imports/blob/main/CHANGELOG.md )
- [Commits](https://github.com/trivago/prettier-plugin-sort-imports/compare/v5.2.2...v6.0.2 )
Updates `@xterm/addon-attach` from 0.11.0 to 0.12.0
- [Release notes](https://github.com/xtermjs/xterm.js/releases )
- [Commits](https://github.com/xtermjs/xterm.js/compare/0.11...0.12 )
Updates `@xterm/addon-fit` from 0.10.0 to 0.11.0
- [Release notes](https://github.com/xtermjs/xterm.js/releases )
- [Commits](https://github.com/xtermjs/xterm.js/compare/0.10...0.11 )
Updates `@xterm/xterm` from 5.5.0 to 6.0.0
- [Release notes](https://github.com/xtermjs/xterm.js/releases )
- [Commits](https://github.com/xtermjs/xterm.js/compare/5.5.0...6.0.0 )
Updates `copy-to-clipboard` from 3.3.3 to 4.0.2
- [Release notes](https://github.com/sudodoki/copy-to-clipboard/releases )
- [Changelog](https://github.com/sudodoki/copy-to-clipboard/blob/main/CHANGELOG.md )
- [Commits](https://github.com/sudodoki/copy-to-clipboard/compare/v3.3.3...v4.0.2 )
Updates `date-fns` from 4.1.0 to 4.4.0
- [Release notes](https://github.com/date-fns/date-fns/releases )
- [Commits](https://github.com/date-fns/date-fns/compare/v4.1.0...v4.4.0 )
Updates `framer-motion` from 12.23.22 to 12.40.0
- [Changelog](https://github.com/motiondivision/motion/blob/main/CHANGELOG.md )
- [Commits](https://github.com/motiondivision/motion/compare/v12.23.22...v12.40.0 )
Updates `i18next` from 25.5.3 to 26.3.1
- [Release notes](https://github.com/i18next/i18next/releases )
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md )
- [Commits](https://github.com/i18next/i18next/compare/v25.5.3...v26.3.1 )
Updates `i18next-browser-languagedetector` from 8.2.0 to 8.2.1
- [Changelog](https://github.com/i18next/i18next-browser-languageDetector/blob/master/CHANGELOG.md )
- [Commits](https://github.com/i18next/i18next-browser-languageDetector/compare/v8.2.0...v8.2.1 )
Updates `lucide-react` from 0.545.0 to 1.17.0
- [Release notes](https://github.com/lucide-icons/lucide/releases )
- [Commits](https://github.com/lucide-icons/lucide/commits/1.17.0/packages/lucide-react )
Updates `prettier-plugin-tailwindcss` from 0.6.14 to 0.8.0
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases )
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md )
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.14...v0.8.0 )
Updates `react` from 19.2.0 to 19.2.7
- [Release notes](https://github.com/facebook/react/releases )
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md )
- [Commits](https://github.com/facebook/react/commits/v19.2.7/packages/react )
Updates `@types/react` from 19.2.14 to 19.2.17
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react )
Updates `react-day-picker` from 9.13.2 to 10.0.1
- [Release notes](https://github.com/gpbl/react-day-picker/releases )
- [Changelog](https://github.com/gpbl/react-day-picker/blob/main/packages/react-day-picker/CHANGELOG.md )
- [Commits](https://github.com/gpbl/react-day-picker/commits/v10.0.1/packages/react-day-picker )
Updates `react-dom` from 19.2.0 to 19.2.7
- [Release notes](https://github.com/facebook/react/releases )
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md )
- [Commits](https://github.com/facebook/react/commits/v19.2.7/packages/react-dom )
Updates `react-hook-form` from 7.71.1 to 7.77.0
- [Release notes](https://github.com/react-hook-form/react-hook-form/releases )
- [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md )
- [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.71.1...v7.77.0 )
Updates `react-i18next` from 16.0.0 to 17.0.8
- [Changelog](https://github.com/i18next/react-i18next/blob/master/CHANGELOG.md )
- [Commits](https://github.com/i18next/react-i18next/compare/v16.0.0...v17.0.8 )
Updates `react-router-dom` from 7.13.0 to 7.17.0
- [Release notes](https://github.com/remix-run/react-router/releases )
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md )
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@7.17.0/packages/react-router-dom )
Updates `react-virtuoso` from 4.14.1 to 4.18.7
- [Release notes](https://github.com/petyosi/react-virtuoso/releases )
- [Changelog](https://github.com/petyosi/react-virtuoso/blob/main/packages/react-virtuoso/CHANGELOG.md )
- [Commits](https://github.com/petyosi/react-virtuoso/commits/react-virtuoso@4.18.7/packages/react-virtuoso )
Updates `swr` from 2.3.6 to 2.4.1
- [Release notes](https://github.com/vercel/swr/releases )
- [Commits](https://github.com/vercel/swr/compare/v2.3.6...v2.4.1 )
Updates `tailwind-merge` from 3.3.1 to 3.6.0
- [Release notes](https://github.com/dcastil/tailwind-merge/releases )
- [Commits](https://github.com/dcastil/tailwind-merge/compare/v3.3.1...v3.6.0 )
Updates `zod` from 4.3.6 to 4.4.3
- [Release notes](https://github.com/colinhacks/zod/releases )
- [Commits](https://github.com/colinhacks/zod/compare/v4.3.6...v4.4.3 )
Updates `zustand` from 5.0.8 to 5.0.14
- [Release notes](https://github.com/pmndrs/zustand/releases )
- [Commits](https://github.com/pmndrs/zustand/compare/v5.0.8...v5.0.14 )
Updates `@eslint/js` from 9.39.2 to 10.0.1
- [Release notes](https://github.com/eslint/eslint/releases )
- [Commits](https://github.com/eslint/eslint/commits/v10.0.1/packages/js )
Updates `@types/node` from 24.10.13 to 25.9.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `@types/react` from 19.2.14 to 19.2.17
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react )
Updates `@vitejs/plugin-react` from 5.0.4 to 6.0.2
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases )
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@6.0.2/packages/plugin-react )
Updates `autoprefixer` from 10.4.21 to 10.5.0
- [Release notes](https://github.com/postcss/autoprefixer/releases )
- [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md )
- [Commits](https://github.com/postcss/autoprefixer/compare/10.4.21...10.5.0 )
Updates `eslint` from 9.39.2 to 10.4.1
- [Release notes](https://github.com/eslint/eslint/releases )
- [Commits](https://github.com/eslint/eslint/compare/v9.39.2...v10.4.1 )
Updates `eslint-plugin-react-hooks` from 7.0.1 to 7.1.1
- [Release notes](https://github.com/facebook/react/releases )
- [Changelog](https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md )
- [Commits](https://github.com/facebook/react/commits/eslint-plugin-react-hooks@7.1.1/packages/eslint-plugin-react-hooks )
Updates `eslint-plugin-react-refresh` from 0.4.23 to 0.5.2
- [Release notes](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/releases )
- [Changelog](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/compare/v0.4.23...v0.5.2 )
Updates `globals` from 16.4.0 to 17.6.0
- [Release notes](https://github.com/sindresorhus/globals/releases )
- [Commits](https://github.com/sindresorhus/globals/compare/v16.4.0...v17.6.0 )
Updates `postcss` from 8.4.24 to 8.5.15
- [Release notes](https://github.com/postcss/postcss/releases )
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md )
- [Commits](https://github.com/postcss/postcss/compare/8.4.24...8.5.15 )
Updates `swagger-typescript-api` from 13.2.17 to 13.12.1
- [Release notes](https://github.com/acacode/swagger-typescript-api/releases )
- [Changelog](https://github.com/acacode/swagger-typescript-api/blob/main/CHANGELOG.md )
- [Commits](https://github.com/acacode/swagger-typescript-api/compare/13.2.17...v13.12.1 )
Updates `tailwindcss` from 3.4.19 to 4.3.0
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases )
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md )
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.3.0/packages/tailwindcss )
Updates `typescript` from 5.9.3 to 6.0.3
- [Release notes](https://github.com/microsoft/TypeScript/releases )
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.9.3...v6.0.3 )
Updates `typescript-eslint` from 8.55.0 to 8.60.1
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.60.1/packages/typescript-eslint )
Updates `vite` from 7.3.1 to 8.0.16
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v8.0.16/packages/vite )
Updates `vitest` from 4.1.7 to 4.1.8
- [Release notes](https://github.com/vitest-dev/vitest/releases )
- [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md )
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.8/packages/vitest )
---
updated-dependencies:
- dependency-name: "@hookform/resolvers"
dependency-version: 5.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-avatar"
dependency-version: 1.1.11
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-label"
dependency-version: 2.1.8
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-separator"
dependency-version: 1.1.8
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@radix-ui/react-slot"
dependency-version: 1.2.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@tailwindcss/postcss"
dependency-version: 4.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: "@trivago/prettier-plugin-sort-imports"
dependency-version: 6.0.2
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: "@xterm/addon-attach"
dependency-version: 0.12.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: "@xterm/addon-fit"
dependency-version: 0.11.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: "@xterm/xterm"
dependency-version: 6.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: copy-to-clipboard
dependency-version: 4.0.2
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: date-fns
dependency-version: 4.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: framer-motion
dependency-version: 12.40.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: i18next
dependency-version: 26.3.1
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: i18next-browser-languagedetector
dependency-version: 8.2.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: lucide-react
dependency-version: 1.17.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: prettier-plugin-tailwindcss
dependency-version: 0.8.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: react
dependency-version: 19.2.7
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@types/react"
dependency-version: 19.2.17
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: react-day-picker
dependency-version: 10.0.1
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: react-dom
dependency-version: 19.2.7
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: react-hook-form
dependency-version: 7.77.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: react-i18next
dependency-version: 17.0.8
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: react-router-dom
dependency-version: 7.17.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: react-virtuoso
dependency-version: 4.18.7
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: swr
dependency-version: 2.4.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: tailwind-merge
dependency-version: 3.6.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: zod
dependency-version: 4.4.3
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: zustand
dependency-version: 5.0.14
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@eslint/js"
dependency-version: 10.0.1
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: "@types/node"
dependency-version: 25.9.2
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: "@types/react"
dependency-version: 19.2.17
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-dependencies
- dependency-name: "@vitejs/plugin-react"
dependency-version: 6.0.2
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: autoprefixer
dependency-version: 10.5.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: eslint
dependency-version: 10.4.1
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: eslint-plugin-react-hooks
dependency-version: 7.1.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: eslint-plugin-react-refresh
dependency-version: 0.5.2
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: globals
dependency-version: 17.6.0
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: postcss
dependency-version: 8.5.15
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: swagger-typescript-api
dependency-version: 13.12.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: tailwindcss
dependency-version: 4.3.0
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: typescript
dependency-version: 6.0.3
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: typescript-eslint
dependency-version: 8.60.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: npm-dependencies
- dependency-name: vite
dependency-version: 8.0.16
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: npm-dependencies
- dependency-name: vitest
dependency-version: 4.1.8
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: npm-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-06 08:15:10 +08:00
naiba
c706ffbd36
ci: add dependabot for npm and github actions
2026-06-05 22:53:28 +00:00
Nezha Dev
b2d63355b9
feat(i18n): register ja, ro, uk, gl in language switcher
...
These four locales had translation files but were never wired into i18n
resources or the nezhaLang dropdown, so users could not select them.
Register ja-JP, ro-RO, uk-UA, gl-ES; missing keys fall back to en-US per
the Weblate community-translation workflow.
2026-06-05 01:13:16 +00:00
naiba
aa0f6a201a
feat(i18n): register ja, ro, uk, gl in language switcher
...
These four locales had translation files but were never wired into i18n
resources or the nezhaLang dropdown, so users could not select them.
Register ja-JP, ro-RO, uk-UA, gl-ES; missing keys fall back to en-US per
the Weblate community-translation workflow.
2026-06-05 01:13:16 +00:00
naiba
dea01c1600
Merge pull request #159 from weblate/weblate-nezha-admin-frontend
...
Translations update from Hosted Weblate
2026-06-05 00:12:32 +08:00
naiba
353151b940
Merge pull request #159 from weblate/weblate-nezha-admin-frontend
...
Translations update from Hosted Weblate
2026-06-05 00:12:32 +08:00
071a436207
Translated using Weblate (Romanian)
...
Currently translated at 97.0% (293 of 302 strings)
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 99.6% (301 of 302 strings)
Translated using Weblate (Romanian)
Currently translated at 50.9% (154 of 302 strings)
Added translation using Weblate (Romanian)
Co-authored-by: A <cdparanoia@users.noreply.hosted.weblate.org >
Co-authored-by: Hosted Weblate <hosted@weblate.org >
Co-authored-by: UUBulb <uub@suwako.de >
Translate-URL: https://hosted.weblate.org/projects/nezha/admin-frontend/ro/
Translate-URL: https://hosted.weblate.org/projects/nezha/admin-frontend/zh_Hans/
Translation: Nezha/Admin frontend
2026-06-02 18:05:05 +02:00
9ae8baf7f3
Translated using Weblate (Romanian)
...
Currently translated at 97.0% (293 of 302 strings)
Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 99.6% (301 of 302 strings)
Translated using Weblate (Romanian)
Currently translated at 50.9% (154 of 302 strings)
Added translation using Weblate (Romanian)
Co-authored-by: A <cdparanoia@users.noreply.hosted.weblate.org >
Co-authored-by: Hosted Weblate <hosted@weblate.org >
Co-authored-by: UUBulb <uub@suwako.de >
Translate-URL: https://hosted.weblate.org/projects/nezha/admin-frontend/ro/
Translate-URL: https://hosted.weblate.org/projects/nezha/admin-frontend/zh_Hans/
Translation: Nezha/Admin frontend
2026-06-02 18:05:05 +02:00
Nezha Dev
90135b0819
feat(service): replace show-in-service with hide-for-guest toggle
...
Mirror the server HideForGuest flag on services: rename the
enable_show_in_service field to hide_for_guest across the form, schema
and generated types, reuse the existing HideForGuest label, and drop the
now-orphaned ShowInService i18n keys. Services are now visible to guests
by default and hidden only when the box is checked, matching servers.
2026-06-02 03:07:36 +00:00
naiba
005b4a0b3b
feat(service): replace show-in-service with hide-for-guest toggle
...
Mirror the server HideForGuest flag on services: rename the
enable_show_in_service field to hide_for_guest across the form, schema
and generated types, reuse the existing HideForGuest label, and drop the
now-orphaned ShowInService i18n keys. Services are now visible to guests
by default and hidden only when the box is checked, matching servers.
2026-06-02 03:07:36 +00:00
Nezha Dev
4c0de60843
feat(api-tokens): split inventory scope out of server scope
...
Surface the new nezha:inventory:{read,delete,*} scopes that gate listing
and deleting servers/server-groups, separate from nezha:server:* which now
covers per-server runtime operations. Refine server-scope descriptions to
match the backend split.
2026-05-31 15:10:03 +00:00
naiba
66e20c3860
feat(api-tokens): split inventory scope out of server scope
...
Surface the new nezha:inventory:{read,delete,*} scopes that gate listing
and deleting servers/server-groups, separate from nezha:server:* which now
covers per-server runtime operations. Refine server-scope descriptions to
match the backend split.
2026-05-31 15:10:03 +00:00
naiba and cloudcode
bba5a8c44a
test(e2e): fix revoke empty-list crash and password-restore CSRF cascade
...
Two CI-only failures surfaced against a fresh backend DB:
- The revoke test read after.data.find(), but the list endpoint omits data
entirely when the admin has zero tokens, throwing on undefined. Default to [].
- The password-change test's restore POST hit a 403: changing the password
triggers a refresh-token that re-mints the nz-csrf cookie, so the X-CSRF-Token
read just before the request can be stale. A failed restore left the admin on
the rotated password and cascaded into cron/fm/visibility login failures.
Add csrfRequest(), which retries once on 403 after re-reading the cookie, and
use it for both profile mutations.
Verified 8/8 passing across repeated fresh-DB CI-mode runs.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-31 08:45:19 +00:00
naiba and cloudcode
7057aa3098
test(e2e): fix revoke empty-list crash and password-restore CSRF cascade
...
Two CI-only failures surfaced against a fresh backend DB:
- The revoke test read after.data.find(), but the list endpoint omits data
entirely when the admin has zero tokens, throwing on undefined. Default to [].
- The password-change test's restore POST hit a 403: changing the password
triggers a refresh-token that re-mints the nz-csrf cookie, so the X-CSRF-Token
read just before the request can be stale. A failed restore left the admin on
the rotated password and cascaded into cron/fm/visibility login failures.
Add csrfRequest(), which retries once on 403 after re-reading the cookie, and
use it for both profile mutations.
Verified 8/8 passing across repeated fresh-DB CI-mode runs.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-31 08:45:19 +00:00
naiba and cloudcode
76b9eb6a54
test(e2e): send CSRF token on mutating requests and fix PAT UI selectors
...
The backend CSRF double-submit gate rejects unsafe methods unless
X-CSRF-Token mirrors the signed nz-csrf cookie. page.request bypasses the
SPA JS that does this, so every mutating E2E call got 403, failing the suite.
- Add csrfHeaders(page) helper that mirrors the nz-csrf cookie into the
header, polling until the cookie is readable to avoid the post-login race.
- Apply it to all cookie-authenticated POST/PATCH/DELETE calls (the /mcp
Bearer calls stay header-free since PAT requests are CSRF-exempt).
- loginAs waits for the nz-csrf cookie before returning.
- Fix the create-token dialog submit selector: the button is labelled
'Create API token' (t('CreateApiToken')), not 'Create'.
Verified 8/8 passing across repeated CI-mode runs against a real backend.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-31 08:17:15 +00:00
naiba and cloudcode
22ebc51a08
test(e2e): send CSRF token on mutating requests and fix PAT UI selectors
...
The backend CSRF double-submit gate rejects unsafe methods unless
X-CSRF-Token mirrors the signed nz-csrf cookie. page.request bypasses the
SPA JS that does this, so every mutating E2E call got 403, failing the suite.
- Add csrfHeaders(page) helper that mirrors the nz-csrf cookie into the
header, polling until the cookie is readable to avoid the post-login race.
- Apply it to all cookie-authenticated POST/PATCH/DELETE calls (the /mcp
Bearer calls stay header-free since PAT requests are CSRF-exempt).
- loginAs waits for the nz-csrf cookie before returning.
- Fix the create-token dialog submit selector: the button is labelled
'Create API token' (t('CreateApiToken')), not 'Create'.
Verified 8/8 passing across repeated CI-mode runs against a real backend.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-31 08:17:15 +00:00
naiba and cloudcode
c9bed85a91
fix(security): guard external hrefs and refine CSRF/auth-loading handling
...
- Add safeExternalHref(): only render http(s) URLs as clickable hrefs,
blocking attacker-controlled template metadata from becoming
javascript:/data: links.
- Refine CSRF header attachment and auth-loading state in the fetcher,
api-tokens client, useAuth, and settings route.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-31 05:51:39 +00:00
naiba and cloudcode
013770bf46
fix(security): guard external hrefs and refine CSRF/auth-loading handling
...
- Add safeExternalHref(): only render http(s) URLs as clickable hrefs,
blocking attacker-controlled template metadata from becoming
javascript:/data: links.
- Refine CSRF header attachment and auth-loading state in the fetcher,
api-tokens client, useAuth, and settings route.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-31 05:51:39 +00:00
naiba and cloudcode
472174640a
feat(settings): add reserved hosts field and surface NAT errors
...
Add the reserved_hosts setting (input + i18n across all locales) so operators
behind a reverse proxy can declare public dashboard hostnames members must not
register as NAT domains (GHSA-x6fg-52vr-hj4w).
Show the backend error message on NAT create/update failure instead of a
generic "unexpected error", so a reserved-host rejection is explained.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-31 02:04:47 +00:00
naiba and cloudcode
964684f1bf
feat(settings): add reserved hosts field and surface NAT errors
...
Add the reserved_hosts setting (input + i18n across all locales) so operators
behind a reverse proxy can declare public dashboard hostnames members must not
register as NAT domains (GHSA-x6fg-52vr-hj4w).
Show the backend error message on NAT create/update failure instead of a
generic "unexpected error", so a reserved-host rejection is explained.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-31 02:04:47 +00:00
naiba and cloudcode
6f0d9b6637
feat(api-tokens): add PAT management UI, CSRF handling, and auth-loading fixes
...
Add an API tokens management route to create, list, and revoke PATs, showing
the plaintext token once on creation with scope and server-id selection.
Mirror the nz-csrf cookie into the X-CSRF-Token header on unsafe fetcher
methods (POST/PUT/PATCH/DELETE) for the server-side double-submit check, and
self-heal expired sessions via refresh-token without a recursive fetch loop.
Gate protected routes behind resolved auth state to avoid pre-auth SWR fetches,
and fix the login loading/race so stale probes cannot clobber the session.
Add i18n keys for the new screens across all locales.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-30 15:56:53 +00:00
naiba and cloudcode
f07c557029
feat(api-tokens): add PAT management UI, CSRF handling, and auth-loading fixes
...
Add an API tokens management route to create, list, and revoke PATs, showing
the plaintext token once on creation with scope and server-id selection.
Mirror the nz-csrf cookie into the X-CSRF-Token header on unsafe fetcher
methods (POST/PUT/PATCH/DELETE) for the server-side double-submit check, and
self-heal expired sessions via refresh-token without a recursive fetch loop.
Gate protected routes behind resolved auth state to avoid pre-auth SWR fetches,
and fix the login loading/race so stale probes cannot clobber the session.
Add i18n keys for the new screens across all locales.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-30 15:56:53 +00:00
1f1df8e273
ci(e2e): bind Vite dev server to loopback
...
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba >
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 05:56:12 +00:00
f47d4a8772
ci(e2e): bind Vite dev server to loopback
...
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba >
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 05:56:12 +00:00
3db5041c58
ci(e2e): prebuild dashboard before backend health check
...
The GitHub runner can spend more than the readiness window compiling go run ./cmd/dashboard, leaving dashboard.log empty while the backend has not started yet. Build the dashboard binary during preparation and health-check only the actual server startup. Keep README instructions aligned with CI.
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba >
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 05:36:09 +00:00
f380a8c4ac
ci(e2e): prebuild dashboard before backend health check
...
The GitHub runner can spend more than the readiness window compiling go run ./cmd/dashboard, leaving dashboard.log empty while the backend has not started yet. Build the dashboard binary during preparation and health-check only the actual server startup. Keep README instructions aligned with CI.
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba >
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 05:36:09 +00:00
11e2f2ca80
ci(e2e): make backend stubs embeddable and keep vitest scoped
...
The dashboard embed pattern ignores hidden-only dist directories, so the CI backend stub must create visible index.html files. Keep the README in sync and exclude Playwright specs from Vitest so npm run test remains a unit-test command.
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba >
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 05:27:46 +00:00
e961fdb131
ci(e2e): make backend stubs embeddable and keep vitest scoped
...
The dashboard embed pattern ignores hidden-only dist directories, so the CI backend stub must create visible index.html files. Keep the README in sync and exclude Playwright specs from Vitest so npm run test remains a unit-test command.
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba >
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 05:27:46 +00:00
naiba and cloudcode
84fac6d653
docs(e2e): describe how to run Playwright suite locally and read CI artifacts
...
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:36:03 +00:00
naiba and cloudcode
baec84bdc2
docs(e2e): describe how to run Playwright suite locally and read CI artifacts
...
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:36:03 +00:00
naiba and cloudcode
bb6abeb9a6
ci: run Playwright e2e against a real Go backend in GitHub Actions
...
Boot a fresh dashboard from nezhahq/nezha master inside the runner:
- Checkout admin-frontend and the backend repo into two paths.
- Generate the two embed stubs and swag docs so cmd/dashboard builds.
- Inject NZ_JWTSECRETKEY (env-first config story) and start the
backend on 127.0.0.1:8008 with a tmp SQLite db.
- Wait on /api/v1/setting before letting Playwright launch.
- Playwright config brings up Vite dev which proxies /api to 8008.
- Upload playwright-report and dashboard.log on failure for triage.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:34:43 +00:00
naiba and cloudcode
52f67d22ba
ci: run Playwright e2e against a real Go backend in GitHub Actions
...
Boot a fresh dashboard from nezhahq/nezha master inside the runner:
- Checkout admin-frontend and the backend repo into two paths.
- Generate the two embed stubs and swag docs so cmd/dashboard builds.
- Inject NZ_JWTSECRETKEY (env-first config story) and start the
backend on 127.0.0.1:8008 with a tmp SQLite db.
- Wait on /api/v1/setting before letting Playwright launch.
- Playwright config brings up Vite dev which proxies /api to 8008.
- Upload playwright-report and dashboard.log on failure for triage.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:34:43 +00:00
naiba and cloudcode
22da4d74b8
test(e2e): add Playwright suite for auth + CSRF + visibility fixes
...
Covers the security fixes that landed across both repos:
- auth.spec.ts: login persists nz-jwt cookie and getProfile succeeds;
password change bumps TokenVersion + revokes the old cookie so the
pre-change JWT can no longer auth (regression guard for the
keyId+session backend rewrite).
- cron-csrf.spec.ts: POST /api/v1/cron/:id/manual succeeds while GET
is no longer routable (regression guard for the cron CSRF fix).
- fm-csrf.spec.ts: POST /api/v1/file is reachable while GET is no
longer routable (regression guard for the FM CSRF fix).
- visibility.spec.ts: an anonymous caller cannot see a server-group
that contains zero guest-visible servers (regression guard for the
server-group leak fix).
Fixtures wrap the noisy login + cleanup boilerplate. tsconfig is
scoped to tests/e2e so the suite stays out of the production tsc
project graph.
Playwright config starts the Vite dev server (npm run dev) and
expects a backend reachable at the URL Vite proxies to. CI workflow
follow-up commit wires the backend up.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:34:43 +00:00
naiba and cloudcode
dc0cfd0ecb
test(e2e): add Playwright suite for auth + CSRF + visibility fixes
...
Covers the security fixes that landed across both repos:
- auth.spec.ts: login persists nz-jwt cookie and getProfile succeeds;
password change bumps TokenVersion + revokes the old cookie so the
pre-change JWT can no longer auth (regression guard for the
keyId+session backend rewrite).
- cron-csrf.spec.ts: POST /api/v1/cron/:id/manual succeeds while GET
is no longer routable (regression guard for the cron CSRF fix).
- fm-csrf.spec.ts: POST /api/v1/file is reachable while GET is no
longer routable (regression guard for the FM CSRF fix).
- visibility.spec.ts: an anonymous caller cannot see a server-group
that contains zero guest-visible servers (regression guard for the
server-group leak fix).
Fixtures wrap the noisy login + cleanup boilerplate. tsconfig is
scoped to tests/e2e so the suite stays out of the production tsc
project graph.
Playwright config starts the Vite dev server (npm run dev) and
expects a backend reachable at the URL Vite proxies to. CI workflow
follow-up commit wires the backend up.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:34:43 +00:00
naiba and cloudcode
266cd7d150
fix(fm): switch createFM to POST to match backend CSRF fix
...
Backend moves /api/v1/file from GET to POST so SameSite=Lax cookies
can no longer expose this state-changing endpoint to cross-site
CSRF. Update createFM() accordingly.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:07:52 +00:00
naiba and cloudcode
c80899a753
fix(fm): switch createFM to POST to match backend CSRF fix
...
Backend moves /api/v1/file from GET to POST so SameSite=Lax cookies
can no longer expose this state-changing endpoint to cross-site
CSRF. Update createFM() accordingly.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:07:52 +00:00
naiba and cloudcode
b10d655d6e
fix(cron): switch manual trigger to POST to match backend CSRF fix
...
Backend GHSA-8qhj-4f8c-j8qg moves /api/v1/cron/:id/manual from GET to
POST so SameSite=Lax cookies no longer expose this state-changing
endpoint to cross-site CSRF. Update runCron() accordingly.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:00:15 +00:00
naiba and cloudcode
f2fea38e10
fix(cron): switch manual trigger to POST to match backend CSRF fix
...
Backend GHSA-8qhj-4f8c-j8qg moves /api/v1/cron/:id/manual from GET to
POST so SameSite=Lax cookies no longer expose this state-changing
endpoint to cross-site CSRF. Update runCron() accordingly.
Co-authored-by: cloudcode <cloudcode@users.noreply.github.com >
2026-05-26 04:00:15 +00:00
naiba
849d131382
feat: server transfer rotation
2026-05-25 10:15:24 +00:00
naiba
b23a6c0be1
feat: server transfer rotation
2026-05-25 10:15:24 +00:00
naiba and naiba/CloudCode
2010d80914
fix: hide admin settings tabs for members
...
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba >
2026-05-16 00:46:15 +08:00
naiba and naiba/CloudCode
142fc19469
fix: hide admin settings tabs for members
...
Co-authored-by: naiba/CloudCode <hi+cloudcode@nai.ba >
2026-05-16 00:46:15 +08:00
Weblate (bot) and Arif Budiman
f4696421ec
Translated using Weblate (Indonesian) ( #156 )
...
Currently translated at 100.0% (245 of 245 strings)
Translate-URL: https://hosted.weblate.org/projects/nezha/admin-frontend/id/
Translation: Nezha/Admin frontend
Co-authored-by: Arif Budiman <arifpedia@gmail.com >
2026-04-05 09:58:43 +08:00
Weblate (bot) and Arif Budiman
3912315f56
Translated using Weblate (Indonesian) ( #156 )
...
Currently translated at 100.0% (245 of 245 strings)
Translate-URL: https://hosted.weblate.org/projects/nezha/admin-frontend/id/
Translation: Nezha/Admin frontend
Co-authored-by: Arif Budiman <arifpedia@gmail.com >
2026-04-05 09:58:43 +08:00