diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 445ded8d..26352904 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,8 +1,8 @@ 'name': 'build' 'env': - 'GO_VERSION': '1.24.1' - 'NODE_VERSION': '18' + 'GO_VERSION': '1.24.6' + 'NODE_VERSION': '20' 'on': 'push': diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index fa19f1c5..7853f146 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -1,7 +1,7 @@ 'name': 'lint' 'env': - 'GO_VERSION': '1.24.1' + 'GO_VERSION': '1.24.6' 'on': 'push': diff --git a/.gitignore b/.gitignore index a9598645..87040946 100644 --- a/.gitignore +++ b/.gitignore @@ -37,5 +37,7 @@ AdGuardHome.exe AdGuardHome.yaml* coverage.txt node_modules/ +test-reports/ +tmp/ !/build/gitkeep diff --git a/CHANGELOG.md b/CHANGELOG.md index ed62b75a..ea1434b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,32 +9,223 @@ The format is based on [*Keep a Changelog*](https://keepachangelog.com/en/1.0.0/ + + +## [v0.107.65] - 2025-08-20 + +See also the [v0.107.65 GitHub milestone][ms-v0.107.65]. + +### Security + +- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.6][go-1.24.6]. + +### Added + +- A separate checkbox in the Web UI to enable or disable the global DNS response cache without losing the configured cache size. + +- A new `"cache_enabled"` field to the HTTP API (`GET /control/dns_info` and `POST /control/dns_config`). See `openapi/openapi.yaml` for the full description. + +### Changed + +#### Configuration changes + +In this release, the schema version has changed from 29 to 30. + +- Added a new boolean field `dns.cache_enabled` to the configuration. This field explicitly controls whether DNS caching is enabled, replacing the previous implicit logic based on `dns.cache_size`. + + ```yaml + # BEFORE: + 'dns': + # … + 'cache_size': 123456 + + # AFTER: + 'dns': + # … + 'cache_enabled': true + 'cache_size': 123456 + ``` + + To roll back this change, set the schema_version back to `29`. + +### Fixed + +- Disabled state of *Top clients* action button in web UI ([#7923]). + +[#7923]: https://github.com/AdguardTeam/AdGuardHome/issues/7923 + +[go-1.24.6]: https://groups.google.com/g/golang-announce/c/x5MKroML2yM +[ms-v0.107.65]: https://github.com/AdguardTeam/AdGuardHome/milestone/100?closed=1 + +## [v0.107.64] - 2025-07-28 + +See also the [v0.107.64 GitHub milestone][ms-v0.107.64]. + +### Security + +- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.5][go-1.24.5]. + +### Fixed + +- TTL override calculation ([#7903]). +- Validation process for DNSCrypt settings ([#7856]). + +[#7856]: https://github.com/AdguardTeam/AdGuardHome/issues/7856 +[#7903]: https://github.com/AdguardTeam/AdGuardHome/issues/7903 + +[go-1.24.5]: https://groups.google.com/g/golang-announce/c/gTNJnDXmn34 +[ms-v0.107.64]: https://github.com/AdguardTeam/AdGuardHome/milestone/99?closed=1 + +## [v0.107.63] - 2025-06-26 + +See also the [v0.107.63 GitHub milestone][ms-v0.107.63]. + +### Security + +- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.4][go-1.24.4]. + +### Fixed + +- The hostnames of DHCP clients with multiple labels not being recognized. + +- Status reported by the systemd service implementation in cases of auto-restart after a failed start. + +[go-1.24.4]: https://groups.google.com/g/golang-announce/c/ufZ8WpEsA3A +[ms-v0.107.63]: https://github.com/AdguardTeam/AdGuardHome/milestone/98?closed=1 + +## [v0.107.62] - 2025-05-27 + +See also the [v0.107.62 GitHub milestone][ms-v0.107.62]. + +### Security + +- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.3][go-1.24.3]. + +### Fixed + +- Clients with CIDR identifiers showing zero requests on the *Settings → Client settings* page ([#2945]). + +- Command line option `--update` when the `dns.serve_plain_dns` configuration property was disabled ([#7801]). + +- DNS cache not working for custom upstream configurations. + +- Validation process for the DNS-over-TLS, DNS-over-QUIC, and HTTPS ports on the *Encryption Settings* page. + +- Searching for persistent clients using an exact match for CIDR in the `POST /clients/search` HTTP API. + +[#2945]: https://github.com/AdguardTeam/AdGuardHome/issues/2945 +[#7801]: https://github.com/AdguardTeam/AdGuardHome/issues/7801 + +[go-1.24.3]: https://groups.google.com/g/golang-announce/c/UZoIkUT367A +[ms-v0.107.62]: https://github.com/AdguardTeam/AdGuardHome/milestone/97?closed=1 + +## [v0.107.61] - 2025-04-22 + +See also the [v0.107.61 GitHub milestone][ms-v0.107.61]. + +### Security + +- Any simultaneous requests that are considered duplicates will now only result in a single request to upstreams, reducing the chance of a cache poisoning attack succeeding. This is controlled by the new configuration object `pending_requests`, which has a single `enabled` property, set to `true` by default. + + **NOTE:** We thank [Xiang Li][mr-xiang-li] for reporting this security issue. It's strongly recommended to leave it enabled, otherwise AdGuard Home will be vulnerable to untrusted clients. + +[mr-xiang-li]: https://lixiang521.com/ +[ms-v0.107.61]: https://github.com/AdguardTeam/AdGuardHome/milestone/96?closed=1 + +## [v0.107.60] - 2025-04-14 + +See also the [v0.107.60 GitHub milestone][ms-v0.107.60]. + +### Security + +- Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.2][go-1.24.2]. + +### Changed + +- Alpine Linux version in `Dockerfile` has been updated to 3.21 ([#7588]). + +### Deprecated + +- Node 20 support, Node 22 will be required in future releases. + + **NOTE:** `npm` may be replaced with a different tool, such as `pnpm` or `yarn`, in a future release. + +### Fixed + +- Filtering for DHCP clients ([#7734]). + +- Incorrect label on login page ([#7729]). + +- Validation process for the HTTPS port on the *Encryption Settings* page. + +### Removed + +- Node 18 support. + +[#7588]: https://github.com/AdguardTeam/AdGuardHome/issues/7588 +[#7729]: https://github.com/AdguardTeam/AdGuardHome/issues/7729 +[#7734]: https://github.com/AdguardTeam/AdGuardHome/issues/7734 + +[go-1.24.2]: https://groups.google.com/g/golang-announce/c/Y2uBTVKjBQk +[ms-v0.107.60]: https://github.com/AdguardTeam/AdGuardHome/milestone/95?closed=1 + +## [v0.107.59] - 2025-03-21 + +See also the [v0.107.59 GitHub milestone][ms-v0.107.59]. + +- Rules with the `client` modifier not working ([#7708]). + +- The search form not working in the query log ([#7704]). + +[#7704]: https://github.com/AdguardTeam/AdGuardHome/issues/7704 +[#7708]: https://github.com/AdguardTeam/AdGuardHome/issues/7708 + +[ms-v0.107.59]: https://github.com/AdguardTeam/AdGuardHome/milestone/94?closed=1 + +## [v0.107.58] - 2025-03-19 + +See also the [v0.107.58 GitHub milestone][ms-v0.107.58]. ### Security - Go version has been updated to prevent the possibility of exploiting the Go vulnerabilities fixed in [1.24.1][go-1.24.1]. +### Added + +- The ability to check filtering rules for host names using an optional query type and optional ClientID or client IP address ([#4036]). + +- Optional `client` and `qtype` URL query parameters to the `GET /control/check_host` HTTP API. + ### Fixed +- Clearing the DNS cache on the *DNS settings* page now includes both global cache and custom client cache. + +- Invalid ICMPv6 Router Advertisement messages ([#7547]). + +- Disabled button for autofilled login form. + - Formatting of elapsed times less than one millisecond. + - Changes to global upstream DNS settings not applying to custom client upstream configurations. + - The formatting of large numbers in the clients tables on the *Client settings* page ([#7583]). +[#4036]: https://github.com/AdguardTeam/AdGuardHome/issues/4036 +[#7547]: https://github.com/AdguardTeam/AdGuardHome/issues/7547 [#7583]: https://github.com/AdguardTeam/AdGuardHome/issues/7583 [go-1.24.1]: https://groups.google.com/g/golang-announce/c/4t3lzH3I0eI - - +[ms-v0.107.58]: https://github.com/AdguardTeam/AdGuardHome/milestone/93?closed=1 ## [v0.107.57] - 2025-02-20 @@ -55,6 +246,7 @@ See also the [v0.107.57 GitHub milestone][ms-v0.107.57]. ### Fixed - The hostnames of DHCP clients not being shown in the *Top clients* table on the dashboard ([#7627]). + - The formatting of large numbers in the upstream table and query log ([#7590]). [#7590]: https://github.com/AdguardTeam/AdGuardHome/issues/7590 @@ -2717,7 +2909,7 @@ See also the [v0.106.0 GitHub milestone][ms-v0.106.0]. - Quality of logging ([#2954]). -- Normalization of hostnames sent by DHCP clients ([#2945], [#2952]). +- Normalization of hostnames sent by DHCP clients ([#2946], [#2952]). - The access to the private hosts is now forbidden for users from external networks ([#2889]). @@ -2777,7 +2969,7 @@ See also the [v0.106.0 GitHub milestone][ms-v0.106.0]. [#2923]: https://github.com/AdguardTeam/AdGuardHome/issues/2923 [#2927]: https://github.com/AdguardTeam/AdGuardHome/issues/2927 [#2934]: https://github.com/AdguardTeam/AdGuardHome/issues/2934 -[#2945]: https://github.com/AdguardTeam/AdGuardHome/issues/2945 +[#2946]: https://github.com/AdguardTeam/AdGuardHome/issues/2946 [#2947]: https://github.com/AdguardTeam/AdGuardHome/issues/2947 [#2952]: https://github.com/AdguardTeam/AdGuardHome/issues/2952 [#2954]: https://github.com/AdguardTeam/AdGuardHome/issues/2954 @@ -3031,11 +3223,19 @@ See also the [v0.104.2 GitHub milestone][ms-v0.104.2]. [ms-v0.104.2]: https://github.com/AdguardTeam/AdGuardHome/milestone/28?closed=1 -[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.57...HEAD +[Unreleased]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.65...HEAD +[v0.107.65]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.64...v0.107.65 +[v0.107.64]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.63...v0.107.64 +[v0.107.63]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.62...v0.107.63 +[v0.107.62]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.61...v0.107.62 +[v0.107.61]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.60...v0.107.61 +[v0.107.60]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.59...v0.107.60 +[v0.107.59]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.58...v0.107.59 +[v0.107.58]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.57...v0.107.58 [v0.107.57]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.56...v0.107.57 [v0.107.56]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.55...v0.107.56 [v0.107.55]: https://github.com/AdguardTeam/AdGuardHome/compare/v0.107.54...v0.107.55 diff --git a/Makefile b/Makefile index e5801880..06b3e420 100644 --- a/Makefile +++ b/Makefile @@ -27,7 +27,7 @@ DIST_DIR = dist GOAMD64 = v1 GOPROXY = https://proxy.golang.org|direct GOTELEMETRY = off -GOTOOLCHAIN = go1.24.1 +GOTOOLCHAIN = go1.24.6 GPG_KEY = devteam@adguard.com GPG_KEY_PASSPHRASE = not-a-real-password NPM = npm @@ -38,7 +38,6 @@ REVISION = $${REVISION:-$$(git rev-parse --short HEAD)} SIGN = 1 SIGNER_API_KEY = not-a-real-key VERSION = v0.0.0 -YARN = yarn NEXTAPI = 0 @@ -139,5 +138,4 @@ txt-lint: ; $(ENV) "$(SHELL)" ./scripts/make/txt-lint.sh md-lint: ; $(ENV_MISC) "$(SHELL)" ./scripts/make/md-lint.sh sh-lint: ; $(ENV_MISC) "$(SHELL)" ./scripts/make/sh-lint.sh -openapi-lint: ; cd ./openapi/ && $(YARN) test -openapi-show: ; cd ./openapi/ && $(YARN) start +# TODO(a.garipov): Re-add openapi-lint. diff --git a/README.md b/README.md index fdf1a7a1..d21d0355 100644 --- a/README.md +++ b/README.md @@ -205,9 +205,9 @@ Run `make init` to prepare the development environment. You will need this to build AdGuard Home: -- [Go](https://golang.org/dl/) v1.23 or later; -- [Node.js](https://nodejs.org/en/download/) v18.18 or later; -- [npm](https://www.npmjs.com/) v8 or later; +- [Go](https://golang.org/dl/) v1.24 or later; +- [Node.js](https://nodejs.org/en/download/) v20.19 or later; +- [npm](https://www.npmjs.com/) v10.8 or later; ### Building diff --git a/bamboo-specs/release.yaml b/bamboo-specs/release.yaml index 4caf3686..838c94ed 100644 --- a/bamboo-specs/release.yaml +++ b/bamboo-specs/release.yaml @@ -7,8 +7,8 @@ # Make sure to sync any changes with the branch overrides below. 'variables': 'channel': 'edge' - 'dockerFrontend': 'adguard/home-js-builder:2.1-bullseye' - 'dockerGo': 'adguard/go-builder:1.24.1--1' + 'dockerFrontend': 'adguard/home-js-builder:3.1' + 'dockerGo': 'adguard/go-builder:1.24.6--1' 'stages': - 'Build frontend': @@ -50,7 +50,7 @@ 'docker': 'image': '${bamboo.dockerFrontend}' 'volumes': - '${system.YARN_DIR}': '${bamboo.cacheYarn}' + '${system.NPM_DIR}': '${bamboo.cacheNpm}' 'key': 'BF' 'other': 'clean-working-dir': true @@ -157,6 +157,7 @@ # Print Docker info. docker info + docker buildx version # Prepare and push the build. env \ @@ -277,8 +278,8 @@ # need to build a few of these. 'variables': 'channel': 'beta' - 'dockerFrontend': 'adguard/home-js-builder:2.1-bullseye' - 'dockerGo': 'adguard/go-builder:1.24.1--1' + 'dockerFrontend': 'adguard/home-js-builder:3.1' + 'dockerGo': 'adguard/go-builder:1.24.6--1' # release-vX.Y.Z branches are the branches from which the actual final # release is built. - '^release-v[0-9]+\.[0-9]+\.[0-9]+': @@ -293,5 +294,5 @@ # are the ones that actually get released. 'variables': 'channel': 'release' - 'dockerFrontend': 'adguard/home-js-builder:2.1-bullseye' - 'dockerGo': 'adguard/go-builder:1.24.1--1' + 'dockerFrontend': 'adguard/home-js-builder:3.1' + 'dockerGo': 'adguard/go-builder:1.24.6--1' diff --git a/bamboo-specs/test.yaml b/bamboo-specs/test.yaml index 023dee5c..9bb4cf83 100644 --- a/bamboo-specs/test.yaml +++ b/bamboo-specs/test.yaml @@ -5,8 +5,8 @@ 'key': 'AHBRTSPECS' 'name': 'AdGuard Home - Build and run tests' 'variables': - 'dockerFrontend': 'adguard/home-js-builder:2.1-bullseye' - 'dockerGo': 'adguard/go-builder:1.24.1--1' + 'dockerFrontend': 'adguard/home-js-builder:3.1' + 'dockerGo': 'adguard/go-builder:1.24.6--1' 'channel': 'development' 'stages': @@ -39,7 +39,7 @@ 'docker': 'image': '${bamboo.dockerFrontend}' 'volumes': - '${system.YARN_DIR}': '${bamboo.cacheYarn}' + '${system.NPM_DIR}': '${bamboo.cacheNpm}' 'key': 'JSTEST' 'other': 'clean-working-dir': true @@ -67,6 +67,13 @@ 'volumes': '${system.GO_CACHE_DIR}': '${bamboo.cacheGo}' '${system.GO_PKG_CACHE_DIR}': '${bamboo.cacheGoPkg}' + 'final-tasks': + - 'test-parser': + # The default pattern, '**/test-reports/*.xml', works, so don't set + # the test-results property. + 'type': 'junit' + 'ignore-time': true + - 'clean' 'key': 'GOTEST' 'other': 'clean-working-dir': true @@ -81,16 +88,26 @@ set -e -f -u -x - make\ - GOMAXPROCS=1\ - VERBOSE=1\ + make \ + GOMAXPROCS=1 \ + VERBOSE=1 \ go-deps go-tools go-lint - make\ - VERBOSE=1\ - go-test - 'final-tasks': - - 'clean' + make \ + TEST_REPORTS_DIR="./test-reports/" \ + VERBOSE=1 \ + go-test \ + ; + + exit_code="$(cat ./test-reports/test-exit-code.txt)" + readonly exit_code + + make VERBOSE=1 \ + go-fuzz \ + go-bench \ + ; + + exit "$exit_code" 'requirements': - 'adg-docker': 'true' @@ -103,7 +120,7 @@ 'docker': 'image': '${bamboo.dockerFrontend}' 'volumes': - '${system.YARN_DIR}': '${bamboo.cacheYarn}' + '${system.NPM_DIR}': '${bamboo.cacheNpm}' 'key': 'BF' 'other': 'clean-working-dir': true @@ -178,7 +195,7 @@ 'docker': 'image': '${bamboo.dockerFrontend}' 'volumes': - '${system.YARN_DIR}': '${bamboo.cacheYarn}' + '${system.NPM_DIR}': '${bamboo.cacheNpm}' 'key': 'E2ETEST' 'other': 'clean-working-dir': true @@ -233,6 +250,6 @@ # Set the default release channel on the release branch to beta, as we # may need to build a few of these. 'variables': - 'dockerFrontend': 'adguard/home-js-builder:2.1-bullseye' - 'dockerGo': 'adguard/go-builder:1.24.1--1' + 'dockerFrontend': 'adguard/home-js-builder:3.1' + 'dockerGo': 'adguard/go-builder:1.24.6--1' 'channel': 'candidate' diff --git a/client/package-lock.json b/client/package-lock.json index 43835caf..461012af 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -54,7 +54,7 @@ "@babel/preset-react": "^7.24.1", "@playwright/test": "1.50.1", "@types/lodash": "^4.17.4", - "@types/node": "^22.10.2", + "@types/node": "^22.13.10", "@types/react": "^17.0.80", "@types/react-dom": "^18.3.0", "@types/react-redux": "^7.1.33", @@ -87,7 +87,7 @@ "stylelint": "^16.5.0", "ts-loader": "^9.5.1", "url-loader": "^4.1.1", - "vitest": "^3.0.4", + "vitest": "^3.1.1", "webpack": "^5.91.0", "webpack-cli": "^5.1.4", "webpack-dev-server": "^5.0.4", @@ -2302,13 +2302,14 @@ "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==" }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", - "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.2.tgz", + "integrity": "sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==", "cpu": [ "ppc64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "aix" @@ -2318,13 +2319,14 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz", - "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.2.tgz", + "integrity": "sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==", "cpu": [ "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "android" @@ -2334,13 +2336,14 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz", - "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.2.tgz", + "integrity": "sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "android" @@ -2350,13 +2353,14 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz", - "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.2.tgz", + "integrity": "sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "android" @@ -2366,13 +2370,14 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz", - "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.2.tgz", + "integrity": "sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2382,13 +2387,14 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz", - "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.2.tgz", + "integrity": "sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" @@ -2398,13 +2404,14 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz", - "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.2.tgz", + "integrity": "sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "freebsd" @@ -2414,13 +2421,14 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz", - "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.2.tgz", + "integrity": "sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "freebsd" @@ -2430,13 +2438,14 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz", - "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.2.tgz", + "integrity": "sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==", "cpu": [ "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -2446,13 +2455,14 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz", - "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.2.tgz", + "integrity": "sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -2462,13 +2472,14 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz", - "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.2.tgz", + "integrity": "sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==", "cpu": [ "ia32" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -2478,13 +2489,14 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz", - "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.2.tgz", + "integrity": "sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==", "cpu": [ "loong64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -2494,13 +2506,14 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz", - "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.2.tgz", + "integrity": "sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==", "cpu": [ "mips64el" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -2510,13 +2523,14 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz", - "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.2.tgz", + "integrity": "sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==", "cpu": [ "ppc64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -2526,13 +2540,14 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz", - "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.2.tgz", + "integrity": "sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==", "cpu": [ "riscv64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -2542,13 +2557,14 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz", - "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.2.tgz", + "integrity": "sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==", "cpu": [ "s390x" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -2558,13 +2574,14 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz", - "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.2.tgz", + "integrity": "sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" @@ -2574,13 +2591,14 @@ } }, "node_modules/@esbuild/netbsd-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz", - "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.2.tgz", + "integrity": "sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "netbsd" @@ -2590,13 +2608,14 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz", - "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.2.tgz", + "integrity": "sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "netbsd" @@ -2606,13 +2625,14 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz", - "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.2.tgz", + "integrity": "sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "openbsd" @@ -2622,13 +2642,14 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz", - "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.2.tgz", + "integrity": "sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "openbsd" @@ -2638,13 +2659,14 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz", - "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.2.tgz", + "integrity": "sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "sunos" @@ -2654,13 +2676,14 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz", - "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.2.tgz", + "integrity": "sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -2670,13 +2693,14 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz", - "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.2.tgz", + "integrity": "sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==", "cpu": [ "ia32" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -2686,13 +2710,14 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz", - "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.2.tgz", + "integrity": "sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -3211,247 +3236,280 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.32.1.tgz", - "integrity": "sha512-/pqA4DmqyCm8u5YIDzIdlLcEmuvxb0v8fZdFhVMszSpDTgbQKdw3/mB3eMUHIbubtJ6F9j+LtmyCnHTEqIHyzA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.0.tgz", + "integrity": "sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg==", "cpu": [ "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "android" ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.32.1.tgz", - "integrity": "sha512-If3PDskT77q7zgqVqYuj7WG3WC08G1kwXGVFi9Jr8nY6eHucREHkfpX79c0ACAjLj3QIWKPJR7w4i+f5EdLH5Q==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.0.tgz", + "integrity": "sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "android" ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.32.1.tgz", - "integrity": "sha512-zCpKHioQ9KgZToFp5Wvz6zaWbMzYQ2LJHQ+QixDKq52KKrF65ueu6Af4hLlLWHjX1Wf/0G5kSJM9PySW9IrvHA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.0.tgz", + "integrity": "sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.32.1.tgz", - "integrity": "sha512-sFvF+t2+TyUo/ZQqUcifrJIgznx58oFZbdHS9TvHq3xhPVL9nOp+yZ6LKrO9GWTP+6DbFtoyLDbjTpR62Mbr3Q==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.0.tgz", + "integrity": "sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "darwin" ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.32.1.tgz", - "integrity": "sha512-NbOa+7InvMWRcY9RG+B6kKIMD/FsnQPH0MWUvDlQB1iXnF/UcKSudCXZtv4lW+C276g3w5AxPbfry5rSYvyeYA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.0.tgz", + "integrity": "sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "freebsd" ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.32.1.tgz", - "integrity": "sha512-JRBRmwvHPXR881j2xjry8HZ86wIPK2CcDw0EXchE1UgU0ubWp9nvlT7cZYKc6bkypBt745b4bglf3+xJ7hXWWw==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.0.tgz", + "integrity": "sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "freebsd" ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.32.1.tgz", - "integrity": "sha512-PKvszb+9o/vVdUzCCjL0sKHukEQV39tD3fepXxYrHE3sTKrRdCydI7uldRLbjLmDA3TFDmh418XH19NOsDRH8g==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.0.tgz", + "integrity": "sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA==", "cpu": [ "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.32.1.tgz", - "integrity": "sha512-9WHEMV6Y89eL606ReYowXuGF1Yb2vwfKWKdD1A5h+OYnPZSJvxbEjxTRKPgi7tkP2DSnW0YLab1ooy+i/FQp/Q==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.0.tgz", + "integrity": "sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg==", "cpu": [ "arm" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.32.1.tgz", - "integrity": "sha512-tZWc9iEt5fGJ1CL2LRPw8OttkCBDs+D8D3oEM8mH8S1ICZCtFJhD7DZ3XMGM8kpqHvhGUTvNUYVDnmkj4BDXnw==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.0.tgz", + "integrity": "sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.32.1.tgz", - "integrity": "sha512-FTYc2YoTWUsBz5GTTgGkRYYJ5NGJIi/rCY4oK/I8aKowx1ToXeoVVbIE4LGAjsauvlhjfl0MYacxClLld1VrOw==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.0.tgz", + "integrity": "sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.32.1.tgz", - "integrity": "sha512-F51qLdOtpS6P1zJVRzYM0v6MrBNypyPEN1GfMiz0gPu9jN8ScGaEFIZQwteSsGKg799oR5EaP7+B2jHgL+d+Kw==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.0.tgz", + "integrity": "sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg==", "cpu": [ "loong64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.32.1.tgz", - "integrity": "sha512-wO0WkfSppfX4YFm5KhdCCpnpGbtgQNj/tgvYzrVYFKDpven8w2N6Gg5nB6w+wAMO3AIfSTWeTjfVe+uZ23zAlg==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.0.tgz", + "integrity": "sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw==", "cpu": [ "ppc64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.32.1.tgz", - "integrity": "sha512-iWswS9cIXfJO1MFYtI/4jjlrGb/V58oMu4dYJIKnR5UIwbkzR0PJ09O0PDZT0oJ3LYWXBSWahNf/Mjo6i1E5/g==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.0.tgz", + "integrity": "sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA==", "cpu": [ "riscv64" ], "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.0.tgz", + "integrity": "sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.32.1.tgz", - "integrity": "sha512-RKt8NI9tebzmEthMnfVgG3i/XeECkMPS+ibVZjZ6mNekpbbUmkNWuIN2yHsb/mBPyZke4nlI4YqIdFPgKuoyQQ==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.0.tgz", + "integrity": "sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw==", "cpu": [ "s390x" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.32.1.tgz", - "integrity": "sha512-WQFLZ9c42ECqEjwg/GHHsouij3pzLXkFdz0UxHa/0OM12LzvX7DzedlY0SIEly2v18YZLRhCRoHZDxbBSWoGYg==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.0.tgz", + "integrity": "sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.32.1.tgz", - "integrity": "sha512-BLoiyHDOWoS3uccNSADMza6V6vCNiphi94tQlVIL5de+r6r/CCQuNnerf+1g2mnk2b6edp5dk0nhdZ7aEjOBsA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.0.tgz", + "integrity": "sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "linux" ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.32.1.tgz", - "integrity": "sha512-w2l3UnlgYTNNU+Z6wOR8YdaioqfEnwPjIsJ66KxKAf0p+AuL2FHeTX6qvM+p/Ue3XPBVNyVSfCrfZiQh7vZHLQ==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.0.tgz", + "integrity": "sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ==", "cpu": [ "arm64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.32.1.tgz", - "integrity": "sha512-Am9H+TGLomPGkBnaPWie4F3x+yQ2rr4Bk2jpwy+iV+Gel9jLAu/KqT8k3X4jxFPW6Zf8OMnehyutsd+eHoq1WQ==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.0.tgz", + "integrity": "sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA==", "cpu": [ "ia32" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.32.1.tgz", - "integrity": "sha512-ar80GhdZb4DgmW3myIS9nRFYcpJRSME8iqWgzH2i44u+IdrzmiXVxeFnExQ5v4JYUSpg94bWjevMG8JHf1Da5Q==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.0.tgz", + "integrity": "sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ==", "cpu": [ "x64" ], "dev": true, + "license": "MIT", "optional": true, "os": [ "win32" @@ -3577,10 +3635,11 @@ } }, "node_modules/@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", - "dev": true + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "dev": true, + "license": "MIT" }, "node_modules/@types/events": { "version": "3.0.0", @@ -3701,11 +3760,10 @@ "dev": true }, "node_modules/@types/node": { - "version": "22.10.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.2.tgz", - "integrity": "sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==", + "version": "22.13.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.10.tgz", + "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==", "dev": true, - "license": "MIT", "dependencies": { "undici-types": "~6.20.0" } @@ -4505,14 +4563,15 @@ "dev": true }, "node_modules/@vitest/expect": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.0.4.tgz", - "integrity": "sha512-Nm5kJmYw6P2BxhJPkO3eKKhGYKRsnqJqf+r0yOGRKpEP+bSCBDsjXgiu1/5QFrnPMEgzfC38ZEjvCFgaNBC0Eg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.1.1.tgz", + "integrity": "sha512-q/zjrW9lgynctNbwvFtQkGK9+vvHA5UzVi2V8APrp1C6fG6/MuYYkmlx4FubuqLycCeSdHD5aadWfua/Vr0EUA==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/spy": "3.0.4", - "@vitest/utils": "3.0.4", - "chai": "^5.1.2", + "@vitest/spy": "3.1.1", + "@vitest/utils": "3.1.1", + "chai": "^5.2.0", "tinyrainbow": "^2.0.0" }, "funding": { @@ -4520,10 +4579,11 @@ } }, "node_modules/@vitest/pretty-format": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.0.4.tgz", - "integrity": "sha512-ts0fba+dEhK2aC9PFuZ9LTpULHpY/nd6jhAQ5IMU7Gaj7crPCTdCFfgvXxruRBLFS+MLraicCuFXxISEq8C93g==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.1.1.tgz", + "integrity": "sha512-dg0CIzNx+hMMYfNmSqJlLSXEmnNhMswcn3sXO7Tpldr0LiGmg3eXdLLhwkv2ZqgHb/d5xg5F7ezNFRA1fA13yA==", "dev": true, + "license": "MIT", "dependencies": { "tinyrainbow": "^2.0.0" }, @@ -4532,37 +4592,40 @@ } }, "node_modules/@vitest/runner": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.0.4.tgz", - "integrity": "sha512-dKHzTQ7n9sExAcWH/0sh1elVgwc7OJ2lMOBrAm73J7AH6Pf9T12Zh3lNE1TETZaqrWFXtLlx3NVrLRb5hCK+iw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.1.1.tgz", + "integrity": "sha512-X/d46qzJuEDO8ueyjtKfxffiXraPRfmYasoC4i5+mlLEJ10UvPb0XH5M9C3gWuxd7BAQhpK42cJgJtq53YnWVA==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/utils": "3.0.4", - "pathe": "^2.0.2" + "@vitest/utils": "3.1.1", + "pathe": "^2.0.3" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/snapshot": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.0.4.tgz", - "integrity": "sha512-+p5knMLwIk7lTQkM3NonZ9zBewzVp9EVkVpvNta0/PlFWpiqLaRcF4+33L1it3uRUCh0BGLOaXPPGEjNKfWb4w==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.1.1.tgz", + "integrity": "sha512-bByMwaVWe/+1WDf9exFxWWgAixelSdiwo2p33tpqIlM14vW7PRV5ppayVXtfycqze4Qhtwag5sVhX400MLBOOw==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/pretty-format": "3.0.4", + "@vitest/pretty-format": "3.1.1", "magic-string": "^0.30.17", - "pathe": "^2.0.2" + "pathe": "^2.0.3" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/spy": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.0.4.tgz", - "integrity": "sha512-sXIMF0oauYyUy2hN49VFTYodzEAu744MmGcPR3ZBsPM20G+1/cSW/n1U+3Yu/zHxX2bIDe1oJASOkml+osTU6Q==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.1.1.tgz", + "integrity": "sha512-+EmrUOOXbKzLkTDwlsc/xrwOlPDXyVk3Z6P6K4oiCndxz7YLpp/0R0UsWVOKT0IXWjjBJuSMk6D27qipaupcvQ==", "dev": true, + "license": "MIT", "dependencies": { "tinyspy": "^3.0.2" }, @@ -4571,13 +4634,14 @@ } }, "node_modules/@vitest/utils": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.0.4.tgz", - "integrity": "sha512-8BqC1ksYsHtbWH+DfpOAKrFw3jl3Uf9J7yeFh85Pz52IWuh1hBBtyfEbRNNZNjl8H8A5yMLH9/t+k7HIKzQcZQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.1.1.tgz", + "integrity": "sha512-1XIjflyaU2k3HMArJ50bwSh3wKWPD6Q47wz/NUSmRV0zNywPc4w79ARjg/i/aNINHwA+mIALhUVqD9/aUvZNgg==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/pretty-format": "3.0.4", - "loupe": "^3.1.2", + "@vitest/pretty-format": "3.1.1", + "loupe": "^3.1.3", "tinyrainbow": "^2.0.0" }, "funding": { @@ -5244,6 +5308,7 @@ "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" } @@ -5753,6 +5818,7 @@ "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -5846,10 +5912,11 @@ ] }, "node_modules/chai": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.2.tgz", - "integrity": "sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.0.tgz", + "integrity": "sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==", "dev": true, + "license": "MIT", "dependencies": { "assertion-error": "^2.0.1", "check-error": "^2.1.1", @@ -5884,6 +5951,7 @@ "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz", "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 16" } @@ -6815,6 +6883,7 @@ "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -7455,11 +7524,12 @@ } }, "node_modules/esbuild": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz", - "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.2.tgz", + "integrity": "sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==", "dev": true, "hasInstallScript": true, + "license": "MIT", "bin": { "esbuild": "bin/esbuild" }, @@ -7467,31 +7537,31 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.24.2", - "@esbuild/android-arm": "0.24.2", - "@esbuild/android-arm64": "0.24.2", - "@esbuild/android-x64": "0.24.2", - "@esbuild/darwin-arm64": "0.24.2", - "@esbuild/darwin-x64": "0.24.2", - "@esbuild/freebsd-arm64": "0.24.2", - "@esbuild/freebsd-x64": "0.24.2", - "@esbuild/linux-arm": "0.24.2", - "@esbuild/linux-arm64": "0.24.2", - "@esbuild/linux-ia32": "0.24.2", - "@esbuild/linux-loong64": "0.24.2", - "@esbuild/linux-mips64el": "0.24.2", - "@esbuild/linux-ppc64": "0.24.2", - "@esbuild/linux-riscv64": "0.24.2", - "@esbuild/linux-s390x": "0.24.2", - "@esbuild/linux-x64": "0.24.2", - "@esbuild/netbsd-arm64": "0.24.2", - "@esbuild/netbsd-x64": "0.24.2", - "@esbuild/openbsd-arm64": "0.24.2", - "@esbuild/openbsd-x64": "0.24.2", - "@esbuild/sunos-x64": "0.24.2", - "@esbuild/win32-arm64": "0.24.2", - "@esbuild/win32-ia32": "0.24.2", - "@esbuild/win32-x64": "0.24.2" + "@esbuild/aix-ppc64": "0.25.2", + "@esbuild/android-arm": "0.25.2", + "@esbuild/android-arm64": "0.25.2", + "@esbuild/android-x64": "0.25.2", + "@esbuild/darwin-arm64": "0.25.2", + "@esbuild/darwin-x64": "0.25.2", + "@esbuild/freebsd-arm64": "0.25.2", + "@esbuild/freebsd-x64": "0.25.2", + "@esbuild/linux-arm": "0.25.2", + "@esbuild/linux-arm64": "0.25.2", + "@esbuild/linux-ia32": "0.25.2", + "@esbuild/linux-loong64": "0.25.2", + "@esbuild/linux-mips64el": "0.25.2", + "@esbuild/linux-ppc64": "0.25.2", + "@esbuild/linux-riscv64": "0.25.2", + "@esbuild/linux-s390x": "0.25.2", + "@esbuild/linux-x64": "0.25.2", + "@esbuild/netbsd-arm64": "0.25.2", + "@esbuild/netbsd-x64": "0.25.2", + "@esbuild/openbsd-arm64": "0.25.2", + "@esbuild/openbsd-x64": "0.25.2", + "@esbuild/sunos-x64": "0.25.2", + "@esbuild/win32-arm64": "0.25.2", + "@esbuild/win32-ia32": "0.25.2", + "@esbuild/win32-x64": "0.25.2" } }, "node_modules/escalade": { @@ -8367,6 +8437,7 @@ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", "dev": true, + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0" } @@ -8511,10 +8582,11 @@ } }, "node_modules/expect-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.1.0.tgz", - "integrity": "sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.2.1.tgz", + "integrity": "sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==", "dev": true, + "license": "Apache-2.0", "engines": { "node": ">=12.0.0" } @@ -11344,7 +11416,8 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.3.tgz", "integrity": "sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/lower-case": { "version": "2.0.2", @@ -11379,6 +11452,7 @@ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" } @@ -12490,16 +12564,18 @@ } }, "node_modules/pathe": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.2.tgz", - "integrity": "sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==", - "dev": true + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "dev": true, + "license": "MIT" }, "node_modules/pathval": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz", "integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 14.16" } @@ -12648,9 +12724,9 @@ } }, "node_modules/postcss": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.1.tgz", - "integrity": "sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==", + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", "dev": true, "funding": [ { @@ -12666,6 +12742,7 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { "nanoid": "^3.3.8", "picocolors": "^1.1.1", @@ -13934,12 +14011,13 @@ } }, "node_modules/rollup": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.32.1.tgz", - "integrity": "sha512-z+aeEsOeEa3mEbS1Tjl6sAZ8NE3+AalQz1RJGj81M+fizusbdDMoEJwdJNHfaB40Scr4qNu+welOfes7maKonA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.40.0.tgz", + "integrity": "sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w==", "dev": true, + "license": "MIT", "dependencies": { - "@types/estree": "1.0.6" + "@types/estree": "1.0.7" }, "bin": { "rollup": "dist/bin/rollup" @@ -13949,25 +14027,26 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.32.1", - "@rollup/rollup-android-arm64": "4.32.1", - "@rollup/rollup-darwin-arm64": "4.32.1", - "@rollup/rollup-darwin-x64": "4.32.1", - "@rollup/rollup-freebsd-arm64": "4.32.1", - "@rollup/rollup-freebsd-x64": "4.32.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.32.1", - "@rollup/rollup-linux-arm-musleabihf": "4.32.1", - "@rollup/rollup-linux-arm64-gnu": "4.32.1", - "@rollup/rollup-linux-arm64-musl": "4.32.1", - "@rollup/rollup-linux-loongarch64-gnu": "4.32.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.32.1", - "@rollup/rollup-linux-riscv64-gnu": "4.32.1", - "@rollup/rollup-linux-s390x-gnu": "4.32.1", - "@rollup/rollup-linux-x64-gnu": "4.32.1", - "@rollup/rollup-linux-x64-musl": "4.32.1", - "@rollup/rollup-win32-arm64-msvc": "4.32.1", - "@rollup/rollup-win32-ia32-msvc": "4.32.1", - "@rollup/rollup-win32-x64-msvc": "4.32.1", + "@rollup/rollup-android-arm-eabi": "4.40.0", + "@rollup/rollup-android-arm64": "4.40.0", + "@rollup/rollup-darwin-arm64": "4.40.0", + "@rollup/rollup-darwin-x64": "4.40.0", + "@rollup/rollup-freebsd-arm64": "4.40.0", + "@rollup/rollup-freebsd-x64": "4.40.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.40.0", + "@rollup/rollup-linux-arm-musleabihf": "4.40.0", + "@rollup/rollup-linux-arm64-gnu": "4.40.0", + "@rollup/rollup-linux-arm64-musl": "4.40.0", + "@rollup/rollup-linux-loongarch64-gnu": "4.40.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.40.0", + "@rollup/rollup-linux-riscv64-gnu": "4.40.0", + "@rollup/rollup-linux-riscv64-musl": "4.40.0", + "@rollup/rollup-linux-s390x-gnu": "4.40.0", + "@rollup/rollup-linux-x64-gnu": "4.40.0", + "@rollup/rollup-linux-x64-musl": "4.40.0", + "@rollup/rollup-win32-arm64-msvc": "4.40.0", + "@rollup/rollup-win32-ia32-msvc": "4.40.0", + "@rollup/rollup-win32-x64-msvc": "4.40.0", "fsevents": "~2.3.2" } }, @@ -14876,10 +14955,11 @@ } }, "node_modules/std-env": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz", - "integrity": "sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==", - "dev": true + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.9.0.tgz", + "integrity": "sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==", + "dev": true, + "license": "MIT" }, "node_modules/strict-uri-encode": { "version": "2.0.0", @@ -15620,6 +15700,7 @@ "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-2.0.0.tgz", "integrity": "sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==", "dev": true, + "license": "MIT", "engines": { "node": ">=14.0.0" } @@ -15629,6 +15710,7 @@ "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz", "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=14.0.0" } @@ -16963,15 +17045,16 @@ } }, "node_modules/vite-node": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.0.4.tgz", - "integrity": "sha512-7JZKEzcYV2Nx3u6rlvN8qdo3QV7Fxyt6hx+CCKz9fbWxdX5IvUOmTWEAxMrWxaiSf7CKGLJQ5rFu8prb/jBjOA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.1.1.tgz", + "integrity": "sha512-V+IxPAE2FvXpTCHXyNem0M+gWm6J7eRyWPR6vYoG/Gl+IscNOjXzztUhimQgTxaAoUoj40Qqimaa0NLIOOAH4w==", "dev": true, + "license": "MIT", "dependencies": { "cac": "^6.7.14", "debug": "^4.4.0", "es-module-lexer": "^1.6.0", - "pathe": "^2.0.2", + "pathe": "^2.0.3", "vite": "^5.0.0 || ^6.0.0" }, "bin": { @@ -16989,6 +17072,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dev": true, + "license": "MIT", "dependencies": { "ms": "^2.1.3" }, @@ -17005,17 +17089,19 @@ "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/vite-node/node_modules/vite": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.11.tgz", - "integrity": "sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==", + "version": "6.2.6", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.6.tgz", + "integrity": "sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw==", "dev": true, + "license": "MIT", "dependencies": { - "esbuild": "^0.24.2", - "postcss": "^8.4.49", - "rollup": "^4.23.0" + "esbuild": "^0.25.0", + "postcss": "^8.5.3", + "rollup": "^4.30.1" }, "bin": { "vite": "bin/vite.js" @@ -17079,10 +17165,11 @@ } }, "node_modules/vite-node/node_modules/yaml": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", - "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz", + "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==", "dev": true, + "license": "ISC", "optional": true, "peer": true, "bin": { @@ -17093,30 +17180,31 @@ } }, "node_modules/vitest": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.0.4.tgz", - "integrity": "sha512-6XG8oTKy2gnJIFTHP6LD7ExFeNLxiTkK3CfMvT7IfR8IN+BYICCf0lXUQmX7i7JoxUP8QmeP4mTnWXgflu4yjw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.1.1.tgz", + "integrity": "sha512-kiZc/IYmKICeBAZr9DQ5rT7/6bD9G7uqQEki4fxazi1jdVl2mWGzedtBs5s6llz59yQhVb7FFY2MbHzHCnT79Q==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/expect": "3.0.4", - "@vitest/mocker": "3.0.4", - "@vitest/pretty-format": "^3.0.4", - "@vitest/runner": "3.0.4", - "@vitest/snapshot": "3.0.4", - "@vitest/spy": "3.0.4", - "@vitest/utils": "3.0.4", - "chai": "^5.1.2", + "@vitest/expect": "3.1.1", + "@vitest/mocker": "3.1.1", + "@vitest/pretty-format": "^3.1.1", + "@vitest/runner": "3.1.1", + "@vitest/snapshot": "3.1.1", + "@vitest/spy": "3.1.1", + "@vitest/utils": "3.1.1", + "chai": "^5.2.0", "debug": "^4.4.0", - "expect-type": "^1.1.0", + "expect-type": "^1.2.0", "magic-string": "^0.30.17", - "pathe": "^2.0.2", - "std-env": "^3.8.0", + "pathe": "^2.0.3", + "std-env": "^3.8.1", "tinybench": "^2.9.0", "tinyexec": "^0.3.2", "tinypool": "^1.0.2", "tinyrainbow": "^2.0.0", "vite": "^5.0.0 || ^6.0.0", - "vite-node": "3.0.4", + "vite-node": "3.1.1", "why-is-node-running": "^2.3.0" }, "bin": { @@ -17132,8 +17220,8 @@ "@edge-runtime/vm": "*", "@types/debug": "^4.1.12", "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", - "@vitest/browser": "3.0.4", - "@vitest/ui": "3.0.4", + "@vitest/browser": "3.1.1", + "@vitest/ui": "3.1.1", "happy-dom": "*", "jsdom": "*" }, @@ -17162,12 +17250,13 @@ } }, "node_modules/vitest/node_modules/@vitest/mocker": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.0.4.tgz", - "integrity": "sha512-gEef35vKafJlfQbnyOXZ0Gcr9IBUsMTyTLXsEQwuyYAerpHqvXhzdBnDFuHLpFqth3F7b6BaFr4qV/Cs1ULx5A==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.1.1.tgz", + "integrity": "sha512-bmpJJm7Y7i9BBELlLuuM1J1Q6EQ6K5Ye4wcyOpOMXMcePYKSIYlpcrCm4l/O6ja4VJA5G2aMJiuZkZdnxlC3SA==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/spy": "3.0.4", + "@vitest/spy": "3.1.1", "estree-walker": "^3.0.3", "magic-string": "^0.30.17" }, @@ -17211,14 +17300,15 @@ "dev": true }, "node_modules/vitest/node_modules/vite": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.11.tgz", - "integrity": "sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==", + "version": "6.2.6", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.6.tgz", + "integrity": "sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw==", "dev": true, + "license": "MIT", "dependencies": { - "esbuild": "^0.24.2", - "postcss": "^8.4.49", - "rollup": "^4.23.0" + "esbuild": "^0.25.0", + "postcss": "^8.5.3", + "rollup": "^4.30.1" }, "bin": { "vite": "bin/vite.js" @@ -17282,10 +17372,11 @@ } }, "node_modules/vitest/node_modules/yaml": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", - "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz", + "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==", "dev": true, + "license": "ISC", "optional": true, "peer": true, "bin": { @@ -19567,177 +19658,177 @@ "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==" }, "@esbuild/aix-ppc64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", - "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.2.tgz", + "integrity": "sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==", "dev": true, "optional": true }, "@esbuild/android-arm": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz", - "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.2.tgz", + "integrity": "sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==", "dev": true, "optional": true }, "@esbuild/android-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz", - "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.2.tgz", + "integrity": "sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==", "dev": true, "optional": true }, "@esbuild/android-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz", - "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.2.tgz", + "integrity": "sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==", "dev": true, "optional": true }, "@esbuild/darwin-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz", - "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.2.tgz", + "integrity": "sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==", "dev": true, "optional": true }, "@esbuild/darwin-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz", - "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.2.tgz", + "integrity": "sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==", "dev": true, "optional": true }, "@esbuild/freebsd-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz", - "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.2.tgz", + "integrity": "sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==", "dev": true, "optional": true }, "@esbuild/freebsd-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz", - "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.2.tgz", + "integrity": "sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==", "dev": true, "optional": true }, "@esbuild/linux-arm": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz", - "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.2.tgz", + "integrity": "sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==", "dev": true, "optional": true }, "@esbuild/linux-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz", - "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.2.tgz", + "integrity": "sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==", "dev": true, "optional": true }, "@esbuild/linux-ia32": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz", - "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.2.tgz", + "integrity": "sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==", "dev": true, "optional": true }, "@esbuild/linux-loong64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz", - "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.2.tgz", + "integrity": "sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==", "dev": true, "optional": true }, "@esbuild/linux-mips64el": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz", - "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.2.tgz", + "integrity": "sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==", "dev": true, "optional": true }, "@esbuild/linux-ppc64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz", - "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.2.tgz", + "integrity": "sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==", "dev": true, "optional": true }, "@esbuild/linux-riscv64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz", - "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.2.tgz", + "integrity": "sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==", "dev": true, "optional": true }, "@esbuild/linux-s390x": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz", - "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.2.tgz", + "integrity": "sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==", "dev": true, "optional": true }, "@esbuild/linux-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz", - "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.2.tgz", + "integrity": "sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==", "dev": true, "optional": true }, "@esbuild/netbsd-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz", - "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.2.tgz", + "integrity": "sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==", "dev": true, "optional": true }, "@esbuild/netbsd-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz", - "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.2.tgz", + "integrity": "sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==", "dev": true, "optional": true }, "@esbuild/openbsd-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz", - "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.2.tgz", + "integrity": "sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==", "dev": true, "optional": true }, "@esbuild/openbsd-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz", - "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.2.tgz", + "integrity": "sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==", "dev": true, "optional": true }, "@esbuild/sunos-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz", - "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.2.tgz", + "integrity": "sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==", "dev": true, "optional": true }, "@esbuild/win32-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz", - "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.2.tgz", + "integrity": "sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==", "dev": true, "optional": true }, "@esbuild/win32-ia32": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz", - "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.2.tgz", + "integrity": "sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==", "dev": true, "optional": true }, "@esbuild/win32-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz", - "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.2.tgz", + "integrity": "sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==", "dev": true, "optional": true }, @@ -20112,135 +20203,142 @@ } }, "@rollup/rollup-android-arm-eabi": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.32.1.tgz", - "integrity": "sha512-/pqA4DmqyCm8u5YIDzIdlLcEmuvxb0v8fZdFhVMszSpDTgbQKdw3/mB3eMUHIbubtJ6F9j+LtmyCnHTEqIHyzA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.0.tgz", + "integrity": "sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg==", "dev": true, "optional": true }, "@rollup/rollup-android-arm64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.32.1.tgz", - "integrity": "sha512-If3PDskT77q7zgqVqYuj7WG3WC08G1kwXGVFi9Jr8nY6eHucREHkfpX79c0ACAjLj3QIWKPJR7w4i+f5EdLH5Q==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.0.tgz", + "integrity": "sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w==", "dev": true, "optional": true }, "@rollup/rollup-darwin-arm64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.32.1.tgz", - "integrity": "sha512-zCpKHioQ9KgZToFp5Wvz6zaWbMzYQ2LJHQ+QixDKq52KKrF65ueu6Af4hLlLWHjX1Wf/0G5kSJM9PySW9IrvHA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.0.tgz", + "integrity": "sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ==", "dev": true, "optional": true }, "@rollup/rollup-darwin-x64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.32.1.tgz", - "integrity": "sha512-sFvF+t2+TyUo/ZQqUcifrJIgznx58oFZbdHS9TvHq3xhPVL9nOp+yZ6LKrO9GWTP+6DbFtoyLDbjTpR62Mbr3Q==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.0.tgz", + "integrity": "sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA==", "dev": true, "optional": true }, "@rollup/rollup-freebsd-arm64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.32.1.tgz", - "integrity": "sha512-NbOa+7InvMWRcY9RG+B6kKIMD/FsnQPH0MWUvDlQB1iXnF/UcKSudCXZtv4lW+C276g3w5AxPbfry5rSYvyeYA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.0.tgz", + "integrity": "sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg==", "dev": true, "optional": true }, "@rollup/rollup-freebsd-x64": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.32.1.tgz", - "integrity": "sha512-JRBRmwvHPXR881j2xjry8HZ86wIPK2CcDw0EXchE1UgU0ubWp9nvlT7cZYKc6bkypBt745b4bglf3+xJ7hXWWw==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.0.tgz", + "integrity": "sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.32.1.tgz", - "integrity": "sha512-PKvszb+9o/vVdUzCCjL0sKHukEQV39tD3fepXxYrHE3sTKrRdCydI7uldRLbjLmDA3TFDmh418XH19NOsDRH8g==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.0.tgz", + "integrity": "sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm-musleabihf": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.32.1.tgz", - "integrity": "sha512-9WHEMV6Y89eL606ReYowXuGF1Yb2vwfKWKdD1A5h+OYnPZSJvxbEjxTRKPgi7tkP2DSnW0YLab1ooy+i/FQp/Q==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.0.tgz", + "integrity": "sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.32.1.tgz", - "integrity": "sha512-tZWc9iEt5fGJ1CL2LRPw8OttkCBDs+D8D3oEM8mH8S1ICZCtFJhD7DZ3XMGM8kpqHvhGUTvNUYVDnmkj4BDXnw==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.0.tgz", + "integrity": "sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-musl": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.32.1.tgz", - "integrity": "sha512-FTYc2YoTWUsBz5GTTgGkRYYJ5NGJIi/rCY4oK/I8aKowx1ToXeoVVbIE4LGAjsauvlhjfl0MYacxClLld1VrOw==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.0.tgz", + "integrity": "sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ==", "dev": true, "optional": true }, "@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.32.1.tgz", - "integrity": "sha512-F51qLdOtpS6P1zJVRzYM0v6MrBNypyPEN1GfMiz0gPu9jN8ScGaEFIZQwteSsGKg799oR5EaP7+B2jHgL+d+Kw==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.0.tgz", + "integrity": "sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg==", "dev": true, "optional": true }, "@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.32.1.tgz", - "integrity": "sha512-wO0WkfSppfX4YFm5KhdCCpnpGbtgQNj/tgvYzrVYFKDpven8w2N6Gg5nB6w+wAMO3AIfSTWeTjfVe+uZ23zAlg==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.0.tgz", + "integrity": "sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw==", "dev": true, "optional": true }, "@rollup/rollup-linux-riscv64-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.32.1.tgz", - "integrity": "sha512-iWswS9cIXfJO1MFYtI/4jjlrGb/V58oMu4dYJIKnR5UIwbkzR0PJ09O0PDZT0oJ3LYWXBSWahNf/Mjo6i1E5/g==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.0.tgz", + "integrity": "sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA==", + "dev": true, + "optional": true + }, + "@rollup/rollup-linux-riscv64-musl": { + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.0.tgz", + "integrity": "sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ==", "dev": true, "optional": true }, "@rollup/rollup-linux-s390x-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.32.1.tgz", - "integrity": "sha512-RKt8NI9tebzmEthMnfVgG3i/XeECkMPS+ibVZjZ6mNekpbbUmkNWuIN2yHsb/mBPyZke4nlI4YqIdFPgKuoyQQ==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.0.tgz", + "integrity": "sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-gnu": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.32.1.tgz", - "integrity": "sha512-WQFLZ9c42ECqEjwg/GHHsouij3pzLXkFdz0UxHa/0OM12LzvX7DzedlY0SIEly2v18YZLRhCRoHZDxbBSWoGYg==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.0.tgz", + "integrity": "sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-musl": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.32.1.tgz", - "integrity": "sha512-BLoiyHDOWoS3uccNSADMza6V6vCNiphi94tQlVIL5de+r6r/CCQuNnerf+1g2mnk2b6edp5dk0nhdZ7aEjOBsA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.0.tgz", + "integrity": "sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw==", "dev": true, "optional": true }, "@rollup/rollup-win32-arm64-msvc": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.32.1.tgz", - "integrity": "sha512-w2l3UnlgYTNNU+Z6wOR8YdaioqfEnwPjIsJ66KxKAf0p+AuL2FHeTX6qvM+p/Ue3XPBVNyVSfCrfZiQh7vZHLQ==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.0.tgz", + "integrity": "sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ==", "dev": true, "optional": true }, "@rollup/rollup-win32-ia32-msvc": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.32.1.tgz", - "integrity": "sha512-Am9H+TGLomPGkBnaPWie4F3x+yQ2rr4Bk2jpwy+iV+Gel9jLAu/KqT8k3X4jxFPW6Zf8OMnehyutsd+eHoq1WQ==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.0.tgz", + "integrity": "sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA==", "dev": true, "optional": true }, "@rollup/rollup-win32-x64-msvc": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.32.1.tgz", - "integrity": "sha512-ar80GhdZb4DgmW3myIS9nRFYcpJRSME8iqWgzH2i44u+IdrzmiXVxeFnExQ5v4JYUSpg94bWjevMG8JHf1Da5Q==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.0.tgz", + "integrity": "sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ==", "dev": true, "optional": true }, @@ -20354,9 +20452,9 @@ } }, "@types/estree": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", - "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", "dev": true }, "@types/events": { @@ -20480,9 +20578,9 @@ "dev": true }, "@types/node": { - "version": "22.10.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.2.tgz", - "integrity": "sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==", + "version": "22.13.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.10.tgz", + "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==", "dev": true, "requires": { "undici-types": "~6.20.0" @@ -21038,64 +21136,64 @@ "dev": true }, "@vitest/expect": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.0.4.tgz", - "integrity": "sha512-Nm5kJmYw6P2BxhJPkO3eKKhGYKRsnqJqf+r0yOGRKpEP+bSCBDsjXgiu1/5QFrnPMEgzfC38ZEjvCFgaNBC0Eg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.1.1.tgz", + "integrity": "sha512-q/zjrW9lgynctNbwvFtQkGK9+vvHA5UzVi2V8APrp1C6fG6/MuYYkmlx4FubuqLycCeSdHD5aadWfua/Vr0EUA==", "dev": true, "requires": { - "@vitest/spy": "3.0.4", - "@vitest/utils": "3.0.4", - "chai": "^5.1.2", + "@vitest/spy": "3.1.1", + "@vitest/utils": "3.1.1", + "chai": "^5.2.0", "tinyrainbow": "^2.0.0" } }, "@vitest/pretty-format": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.0.4.tgz", - "integrity": "sha512-ts0fba+dEhK2aC9PFuZ9LTpULHpY/nd6jhAQ5IMU7Gaj7crPCTdCFfgvXxruRBLFS+MLraicCuFXxISEq8C93g==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.1.1.tgz", + "integrity": "sha512-dg0CIzNx+hMMYfNmSqJlLSXEmnNhMswcn3sXO7Tpldr0LiGmg3eXdLLhwkv2ZqgHb/d5xg5F7ezNFRA1fA13yA==", "dev": true, "requires": { "tinyrainbow": "^2.0.0" } }, "@vitest/runner": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.0.4.tgz", - "integrity": "sha512-dKHzTQ7n9sExAcWH/0sh1elVgwc7OJ2lMOBrAm73J7AH6Pf9T12Zh3lNE1TETZaqrWFXtLlx3NVrLRb5hCK+iw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.1.1.tgz", + "integrity": "sha512-X/d46qzJuEDO8ueyjtKfxffiXraPRfmYasoC4i5+mlLEJ10UvPb0XH5M9C3gWuxd7BAQhpK42cJgJtq53YnWVA==", "dev": true, "requires": { - "@vitest/utils": "3.0.4", - "pathe": "^2.0.2" + "@vitest/utils": "3.1.1", + "pathe": "^2.0.3" } }, "@vitest/snapshot": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.0.4.tgz", - "integrity": "sha512-+p5knMLwIk7lTQkM3NonZ9zBewzVp9EVkVpvNta0/PlFWpiqLaRcF4+33L1it3uRUCh0BGLOaXPPGEjNKfWb4w==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.1.1.tgz", + "integrity": "sha512-bByMwaVWe/+1WDf9exFxWWgAixelSdiwo2p33tpqIlM14vW7PRV5ppayVXtfycqze4Qhtwag5sVhX400MLBOOw==", "dev": true, "requires": { - "@vitest/pretty-format": "3.0.4", + "@vitest/pretty-format": "3.1.1", "magic-string": "^0.30.17", - "pathe": "^2.0.2" + "pathe": "^2.0.3" } }, "@vitest/spy": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.0.4.tgz", - "integrity": "sha512-sXIMF0oauYyUy2hN49VFTYodzEAu744MmGcPR3ZBsPM20G+1/cSW/n1U+3Yu/zHxX2bIDe1oJASOkml+osTU6Q==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.1.1.tgz", + "integrity": "sha512-+EmrUOOXbKzLkTDwlsc/xrwOlPDXyVk3Z6P6K4oiCndxz7YLpp/0R0UsWVOKT0IXWjjBJuSMk6D27qipaupcvQ==", "dev": true, "requires": { "tinyspy": "^3.0.2" } }, "@vitest/utils": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.0.4.tgz", - "integrity": "sha512-8BqC1ksYsHtbWH+DfpOAKrFw3jl3Uf9J7yeFh85Pz52IWuh1hBBtyfEbRNNZNjl8H8A5yMLH9/t+k7HIKzQcZQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.1.1.tgz", + "integrity": "sha512-1XIjflyaU2k3HMArJ50bwSh3wKWPD6Q47wz/NUSmRV0zNywPc4w79ARjg/i/aNINHwA+mIALhUVqD9/aUvZNgg==", "dev": true, "requires": { - "@vitest/pretty-format": "3.0.4", - "loupe": "^3.1.2", + "@vitest/pretty-format": "3.1.1", + "loupe": "^3.1.3", "tinyrainbow": "^2.0.0" } }, @@ -22058,9 +22156,9 @@ "integrity": "sha512-+NLXZiviFFKX0fk8Piwv3PfLPGtRqJeq2TiNoUff/qB5KJgwecJTvCXDpmlyP/eCI/GUEmp/h/y5j0yckiiZrA==" }, "chai": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.2.tgz", - "integrity": "sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.0.tgz", + "integrity": "sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==", "dev": true, "requires": { "assertion-error": "^2.0.1", @@ -23305,36 +23403,36 @@ } }, "esbuild": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz", - "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==", + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.2.tgz", + "integrity": "sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==", "dev": true, "requires": { - "@esbuild/aix-ppc64": "0.24.2", - "@esbuild/android-arm": "0.24.2", - "@esbuild/android-arm64": "0.24.2", - "@esbuild/android-x64": "0.24.2", - "@esbuild/darwin-arm64": "0.24.2", - "@esbuild/darwin-x64": "0.24.2", - "@esbuild/freebsd-arm64": "0.24.2", - "@esbuild/freebsd-x64": "0.24.2", - "@esbuild/linux-arm": "0.24.2", - "@esbuild/linux-arm64": "0.24.2", - "@esbuild/linux-ia32": "0.24.2", - "@esbuild/linux-loong64": "0.24.2", - "@esbuild/linux-mips64el": "0.24.2", - "@esbuild/linux-ppc64": "0.24.2", - "@esbuild/linux-riscv64": "0.24.2", - "@esbuild/linux-s390x": "0.24.2", - "@esbuild/linux-x64": "0.24.2", - "@esbuild/netbsd-arm64": "0.24.2", - "@esbuild/netbsd-x64": "0.24.2", - "@esbuild/openbsd-arm64": "0.24.2", - "@esbuild/openbsd-x64": "0.24.2", - "@esbuild/sunos-x64": "0.24.2", - "@esbuild/win32-arm64": "0.24.2", - "@esbuild/win32-ia32": "0.24.2", - "@esbuild/win32-x64": "0.24.2" + "@esbuild/aix-ppc64": "0.25.2", + "@esbuild/android-arm": "0.25.2", + "@esbuild/android-arm64": "0.25.2", + "@esbuild/android-x64": "0.25.2", + "@esbuild/darwin-arm64": "0.25.2", + "@esbuild/darwin-x64": "0.25.2", + "@esbuild/freebsd-arm64": "0.25.2", + "@esbuild/freebsd-x64": "0.25.2", + "@esbuild/linux-arm": "0.25.2", + "@esbuild/linux-arm64": "0.25.2", + "@esbuild/linux-ia32": "0.25.2", + "@esbuild/linux-loong64": "0.25.2", + "@esbuild/linux-mips64el": "0.25.2", + "@esbuild/linux-ppc64": "0.25.2", + "@esbuild/linux-riscv64": "0.25.2", + "@esbuild/linux-s390x": "0.25.2", + "@esbuild/linux-x64": "0.25.2", + "@esbuild/netbsd-arm64": "0.25.2", + "@esbuild/netbsd-x64": "0.25.2", + "@esbuild/openbsd-arm64": "0.25.2", + "@esbuild/openbsd-x64": "0.25.2", + "@esbuild/sunos-x64": "0.25.2", + "@esbuild/win32-arm64": "0.25.2", + "@esbuild/win32-ia32": "0.25.2", + "@esbuild/win32-x64": "0.25.2" } }, "escalade": { @@ -24078,9 +24176,9 @@ } }, "expect-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.1.0.tgz", - "integrity": "sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.2.1.tgz", + "integrity": "sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==", "dev": true }, "express": { @@ -27010,9 +27108,9 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "pathe": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.2.tgz", - "integrity": "sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", "dev": true }, "pathval": { @@ -27111,9 +27209,9 @@ "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==" }, "postcss": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.1.tgz", - "integrity": "sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==", + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", "dev": true, "requires": { "nanoid": "^3.3.8", @@ -28035,31 +28133,32 @@ } }, "rollup": { - "version": "4.32.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.32.1.tgz", - "integrity": "sha512-z+aeEsOeEa3mEbS1Tjl6sAZ8NE3+AalQz1RJGj81M+fizusbdDMoEJwdJNHfaB40Scr4qNu+welOfes7maKonA==", + "version": "4.40.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.40.0.tgz", + "integrity": "sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w==", "dev": true, "requires": { - "@rollup/rollup-android-arm-eabi": "4.32.1", - "@rollup/rollup-android-arm64": "4.32.1", - "@rollup/rollup-darwin-arm64": "4.32.1", - "@rollup/rollup-darwin-x64": "4.32.1", - "@rollup/rollup-freebsd-arm64": "4.32.1", - "@rollup/rollup-freebsd-x64": "4.32.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.32.1", - "@rollup/rollup-linux-arm-musleabihf": "4.32.1", - "@rollup/rollup-linux-arm64-gnu": "4.32.1", - "@rollup/rollup-linux-arm64-musl": "4.32.1", - "@rollup/rollup-linux-loongarch64-gnu": "4.32.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.32.1", - "@rollup/rollup-linux-riscv64-gnu": "4.32.1", - "@rollup/rollup-linux-s390x-gnu": "4.32.1", - "@rollup/rollup-linux-x64-gnu": "4.32.1", - "@rollup/rollup-linux-x64-musl": "4.32.1", - "@rollup/rollup-win32-arm64-msvc": "4.32.1", - "@rollup/rollup-win32-ia32-msvc": "4.32.1", - "@rollup/rollup-win32-x64-msvc": "4.32.1", - "@types/estree": "1.0.6", + "@rollup/rollup-android-arm-eabi": "4.40.0", + "@rollup/rollup-android-arm64": "4.40.0", + "@rollup/rollup-darwin-arm64": "4.40.0", + "@rollup/rollup-darwin-x64": "4.40.0", + "@rollup/rollup-freebsd-arm64": "4.40.0", + "@rollup/rollup-freebsd-x64": "4.40.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.40.0", + "@rollup/rollup-linux-arm-musleabihf": "4.40.0", + "@rollup/rollup-linux-arm64-gnu": "4.40.0", + "@rollup/rollup-linux-arm64-musl": "4.40.0", + "@rollup/rollup-linux-loongarch64-gnu": "4.40.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.40.0", + "@rollup/rollup-linux-riscv64-gnu": "4.40.0", + "@rollup/rollup-linux-riscv64-musl": "4.40.0", + "@rollup/rollup-linux-s390x-gnu": "4.40.0", + "@rollup/rollup-linux-x64-gnu": "4.40.0", + "@rollup/rollup-linux-x64-musl": "4.40.0", + "@rollup/rollup-win32-arm64-msvc": "4.40.0", + "@rollup/rollup-win32-ia32-msvc": "4.40.0", + "@rollup/rollup-win32-x64-msvc": "4.40.0", + "@types/estree": "1.0.7", "fsevents": "~2.3.2" } }, @@ -28787,9 +28886,9 @@ "dev": true }, "std-env": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz", - "integrity": "sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.9.0.tgz", + "integrity": "sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==", "dev": true }, "strict-uri-encode": { @@ -30318,15 +30417,15 @@ "dev": true }, "vite-node": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.0.4.tgz", - "integrity": "sha512-7JZKEzcYV2Nx3u6rlvN8qdo3QV7Fxyt6hx+CCKz9fbWxdX5IvUOmTWEAxMrWxaiSf7CKGLJQ5rFu8prb/jBjOA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.1.1.tgz", + "integrity": "sha512-V+IxPAE2FvXpTCHXyNem0M+gWm6J7eRyWPR6vYoG/Gl+IscNOjXzztUhimQgTxaAoUoj40Qqimaa0NLIOOAH4w==", "dev": true, "requires": { "cac": "^6.7.14", "debug": "^4.4.0", "es-module-lexer": "^1.6.0", - "pathe": "^2.0.2", + "pathe": "^2.0.3", "vite": "^5.0.0 || ^6.0.0" }, "dependencies": { @@ -30346,21 +30445,21 @@ "dev": true }, "vite": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.11.tgz", - "integrity": "sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==", + "version": "6.2.6", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.6.tgz", + "integrity": "sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw==", "dev": true, "requires": { - "esbuild": "^0.24.2", + "esbuild": "^0.25.0", "fsevents": "~2.3.3", - "postcss": "^8.4.49", - "rollup": "^4.23.0" + "postcss": "^8.5.3", + "rollup": "^4.30.1" } }, "yaml": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", - "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz", + "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==", "dev": true, "optional": true, "peer": true @@ -30368,40 +30467,40 @@ } }, "vitest": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.0.4.tgz", - "integrity": "sha512-6XG8oTKy2gnJIFTHP6LD7ExFeNLxiTkK3CfMvT7IfR8IN+BYICCf0lXUQmX7i7JoxUP8QmeP4mTnWXgflu4yjw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.1.1.tgz", + "integrity": "sha512-kiZc/IYmKICeBAZr9DQ5rT7/6bD9G7uqQEki4fxazi1jdVl2mWGzedtBs5s6llz59yQhVb7FFY2MbHzHCnT79Q==", "dev": true, "requires": { - "@vitest/expect": "3.0.4", - "@vitest/mocker": "3.0.4", - "@vitest/pretty-format": "^3.0.4", - "@vitest/runner": "3.0.4", - "@vitest/snapshot": "3.0.4", - "@vitest/spy": "3.0.4", - "@vitest/utils": "3.0.4", - "chai": "^5.1.2", + "@vitest/expect": "3.1.1", + "@vitest/mocker": "3.1.1", + "@vitest/pretty-format": "^3.1.1", + "@vitest/runner": "3.1.1", + "@vitest/snapshot": "3.1.1", + "@vitest/spy": "3.1.1", + "@vitest/utils": "3.1.1", + "chai": "^5.2.0", "debug": "^4.4.0", - "expect-type": "^1.1.0", + "expect-type": "^1.2.0", "magic-string": "^0.30.17", - "pathe": "^2.0.2", - "std-env": "^3.8.0", + "pathe": "^2.0.3", + "std-env": "^3.8.1", "tinybench": "^2.9.0", "tinyexec": "^0.3.2", "tinypool": "^1.0.2", "tinyrainbow": "^2.0.0", "vite": "^5.0.0 || ^6.0.0", - "vite-node": "3.0.4", + "vite-node": "3.1.1", "why-is-node-running": "^2.3.0" }, "dependencies": { "@vitest/mocker": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.0.4.tgz", - "integrity": "sha512-gEef35vKafJlfQbnyOXZ0Gcr9IBUsMTyTLXsEQwuyYAerpHqvXhzdBnDFuHLpFqth3F7b6BaFr4qV/Cs1ULx5A==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.1.1.tgz", + "integrity": "sha512-bmpJJm7Y7i9BBELlLuuM1J1Q6EQ6K5Ye4wcyOpOMXMcePYKSIYlpcrCm4l/O6ja4VJA5G2aMJiuZkZdnxlC3SA==", "dev": true, "requires": { - "@vitest/spy": "3.0.4", + "@vitest/spy": "3.1.1", "estree-walker": "^3.0.3", "magic-string": "^0.30.17" } @@ -30422,21 +30521,21 @@ "dev": true }, "vite": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.11.tgz", - "integrity": "sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==", + "version": "6.2.6", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.2.6.tgz", + "integrity": "sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw==", "dev": true, "requires": { - "esbuild": "^0.24.2", + "esbuild": "^0.25.0", "fsevents": "~2.3.3", - "postcss": "^8.4.49", - "rollup": "^4.23.0" + "postcss": "^8.5.3", + "rollup": "^4.30.1" } }, "yaml": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", - "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz", + "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==", "dev": true, "optional": true, "peer": true diff --git a/client/package.json b/client/package.json index 0b198a79..647a704b 100644 --- a/client/package.json +++ b/client/package.json @@ -66,7 +66,7 @@ "@babel/preset-react": "^7.24.1", "@playwright/test": "1.50.1", "@types/lodash": "^4.17.4", - "@types/node": "^22.10.2", + "@types/node": "^22.13.10", "@types/react": "^17.0.80", "@types/react-dom": "^18.3.0", "@types/react-redux": "^7.1.33", @@ -99,7 +99,7 @@ "stylelint": "^16.5.0", "ts-loader": "^9.5.1", "url-loader": "^4.1.1", - "vitest": "^3.0.4", + "vitest": "^3.1.1", "webpack": "^5.91.0", "webpack-cli": "^5.1.4", "webpack-dev-server": "^5.0.4", diff --git a/client/src/__locales/be.json b/client/src/__locales/be.json index 61af80d8..4484f9ad 100644 --- a/client/src/__locales/be.json +++ b/client/src/__locales/be.json @@ -1,24 +1,24 @@ { "client_settings": "Налады кліентаў", "example_upstream_reserved": "upstream <0>для канкрэтных даменаў;", - "example_multiple_upstreams_reserved": "некалькі DNS-сервераў <0>для канкрэтных даменаў;", + "example_multiple_upstreams_reserved": "некалькі сервер DNSаў <0>для канкрэтных даменаў;", "example_upstream_comment": "каментар.", "upstream_parallel": "Ужыць адначасныя запыты да ўсіх сервераў для паскарэння апрацоўкі запыту", "parallel_requests": "Паралельныя запыты", "load_balancing": "Размеркаванне нагрузкі", "load_balancing_desc": "Запытвайце па адным серверы за раз. AdGuard Home будзе выкарыстоўваць выпадковы алгарытм для выбару сервера, так што самы хуткі сервер будзе выкарыстоўвацца часцей.", - "bootstrap_dns": "Bootstrap DNS-серверы", - "bootstrap_dns_desc": "IP-адрасы DNS-сервераў, якія выкарыстоўваюцца для вырашэння IP-адрасоў распознавальнікаў DoH/DoT, якія вы ўказваеце ў якасці перадачы. Каментары не дапускаюцца.", - "fallback_dns_title": "Рэзервовыя DNS-серверы", - "fallback_dns_desc": "Спіс рэзервовых DNS-сервераў, якія выкарыстоўваюцца, калі вышэйшыя DNS-серверы не адказваюць. Сінтаксіс такі ж, як і ў галоўным полі ўверх.", + "bootstrap_dns": "Bootstrap сервер DNSы", + "bootstrap_dns_desc": "IP-адрасы сервер DNSаў, якія выкарыстоўваюцца для вырашэння IP-адрасоў распознавальнікаў DoH/DoT, якія вы ўказваеце ў якасці перадачы. Каментары не дапускаюцца.", + "fallback_dns_title": "Рэзервовыя сервер DNSы", + "fallback_dns_desc": "Спіс рэзервовых сервер DNSаў, якія выкарыстоўваюцца, калі вышэйшыя сервер DNSы не адказваюць. Сінтаксіс такі ж, як і ў галоўным полі ўверх.", "fallback_dns_placeholder": "Увядзіце па адным рэзервовым серверы DNS у радку", - "local_ptr_title": "Прыватныя DNS-серверы", + "local_ptr_title": "Прыватныя сервер DNSы", "local_ptr_desc": "DNS-серверы, якія AdGuard Home выкарыстоўвае для лакальных PTR-запытаў. Гэтыя серверы выкарыстоўваюцца, каб атрымаць даменавыя імёны кліентаў з прыватнымі IP-адрасамі, напрыклад «192.168.12.34», з дапамогай rDNS. Калі спіс пусты, AdGuard Home выкарыстоўвае прадвызначаныя DNS-серверы вашай АС.", "local_ptr_default_resolver": "Па змаўчанні AdGuard Home выкарыстоўвае наступныя зваротныя DNS-рэзолверы: {{ip}}.", "local_ptr_no_default_resolver": "AdGuard Home не змог вызначыць прыдатныя прыватныя адваротныя DNS-рэзолверы для гэтай сістэмы.", "local_ptr_placeholder": "Увядзіце па адным адрасе на радок", "resolve_clients_title": "Уключыць запытванне даменавых імёнаў для кліентаў", - "resolve_clients_desc": "AdGuard Home будзе спрабаваць аўтаматычна вызначыць даменавыя імёны кліентаў праз PTR-запыты да адпаведных сервераў (прыватны DNS-сервер для лакальных кліентаў, upstream-серверы для кліентаў з публічным IP-адрасам).", + "resolve_clients_desc": "AdGuard Home будзе спрабаваць аўтаматычна вызначыць даменавыя імёны кліентаў праз PTR-запыты да адпаведных сервераў (прыватны сервер DNS для лакальных кліентаў, upstream-серверы для кліентаў з публічным IP-адрасам).", "use_private_ptr_resolvers_title": "Ужываць прыватныя адваротныя DNS-рэзолверы", "use_private_ptr_resolvers_desc": "Пасылаць адваротныя DNS-запыты для лакальна абслугоўных адрасоў на паказаныя серверы. Калі адключана, AdGuard Home будзе адказваць NXDOMAIN на ўсе падобныя PTR-запыты, апроч запытаў пра кліентаў, ужо вядомых па DHCP, /etc/hosts і гэтак далей.", "check_dhcp_servers": "Праверыць DHCP-серверы", @@ -56,7 +56,7 @@ "subnet_error": "Адрасы павінны быць усярэдзіне адной падсеткі", "gateway_or_subnet_invalid": "Некарэктная маска падсеткі", "dhcp_form_gateway_input": "IP-адрас шлюза", - "dhcp_form_subnet_input": "Маска падсеціва", + "dhcp_form_subnet_input": "Маска падсеткі", "dhcp_form_range_title": "Дыяпазон IP-адрасоў", "dhcp_form_range_start": "Пачатак дыяпазону", "dhcp_form_range_end": "Конец диапазона", @@ -89,7 +89,7 @@ "form_enter_hostname": "Увядзіце імя хаста", "error_details": "Дэталізацыя памылкі", "response_details": "Дэталі адказу", - "request_details": "Інфармацыя пра запыт", + "request_details": "Падрабязнасці запыту", "client_details": "Дэталі кліента", "details": "Дэталі", "back": "Назад", @@ -100,15 +100,15 @@ "query_log": "Часопіс", "compact": "Компактный", "nothing_found": "Нічога не знойдзена", - "faq": "FAQ", - "version": "версія", + "faq": "Частыя пытанні", + "version": "Версія", "address": "Адрас", "protocol": "Пратакол", "on": "УКЛ", "off": "Выкл", "copyright": "Усе правы захаваныя", - "homepage": "Галоўная", - "report_an_issue": "Паведаміць пра праблему", + "homepage": "Хатняя старонка", + "report_an_issue": "Паведаміць аб праблеме", "privacy_policy": "Палітыка прыватнасці", "enable_protection": "Уключыць абарону", "enabled_protection": "Абарона ўкл.", @@ -165,8 +165,8 @@ "custom_filtering_rules": "Карыстальніцкія правілы фільтрацыі", "encryption_settings": "Налады шыфравання", "dhcp_settings": "Налады DHCP", - "upstream_dns": "Upstream DNS-серверы", - "upstream_dns_help": "Увядзіце адрасы сервераў па адным у радку. Даведацца больш пра наладжванне DNS-сервераў.", + "upstream_dns": "Upstream сервер DNSы", + "upstream_dns_help": "Увядзіце адрасы сервераў па адным у радку. Даведацца больш пра наладжванне сервер DNSаў.", "upstream_dns_configured_in_file": "Наладжаны ў {{path}}", "test_upstream_btn": "Тэст upstream сервераў", "upstreams": "Upstreams", @@ -182,7 +182,7 @@ "enabled_save_search_toast": "Уключаны бяспечны пошук", "updated_save_search_toast": "Налады бяспечнага пошуку абноўлены", "enabled_table_header": "УКЛ.", - "name_table_header": "Імя", + "name_table_header": "Назва", "list_url_table_header": "URL-адрас спіса", "rules_count_table_header": "Колькасць правілаў:", "last_time_updated_table_header": "Апошняе абнаўленне", @@ -196,7 +196,7 @@ "no_whitelist_added": "Белыя спісы не дададзены", "add_blocklist": "Дадаць чорны спіс", "add_allowlist": "Дадаць белы спіс", - "cancel_btn": "Адмена", + "cancel_btn": "Скасаваць", "enter_name_hint": "Увядзіце імя", "enter_url_or_path_hint": "Увядзіце URL-адрас ці абсалютны шлях да спіса", "check_updates_btn": "Праверыць абнаўленні", @@ -219,7 +219,7 @@ "example_meaning_host_block": "адказаць 127.0.0.1 для example.org (але не для яго паддаменаў);", "example_comment": "! Так можна дадаваць апісанне.", "example_comment_meaning": "каментар;", - "example_comment_hash": "# І вось так таксама.", + "example_comment_hash": "# Таксама каментарый.", "example_regex_meaning": "блакаваць доступ да даменаў, якія адпавядаюць зададзенаму рэгулярнаму выразу.", "example_upstream_regular": "звычайны DNS (наўзверх UDP);", "example_upstream_regular_port": "звычайны DNS (праз UDP, імя хаста);", @@ -233,13 +233,13 @@ "example_upstream_tcp_port": "звычайны DNS (праз TCP, імя хаста);", "example_upstream_tcp_hostname": "звычайны DNS (праз TCP, імя хаста);", "all_lists_up_to_date_toast": "Усе спісы ўжо абноўлены", - "updated_upstream_dns_toast": "Upstream DNS-серверы абноўлены", + "updated_upstream_dns_toast": "Upstream сервер DNSы абноўлены", "dns_test_ok_toast": "Паказаныя серверы DNS працуюць карэктна", "dns_test_not_ok_toast": "Сервер «{{key}}»: немагчыма выкарыстоўваць, праверце слушнасць напісання", "dns_test_parsing_error_toast": "Раздзел {{section}}: радок {{line}}: немагчыма выкарыстоўваць, праверце слушнасць напісання", "dns_test_warning_toast": "Upstream «{{key}}» не адказвае на тэставыя запыты і можа не працаваць належным чынам", - "unblock": "Адблакаваць", - "block": "Заблакаваць", + "unblock": "Разблакіраваць", + "block": "Заблакіраваць", "disallow_this_client": "Забараніць доступ гэтаму кліенту", "allow_this_client": "Дазволіць доступ гэтаму кліенту", "block_for_this_client_only": "Заблакаваць толькі для гэтага кліента", @@ -259,7 +259,7 @@ "no_logs_found": "Логі не знойдзены", "refresh_btn": "Абнавіць", "previous_btn": "Назад", - "next_btn": "Наперад", + "next_btn": "Далей", "loading_table_status": "Загрузка...", "page_table_footer_text": "Старонка", "rows_table_footer_text": "радкоў", @@ -280,10 +280,10 @@ "query_log_retention_confirm": "Вы ўпэўнены, што хочаце змяніць тэрмін захоўвання запытаў? Пры памяншэнні інтэрвалу, некаторыя даныя могуць быць страчаны", "anonymize_client_ip": "Ананімізацыя IP-адрасы кліента", "anonymize_client_ip_desc": "Не захоўвайце поўныя IP-адрасы гэтых удзельнікаў у часопісах або статыстыцы", - "dns_config": "Налады DNS-сервера", + "dns_config": "Налады сервер DNSа", "dns_cache_config": "Налада кэша DNS", "dns_cache_config_desc": "Тут можна наладзіць кэш DNS", - "blocking_mode": "Рэжым блакавання", + "blocking_mode": "Рэжым блакіроўкі", "default": "Стандартны", "nxdomain": "NXDOMAIN", "refused": "REFUSED", @@ -291,9 +291,11 @@ "custom_ip": "Свой IP", "blocking_ipv4": "Блакаванне IPv4", "blocking_ipv6": "Блакаванне IPv6", - "blocked_response_ttl": "TTL заблакаванага адказу", + "blocked_response_ttl": "Заблакіраваны адказ TTL", "blocked_response_ttl_desc": "Паказвае, на працягу колькіх секунд кліенты павінны кэшаваць адфільтраваць адказ", "form_enter_blocked_response_ttl": "Увядзіце TTL заблакіраванага адказу (у секундах)", + "upstream_timeout": "Час чакання для upstream.", + "form_enter_upstream_timeout": "Увядзіце працягласць часу чакання сервера upstream у секундах.", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -342,14 +344,14 @@ "unknown_filter": "Невядомы фільтр {{filterId}}", "known_tracker": "Вядомы трэкер", "install_welcome_title": "Сардэчна запрашаем у AdGuard Home!", - "install_welcome_desc": "AdGuard Home – гэта DNS-сервер, што блакуе рэкламу і трэкінг. Яго мэта – даць вам магчымасць кантраляваць усю ваша сеціва і ўсе падлучаныя прылады. Ён не патрабуе ўсталёўкі кліенцкіх праграм.", + "install_welcome_desc": "AdGuard Home – гэта сервер DNS, што блакуе рэкламу і трэкінг. Яго мэта – даць вам магчымасць кантраляваць усю ваша сеціва і ўсе падлучаныя прылады. Ён не патрабуе ўсталёўкі кліенцкіх праграм.", "install_settings_title": "Ўэб-інтэрфейс адміністравання", - "install_settings_listen": "Інтэрфейс сеціва", + "install_settings_listen": "Сеткавы інтэрфейс", "install_settings_port": "Порт", "install_settings_interface_link": "Ваш ўэб-інтэрфейс адміністравання AdGuard Home будзе даступны па наступных адрасах:", "form_error_port": "Увядзіце карэктны нумар порта", "install_settings_dns": "DNS-сервер", - "install_settings_dns_desc": "Вам будзе трэба наладзіць свае прылады ці роўтар на выкарыстанне DNS-сервера на адным з наступных адрасоў:", + "install_settings_dns_desc": "Вам будзе трэба наладзіць свае прылады ці роўтар на выкарыстанне сервер DNSа на адным з наступных адрасоў:", "install_settings_all_interfaces": "Усе інтэрфейсы", "install_auth_title": "Аўтарызацыя", "install_auth_desc": "Настойліва рэкамендуецца наладзіць аўтэнтыфікацыю паролем для ўэб-інтэрфейсу AdGuard Home. Нават калі ён даступны толькі ў вашай лакальнай сетцы, важна абараніць яго ад неабмежаванага доступу.", @@ -365,17 +367,17 @@ "install_submit_desc": "Працэдура налады завершана і вы гатовы пачаць выкарыстанне AdGuard Home.", "install_devices_router": "Роўтар", "install_devices_router_desc": "Такая наладка аўтаматычна пакрые ўсе прылады, што выкарыстоўваюць ваш хатні роўтар, і вам не трэба будзе наладжваць кожнае з іх у асобнасці.", - "install_devices_address": "DNS-сервер AdGuard Home даступны па наступных адрасах", + "install_devices_address": "сервер DNS AdGuard Home даступны па наступных адрасах", "install_devices_router_list_1": "Адкрыйце налады вашага роўтара. Звычайна вы можаце адкрыць іх у вашым браўзары, напрыклад, http://192.168.0.1/ ці http://192.168.1.1/. Вас могуць папрасіць увесці пароль. Калі вы не помніце яго, пароль часта можна скінуць, націснуўшы на кнопку на самым роўтары. Некаторыя роўтары патрабуюць адмысловага дадатку, які ў гэтым выпадку павінен быць ужо ўсталявана на ваш кампутар ці тэлефон.", "install_devices_router_list_2": "Знайдзіце налады DHCP ці DNS. Знайдзіце літары «DNS» поруч з тэкставым полем, у якое можна ўвесці два ці тры шэрагі лічбаў, падзеленых на 4 групы ад адной до трох лічбаў.", "install_devices_router_list_3": "Увядзіце туды адрас вашага AdGuard Home.", - "install_devices_router_list_4": "Вы не можаце ўсталяваць уласны DNS-сервер на некаторых тыпах маршрутызатараў. У гэтым выпадку можа дапамагчы налада AdGuard Home у якасці DHCP-сервера. У адваротным выпадку вам трэба звярнуцца да кіраўніцтва па наладзе DNS-сервераў для вашай пэўнай мадэлі маршрутызатара.", + "install_devices_router_list_4": "Вы не можаце ўсталяваць уласны сервер DNS на некаторых тыпах маршрутызатараў. У гэтым выпадку можа дапамагчы налада AdGuard Home у якасці DHCP-сервера. У адваротным выпадку вам трэба звярнуцца да кіраўніцтва па наладзе сервер DNSаў для вашай пэўнай мадэлі маршрутызатара.", "install_devices_windows_list_1": "Адкрыйце Панэль кіравання праз меню «Пуск» ці праз пошук Windows.", "install_devices_windows_list_2": "Перайдзіце ў «Сеціва і інтэрнэт», а потым у «Цэнтр кіравання сеціва і агульным доступам».", "install_devices_windows_list_3": "У левым боку экрана клікніце «Змена параметраў адаптара».", "install_devices_windows_list_4": "Пстрыкніце правай кнопкай мышы ваша актыўнае злучэнне і абярыце Уласцівасці.", "install_devices_windows_list_5": "Знайдзіце ў спісе пункт «IP версіі 4 (TCP/IPv4)», вылучыце яго і потым ізноў націсніце «Уласцівасці».", - "install_devices_windows_list_6": "Абярыце «Выкарыстаць наступныя адрасы DNS-сервераў» і ўвядзіце адрас AdGuard Home.", + "install_devices_windows_list_6": "Абярыце «Выкарыстаць наступныя адрасы сервер DNSаў» і ўвядзіце адрас AdGuard Home.", "install_devices_macos_list_1": "Клікніце па абразку Apple і перайдзіце ў Сістэмныя налады.", "install_devices_macos_list_2": "Клікніце па іконцы Сеціва.", "install_devices_macos_list_3": "Абярыце першае падлучэнне ў спісе і націсніце кнопку «Дадаткова».", @@ -396,7 +398,7 @@ "encryption_title": "Шыфраванне", "encryption_desc": "Падтрымка шыфравання (HTTPS/QUIC/TLS) для DNS і ўэб-інтэрфейсу адміністравання", "encryption_config_saved": "Налады шыфравання захаваны", - "encryption_server": "Імя сервера", + "encryption_server": "Назва сервера", "encryption_server_enter": "Увядзіце ваша даменавае імя", "encryption_server_desc": "Калі ўстаноўлена, AdGuard Home вызначае ClientID, адказвае на запыты DDR і выконвае дадатковыя праверкі злучэння. Калі не ўстаноўлена, гэтыя функцыі адключаны. Павінна адпавядаць аднаму з імёнаў DNS у сертыфікаце.", "encryption_redirect": "Аўтаматычна перанакіроўваць на HTTPS", @@ -415,7 +417,7 @@ "encryption_key": "Прыватны ключ", "encryption_key_input": "Скапіюйце сюды прыватны ключ у PEM-кадоўцы.", "encryption_enable": "Уключыць шыфраванне (HTTPS, DNS-over-HTTPS і DNS-over-TLS)", - "encryption_enable_desc": "Калі шыфраванне ўлучана, ўэб-інтэрфейс AdGuard Home будзе працаваць па HTTPS, а DNS-сервер будзе таксама працаваць па DNS-over-HTTPS і DNS-over-TLS.", + "encryption_enable_desc": "Калі шыфраванне ўлучана, ўэб-інтэрфейс AdGuard Home будзе працаваць па HTTPS, а сервер DNS будзе таксама працаваць па DNS-over-HTTPS і DNS-over-TLS.", "encryption_chain_valid": "Ланцужок сертыфікатаў валідны", "encryption_chain_invalid": "Ланцужок сертыфікатаў не валідны", "encryption_key_valid": "Валідны {{type}} прыватны ключ", @@ -425,6 +427,7 @@ "encryption_hostnames": "Імёны хастоў", "encryption_reset": "Вы ўпэўнены, што хочаце скінуць налады шыфравання?", "encryption_warning": "Папярэджанне", + "encryption_plain_dns_enable": "Уключыць звычайны DNS", "topline_expiring_certificate": "Ваш SSL-сертыфікат хутка мінае. Абновіце <0>Налады шыфравання.", "topline_expired_certificate": "Ваш SSL-сертыфікат мінуў. Абновіце <0>Налады шыфравання.", "form_error_port_range": "Увядзіце нумар порта з інтэрвалу 80-65535", @@ -435,8 +438,8 @@ "update_announcement": "AdGuard Home {{version}} ужо даступная! <0>Націсніце сюды, каб даведацца больш.", "setup_guide": "Інструкцыя па наладзе", "dns_addresses": "Адрасы DNS", - "dns_start": "DNS-сервер запускаецца", - "dns_status_error": "Памылка праверкі стану DNS-сервера", + "dns_start": "сервер DNS запускаецца", + "dns_status_error": "Памылка праверкі стану сервер DNSа", "down": "Уніз", "fix": "Выправіць", "dns_providers": "<0>Спіс вядомых DNS-правайдараў на выбар.", @@ -449,7 +452,7 @@ "settings_global": "Глабальныя", "settings_custom": "Свае", "table_client": "Кліент", - "table_name": "Імя", + "table_name": "Назва", "save_btn": "Захаваць", "client_add": "Дадаць кліента", "client_new": "Новы кліент", @@ -475,7 +478,7 @@ "auto_clients_title": "Кліенты (runtime)", "auto_clients_desc": "Інфармацыя аб IP-адрасах прылад, якія выкарыстоўваюць або могуць выкарыстоўваць AdGuard Home. Гэтая інфармацыя збіраецца з некалькіх крыніц, уключаючы файлы хостаў, зваротны DNS і г.д.", "access_title": "Налады доступу", - "access_desc": "Тут вы можаце наладзіць правілы доступу да DNS-серверу AdGuard Home", + "access_desc": "Тут вы можаце наладзіць правілы доступу да сервер DNSу AdGuard Home", "access_allowed_title": "Дазволеныя кліенты", "access_allowed_desc": "Спіс CIDR, IP-адрасоў або ClientID. Калі ў гэтым спісе ёсць запісы, AdGuard Home будзе прымаць запыты толькі ад гэтых кліентаў.", "access_disallowed_title": "Забароненыя кліенты", @@ -520,7 +523,7 @@ "form_answer": "Увядзіце IP адрас ці дамен", "form_error_domain_format": "Няслушны фармат дамена", "form_error_answer_format": "Няслушны фармат адказу", - "configure": "Наладзіць", + "configure": "Сканфігурыраваць", "main_settings": "Асноўныя налады", "block_services": "Выбраць заблакаваныя сэрвісы", "blocked_services": "Заблакаваныя сэрвісы", @@ -577,7 +580,7 @@ "forgot_password_desc": "Калі ласка, выканаеце <0>гэтыя дзеянні для стварэння новага пароля да вашага акаўнта.", "location": "Месціва", "orgname": "Назва арганізацыі", - "netname": "Назва сеціва", + "netname": "Назва сеткі", "network": "Сеціва", "descr": "Апісанне", "whois": "WHOIS", @@ -596,7 +599,7 @@ "disable_ipv6_desc": "Ігнараваць усе запыты DNS для адрасоў IPv6 (тып AAAA) і выдаленне дадзеных IPv6 з адказаў тыпу HTTPS.", "fastest_addr": "Найхуткі IP-адрас", "fastest_addr_desc": "Апытайце ўсе DNS-серверы і вярніце самы хуткі IP-адрас сярод усіх адказаў. Гэта замарудзіць выкананне DNS-запытаў, бо нам давядзецца чакаць адказаў ад усіх DNS-сервераў, але палепшыць агульную ўзаемасувязь.", - "autofix_warning_text": "Пры націску «Выправіць» AdGuard Home наладзіць вашу сістэму на выкарыстанне DNS-сервера AdGuard Home.", + "autofix_warning_text": "Пры націску «Выправіць» AdGuard Home наладзіць вашу сістэму на выкарыстанне сервер DNSа AdGuard Home.", "autofix_warning_list": "Будуць выконвацца наступныя заданні: <0>Дэактываваць сістэмны DNSStubListener <0>Усталяваць адрас сервера DNS на 127.0.0.1 <0>Стварыць сімвалічную спасылку /etc/resolv.conf на /run/systemd/resolve/resolv.conf <0>Спыніць DNSStubListener (перазагрузіць сістэмную службу).", "autofix_warning_result": "У выніку ўсе DNS-запыты ад вашай сістэмы будуць па змаўчанні апрацоўвацца AdGuard Home.\n", "tags_title": "Тэгі", @@ -615,6 +618,8 @@ "check_reason": "Прычына: {{reason}}", "check_service": "Назва сэрвісу: {{service}}", "service_name": "Назва сэрвіса", + "check_client_id": "Ідэнтыфікатар кліента (ClientID або IP-адрас)", + "check_enter_client_id": "Увядзіце ідэнтыфікатар кліента", "check_not_found": "Не знойдзена ў вашым спісе фільтраў", "client_confirm_block": "Вы ўпэўнены, што хочаце заблакаваць кліента «{{ip}}»?", "client_confirm_unblock": "Вы ўпэўнены, што хочаце адблакаваць кліента «{{ip}}»?", @@ -634,12 +639,12 @@ "validated_with_dnssec": "Проверено с помощью DNSSEC", "all_queries": "Усе запыты", "show_blocked_responses": "Заблакавана", - "show_whitelisted_responses": "Белы спіс", + "show_whitelisted_responses": "У белым спісе", "show_processed_responses": "Апрацавана", "blocked_safebrowsing": "Заблакіравана згодна з базай даных Safe Browsing", "blocked_adult_websites": "Заблакавана Бацькоўскім кантролем", "blocked_threats": "Заблакавана пагроз", - "allowed": "Дазволены", + "allowed": "У белым спісе", "filtered": "Адфільтраваныя", "rewritten": "Перапісаныя", "safe_search": "Бяспечны пошук", @@ -702,7 +707,7 @@ "enable_protection_timer": "Абарона будзе ўключана ў {{time}}", "custom_retention_input": "Увядзіце тэрмін захоўвання ў гадзінах", "custom_rotation_input": "Увядзіце частату ратацыі ў гадзінах", - "protection_section_label": "Ахова", + "protection_section_label": "Абарона", "log_and_stats_section_label": "Журнал запытаў і статыстыка", "ignore_query_log": "Ігнараваць гэтага кліента ў журнале запытаў", "ignore_statistics": "Ігнараваць гэтага кліента ў статыстыцы", @@ -731,14 +736,14 @@ "thursday": "Чацвер", "friday": "Пятніца", "saturday": "Субота", - "sunday_short": "Нд.", - "monday_short": "Пн.", - "tuesday_short": "Аў.", - "wednesday_short": "Ср.", - "thursday_short": "Чц.", - "friday_short": "Пт.", - "saturday_short": "Сб.", - "upstream_dns_cache_configuration": "Канфігурацыя кэша upstream DNS-сервераў", + "sunday_short": "Ндз", + "monday_short": "Пан", + "tuesday_short": "Аўт", + "wednesday_short": "Срд", + "thursday_short": "Чцв", + "friday_short": "Птн", + "saturday_short": "Суб", + "upstream_dns_cache_configuration": "Канфігурацыя кэша upstream сервер DNSаў", "enable_upstream_dns_cache": "Ўключыць кэшаванне для карыстацкай канфігурацыі upstream-сервераў гэтага кліента", "dns_cache_size": "Памер кэша DNS, у байтах" } diff --git a/client/src/__locales/bg.json b/client/src/__locales/bg.json index 166712f4..8066ae42 100644 --- a/client/src/__locales/bg.json +++ b/client/src/__locales/bg.json @@ -1,11 +1,32 @@ { "client_settings": "Kлиентски настройки", + "example_upstream_reserved": "upstream <0>за специфични домейни;", + "example_multiple_upstreams_reserved": "множество upstreams <0>за специфични домейни;", "example_upstream_comment": "Можете да поставите коментар", + "upstream_parallel": "Използване на паралелни заявки за ускоряване на разрешаването на домейни чрез едновременно запитване към всички сървъри нагоре по веригата.", + "parallel_requests": "Паралелни заявки", "load_balancing": "Балансиране на натоварването", + "load_balancing_desc": "Запитвайте по един сървър нагоре по веригата наведнъж.
AdGuard Home използва тежестен произволен алгоритъм за избор на сървъри с най-малък брой неуспешни заявки и най-ниско средно време за запитване.", + "bootstrap_dns": "Bootstrap DNS сървъри", + "bootstrap_dns_desc": "IP адреси на DNS сървърите, използвани за разрешаване на IP адресите на DoH/DoT разпознавателите, които определяте като нагоре по веригата. Коментарите не са разрешени.", + "fallback_dns_title": "Резервни DNS сървъри", + "fallback_dns_desc": "Списък на резервни DNS сървъри, използвани, когато основните DNS сървъри не отговарят. Синтаксисът е същият, както в основното поле за upstream.", + "fallback_dns_placeholder": "Въведете по един резервен DNS сервер на ред", + "local_ptr_title": "Частни обратни DNS сървъри", + "local_ptr_desc": "Сървърите на DNS, използвани от AdGuard Home за частни запроси PTR, SOA и NS. Запитване се счита за частно, ако иска домейн ARPA, съдържащ подмрежа в рамките на частни IP диапазони (като \"192.168.12.34\") и идва от клиент с частен IP адрес. Ако не е зададено, ще се използват стандартните DNS резолвари на вашата ОС, с изключение на IP адресите на AdGuard Home.", + "local_ptr_default_resolver": "По подразбиране AdGuard Home използва следните обратни DNS резолвери: {{ip}}.", + "local_ptr_no_default_resolver": "AdGuard Home не можа да определи подходящи частни обратни DNS резолвери за тази система.", + "local_ptr_placeholder": "Въведете по един IP адрес на ред", + "resolve_clients_title": "Активиране на обратното разрешаване на IP адресите на клиентите", + "resolve_clients_desc": "Обратно разрешаване на IP адресите на клиентите в техните имена на хостове, като се изпращат PTR заявки до съответните резолвъри (частни DNS сървъри за локални клиенти, upstream сървъри за клиенти с публични IP адреси).", + "use_private_ptr_resolvers_title": "Използвайте частни обратни DNS резолвери", + "use_private_ptr_resolvers_desc": "Разрешаване на заявки PTR, SOA и NS за домейни ARPA, съдържащи частни IP адреси чрез частни сървъри, DHCP, /etc/hosts и др. Ако е деактивирано, AdGuard Home ще отговори на всички такива заявки с NXDOMAIN.", "check_dhcp_servers": "Проверка за активен DHCP сървър", "save_config": "Запиши настройките", "enabled_dhcp": "DHCP е разрешен", "disabled_dhcp": "DHCP е забранен", + "unavailable_dhcp": "DHCP не е наличен", + "unavailable_dhcp_desc": "AdGuard Home не може да стартира DHCP сървър във вашата операционна система", "dhcp_title": "DHCP сървър (тестови!)", "dhcp_description": "Ако рутера ви не раздава DHCP адреси, може да използвате вградения в AdGuard DHCP сървър.", "dhcp_enable": "Рзреши DHCP сървъра", @@ -13,11 +34,27 @@ "dhcp_not_found": "Вашата мрежа няма активен DHCP сървър. Безопасно е ползването на вградения DHCP сървър.", "dhcp_found": "Вашата мрежа вече има активен DHCP сървър. Не е безопасно ползването на втори!", "dhcp_leases": "DHCP раздадени адреси", + "dhcp_static_leases": "DHCP статични наеми", "dhcp_leases_not_found": "Няма намерени активни DHCP адреси", "dhcp_config_saved": "Запиши конфигурацията на DHCP сървъра", + "dhcp_ipv4_settings": "Change to 'DHCP IPv4 настройки.'", + "dhcp_ipv6_settings": "DHCP IPv6 настройки", "form_error_required": "Задължително поле", + "form_error_ip4_format": "Невалиден IPv4 адрес", + "form_error_ip4_gateway_format": "Невалиден IPv4 адрес на шлюза", + "form_error_ip6_format": "Невалиден IPv6 адрес", "form_error_ip_format": "Невалиден IPv4 адрес", + "form_error_mac_format": "Невалиден MAC адрес", + "form_error_client_id_format": "ClientID трябва да съдържа само цифри, малки букви и тирета", + "form_error_server_name": "Невалидно име на сървъра", + "form_error_subnet": "Подмрежата \"{{cidr}}\" не съдържа IP адреса \"{{ip}}\"", "form_error_positive": "Проверете дали е положително число", + "form_error_gateway_ip": "Наемът не може да има IP адреса на шлюза", + "out_of_range_error": "Трябва да е извън обхвата \"{{start}}\"-\"{{end}}\"", + "lower_range_start_error": "Трябва да е по-малко от началото на диапазона", + "greater_range_start_error": "Трябва да бъде по-голямо от началото на диапазона", + "subnet_error": "Адресите трябва да бъдат в една подмрежа", + "gateway_or_subnet_invalid": "Невалидна маска на подмрежа", "dhcp_form_gateway_input": "IP шлюз", "dhcp_form_subnet_input": "Мрежова маска", "dhcp_form_range_title": "Група от IP адреси", @@ -28,15 +65,32 @@ "dhcp_interface_select": "Изберете мрежов адаптер за DHCP", "dhcp_hardware_address": "Хардуерни адреси (MAC)", "dhcp_ip_addresses": "IP адреси", + "ip": "IP", "dhcp_table_hostname": "Име на устройство", "dhcp_table_expires": "История", "dhcp_warning": "Ако искате да използвате вградения DHCP сървър, трябва да няма друг активен DHCP в мрежата Ви!", + "dhcp_error": "AdGuard Home не можа да определи дали има друг активен DHCP сървър в мрежата", + "dhcp_static_ip_error": "За да използвате DHCP сървър, трябва да бъде зададен статичен IP адрес. AdGuard Home не успя да определи дали този мрежов интерфейс е конфигуриран с помощта на статичен IP адрес. Моля, задайте статичен IP адрес ръчно.", + "dhcp_dynamic_ip_found": "Вашата система използва динамична конфигурация на IP адреса за интерфейс <0>{{interfaceName}}. За да използвате DHCP сървър, трябва да бъде зададен статичен IP адрес. Вашият текущ IP адрес е <0>{{ipAddress}}. AdGuard Home автоматично ще зададе този IP адрес като статичен, ако натиснете бутона \"Активиране на DHCP сървър\".", + "dhcp_lease_added": "Статичният наем \"{{key}}\" е успешно добавен", + "dhcp_lease_deleted": "Статичният лизинг \"{{key}}\" беше успешно изтрит", + "dhcp_lease_updated": "Статичният наем \"{{key}}\" е успешно обновен", + "dhcp_new_static_lease": "Нова статична наемна", + "dhcp_edit_static_lease": "Редактиране на статичен наем", + "dhcp_static_leases_not_found": "Няма намерени статични наеми DHCP", + "dhcp_add_static_lease": "Добавяне на статична наемна", + "dhcp_reset_leases": "Нулирайте всички наеми", + "dhcp_reset_leases_confirm": "Наистина ли искате да нулирате всички наеми?", + "dhcp_reset_leases_success": "Наемите на DHCP бяха успешно нулирани", + "dhcp_reset": "Сигурни ли сте, че искате да нулирате конфигурацията на DHCP?", "country": "Държава", "city": "Град", "delete_confirm": "Наистина ли искате да изтриете \"{{key}}\"?", + "form_enter_hostname": "Въведете име на хост", "error_details": "Подробности за грешка", "response_details": "Подробности за отговора", "request_details": "Поискайте подробности", + "client_details": "Детайли на клиента", "details": "Детайли", "back": "Назад", "dashboard": "Табло", @@ -45,6 +99,7 @@ "filter": "Филтър", "query_log": "История на заявките", "compact": "Compact", + "nothing_found": "Нищо не е намерено", "faq": "ЧЗВ", "version": "версия", "address": "Адрес", @@ -65,20 +120,32 @@ "stats_malware_phishing": "вируси/атаки", "stats_adult": "сайтове за възрастни", "stats_query_domain": "Най-отваряни страници", - "for_last_24_hours": "за последните 24 часа", + "for_last_hours": "за последния {{count}} час", + "for_last_hours_plural": "за последните {{count}} часа", + "for_last_days": "за последния {{count}} ден", + "for_last_days_plural": "за последните {{count}} дни", + "stats_disabled": "Статистиката е деактивирана. Можете да я активирате от <0>страницата за настройки.", + "stats_disabled_short": "Статистиката е деактивирана.", "no_domains_found": "Няма намерени резултати", "requests_count": "Сума на заявките", "top_blocked_domains": "Най-блокирани страници", "top_clients": "Най-активни IP адреси", "no_clients_found": "Нямa намерени адреси", "general_statistics": "Обща статисика", - "number_of_dns_query_24_hours": "Сума на DNS заявки за последните 24 часа", + "top_upstreams": "Най-добри upstream сървъри", + "no_upstreams_data_found": "Не са намерени данни за upstream-ове", + "number_of_dns_query_days": "Броят на обработените DNS запитвания за последния {{count}} ден", + "number_of_dns_query_days_plural": "Броят на обработените DNS запитвания за последните {{count}} дни", + "number_of_dns_query_hours": "Броят на DNS запитвания, обработени за последния {{count}} час", + "number_of_dns_query_hours_plural": "Броят на DNS запитвания, обработени за последните {{count}} часа", "number_of_dns_query_blocked_24_hours": "Сума на блокирани DNS заявки от филтрите за реклама и местни", "number_of_dns_query_blocked_24_hours_by_sec": "Сума на блокирани DNS заявки от AdGuard свързани със сигурността", "number_of_dns_query_blocked_24_hours_adult": "Сума на блокирани сайтове за възрастни", "enforced_save_search": "Активирано Безопасно Търсене", "number_of_dns_query_to_safe_search": "Сума на DNS заявки при който е приложено Безопасно Търсене", "average_processing_time": "Средно време за обработка", + "average_upstream_response_time": "Средно време за отговор на upstream", + "response_time": "Време за отговор", "average_processing_time_hint": "Средно време за обработка на DNS заявки в милисекунди", "block_domain_use_filters_and_hosts": "Блокирани домейни - общи и местни филтри", "filters_block_toggle_hint": "Може да зададете собствени настройки в Филтри.", @@ -87,12 +154,23 @@ "use_adguard_parental": "Включи AdGuard Родителски Надзор", "use_adguard_parental_hint": "Модул XXX в AdGuard Home ще провери дали страницата има материали за възвъстни. Използва се същия API за анонимност като при модула за Сигурност.", "enforce_safe_search": "Включи Безопасно Търсене", - "enforce_save_search_hint": "AdGuard Home прилага Безопасно Търсене в следните търсачки и сайтове: Google, Youtube, Bing, и Yandex.", + "enforce_save_search_hint": "AdGuard Home ще прилага безопасно търсене в следните търсачки: Google, YouTube, Bing, DuckDuckGo, Ecosia, Yandex, Pixabay.", "no_servers_specified": "Няма избрани услуги", "general_settings": "Общи настройки", + "dns_settings": "DNS настройки", + "dns_blocklists": "DNS блоксписъци", + "dns_allowlists": "DNS разрешени списъци", + "dns_blocklists_desc": "AdGuard Home ще блокира домейни, които съвпадат с блоксписъците.", + "dns_allowlists_desc": "Домейните от списъците с разрешения на DNS ще бъдат разрешени, дори ако са в някой от списъците с блокирани.", "custom_filtering_rules": "Местни правила за филтриране", + "encryption_settings": "Настройки на криптиране", + "dhcp_settings": "Настройки на DHCP", "upstream_dns": "Главен DNS сървър", + "upstream_dns_help": "Въведете един адрес на сървър на ред. Научете повече за конфигуриране на upstream DNS сървъри.", + "upstream_dns_configured_in_file": "Конфигуриран в {{path}}", "test_upstream_btn": "Тествай главния DNS", + "upstreams": "Нагоре по веригата", + "upstream": "upstream", "apply_btn": "Приложи", "disabled_filtering_toast": "Забрани филтрирането", "enabled_filtering_toast": "Разреши фитрирането", @@ -102,19 +180,39 @@ "enabled_parental_toast": "Разреши Родителски Надзор", "disabled_safe_search_toast": "Забрани Безопасно Търсене", "enabled_save_search_toast": "Разреши Безопасно Търсене", + "updated_save_search_toast": "Настройките за безопасно търсене са обновени", "enabled_table_header": "Разреши", "name_table_header": "Име", + "list_url_table_header": "URL на списъка", "rules_count_table_header": "Правила общо", "last_time_updated_table_header": "Последно обновен", "actions_table_header": "Действия", + "request_table_header": "Заявка", "edit_table_action": "Редактирай", "delete_table_action": "Изтрий", + "elapsed": "Изтекло", "filters_and_hosts_hint": "AdGuard Home разбира adblock и host синтаксис.", + "no_blocklist_added": "Няма добавени списъци с блокирани", + "no_whitelist_added": "Няма добавени списъци с разрешени", + "add_blocklist": "Добавяне на списък за блокиране", + "add_allowlist": "Добавяне на списък с разрешения", "cancel_btn": "Откажи", "enter_name_hint": "Въведи име", + "enter_url_or_path_hint": "Въведете URL адрес или абсолютен път на списъка", "check_updates_btn": "Провери за актуализация", + "new_blocklist": "Нов списък за блокиране", + "new_allowlist": "Нов списък с разрешения", + "edit_blocklist": "Редактиране на списък за блокиране", + "edit_allowlist": "Редактиране на списък с разрешения", + "choose_blocklist": "Изберете списъци за блокиране", + "choose_allowlist": "Изберете списъци с разрешения", + "enter_valid_blocklist": "Въведете валиден URL за списъка за блокиране.", + "enter_valid_allowlist": "Въведете валиден URL за списъка с разрешения.", + "form_error_url_format": "Невалиден формат на URL", + "form_error_url_or_path_format": "Невалиден URL или абсолютен път на списъка", "custom_filter_rules": "Местни правила за филтриране", "custom_filter_rules_hint": "Въвеждайте всяко правило на нов ред. Може да използвате adblock или hosts файлов синтаксис.", + "system_host_files": "Файлове на системен хост", "examples_title": "Примери", "example_meaning_filter_block": "Блокирай достъп до домейн example.org и всички под домейни.", "example_meaning_filter_whitelist": "Разреши достъп до домейн example.org и всичките му под домейни.", @@ -124,22 +222,36 @@ "example_comment_hash": "# Това е също коментар", "example_regex_meaning": "блокирай достъп до домейни който съвпадат със следното", "example_upstream_regular": "класически DNS (UDP протокол)", + "example_upstream_regular_port": "обикновен DNS (върху UDP, с порт);", "example_upstream_udp": "обикновен DNS (върху UDP, име на хост);", "example_upstream_dot": "криптиран DNS-върху-TLS", "example_upstream_doh": "криптиран DNS-върху-HTTPS", + "example_upstream_doh3": "криптиран DNS-върху-HTTPS с наложен <0>HTTP/3 и без резервиране на HTTP/2 или по-ниско;", + "example_upstream_doq": "криптиран <0>DNS-over-QUIC;", "example_upstream_sdns": "може да ползвате DNS Подписване за DNSCrypt или DNS-върху-HTTPS сървъри", "example_upstream_tcp": "класически DNS (TCP протокол)", + "example_upstream_tcp_port": "обикновен DNS (върху TCP, с порт);", "example_upstream_tcp_hostname": "обикновен DNS (върху TCP, име на хост);", + "all_lists_up_to_date_toast": "Всички списъци вече са актуални", "updated_upstream_dns_toast": "Глобалните DNS сървъри са обновени", "dns_test_ok_toast": "Въведените DNS сървъри работят коректно", "dns_test_not_ok_toast": "Сървър \"{{key}}\": не работи, моля проверете дали е въведен коректно", + "dns_test_parsing_error_toast": "Раздел {{section}}: ред {{line}}: не може да се използва, моля, проверете дали сте го написали правилно", + "dns_test_warning_toast": "Ъпстриймът \"{{key}}\" не отговаря на тестовите заявки и може да не работи правилно", "unblock": "Отблокирай", "block": "Блокирай", + "disallow_this_client": "Забранете на този клиент", + "allow_this_client": "Позволете на този клиент", + "block_for_this_client_only": "Блокирайте само за този клиент", + "unblock_for_this_client_only": "Деблокирайте само за този клиент", + "add_persistent_client": "Добавяне като постоянен клиент", "time_table_header": "Време", "date": "Дата", "domain_name_table_header": "Име на домейн", + "domain_or_client": "Домейн или клиент", "type_table_header": "Тип", "response_table_header": "Отговор", + "response_code": "Код на отговор", "client_table_header": "Клиент", "empty_response_status": "Празен", "show_all_filter_type": "Покажи всички", @@ -154,18 +266,84 @@ "updated_custom_filtering_toast": "Обновени местни правила за филтриране", "rule_removed_from_custom_filtering_toast": "Премахнато от местни правила за филтриране: {{rule}}", "rule_added_to_custom_filtering_toast": "Добавено до местни правила за филтриране: {{rule}}", + "query_log_response_status": "Статус: {{value}}", + "query_log_filtered": "Филтрирано от {{filter}}", + "query_log_confirm_clear": "Сигурни ли сте, че искате да изчистите целия дневник на запитванията?", + "query_log_cleared": "Дневникът на запитванията е изчистен успешно", + "query_log_updated": "Журналът на запитванията беше успешно актуализиран", + "query_log_clear": "Изчисти дневниците на запитванията", + "query_log_retention": "Ротация на дневниците на запитвания", + "query_log_enable": "Активиране на историята", + "query_log_configuration": "Конфигурация на дневниците", + "query_log_disabled": "Дневникът на запитванията е деактивиран и може да бъде конфигуриран в <0>настройките", + "query_log_strict_search": "Използвайте двойни кавички за стриктно търсене", + "query_log_retention_confirm": "Наистина ли искате да промените ротацията на дневника със запитвания? Ако намалите стойността на интервала, някои данни ще бъдат изгубени", + "anonymize_client_ip": "Анонимен IP адрес на клиента", + "anonymize_client_ip_desc": "Не запазвайте пълния IP адрес на клиента в регистрите или статистиката", + "dns_config": "Конфигурация на DNS сървъра", + "dns_cache_config": "Конфигурация на DNS кеш", + "dns_cache_config_desc": "Тук можете да конфигурирате кеша на DNS", + "blocking_mode": "Режим на блокиране", "default": "По подразбиране", + "nxdomain": "NXDOMAIN", + "refused": "ОТКАЗАНО", + "null_ip": "Нулев IP", "custom_ip": "Персонализиран IP", + "blocking_ipv4": "Блокиране на IPv4", + "blocking_ipv6": "Блокиране на IPv6", + "blocked_response_ttl": "TTL на блокиран отговор", + "blocked_response_ttl_desc": "Указва за колко секунди клиентите трябва да кешират филтриран отговор", + "form_enter_blocked_response_ttl": "Въведете TTL за блокиран отговор (секунди)", + "upstream_timeout": "Време за изчакване на сървър нагоре по веригата", + "upstream_timeout_desc": "Определя броя секунди, които да изчакате за отговор от сървъра нагоре по веригата.", + "form_enter_upstream_timeout": "Въведете времевия интервал за изчакване на сървър нагоре по веригата в секунди.", + "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-пред-HTTPS", + "dns_over_tls": "DNS-над-TLS", "dns_over_quic": "DNS-over-QUIC", + "client_id": "ClientID", + "client_id_placeholder": "Въведете ClientID", + "client_id_desc": "Клиентите могат да бъдат идентифицирани чрез ClientID. Научете повече за начина на идентифициране на клиенти тук.", + "download_mobileconfig_doh": "Изтеглете .mobileconfig за DNS-over-HTTPS", + "download_mobileconfig_dot": "Изтеглете .mobileconfig за DNS-over-TLS", + "download_mobileconfig": "Изтеглете конфигурационния файл", "plain_dns": "Обикновен DNS", + "form_enter_rate_limit": "Въведете ограничение на скоростта", + "rate_limit": "Ограничение на скоростта", + "edns_enable": "Активиране на подмрежата на клиенти EDNS", + "edns_cs_desc": "Добавете опцията за подмрежа на клиента EDNS (ECS) към запитванията нагоре и записвайте стойностите, изпратени от клиентите в журнала на запитванията.", + "edns_use_custom_ip": "Използване на персонализиран IP за EDNS", + "edns_use_custom_ip_desc": "Разрешаване на използването на персонализиран IP за EDNS", + "rate_limit_desc": "Броят на заявките на секунда, разрешени за всеки клиент. Задаването на 0 означава, че няма ограничение.", + "rate_limit_subnet_len_ipv4": "Дължина на префикса на подмрежата за IPv4 адреси", + "rate_limit_subnet_len_ipv4_desc": "Дължина на префикса на подмрежата за IPv4 адреси, използвани за ограничаване на скоростта. Стандартно е 24", + "rate_limit_subnet_len_ipv4_error": "Дължината на префикса на подмрежата IPv4 трябва да бъде между 0 и 32", + "rate_limit_subnet_len_ipv6": "Дължина на префикса на подмрежата за IPv6 адреси", + "rate_limit_subnet_len_ipv6_desc": "Дължина на префикса на подсетеви адреси за IPv6, използвани за ограничаване на скоростта. Стандартната стойност е 56", + "rate_limit_subnet_len_ipv6_error": "Дължината на префикса на подсетевите адреси за IPv6 трябва да бъде между 0 и 128", + "form_enter_rate_limit_subnet_len": "Въведете дължина на префикса на подсетевите адреси за ограничаване на скоростта", + "rate_limit_whitelist": "Разрешен списък за ограничаване на скоростта", + "rate_limit_whitelist_desc": "IP адреси, изключени от ограничаването на скоростта", + "rate_limit_whitelist_placeholder": "Въведете по един IP адрес на ред", + "blocking_ipv4_desc": "IP адрес, който ще се върне за блокирано A запитване", + "blocking_ipv6_desc": "IP адрес, който трябва да се върне за блокирано AAAA запитване", + "blocking_mode_default": "По подразбиране: Отговаряйте с код REFUSED, когато е блокиран от правило в стил Adblock; отговаряйте с IP адреса, посочен в правилото, когато е блокиран от правило в стил /etc/hosts.", + "blocking_mode_refused": "ОТКАЗАНО: Отговорете с код ОТКАЗАН", + "blocking_mode_nxdomain": "NXDOMAIN: Отговаряйте с код NXDOMAIN", + "blocking_mode_null_ip": "Нулев IP: Отговорете с нулев IP адрес (0.0.0.0 за A; :: за AAAA)", + "blocking_mode_custom_ip": "Персонализиран IP: Отговорете с ръчно зададен IP адрес", + "theme_auto": "Автоматично", "theme_light": "Светла тема", "theme_dark": "Тъмна тема", + "upstream_dns_client_desc": "Ако оставите това поле празно, AdGuard Home ще използва сървърите, конфигурирани в <0>настройките на DNS.", + "tracker_source": "Източник на проследяването", "source_label": "Източник", "found_in_known_domain_db": "Намерен в списъците с домейни.", "category_label": "Категория", "rule_label": "Правило", + "list_label": "Списък", "unknown_filter": "Непознат филтър {{filterId}}", + "known_tracker": "Известен проследяващ", "install_welcome_title": "Добре дошли в AdGuard Home!", "install_welcome_desc": "AdGuard Home e мрежово решение за блокиране на реклами и тракери на DNS ниво. Създадено е за да ви даде пълен контрол над мрежата и всичките ви устройства, без да е необходимо допълнително инсталиране на друг софтуер.", "install_settings_title": "Администрация", @@ -194,6 +372,7 @@ "install_devices_router_list_1": "Отворете страницата за настройки на вашия рутер. Обикновено тя се намира на URL (тук http://192.168.0.1/ или тук http://192.168.1.1/). За достъп може да ви трябва парола. Ако сте забравили паролата може да я ресетнете като натиснета скрития ресет бутон - внимание това ще ресетне всички настройки на рутера до фабрични! Някой рутери могат да бъдате администрирани от софтуер или приложение, който би трябвало да е вече инсталиран на компютъра/телефона ви.", "install_devices_router_list_2": "Намерета DHCP/DNS настройки. В под раздел DHCP рзгледайте и намерете къде е полето за DNS настройка в което може да въведете персонализирани настройки за DNS сървъри.", "install_devices_router_list_3": "Въведете адресът на AdGuard Home сървъра.", + "install_devices_router_list_4": "На някои типове маршрутизатори не може да се зададе персонализиран DNS сървър. В този случай може да помогне настройването на AdGuard Home като <0>DHCP сървър. В противен случай трябва да проверите ръководството на маршрутизатора за информация как да персонализирате DNS сървърите на конкретния модел на вашия маршрутизатор.", "install_devices_windows_list_1": "Отворете Контролния Панел през Старт меню или чрез функция търсене на Windows.", "install_devices_windows_list_2": "Вървете до Настрйки на Мрежи и Интернет и от там изберете Мрежи и Център за Споделяне.", "install_devices_windows_list_3": "От ляво на екрана намерете Смени настроки на мрежовия адаптер и кликнете на него.", @@ -211,7 +390,7 @@ "install_devices_android_list_5": "Променете стойностите на DNS 1 и DNS 2 да използват AdGuard Home сървъра.", "install_devices_ios_list_1": "От начален екран, цъкнете на Settings.", "install_devices_ios_list_2": "Изберете Wi-Fi от лявото меню (там няма възможност за въвеждане на DNS настройки).", - "install_devices_ios_list_3": "Клинете на името на активната мрежа към която сте свързани.", + "install_devices_ios_list_3": "Натиснете на името на активната мрежа.", "install_devices_ios_list_4": "В полето за DNS изберете ръчно и въведете адреса на AdGuard Home сървъра.", "get_started": "Да започваме", "next": "Следващ", @@ -222,13 +401,15 @@ "encryption_config_saved": "Конфигурацията е успешно записана", "encryption_server": "Име на сървъра", "encryption_server_enter": "Въведете име на домейна", - "encryption_server_desc": "За да използвате HTTPS, трябва името на сървъра да съвпада с това на SSL сертификата.", + "encryption_server_desc": "Ако е зададено, AdGuard Home открива ClientIDs, отговаря на DDR запитвания и извършва допълнителни проверки на връзките. Ако не е зададено, тези функции са деактивирани. Трябва да съвпада с едно от имената на DNS в сертификата.", "encryption_redirect": "Автоматично пренасочване към HTTPS", "encryption_redirect_desc": "Служи за автоматично пренасочване от HTTP към HTTPS на страницата за Администрация в AdGuard Home.", "encryption_https": "HTTPS порт", "encryption_https_desc": "Ако зададете HTTPS порт, страницата за Администрация на AdGuard Home ще бъде достъпна на HTTPS, и също ще отговаря на DNS-върху-HTTPS '/dns-запитвания'.", "encryption_dot": "DNS-върху-TLS порт", "encryption_dot_desc": "Ако порта е конфигуриран, AdGuard Home ще стартира и сървър за DNS-върху-TLS.", + "encryption_doq": "Порт на DNS-over-QUIC", + "encryption_doq_desc": "Ако този порт е конфигуриран, AdGuard Home ще стартира DNS-over-QUIC сървър на този порт. Той е експериментален и може да не е надежден. Освен това в момента не съществуват много клиенти, които да го подкрепят.", "encryption_certificates": "Сертификати", "encryption_certificates_desc": "За да използвате сигурна връзка, ще трябва да осигурите SSL сертификати за вашия домейн. Може да заявите безплатен от <0>{{link}} или да закупите от Certificate Authorities.", "encryption_certificates_input": "Копирай/постави вашия PEM-кодиран сертификат тук.", @@ -247,6 +428,9 @@ "encryption_hostnames": "Имена на хоста", "encryption_reset": "Сигурни ли сте че искате да изтриете настройките за криптиране?", "encryption_warning": "Внимание", + "encryption_plain_dns_enable": "Активиране на обикновен DNS", + "encryption_plain_dns_desc": "Обикновеният DNS е активиран по подразбиране. Можете да го деактивирате, за да принудите всички устройства да използват криптиран DNS. За да направите това, трябва да активирате поне един криптиран DNS протокол", + "encryption_plain_dns_error": "За да деактивирате обикновения DNS, активирайте поне един криптиран DNS протокол", "topline_expiring_certificate": "Вашият SSL сертификат изтича. Обнови <0>Настройки за криптиране.", "topline_expired_certificate": "Вашият SSL сертификат е изтекъл. Обнови <0>Настройки за криптиране.", "form_error_port_range": "Въведете порт в диапазона 80-65535", @@ -255,43 +439,316 @@ "form_error_password": "Паролата не съвпада", "reset_settings": "Изтрий всички настройки", "update_announcement": "Има нова AdGuard Home {{version}}! <0>Цъкни тук за повече информация.", + "setup_guide": "Наръчник за настройка", + "dns_addresses": "DNS адреси", + "dns_start": "DNS сървърът стартира", + "dns_status_error": "Грешка при проверка на статуса на DNS сървъра", + "down": "Не работи", + "fix": "Поправи", + "dns_providers": "Ето един <0>списък с известни DNS доставчици, от който да избирате.", + "update_now": "Актуализирай сега", + "update_failed": "Авто-актуализацията не успя. Моля, следвайте тези стъпки, за да актуализирате ръчно.", + "manual_update": "Моля, следвайте тези стъпки, за да актуализирате ръчно.", + "processing_update": "Моля, изчакайте, AdGuard Home се актуализира", + "clients_title": "Постоянни клиенти", + "clients_desc": "Конфигурирайте клиентски записи за устройства, свързани с AdGuard Home", + "settings_global": "Глобални", "settings_custom": "Персонализиране", "table_client": "Клиент", "table_name": "Име", "save_btn": "Запази", + "client_add": "Добавяне на клиент", + "client_new": "Нов клиент", + "client_edit": "Редактиране на клиент", + "client_identifier": "Идентификатор", + "ip_address": "Потребителски IP адрес", + "client_identifier_desc": "Клиентите могат да бъдат идентифицирани по техния IP адрес, CIDR, MAC адрес или ClientID (може да се използва за DoT/DoH/DoQ). Научете повече как да идентифицирате клиенти <0>тук.", + "form_enter_ip": "Въведете IP", + "form_enter_subnet_ip": "Въведете IP адрес в подмрежата \"{{cidr}}\"", + "form_enter_mac": "Въведете MAC", + "form_enter_id": "Въведете идентификатор", + "form_add_id": "Добавете идентификатор", + "form_client_name": "Въведете името на клиента", "name": "Име", + "client_name": "Клиент {{id}}", + "client_global_settings": "Използвайте глобалните настройки", + "client_deleted": "Клиент \"{{key}}\" успешно изтрит", + "client_added": "Клиент \"{{key}}\" успешно добавен", + "client_updated": "Клиент \"{{key}}\" успешно обновен", "clients_not_found": "Нямa намерени адреси", + "client_confirm_delete": "Наистина ли искате да изтриете клиента \"{{key}}\"?", + "list_confirm_delete": "Сигурни ли сте, че искате да изтриете този списък?", + "auto_clients_title": "Клиенти по време на работа", + "auto_clients_desc": "Информация за IP адреси на устройства, които използват или могат да използват AdGuard Home. Тази информация се събира от няколко източника, включително файлове с хост, обратен DNS и др.", + "access_title": "Настройки за достъп", + "access_desc": "Тук можете да конфигурирате правилата за достъп до DNS сървъра на AdGuard Home", + "access_allowed_title": "Разрешени клиенти", + "access_allowed_desc": "Списък от CIDR, IP адреси или ClientIDs. Ако този списък съдържа записи, AdGuard Home ще приема заявки само от тези клиенти.", + "access_disallowed_title": "Забранени клиенти", + "access_disallowed_desc": "Списък с CIDR, IP адреси или ClientIDs. Ако този списък съдържа записи, AdGuard Home ще отхвърли заявките от тези клиенти. Това поле се игнорира, ако има записи в разрешените клиенти.", + "access_blocked_title": "Недопустими домейни", + "access_blocked_desc": "Не бъркайте с филтри. AdGuard Home отхвърля DNS запитванията, съвпадащи с тези домейни, и тези запитвания дори не се появяват в дневника на запитванията. Можете да зададете точни имена на домейни, символи за подмяна или правила за филтриране на URL адреси, например \"example.org\", \"*.example.org\" или \"||example.org^\".", + "access_settings_saved": "Настройките за достъп бяха успешно запазени", + "updates_checked": "Достъпна е нова версия на AdGuard Home", + "updates_version_equal": "AdGuard Home е актуален.", "check_updates_now": "Провери за актуализации", + "version_request_error": "Неуспешна проверка за актуализации. Моля, проверете връзката си с Интернет.", + "dns_privacy": "Доверителност на DNS", + "setup_dns_privacy_1": "<0>DNS-върху-TLS: Използвайте <1>{{address}} низ.", + "setup_dns_privacy_2": "<0>DNS-върху-HTTPS: Използвайте <1>{{address}} низ.", + "setup_dns_privacy_3": "<0>Ето списък с приложения, които можете да използвате.", + "setup_dns_privacy_4": "На устройство с iOS 14 или macOS Big Sur можете да изтеглите специален файл '.mobileconfig', който добавя DNS-over-HTTPS или DNS-over-TLS сървъри към настройките на DNS.", + "setup_dns_privacy_android_1": "Android 9 поддържа DNS-върху-TLS нативно. За да го конфигурирате, отидете на Настройки → Мрежа и интернет → Разширени настройки → Частен DNS и въведете името на домейна си там.", + "setup_dns_privacy_android_2": "<0>AdGuard за Android поддържа <1>DNS-върху-HTTPS и <1>DNS-върху-TLS.", + "setup_dns_privacy_android_3": "<0>Intra добавя поддръжка за <1>DNS-върху-HTTPS към Android.", + "setup_dns_privacy_ios_1": "<0>DNSCloak поддържа <1>DNS-over-HTTPS, но за да го конфигурирате да използва вашия собствен сървър, ще трябва да генерирате <2>DNS Stamp за него.", + "setup_dns_privacy_ios_2": "<0>AdGuard за iOS поддържа <1>DNS-over-HTTPS и <1>DNS-over-TLS конфигурация.", + "setup_dns_privacy_other_title": "Други реализации", + "setup_dns_privacy_other_1": "AdGuard Home сам може да бъде сигурен клиент на DNS на всяка платформа.", + "setup_dns_privacy_other_2": "<0>dnsproxy поддържа всички известни сигурни DNS протоколи.", + "setup_dns_privacy_other_3": "<0>dnscrypt-proxy поддържа <1>DNS-over-HTTPS.", + "setup_dns_privacy_other_4": "<0>Mozilla Firefox поддържа <1>DNS-over-HTTPS.", + "setup_dns_privacy_other_5": "Ще намерите повече реализации <0>тук и <1>тук.", + "setup_dns_privacy_ioc_mac": "Конфигурация за iOS и macOS", + "setup_dns_notice": "За да използвате <1>DNS-over-HTTPS или <1>DNS-over-TLS, трябва да <0>конфигурирате Шифроване в настройките на AdGuard Home.", + "rewrite_added": "DNS презапис за \"{{key}}\" успешно добавен", + "rewrite_deleted": "DNS презапис за \"{{key}}\" успешно изтрит", + "rewrite_updated": "ДНС перезаписването беше успешно актуализирано", + "rewrite_add": "Добави DNS презапис", + "rewrite_edit": "Редактиране на ДНС перезаписване", + "rewrite_not_found": "Не са намерени DNS презаписи", + "rewrite_confirm_delete": "Сигурни ли сте, че искате да изтриете DNS презапис за \"{{key}}\"?", + "rewrite_desc": "Позволява лесно да конфигурирате персонализиран DNS отговор за конкретно име на домейн.", + "rewrite_applied": "Правилото за презапис е приложено", + "rewrite_hosts_applied": "Преписано по правило на файла hosts", + "dns_rewrites": "DNS презаписи", + "form_domain": "Въведете име на домейн или wildcard", + "form_answer": "Въведете IP адрес или име на домейн", + "form_error_domain_format": "Невалиден формат на домейн", + "form_error_answer_format": "Невалиден формат на отговор", + "configure": "Конфигурация", + "main_settings": "Основни настройки", + "block_services": "Блокиране на специфични услуги", + "blocked_services": "Блокирани услуги", + "blocked_services_desc": "Позволява бързо блокиране на популярни сайтове и услуги.", + "blocked_services_saved": "Блокираните услуги успешно запазени", + "blocked_services_global": "Използвайте глобални блокирани услуги", + "blocked_service": "Блокирана услуга", + "block_all": "Блокирайте всичко", + "unblock_all": "Отблокирай всичко", + "encryption_certificate_path": "Път на удостоверението", + "encryption_private_key_path": "Път на частния ключ", + "encryption_certificates_source_path": "Задайте път за файл на сертификатите", + "encryption_certificates_source_content": "Поставете съдържанието на сертификатите", + "encryption_key_source_path": "Задайте файл на ключа", + "encryption_key_source_content": "Поставете съдържанието на ключа", + "stats_params": "Конфигурация на статистиката", + "config_successfully_saved": "Конфигурацията беше успешно запазена", "interval_6_hour": "6 часа", "interval_24_hour": "24 часа", + "interval_days": "{{count}} ден", + "interval_days_plural": "{{count}} дни", "domain": "Домейн", "ecs": "ECS", + "punycode": "Punycode", + "answer": "Отговор", + "filter_added_successfully": "Списъкът беше успешно добавен", + "filter_removed_successfully": "Списъкът е успешно премахнат", + "filter_updated": "Списъкът е актуализиран успешно", + "statistics_configuration": "Конфигурация на статистиката", + "statistics_retention": "Запазване на статистиката", + "statistics_retention_desc": "Ако намалите стойността на интервала, някои данни ще бъдат загубени", "statistics_clear": "Нулирай статистиката", + "statistics_clear_confirm": "Наистина ли искате да изчистите статистиката?", + "statistics_retention_confirm": "Наистина ли искате да промените запазването на статистиките? Ако намалите стойността на интервала, някои данни ще бъдат изгубени", + "statistics_cleared": "Статистиките бяха успешно изчистени", + "statistics_enable": "Активиране на статистиките", + "ignore_domains": "Игнорирани домейни (разделени с нов ред)", + "ignore_domains_title": "Игнорирани домейни", + "ignore_domains_desc_stats": "Запитванията за тези домейни не се записват в статистиката", + "ignore_domains_desc_query": "Запитванията за тези домейни не се записват в дневника на запитванията", + "interval_hours": "{{count}} час", + "interval_hours_plural": "{{count}} часа", + "filters_configuration": "Конфигурация на филтри", + "filters_enable": "Активиране на филтри", + "filters_interval": "Интервал за актуализация на филтрите", "disabled": "Изключен", "username_label": "Потребител", "username_placeholder": "Въведете потребител", "password_label": "Парола", "password_placeholder": "Въведете парола", + "sign_in": "Вход", + "sign_out": "Изход", + "forgot_password": "Забравили сте паролата?", + "forgot_password_desc": "Моля, следвайте <0>тези стъпки, за да създадете нова парола за вашия акаунт.", + "location": "Местоположение", + "orgname": "Име на организацията", + "netname": "Име на мрежата", "network": "Мрежа", "descr": "Описание", + "whois": "WHOIS", + "filtering_rules_learn_more": "<0>Научете повече за създаването на собствени списъци с хостове.", + "blocked_by_response": "Блокирано от CNAME или IP в отговор", + "blocked_by_cname_or_ip": "Блокирано от CNAME или IP", "try_again": "Опитай пак", + "domain_desc": "Въведете име на домейн или wildcard, който искате да бъде пренаписан.", + "example_rewrite_domain": "пренапиши отговорите само за това име на домейн.", + "example_rewrite_wildcard": "пренапиши отговорите за всички <0>example.org поддомейни.", + "rewrite_ip_address": "IP адрес: използвайте този IP в отговор A или AAAA", + "rewrite_domain_name": "Име на домейн: добавете запис CNAME", + "rewrite_A": "<0>A: специална стойност, запазете <0>A записи от upstream", + "rewrite_AAAA": "<0>AAAA: специална стойност, запазете <0>AAAA записи от upstream", "disable_ipv6": "Изключете IPv6 протокола", + "disable_ipv6_desc": "Отхвърли всички DNS запитвания за IPv6 адреси (тип AAAA) и премахни IPv6 подсказките от HTTPS отговорите.", + "fastest_addr": "Най-бърз IP адрес", + "fastest_addr_desc": "Изчакайте отговори от всички DNS сървъри, измерете TCP скоростта на свързване за всеки сървър и върнете IP адреса на сървъра с най-бързата скорост на свързване.
Този режим може значително да забави DNS запитвания, ако един или повече сървъри нагоре по веригата не отговарят. Уверете се, че вашите сървъри нагоре по веригата са стабилни и времето за изчакване нагоре по веригата е ниско.", + "autofix_warning_text": "Ако щракнете на \"Поправи\", AdGuard Home ще конфигурира вашата система да използва DNS сървър на AdGuard Home.", + "autofix_warning_list": "Той ще изпълни следните задачи: <0>Деактивиране на системния DNSStubListener <0>Задайте адреса на DNS сървъра на 127.0.0.1 <0>Заменете целта на символичната връзка от /etc/resolv.conf с /run/systemd/resolve/resolv.conf <0>Спиране на DNSStubListener (презареждане на услугата systemd-resolved)", + "autofix_warning_result": "В резултат на това всички DNS заявки от вашата система ще бъдат обработвани от AdGuard Home по подразбиране.", + "tags_title": "Тагове", + "tags_desc": "Можете да изберете таговете, които съответстват на клиента. Включете таговете в правилата за филтриране, за да ги приложите по-точно. <0>Научете повече.", + "form_select_tags": "Изберете тагове на клиента", + "check_title": "Проверете филтрирането", + "check_desc": "Проверете дали името на хоста е филтрирано.", + "check": "Провери", + "form_enter_host": "Въведете име на хост.", + "filtered_custom_rules": "Филтрирано по персонализирани правила за филтриране", + "choose_from_list": "Изберете от списъка", + "add_custom_list": "Добавете персонализиран списък", + "host_whitelisted": "Хостът е разрешен", + "check_ip": "IP адреси: {{ip}}", + "check_cname": "CNAME: {{cname}}", + "check_reason": "Причина: {{reason}}", + "check_service": "Име на услугата: {{service}}", + "check_hostname": "Име на хост или домейн", + "check_client_id": "Идентификатор на клиента (ClientID или IP адрес)", + "check_enter_client_id": "Въведете идентификатор на клиента", + "check_dns_record": "Изберете тип DNS запис", + "service_name": "Име на услугата", + "check_not_found": "Не е намерено в списъците ви с филтри", + "client_confirm_block": "Наистина ли искате да блокирате клиента \"{{ip}}\"?", + "client_confirm_unblock": "Наистина ли искате да деблокирате клиента \"{{ip}}\"?", + "client_blocked": "Клиентът \"{{ip}}\" е успешно блокиран", + "client_unblocked": "Клиентът \"{{ip}}\" е успешно деблокиран", + "static_ip": "Статичен IPv4 адрес", + "static_ip_desc": "AdGuard Home е сървър, затова му е нужна статична IP адреса, за да функционира правилно. В противен случай, в определен момент, вашия рутер може да присвои различен IP адрес на това устройство.", + "set_static_ip": "Задайте статичен IP адрес", + "install_static_ok": "Добри новини! Статичният IP адрес вече е конфигуриран", + "install_static_error": "AdGuard Home не може автоматично да го конфигурира за този мрежов интерфейс. Моля, потърсете инструкция как да го направите ръчно.", + "install_static_configure": "AdGuard Home е открил, че динамичният IP адрес <0>{{ip}} се използва. Искате ли да бъде зададен като ваш статичен адрес?", + "confirm_static_ip": "AdGuard Home ще конфигурира {{ip}} да бъде вашият статичен IP адрес. Искате ли да продължите?", + "list_updated": "{{count}} списък актуализиран", + "list_updated_plural": "{{count}} списъка актуализирани", + "dnssec_enable": "Включете DNSSEC", + "dnssec_enable_desc": "Задайте флага DNSSEC в изходящите DNS запитвания и проверете резултата (нужен е резолвер с активиран DNSSEC).", + "validated_with_dnssec": "Проверено с DNSSEC", + "all_queries": "Всички запитвания", "show_blocked_responses": "Блокирано", "show_whitelisted_responses": "В белия списък", "show_processed_responses": "Обработен", + "blocked_safebrowsing": "Блокирано от безопасно сърфиране", + "blocked_adult_websites": "Блокирано от Родителски Надзор", + "blocked_threats": "Блокирани заплахи", "allowed": "В белия списък", + "filtered": "Филтрирано", + "rewritten": "Преработено", "safe_search": "Безопасно търсене", "blocklist": "Черен списък", + "milliseconds_abbreviation": "мс", + "cache_size": "Размер на кеша", + "cache_size_desc": "Размер на кеша на DNS (в байтове). За да деактивирате кеширането, задайте на 0.", + "cache_ttl_min_override": "Преобръщане на минималния TTL", + "cache_ttl_max_override": "Презаписване на максимален TTL", + "enter_cache_size": "Въведете размер на кеша (байтове)", + "enter_cache_ttl_min_override": "Въведете минимален TTL (секунди)", + "enter_cache_ttl_max_override": "Въведете максимален TTL (секунди)", + "cache_ttl_min_override_desc": "Разширете кратките стойности на времето на живот (секунди), получени от upstream сървъра при кеширане на DNS отговори.", + "cache_ttl_max_override_desc": "Задайте максимална стойност на времето за живот (секунди) за записи в кеша на DNS.", + "ttl_cache_validation": "Минималната стойност на TTL за кеша трябва да бъде по-малка или равна на максималната", + "cache_optimistic": "Оптимистично кеширане", + "cache_optimistic_desc": "Нека AdGuard Home да отговори от кеша дори когато записите са изтекли и също така опитайте да ги обновите.", "filter_category_general": "General", "filter_category_security": "Сигурност", + "filter_category_regional": "Регионални", "filter_category_other": "Друго", + "filter_category_general_desc": "Списъци, които блокират проследяването и рекламата на повечето устройства", + "filter_category_security_desc": "Списъци, предназначени специално за блокиране на злонамерени, фишинг и измамни домейни", + "filter_category_regional_desc": "Списъци, които се фокусират върху регионалните реклами и сървърите за проследяване", + "filter_category_other_desc": "Други списъци с блокиране", + "setup_config_to_enable_dhcp_server": "Настройка на конфигурация за активиране на DHCP сървър", + "original_response": "Оригинален отговор", + "click_to_view_queries": "Натиснете, за да видите запитвания", "port_53_faq_link": "Порт 53 често е зает от \"DNSStubListener\" или \"systemd-resolved\" услуги. Моля, прочетете <0>тази инструкция как да решите това.", + "adg_will_drop_dns_queries": "AdGuard Home ще отхвърли всички DNS запитвания от този клиент.", + "filter_allowlist": "ВНИМАНИЕ: Тази операция ще изключи правилото \"{{disallowed_rule}}\" от списъка на разрешените клиенти.", + "last_rule_in_allowlist": "Не можете да забраните този клиент, тъй като изключването на правилото \"{{disallowed_rule}}\" ще ДЕАКТИВИРА списъка с \"Разрешени клиенти\".", + "use_saved_key": "Използвайте предварително запазения ключ", "parental_control": "Родителски контрол", + "safe_browsing": "Безопасно сърфиране", + "served_from_cache_label": "Предоставено от кеша", + "form_error_password_length": "Паролата трябва да бъде дълга от {{min}} до {{max}} символа", + "anonymizer_notification": "<0>Забележка: Анонимизация на IP е включена. Можете да я деактивирате в <1>Общите настройки.", + "confirm_dns_cache_clear": "Сигурни ли сте, че искате да изчистите кеша на DNS?", + "cache_cleared": "Кешът на DNS успешно изчистен", + "clear_cache": "Изчисти кеша", + "make_static": "Направи статичен", + "theme_auto_desc": "Авто (въз основа на цветната схема на вашето устройство)", + "theme_dark_desc": "Тъмна тема", + "theme_light_desc": "Светла тема", + "disable_for_seconds": "За {{count}} секунди", + "disable_for_seconds_plural": "За {{count}} секунди", + "disable_for_minutes": "За {{count}} минута", + "disable_for_minutes_plural": "За {{count}} минути", + "disable_for_hours": "За {{count}} час", + "disable_for_hours_plural": "За {{count}} часа", + "disable_until_tomorrow": "До утре", + "disable_notify_for_seconds": "Отключи защитата за {{count}} секунда", + "disable_notify_for_seconds_plural": "Деактивиране на защитата за {{count}} секунди", + "disable_notify_for_minutes": "Деактивиране на защитата за {{count}} минута", + "disable_notify_for_minutes_plural": "Деактивиране на защитата за {{count}} минути", + "disable_notify_for_hours": "Деактивиране на защитата за {{count}} час", + "disable_notify_for_hours_plural": "Деактивиране на защитата за {{count}} часа", + "disable_notify_until_tomorrow": "Деактивиране на защитата до утре", + "enable_protection_timer": "Защитата ще бъде активирана след {{time}}", + "custom_retention_input": "Въведете срок на задържане в часове", + "custom_rotation_input": "Въведете ротация в часове", + "protection_section_label": "Защита", + "log_and_stats_section_label": "Лог на заявките и статистика", + "ignore_query_log": "Игнорирайте този клиент в логовете на заявките", + "ignore_statistics": "Игнорирайте този клиент в статистиките", + "schedule_services": "Пауза на блокирането на услугата", + "schedule_services_desc": "Конфигурирайте графика за паузи на филтъра за блокиране на услуги", + "schedule_services_desc_client": "Конфигурирайте графика за паузи на филтъра за блокиране на услуги за този клиент", + "schedule_desc": "Настройте периодите на неактивност за блокираните услуги", + "schedule_invalid_select": "Времето за начало трябва да е преди времето за край", + "schedule_select_days": "Изберете дни", + "schedule_timezone": "Изберете часова зона", + "schedule_current_timezone": "Текуща часова зона: {{value}}", + "schedule_time_all_day": "Цял ден", + "schedule_modal_description": "Този график ще замени всички съществуващи графици за същия ден от седмицата. Всеки ден от седмицата може да има само един период на неактивност.", + "schedule_modal_time_off": "Няма блокиране на услуги:", + "schedule_new": "Нов график", + "schedule_edit": "Редактиране на график", + "schedule_save": "Запиши графика", + "schedule_add": "Добавяне на график", + "schedule_remove": "Премахване на график", + "schedule_from": "От", + "schedule_to": "До", + "sunday": "Неделя", + "monday": "Понеделник", + "tuesday": "Вторник", + "wednesday": "Сряда", + "thursday": "Четвъртък", + "friday": "Петък", + "saturday": "Събота", "sunday_short": "Нд", "monday_short": "Пон", "tuesday_short": "Вт", "wednesday_short": "Ср", "thursday_short": "Чт", "friday_short": "Пт", - "saturday_short": "Съб" + "saturday_short": "Съб", + "upstream_dns_cache_configuration": "Конфигурация на кеша на upstream DNS", + "enable_upstream_dns_cache": "Активирайте кеширането на DNS за тази персонализирана конфигурация на upstream на клиента", + "dns_cache_size": "Размер на кеша на DNS, в байтове" } diff --git a/client/src/__locales/cs.json b/client/src/__locales/cs.json index 622d52eb..9a6106c5 100644 --- a/client/src/__locales/cs.json +++ b/client/src/__locales/cs.json @@ -224,11 +224,11 @@ "example_upstream_regular": "obvyklý DNS (přes UDP);", "example_upstream_regular_port": "obvyklý DNS (skrze UDP, s portem);", "example_upstream_udp": "obvyklý DNS (skrze UDP, název hostitele);", - "example_upstream_dot": "šifrovaný <0>DNS skrze TLS;", - "example_upstream_doh": "šifrovaný <0>DNS skrze HTTPS;", - "example_upstream_doh3": "šifrovaný DNS skrze HTTPS s vynuceným <0>HTTP/3 a bez možnosti zpětného přechodu na HTTP/2 nebo nižší;", - "example_upstream_doq": "šifrovaný <0>DNS skrze QUIC;", - "example_upstream_sdns": "<0>DNS razítka pro <1>DNSCrypt nebo <2>DNS skrze HTTPS řešitele;", + "example_upstream_dot": "šifrovaný <0>DNS-over-TLS;", + "example_upstream_doh": "šifrovaný <0>DNS-over-HTTPS;", + "example_upstream_doh3": "šifrovaný DNS-over-HTTPS s vynuceným <0>HTTP/3 a bez možnosti zpětného přechodu na HTTP/2 nebo nižší;", + "example_upstream_doq": "šifrovaný <0>DNS-over-QUIC;", + "example_upstream_sdns": "<0>DNS razítka pro <1>DNSCrypt nebo <2>DNS-over-HTTPS řešitele;", "example_upstream_tcp": "obvyklý DNS (přes TCP);", "example_upstream_tcp_port": "obvyklý DNS (skrze TCP, s portem);", "example_upstream_tcp_hostname": "obvyklý DNS (skrze TCP, název hostitele);", @@ -298,14 +298,14 @@ "upstream_timeout_desc": "Určuje počet sekund čekání na odpověď od odchozího serveru", "form_enter_upstream_timeout": "Zadejte dobu časového limitu odchozího serveru v sekundách", "dnscrypt": "DNSCrypt", - "dns_over_https": "DNS skrze HTTPS", - "dns_over_tls": "DNS skrze TLS", - "dns_over_quic": "DNS skrze QUIC", + "dns_over_https": "DNS-over-HTTPS", + "dns_over_tls": "DNS-over-TLS", + "dns_over_quic": "DNS-over-QUIC", "client_id": "ID klienta", "client_id_placeholder": "Zadejte ID klienta", "client_id_desc": "Klienty lze identifikovat pomocí ID klienta. Zde se můžete dozvědět více o tom, jak klienty identifikovat.", - "download_mobileconfig_doh": "Stáhnout .mobileconfig pro DNS skrze HTTPS", - "download_mobileconfig_dot": "Stáhnout .mobileconfig pro DNS skrze TLS", + "download_mobileconfig_doh": "Stáhnout .mobileconfig pro DNS-over-HTTPS", + "download_mobileconfig_dot": "Stáhnout .mobileconfig pro DNS-over-TLS", "download_mobileconfig": "Stáhnout konfigurační soubor", "plain_dns": "Běžný DNS", "form_enter_rate_limit": "Zadejte rychlostní limit", @@ -405,11 +405,11 @@ "encryption_redirect": "Automaticky přesměrovat na HTTPS", "encryption_redirect_desc": "Pokud je zaškrtnuto, AdGuard Home vás automaticky přesměruje z adres HTTP na HTTPS.", "encryption_https": "HTTPS port", - "encryption_https_desc": "Pokud je nakonfigurován port HTTPS, AdGuard Home administrátorské rozhraní bude přístupné přes HTTPS a bude také poskytovat DNS skrze HTTPS na '/dns-query'.", - "encryption_dot": "DNS skrze TLS port", - "encryption_dot_desc": "Pokud je tento port nakonfigurován, AdGuard Home bude na tomto portu spouštět DNS skrze TLS server.", - "encryption_doq": "Port DNS skrze QUIC", - "encryption_doq_desc": "Pokud je tento port nakonfigurován, AdGuard Home bude na tomto portu spouštět DNS skrze QUIC server.", + "encryption_https_desc": "Pokud je nakonfigurován port HTTPS, AdGuard Home administrátorské rozhraní bude přístupné přes HTTPS a bude také poskytovat DNS-over-HTTPS na '/dns-query'.", + "encryption_dot": "DNS-over-TLS port", + "encryption_dot_desc": "Pokud je tento port nakonfigurován, AdGuard Home bude na tomto portu spouštět DNS-over-TLS server.", + "encryption_doq": "DNS-over-QUIC port", + "encryption_doq_desc": "Pokud je tento port nakonfigurován, AdGuard Home bude na tomto portu spouštět DNS-over-QUIC server.", "encryption_certificates": "Certifikáty", "encryption_certificates_desc": "Chcete-li používat šifrování, musíte pro svou doménu poskytnout platný řetězec certifikátů SSL. Certifikát můžete získat bezplatně na adrese <0>{{link}}, nebo jej můžete zakoupit od jednoho z důvěryhodných certifikačních úřadů.", "encryption_certificates_input": "Zde můžete nakopírovat/vložit certifikáty PEM.", @@ -417,8 +417,8 @@ "encryption_expire": "Vyprší", "encryption_key": "Osobní kód", "encryption_key_input": "Zde můžete nakopírovat/vložit soukromý klíč k certifikátu PEM.", - "encryption_enable": "Povolit šifrování (HTTPS, DNS skrze HTTPS a DNS skrze TLS)", - "encryption_enable_desc": "Pokud je šifrování zapnuto, administrátorské rozhraní AdGuard Home bude pracovat skrze HTTPS a DNS server bude naslouchat požadavky přes DNS skrze HTTPS a DNS skrze TLS.", + "encryption_enable": "Povolit šifrování (HTTPS, DNS-over-HTTPS a DNS-over-TLS)", + "encryption_enable_desc": "Pokud je šifrování zapnuto, administrátorské rozhraní AdGuard Home bude pracovat skrze HTTPS a DNS server bude naslouchat požadavky přes DNS-over-HTTPS a DNS-over-TLS.", "encryption_chain_valid": "Certifikační řetězec je platný", "encryption_chain_invalid": "Certifikační řetězec je neplatný", "encryption_key_valid": "Toto je platný {{type}} osobní klíč", @@ -494,23 +494,23 @@ "check_updates_now": "Zkontrolovat aktualizace nyní", "version_request_error": "Kontrola aktualizace se nezdařila. Zkontrolujte prosím připojení k Internetu.", "dns_privacy": "Soukromí DNS", - "setup_dns_privacy_1": "<0>DNS skrze TLS: Použít <1>{{address}} řetězec.", - "setup_dns_privacy_2": "<0>DNS skrze HTTPS: Použít <1>{{address}} řetězec.", + "setup_dns_privacy_1": "<0>DNS-over-TLS: Použít <1>{{address}} řetězec.", + "setup_dns_privacy_2": "<0>DNS-over-HTTPS: Použít <1>{{address}} řetězec.", "setup_dns_privacy_3": "<0>Zde je seznam softwaru, který můžete použít.", - "setup_dns_privacy_4": "Na zařízení se systémem iOS 14 nebo macOS Big Sur si můžete stáhnout speciální soubor '.mobileconfig', který do nastavení DNS přidává servery DNS skrze HTTPS nebo DNS skrze TLS.", - "setup_dns_privacy_android_1": "Android 9 podporuje DNS skrze TLS nativně. Pokud ho chcete konfigurovat, přejděte na Nastavení → Síť & internet → Pokročilé → Soukromé DNS a tam zadejte název vaší domény.", - "setup_dns_privacy_android_2": "<0>AdGuard pro Android podporuje <1>DNS skrze HTTPS a <1>DNS skrze LS.", - "setup_dns_privacy_android_3": "<0>Intra přidává podporu <1>DNS skrze HTTPS pro Android.", - "setup_dns_privacy_ios_1": "<0>DNSCloak podporuje funkci <1>DNS skrze HTTPS, ale abyste ji mohli nakonfigurovat pro používání vlastního serveru, musíte vygenerovat značku <2>DNS Stamp.", - "setup_dns_privacy_ios_2": "<0>AdGuard pro iOS podporuje nastavení <1>DNS skrze HTTPS a <1>DNS skrze TLS.", + "setup_dns_privacy_4": "Na zařízení se systémem iOS 14 nebo macOS Big Sur si můžete stáhnout speciální soubor '.mobileconfig', který do nastavení DNS přidává servery DNS-over-HTTPS nebo DNS-over-TLS.", + "setup_dns_privacy_android_1": "Android 9 podporuje DNS-over-TLS nativně. Pokud ho chcete konfigurovat, přejděte na Nastavení → Síť a internet → Pokročilé → Soukromé DNS a tam zadejte název vaší domény.", + "setup_dns_privacy_android_2": "<0>AdGuard pro Android podporuje <1>DNS-over-HTTPS a <1>DNS-over-TLS.", + "setup_dns_privacy_android_3": "<0>Intra přidává podporu <1>DNS-over-HTTPS pro Android.", + "setup_dns_privacy_ios_1": "<0>DNSCloak podporuje funkci <1>DNS-over-HTTPS, ale abyste ji mohli nakonfigurovat pro používání vlastního serveru, musíte vygenerovat značku <2>DNS Stamp.", + "setup_dns_privacy_ios_2": "<0>AdGuard pro iOS podporuje nastavení <1>DNS-over-HTTPS a <1>DNS-over-TLS.", "setup_dns_privacy_other_title": "Další implementace", "setup_dns_privacy_other_1": "Samotný AdGuard Home může být bezpečným klientem DNS na jakékoli platformě.", "setup_dns_privacy_other_2": "<0>dnsproxy podporuje všechny známé bezpečné DNS protokoly.", - "setup_dns_privacy_other_3": "<0>dnscrypt-proxy podporuje <1>DNS skrze HTTPS.", - "setup_dns_privacy_other_4": "<0>Mozilla Firefox podporuje <1>DNS skrze HTTPS.", + "setup_dns_privacy_other_3": "<0>dnscrypt-proxy podporuje <1>DNS-over-HTTPS.", + "setup_dns_privacy_other_4": "<0>Mozilla Firefox podporuje <1>DNS-over-HTTPS.", "setup_dns_privacy_other_5": "Další implementace naleznete <0>zde a <1>zde.", "setup_dns_privacy_ioc_mac": "Konfigurace pro iOS a macOS", - "setup_dns_notice": "Pro použití <1>DNS skrze HTTPS nebo <1>DNS skrze TLS potřebujete v nastaveních AdGuard Home <0>nakonfigurovat šifrování.", + "setup_dns_notice": "Pro použití <1>DNS-over-HTTPS nebo <1>DNS-over-TLS potřebujete v nastaveních AdGuard Home <0>nakonfigurovat šifrování.", "rewrite_added": "Přesměrování DNS pro „{{key}}“ úspěšně přidáno", "rewrite_deleted": "Přesměrování DNS pro „{{key}}“ úspěšně smazáno", "rewrite_updated": "Přesměrování DNS bylo úspěšně aktualizováno", @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Důvod: {{reason}}", "check_service": "Název služby: {{service}}", + "check_hostname": "Název hostitele nebo domény", + "check_client_id": "Identifikátor klienta (ClientID nebo IP adresa)", + "check_enter_client_id": "Zadejte identifikátor klienta", + "check_dns_record": "Vyberte typ DNS záznamu", "service_name": "Název služby", "check_not_found": "Nenalezeno ve Vašich seznamech filtrů", "client_confirm_block": "Opravdu chcete zablokovat klienta „{{ip}}“?", @@ -651,8 +655,11 @@ "safe_search": "Bezpečné vyhledávání", "blocklist": "Zakázaný", "milliseconds_abbreviation": "ms", + "cache_enabled": "Povolit mezipaměť", + "cache_enabled_desc": "Ukládejte odezvy DNS lokálně.", "cache_size": "Velikost mezipaměti", - "cache_size_desc": "Velikost mezipaměti DNS (v bajtech). Chcete-li ukládání do mezipaměti zakázat, ponechte prázdné.", + "cache_size_validation": "Velikost mezipaměti musí být větší než nula, pokud je tato funkce povolena.", + "cache_size_desc": "Velikost mezipaměti DNS (v bajtech). Chcete-li ukládání do mezipaměti zakázat, nastavte 0.", "cache_ttl_min_override": "Přepsat minimální hodnotu TTL", "cache_ttl_max_override": "Přepsat maximální hodnotu TTL", "enter_cache_size": "Zadejte velikost mezipaměti (v bajtech)", diff --git a/client/src/__locales/da.json b/client/src/__locales/da.json index b8e2c5a5..f74f92f3 100644 --- a/client/src/__locales/da.json +++ b/client/src/__locales/da.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Årsag: {{reason}}", "check_service": "Tjenestenavn: {{service}}", + "check_hostname": "Værts- eller domænenavn", + "check_client_id": "Klientidentifikator (ClientID eller IP-adresse)", + "check_enter_client_id": "Angiv klientidentifikator", + "check_dns_record": "Vælg DNS-posttype", "service_name": "Tjenestenavn", "check_not_found": "Ikke fundet i dine filterlister", "client_confirm_block": "Sikker på, at du vil blokere klienten \"{{ip}}\"?", @@ -651,8 +655,11 @@ "safe_search": "Sikker søgning", "blocklist": "Sortliste", "milliseconds_abbreviation": "ms", + "cache_enabled": "Aktivér cache", + "cache_enabled_desc": "Opbevar DNS-svar lokalt.", "cache_size": "Cache-størrelse", - "cache_size_desc": "DNS cache-størrelse (i bytes). Lad stå tomt for at deaktivere cache.", + "cache_size_validation": "Cache-størrelsen skal være større end nul, når den er aktiveret.", + "cache_size_desc": "DNS cache-størrelse (i bytes). Sæt til 0 for at deaktivere cache.", "cache_ttl_min_override": "Tilsidesæt minimum TTL", "cache_ttl_max_override": "Tilsidesæt maksimal TTL", "enter_cache_size": "Angiv cache-størrelse (bytes)", diff --git a/client/src/__locales/de.json b/client/src/__locales/de.json index 14b7408e..e52d9a3b 100644 --- a/client/src/__locales/de.json +++ b/client/src/__locales/de.json @@ -97,9 +97,9 @@ "settings": "Einstellungen", "filters": "Filter", "filter": "Filter", - "query_log": "Anfragenprotokoll", + "query_log": "Abfrageprotokoll", "compact": "Kompakt", - "nothing_found": "Nichts gefunden\n", + "nothing_found": "Nichts gefunden", "faq": "FAQ", "version": "Version", "address": "Adresse", @@ -124,8 +124,8 @@ "for_last_hours_plural": "in den letzten {{count}} Stunden", "for_last_days": "am letzten {{count}} Tag", "for_last_days_plural": "in den letzten {{count}} Tage", - "stats_disabled": "Die Statistik wurde deaktiviert. Sie können diese in den <0>Einstellungen erneut aktivieren.", - "stats_disabled_short": "Die Statistik wurde deaktiviert", + "stats_disabled": "Die Statistiken wurden deaktiviert. Sie können diese in den <0>Einstellungen erneut aktivieren.", + "stats_disabled_short": "Die Statistiken wurden deaktiviert", "no_domains_found": "Keine Domains gefunden", "requests_count": "Anzahl der Anfragen", "top_blocked_domains": "Am häufigsten gesperrte Domains", @@ -158,8 +158,8 @@ "no_servers_specified": "Keine Server festgelegt", "general_settings": "Allgemeine Einstellungen", "dns_settings": "DNS-Einstellungen", - "dns_blocklists": "DNS-Sperrliste", - "dns_allowlists": "DNS-Positivlisten", + "dns_blocklists": "DNS-Blocklisten", + "dns_allowlists": "DNS-Zulassungslisten", "dns_blocklists_desc": "AdGuard Home sperrt Domains, die in den Sperrlisten enthalten sind.", "dns_allowlists_desc": "Domains aus DNS-Positivlisten werden auch dann zugelassen, wenn sie in einer der Sperrlisten enthalten sind.", "custom_filtering_rules": "Benutzerdefinierte Filterregeln", @@ -192,20 +192,20 @@ "delete_table_action": "Löschen", "elapsed": "Verstrichen", "filters_and_hosts_hint": "AdGuard Home versteht grundlegende Werbefilterregeln und Host-Datei-Syntax.", - "no_blocklist_added": "Keine Sperrliste hinzugefügt", - "no_whitelist_added": "Keine Positivliste hinzugefügt", - "add_blocklist": "Sperrliste hinzufügen", - "add_allowlist": "Positivliste hinzufügen", + "no_blocklist_added": "Keine Blocklisten hinzugefügt", + "no_whitelist_added": "Keine Zulassungslisten hinzugefügt", + "add_blocklist": "Blockliste hinzufügen", + "add_allowlist": "Zulassungsliste hinzufügen", "cancel_btn": "Abbrechen", "enter_name_hint": "Name eingeben", "enter_url_or_path_hint": "URL oder absoluten Pfad der Liste eingeben", - "check_updates_btn": "Nach Aktualisierungen suchen", - "new_blocklist": "Neue Sperrliste", - "new_allowlist": "Neue Positivliste", - "edit_blocklist": "Sperrliste bearbeiten", - "edit_allowlist": "Positivliste bearbeiten", - "choose_blocklist": "Sperrliste wählen", - "choose_allowlist": "Positivliste wählen", + "check_updates_btn": "Nach Updates suchen", + "new_blocklist": "Neue Blockliste", + "new_allowlist": "Neue Zulassungsliste", + "edit_blocklist": "Blockliste bearbeiten", + "edit_allowlist": "Zulassungsliste bearbeiten", + "choose_blocklist": "Blocklisten auswählen", + "choose_allowlist": "Zulassungslisten auswählen", "enter_valid_blocklist": "Gültige Webadresse zur Sperrliste eingeben.", "enter_valid_allowlist": "Gültige Webadresse zur Positivliste eingeben.", "form_error_url_format": "Ungültiges URL-Format", @@ -566,7 +566,7 @@ "ignore_domains": "Ignorierte Domains (durch Zeilenumbruch getrennt)", "ignore_domains_title": "Ignorierte Domains", "ignore_domains_desc_stats": "Abfragen, die diesen Regeln entsprechen, werden nicht in die Statistik aufgenommen", - "ignore_domains_desc_query": "Abfragen, die diesen Regeln entsprechen, werden nicht in das Anfragenprotokoll aufgenommen", + "ignore_domains_desc_query": "Abfragen, die diesen Regeln entsprechen, werden nicht in das Abfrageprotokoll aufgenommen", "interval_hours": "{{count}} Stunde", "interval_hours_plural": "{{count}} Stunden", "filters_configuration": "Filterkonfiguration", @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Grund: {{reason}}", "check_service": "Dienstname: {{service}}", + "check_hostname": "Hostname oder Domainname", + "check_client_id": "Client-Kennung (ClientID oder IP-Adresse)", + "check_enter_client_id": "Client-Kennung eingeben", + "check_dns_record": "DNS-Datensatztyp auswählen", "service_name": "Name des Dienstes", "check_not_found": "Nicht in Ihren Filterlisten enthalten", "client_confirm_block": "Möchten Sie den Client „{{ip}}“ wirklich sperren?", @@ -651,8 +655,11 @@ "safe_search": "Sichere Suche", "blocklist": "Sperrliste", "milliseconds_abbreviation": "ms", + "cache_enabled": "Cache aktivieren", + "cache_enabled_desc": "DNS-Antworten lokal speichern.", "cache_size": "Größe des Cache", - "cache_size_desc": "Größe des DNS-Zwischenspeichers (in Bytes)", + "cache_size_validation": "Die Cachegröße muss größer als Null sein, wenn diese Option aktiviert ist.", + "cache_size_desc": "Größe des DNS-Cache (in Bytes). Um das Caching zu deaktivieren, setzen Sie den Wert auf 0.", "cache_ttl_min_override": "TTL-Minimalwert überschreiben", "cache_ttl_max_override": "TTL-Höchstwert überschreiben", "enter_cache_size": "Größe des Cache (Bytes) eingeben", diff --git a/client/src/__locales/en.json b/client/src/__locales/en.json index 9634cf70..cbf089f8 100644 --- a/client/src/__locales/en.json +++ b/client/src/__locales/en.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Reason: {{reason}}", "check_service": "Service name: {{service}}", + "check_hostname": "Hostname or domain name", + "check_client_id": "Client identifier (ClientID or IP address)", + "check_enter_client_id": "Enter client identifier", + "check_dns_record": "Select DNS record type", "service_name": "Service name", "check_not_found": "Not found in your filter lists", "client_confirm_block": "Are you sure you want to block the client \"{{ip}}\"?", @@ -651,8 +655,11 @@ "safe_search": "Safe Search", "blocklist": "Blocklist", "milliseconds_abbreviation": "ms", + "cache_enabled": "Enable cache", + "cache_enabled_desc": "Store DNS responses locally.", "cache_size": "Cache size", - "cache_size_desc": "DNS cache size (in bytes). To disable caching, leave empty.", + "cache_size_validation": "The cache size must be greater than zero when enabled.", + "cache_size_desc": "DNS cache size (in bytes). To disable caching, set to 0.", "cache_ttl_min_override": "Override minimum TTL", "cache_ttl_max_override": "Override maximum TTL", "enter_cache_size": "Enter cache size (bytes)", diff --git a/client/src/__locales/es.json b/client/src/__locales/es.json index bf2d21f8..11468a15 100644 --- a/client/src/__locales/es.json +++ b/client/src/__locales/es.json @@ -1,16 +1,16 @@ { "client_settings": "Configuración de clientes", - "example_upstream_reserved": "un DNS de subida <0>para un dominio específico.", - "example_multiple_upstreams_reserved": "múltiples upstreams <0>para dominios específicos;", + "example_upstream_reserved": "un proveedor DNS <0>para un dominio específico.", + "example_multiple_upstreams_reserved": "múltiples proveedores DNS <0>para dominios específicos.", "example_upstream_comment": "un comentario.", - "upstream_parallel": "Usar consultas paralelas para acelerar la resolución al consultar simultáneamente a todos los servidores DNS de subida.", + "upstream_parallel": "Usar consultas paralelas para acelerar la resolución al consultar simultáneamente a todos los proveedores DNS.", "parallel_requests": "Consultas paralelas", "load_balancing": "Balanceo de carga", - "load_balancing_desc": "Consulta un servidor Dns upstream a la vez.
AdGuard Home utiliza un algoritmo aleatorio ponderado para seleccionar los servidores con el menor número de fallos y el menor tiempo medio de búsqueda.", + "load_balancing_desc": "Consulta un proveedor DNS a la vez.
AdGuard Home utiliza un algoritmo aleatorio ponderado para seleccionar los servidores con el menor número de fallos y el menor tiempo promedio de búsqueda.", "bootstrap_dns": "Servidores DNS de arranque", - "bootstrap_dns_desc": "Direcciones IP de servidores DNS utilizadas para resolver direcciones IP de los solucionadores DoH/DoT que especifiques como ascendentes. No se permiten comentarios.", + "bootstrap_dns_desc": "Direcciones IP de los servidores DNS utilizados para resolver las direcciones IP de los resolutores DoH/DoT que especifiques como proveedores DNS. No se permiten comentarios.", "fallback_dns_title": "Servidores DNS alternativos", - "fallback_dns_desc": "Lista de servidores DNS alternativos utilizados cuando los servidores DNS de subida no responden. La sintaxis es la misma que en el campo de los principales DNS de subida anterior.", + "fallback_dns_desc": "Lista de servidores DNS alternativos utilizados cuando los proveedores DNS no responden. La sintaxis es la misma que en el campo de los principales proveedores DNS anterior.", "fallback_dns_placeholder": "Ingresa un servidor DNS alternativo por línea", "local_ptr_title": "Servidores DNS inversos y privados", "local_ptr_desc": "Los servidores DNS que AdGuard Home utiliza para consultas PTR, SOA y NS privadas. La petición se considera privada si solicita un dominio ARPA que contiene una subred dentro de rangos IP privados, por ejemplo \"192.168.12.34\", y procede de un cliente con dirección privada. Si no se configura, AdGuard Home utiliza las direcciones de los resolvedores DNS predeterminados de tu sistema operativo, excepto las direcciones del propio AdGuard Home.", @@ -18,9 +18,9 @@ "local_ptr_no_default_resolver": "AdGuard Home no pudo determinar los resolutores DNS inversos y privados adecuados para este sistema.", "local_ptr_placeholder": "Ingresa una dirección IP por línea", "resolve_clients_title": "Habilitar la resolución inversa de las direcciones IP de clientes", - "resolve_clients_desc": "Resolve de manera inversa las direcciones IP de los clientes a sus nombres de hosts enviando consultas PTR a los resolutores correspondientes (servidores DNS privados para clientes locales, servidores DNS de subida para clientes con direcciones IP públicas).", + "resolve_clients_desc": "Resuelve de manera inversa las direcciones IP de los clientes a sus nombres de hosts enviando consultas PTR a los resolutores correspondientes (servidores DNS privados para clientes locales, proveedores DNS para clientes con direcciones IP públicas).", "use_private_ptr_resolvers_title": "Usar resolutores DNS inversos y privados", - "use_private_ptr_resolvers_desc": "Resolver las peticiones PTR, SOA y NS para dominios ARPA que contienen direcciones privadas utilizando servidores upstream privados, DHCP, /etc/hosts, etc. Si se desactiva, AdGuard Home responde a todas estas consultas con NXDOMAIN.", + "use_private_ptr_resolvers_desc": "Resuelve peticiones PTR, SOA y NS para dominios ARPA que contienen direcciones IP privadas a través de proveedores DNS privados, DHCP, /etc/hosts, etc. Si se deshabilita, AdGuard Home responderá a todas estas peticiones con NXDOMAIN.", "check_dhcp_servers": "Comprobar si hay servidores DHCP", "save_config": "Guardar configuración", "enabled_dhcp": "Servidor DHCP habilitado", @@ -132,8 +132,8 @@ "top_clients": "Clientes más frecuentes", "no_clients_found": "No se han encontrado clientes", "general_statistics": "Estadísticas generales", - "top_upstreams": "DNS de subida más frecuentes", - "no_upstreams_data_found": "No se han encontrado datos de DNS de subida", + "top_upstreams": "Proveedores DNS más frecuentes", + "no_upstreams_data_found": "No se han encontrado datos de proveedores DNS", "number_of_dns_query_days": "Número de consultas DNS procesadas durante el último {{count}} día", "number_of_dns_query_days_plural": "Número de consultas DNS procesadas durante los últimos {{count}} días", "number_of_dns_query_hours": "Número de consultas DNS procesadas durante la última {{count}} hora", @@ -144,7 +144,7 @@ "enforced_save_search": "Búsquedas seguras forzadas", "number_of_dns_query_to_safe_search": "Número de peticiones DNS a los motores de búsqueda para los que se aplicó la búsqueda segura forzada", "average_processing_time": "Tiempo promedio de procesamiento", - "average_upstream_response_time": "Tiempo promedio de respuesta upstream", + "average_upstream_response_time": "Tiempo promedio de respuesta del proveedor DNS", "response_time": "Tiempo de respuesta", "average_processing_time_hint": "Tiempo promedio en milisegundos al procesar una petición DNS", "block_domain_use_filters_and_hosts": "Bloquear dominios usando filtros y archivos hosts", @@ -157,7 +157,7 @@ "enforce_save_search_hint": "AdGuard Home reforzará la búsqueda segura en los siguientes motores de búsqueda: Google, YouTube, Bing, DuckDuckGo, Ecosia, Yandex y Pixabay.", "no_servers_specified": "No hay servidores especificados", "general_settings": "Configuración general", - "dns_settings": "Configuración del DNS", + "dns_settings": "Configuración DNS", "dns_blocklists": "Listas de bloqueo DNS", "dns_allowlists": "Listas de permitido DNS", "dns_blocklists_desc": "AdGuard Home bloqueará los dominios que coincidan con las listas de bloqueo.", @@ -165,12 +165,12 @@ "custom_filtering_rules": "Reglas de filtrado personalizado", "encryption_settings": "Configuración de cifrado", "dhcp_settings": "Configuración DHCP", - "upstream_dns": "Servidores DNS de subida", - "upstream_dns_help": "Ingresa una dirección de servidor por línea. Más información sobre la configuración de los servidores DNS de subida.", + "upstream_dns": "Proveedores DNS", + "upstream_dns_help": "Ingresa una dirección de servidor por línea. Más información sobre la configuración de los proveedores DNS.", "upstream_dns_configured_in_file": "Configurado en {{path}}", - "test_upstream_btn": "Probar DNS de subida", - "upstreams": "DNS de subida", - "upstream": "DNS de subida", + "test_upstream_btn": "Probar proveedores DNS", + "upstreams": "Proveedores DNS", + "upstream": "Proveedor DNS", "apply_btn": "Aplicar", "disabled_filtering_toast": "Filtrado deshabilitado", "enabled_filtering_toast": "Filtrado habilitado", @@ -233,11 +233,11 @@ "example_upstream_tcp_port": "DNS regular (mediante TCP, con puerto).", "example_upstream_tcp_hostname": "DNS regular (mediante TCP, nombre del host).", "all_lists_up_to_date_toast": "Todas las listas ya están actualizadas", - "updated_upstream_dns_toast": "Servidores DNS de subida guardados correctamente", + "updated_upstream_dns_toast": "Proveedores DNS guardados correctamente", "dns_test_ok_toast": "Los servidores DNS especificados funcionan correctamente", "dns_test_not_ok_toast": "Servidor \"{{key}}\": no se puede utilizar, por favor revisa si lo has escrito correctamente", "dns_test_parsing_error_toast": "No se pudo utilizar la sección {{section}}: línea {{line}}:, verifica si la escribiste correctamente", - "dns_test_warning_toast": "DNS de subida \"{{key}}\" no responde a las peticiones de prueba y es posible que no funcione correctamente", + "dns_test_warning_toast": "Proveedor DNS \"{{key}}\" no responde a las peticiones de prueba y es posible que no funcione correctamente", "unblock": "Desbloquear", "block": "Bloquear", "disallow_this_client": "No permitir a este cliente", @@ -294,9 +294,9 @@ "blocked_response_ttl": "Respuesta TTL bloqueada", "blocked_response_ttl_desc": "Especifica durante cuántos segundos los clientes deben almacenar en cache una respuesta filtrada", "form_enter_blocked_response_ttl": "Ingresa el TTL de respuesta bloqueada (segundos)", - "upstream_timeout": "Tiempo de espera del upstream", - "upstream_timeout_desc": "Especifica el número de segundos que se debe esperar para recibir una respuesta del servidor upstream", - "form_enter_upstream_timeout": "Ingresa la duración del tiempo de espera del servidor DNS upstream en segundos", + "upstream_timeout": "Tiempo de espera del proveedor DNS", + "upstream_timeout_desc": "Especifica el número de segundos que se debe esperar para recibir una respuesta del proveedor DNS", + "form_enter_upstream_timeout": "Ingresa la duración de tiempo de espera del proveedor DNS en segundos", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS mediante HTTPS", "dns_over_tls": "DNS mediante TLS", @@ -311,7 +311,7 @@ "form_enter_rate_limit": "Ingresa el límite de cantidad", "rate_limit": "Límite de cantidad", "edns_enable": "Habilitar subred de cliente EDNS", - "edns_cs_desc": "Añade la opción subred de cliente EDNS (ECS) a las peticiones del DNS de subida y registra los valores enviados por los clientes en el registro de consultas.", + "edns_cs_desc": "Añade la opción subred de cliente EDNS (ECS) a las peticiones del proveedor DNS y registra los valores enviados por los clientes en el registro de consultas.", "edns_use_custom_ip": "Usar IP personalizada para EDNS", "edns_use_custom_ip_desc": "Permitir el uso de IP personalizadas para EDNS", "rate_limit_desc": "Número de peticiones por segundo permitidas por cliente. Establecerlo en 0 significa que no hay límite.", @@ -335,7 +335,7 @@ "theme_auto": "Auto", "theme_light": "Claro", "theme_dark": "Oscuro", - "upstream_dns_client_desc": "Si se mantiene este campo vacío, AdGuard Home utilizará los servidores configurados en la <0>configuración del DNS.", + "upstream_dns_client_desc": "Si se mantiene este campo vacío, AdGuard Home utilizará los servidores configurados en la <0>configuración DNS.", "tracker_source": "Fuente del rastreador", "source_label": "Fuente", "found_in_known_domain_db": "Encontrado en la base de datos de dominios conocidos.", @@ -428,9 +428,9 @@ "encryption_hostnames": "Nombres de hosts", "encryption_reset": "¿Estás seguro de que deseas restablecer la configuración de cifrado?", "encryption_warning": "Advertencia", - "encryption_plain_dns_enable": "Activar DNS simple (sin cifrado)", - "encryption_plain_dns_desc": "El DNS simple (sin cifrado) está activado de forma predeterminada. Puedes desactivarlo para obligar a todos los dispositivos a utilizar DNS cifrado. Para ello, debes habilitar al menos un protocolo DNS cifrado", - "encryption_plain_dns_error": "Para desactivar el DNS simple, activa al menos un protocolo DNS cifrado", + "encryption_plain_dns_enable": "Habilitar DNS simple", + "encryption_plain_dns_desc": "El DNS simple está habilitado de manera predeterminada. Puedes deshabilitarlo para obligar a todos los dispositivos a utilizar DNS cifrado. Para ello, debe habilitar al menos un protocolo DNS cifrado", + "encryption_plain_dns_error": "Para deshabilitar el DNS simple, habilita al menos un protocolo DNS cifrado", "topline_expiring_certificate": "Tu certificado SSL está a punto de expirar. Actualiza la <0>configuración de cifrado.", "topline_expired_certificate": "Tu certificado SSL ha expirado. Actualiza la <0>configuración de cifrado.", "form_error_port_range": "Ingresa el número del puerto en el rango de 80 a 65535", @@ -596,12 +596,12 @@ "example_rewrite_wildcard": "reescribe las respuestas para todos los subdominios de <0>ejemplo.org.", "rewrite_ip_address": "Dirección IP: utiliza esta IP en una respuesta A o AAAA", "rewrite_domain_name": "Nombre de dominio: añade un registro CNAME", - "rewrite_A": "<0>A: valor especial, mantiene registros <0>A del DNS de subida", - "rewrite_AAAA": "<0>AAAA: valor especial, mantiene registros <0>AAAA del DNS de subida", + "rewrite_A": "<0>A: valor especial, mantiene registros <0>A del proveedor DNS", + "rewrite_AAAA": "<0>AAAA: valor especial, mantiene registros <0>AAAA del proveedor DNS", "disable_ipv6": "Deshabilitar resolución de direcciones IPv6", "disable_ipv6_desc": "Descarta todas las consultas de DNS para direcciones IPv6 (tipo AAAA) y elimina las sugerencias de IPv6 de las respuestas HTTPS.", "fastest_addr": "Dirección IP más rápida", - "fastest_addr_desc": "Espera a que respondan todos los servidores DNS, mide la velocidad de conexión TCP de cada servidor y devuelve la Dirección IP del servidor con la velocidad de conexión más rápida.
Este modo puede ralentizar significativamente las consultas DNS, si uno o más servidores DNS de upstream no están respondiendo. Asegúrate de que tus servidores DNS upstream sean estables y tu tiempo de espera de upstream sea bajo.", + "fastest_addr_desc": "Espera respuestas de todos los servidores DNS, mide la velocidad de conexión TCP de cada servidor y devuelve la dirección IP del servidor con la velocidad de conexión más rápida.
Este modo puede ralentizar significativamente las consultas DNS, si uno o más proveedores DNS no responden. Asegúrate de que tus proveedores DNS sean estables y de que el tiempo de espera tu proveedor DNS sea bajo.", "autofix_warning_text": "Si haces clic en \"Corregir\", AdGuard Home configurará tu sistema para utilizar el servidor DNS de AdGuard Home.", "autofix_warning_list": "Realizará estas tareas: <0>Deshabilitar el sistema DNSStubListener <0>Establecer la dirección del servidor DNS en 127.0.0.1 <0>Reemplazar el destino del enlace simbólico de /etc/resolv.conf por /run/systemd/resolve/resolv.conf <0>Detener DNSStubListener (recargar el servicio systemd-resolved)", "autofix_warning_result": "Como resultado, todas las peticiones DNS de tu sistema serán procesadas por AdGuard Home de manera predeterminada.", @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Razón: {{reason}}", "check_service": "Nombre del servicio: {{service}}", + "check_hostname": "Nombre de host o nombre de dominio", + "check_client_id": "Identificador del cliente (ClientID o dirección IP)", + "check_enter_client_id": "Ingresa el identificador del cliente", + "check_dns_record": "Selecciona el tipo de registro DNS", "service_name": "Nombre del servicio", "check_not_found": "No se ha encontrado en tus listas de filtros", "client_confirm_block": "¿Estás seguro de que deseas bloquear al cliente \"{{ip}}\"?", @@ -651,14 +655,17 @@ "safe_search": "Búsqueda segura", "blocklist": "Lista de bloqueo", "milliseconds_abbreviation": "ms", + "cache_enabled": "Activar caché", + "cache_enabled_desc": "Almacene las respuestas de DNS localmente.", "cache_size": "Tamaño de la caché", - "cache_size_desc": "Tamaño de la caché DNS (en bytes). Para deshabilitar el almacenamiento en caché, déjalo vacío.", + "cache_size_validation": "El tamaño de la cache debe ser mayor que cero cuando está habilitado.", + "cache_size_desc": "Tamaño de la caché DNS (en bytes). Para deshabilitar el almacenamiento en caché, establécelo en 0.", "cache_ttl_min_override": "Anular TTL mínimo", "cache_ttl_max_override": "Anular TTL máximo", "enter_cache_size": "Ingresa el tamaño de la caché (bytes)", "enter_cache_ttl_min_override": "Ingresa el TTL mínimo (en segundos)", "enter_cache_ttl_max_override": "Ingresa el TTL máximo (en segundos)", - "cache_ttl_min_override_desc": "Amplía el corto tiempo de vida (segundos) de los valores recibidos del servidor DNS de subida al almacenar en caché las respuestas DNS.", + "cache_ttl_min_override_desc": "Amplía el corto tiempo de vida (segundos) de los valores recibidos del proveedor DNS al almacenar en caché las respuestas DNS.", "cache_ttl_max_override_desc": "Establece un valor de tiempo de vida (segundos) máximo para las entradas en la caché DNS.", "ttl_cache_validation": "La anulación TTL mínimo de la caché debe ser menor o igual al máximo", "cache_optimistic": "Caché optimista", @@ -744,7 +751,7 @@ "thursday_short": "Jue.", "friday_short": "Vie.", "saturday_short": "Sáb.", - "upstream_dns_cache_configuration": "Configuración de la caché DNS upstream", - "enable_upstream_dns_cache": "Habilitar el almacenamiento en caché de DNS para la configuración personalizada de este cliente", + "upstream_dns_cache_configuration": "Configuración de la caché del proveedor DNS", + "enable_upstream_dns_cache": "Habilitar el almacenamiento en caché del DNS para la configuración personalizada de este cliente", "dns_cache_size": "Tamaño de la caché DNS, en bytes" } diff --git a/client/src/__locales/fa.json b/client/src/__locales/fa.json index de269248..65a529dd 100644 --- a/client/src/__locales/fa.json +++ b/client/src/__locales/fa.json @@ -1,25 +1,26 @@ { "client_settings": "تنظیمات کلاینت", "example_upstream_reserved": "میتوانید جریان ارسالی DNS <0> را برای یک دامنه مشخص تعیین کنید ", + "example_multiple_upstreams_reserved": "می‌توانید چندین سرور بالادست را برای دامنه‌های خاص تعیین کنید؛", "example_upstream_comment": "یک نظر.", "upstream_parallel": "استفاده از جستار موازی برای سرعت دادن به تفکیک با جستار همزمان همه جریان های ارسالی", "parallel_requests": "درخواست های موازی", "load_balancing": "متعادل کننده بار", - "load_balancing_desc": "یک سرور بالادستی را در یک زمان پرس و جو کنید. AdGuard Home از الگوریتم تصادفی وزنی خود برای انتخاب سرور استفاده می کند تا سریع ترین سرور بیشتر مورد استفاده قرار گیرد.", + "load_balancing_desc": "یک سرور بالادستی را در یک زمان پرس‌و‌جو کنید.
AdGuard Home از یک الگوریتم تصادفی وزنی برای انتخاب سرورهایی با کمترین تعداد جستجوی ناموفق و کمترین میانگین زمان جستجو استفاده می‌کند.", "bootstrap_dns": "خودراه انداز سرورهای DNS", "bootstrap_dns_desc": "آدرس‌های IP سرورهای DNS که برای حل کردن آدرس‌های IP حل‌کننده‌های DoH/DoT که به‌عنوان upstream مشخص می‌کنید، استفاده می‌شوند. اظهار نظر مجاز نیست.", "fallback_dns_title": "سرورهای DNS بازگشتی", "fallback_dns_desc": "لیست سرورهای DNS بازگشتی که در زمانی که سرورهای DNS بالادستی پاسخ نمی‌دهند استفاده می‌شوند. نحو مانند فیلد بالادستی اصلی بالا است.", "fallback_dns_placeholder": "یک سرور DNS بازگشتی در هر خط وارد کنید", "local_ptr_title": "سرورهای خصوصی DNS", - "local_ptr_desc": "سرور یا سرور های DNS ای که AdGuard Home برای درخواست های منابع محلی ارائه شده مورد استفاده قرار خواهد داد. برای مثال، این سرور برای تعیین نام های سرویس دهنده برای سرویس گیرنده با آدرس های آی پی خصوصی مورد استفاده قرار خواهد گرفت. اگر تعیین نشود،AdGuard Home به طور خودکار از تعیین کننده ی DNS پیش فرض شما استفاده خواهد کرد.", + "local_ptr_desc": "سرورهای DNS که توسط AdGuard Home برای درخواست‌های خصوصی PTR، SOA و NS استفاده می‌شوند. اگر درخواست یک دامنه ARPA حاوی یک زیرشبکه در محدوده IP خصوصی (مانند \"192.168.12.34\") و از مشتری با آدرس IP خصوصی باشد، خصوصی در نظر گرفته می شود. اگر تنظیم نشود، به جز آدرس‌های IP Home AdGuard، از حل‌کننده‌های پیش‌فرض DNS سیستم عامل شما استفاده می‌شود.", "local_ptr_default_resolver": "به طور پیش فرض، AdGuard Home از تعیین کننده های DNS معکوس زیر استفاده می کند: {{ip}}.", "local_ptr_no_default_resolver": "AdGuard Home نتوانست برای این دستگاه تعیین کننده های DNS معکوس محرمانه مناسب را معین کند.", - "local_ptr_placeholder": "در هر خط یک آدرس سرور را وارد کنید", + "local_ptr_placeholder": "یک آدرس IP در هر خط وارد کنید", "resolve_clients_title": "فعال سازی تعیین نام های سرویس دهنده ی سرویس گیرندگان", "resolve_clients_desc": "در صورت فعال بودن،AdGuard Home به طور خودکار اقدام به تعیین نام های سرویس دهنده ی سرویس گیرندگان از آدرس های آی پی با ارسال یک درخواست PTR به یک تعیین کننده ی همتا خواهد کرد (سرور خصوصی DNS برای سرویس گیرندگان محلی،سرور مادر برای سرویس گیرندگان با آی پی عمومی).", "use_private_ptr_resolvers_title": "از تعیین کننده های rDNS محرمانه استفاده کنید", - "use_private_ptr_resolvers_desc": "داده گیری های دی ان اس معکوس را برای آدرس های اینترنتی خدمات منظقه ای با استفاده از سرور های مادر اجرا کنید. چنانچه غیر فعال باشد،AdGuard Home با NXDOMAIN به همه چنین درخواست های PTR پاسخ می دهد به استثناء خدمات گیرنده های شناخته شده از طرف DHCP،/و غیره/هوست ها، و سایر.", + "use_private_ptr_resolvers_desc": "درخواست‌های PTR، SOA، و NS را برای دامنه‌های ARPA حاوی آدرس‌های IP خصوصی از طریق سرورهای بالادستی خصوصی، DHCP، /etc/host‌ها و غیره حل کنید. اگر غیرفعال باشد، AdGuard Home به همه این درخواست‌ها با NXDOMAIN پاسخ می‌دهد.", "check_dhcp_servers": "بررسی برای سرورهای DHCP", "save_config": "ذخیره پیکربندی", "enabled_dhcp": "سرور DHCP فعال شده است", @@ -73,7 +74,9 @@ "dhcp_dynamic_ip_found": "سیستم شما آدرس آی پی متغییر برای این رابط استفاده می کند <0>{{interfaceName}}. به منظور استفاده از سرور DHCP آدرس ثابت باید تعیین شود. آدرس آی پی فعلی شما هست <0>{{ipAddress}}. اگر شما دکمه DHCP را فشار دهید ما این آدرس آی پی را بعنوان ثابت تنظیم می کنیم.", "dhcp_lease_added": "اجاره ایستا \"{{key}}\" با موفقیت اضافه شد", "dhcp_lease_deleted": "اجاره ایستا \"{{key}}\" با موفقیت حذف شد", + "dhcp_lease_updated": "اجاره ایستا \"{{key}}\" با موفقیت به روزرسانی شد", "dhcp_new_static_lease": "اجاره ایستا جدید", + "dhcp_edit_static_lease": "ویرایش اجاره ایستا", "dhcp_static_leases_not_found": "هیچ اجاره DHCP ایستا یافت نشد", "dhcp_add_static_lease": "افزودن اجاره ایستا", "dhcp_reset_leases": "بازگردانی همه مجوزهای منابع", @@ -117,7 +120,8 @@ "stats_malware_phishing": "بدافزار/فیشینگ مسدود شده است", "stats_adult": "وبسایت غیراخلاقی مسدود شده است", "stats_query_domain": "دامنه جستار بالا", - "for_last_24_hours": "برای 24 ساعت گذشته", + "for_last_hours": "برای {{count}} ساعت گذشته", + "for_last_hours_plural": "برای {{count}} ساعت گذشته", "for_last_days": "برای {{count}} روز آخر", "for_last_days_plural": "برای {{count}} روز گذشته", "stats_disabled": "آمار غیرفعال شده است. شما می توانید از قسمت <0>صفحه تنظیمات آن را روشن نمایید.", @@ -132,13 +136,16 @@ "no_upstreams_data_found": "هیچ اطلاعاتی در مورد سرورهای بالادست یافت نشد", "number_of_dns_query_days": "تعداد جستار DNS پردازش شده در {{count}} روز آخر", "number_of_dns_query_days_plural": "تعداد جستار DNS پردازش شده در {{count}} روز گذشته", - "number_of_dns_query_24_hours": "تعداد جستار DNS پردازش شده در 24 ساعت گذشته", + "number_of_dns_query_hours": "تعداد جستارهای DNS پردازش شده برای {{count}} ساعت گذشته", + "number_of_dns_query_hours_plural": "تعداد جستارهای DNS پردازش شده برای {{count}} ساعت گذشته", "number_of_dns_query_blocked_24_hours": "تعداد درخواست DNS مسدود شده با فیلترهای مسدودساز تبلیغ و لیست سیاه میزبان", "number_of_dns_query_blocked_24_hours_by_sec": "تعداد درخواست DNS مسدود شده با مدل امنیت وب گردی AdGuard", "number_of_dns_query_blocked_24_hours_adult": "تعداد وبسایت های غیر اخلاقی مسدود شده", "enforced_save_search": "جستجوی اَمن اجبار شده", "number_of_dns_query_to_safe_search": "تعداد درخواست های DNS برای موتور جستجو که جستجوی اَمن اجبار شده", "average_processing_time": "میانگین زمان پردازش", + "average_upstream_response_time": "میانگین زمان پاسخ دهی بالادست", + "response_time": "زمان پاسخ", "average_processing_time_hint": "زمان میانگین بر هزارم ثانیه در پردازش درخواست DNS", "block_domain_use_filters_and_hosts": "مسدودسازی دامنه ها توسط فیلترها و فایل های میزبان", "filters_block_toggle_hint": "میتوانید دستورات مسدودسازی را در تنظیمات فیلترها راه اندازی کنید.", @@ -147,7 +154,7 @@ "use_adguard_parental": "از سرویس وب نظارت والدین AdGuard استفاده کن", "use_adguard_parental_hint": "AdGuard Home بررسی می کند اگر دامنه حاوی موارد غیر اخلاقی است.آن از همان اِی پی آی دارای حریم خصوصی سرویس وب امنیت وب گردی استفاده می کند.", "enforce_safe_search": "اجبار جستجوی اَمن", - "enforce_save_search_hint": "AdGuard Home میتواند جستجوی اَمن را در موتور جستجوهای زیر اعمال کند:گوگل،یوتوب،بینگ و یاندکس", + "enforce_save_search_hint": "AdGuard Home جستجوی ایمن را در موتورهای جستجوی زیر اعمال می کند: Google، YouTube، Bing، DuckDuckGo، Ecosia، Yandex، Pixabay.", "no_servers_specified": "سروری تعیین نشده است", "general_settings": "تنظیمات عمومی", "dns_settings": "تنظیمات DNS", @@ -159,6 +166,8 @@ "encryption_settings": "تنظیمات رمزگُذاری", "dhcp_settings": "تنظیمات DHCP", "upstream_dns": "سرورهای DNS جریان ارسالی", + "upstream_dns_help": "یک آدرس سرور در هر خط وارد کنید. درباره پیکربندی سرورهای DNS بالادستی بیشتر بیاموزید.", + "upstream_dns_configured_in_file": "در {{path}} پیکربندی شده است", "test_upstream_btn": "تست جریان ارسالی", "upstreams": "جریان ارسالی", "upstream": "سرور مادر", @@ -171,6 +180,7 @@ "enabled_parental_toast": "نظارت والدین فعال شده است", "disabled_safe_search_toast": "جستجوی اَمن غیرفعال شده", "enabled_save_search_toast": "جستجوی اَمن فعال شده", + "updated_save_search_toast": "تنظیمات جستجوی ایمن به روز شد", "enabled_table_header": "فعال شده", "name_table_header": "نام", "list_url_table_header": "لیست آدرس", @@ -212,20 +222,29 @@ "example_comment_hash": "# همچنین یک نظر", "example_regex_meaning": "مسدودسازی دسترسی به دامنه مطابق <0>با عبارت منظم خاص", "example_upstream_regular": "DNS عادی (بر UDP)", + "example_upstream_regular_port": "dNS معمولی (بیش از UDP، با پورت)؛;", + "example_upstream_udp": "DNS معمولی (از طریق UDP، نام میزبان)؛;", "example_upstream_dot": "کُدگذاری شده DNS-over-TLS", "example_upstream_doh": "کُدگذاری شده DNS-over-HTTPS", + "example_upstream_doh3": "DNS-over-HTTPS رمزگذاری شده با HTTP/3 اجباری و بدون بازگشت به HTTP/2 یا پایین‌تر؛", + "example_upstream_doq": "رمزگذاری شده <0>DNS-over-QUIC;", "example_upstream_sdns": "شما میتوانید از DNS Stamps برای DNSCrypt یا DNS-over-HTTPS resolvers استفاده کنید", "example_upstream_tcp": "DNS عادی (بر TCP)", + "example_upstream_tcp_port": "DNS معمولی (از طریق TCP، با پورت)؛;", + "example_upstream_tcp_hostname": "DNS معمولی (از طریق TCP، نام میزبان)؛;", "all_lists_up_to_date_toast": "همه لیست ها از قبل بروز اند", "updated_upstream_dns_toast": "سرورهای DNS جریان ارسالی بروز رسانی شده است", "dns_test_ok_toast": "سرورهای DNS تعیین شده بدرستی کار می کنند", "dns_test_not_ok_toast": "سرور \"{{key}}\": نمیتواند مورد استفاده قرار گیرد،لطفا بررسی کنید آن را بدرستی نوشته اید", "dns_test_parsing_error_toast": "بخش {{section}}: خط {{line}}: نمی‌تواند مورد استفاده قرار گیرد،لطفا بررسی کنید آن را به‌درستی نوشته‌اید", + "dns_test_warning_toast": "بالادست \"{{key}}\" به درخواست های آزمایشی پاسخ نمی‌دهد و ممکن است به درستی کار نکند", "unblock": "رفع انسداد", "block": "مسدود کردن", "disallow_this_client": "این مشتری را رد کنید", "allow_this_client": "به این مشتری اجازه دهید", "block_for_this_client_only": "مسدود کردن فقط برای این مشتری", + "unblock_for_this_client_only": "رفع مسدودیت فقط برای این کاربر", + "add_persistent_client": "به عنوان مشتری دائمی اضافه کنید", "time_table_header": "زمان", "date": "تاریخ", "domain_name_table_header": "نام دامنه", @@ -267,6 +286,7 @@ "blocking_mode": "حالت مسدودسازی", "default": "پيش فرض", "nxdomain": "NXDOMAIN", + "refused": "مرفوض", "null_ip": "Null IP", "custom_ip": "آی پی دستی", "blocking_ipv4": "مسدودسازی IPv4", @@ -274,21 +294,45 @@ "blocked_response_ttl": "TTL پاسخ مسدود شده", "blocked_response_ttl_desc": "مشخص می کند که کلاینت ها برای چند ثانیه یک پاسخ فیلتر شده را در حافظه پنهان نگه دارند", "form_enter_blocked_response_ttl": "پاسخ مسدود شده TTL (ثانیه) را وارد کنید", + "upstream_timeout": "مهلت زمانی بالادست", + "upstream_timeout_desc": "تعداد ثانیه‌هایی را که باید منتظر پاسخ سرور بالادستی باشید مشخص می‌کند", + "form_enter_upstream_timeout": "مدت زمان سرورهای بالادستی را بر حسب ثانیه وارد کنید", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", "dns_over_quic": "DNS-over-QUIC", + "client_id": "آیدی کاربر", + "client_id_placeholder": "آیدی کاربر را وارد کنید", + "client_id_desc": "کاربران را می توانید با آیدی کاربر شناسایی کنید. برای اطلاعات بیشتر درباره نحوه شناسایی کاربران اینجا کلیک کنید.", + "download_mobileconfig_doh": "Mobileconfig. را برای DNS-over-HTTPS دانلود کنید", + "download_mobileconfig_dot": "Mobileconfig. را برای DNS-over-TLS دانلود کنید", + "download_mobileconfig": "دانلود فایل تنظیمات", + "plain_dns": "DNS ساده", "form_enter_rate_limit": "میزان محدودیت را وارد کنید", "rate_limit": "میزان محدودیت", "edns_enable": "فعالسازی زیرشبکه کلاینت EDNS", "edns_cs_desc": "اگر فعال باشد،AdGuard Home زیرشبکه های کلاینت ها را به سرورهای DNS می فرستد.", + "edns_use_custom_ip": "از IP سفارشی برای EDNS استفاده کنید", + "edns_use_custom_ip_desc": "اجازه استفاده از IP سفارشی برای EDNS", "rate_limit_desc": "تعداد درخواست های بر ثانیه مجازی که یک کلاینت میتواند بسازد (0: نامحدود)", + "rate_limit_subnet_len_ipv4": "طول پیشوند زیرشبکه برای نشانی‌های IPv4", + "rate_limit_subnet_len_ipv4_desc": "طول پیشوند زیرشبکه برای نشانی‌های IPv4 استفاده شده برای محدودیت نرخ. پیش‌فرض ۲۴ است", + "rate_limit_subnet_len_ipv4_error": "طول پیشوند زیرشبکه IPv4 باید بین ۰ و ۳۲ باشد", + "rate_limit_subnet_len_ipv6": "طول پیشوند زیرشبکه برای نشانی‌های IPv6", + "rate_limit_subnet_len_ipv6_desc": "طول پیشوند زیرشبکه برای نشانی‌های IPv6 استفاده شده برای محدودیت نرخ. پیش‌فرض ۵۶ است", + "rate_limit_subnet_len_ipv6_error": "طول پیشوند زیرشبکه IPv6 باید بین ۰ تا ۱۲۸ باشد", + "form_enter_rate_limit_subnet_len": "طول پیشوند زیر شبکه را برای محدود کردن نرخ وارد کنید", + "rate_limit_whitelist": "لیست مجاز محدود کننده نرخ", + "rate_limit_whitelist_desc": "نشانی‌های آی پی استثناء شده از محدودیت نرخ", + "rate_limit_whitelist_placeholder": "یک آدرس IP در هر خط وارد کنید", "blocking_ipv4_desc": "آدرس آی پی برگشت داده شده برای درخواست مسدود شده A", "blocking_ipv6_desc": "آدرس آی پی برگشت داده شده برای درخواست مسدود شده AAAA", "blocking_mode_default": "پیش فرض: وقتی مسدود شود با دستور سبک-مسدودساز تبلیغ REFUSED پاسخ میدهد،پاسخ با آدرس آی پی تعیین شده در دستور وقتی با دستور /etc/hosts-style rule مسدود شود", + "blocking_mode_refused": "رد: پاسخ با کد رد شده", "blocking_mode_nxdomain": "NXDOMAIN: پاسخ با کُد NXDOMAIN", "blocking_mode_null_ip": "Null IP: پاسخ با آدرس آی پی صفر(0.0.0.0 برای A; :: برای AAAA)", "blocking_mode_custom_ip": "آی پی دستی: پاسخ با آدرس آی پی دستی تنظیم شده", + "theme_auto": "خودکار", "theme_light": "پوسته روشن", "theme_dark": "پوسته تیره", "upstream_dns_client_desc": "اگر این فیلد را خالی نگه دارید، AdGuard Home از سرور پیکربندی شده در <0> تنظیماتDNS استفاده می کند.", @@ -364,6 +408,8 @@ "encryption_https_desc": "اگر پورت HTTPS پیکربندی شده باشد،رابط آدمین AdGuard Home از طریق HTTPS قابل دسترسی خواهد بود و آن همچنین DNS-over-HTTPS را در مکان '/dns-query' ارائه می دهد.", "encryption_dot": "پورت DNS-over-TLS", "encryption_dot_desc": "اگر این پورت پیکربندی شده باشد،AdGuard Home یک DNS-over-TLS سرور روی این پورت اجرا می کند", + "encryption_doq": "درگاه DNS-over-QUIC", + "encryption_doq_desc": "اگر این درگاه پیکربندی شده باشد، AdGuard Home یک سرور DNS-over-QUIC را بر روی این پورت اجرا خواهد کرد.", "encryption_certificates": "گواهینامه ها", "encryption_certificates_desc": "به منظور استفاده از رمزگُذاری، شما باید زنجیره گواهینامه اِس اِس اِل معتبر برای دامنه خود ارائه دهید. میتوانید گواهینامه رایگان از <0>{{link}} بگیرید یا میتوانید آن را از مراجع گواهینامه معتبر بخرید.", "encryption_certificates_input": "کپی/چسباندن گواهینامه پی ای اِم کد گذاری شده در اینجا.", @@ -382,6 +428,9 @@ "encryption_hostnames": "نام میزبان", "encryption_reset": "آیا میخواهید تنظیمات رمزگُذاری به پیش فرض بازگردد؟", "encryption_warning": "هشدار", + "encryption_plain_dns_enable": "فعالسازی DNS ساده", + "encryption_plain_dns_desc": "DNS ساده به طور پیش فرض فعال است. می توانید آن را غیرفعال کنید تا همه دستگاه ها مجبور شوند از DNS رمزگذاری شده استفاده کنند. برای انجام این کار، باید حداقل یک پروتکل DNS رمزگذاری شده را فعال کنید", + "encryption_plain_dns_error": "برای غیرفعال کردن DNS ساده، حداقل یک پروتکل DNS رمزگذاری شده را فعال کنید", "topline_expiring_certificate": "گواهینامه اِس اِس اِل شما در صدد انقضاء است. <0>تنظیمات رمزگُذاری را بروز رسانی کنید.", "topline_expired_certificate": "گواهینامه اِس اِس اِل شما منقضی شده است. <0>تنظیمات رمزگُذاری را بروز رسانی کنید.", "form_error_port_range": "مقدار پورت را در محدوده 80-65535 وارد کنید", @@ -430,7 +479,7 @@ "client_confirm_delete": "آیا واقعا میخواهید \"{{key}}\" کلاینت را حذف کنید؟", "list_confirm_delete": "آیا واقعا میخواهید این لیست را حذف کنید؟", "auto_clients_title": "کلاینت ها (زمان اِجرا)", - "auto_clients_desc": "داده در کلاینت ها که از AdGuard Home استفاده می کند،اما در پیکربندی ذخیره نمی شود", + "auto_clients_desc": "داده‌ها در کلاینت‌ها که از AdGuard Home استفاده می‌کنند، اما در پیکربندی ذخیره نمی‌شوند.", "access_title": "تنظیمات دسترسی", "access_desc": "در اینجا میتوانید دستورات دسترسی را برای DNS سرور AdGuard Home وارد کنید.", "access_allowed_title": "کلاینت های مجاز", @@ -448,6 +497,7 @@ "setup_dns_privacy_1": "<0>DNS-over-TLS: استفاده از<1>{{address}} .", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: استفاده از <1>{{address}} .", "setup_dns_privacy_3": "<0>لطفا توجه کنید که پروتکل های رمزگذاری شده DNS فقط در آندروئید 9 پشتیبانی می شود. پس برای سیستم عامل های دیگر نیاز است که برنامه دیگری نصب کنید.<0>در اینجا میتوانید لیست نرم افزارهای قابل استفاده را ببینید.", + "setup_dns_privacy_4": "در یک دستگاه iOS 14 یا macOS Big Sur می‌توانید فایل ویژه '.mobileconfig' را دانلود کنید که DNS-over-HTTPS یا DNS-over-TLS سرورها را به تنظیمات DNS اضافه می‌کند.", "setup_dns_privacy_android_1": "آندروئید 9 بطور پیش فرض از DNS-over-TLS پشتیبانی می کند. برای پیکربندی آن، بروید به تنظیمات → شبکه & اینترنت → پیشرفته → DNS خصوصی و نام دامنه را آنجا وارد کنید.", "setup_dns_privacy_android_2": "<0>AdGuard for Android پشتیبانی از <1>DNS-over-HTTPS و <1>DNS-over-TLS.", "setup_dns_privacy_android_3": "<0>Intra قابلیت <1>DNS-over-HTTPS را به آندروئید اضافه می کند.", @@ -459,6 +509,7 @@ "setup_dns_privacy_other_3": "<0>dnscrypt-proxy supportsپشتیبانی از <1>DNS-over-HTTPS.", "setup_dns_privacy_other_4": "<0>Mozilla Firefox پشتیبانی از <1>DNS-over-HTTPS.", "setup_dns_privacy_other_5": "شما میتوانید راه کارهای بیشتر را در <0>اینجا و <1>اینجا پیدا کنید.", + "setup_dns_privacy_ioc_mac": "پیکربندی iOS و macOS", "setup_dns_notice": "به منظور استفاده از <1>DNS-over-HTTPS یا <1>DNS-over-TLS، شما نیاز به <0>پیکربندی رمزگذاری در تنظیمات AdGuard Home دارید.", "rewrite_added": "بازنویسی DNS برای \"{{key}}\" با موفقیت اضافه شد", "rewrite_deleted": "بازنویسی DNS برای \"{{key}}\" با موفقیت حذف شد", @@ -498,8 +549,11 @@ "interval_days": "{{value}} روز", "interval_days_plural": "{{count}} روز", "domain": "دامنه", + "ecs": "ECS", + "punycode": "پونیکد", "answer": "پاسخ", "filter_added_successfully": "فیلتر با موفقیت اضافه شد", + "filter_removed_successfully": "لیست با موفقیت حذف شد", "filter_updated": "فیلتر با موفقیت بروز رسانی شد", "statistics_configuration": "پیکربندی آمارها", "statistics_retention": "مدت حفظ آمارها", @@ -509,6 +563,10 @@ "statistics_retention_confirm": "آیا واقعا میخواهید مدت حفظ آمار را تغییر دهید؟ اگر فاصله را کاهش دهید، برخی داده ها حذف میشود", "statistics_cleared": "آمارها با موفقیت حذف شد", "statistics_enable": "فعالسازی داده های آماری", + "ignore_domains": "دامنه های نادیده گرفته شده (با خط جدید جدا شده‌اند)", + "ignore_domains_title": "دامنه‌های نادیده گرفته شده", + "ignore_domains_desc_stats": "جستارهای مطابق با این قوانین در آمار نوشته نمی‌شوند", + "ignore_domains_desc_query": "پرس و جوهایی که با این قوانین مطابقت دارند در گزارش پرس و جو نوشته نمی‌شوند", "interval_hours": "{{count}} ساعت", "interval_hours_plural": "{{count}} ساعت", "filters_configuration": "پیکربندی فیلترها", @@ -531,14 +589,19 @@ "whois": "هوئیز", "filtering_rules_learn_more": "درباره ایجاد لیست سیاه میزبان برای خود <0>بیشتر بدانید.", "blocked_by_response": "مسدودسازی با CNAME یا IP در پاسخ", + "blocked_by_cname_or_ip": "توسط CNAME یا IP مسدود شده است", "try_again": "امتحان دوباره", "domain_desc": "نامه دامنه یا علامت تطبیقی را برای بازنویسی وارد کنید.", "example_rewrite_domain": "فقط بازنویسی پاسخ برای این دامنه.", "example_rewrite_wildcard": "بازنویسی پاسخ ها برای همه زیردامنه های <0>example.org.", + "rewrite_ip_address": "آدرس IP: از این IP در پاسخ A یا AAAA استفاده کنید", + "rewrite_domain_name": "نام دامنه: یک رکورد CNAME اضافه کنید", + "rewrite_A": "<0>A: مقدار ویژه، <0>A سوابق از بالادست را نگه دارید", + "rewrite_AAAA": "<0>AAAA: مقدار ویژه، <0>AAAA سوابق از بالادست را نگه دارید", "disable_ipv6": "غیرفعالسازی IPv6", "disable_ipv6_desc": "تمام درخواست‌های DNS برای آدرس‌های IPv6 را رها کنید (تایپ AAAA) و نکات IPv6 را از پاسخ‌های HTTPS حذف کنید.", "fastest_addr": "سریعترین آدرس آی پی", - "fastest_addr_desc": "جستار همه سرورهای DNS و بازگرداندن سریعترین آدرس IP از میان همه پاسخ ها", + "fastest_addr_desc": "منتظر پاسخ‌های همه سرورهای DNS باشید، سرعت اتصال TCP را برای هر سرور اندازه‌گیری کنید و آدرس IP سرور را با سریع‌ترین سرعت اتصال برگردانید.
اگر یک یا چند سرور بالادستی پاسخ نمی‌دهند، این حالت می‌تواند به‌طور قابل‌توجهی درخواست‌های DNS را کاهش دهد. اطمینان حاصل کنید که سرورهای بالادست شما پایدار هستند و تایم اوت بالادست شما کم است.", "autofix_warning_text": "اگر روی \"تعمیر\" کلیک کنید، AdGuardHome سیستم شما را برای استفاده از DNS سرور AdGuardHome پیکربندی می کند.", "autofix_warning_list": "این وظایف را اجرا میکند: <0>غیرفعالسازی DNSStubListener سیستم <0>تنظیم آدرس DNS 127.0.0.1 سرور به <0>جایگزینی لینک نمادی هدف /etc/resolv.conf به/run/systemd/resolve/resolv.conf <0>توقف DNSStubListener (بارگیری مجدد سرویس systemd-resolved)", "autofix_warning_result": "در نتیجه همه درخواست های DNS از سیستم شما بطور پیش فرض با AdGuardHome پردازش خواهد شد.", @@ -550,11 +613,18 @@ "check": "بررسی", "form_enter_host": "نام میزبان را وارد کنید", "filtered_custom_rules": "با دستورات فیلترینگ دستی فیلتر شده است", + "choose_from_list": "از لیست انتخاب کنید", + "add_custom_list": "یک لیست سفارشی اضافه کنید", "host_whitelisted": "سایت در لیست سفید است", "check_ip": "آدرس آی پی: {{ip}}", "check_cname": "CNAME: {{cname}}", "check_reason": "علت: {{reason}}", "check_service": "نام سرویس: {{service}}", + "check_hostname": "نام میزبان یا نام دامنه", + "check_client_id": "شناسه مشتری (ClientID یا نشانی IP)", + "check_enter_client_id": "شناسه مشتری را وارد کنید", + "check_dns_record": "نوع رکورد DNS را انتخاب کنید", + "service_name": "نام خدمت", "check_not_found": "در لیست فیلترهای شما یافت نشد", "client_confirm_block": "آیا واقعا میخواهید کلاینت \"{{ip}}\" را مسدود کنید؟", "client_confirm_unblock": "آیا واقعا میخواهید کلاینت \"{{ip}}\" را باز کنید؟", @@ -572,6 +642,7 @@ "dnssec_enable": "فعالسازی DNSSEC", "dnssec_enable_desc": "تنظیم نشان DNSSEC در جستارهای حاصل DNS و بررسی نتیجه (تفکیک کننده DNSSEC-فعال شده نیاز است)", "validated_with_dnssec": "معتبر سازی با DNSSEC", + "all_queries": "تمام جستارها", "show_blocked_responses": "مسدود شده", "show_whitelisted_responses": "لیست سفید", "show_processed_responses": "پردازش شده", @@ -585,16 +656,62 @@ "blocklist": "لیست سیاه", "milliseconds_abbreviation": "هـ ثـ", "cache_size": "اندازه کش", + "cache_size_desc": "اندازه حافظه پنهان DNS (به بایت). برای غیر فعال کردن حافظه پنهان، عدد 0 را تعیین کنید.", + "cache_ttl_min_override": "نادیده گرفتن حداقل TTL", + "cache_ttl_max_override": "نادیده گرفتن حداکثر TTL", + "enter_cache_size": "اندازه حافظه پنهان را وارد کنید (بایت)", + "enter_cache_ttl_min_override": "حداقل TTL را وارد کنید (ثانیه)", + "enter_cache_ttl_max_override": "حداکثر TTL (ثانیه) را وارد کنید", + "cache_ttl_min_override_desc": "در هنگام ذخیره پاسخ های DNS، مقادیر کوتاه مدت زمان (ثانیه) دریافت شده از سرور بالادست را افزایش دهید.", + "cache_ttl_max_override_desc": "حداکثر مقدار زمان تا زنده (ثانیه) را برای ورودی‌های کش DNS تنظیم کنید.", + "ttl_cache_validation": "حداقل لغو TTL حافظه نهان باید کمتر یا مساوی حداکثر باشد", "cache_optimistic": "حالت ویژه پردازش", "cache_optimistic_desc": "AdGuard Home را وادار می کند که از سمت حافظه پنهان پاسخ دهد حتی وقتی که موارد وارد شده منقضی شده باشد و همچنین سعی بر تازه کردن آنها می کند.", "filter_category_general": "General", "filter_category_security": "مسدودسازی بدافزار و فیشینگ", "filter_category_regional": "منطقه‌ای", "filter_category_other": "ساير", + "filter_category_general_desc": "فهرست‌هایی که ردیابی و تبلیغات را بر روی اکثر دستگاه‌ها مسدود می‌کنند", + "filter_category_security_desc": "فهرست‌هایی طراحی شده است که به طور خاص برای مسدودسازی دامنه‌های مخرب، طعمه‌گذاری و کلاهبرداری هستند", + "filter_category_regional_desc": "فهرست‌هایی که بر روی تبلیغات منطقه‌ای و سرورهای ردیابی تمرکز دارند", + "filter_category_other_desc": "سایر لیست های بلاک شده", + "setup_config_to_enable_dhcp_server": "پیکربندی را برای فعال کردن سرور DHCP تنظیم کنید", + "original_response": "پاسخ اصلی", + "click_to_view_queries": "برای مشاهده جستارها کلیک کنید", + "port_53_faq_link": "درگاه ۵۳ اغلب توسط خدمت‌های \"DNSStubListener\" یا \"systemd-resolved\" اشغال می‌شود. لطفاً <0>دستورالعمل‌ها را برای حل این موضوع مطالعه کنید.", + "adg_will_drop_dns_queries": "AdGuard Home تمام جستارهای DNS از این سرویس‌گیرنده را حذف خواهد کرد.", + "filter_allowlist": "هشدار: این اقدام همچنین باعث استثناء رویه \"{{disallowed_rule}}\" از فهرست سرویس‌گیرندگان مجاز می‌شود.", + "last_rule_in_allowlist": "نمی توان این مشتری را غیر فعال کرد چرا که استثناء قاعده \"{{disallowed_rule}}\" باعث غیر فعال شدن فهرست \"مشتریان مجاز\" می شود.", "use_saved_key": "از کلید ذخیره شده قبلی استفاده کنید", "parental_control": "نظارت والدین", "safe_browsing": "وب گردی اَمن", - "form_error_password_length": "رمزعبور باید حداقل {{value}} کاراکتر باشد.", + "served_from_cache_label": "از حافظه پنهان ارائه می‌شود", + "form_error_password_length": "رمزعبور باید بین {{min}} تا {{max}} کاراکتر باشد.", + "anonymizer_notification": "<0>توجه: ناشناس سازی IP فعال است. می توانید آن را در<1>تنظیمات عمومی غیرفعال کنید.", + "confirm_dns_cache_clear": "آیا واقعا می‌خواهید حافظه پنهان DNS را پاک کنید؟", + "cache_cleared": "حافظه پنهان DNS با موفقیت حذف شد", + "clear_cache": "پاک کردن کش", + "make_static": "ایستا کنید", + "theme_auto_desc": "اتوماتیک (بر اساس طرح رنگی دستگاه شما)", + "theme_dark_desc": "پوسته تیره", + "theme_light_desc": "پوسته روشن", + "disable_for_seconds": "برای {{count}} ثانیه", + "disable_for_seconds_plural": "برای {{count}} ثانیه", + "disable_for_minutes": "برای {{count}} دقیقه", + "disable_for_minutes_plural": "برای {{count}} دقیقه", + "disable_for_hours": "برای {{count}} ساعت", + "disable_for_hours_plural": "برای {{count}} ساعت", + "disable_until_tomorrow": "تا فردا", + "disable_notify_for_seconds": "محافظت را برای {{count}} ثانیه غیرفعال کنید", + "disable_notify_for_seconds_plural": "محافظت را برای {{count}} ثانیه غیرفعال کنید", + "disable_notify_for_minutes": "محافظت را برای {{count}} دقیقه غیرفعال کنید", + "disable_notify_for_minutes_plural": "محافظت را برای {{count}} دقیقه غیرفعال کنید", + "disable_notify_for_hours": "محافظت را برای {{count}} ساعت غیرفعال کنید", + "disable_notify_for_hours_plural": "محافظت را برای {{count}} ساعت غیرفعال کنید", + "disable_notify_until_tomorrow": "محافظت را تا فردا غیرفعال کنید", + "enable_protection_timer": "حفاظت در {{time}} فعال خواهد شد", + "custom_retention_input": "زمان ذخیره را برحسب ساعت وارد کنید", + "custom_rotation_input": "زمان چرخش را بر حسب ساعت وارد کنید", "protection_section_label": "حفاظت", "log_and_stats_section_label": "گزارش پرس و جو و آمار", "ignore_query_log": "این مشتری را در گزارش پرس و جو نادیده بگیرید", @@ -630,5 +747,8 @@ "wednesday_short": "چهارشنبه", "thursday_short": "پنج شنبه", "friday_short": "جمعه", - "saturday_short": "شنبه" + "saturday_short": "شنبه", + "upstream_dns_cache_configuration": "پیکربندی نهانگاه DNS بالادست", + "enable_upstream_dns_cache": "ذخیره DNS را برای پیکربندی بالادستی سفارشی این مشتری فعال کنید", + "dns_cache_size": "اندازه کش DNS، بر حسب بایت" } diff --git a/client/src/__locales/fi.json b/client/src/__locales/fi.json index fa4144e5..ed3ec9ec 100644 --- a/client/src/__locales/fi.json +++ b/client/src/__locales/fi.json @@ -6,7 +6,7 @@ "upstream_parallel": "Käytä rinnakkaisia pyyntöjä ja nopeuta selvitystä käyttämällä kaikkia ylävirtapalvelimia samanaikaisesti.", "parallel_requests": "Rinnakkaiset pyynnöt", "load_balancing": "Kuormantasaus", - "load_balancing_desc": "Lähetä kysely kerrallaan yhdelle ylävirtapalvelimelle. AdGuard Home valitsee painotetun satunnaisalgoritmin avulla palvelimet, joilla on vähiten epäonnistuneita hakuja ja keskimääräisesti lyhin hakuaika.", + "load_balancing_desc": "Lähetä kysely kerrallaan yhdelle ylävirtapalvelimelle.
AdGuard Home käyttää painotettua satunnaisalgoritmia valitakseen palvelimia, joilla on vähiten epäonnistuneita hakuja ja keskimääräinen lyhin hakuaika.", "bootstrap_dns": "Bootstrap DNS-palvelimet", "bootstrap_dns_desc": "Ylävirroiksi määrittämiesi DoH/DoT-resolverien IP-osoitteiden selvitykseen käytettävien DNS-palvelimien IP-osoitteet. Kommentteja ei sallita.", "fallback_dns_title": "DNS-varapalvelimet", @@ -294,6 +294,9 @@ "blocked_response_ttl": "Estetyn vastauksen elinaika", "blocked_response_ttl_desc": "Määrittää montako sekuntia päätteiden tulee puskuroida suodatettuja vastauksia.", "form_enter_blocked_response_ttl": "Syötä estetyn vastauksen elinaika (sekuntia)", + "upstream_timeout": "Ylöspäin suuntautuva aikakatkaisu", + "upstream_timeout_desc": "Määrittää odotettavien sekuntien määrä, ennen kuin saadaan vastaus ylävirtapalvelimelta", + "form_enter_upstream_timeout": "Syötä ylävirran palvelimen aikakatkaisu kesto sekunteina", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -598,7 +601,7 @@ "disable_ipv6": "Älä selvitä IPv6-osoitteita", "disable_ipv6_desc": "Hylkää kaikki IPv6-osoitteiden DNS-pyynnöt (tyyppi AAAA) ja poista HTTPS-vastausten IPv6-tiedot.", "fastest_addr": "Nopein IP-osoite", - "fastest_addr_desc": "Lähetä pyynnöt kaikille DNS-palvelimille ja valitse vastauksista nopein IP-osoite. Tämä parantaa yleistä liitettävyyttä, joskin hidastaa DNS-pyyntöjä, koska AdGuard Homen on odotettava kaikkien DNS-palvelinten vastauksia.", + "fastest_addr_desc": "Odota kaikkien DNS-palvelimien vastauksia, mittaa TCP-yhteyden nopeus jokaiselle palvelimelle ja palauta palvelimen IP-osoite, jolla on nopein yhteyden nopeus.
Tämä tila voi merkittävästi hidastaa DNS-pyyntöjä, jos yksi tai useampi ylävirtapalvelin ei vastaa. Varmista, että ylävirtapalvelimesi ovat vakaat ja aikakatkaisusi on alhainen.", "autofix_warning_text": "Jos painat \"Korjaa\", AdGuard Home määrittää järjestelmäsi käyttämään AdGuard Homen DNS-palvelinta.", "autofix_warning_list": "Suorittaa toiminnot: <0>Poistaa käytöstä järjestelmän DNSStubListener-palvelun <0>Määrittää DNS-palvelimen osoitteeksi 127.0.0.1 <0>Muuttaa sijainnnin /etc/resolv.conf symbolisen linkin kohteeksi /run/systemd/resolve/resolv.conf <0>Pysäyttää DNSStubListener-palvelun (uudelleenlataa systemd-resolved -palvelu)", "autofix_warning_result": "Tämän jälkeen järjestelmäsi kaikki DNS-pyynnöt käsittelee oletusarvoisesti AdGuard Home.", @@ -617,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Syy: {{reason}}", "check_service": "Palvelun nimi: {{service}}", + "check_hostname": "Isäntänimi tai verkkotunnus", + "check_client_id": "Asiakkaan tunniste (ClientID tai IP-osoite)", + "check_enter_client_id": "Syötä asiakastunniste", + "check_dns_record": "Valitse DNS-tietueen tyyppi", "service_name": "Palvelun nimi", "check_not_found": "Ei löytynyt suodatinlistoilta", "client_confirm_block": "Haluatko varmasti estää päätelaitteen \"{{ip}}\"?", @@ -649,7 +656,7 @@ "blocklist": "Estolista", "milliseconds_abbreviation": "ms", "cache_size": "Välimuistin koko", - "cache_size_desc": "DNS-välimuistin koko (tavuina). Jätä tyhjäksi poistaaksesi välimuistin käytöstä.", + "cache_size_desc": "DNS-välimuistin koko (tavuina). Voit poistaa välimuistin käytöstä asettamalla sen arvoksi 0.", "cache_ttl_min_override": "Korvaa vähimmäis-TTL", "cache_ttl_max_override": "Korvaa enimmäis-TTL", "enter_cache_size": "Syötä välimuistin koko (tavuina)", diff --git a/client/src/__locales/fr.json b/client/src/__locales/fr.json index a8cb704a..01475bad 100644 --- a/client/src/__locales/fr.json +++ b/client/src/__locales/fr.json @@ -620,6 +620,10 @@ "check_cname": "CNAME : {{cname}}", "check_reason": "Raison : {{reason}}", "check_service": "Nom du service : {{service}}", + "check_hostname": "Nom d'hôte ou nom de domaine", + "check_client_id": "Identifiant du client (ClientID ou adresse IP)", + "check_enter_client_id": "Saisissez l'identifiant du client", + "check_dns_record": "Sélectionnez le type d'enregistrement DNS", "service_name": "Nom du service", "check_not_found": "Introuvable dans vos listes de filtres", "client_confirm_block": "Voulez-vous vraiment bloquer le client « {{ip}} » ?", @@ -651,8 +655,11 @@ "safe_search": "Recherche Sécurisée", "blocklist": "Liste de blocage", "milliseconds_abbreviation": "ms", + "cache_enabled": "Activer le cache", + "cache_enabled_desc": "Stockez les réponses DNS localement.", "cache_size": "Taille du cache", - "cache_size_desc": "Taille du cache DNS (en octets). Pour désactiver la mise en cache, laissez vide.", + "cache_size_validation": "La taille du cache doit être supérieure à zéro lorsqu'elle est activée.", + "cache_size_desc": "Taille du cache DNS (en octets). Pour désactiver la mise en cache, mettez la valeur sur 0.", "cache_ttl_min_override": "Remplacer le TTL minimum", "cache_ttl_max_override": "Remplacer le TTL maximum", "enter_cache_size": "Entrer la taille du cache (octets)", diff --git a/client/src/__locales/hr.json b/client/src/__locales/hr.json index 95704ed4..9eedb338 100644 --- a/client/src/__locales/hr.json +++ b/client/src/__locales/hr.json @@ -6,7 +6,7 @@ "upstream_parallel": "Koristi paralelne upite kako bi ubrzali rješavanje istovremenim ispitavanjem svih upstream poslužitelja.", "parallel_requests": "Paralelni zahtjevi", "load_balancing": "Load-balancing", - "load_balancing_desc": "Pitajte jedan po jedan uzvodni poslužitelj. AdGuard Home koristi svoj ponderirani slučajni algoritam za odabir poslužitelja tako da se najbrži poslužitelj koristi češće.", + "load_balancing_desc": "Pitajte jedan po jedan uzvodni poslužitelj.
AdGuard Home koristi svoj ponderirani slučajni algoritam za odabir poslužitelja s najmanjim brojem neuspješnih pretraživanja i najnižim prosječnim vremenom pretraživanja.", "bootstrap_dns": "Bootstrap DNS poslužitelji", "bootstrap_dns_desc": "IP adrese DNS poslužitelja koji se koriste za rješavanje IP adresa DoH/DoT razrjeđivača koje navedete kao uzvodne. Komentari nisu dopušteni.", "fallback_dns_title": "Rezervni DNS poslužitelji", @@ -154,7 +154,7 @@ "use_adguard_parental": "Koristi web uslugu AdGuard roditeljske zaštite", "use_adguard_parental_hint": "AdGuard Home provjeriti će sadrži li domena sadržaj za odrasle. Koristi isti API za zaštitu privatnosti kao i naša usluga zaštite pregledavanja.", "enforce_safe_search": "Koristi sigurno pretraživanje", - "enforce_save_search_hint": "AdGuard Home provodit će sigurno pretraživanje u sljedećim tražilicama: Google, YouTube, Bing, DuckDuckGo, Yandex, Pixabay.", + "enforce_save_search_hint": "AdGuard Home provodit će sigurno pretraživanje u sljedećim tražilicama: Google, YouTube, Bing, DuckDuckGo, Ecosia, Yandex, Pixabay.", "no_servers_specified": "Nije odabran nijedan poslužitelj", "general_settings": "Opće postavke", "dns_settings": "DNS postavke", @@ -294,6 +294,9 @@ "blocked_response_ttl": "TTL blokiranog odgovora", "blocked_response_ttl_desc": "Određuje koliko sekundi bi klijenti trebali keširati filtrirani odgovor", "form_enter_blocked_response_ttl": "Unesite TTL blokiranog odgovora (sekunde)", + "upstream_timeout": "Vrijeme čekanja na odgovore od upstream poslužitelja", + "upstream_timeout_desc": "Određuje broj sekundi čekanja na odgovor od uzvodnog poslužitelja", + "form_enter_upstream_timeout": "Unesite trajanje vremena čekanja uzvodnog poslužitelja u sekundama", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -598,7 +601,7 @@ "disable_ipv6": "Onemogući razrješavanje IPv6 adresa", "disable_ipv6_desc": "Ignorirajte sve DNS zahtjeve adresa IPv6 (tipa AAAA) i uklonite IPv6 podatke iz HTTPS odgovora.", "fastest_addr": "Najbrža IP adresa", - "fastest_addr_desc": "Ispitajte sve DNS poslužitelje i vratite najbržu IP adresu među svim odgovorima. To usporava DNS upite jer AdGuard Home mora čekati odgovore svih DNS poslužitelja, ali poboljšava ukupnu povezanost.", + "fastest_addr_desc": "Čekajte odgovore od svi DNS poslužitelja, izmjerite brzinu TCP veze za svaki poslužitelj i vratite IP adresu poslužitelja s najbržom brzinom veze.
Ovaj način može značajno usporiti DNS upite ako jedan ili više uzvodnih poslužitelja ne odgovara. Provjerite jesu li vaši uzvodni poslužitelji stabilni i da je vrijeme čekanja uzvodnog nisko.", "autofix_warning_text": "Ako pritisnete \"Popravi\", AdGuard Home će postaviti vaš sustav da koristi AdGuardHome DNS poslužitelj.", "autofix_warning_list": "Izvodi sljedeće radnje: <0>Deaktiviraj DNSStubListener sustav <0>Postavi adresu DNS poslužitelja na 127.0.0.1 <0>Zamijeni simbolički cilj veze iz /etc/resolv.conf u /run/systemd/resolve/resolv.conf <0>Zaustavi DNSStubListener (ponovno pokreni systemd-resolved uslugu)", "autofix_warning_result": "Kao rezultat toga, sve DNS zahtjeve iz vašeg sustava će AdGuard Home obraditi prema zadanim postavkama.", @@ -617,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Razlog: {{reason}}", "check_service": "Naziv usluge: {{service}}", + "check_hostname": "Naziv poslužitelja ili naziv domene", + "check_client_id": "Identifikator klijenta (ClientID ili IP adresa)", + "check_enter_client_id": "Unesite identifikator klijenta", + "check_dns_record": "Odaberite tip DNS zapisa", "service_name": "Naziv usluge", "check_not_found": "Nije pronađeno na vašoj listi filtara", "client_confirm_block": "Jeste li sigurni da želite blokirati \"{{ip}}\" klijenta?", @@ -649,7 +656,7 @@ "blocklist": "Popis nedopuštenih", "milliseconds_abbreviation": "ms", "cache_size": "Veličina predmemorije", - "cache_size_desc": "Veličina DNS predmemorije (u bajtovima). Da biste onemogućili predmemoriju, ostavite prazno.", + "cache_size_desc": "Veličina DNS predmemorije (u bajtovima). Da biste onemogućili predmemoriju, postavite na 0.", "cache_ttl_min_override": "Nadjačaj minimum TTL-a", "cache_ttl_max_override": "Nadjačaj maksimum TTL-a", "enter_cache_size": "Unesite veličinu predmemorije (u bajtovima)", diff --git a/client/src/__locales/hu.json b/client/src/__locales/hu.json index 7c94437e..2f9e1c6c 100644 --- a/client/src/__locales/hu.json +++ b/client/src/__locales/hu.json @@ -6,21 +6,21 @@ "upstream_parallel": "Használjon párhuzamos lekéréseket a domainek feloldásának felgyorsításához az összes upstream kiszolgálóra való egyidejű lekérdezéssel.", "parallel_requests": "Párhuzamos lekérések", "load_balancing": "Terheléselosztás", - "load_balancing_desc": "Egyszerre csak egy szerverről történjen lekérdezés. Az AdGuard Home egy súlyozott, véletlenszerű algoritmust fog használni a megfelelő szerver kiválasztására, így a leggyorsabb szervert fogja a leggyakrabban használni.", + "load_balancing_desc": "Egyszerre csak egy upstream szerverről történjen lekérdezés.
Az AdGuard Home egy súlyozott, véletlenszerű algoritmust fog használni a legkevesebb sikertelen lekérdezéssel és a legalacsonyabb átlagos lekérdezési idővel rendelkező szerverek kiválasztására.", "bootstrap_dns": "Bootstrap DNS kiszolgálók", "bootstrap_dns_desc": "A DNS-kiszolgálók IP-címei, amelyek a DoH/DoT-feloldók IP-címeinek feloldására szolgálnak, amelyeket upstreamként megadott. Megjegyzések nem megengedettek.", "fallback_dns_title": "Tartalék DNS-szerverek", "fallback_dns_desc": "Azoknak a tartalék DNS-szervereknek a listája, amelyeket akkor használnak, ha a felsőbbrendű DNS-szerverek nem válaszolnak. A szintaxis ugyanaz, mint a fő felsőbbrendű mezőben.", "fallback_dns_placeholder": "Adjon meg egy alternatív DNS szervert soronként", "local_ptr_title": "Privát DNS szerverek", - "local_ptr_desc": "Azok a DNS szerverek, amiket az AdGuard Home a helyi PTR kérésekhez használ. ", + "local_ptr_desc": "Az AdGuard Home által használt DNS szerverek privát PTR, SOA és NS kérésekhez. Egy kérés privátnak számít, ha ARPA domain-t kér, amely tartalmaz egy alhálózatot a privát IP hatótávolságon belül (például \"192.168.12.34\"), és egy privát IP-címmel rendelkező ügyféltől érkezik. Ha nincs beállítva, az OS alapértelmezett DNS feloldóit fogja használni, kivéve az AdGuard Home IP-címeit.", "local_ptr_default_resolver": "Alapesetben az AdGuard Home a következő reverse DNS feloldókat használja: {{ip}}.", "local_ptr_no_default_resolver": "Az AdGuard Home nem tudta meghatározni a privát reverse DNS feloldókat ehhez a rendszerhez.", "local_ptr_placeholder": "Adjon meg egy IP-címet soronként", "resolve_clients_title": "Kliensek IP címeinek fordított feloldása", "resolve_clients_desc": "Fordítva oldja fel a kliensek IP címeit a hosztneveikre azáltal, hogy PTR lekérdezéseket küld a megfelelő feloldóknak (privát DNS szerverek a helyi kliensek számára, upstream szerverek a nyilvános IP címmel rendelkező kliensek számára).", "use_private_ptr_resolvers_title": "Privát reverse DNS feloldók használata", - "use_private_ptr_resolvers_desc": "Reverse DNS keresések végzése a helyileg kiszolgált címekre ezeknek a szervereknek a használatával. Ha le van tiltva, az AdGuard Home az NXDOMAIN használatával válaszol minden ilyen PTR kérésre, kivéve azokat a klienseket, amelyeket már ismer a DHCP, /etc/hosts, stb. által.", + "use_private_ptr_resolvers_desc": "A privát IP-címeket tartalmazó ARPA domainek PTR, SOA és NS kéréseinek megoldása privát upstream szerverek, DHCP, /etc/hosts stb. keresztül. Ha kikapcsolásra kerül, az AdGuard Home minden ilyen kérésre NXDOMAIN-nel fog válaszolni.", "check_dhcp_servers": "DHCP szerverek keresése", "save_config": "Konfiguráció mentése", "enabled_dhcp": "DHCP szerver engedélyezve", @@ -154,7 +154,7 @@ "use_adguard_parental": "Használja az AdGuard szülői felügyelet webszolgáltatását", "use_adguard_parental_hint": "Az AdGuard Home ellenőrzi, hogy a domain tartalmaz-e felnőtteknek szóló anyagokat. Ugyanazokat az adatvédelmi API-kat használja, mint a böngésző biztonsági webszolgáltatás.", "enforce_safe_search": "Biztonságos keresés használata", - "enforce_save_search_hint": "Az AdGuard Home a következő keresőmotorokban biztosíthatja a biztonságos keresést: Google, Youtube, Bing, DuckDuckGo, Yandex és Pixabay.", + "enforce_save_search_hint": "Az AdGuard Home a következő keresőmotorokban biztosítja a biztonságos keresést: Google, YouTube, Bing, DuckDuckGo, Ecosia, Yandex és Pixabay.", "no_servers_specified": "Nincsenek megadott kiszolgálók", "general_settings": "Általános beállítások", "dns_settings": "DNS beállítások", @@ -294,6 +294,9 @@ "blocked_response_ttl": "Tiltott válasz TTL-je", "blocked_response_ttl_desc": "Meghatározza, hogy a klienseknek hány másodpercig kell gyorsítótárazniuk a szűrt választ", "form_enter_blocked_response_ttl": "Írja be a blokkolt válasz TTL-jét (másodpercben)", + "upstream_timeout": "Upstream időtúllépés", + "upstream_timeout_desc": "Megadja, hogy hány másodpercet kell várni az upstream szervertől érkező válaszra", + "form_enter_upstream_timeout": "Adja meg az upstream szerver időtúllépési időt másodpercekben", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -425,6 +428,9 @@ "encryption_hostnames": "Hosztnevek", "encryption_reset": "Biztosan visszaállítja a titkosítási beállításokat?", "encryption_warning": "Figyelmeztetés", + "encryption_plain_dns_enable": "Egyszerű DNS engedélyezése", + "encryption_plain_dns_desc": "Az egyszerű DNS alapértelmezés szerint be van kapcsolva. Kikapcsolhatja, hogy az összes eszközt kényszerítse a titkosított DNS használatára. Ehhez legalább egy titkosított DNS protokollt engedélyeznie kell", + "encryption_plain_dns_error": "Az egyszerű DNS letiltásához engedélyezzen legalább egy titkosított DNS protokollt", "topline_expiring_certificate": "Az SSL-tanúsítványa hamarosan lejár. Frissítse a <0>Titkosítási beállításokat.", "topline_expired_certificate": "Az SSL-tanúsítványa lejárt. Frissítse a <0>Titkosítási beállításokat.", "form_error_port_range": "Adjon meg egy portszámot a 80-65535 tartományon belül", @@ -595,7 +601,7 @@ "disable_ipv6": "IPv6 címek feloldásának tiltása", "disable_ipv6_desc": "Dobja el az IPv6-címekre vonatkozó összes DNS-lekérdezést (AAAA típusú), és távolítsa el az IPv6-tippeket a HTTPS-válaszokból.", "fastest_addr": "Leggyorsabb IP-cím", - "fastest_addr_desc": "Kérdezze le az összes DNS-kiszolgálót, és adja vissza a leggyorsabb IP-címet a válaszok közül. Ez lelassítja a DNS-lekérdezéseket, mivel az összes DNS-kiszolgáló esetében meg kell várnunk a válaszokat, de javítja az összeköttetést.", + "fastest_addr_desc": "Várjon a minden DNS szerver válaszára, mérje meg a TCP kapcsolat sebességét minden szervernél, és adja vissza a leggyorsabb kapcsolatú szerver IP-címét.
Ez a mód jelentősen lelassíthatja a DNS lekérdezéseket, ha egy vagy több upstream szerver nem válaszol. Győződjön meg róla, hogy upstream szerverei stabilak és az upstream időtúllépés alacsony.", "autofix_warning_text": "Ha a \"Javítás\" lehetőségre kattint, az AdGuard Home megpróbálja beállítani a rendszerét, hogy használja az AdGuard Home DNS szervert.", "autofix_warning_list": "A következő feladatokat hajtja végre: <0>A DNSStubListener rendszer kikapcsolása<0>Beállítja a DNS-kiszolgáló címét 127.0.0.1-re.<0>Lecseréli az /etc/resolv.conf szimbolikus útvonalat erre: /run/systemd/resolve/resolv.conf<0>A DNSStubListener leállítása (a rendszer által feloldott szolgáltatás újratöltése)", "autofix_warning_result": "Mindennek eredményeként az Ön rendszeréből származó összes DNS-kérést alapértelmezés szerint az AdGuard Home dolgozza fel.", @@ -614,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Indok: {{reason}}", "check_service": "Szolgáltatás neve: {{service}}", + "check_hostname": "Gazda név vagy domain név", + "check_client_id": "Kliens azonosító (ClientID vagy IP-cím)", + "check_enter_client_id": "Adja meg a kliens azonosítót", + "check_dns_record": "DNS rekord típusának kiválasztása", "service_name": "Szolgáltatás neve", "check_not_found": "Nem található az Ön szűrőlistái között", "client_confirm_block": "Biztosan blokkolni szeretné a(z) \"{{ip}}\" klienst?", @@ -646,7 +656,7 @@ "blocklist": "Tiltólista", "milliseconds_abbreviation": "ms", "cache_size": "Gyorsítótár mérete", - "cache_size_desc": "DNS-gyorsítótár mérete (byte-ban). A gyorsítótárazás letiltásához hagyja üresen.", + "cache_size_desc": "DNS-gyorsítótár mérete (byte-ban). A gyorsításhoz állítsa 0-ra.", "cache_ttl_min_override": "A minimális TTL felülírása", "cache_ttl_max_override": "A maximális TTL felülírása", "enter_cache_size": "Adja meg a gyorsítótár méretét", @@ -675,7 +685,7 @@ "use_saved_key": "Előzőleg mentett kulcs használata", "parental_control": "Szülői felügyelet", "safe_browsing": "Biztonságos böngészés", - "served_from_cache": "{{value}} (gyorsítótárból kiszolgálva)", + "served_from_cache_label": "Gyorsítótárból kiszolgálva", "form_error_password_length": "A jelszó legyen {{min}} és {{max}} karakter között", "anonymizer_notification": "<0>Megjegyzés: Az IP anonimizálás engedélyezve van. Az <1>Általános beállításoknál letilthatja .", "confirm_dns_cache_clear": "Biztos benne, hogy törölni szeretné a DNS-gyorsítótárat?", diff --git a/client/src/__locales/id.json b/client/src/__locales/id.json index 510a535e..46c0472d 100644 --- a/client/src/__locales/id.json +++ b/client/src/__locales/id.json @@ -6,7 +6,7 @@ "upstream_parallel": "Gunakan kueri paralel untuk mempercepat penyelesaian dengan mengkueri seluruh server hulu secara bersamaan.", "parallel_requests": "Permintaan paralel", "load_balancing": "Penyeimbang beban", - "load_balancing_desc": "Permintaan satu server pada satu waktu. AdGuard Home akan menggunakan algoritma acak tertimbang untuk memilih server sehingga server tercepat akan lebih sering digunakan.", + "load_balancing_desc": "Kueri satu server hulu dalam satu waktu.
AdGuard Home menggunakan algoritma acak tertimbang untuk memilih server dengan jumlah pencarian gagal terendah dan waktu pencarian rata-rata terendah.", "bootstrap_dns": "Server DNS bootstrap", "bootstrap_dns_desc": "Alamat IP server DNS yang digunakan untuk menyelesaikan alamat IP penyelesai DoH/DoT yang Anda tentukan sebagai hulu. Tidak diizinkan untuk berkomentar.", "fallback_dns_title": "Server DNS cadangan", @@ -294,6 +294,9 @@ "blocked_response_ttl": "Respons TTL terblokir", "blocked_response_ttl_desc": "Menentukan berapa detik klien harus menyimpan respons yang difilter dalam cache", "form_enter_blocked_response_ttl": "Masukkan TTL respons yang diblokir (detik)", + "upstream_timeout": "Batas waktu hulu", + "upstream_timeout_desc": "Menentukan jumlah detik untuk menunggu respons dari server hulu", + "form_enter_upstream_timeout": "Masukkan durasi batas waktu server hulu dalam hitungan detik", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -598,7 +601,7 @@ "disable_ipv6": "Nonaktifkan penyelesaian alamat IPv6", "disable_ipv6_desc": "Hapus semua kueri DNS untuk alamat IPv6 (ketik AAAA) dan hapus petunjuk IPv6 dari respons HTTPS.", "fastest_addr": "Alamat IP tercepat", - "fastest_addr_desc": "Kuiri semua server DNS dan kembalikan alamat IP tercepat diantara semua tanggapan. Ini memperlambat pencarian DNS Sebagai Rumah AdGuard harus menunggu tanggapan dari semua server DNS, tapi meningkatkan konektivitas keseluruhan.", + "fastest_addr_desc": "Tunggu respons dari semua server DNS, ukur kecepatan koneksi TCP untuk setiap server, dan kembalikan alamat IP server dengan kecepatan koneksi tercepat.
Mode ini dapat memperlambat permintaan DNS secara signifikan, jika satu atau beberapa server hulu tidak merespons. Pastikan server hulu Anda stabil dan batas waktu hulu Anda rendah.", "autofix_warning_text": "Apabila anda menekan \"Perbaiki\", AdGuardHome akan mengatur sistem anda untuk menggunakan server DNS AdGuardHome.", "autofix_warning_list": "Ini akan melakukan tugas berikut: <0>Nonaktifkan sistem DNSStubListener <0>Atur alamat server DNS ke 127.0.0.1 <0>Ganti target tautan simbolis /etc/resolv.conf dengan /run/systemd/resolve/resolv.conf <0>Hentikan DNSStubListener (muat ulang layanan sistemd-resolved)", "autofix_warning_result": "Hasilnya, semua permintaan DNS dari sistem anda akan diproses oleh AdGuardHome secara standar.", @@ -617,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Alasan: {{reason}}", "check_service": "Nama layanan: {{service}}", + "check_hostname": "Nama host atau nama domain", + "check_client_id": "Pengidentifikasi klien (ClientID atau alamat IP)", + "check_enter_client_id": "Masukkan pengenal klien", + "check_dns_record": "Pilih tipe catatan DNS", "service_name": "Nama layanan", "check_not_found": "Tidak di temukan di daftar penyaringan anda", "client_confirm_block": "Apa anda yakin ingin mem-blokir klien ini \"{{ip}}\"?", @@ -649,7 +656,7 @@ "blocklist": "Daftar blokir", "milliseconds_abbreviation": "ms", "cache_size": "Ukuran cache", - "cache_size_desc": "Ukuran cache DNS (dalam byte). Untuk menonaktifkan caching, biarkan kosong.", + "cache_size_desc": "Ukuran tembolok DNS (dalam byte). Untuk mematikan caching, atur ke 0.", "cache_ttl_min_override": "Tumpuk TTL minimum", "cache_ttl_max_override": "Tumpuk TTL maksimum", "enter_cache_size": "Masukkan ukuran cache (bytes)", diff --git a/client/src/__locales/it.json b/client/src/__locales/it.json index cef7c5e9..7d9fb128 100644 --- a/client/src/__locales/it.json +++ b/client/src/__locales/it.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Motivo: {{reason}}", "check_service": "Nome servizio: {{service}}", + "check_hostname": "Nome host o nome di dominio", + "check_client_id": "Identificatore client (ClientID o indirizzo IP)", + "check_enter_client_id": "Inserisci identificatore client", + "check_dns_record": "Seleziona il tipo di registrazione DNS", "service_name": "Nome servizio", "check_not_found": "Non trovato negli elenchi dei filtri", "client_confirm_block": "Sei sicuro di voler bloccare il client \"{{ip}}\"?", @@ -651,8 +655,11 @@ "safe_search": "Ricerca Sicura", "blocklist": "Lista nera", "milliseconds_abbreviation": "ms", + "cache_enabled": "Abilita la cache", + "cache_enabled_desc": "Memorizza localmente le risposte DNS.", "cache_size": "Dimensioni cache", - "cache_size_desc": "Dimensione della cache DNS (in byte). Per disabilitare la memorizzazione nella cache, lascia vuoto.", + "cache_size_validation": "La dimensione della cache deve essere maggiore di zero quando abilitata.", + "cache_size_desc": "Dimensione della memoria temporanea DNS (in byte). Per disabilitare la memoria temporanea, impostare a 0.", "cache_ttl_min_override": "Sovrascrivi TTL minimo", "cache_ttl_max_override": "Sovrascrivi TTL massimo", "enter_cache_size": "Immetti dimensioni cache (in byte)", diff --git a/client/src/__locales/ja.json b/client/src/__locales/ja.json index 3b96300b..56174cfa 100644 --- a/client/src/__locales/ja.json +++ b/client/src/__locales/ja.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "理由: {{reason}}", "check_service": "サービス名: {{service}}", + "check_hostname": "ホスト名またはドメイン名", + "check_client_id": "クライアント識別子 (ClientID または IP アドレス)", + "check_enter_client_id": "クライアント識別子を入力してください", + "check_dns_record": "DNSレコードタイプ(DNS record type)を選択", "service_name": "サービス名", "check_not_found": "フィルタ一覧には見つかりません", "client_confirm_block": "クライアント\"{{ip}}\"をブロックしてもよろしいですか?", @@ -651,8 +655,11 @@ "safe_search": "セーフサーチ", "blocklist": "ブロックリスト", "milliseconds_abbreviation": "ms", + "cache_enabled": "キャッシュを有効にする", + "cache_enabled_desc": "DNSレスポンスをローカルに保存します。", "cache_size": "キャッシュサイズ", - "cache_size_desc": "DNSキャッシュサイズ(バイト単位)。※キャッシュを無効化するには、この欄を空してください。", + "cache_size_validation": "キャッシュが有効の場合、キャッシュサイズはゼロより大きい値でなければなりません", + "cache_size_desc": "DNSキャッシュサイズ(バイト単位)※キャッシュを無効化するには、「0」(ゼロ)にしてください。", "cache_ttl_min_override": "最小TTLの上書き(秒単位)", "cache_ttl_max_override": "最大TTLの上書き(秒単位)", "enter_cache_size": "キャッシュサイズ(バイト単位)を入力してください", diff --git a/client/src/__locales/ko.json b/client/src/__locales/ko.json index 7f81314a..159eda48 100644 --- a/client/src/__locales/ko.json +++ b/client/src/__locales/ko.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "이유: {{reason}}", "check_service": "서비스 이름: {{service}}", + "check_hostname": "호스트 이름 또는 도메인 이름", + "check_client_id": "클라이언트 식별자(클라이언트 ID 또는 IP 주소)", + "check_enter_client_id": "클라이언트 식별자 입력", + "check_dns_record": "DNS 레코드 유형 선택", "service_name": "서비스 이름", "check_not_found": "필터 목록에서 찾을 수 없음", "client_confirm_block": "정말로 클라이언트 '{{ip}}'을(를) 차단하시겠습니까?", @@ -651,8 +655,11 @@ "safe_search": "세이프서치", "blocklist": "차단 목록", "milliseconds_abbreviation": "ms", + "cache_enabled": "캐시 활성화", + "cache_enabled_desc": "DNS 응답을 로컬에 저장합니다.", "cache_size": "캐시 크기", - "cache_size_desc": "DNS 캐시 크기(바이트). 캐싱을 비활성화하려면 비워 둡니다.", + "cache_size_validation": "활성화된 경우 캐시 크기는 0보다 커야 합니다.", + "cache_size_desc": "DNS 캐시 크기(바이트). 캐싱을 사용하지 않으려면 0으로 설정합니다.", "cache_ttl_min_override": "최소 TTL (초) 무시", "cache_ttl_max_override": "최대 TTL (초) 무시", "enter_cache_size": "캐시 크기를 입력하세요", diff --git a/client/src/__locales/nl.json b/client/src/__locales/nl.json index 0ce20b4e..a49baf0d 100644 --- a/client/src/__locales/nl.json +++ b/client/src/__locales/nl.json @@ -110,9 +110,9 @@ "homepage": "Startpagina", "report_an_issue": "Rapporteer een probleem", "privacy_policy": "Privacybeleid", - "enable_protection": "Schakel bescherming in", + "enable_protection": "Bescherming inschakelen", "enabled_protection": "Bescherming ingeschakeld", - "disable_protection": "Schakel bescherming uit", + "disable_protection": "Bescherming uitschakelen", "disabled_protection": "Bescherming uitgeschakeld", "refresh_statics": "Ververs statistieken", "dns_query": "DNS-queries", @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Reden: {{reason}}", "check_service": "Servicenaam: {{service}}", + "check_hostname": "Hostnaam of domeinnaam", + "check_client_id": "Client identificator (ClientID of IP-adres)", + "check_enter_client_id": "Voer Client identificator in", + "check_dns_record": "Selecteer type DNS-record", "service_name": "Naam service", "check_not_found": "Niet in je lijst met filters gevonden", "client_confirm_block": "Weet je zeker dat je client \"{{ip}}\" wil blokkeren?", @@ -651,8 +655,11 @@ "safe_search": "Veilig zoeken", "blocklist": "Blokkeerlijst", "milliseconds_abbreviation": "ms", + "cache_enabled": "Cache inschakelen", + "cache_enabled_desc": "DNS-antwoorden lokaal opslaan.", "cache_size": "Cache grootte", - "cache_size_desc": "DNS-cachegrootte (in bytes). Leeg laten om caching uit te schakelen.", + "cache_size_validation": "De cachegrootte moet groter zijn dan nul wanneer deze is ingeschakeld.", + "cache_size_desc": "DNS-cachegrootte (in bytes). Om caching uit te schakelen, stel deze in op 0.", "cache_ttl_min_override": "Minimale TTL overschrijven", "cache_ttl_max_override": "Maximale TTL overschrijven", "enter_cache_size": "Cache grootte invoeren (bytes)", @@ -698,13 +705,13 @@ "disable_for_hours": "Voor {{count}} uur", "disable_for_hours_plural": "Voor {{count}} uren", "disable_until_tomorrow": "Tot morgen", - "disable_notify_for_seconds": "Beveiliging uitschakelen voor {{count}} seconde", - "disable_notify_for_seconds_plural": "Beveiliging uitschakelen voor {{count}} seconden", - "disable_notify_for_minutes": "Beveiliging uitschakelen voor {{count}} minuut", - "disable_notify_for_minutes_plural": "Beveiliging uitschakelen voor {{count}} minuten", - "disable_notify_for_hours": "Beveiliging uitschakelen voor {{count}} uur", - "disable_notify_for_hours_plural": "Beveiliging uitschakelen voor {{count}} uren", - "disable_notify_until_tomorrow": "Beveiliging uitschakelen tot morgen", + "disable_notify_for_seconds": "Bescherming uitschakelen voor {{count}} seconde", + "disable_notify_for_seconds_plural": "Bescherming uitschakelen voor {{count}} seconden", + "disable_notify_for_minutes": "Bescherming uitschakelen voor {{count}} minuut", + "disable_notify_for_minutes_plural": "Bescherming uitschakelen voor {{count}} minuten", + "disable_notify_for_hours": "Bescherming uitschakelen voor {{count}} uur", + "disable_notify_for_hours_plural": "Bescherming uitschakelen voor {{count}} uren", + "disable_notify_until_tomorrow": "Bescherming uitschakelen tot morgen", "enable_protection_timer": "Bescherming wordt ingeschakeld over {{time}}", "custom_retention_input": "Voer retentie in uren in", "custom_rotation_input": "Voer rotatie in uren in", diff --git a/client/src/__locales/no.json b/client/src/__locales/no.json index bb08a3dc..f9a222e1 100644 --- a/client/src/__locales/no.json +++ b/client/src/__locales/no.json @@ -1,23 +1,26 @@ { "client_settings": "Klientinnstillinger", "example_upstream_reserved": "Du kan bestemme en oppstrøms-DNS <0>for et spesifikt domene(r)", + "example_multiple_upstreams_reserved": "flere upstreams <0>for spesifikke domener;", "example_upstream_comment": "Du kan spesifisere en kommentar", "upstream_parallel": "Bruk parallele forespørsler for å få oppfarten på behandlinger, ved å forespørre til alle oppstrømstjenerne samtidig", "parallel_requests": "Parallelle forespørsler", "load_balancing": "Pågangstrykk-utjevning", - "load_balancing_desc": "Forespør én tjener om gangen. AdGuard Home vil bruke en 'vektlagt tilfeldig valg'-algoritme for å velge tjener, slik at den raskeste tjeneren blir brukt oftere.", + "load_balancing_desc": "Kjør en forespørsel mot én oppstrømsserver om gangen.
AdGuard Home bruker en vektet tilfeldig algoritme for å velge servere med det laveste antallet mislykkede oppslag og det laveste gjennomsnittlige oppslagstiden.", "bootstrap_dns": "Bootstrap-DNS-tjenere", "bootstrap_dns_desc": "IP-adresser til DNS-servere som brukes til å løse IP-adresser til DoH/DoT-løsere du spesifiserer som oppstrøms. Kommentarer er ikke tillatt.", "fallback_dns_title": "Reserve DNS-servere", "fallback_dns_desc": "Liste over reserve-DNS-servere som brukes når oppstrøms DNS-servere ikke svarer. Syntaksen er den samme som i hovedoppstrømsfeltet ovenfor.", "fallback_dns_placeholder": "Angi én reserve-DNS-server per linje", "local_ptr_title": "Private DNS-tjenere", - "local_ptr_desc": "DNS-tjenerne som AdGuard Home bruker for lokale PTR-spørringer. Disse tjenerne brukes til å løse vertsnavnene til klienter med private IP-adresser, for eksempel \"192.168.12.34\", ved bruk av omvendt DNS. Hvis det ikke er angitt, bruker AdGuard Home adressene til standard-DNS-løserne til operativsystemet ditt, bortsett fra adressene til selve AdGuard Home.", + "local_ptr_desc": "DNS-servere brukt av AdGuard Home for private PTR-, SOA- og NS-forespørsel. En forespørsel anses som privat hvis den ber om et ARPA-domene som inneholder et subnett innenfor private IP-områder (som \"192.168.12.34\") og kommer fra en klient med en privat IP-adresse. Hvis det ikke er angitt, vil de standard DNS-oppløserne for ditt operativsystem bli brukt, unntatt for AdGuard Home IP-adressene.", "local_ptr_default_resolver": "Som standard, bruker AdGuard Home følgende revers-DNS-oppletere: {{ip}}.", "local_ptr_no_default_resolver": "AdGuard Home klarte ikke å finne egnede private revers-DNS-oppletere for dette systemet.", - "local_ptr_placeholder": "Skriv inn én tjeneradresse per linje", + "local_ptr_placeholder": "Skriv inn én IP-adresse per linje", "resolve_clients_title": "Skru på revers-oppleting av klienters IP-adresser", + "resolve_clients_desc": "Hvis aktivert, vil AdGuard Home forsøke å automatisk løse klienters vertsnavn fra deres IP-adresser ved å sende en PTR-forespørsel til en tilsvarende resolver (privat DNS-server for lokale klienter, upstream-server for klienter med offentlig IP-adresse).", "use_private_ptr_resolvers_title": "Bruk private omvendte DNS-løsere", + "use_private_ptr_resolvers_desc": "Løs PTR-, SOA- og NS-forespørslene for ARPA-domener som inneholder private IP-adresser gjennom private oppstrømsservere, DHCP, /etc/hosts osv. Hvis deaktivert, vil AdGuard Home svare på alle slike forespørsel med NXDOMAIN.", "check_dhcp_servers": "Se etter DHCP-tjenere", "save_config": "Lagre oppsettet", "enabled_dhcp": "DHCP-tjeneren ble skrudd på", @@ -38,6 +41,7 @@ "dhcp_ipv6_settings": "DHCP IPv6-innstillinger", "form_error_required": "Påkrevd felt", "form_error_ip4_format": "Ugyldig IPv4-format", + "form_error_ip4_gateway_format": "Ugyldig IPv4-adresse for gatewayen", "form_error_ip6_format": "Ugyldig IPv6-format", "form_error_ip_format": "Ugyldig IPv4-format", "form_error_mac_format": "Ugyldig MAC-format", @@ -45,7 +49,12 @@ "form_error_server_name": "Ugyldig tjenernavn", "form_error_subnet": "Undernettet «{{cidr}}» inneholder ikke IP-adressen «{{ip}}»", "form_error_positive": "Må være høyere enn 0", + "form_error_gateway_ip": "Leie kan ikke ha IP-adresse til gateway", + "out_of_range_error": "Må være utenfor rekkevidden \"{{start}}\"-\"{{end}}\"", + "lower_range_start_error": "Må være lavere enn rekkeviddens start", "greater_range_start_error": "Må være høyere enn rekkeviddens start", + "subnet_error": "Adresser må være i en subnett", + "gateway_or_subnet_invalid": "Ugyldig undernettmaske", "dhcp_form_gateway_input": "Gateway-IP", "dhcp_form_subnet_input": "Nettverksmaske", "dhcp_form_range_title": "Spennvidden til IP-adressene", @@ -65,9 +74,14 @@ "dhcp_dynamic_ip_found": "Systemet ditt bruker et oppsett med dynamisk IP-adresse for grensesnittet <0>{{interfaceName}}. For å kunne bruke DHCP-tjeneren, må en statisk IP-adresse ha blitt satt opp. Din nåværende IP-adresse er <0>{{ipAddress}}. Vi vil automatisk gjøre denne IP-adressen statisk hvis du trykker på «Skru på DHCP»-knappen.", "dhcp_lease_added": "Den statiske leieavtalen «{{key}}» ble vellykket lagt til", "dhcp_lease_deleted": "Den statiske leieavtalen «{{key}}» ble vellykket lagt slettet", + "dhcp_lease_updated": "Den statiske leieavtalen «{{key}}» ble vellykket oppdatert", "dhcp_new_static_lease": "Ny statisk leieavtale", + "dhcp_edit_static_lease": "Rediger statisk leieavtale", "dhcp_static_leases_not_found": "Ingen statiske DHCP-leieavtaler ble funnet", "dhcp_add_static_lease": "Legg til statisk leieavtale", + "dhcp_reset_leases": "Tilbakestill alle leieavtaler", + "dhcp_reset_leases_confirm": "Er du sikker på at du vil tilbakestille alle leieavtaler?", + "dhcp_reset_leases_success": "DHCP-leieavtaler tilbakestilt med suksess", "dhcp_reset": "Er du sikker på at du vil tilbakestille DHCP-oppsettet?", "country": "Land", "city": "By", @@ -106,7 +120,8 @@ "stats_malware_phishing": "Blokkert skadevare/phishing", "stats_adult": "Blokkerte voksennettsteder", "stats_query_domain": "Mest forespurte domener", - "for_last_24_hours": "de siste 24 timene", + "for_last_hours": "for den siste {{count}} timen", + "for_last_hours_plural": "for de siste {{count}} timene", "for_last_days": "for den siste {{count}} dagen", "for_last_days_plural": "de siste {{count}} dagene", "stats_disabled": "Statistikkene har blitt skrudd av. Du kan skru den på fra <0>innstillingssiden.", @@ -121,13 +136,15 @@ "no_upstreams_data_found": "Ingen oppstrøms servere data funnet", "number_of_dns_query_days": "Antall DNS-spørringer behandlet for de siste {{count}} dagene", "number_of_dns_query_days_plural": "Antall DNS-forespørsler som ble behandlet de siste {{count}} dagene", - "number_of_dns_query_24_hours": "Antall DNS-forespørsler som ble behandlet de siste 24 timene", + "number_of_dns_query_hours": "Antall DNS-forespøringer behandlet for den siste {{count}} timen", + "number_of_dns_query_hours_plural": "Antall DNS-forespørsel som ble behandlet de siste {{count}} timene", "number_of_dns_query_blocked_24_hours": "Antall DNS-forespørsler som ble blokkert av adblock-filtre, hosts-lister, og domene-lister", "number_of_dns_query_blocked_24_hours_by_sec": "Antall DNS-forespørsler som ble blokkert av AdGuard sin nettlesersikkerhetsmodul", "number_of_dns_query_blocked_24_hours_adult": "Antall voksennettsteder som ble blokkert", "enforced_save_search": "Påtvungede barnevennlige søk", "number_of_dns_query_to_safe_search": "Antall DNS-forespørsler til søkemotorer der \"Safe Search\" ble fremtvunget", "average_processing_time": "Gjennomsnittlig behandlingstid", + "average_upstream_response_time": "Gjennomsnittlig responstid fra oppstrømsserver", "response_time": "Responstid", "average_processing_time_hint": "Gjennomsnittstid for behandling av DNS-forespørsler i millisekunder", "block_domain_use_filters_and_hosts": "Blokker domener ved hjelp av filtre, «hosts»-filer, og rå domener", @@ -137,7 +154,7 @@ "use_adguard_parental": "Benytt AdGuard sin foreldrekontroll-nettjeneste", "use_adguard_parental_hint": "AdGuard Home vil sjekke om domenet inneholder erotisk materiale. Den benytter den samme privatlivsvennlige API-en som nettlesersikkerhetstjenesten.", "enforce_safe_search": "Påtving barnevennlige søk", - "enforce_save_search_hint": "AdGuard Home kan fremtvinge \"Safe Search\" i de følgende søkemotorene: Google, YouTube, Bing, DuckDuckGo, Yandex, og Pixabay.", + "enforce_save_search_hint": "AdGuard Home vil håndheve \"Safe Search\" i følgende søkemotorer: Google, YouTube, Bing, DuckDuckGo, Ecosia, Yandex, Pixabay.", "no_servers_specified": "Ingen tjenere er spesifisert", "general_settings": "Generelle innstillinger", "dns_settings": "DNS-innstillinger", @@ -163,6 +180,7 @@ "enabled_parental_toast": "Skrudde på foreldrekontroll", "disabled_safe_search_toast": "Skrudde av barnevennlige søk", "enabled_save_search_toast": "Skrudde på barnevennlige søk", + "updated_save_search_toast": "Innstillinger for sikker søk oppdatert", "enabled_table_header": "Skrudd på", "name_table_header": "Navn", "list_url_table_header": "Listens nettadresse", @@ -204,22 +222,29 @@ "example_comment_hash": "# Også en kommentar", "example_regex_meaning": "blokker tilgang til domener som samsvarer med den valgte ordinære oppføringen", "example_upstream_regular": "vanlig DNS (over UDP)", + "example_upstream_regular_port": "vanlig DNS (over UDP, med port);", + "example_upstream_udp": "vanlig DNS (over UDP, vertsnavn);", "example_upstream_dot": "kryptert <0>DNS-over-TLS", "example_upstream_doh": "kryptert <0>DNS-over-HTTPS", + "example_upstream_doh3": "kryptert DNS-over-HTTPS med tvungen <0>HTTP/3 og uten fallback til HTTP/2 eller lavere;", "example_upstream_doq": "kryptert <0>DNS-over-QUIC;", "example_upstream_sdns": "du kan bruke <0>DNS-stempler med <1>DNSCrypt eller <2>DNS-over-HTTPS-behandlere", "example_upstream_tcp": "vanlig DNS (over TCP)", + "example_upstream_tcp_port": "vanlig DNS (over TCP, med port);", + "example_upstream_tcp_hostname": "vanlig DNS (over TCP, vertsnavn);", "all_lists_up_to_date_toast": "Alle listene er allerede oppdatert", "updated_upstream_dns_toast": "Oppdaterte oppstrøms-DNS-tjenerne", "dns_test_ok_toast": "De spesifiserte DNS-tjenerne fungerer riktig", "dns_test_not_ok_toast": "Tjeneren «{{key}}» kunne ikke brukes, vennligst dobbeltsjekk at du har skrevet den riktig", "dns_test_parsing_error_toast": "Seksjon {{section}}: linje {{line}}: kunne ikke brukes, vennligst sjekk at du har skrevet det riktig", + "dns_test_warning_toast": "Oppstrøms \"{{key}}\" svarer ikke på testforespørselene og fungerer kanskje ikke riktig", "unblock": "Tillat", "block": "Blokker", "disallow_this_client": "Ikke tillat denne klienten", "allow_this_client": "Tillat denne klienten", "block_for_this_client_only": "Blokker kun for denne klienten", "unblock_for_this_client_only": "Opphev blokkering kun for denne enheten", + "add_persistent_client": "Legg til som vedvarende klient", "time_table_header": "Tidspunkt", "date": "Dato", "domain_name_table_header": "Domenenavn", @@ -266,6 +291,12 @@ "custom_ip": "Tilpasset IP", "blocking_ipv4": "IPv4-blokkering", "blocking_ipv6": "IPv6-blokkering", + "blocked_response_ttl": "Blokkerte svars TTL", + "blocked_response_ttl_desc": "Angir hvor mange sekunder klientene skal cache et filtrert svar", + "form_enter_blocked_response_ttl": "Skriv inn TTL for blokkerte svar (sekunder)", + "upstream_timeout": "Oppstrøms tidsavbrudd", + "upstream_timeout_desc": "Spesifiserer antallet sekunder å vente på svar fra oppstrømsserveren", + "form_enter_upstream_timeout": "Skriv inn oppstrømsserverens tidsavbrudd varighet i sekunder", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -281,7 +312,19 @@ "rate_limit": "Forespørselsfrekvensgrense", "edns_enable": "Aktiver EDNS-klientundernett", "edns_cs_desc": "Hvis det er skrudd på, vil AdGuard Home sende klientenes undernett til DNS-tjenerne.", + "edns_use_custom_ip": "Bruk tilpasset IP for EDNS", + "edns_use_custom_ip_desc": "Tillat å bruke tilpasset IP for EDNS", "rate_limit_desc": "Antallet forespørsler per sekund som én enkelt klient har lov til å be om (0: ubegrenset)", + "rate_limit_subnet_len_ipv4": "Lengde på subnettprefiks for IPv4-adresser", + "rate_limit_subnet_len_ipv4_desc": "Subnet prefixlengde for IPv4-adresser som brukes til ratebegrensning. Standard er 24", + "rate_limit_subnet_len_ipv4_error": "IPv4 subnet prefixlengde bør være mellom 0 og 32", + "rate_limit_subnet_len_ipv6": "Subnet prefixlengde for IPv6-adresser", + "rate_limit_subnet_len_ipv6_desc": "Subnet prefixlengde for IPv6-adresser som brukes til ratebegrensning. Standard er 56", + "rate_limit_subnet_len_ipv6_error": "IPv6 subnet prefixlengde bør være mellom 0 og 128", + "form_enter_rate_limit_subnet_len": "Oppgi subnet prefixlengde for ratebegrensning", + "rate_limit_whitelist": "Ratebegrensnings tillatelsesliste", + "rate_limit_whitelist_desc": "IP-adresser unntatt fra ratebegrensning", + "rate_limit_whitelist_placeholder": "Skriv inn én IP-adresse per linje", "blocking_ipv4_desc": "IP-adressen som det skal svares med for blokkerte A-forespørsler", "blocking_ipv6_desc": "IP-adressen som det skal svares med for blokkerte AAAA-forespørsler", "blocking_mode_default": "Standard: Svar med null-IP-adresse (0.0.0.0 for A; :: for AAAA) når den blokkeres av adblock-aktige oppføringer; svar med IP-adressen som er spesifisert i oppføringen når den blokkeres av /etc/hosts-typeoppføringer", @@ -385,6 +428,9 @@ "encryption_hostnames": "Vertsnavn", "encryption_reset": "Er du sikker på at du vil tilbakestille krypteringsinnstillingene?", "encryption_warning": "Advarsel", + "encryption_plain_dns_enable": "Aktiver vanlig DNS", + "encryption_plain_dns_desc": "Vanlig DNS er aktivert som standard. Du kan deaktivere den for å tvinge alle enheter til å bruke kryptert DNS. For å gjøre dette må du aktivere minst ett kryptert DNS-protokoll", + "encryption_plain_dns_error": "For å deaktivere vanlig DNS, aktiver minst ett kryptert DNS-protokoll", "topline_expiring_certificate": "Ditt SSL-sertifikat er i ferd med å utløpe. Oppdater <0>Krypteringsinnstillinger.", "topline_expired_certificate": "SSL-sertifikatet har utløpt. Oppdater <0>Krypteringsinnstillinger.", "form_error_port_range": "Skriv inn et portnummer i området 80-65535", @@ -402,6 +448,7 @@ "dns_providers": "Her er en <0>liste over kjente DNS-leverandører som du kan velge blant.", "update_now": "Oppdater nå", "update_failed": "Auto-oppdatering mislyktes. Vennligst følg trinnene for manuelle oppdateringer.", + "manual_update": "Vennligst følg disse trinnene for manuell oppdatering.", "processing_update": "Vennligst vent, AdGuard Home blir oppdatert", "clients_title": "Klienter", "clients_desc": "Konfigurer enheter som er koblet til AdGuard Home", @@ -423,6 +470,7 @@ "form_add_id": "Legg til identifikator", "form_client_name": "Skriv inn klientnavnet", "name": "Navn", + "client_name": "Klient {{id}}", "client_global_settings": "Bruk de overbestyrte innstillingene", "client_deleted": "Klienten «{{key}}» ble vellykket slettet", "client_added": "Klienten «{{key}}» ble vellykket lagt til", @@ -515,6 +563,10 @@ "statistics_retention_confirm": "Er du sikker på at du vil endre hvor lenge statistikkene skal beholdes? Hvis du reduserer den interne verdien, vil noe av dataene gå tapt", "statistics_cleared": "Statistikkene ble vellykket tømt", "statistics_enable": "Skru på statistikker", + "ignore_domains": "Ignorerte domener (separate med linjeskift)", + "ignore_domains_title": "Ignorerte domener", + "ignore_domains_desc_stats": "Forespørslene som samsvarer med disse reglene, skrives ikke til statistikken", + "ignore_domains_desc_query": "Forespørslene som samsvarer med disse reglene, skrives ikke til loggen for forespørslene", "interval_hours": "{{count}} time", "interval_hours_plural": "{{count}} timer", "filters_configuration": "Oppsett av filtre", @@ -549,7 +601,7 @@ "disable_ipv6": "Skru av IPv6", "disable_ipv6_desc": "Slipp alle DNS-spørringer for IPv6-adresser (type AAAA) og fjern IPv6-hint fra HTTPS-svar.", "fastest_addr": "Raskeste IP-adresse", - "fastest_addr_desc": "Forespør alle DNS-tjenerne og hent den raskeste IP-adressen blant alle svarene. Dette vil gjøre DNS-forespørslene tregere, siden vi må vente på svar fra alle DNS-tjenerne, men det vil forbedre tilkoblingen generelt.", + "fastest_addr_desc": "Vent på svar fra alle DNS-serverne, mål TCP-tilkoblingshastigheten for hver server, og returner IP-adressen til serveren med den raskeste tilkoblingshastigheten.
Denne modusen kan betydelig bremse DNS-forespørslene, hvis en eller flere oppstrømsservere ikke svarer. Sørg for at oppstrømsserverne dine er stabile og at oppstrøms tidsavbruddet er lavt.", "autofix_warning_text": "Hvis du klikker på «Fiks», vil AdGuard Home sette opp systemet ditt til å bruke 'AdGuard Home'-DNS-tjeneren.", "autofix_warning_list": "Den vil utføre disse handlingene: <0>Skru av systemets DNSStubListener <0>Sette DNS-tjeneradressen til 127.0.0.1 <0>Bytte ut det symbolske lenkemålet til /etc/resolv.conf med /run/systemd/resolve/resolv.conf <0>Stoppe DNSStubListener (gjeninnlast 'systemd-resolved'-tjenesten)", "autofix_warning_result": "Som følge av det vil alle DNS-forespørsler fra systemet ditt bli behandlet av AdGuard Home som standard.", @@ -568,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Årsak: {{reason}}", "check_service": "Tjenestenavn: {{service}}", + "check_hostname": "Vertsnavn eller domenenavn", + "check_client_id": "Klientidentifikator (ClientID eller IP-adresse)", + "check_enter_client_id": "Skriv inn klientidentifikator", + "check_dns_record": "Velg type DNS-post", "service_name": "Tjenestenavn", "check_not_found": "Ikke funnet i filterlistene dine", "client_confirm_block": "Er du sikker på at du vil blokkere klienten «{{ip}}»?", @@ -600,7 +656,7 @@ "blocklist": "Blokkeringsliste", "milliseconds_abbreviation": "ms", "cache_size": "Mellomlagerstørrelse", - "cache_size_desc": "DNS-bufferstørrelse (i byte). For å deaktivere caching, la stå tomt.", + "cache_size_desc": "DNS-cache-størrelse (i bytes). For å deaktivere caching, sett til 0.", "cache_ttl_min_override": "Overstyr minimumslevetiden", "cache_ttl_max_override": "Overstyr maksimallevetiden", "enter_cache_size": "Skriv inn mellomlagerstørrelse (i bytes)", @@ -624,17 +680,41 @@ "click_to_view_queries": "Klikk for å vise forespørsler", "port_53_faq_link": "Port 53 er ofte opptatt av «DNSStubListener»- eller «systemd-resolved»-tjenestene. Vennligst les <0>denne instruksjonen om hvordan man løser dette.", "adg_will_drop_dns_queries": "AdGuard Home vil droppe alle DNS-forespørsler fra denne klienten.", + "filter_allowlist": "ADVARSEL: Denne handlingen vil også ekskludere regelen \"{{disallowed_rule}}\" fra listen over tillatte klienter.", + "last_rule_in_allowlist": "Kan ikke nekte denne klienten fordi utelukkelse av regelen \"{{disallowed_rule}}\" vil deaktivere listen over \"Tillatte klienter\".", "use_saved_key": "Bruk den tidligere lagrede nøkkelen", "parental_control": "Foreldrekontroll", "safe_browsing": "Sikker surfing", - "served_from_cache": "{{value}} (formidlet fra mellomlageret)", + "served_from_cache_label": "Formidlet fra mellomlageret", + "form_error_password_length": "Passordet må være {{min}} til {{max}} tegn langt", + "anonymizer_notification": "<0>Merk: IP-anonymisering er aktivert. Du kan deaktivere det i <1>Generelle innstillinger.", + "confirm_dns_cache_clear": "Er du sikker på at du vil tømme DNS-bufferet?", + "cache_cleared": "DNS-bufferet ble vellykket tømt", + "clear_cache": "Tøm cache", + "make_static": "Gjør statisk", + "theme_auto_desc": "Auto (basert på fargeoppsettet til enheten din)", "theme_dark_desc": "Mørkt tema", "theme_light_desc": "Lyst tema", + "disable_for_seconds": "For {{count}} sekund", + "disable_for_seconds_plural": "For {{count}} sekunder", + "disable_for_minutes": "For {{count}} minutt", + "disable_for_minutes_plural": "For {{count}} minutter", + "disable_for_hours": "For {{count}} time", + "disable_for_hours_plural": "For {{count}} timer", + "disable_until_tomorrow": "Frem til i morgen", + "disable_notify_for_seconds": "Deaktiver beskyttelse i {{count}} sekund", + "disable_notify_for_seconds_plural": "Deaktiver beskyttelse for {{count}} sekunder", + "disable_notify_for_minutes": "Deaktiver beskyttelse i {{count}} minutt", + "disable_notify_for_minutes_plural": "Deaktiver beskyttelsen for {{count}} minutter", + "disable_notify_for_hours": "Deaktiver beskyttelse i {{count}} time", + "disable_notify_for_hours_plural": "Skru av beskyttelse for {{count}} timer", "disable_notify_until_tomorrow": "Deaktiver beskyttelsen til i morgen", "enable_protection_timer": "Beskyttelse vil være aktivert i {{time}}", "custom_retention_input": "Angi oppbevaring i timer", "custom_rotation_input": "Angi rotasjon i timer", "protection_section_label": "Beskyttelse", + "log_and_stats_section_label": "Spørringslogg og statistikk", + "ignore_query_log": "Ignorer denne klienten i spørringsloggen", "ignore_statistics": "Ignorer denne klienten i statistikken", "schedule_services": "Sett blokkering av tjenesten på pause", "schedule_services_desc": "Konfigurer pauseplanen for tjenesteblokkeringsfilteret", @@ -667,5 +747,8 @@ "wednesday_short": "ons", "thursday_short": "tor", "friday_short": "fre", - "saturday_short": "lør" + "saturday_short": "lør", + "upstream_dns_cache_configuration": "Konfigurasjon av upstream DNS-cache", + "enable_upstream_dns_cache": "Aktiver DNS-caching for denne klientens tilpassede upstream-konfigurasjon", + "dns_cache_size": "DNS-bufferstørrelse (i byte)" } diff --git a/client/src/__locales/pl.json b/client/src/__locales/pl.json index ca74d464..c912dd02 100644 --- a/client/src/__locales/pl.json +++ b/client/src/__locales/pl.json @@ -6,7 +6,7 @@ "upstream_parallel": "Użyj zapytań równoległych, aby przyspieszyć rozwiązywanie przez jednoczesne wysyłanie zapytań do wszystkich serwerów nadrzędnych.", "parallel_requests": "Równoległe żądania", "load_balancing": "Równoważenie obciążenia", - "load_balancing_desc": "Zapytaj jeden serwer nadrzędny na raz. AdGuard Home używa ważonego, losowego algorytmu do wybierania serwerów z najmniejszą liczbą nieudanych wyszukiwań i najniższym uśrednionym czasem wyszukiwania.", + "load_balancing_desc": "Zapytaj jeden serwer nadrzędny na raz.
AdGuard Home używa ważonego, losowego algorytmu do wybierania serwerów z najmniejszą liczbą nieudanych wyszukiwań i najniższym uśrednionym czasem wyszukiwania.", "bootstrap_dns": "Serwery DNS Bootstrap", "bootstrap_dns_desc": "Adresy IP serwerów DNS używanych do rozpoznawania adresów IP programów rozpoznawania nazw DoH/DoT określonych jako nadrzędne. Komentarze są niedozwolone.", "fallback_dns_title": "Rezerwowe serwery DNS", @@ -294,6 +294,9 @@ "blocked_response_ttl": "TTL zablokowanej odpowiedzi", "blocked_response_ttl_desc": "Określa, przez ile sekund klienci powinni buforować przefiltrowaną odpowiedź", "form_enter_blocked_response_ttl": "Wprowadź TTL zablokowanej odpowiedzi (sekundy)", + "upstream_timeout": "Czas oczekiwania na odpowiedź", + "upstream_timeout_desc": "Określa liczbę sekund oczekiwania na odpowiedź od serwera nadrzędnego", + "form_enter_upstream_timeout": "Wprowadź czas oczekiwania na odpowiedź od serwera nadrzędnego w sekundach", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -598,7 +601,7 @@ "disable_ipv6": "Wyłącz rozwiązywanie adresów IPv6", "disable_ipv6_desc": "Ignorować wszystkie zapytania DNS dotyczące adresów IPv6 (typ AAAA) i usuwać dane IPv6 z odpowiedzi HTTPS.", "fastest_addr": "Najszybszy adres IP", - "fastest_addr_desc": "Zapytaj wszystkie serwery DNS i zwróć najszybszy adres IP spośród wszystkich odpowiedzi. Spowalnia to zapytania DNS, ponieważ AdGuard Home musi czekać na odpowiedzi ze wszystkich serwerów DNS, ale poprawia ogólną łączność.", + "fastest_addr_desc": "Poczekaj na odpowiedzi od wszystkich serwerów DNS, zmierz prędkość połączenia TCP dla każdego serwera i zwróć adres IP serwera z najszybszym połączeniem.
Ten tryb może znacznie spowolnić zapytania DNS, jeśli jeden lub więcej serwerów nadrzędnych nie odpowiada. Upewnij się, że Twoje serwery nadrzędne są stabilne, a czas oczekiwania na odpowiedź jest krótki.", "autofix_warning_text": "Jeśli klikniesz „Napraw”, AdGuardHome skonfiguruje system do korzystania z serwera DNS AdGuardHome.", "autofix_warning_list": "Wykona następujące zadania: <0>Dezaktywuj system DNSStubListener <0>Ustaw adres serwera DNS na 127.0.0.1 <0>Zamień symboliczny cel łącza z /etc/resolv.conf na /run/systemd/resolve/resolv.conf <0>Zatrzymaj DNSStubListener (przeładuj usługę systemową)", "autofix_warning_result": "W rezultacie wszystkie żądania DNS z Twojego systemu będą domyślnie przetwarzane przez AdGuardHome.", @@ -617,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Powód: {{reason}}", "check_service": "Nazwa usługi: {{service}}", + "check_hostname": "Nazwa hosta lub nazwa domeny", + "check_client_id": "Identyfikator klienta (ClientID lub Adres IP)", + "check_enter_client_id": "Wprowadź identyfikator klienta", + "check_dns_record": "Wybierz typ rekordu DNS", "service_name": "Nazwa usługi", "check_not_found": "Nie znaleziono na Twoich listach filtrów", "client_confirm_block": "Czy na pewno chcesz zablokować klienta \"{{ip}}\"?", @@ -649,7 +656,7 @@ "blocklist": "Lista zablokowanych", "milliseconds_abbreviation": "ms", "cache_size": "Rozmiar pamięci podręcznej", - "cache_size_desc": "Rozmiar pamięci podręcznej DNS (w bajtach). Aby wyłączyć buforowanie, pozostaw puste.", + "cache_size_desc": "Rozmiar pamięci podręcznej DNS (w bajtach). Aby wyłączyć buforowanie, ustaw na 0.", "cache_ttl_min_override": "Nadpisz minimalną wartość TTL", "cache_ttl_max_override": "Nadpisz maksymalną wartość TTL", "enter_cache_size": "Wpisz rozmiar pamięci podręcznej (w bajtach)", diff --git a/client/src/__locales/pt-br.json b/client/src/__locales/pt-br.json index 9f6cfc28..43e1f482 100644 --- a/client/src/__locales/pt-br.json +++ b/client/src/__locales/pt-br.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Motivo: {{reason}}", "check_service": "Nome do serviço: {{service}}", + "check_hostname": "Nome do anfitrião ou nome de domínio", + "check_client_id": "Identificador do cliente (ClienteID ou endereço de IP)", + "check_enter_client_id": "Insira o identificador do cliente", + "check_dns_record": "Selecione o tipo de registro DNS", "service_name": "Nome do serviço", "check_not_found": "Não encontrado em suas listas de filtros", "client_confirm_block": "Você tem certeza de que deseja bloquear o cliente \"{{ip}}\"?", @@ -651,8 +655,11 @@ "safe_search": "Pesquisa segura", "blocklist": "Lista de bloqueio", "milliseconds_abbreviation": "ms", + "cache_enabled": "Ativar cache", + "cache_enabled_desc": "Armazenar as respostas DNS localmente.", "cache_size": "Tamanho do cache", - "cache_size_desc": "Tamanho do cache do DNS (em bytes). Para desativar o cache, deixe em branco.", + "cache_size_validation": "O tamanho do cache deve ser maior que zero quando ativado.", + "cache_size_desc": "Tamanho do cache do DNS (em bytes). Para desativar o cache, defina como 0.", "cache_ttl_min_override": "Sobrepor o TTL mínimo", "cache_ttl_max_override": "Sobrepor o TTL máximo", "enter_cache_size": "Digite o tamanho do cache (bytes)", diff --git a/client/src/__locales/pt-pt.json b/client/src/__locales/pt-pt.json index e6dd4a8d..9aa47f44 100644 --- a/client/src/__locales/pt-pt.json +++ b/client/src/__locales/pt-pt.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Motivo: {{reason}}", "check_service": "Nome do serviço: {{service}}", + "check_hostname": "Nome do hospedeiro ou nome de domínio", + "check_client_id": "Identificador do cliente (ClientID ou endereço IP)", + "check_enter_client_id": "Insira o identificador do cliente", + "check_dns_record": "Selecione o tipo de registro DNS", "service_name": "Nome do serviço", "check_not_found": "Não encontrado nas tuas listas de filtros", "client_confirm_block": "Você tem certeza de que deseja bloquear o cliente \"{{ip}}\"?", @@ -651,8 +655,11 @@ "safe_search": "Pesquisa segura", "blocklist": "Lista de bloqueio", "milliseconds_abbreviation": "ms", + "cache_enabled": "Ativar cache", + "cache_enabled_desc": "Armazene as respostas DNS localmente.", "cache_size": "Tamanho do cache", - "cache_size_desc": "Tamanho do cache DNS (em bytes). Para desativar o cache, deixar o campo vazio.", + "cache_size_validation": "O tamanho do cache deve ser maior que zero quando ativado.", + "cache_size_desc": "Tamanho do cache DNS (em bytes). Para desativar o cache, defina como 0.", "cache_ttl_min_override": "Sobrepor o TTL mínimo", "cache_ttl_max_override": "Sobrepor o TTL máximo", "enter_cache_size": "Digite o tamanho do cache (bytes)", diff --git a/client/src/__locales/ro.json b/client/src/__locales/ro.json index 7ec981a7..cf725008 100644 --- a/client/src/__locales/ro.json +++ b/client/src/__locales/ro.json @@ -6,21 +6,21 @@ "upstream_parallel": "Folosiți interogări paralele pentru a accelera rezolvarea, interogând simultan toate serverele în amonte.", "parallel_requests": "Solicitări paralele", "load_balancing": "Echilibrare-sarcini", - "load_balancing_desc": "Interoghează câte un server în amonte la un moment dat. AdGuard Home utilizează un algoritm de randomizare ponderat pentru a alege serverul, astfel încât cel mai rapid server să fie utilizat mai des.", + "load_balancing_desc": "Interogați câte un server în amonte la un moment dat.
AdGuard Home folosește un algoritm de randomizare ponderat pentru a selecta servere cu cel mai mic număr de căutări nereușite și cel mai mic timp mediu de căutare.", "bootstrap_dns": "Serverele DNS Bootstrap", "bootstrap_dns_desc": "Adresele IP ale serverelor DNS utilizate pentru a rezolva adresele IP ale soluțiilor DoH/DoT pe care le specificați ca fiind în amonte. Comentariile nu sunt permise.", "fallback_dns_title": "Servere DNS de rezervă", "fallback_dns_desc": "Lista serverelor DNS de rezervă utilizate atunci când serverele DNS din amonte nu răspund. Sintaxa este aceeași ca în câmpul principal din amonte de mai sus.", "fallback_dns_placeholder": "Introduceți un server DNS de rezervă pe linie", "local_ptr_title": "Servere DNS inverse private", - "local_ptr_desc": "Serverele DNS pe care AdGuard Home le utilizează pentru interogările PTR locale. Aceste servere sunt utilizate pentru a rezolva solicitările PTR pentru adrese din intervale IP private, de exemplu „192.168.12.34”, utilizând DNS invers. Dacă nu este configurat, AdGuard Home utilizează adresele rezolvatorilor DNS impliciți ai sistemului dvs. de operare, cu excepția adreselor AdGuard Home în sine.", + "local_ptr_desc": "Serverele DNS utilizate de AdGuard Home pentru solicitările private PTR, SOA și NS. O solicitare este considerată privată dacă solicită un domeniu ARPA care conține o subrețea în interiorul intervalelor IP private (cum ar fi \"192.168.12.34\") și provine de la un client cu o adresă IP privată. Dacă nu este setat, vor fi folosite resolverele DNS implicite ale sistemului dvs. de operare, cu excepția adreselor IP AdGuard Home.", "local_ptr_default_resolver": "În mod implicit, AdGuard Home utilizează următorii rezolvatori DNS inverși: {{ip}}.", "local_ptr_no_default_resolver": "AdGuard Home nu a putut determina rezolvatorii DNS privați adecvați pentru acest sistem.", "local_ptr_placeholder": "Introduceți o adresă IP per linie", "resolve_clients_title": "Permiteți rezolvarea inversa a adreselor IP ale clienților", "resolve_clients_desc": "Rezolvă invers adresele IP ale clienților în numele lor de gazde prin trimiterea interogărilor PTR la rezolvatorii corespunzători (servere DNS private pentru clienți locali, servere în amonte pentru clienți cu adrese IP publice).", "use_private_ptr_resolvers_title": "Utilizați rezolvatori DNS inverși privați", - "use_private_ptr_resolvers_desc": "Efectuează examinări DNS inverse pentru adresele deservite local folosind aceste servere în amonte. Dacă este dezactivată, AdGuard Home răspunde cu NXDOMAIN la toate aceste cereri PTR, cu excepția clienților cunoscuți din DHCP, /etc/hosts și așa mai departe.", + "use_private_ptr_resolvers_desc": "Rezolvați cererile PTR, SOA și NS pentru domeniile ARPA care conțin adrese IP private prin intermediul serverelor upstream private, DHCP, /etc/hosts etc. Dacă este dezactivat, AdGuard Home va răspunde la toate aceste cereri cu NXDOMAIN.", "check_dhcp_servers": "Căutați servere DHCP", "save_config": "Salvare configurare", "enabled_dhcp": "Server DHCP activat", @@ -154,7 +154,7 @@ "use_adguard_parental": "Utilizați Controlul Parental AdGuard", "use_adguard_parental_hint": "AdGuard Home va verifica pentru conținut adult pe domeniu. Utilizează același API discret ca cel utilizat de serviciul de securitate de navigare.", "enforce_safe_search": "Folosiți Căutarea Sigură", - "enforce_save_search_hint": "AdGuard Home va impune Căutarea Sigură în următoarele motoare de căutare: Google, YouTube, Bing, DuckDuckGo, Yandex, Pixabay.", + "enforce_save_search_hint": "AdGuard Home va impune căutarea sigură în următoarele motoare de căutare: Google, YouTube, Bing, DuckDuckGo, Ecosia, Yandex, Pixabay.", "no_servers_specified": "Nu sunt specificate servere", "general_settings": "Setări Generale", "dns_settings": "Setări DNS", @@ -294,6 +294,9 @@ "blocked_response_ttl": "Răspuns blocat TTL", "blocked_response_ttl_desc": "Specifică pentru câte secunde trebuie să memoreze clienții un răspuns filtrat", "form_enter_blocked_response_ttl": "Introduceți răspunsul blocat TTL (secunde)", + "upstream_timeout": "Durata de așteptare a răspunsurilor de la serverele upstream", + "upstream_timeout_desc": "Specifica numărul de secunde de așteptat pentru un răspuns de la serverul în amonte", + "form_enter_upstream_timeout": "Introduceți durata de timp de așteptare a serverului în amonte în secunde", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -425,6 +428,9 @@ "encryption_hostnames": "Nume de host", "encryption_reset": "Sunteți sigur că doriți să resetați setările de criptare?", "encryption_warning": "Atenție", + "encryption_plain_dns_enable": "Activați DNS simplu", + "encryption_plain_dns_desc": "DNS simplu este activat în mod implicit. Îl puteți dezactiva pentru a forța toate dispozitivele să utilizeze DNS criptat. Pentru a face acest lucru, trebuie să activați cel puțin un protocol DNS criptat", + "encryption_plain_dns_error": "Pentru a dezactiva DNS simplu, activați cel puțin un protocol DNS criptat", "topline_expiring_certificate": "Certificatul dvs. SSL este pe cale să expire. Actualizați <0>Setările de criptare.", "topline_expired_certificate": "Certificatul dvs. SSL a expirat. Actualizați <0>Setările de criptare.", "form_error_port_range": "Introduceți valoarea portului între 80-65535", @@ -595,7 +601,7 @@ "disable_ipv6": "Dezactivați rezolvarea adreselor IPv6", "disable_ipv6_desc": "Renunțați la toate interogările DNS pentru adresele IPv6 (tip AAAA) și eliminați indicațiile IPv6 din răspunsurile HTTPS.", "fastest_addr": "Cea mai rapidă adresă IP", - "fastest_addr_desc": "Interoghează toate serverele DNS și întoarce adresa IP cea mai rapidă din răspunsuri. Acest lucru încetinește interogările DNS, deoarece AdGuard Home trebuie să aștepte răspunsuri de la toate serverele DNS, dar îmbunătățește conectivitatea generală.", + "fastest_addr_desc": "Așteptați răspunsuri de la toate serverele DNS, măsurați viteza de conexiune TCP pentru fiecare server și returnați adresa IP a serverului cu cea mai rapidă viteză de conexiune.
Această modul poate încetini semnificativ interogările DNS, dacă unul sau mai multe servere în amonte nu răspund. Asigurați-vă că serverele dumneavoastră în amonte sunt stabile și că timpul de așteptare pentru serverele în amonte este scăzut.", "autofix_warning_text": "Dacă clicați pe \"Fix\", AdGuardHome va configura sistemul dvs. pentru a utiliza serverul DNS AdGuardHome.", "autofix_warning_list": "Va efectua aceste sarcini: <0>Dezactivare sistem DNSStubListener <0>Setare adresă server DNS la 127.0.0.1 <0>Înlocuire link simbolic țintă /etc/resolv.conf cu /run/systemd/resolve/resolv.conf <0>Oprire DNSStubListener (reîncărcare servici rezolvat prin sistem)", "autofix_warning_result": "Ca urmare, toate cererile DNS ale sistemul dvs. vor fi procesate în mod implicit de AdGuardHome.", @@ -614,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Cauza: {{reason}}", "check_service": "Nume servici: {{service}}", + "check_hostname": "Nume gazdă sau nume de domeniu", + "check_client_id": "Identificator client (ClientID sau adresă IP)", + "check_enter_client_id": "Introduceți identificatorul clientului", + "check_dns_record": "Selectați tipul de înregistrare DNS", "service_name": "Numele serviciului", "check_not_found": "Nu se găsește în listele de filtre", "client_confirm_block": "Sunteți sigur că doriți să blocați clientul \"{{ip}}\"?", @@ -646,7 +656,7 @@ "blocklist": "Lista de blocări", "milliseconds_abbreviation": "ms", "cache_size": "Mărime cache", - "cache_size_desc": "Mărimea cache-ului DNS (în bytes). Pentru a dezactiva caching-ul, lăsați gol.", + "cache_size_desc": "Mărimea cache-ului DNS (în bytes). Pentru a dezactiva caching-ul, setați la 0.", "cache_ttl_min_override": "Suprascrieți minimum TTL", "cache_ttl_max_override": "Suprascrieți maximum TTL", "enter_cache_size": "Introduceți mărimea cache-ului (bytes)", @@ -675,7 +685,7 @@ "use_saved_key": "Folosiți cheia salvată anterior", "parental_control": "Control Parental", "safe_browsing": "Navigare în siguranță", - "served_from_cache": "{{value}} (furnizat din cache)", + "served_from_cache_label": "Furnizat din cache", "form_error_password_length": "Parola trebuie să aibă între {{min}} și {{max}} caractere", "anonymizer_notification": "<0>Nota: Anonimizarea IP este activată. Puteți să o dezactivați în <1>Setări generale.", "confirm_dns_cache_clear": "Sunteți sigur că doriți să ștergeți memoria cache DNS?", diff --git a/client/src/__locales/ru.json b/client/src/__locales/ru.json index f8cee90e..85715714 100644 --- a/client/src/__locales/ru.json +++ b/client/src/__locales/ru.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Причина: {{reason}}", "check_service": "Название сервиса: {{service}}", + "check_hostname": "Имя хоста или домена", + "check_client_id": "Идентификатор клиента (ClientID или IP-адрес)", + "check_enter_client_id": "Введите идентификатор клиента", + "check_dns_record": "Выберите тип DNS-записи", "service_name": "Имя сервиса", "check_not_found": "Не найдено в вашем списке фильтров", "client_confirm_block": "Вы уверены, что хотите заблокировать клиента «{{ip}}»?", @@ -651,8 +655,11 @@ "safe_search": "Безопасный поиск", "blocklist": "Чёрный список", "milliseconds_abbreviation": "мс", + "cache_enabled": "Включить кеш", + "cache_enabled_desc": "Сохранять локально ответы DNS.", "cache_size": "Размер кеша", - "cache_size_desc": "Размера кеша DNS (в байтах). Чтобы отключить кэширование, оставьте поле пустым.", + "cache_size_validation": "Если кеш включен, его размер должен быть больше нуля.", + "cache_size_desc": "Размер кеша DNS (в байтах). Чтобы отключить кеширование, установите значение 0.", "cache_ttl_min_override": "Переопределить минимальный TTL", "cache_ttl_max_override": "Переопределить максимальный TTL", "enter_cache_size": "Введите размер кеша (в байтах)", diff --git a/client/src/__locales/si-lk.json b/client/src/__locales/si-lk.json index ddd898bb..c4e36fc5 100644 --- a/client/src/__locales/si-lk.json +++ b/client/src/__locales/si-lk.json @@ -1,15 +1,26 @@ { "client_settings": "අනුග්‍රාහකයේ සැකසුම්", + "example_upstream_reserved": "ක්‍රමවේද ගෙන එන <0>නිශ්චිත වසම සඳහා;", + "example_multiple_upstreams_reserved": "නිශ්චිත වසම් <0>සඳහා බහු උඩුගං;", "example_upstream_comment": "අදහසක්.", + "upstream_parallel": "සමාන්තර විමසුම් යොදා ගනිමින් සියලුම උඩුගත කරන සේවාදායක එකවර විමසුම් කිරීම මගින් විමසුම් වේගය වැඩිදියුණු කර ගත හැක.", "parallel_requests": "සමාන්තර ඉල්ලීම්", "load_balancing": "ධාරිතාව තුලනය", + "load_balancing_desc": "එක වරකට එක උඩුගත කරන සේවාදායකයක් විමසුම් කරන්න.
AdGuard Home උඩුගත කරන සේවාදායකයන් ගණනාව සහ සාමාන්‍ය විමසුම් කාලය පහත් කළ වන සේවාදායකය විශේෂිත ලෙස තෝරා ගැනීමට ඇස්තමේන්තු රැඳවුම් ප්‍රොසිජර් ක්‍රමයක් භාවිතා කරයි.", + "bootstrap_dns": "Bootstrap DNS සේවාදායකය", + "bootstrap_dns_desc": "DNS සේවාදායකයේ IP ලිපින, ඔබ උඩුගත සේවා මෙන්ම DoH/DoT විසඳුම් IP ලිපින නිර්දන් කරයි. মন্তব্য සිද්ධ නොවේ.", + "fallback_dns_title": "සමාන්‍ය DNS සේවාදායක", + "fallback_dns_desc": "උඩුගත DNS සේවාදායක සක්‍රිය නොවීමේදී භාවිතා කරන සමාන්‍ය DNS සේවාදායකවල ලැයිස්තුව. මෙම සංකේතය ඉහත ප්‍රධාන උඩුගත සේවාදායක ක්ෂේත්‍රයේ සමඟ ඒකසමාන වේ.", + "fallback_dns_placeholder": "ඒක පිරික්සුම් සමාන්‍ය DNS සේවාදායකයකු සෑදීම", "local_ptr_title": "පෞද්ගලික ප්‍රතිවර්ත ව.නා.ප. සේවාදායක", - "local_ptr_desc": "ස්ථානීය PTR විමසුම් සඳහා ඇඩ්ගාර්ඩ් හෝම් භාවිතා කරන ව.නා.ප. සේවාදායක. මෙම සේවාදායක පුද්ගලික අ.ජා.කෙ. ලිපින පරාසවල PTR විමසුම් විසඳීමට භාවිතා කරයි, උදාහරණයක් ලෙස ප්‍රතිවර්ත ව.නා.ප. භාවිතයෙන් \"192.168.12.34\". මෙය සකසා නැති නම්, ඇඩ්ගාර්ඩ් හෝම් හි ලිපින සඳහා හැරුනු විට ඔබගේ මෙහෙයුම් පද්ධතියේ පෙරනිමි ව.නා.ප. විසදුම්වල ලිපින භාවිතා කරයි.", + "local_ptr_desc": "AdGuard Home හි පුද්ගලික PTR, SOA සහ NS ඉල්ලීම් සඳහා භාවිතායේ පවතින වා.නා.ප. සේවාදාකයන්. ඉල්ලීමක් පුද්ගලික ලෙස සැලකෙයි එය පුද්ගලික IP පරාසයන් (\"192.168.12.34\" වැනි) ඇතුළුව ඇති ARPA වාසමානේ යාමක් සඳහා ඉල්ලීමක් යැවී එය පුද්ගලික IP ලිපිනයක් ඇති පාරිභෝගිකයකු ලැබේ. එය සකස් නොකිරීමේදී, ඔබේ මෙහෙයුම් පද්ධතියේ දේශපාලනකරණ සේවාදාකයන් භාවිතා කරයි, AdGuard Home IP ලිපිනයන් හැර.", "local_ptr_default_resolver": "පෙරනිමි පරිදි, ඇඩ්ගාර්ඩ් හෝම් පහත ප්‍රතිවර්ත ව.නා.ප. පිළිවිසඳු භාවිතා කරයි: {{ip}}.", "local_ptr_no_default_resolver": "ඇඩ්ගාර්ඩ් හෝම් හට මෙම පද්ධතිය සඳහා සුදුසු පුද්ගලික ප්‍රතිවර්ත ව.නා.ප. පිළිවිසඳු නිශ්චය කරගත නොහැකි විය.", "local_ptr_placeholder": "පේළියකට අ.ජා.කෙ. ලිපිනය බැගින් ලියන්න", "resolve_clients_title": "අනුග්‍රාහකවල අ.ජා.කෙ. ලිපින ප්‍රතිවර්ත විසඳීම සබල කරන්න", + "resolve_clients_desc": "පාරිභෝගිකයන්ගේ IP නාමාවලිය ආපසු ආශ්‍රිත කිරීමට PTR විමසුම් යවා මාදිලීන්ට අනුව සම්බන්ධතා අහඹු විකල්ප සඳහා යොදා ගන්න (ගෙන් සේවාදායකය සඳහා ප්‍රායෝගික DNS සේවාදායකයන්, පොදු IP ලිපිනයක් ඇති ගෙන් සේවාදායකය).", "use_private_ptr_resolvers_title": "පෞද්. ප්‍රතිවර්ත ව.නා.ප. පිළිවිසඳු භාවිතය", + "use_private_ptr_resolvers_desc": "පුද්ගලික IP ලිපිනයන් අඩංගු ARPA වාසමානේ සඳහා PTR, SOA සහ NS ඉල්ලීම් විසඳා ගැනීම සඳහා පුද්ගලික පෝෂක සේවාදායකය, DHCP, /etc/hosts ආදී व्यापक මාර්ග ආශ්‍රිත විසඳන්න. අබල කරන්නේ නම්, AdGuard Home සියලුම එවැනි ඉල්ලීම් සඳහා NXDOMAIN වශයෙන් පිළිතුරු දෙනු ඇත.", "check_dhcp_servers": "ග.ධා.වි.කෙ. සේවාදායක පරීක්‍ෂා කරන්න", "save_config": "වින්‍යාසය සුරකින්න", "enabled_dhcp": "ග.ධා.වි.කෙ. සේවාදායකය සබල කෙරිණි", @@ -30,6 +41,7 @@ "dhcp_ipv6_settings": "ග.ධා.වි.කෙ. IPv6 සැකසුම්", "form_error_required": "ඇවැසි ක්‍ෂේත්‍රයකි", "form_error_ip4_format": "IPv4 ලිපිනය වලංගු නොවේ", + "form_error_ip4_gateway_format": "ගේට්වේ ගැලිමයේ වලංගු නොවන IPv4 ලිපිනය", "form_error_ip6_format": "වලංගු නොවන IPv6 ලිපිනයකි", "form_error_ip_format": "අ.ජා.කෙ. (IP) ලිපිනය වලංගු නොවේ", "form_error_mac_format": "මා.ප්‍ර.පා. ලිපිනය වලංගු නොවේ", @@ -37,10 +49,14 @@ "form_error_server_name": "සේවාදායකයේ නම වලංගු නොවේ", "form_error_subnet": "\"{{cidr}}\" අනුජාලය හි \"{{ip}}\" අ.ජා.කෙ. ලිපිනය අඩංගු නොවේ", "form_error_positive": "0 ට වඩා වැඩි විය යුතුය", + "form_error_gateway_ip": "කලාවලට ගේට්වේ IP ලිපිනයක් නොඑන්න", "out_of_range_error": "\"{{start}}\"-\"{{end}}\" පරාසයෙන් පිට විය යුතුය", "lower_range_start_error": "පරාසය ආරම්භයට වඩා අඩු විය යුතුය", "greater_range_start_error": "පරාසය ආරම්භයට වඩා වැඩි විය යුතුය", "subnet_error": "ලිපින එක් අනුජාලයක තිබිය යුතුය", + "gateway_or_subnet_invalid": "උපජාල කාණ්ඩය වලංගු නොවේ", + "dhcp_form_gateway_input": "සේවා ප්‍රවර්ධක දොරටු IP අංකය", + "dhcp_form_subnet_input": "උපජාල කාණ්ඩය", "dhcp_form_range_title": "අ.ජා.කෙ. (IP) ලිපින පරාසය", "dhcp_form_range_start": "පරාසය ආරම්භය", "dhcp_form_range_end": "පරාසය අවසානය", @@ -58,7 +74,9 @@ "dhcp_dynamic_ip_found": "ඔබගේ පද්ධතිය <0>{{interfaceName}} අතුරු මුහුණත සඳහා ගතික අන්තර්ජාල කෙටුම්පත් (IP) ලිපින වින්‍යාසය භාවිතා කරයි. ග.ධා.වි.කෙ. සේවාදායකය භාවිතා කිරීම සඳහා ස්ථිතික අ.ජා. කෙ. ලිපිනයක් සැකසිය යුතුය. ඔබගේ වර්තමාන අ.ජා. කෙ. ලිපිනය <0>{{ipAddress}} වේ. ඔබ \"ග.ධා.වි.කෙ. සබල කරන්න\" බොත්තම එබුවහොත් ඇඩ්ගාර්ඩ් හෝම් ස්වයංක්‍රීයව මෙම අ.ජා. කෙ. ලිපිනය ස්ථිතික ලෙස සකසනු ඇත.", "dhcp_lease_added": "\"{{key}}\" ස්ථිර කල්පැවරීම එකතු කෙරිණි", "dhcp_lease_deleted": "\"{{key}}\" ස්ථිර කල්පැවරීම මකා දැමිණි", + "dhcp_lease_updated": "ස්ථිර කල්පැවරීම \"{{key}}\" සාර්ථකව යාවත්කාල කර ඇත", "dhcp_new_static_lease": "නව ස්ථිර කල්පැවරීම", + "dhcp_edit_static_lease": "ස්ථිර කල්පැවරීම සංස්කරණය කරන්න", "dhcp_static_leases_not_found": "ග.ධා.වි.කෙ. ස්ථිර කල්පැවරීම් නැත", "dhcp_add_static_lease": "ස්ථිර කල්පැවරීමක් යොදන්න", "dhcp_reset_leases": "කල්පැවරීම් යළි සකසන්න", @@ -102,6 +120,8 @@ "stats_malware_phishing": "අවහිර කළ ද්වේශාංග/තතුබෑම්", "stats_adult": "අවහිර කළ වැඩිහිටි වියමන අඩවි", "stats_query_domain": "ප්‍රචලිත විමසන ලද වසම්", + "for_last_hours": "අවසන් {{count}} ත්‍රාසයේ සදහා", + "for_last_hours_plural": "අවසන් {{count}} පැයක් සදහා", "for_last_days": "පසුගිය දවස් {{count}} සඳහා", "for_last_days_plural": "පසුගිය දවස් {{count}} සඳහා", "stats_disabled": "සංඛ්‍යාලේඛන අබල කර ඇත. එය <0>සැකසුම් පිටුවෙන් සබල කළ හැකිය.", @@ -112,6 +132,8 @@ "top_clients": "ප්‍රචලිත අනුග්‍රාහක", "no_clients_found": "අනුග්‍රාහක හමු නොවිණි", "general_statistics": "පොදු සංඛ්‍යාලේඛන", + "top_upstreams": "නිෂ්පාදන සම්පුර්ණ", + "no_upstreams_data_found": "උඩුගතදත්ත සොයාගැනීමක් නැත", "number_of_dns_query_days": "පසුගිය දවස් {{count}} සඳහා සැකසූ ව.නා.ප. විමසුම් ගණන", "number_of_dns_query_days_plural": "පසුගිය දවස් {{count}} සඳහා සැකසූ ව.නා.ප. විමසුම් ගණන", "number_of_dns_query_hours": "පසුගිය පැය {{count}} සඳහා සැකසූ ව.නා.ප. විමසුම් ගණන", @@ -122,6 +144,7 @@ "enforced_save_search": "ආරක්‍ෂිත සෙවීම බලාත්මක කළ", "number_of_dns_query_to_safe_search": "ආරක්‍ෂිත සෙවීම බලාත්මක කළ සෙවුම් යන්ත්‍ර සඳහා ව.නා.ප. ඉල්ලීම් ගණන", "average_processing_time": "සාමාන්‍ය සැකසුම් කාලය", + "average_upstream_response_time": "උඩුගත කරන සේවාදායකයේ සාමාන්‍ය පිළිතුරු කාලය", "response_time": "ප්‍රතිචාර කාලය", "average_processing_time_hint": "ව.නා.ප. ඉල්ලීමක් සැකසීමේ සාමාන්‍ය කාලය මිලි තත්පර වලින්", "block_domain_use_filters_and_hosts": "පෙරහන් හා සත්කාරක ගොනු භාවිතයෙන් වසම් අවහිර කරන්න", @@ -146,6 +169,8 @@ "upstream_dns_help": "පේළියකට එක් සේවාදායක ලිපිනය බැගින් ඇතුල් කරන්න. upstream ව.නා.ප. (DNS) \n සේවාදායක වින්‍යාසගත කිරීම ගැන තව දැනගන්න.", "upstream_dns_configured_in_file": "{{path}} හි වින්‍යාසගත කර ඇත", "test_upstream_btn": "අත්හදා බලන්න", + "upstreams": "උඩුගත ධාරාව", + "upstream": "උඩුගත", "apply_btn": "යොදන්න", "disabled_filtering_toast": "පෙරීම අබල කෙරිණි", "enabled_filtering_toast": "පෙරීම සබල කෙරිණි", @@ -201,20 +226,25 @@ "example_upstream_udp": "සාමාන්‍ය ව.නා.ප. (UDP, සත්කාරක-නම හරහා);", "example_upstream_dot": "සංකේතිත <0>TLS-මගින්-ව.නා.ප.;", "example_upstream_doh": "සංකේතිත <0>HTTPS-මගින්-ව.නා.ප.;", + "example_upstream_doh3": "සිනිළි <0>HTTP/3 ප්‍රධාන විකල්පය හා HTTP/2 හෝ ඔස්සේ භාවිත නොකරන DNS-over-HTTPS;", "example_upstream_doq": "සංකේතිත <0>QUIC-මගින්-ව.නා.ප.;", "example_upstream_sdns": "<1>DNSCrypt හෝ <2>HTTPS-මගින්-ව.නා.ප. පිළිවිසඳු සඳහා <0>ව.නා.ප. මුද්දර;", "example_upstream_tcp": "සාමාන්‍ය ව.නා.ප. (TCP/ස.පා.කෙ. හරහා);", "example_upstream_tcp_port": "සාමාන්‍ය ව.නා.ප. (TCP හරහා, තොට සමඟ);", "example_upstream_tcp_hostname": "සාමාන්‍ය ව.නා.ප. (ස.පා.කෙ., සත්කාරක-නම හරහා);", "all_lists_up_to_date_toast": "සියළුම ලැයිස්තු දැනටමත් යාවත්කාලීනයි", + "updated_upstream_dns_toast": "උඩුගත කරන සේවාදායක සාර්ථකව සුරකින ලදි", "dns_test_ok_toast": "සඳහන් කළ ව.නා.ප. සේවාදායක නිවැරදිව ක්‍රියා කරයි", "dns_test_not_ok_toast": "\"{{key}}\" සේවාදායක(ය): භාවිතා කිරීමට නොහැකි විය, ඔබ එය නිවැරදිව ලියා ඇතිදැයි පරීක්‍ෂා කරන්න", + "dns_test_parsing_error_toast": "කොටස {{section}}: වාක්‍ය {{line}}: භාවිතා කළ නොහැක,කරුණාකර ඔබට එය නිවැරදිව සම්මත කර ඇති දැයි පරීක්‍ෂා කරන්න", + "dns_test_warning_toast": "උඩුගත \"{{key}}\" ටෙස්ට් ඉල්ලීම්වලට ප්‍රතිචාර නොදෙයි හා සරිලන ලෙස ක්‍රියා නොකරනු ඇත", "unblock": "අනවහිර", "block": "අවහිර", "disallow_this_client": "මෙම අනුග්‍රාහකයට ඉඩ නොදෙන්න", "allow_this_client": "මෙම අනුග්‍රාහකයට ඉඩ දෙන්න", "block_for_this_client_only": "මෙම අනුග්‍රාහකයට අවහිර කරන්න", "unblock_for_this_client_only": "මෙම අනුග්‍රාහකයට පමණක් අනවහිර කරන්න", + "add_persistent_client": "නිබඳිත පාරිභෝගිකයා ලෙස එකතු කරන්න", "time_table_header": "වේලාව", "date": "දිනය", "domain_name_table_header": "වසම් නාමය", @@ -261,6 +291,12 @@ "custom_ip": "අභිරුචි අ.ජා.කෙ.", "blocking_ipv4": "IPv4 අවහිර කිරීම", "blocking_ipv6": "IPv6 අවහිර කිරීම", + "blocked_response_ttl": "ප්‍රතිචාරය මගින් අවහිර කර ඇති TTL", + "blocked_response_ttl_desc": "සු filtr ම කළ ලිපිනයක් මහිහි කළයක් සකස් කරයිාරුවන්", + "form_enter_blocked_response_ttl": "අසැක කරන මගුලකෙන් කාලය ඇතුලත් කරන්න (තත්පර)", + "upstream_timeout": "උඩුගත කරන සේවාදායකයේ කාල සීමාව", + "upstream_timeout_desc": "උඩුගත කරන සේවාදායකයෙන් පිළිතුරු පෑමට ආරක්ෂිතව රැඳී සිටින තත්ත්වය ඉවසන විනාඩි ගණන විශේෂිත කරයි", + "form_enter_upstream_timeout": "උඩුගත කරන සේවාදායකයේ කාල සීමාව තෝරන්න.", "dnscrypt": "DNSCrypt", "dns_over_https": "HTTPS-මගින්-ව.නා.ප.", "dns_over_tls": "TLS-මගින්-ව.නා.ප.", @@ -275,9 +311,19 @@ "form_enter_rate_limit": "අනුපාත සීමාව ඇතුල් කරන්න", "rate_limit": "අනුපාත සීමාව", "edns_enable": "EDNS අනුග්‍රාහක අනුජාලය සබල කරන්න", + "edns_cs_desc": "උඩුගත විමසුම් සඳහා EDNS Client Subnet විකල්පය (ECS) එකතු කරන්න සහ විමසුම් ලොගයේ සේවාදායකයින් විසින් යැව්ම කළ වටිනාකම් ලොග් කරන්න.", "edns_use_custom_ip": "EDNS සඳහා අභිරුචි අ.ජා.කෙ. යොදාගන්න", "edns_use_custom_ip_desc": "EDNS සඳහා අභිරුචි අ.ජා.කෙ. භාවිතයට ඉඩදෙන්න", "rate_limit_desc": "එක් අනුග්‍රාහකයකට ඉඩ දී ඇති තත්පරයට ඉල්ලීම් ගණන. එය 0 ලෙස සැකසීම යනුවෙන් අදහස් කරන්නේ සීමාවක් නැති බවයි.", + "rate_limit_subnet_len_ipv4": "IPv4 ලිපින සදහා උපසර්න පෙරහන් දිග", + "rate_limit_subnet_len_ipv4_desc": "සමත් කරණය සීමා කරයින් සදහන් කිරීම සඳහා, IPv4 ලිපින සඳහා උපසර්න පෙරහන් දිග. පෙරහනේ පදනම 24 වේ", + "rate_limit_subnet_len_ipv4_error": "IPv4 අඩවියේ ප්‍රතිමා අකුණු දිග 0 සහ 32 අතර විය යුතුය", + "rate_limit_subnet_len_ipv6": "IPv6 ලිපින සඳහා අඩවිය අකුණු දිග", + "rate_limit_subnet_len_ipv6_desc": "අඩවිය අකුණු දිගක් සමඟ අවම සීමා කිරීමට භාවිතා කරන IPv6 ලිපින සඳහා. ප්‍රතිමන් 56 වනු ඇත", + "rate_limit_subnet_len_ipv6_error": "IPv6 අඩවියේ ප්‍රතිමා අකුණු දිග 0 සහ 128 අතර විය යුතුය", + "form_enter_rate_limit_subnet_len": "අවම සීමා කිරීමට අඩවියේ ආකලන අකුණු දිග ඇතුළත් කරන්න", + "rate_limit_whitelist": "අනුපාත සීමා ඉඩදෙන ලැයිස්තුව", + "rate_limit_whitelist_desc": "අ.ජා.කෙ. ලිපින (IP) අනුපාත සීමාවෙන් බැහැර කරයි.", "rate_limit_whitelist_placeholder": "පේළියකට අ.ජා.කෙ. ලිපිනය බැගින් ලියන්න", "blocking_ipv4_desc": "අවහිර කළ A ඉල්ලීමක් සඳහා ආපසු එවිය යුතු අ.ජා.කෙ. (IP) ලිපිනය", "blocking_ipv6_desc": "අවහිර කළ AAAA ඉල්ලීමක් සඳහා ආපසු එවිය යුතු අ.ජා.කෙ. (IP) ලිපිනය", @@ -382,6 +428,9 @@ "encryption_hostnames": "සත්කාරක නාම", "encryption_reset": "සංකේතාංකන සැකසුම් යළි පිහිටුවීමට අවශ්‍ය බව ඔබට විශ්වාස ද?", "encryption_warning": "අවවාදයයි", + "encryption_plain_dns_enable": "ප්ලේන් DNS සබල කරන්න", + "encryption_plain_dns_desc": "ප්ලේන් DNS ඇත්තෙන්ම සක්‍රීය වේ. ඔබට එය අබල කිරීමෙන් සියලුම උපාංගයන් සිංහලෙන් DNS භාවිතා කිරීමට හෝ කරන්න. එය සඳහා, අත්‍යාවශ්‍යය වශයෙන් මින් කිහිපයක් සක්‍රීය කළ යුතුය.", + "encryption_plain_dns_error": "ප්ලේන් DNS අබල කිරීමට, අනිවාර්ය වශයෙන් කුමක් හෝ සංකේතාත්මක DNS කෙටුම්පතක් සක්‍රීය කරන්න.", "topline_expiring_certificate": "ඔබගේ SSL සහතිකය කල් ඉකුත්වීමට ආසන්න වී ඇත. <0>සංකේතන සැකසුම් යාවත්කාල කරන්න.", "topline_expired_certificate": "ඔබගේ SSL සහතිකය කල් ඉකුත් වී ඇත. <0>සංකේතන සැකසුම් යාවත්කාල කරන්න.", "form_error_port_range": "80-65535 පරාසය හි තොටක අගයක් ඇතුල් කරන්න", @@ -421,6 +470,7 @@ "form_add_id": "හඳුන්වනයක් එකතු කරන්න", "form_client_name": "අනුග්‍රාහකයේ නම ඇතුල් කරන්න", "name": "නම", + "client_name": "අනුග්‍රාහකය {{id}}", "client_global_settings": "ගෝලීය සැකසුම් භාවිතා කරන්න", "client_deleted": "\"{{key}}\" අනුග්‍රාහකය සාර්ථකව ඉවත් කෙරිණි", "client_added": "\"{{key}}\" අනුග්‍රාහකය සාර්ථකව එකතු කෙරිණි", @@ -428,6 +478,7 @@ "clients_not_found": "අනුග්‍රාහක හමු නොවිණි", "client_confirm_delete": "\"{{key}}\" අනුග්‍රාහකය ඉවත් කිරීමට අවශ්‍ය බව ඔබට විශ්වාසද?", "list_confirm_delete": "මෙම ලැයිස්තුව ඉවත් කිරීමට අවශ්‍ය බව ඔබට විශ්වාස ද?", + "auto_clients_title": "ධාවනකාල අනුග්‍රාහක", "auto_clients_desc": "ඇඩ්ගාර්ඩ් හෝම් භාවිතා කරන හෝ භාවිතයට ඉඩ තිබෙන උපාංගවල අ.ජා.කෙ. (IP) ලිපින පිළිබඳ තොරතුරු. මෙම තොරතුරු සත්කාරක ගොනු, ප්‍රතිවර්ත ව.නා.ප. ආදී මූලාශ්‍ර කිහිපයකින් රැස් කෙරේ.", "access_title": "ප්‍රවේශ සැකසුම්", "access_desc": "මෙහි දී ඔබට ඇඩ්ගාර්ඩ් හෝම් ව.නා.ප. සේවාදායකයට ප්‍රවේශ වී‌‌‌‌මේ නීති වින්‍යාසගත කිරීමට හැකිය", @@ -436,6 +487,7 @@ "access_disallowed_title": "ඉඩ නොදෙන අනුග්‍රාහක", "access_disallowed_desc": "අන.ජා.(CIDR), අ.ජා.කෙ. ලිපින හෝ අනුග්‍රාහක හැඳු. ලේඛනයකි. මෙහි නිවේශිත ඇත්නම්, ඇඩ්ගාර්ඩ් හෝම් එම අනුග්‍රාහක වලින් ඉල්ලීම් අත්හරිනු ඇත. ඉඩ දෙන අනුග්‍රාහක කොටසේ නිවේශිත තිබේ නම්, මෙම ක්‍ෂේත්‍රය නොසලකා හරිනු ඇත.", "access_blocked_title": "ඉඩ නොදෙන වසම්", + "access_blocked_desc": "මෙය පෙරලුවලට වඩා නොවේ. AdGuard Home, මෙම වසමට සමාන DNS විමසුම් වලින් තොරව ඉවත් කරයි, සහ මෙම විමසුම් විමසුම් ලොග් එකේද එක් නොවේ. ඔබ නිශ්චිත ආකාරයට වසමන්, වර්ජ්ජ නීති, හෝ URL විමසුම් නීති සංඛ්‍යාගත කිරීමට කැමැත්ත දක්වන ලෙසද ඔබට හැක.", "access_settings_saved": "ප්‍රවේශ වීමේ සැකසුම් සාර්ථකව සුරකින ලදි", "updates_checked": "ඇඩ්ගාර්ඩ් හෝම් හි නව අනුවාදයක් තිබේ", "updates_version_equal": "ඇඩ්ගාර්ඩ් හෝම් යාවත්කාලීනයි", @@ -445,9 +497,11 @@ "setup_dns_privacy_1": "<0>TLS-මගින්-ව.නා.ප. සඳහා <1>{{address}}.", "setup_dns_privacy_2": "<0>HTTPS-මගින්-ව.නා.ප. සඳහා <1>{{address}}.", "setup_dns_privacy_3": "<0>මෙහි ඔබට භාවිතා කළ හැකි මෘදුකාංග ලැයිස්තුවක් ඇත.", + "setup_dns_privacy_4": "iOS 14 හෝ macOS Big Sur උපාංගයක ඔබට විශේෂ '.mobileconfig' ගොනුවක් බාගන්නට හැකි අතර එය DNS සැකසුම් සඳහා DNS-over-HTTPS හෝ DNS-over-TLS සේවාදායකයන් එක් කරයි.", "setup_dns_privacy_android_1": "TLS-මගින්-ව.නා.ප සහාය සමගම ඇන්ඩ්‍රොයිඩ් 9 පැමිණේ. එය වින්‍යාස කිරීමට, සැකසුම් → ජාලය හා අන්තර්ජාලය → වැඩිදුර → පෞද්. ව.නා.ප. වෙත ගොස් එහි ඔබගේ වසමේ නම යොදන්න.", "setup_dns_privacy_android_2": "<1>HTTPS-මගින්-ව.නා.ප. හා <1>TLS-මගින්-ව.නා.ප. සඳහා <0>ඇන්ඩ්‍රොයිඩ් සඳහා ඇඩ්ගාර්ඩ් සහාය දක්වයි.", "setup_dns_privacy_android_3": "<0>ඉන්ට්‍රා විසින් <1>HTTPS-මගින්-ව.නා.ප සහාය ඇන්ඩ්‍රොයිඩ් සඳහා එකතු කරයි.", + "setup_dns_privacy_ios_1": "<0>DNSCloak <1>DNS-over-HTTPS අනුකූල වේ, නමුත් ඔබේම සේවාදායකය භාවිතා කිරීමට සකස් කරන්න, ඔබට ඒ සඳහා <2>DNS Stamp හි සෑදීමට අවශ්‍ය වේ.", "setup_dns_privacy_ios_2": "<1>HTTPS-මගින්-ව.නා.ප. හා <1>TLS-මගින්-ව.නා.ප. සඳහා <0>අයිඕඑස් සඳහා ඇඩ්ගාර්ඩ් සහාය දක්වයි.", "setup_dns_privacy_other_title": "වෙනත් ක්‍රියාවට නැංවූ දෑ", "setup_dns_privacy_other_1": "ඇඩ්ගාර්ඩ් හෝම් මෘදුකාංගයට ඕනෑම වේදිකාවක ආරක්‍ෂිත ව.නා.ප. අනුග්‍රාහකයක් ලෙස ක්‍රියාත්මක වීමට ද හැකිය.", @@ -468,6 +522,7 @@ "rewrite_applied": "නැවත ලිවීමේ නීතිය යොදා ඇත", "rewrite_hosts_applied": "සත්කාරක ගොනුවක නීතියකින් නැවත ලියා ඇත", "dns_rewrites": "ව.නා.ප. නැවත ලිවීම්", + "form_domain": "වසම නම හෝ තරු සලකුණ යොදන්න", "form_answer": "අ.ජා.කෙ. (IP) ලිපිනය ‌හෝ වසම ඇතුල් කරන්න ", "form_error_domain_format": "වලංගු නොවන වසම් ආකෘතියකි", "form_error_answer_format": "වලංගු නොවන උත්තර ආකෘතියකි", @@ -495,6 +550,7 @@ "interval_days_plural": "දවස් {{count}}", "domain": "වසම", "ecs": "ECS", + "punycode": "Punycode", "answer": "උත්තරය", "filter_added_successfully": "පෙරහන සාර්ථකව එකතු කෙරිණි", "filter_removed_successfully": "ලැයිස්තුව සාර්ථකව ඉවත් කෙරිණි", @@ -535,15 +591,19 @@ "blocked_by_response": "ප්‍රතිචාරය අන්. නාමයක් (CNAME) හෝ අ.ජා.කෙ. මගින් අවහිර කර ඇත", "blocked_by_cname_or_ip": "අන්. නාමයක් (CNAME) හෝ අ.ජා.කෙ. මගින් අවහිර කර ඇත", "try_again": "යළි උත්සාහය", + "domain_desc": "නැවත අලුත් කල යුතු වසම නම හෝ තරු සලකුණ යොදන්න.", "example_rewrite_domain": "මෙම වසම් නාමය සඳහා පමණක් ප්‍රතිචාර නැවත ලියයි.", "example_rewrite_wildcard": "<0>උදාහරණය.ලංකා සහ එහි සියළුම උප වසම් සඳහා ප්‍රතිචාර නැවත ලියයි.", "rewrite_ip_address": "අ.ජා.කෙ. ලිපිනය: A හෝ AAAA ප්‍රතිචාරයකට අ.ජා.කෙ. ලිපිනයක් යොදන්න", "rewrite_domain_name": "වසම් නාමය: අන්වර්ථ නාමයක් (CNAME) එක් කරන්න", + "rewrite_A": "<0>A: විශේෂ අගය, උඩුගත කිරීමෙන් <0>A වාර්තා තබන්න", + "rewrite_AAAA": "<0>AAAA: විශේෂ අගය, උඩුගත කිරීමෙන් <0>AAAA වාර්තා තබන්න", "disable_ipv6": "IPv6 ලිපින විසඳීම අබල කරන්න", "disable_ipv6_desc": "IPv6 ලිපින (AAAA වර්ගය) සඳහා වන සියළුම ව.නා.ප. විමසුම් අතහැර දමයි. HTTPS ප්‍රතිචාර වලින් IPv6 ඉඟි ඉවත් කරයි.", "fastest_addr": "වේගවත්ම අන්තර්ජාල කෙටුම්පතක (IP) ලිපිනය", - "fastest_addr_desc": "සියළුම ව.නා.ප. සේවාදායක වලින් විමසා එම ප්‍රතිචාර අතරින් වේගවත්ම අ.ජා.කෙ. ලිපිනය ලබා දෙයි. සියළුම ව.නා.ප. ප්‍රතිචාර සඳහා ඇඩ්ගාර්ඩ් හෝම් රැඳී සිටිය යුතු බැවින් මෙය ව.නා.ප. විමසුම් මන්දගාමී කරන නමුත් සමස්ත සම්බන්ධතාවය වැඩි දියුණු කරයි.", + "fastest_addr_desc": "උඩුගත කරන සියලු DNS සේවාදායකයන්ගෙන් පිළිතුරු ලබා ගැනීමට කාලය ගණනය කරයි. TCP සම්බන්ධතාවයේ වේගය මනිමින් ඉක්මන්සම සේවාදායකයේ IP ලිපිනය පිළිතුරු ලෙස ලබා දෙයි.
එක් හෝ කීපයකුත් උඩුගත කරන සේවාදායක පොළඹීම නොමැතිනම්, මෙම ක්‍රමය DNS විමසුම් දැක්මට කාර්යක්ෂම ලෙස මෝඩින්ට පත්වේ. ඔබගේ උඩුගත කරන සේවාදායක සවිකරනු ලබන බව සහ කාල සීමාව පහත් බවට හැකි මොහොතේම නිතිකාලෙන් පරීක්ෂා කරන්න.", "autofix_warning_text": "ඔබ \"නිරාකරණය\" යන්න එබුවහොත්, ඔබගේ පද්ධතිය ඇඩ්ගාර්ඩ් හෝම් ව.නා.ප. සේවාදායකය භාවිතයට වින්‍යාසගත කෙරෙනු ඇත.", + "autofix_warning_list": "මෙම කාර්යාල කරනු ඇත: <0>සැ ව.නා.ප. ඡේදකය නශ්කරන්න <0>ව.නා.ප. සේවාදායක ලිපිනය 127.0.0.1 සඳහා සකසන්න. <0>/etc/resolv.conf යන ගැඹුරු සම්පූර්ණය මාරු කරන්න /run/systemd/resolve/resolv.conf සඳහා <0>සැ වෙ.නා.ප. ඡේදකය නශ්කරන්න (systemd-resolved සේවාව නැවත පුරෙන්න)", "autofix_warning_result": "ප්‍රතිඵලයක් ලෙස ඔබගේ පද්ධතියෙන් ලැබෙන සියළුම ව.නා.ප. ඉල්ලීම් මූලිකවම ඇඩ්ගාර්ඩ් හෝම් විසින් සකසනු ඇත.", "tags_title": "අනන්‍යන", "tags_desc": "අනුග්‍රාහකයට අනුරූප වන අනන්‍යන ඔබට තේරීමට හැකිය. ඒවා වඩාත් නිවැරදිව යෙදීමට \nඅනන්‍යන පෙරහන් නීති වලට ඇතුළත් කරන්න. <0>තව දැන ගන්න.", @@ -560,6 +620,10 @@ "check_cname": "අන්. නාමය (CNAME): {{cname}}", "check_reason": "හේතුව: {{reason}}", "check_service": "සේවාවෙහි නම: {{service}}", + "check_hostname": "සත්කාරක හෝ වසම් නාමය", + "check_client_id": "අනුග්‍රාහකයේ හඳුන්වනය (හැඳු. හෝ අ.ජා.කෙ. ලිපිනය)", + "check_enter_client_id": "අනුග්‍රාහකයේ හඳුන්වනය ලියන්න", + "check_dns_record": "ව.නා.ප. වාර්තා වර්ගය තෝරන්න", "service_name": "සේවාවේ නම", "check_not_found": "ඔබගේ පෙරහන් ලැයිස්තු තුළ නැත", "client_confirm_block": "{{ip}} අනුග්‍රාහකය අවහිර කිරීමට ඇවැසි බව ඔබට විශ්වාසද?", @@ -576,6 +640,7 @@ "list_updated": "ලැයිස්තු {{count}} ක් යාවත්කාල කෙරිණි", "list_updated_plural": "ලැයිස්තු {{count}} ක් යාවත්කාල කෙරිණි", "dnssec_enable": "DNSSEC සබල කරන්න", + "dnssec_enable_desc": "DNSSEC යුග්ම තීරු සෙවනේ සබැඳියෙන් පිළිබඳ අධ්‍යනය හා ප්‍රතිඵලය පරික්ෂා කරන්න (DNSSEC- සබල කළ ප්‍රතිලේඛකය අවශ්‍යයි).", "validated_with_dnssec": "DNSSEC සමඟ වලංගු කෙරිණි", "all_queries": "සියළුම විමසුම්", "show_blocked_responses": "අවහිර කර ඇත", @@ -591,12 +656,13 @@ "blocklist": "අවහිර කිරී‌‌‌‌‌මේ ලැයිස්තුව", "milliseconds_abbreviation": "මිලි තත්.", "cache_size": "නිහිතයෙහි ප්‍රමාණය", - "cache_size_desc": "ව.නා.ප. නිහිතයෙහි ප්‍රමාණය (බයිට). නිහිතය අබල කිරීමට, හිස්ව තබන්න.", + "cache_size_desc": "ව.නා.ප. නිහිතයේ ප්‍රමාණය (බයිට). නිහිතය අබල කිරීමට, 0 ලෙස තබන්න.", "cache_ttl_min_override": "අවම පව. කා. අභිබවන්න", "cache_ttl_max_override": "උපරිම පව. කා. අභිබවන්න", "enter_cache_size": "ව.නා.ප. නිහිතයෙහි ප්‍රමාණය යොදන්න (බයිට)", "enter_cache_ttl_min_override": "අවම පව. කා. (TTL) ඇතුල් කරන්න", "enter_cache_ttl_max_override": "උපරිම පව. කා. (TTL) ඇතුල් කරන්න", + "cache_ttl_min_override_desc": "DNS ප්‍රතිචාර කේෂ කිරීමේදී උඩුගත සේවාදායකයෙන් ලබා ගන්නා කෙටි පවත්නා කාලය (තත්පර) වටිනාකම් දිගු කරන්න.", "cache_ttl_max_override_desc": "ව.නා.ප. නිහිතයෙහි නිවේශිත සඳහා උපරිම පවත්නා කාලයක අගයක් (තත්.) සකසන්න.", "ttl_cache_validation": "නිහිතයෙහි පාගාගෙන යන අවම පව. කා. (TTL) උපරිමයට වඩා අඩු හෝ සමාන විය යුතුය", "cache_optimistic": "සර්වශුභවාදී නිහිතගතය", @@ -614,7 +680,7 @@ "click_to_view_queries": "විමසුම් බැලීමට ඔබන්න", "port_53_faq_link": "53 වන තොට බොහෝ විට \"DNSStubListener\" හෝ \"systemd-resolved\" සේවා භාවිතයට ගනු ලැබේ. කරුණාකර මෙය විසඳන්නේ කෙසේද යන්න පිළිබඳ <0>මෙම උපදෙස් කියවන්න.", "adg_will_drop_dns_queries": "ඇඩ්ගාර්ඩ් හෝම් මෙම අනුග්‍රාහකයේ සියළුම ව.නා.ප. විමසුම් අතහැර දමනු ඇත.", - "filter_allowlist": "අවවාදයයි: මෙම ක්‍රියාමාර්ගය ඉඩලත් අනුග්‍රාහක ලේඛන වලින්ද \"{{disallowed_rule}}\" නීතිය බැහැර කරයි.", + "filter_allowlist": "අවවාදයයි: මෙම ක්‍රියාමාර්ගය ඉඩලත් අනුග්‍රාහක ලැයිස්තු වලින් ද \"{{disallowed_rule}}\" නීතිය බැහැර කරයි.", "last_rule_in_allowlist": "\"{{disallowed_rule}}\" නීතිය බැහැර කිරීම \"ඉඩලත් අනුග්‍රාහක\" ලේඛනය අබල කරන බැවින් මෙම අනුග්‍රාහකය ඉඩ නොදීමට නොහැකිය.", "use_saved_key": "පෙර සුරැකි යතුර භාවිතා කරන්න", "parental_control": "දෙමාපිය පාලනය", @@ -651,11 +717,21 @@ "ignore_query_log": "විමසුම් සටහනට මෙම අනුග්‍රාහකය යොදන්න එපා", "ignore_statistics": "සංඛ්‍යාලේඛනයට මෙම අනුග්‍රාහකය යොදන්න එපා", "schedule_services": "සේවා අවහිර විරාමය", + "schedule_services_desc": "සේවා අවහිර විරාමය සඳහා කාලසටහන සකසන්න", + "schedule_services_desc_client": "මෙම සේවා අවහිර විරාමය සඳහා කාලසටහන සකසන්න", + "schedule_desc": "අවහිර සේවා සඳහා අක්‍රිය කාල සීමා සකසන්න", "schedule_invalid_select": "ආරම්භක වේලාව අවසන් වේලාවට කලින් විය යුතුය", "schedule_select_days": "දවස් තෝරන්න", "schedule_timezone": "වේලා කලාපයක් තෝරන්න", "schedule_current_timezone": "වත්මන් වේලා කලාපය: {{value}}", "schedule_time_all_day": "දවස පුරාම", + "schedule_modal_description": "මෙම කාලසටහන සතියේ එකම දිනය සඳහා පවතින කාලසටහන් ප්‍රතිස්ථාපනය කරයි. සතියේ සෑම දිනකම තිබිය හැක්කේ එක් අක්‍රිය කාල සීමාවක් පමණි.", + "schedule_modal_time_off": "සේවා අවහිර නැත:", + "schedule_new": "නව කාලසටහන", + "schedule_edit": "කාලසටහන සංස්කරණය කරන්න", + "schedule_save": "කාලසටහන සුරකින්න", + "schedule_add": "කාලසටහන එක් කරන්න", + "schedule_remove": "කාලසටහන ඉවත් කරන්න", "schedule_from": "සිට", "schedule_to": "දක්වා", "sunday": "ඉරිදා", @@ -671,5 +747,8 @@ "wednesday_short": "බදාදා", "thursday_short": "බ්‍රහස්", "friday_short": "සිකු", - "saturday_short": "සෙන" + "saturday_short": "සෙන", + "upstream_dns_cache_configuration": "උඩුගත ව.නා.ප. නිහිත වින්‍යාසය", + "enable_upstream_dns_cache": "මෙම ගනුකරුගේ අභිරුචි උඩුගත වින්‍යාසය සඳහා ව.නා.ප. නිහිතය සක්‍රිය කරන්න", + "dns_cache_size": "ව.නා.ප. නිහිතයේ ප්‍රමාණය (බයිට වලින්)" } diff --git a/client/src/__locales/sk.json b/client/src/__locales/sk.json index 4acf2125..0484565e 100644 --- a/client/src/__locales/sk.json +++ b/client/src/__locales/sk.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Dôvod: {{reason}}", "check_service": "Meno služby: {{service}}", + "check_hostname": "Názov hostiteľa alebo názov domény", + "check_client_id": "Identifikátor klienta (ClientID alebo IP adresa)", + "check_enter_client_id": "Zadajte identifikátor klienta", + "check_dns_record": "Vyberte typ DNS záznamu", "service_name": "Názov služby", "check_not_found": "Nenašlo sa vo Vašom zozname filtrov", "client_confirm_block": "Naozaj chcete zablokovať klienta \"{{ip}}\"?", @@ -651,8 +655,11 @@ "safe_search": "Bezpečné vyhľadávanie", "blocklist": "Zoznam blokovaní", "milliseconds_abbreviation": "ms", + "cache_enabled": "Povoliť vyrovnávaciu pamäť", + "cache_enabled_desc": "Ukladať DNS odpovede lokálne.", "cache_size": "Veľkosť cache", - "cache_size_desc": "Veľkosť vyrovnávacej pamäte DNS (v bajtoch). Ak chcete zakázať ukladanie do vyrovnávacej pamäte, ponechajte pole prázdne.", + "cache_size_validation": "Veľkosť vyrovnávacej pamäte musí byť po povolení väčšia ako nula.", + "cache_size_desc": "Veľkosť vyrovnávacej pamäte DNS (v bajtoch). Ak chcete vypnúť ukladanie do vyrovnávacej pamäte, nastavte hodnotu 0.", "cache_ttl_min_override": "Prepísať minimálne TTL", "cache_ttl_max_override": "Prepísať maximálne TTL", "enter_cache_size": "Zadať veľkosť cache (v bajtoch)", diff --git a/client/src/__locales/sl.json b/client/src/__locales/sl.json index de1fcb9f..68d06d53 100644 --- a/client/src/__locales/sl.json +++ b/client/src/__locales/sl.json @@ -6,21 +6,21 @@ "upstream_parallel": "Uporabite vzporedne zahteve za pospešitev reševanja s hkratnim poizvedovanjem vseh gorvodnih strežnikov.", "parallel_requests": "Vzporedne zahteve", "load_balancing": "Uravnavanje obremenitve", - "load_balancing_desc": "Poizvedujte po enem strežniku navzgor. AdGuard Home s pomočjo tehtanega naključnega algoritma izbere strežnik, tako da se najpogosteje uporablja najhitrejši strežnik.", + "load_balancing_desc": "Poizvedujte po enem strežniku navzgor.
AdGuard Home uporablja tehtan naključni algoritem za izbiro strežnikov z najmanjšim številom neuspešnih iskanj in najnižjim povprečnim časom iskanja.", "bootstrap_dns": "Zagonski DNS strežniki", "bootstrap_dns_desc": "Naslovi IP strežnikov DNS, ki se uporabljajo za razreševanje naslovov IP razreševalcev DoH/DoT, ki jih določite kot navzgor. Komentarji niso dovoljeni.", "fallback_dns_title": "Rezervni strežniki DNS", "fallback_dns_desc": "Seznam rezervnih strežnikov DNS, ki se uporabljajo, ko se gorvodni strežniki DNS ne odzivajo. Sintaksa je enaka kot v zgornjem gorvodnem polju.", "fallback_dns_placeholder": "Vnesite en rezervni strežnik DNS na vrstico", "local_ptr_title": "Zasebni povratni strežniki DNS", - "local_ptr_desc": "Strežniki DNS, ki jih AdGuard Home uporablja za lokalne PTR poizvedbe. Ti strežniki se uporabljajo za reševanje zahtev PTR za naslove v zasebnih obsegih IP, na primer \"192.168.12.34\", z uporabo obratnega DNS. Če ni nastavljen, AdGuard Home uporablja naslove privzetih razreševalnikov DNS vašega OS, razen naslovov samega AdGuard Home.", + "local_ptr_desc": "DNS strežniki, ki jih uporablja AdGuard Home za zasebne PTR, SOA in NS poizvedbe. Poizvedba se smatra za zasebno, če zahteva ARPA domeno, ki vsebuje podmrežje znotraj zasebnih IP razponov (kot je \"192.168.12.34\") in prihaja od odjemalca z zasebnim naslovom IP. Če ni nastavljeno, se bodo uporabili privzeti razreševalci DNS vašega operacijskega sistema, razen naslovov IP AdGuard Home.", "local_ptr_default_resolver": "AdGuard Home privzeto uporablja te povratne razreševalnike DNS: {{ip}}.", "local_ptr_no_default_resolver": "AdGuard Home ni mogel določiti ustreznih zasebnih povratnih reševalcev DNS za ta sistem.", "local_ptr_placeholder": "Vnesite en naslov IP na vrstico", "resolve_clients_title": "Omogoči obratno reševanje naslovov IP gostiteljev", "resolve_clients_desc": "Povratno razrešite naslove IP odjemalcev v njihova gostiteljska imena, tako da pošljete poizvedbe PTR ustreznim razreševalcem (zasebni strežniki DNS za lokalne odjemalce, gorvodni strežniki za odjemalce z javnimi naslovi IP).", "use_private_ptr_resolvers_title": "Uporabi zasebne povratne razreševalnike rDNS", - "use_private_ptr_resolvers_desc": "Opravi povratne preglede DNS za lokalno vročene naslove s pomočjo teh strežnikov. Če je AdGuard onemogočen, se z NXDOMAIN odzove na vse takšne zahteve PTR, razen za odjemalce, znane iz DHCP/etc/hosts itd.", + "use_private_ptr_resolvers_desc": "Razreši PTR, SOA in NS poizvedbe za ARPA domene, ki vsebujejo zasebne IP naslove, prek zasebnih gorvodnih strežnikov, DHCP, /etc/hosts itd. Če je onemogočeno, bo AdGuard Home na vse takšne poizvedbe odgovoril z NXDOMAIN.", "check_dhcp_servers": "Preveri strežnike DHCP", "save_config": "Shrani nastavitve", "enabled_dhcp": "Strežnik DHCP je omogočen", @@ -154,7 +154,7 @@ "use_adguard_parental": "Uporabi AdGuardovo spletno storitev 'Starševski nadzor'", "use_adguard_parental_hint": "AdGuard Home bo preveril, če domena vsebuje vsebine za odrasle. Uporablja enako, za zasebnost prijazen API, kot spletno storitev za varnost brskanja.", "enforce_safe_search": "Uporabi Varno iskanje", - "enforce_save_search_hint": "AdGuard Home bo vsilil varno iskanje v naslednjih iskalnikih: Google, YouTube, Bing, DuckDuckGo, Yandex, Pixabay.", + "enforce_save_search_hint": "AdGuard Home bo izvajal varno iskanje v naslednjih iskalnikih: Google, YouTube, Bing, DuckDuckGo, Ecosia, Yandex, Pixabay.", "no_servers_specified": "Ni določenih strežnikov", "general_settings": "Splošne nastavitve", "dns_settings": "Nastavitve DNS", @@ -294,6 +294,9 @@ "blocked_response_ttl": "Zaviran odziv TTL", "blocked_response_ttl_desc": "Določa, koliko sekund naj odjemalci predpomnijo filtrirane odgovore", "form_enter_blocked_response_ttl": "Vnesite TTL zaviranega odgovora (sekunde)", + "upstream_timeout": "Čas čakanja na odzive strežnikov upstream", + "upstream_timeout_desc": "Določa število sekund, ki jih je treba počakati na odgovor od strežnika", + "form_enter_upstream_timeout": "Vnesite čas čakanja za upstream strežnik v sekundah", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-prek-HTTPS", "dns_over_tls": "DNS-prek-TLS", @@ -598,7 +601,7 @@ "disable_ipv6": "Onemogoči reševanje naslovov IPv6", "disable_ipv6_desc": "Spustite vse poizvedbe DNS za naslove IPv6 (tip AAAA) in odstranite namige IPv6 iz odgovorov HTTPS.", "fastest_addr": "Najhitrejši IP naslov", - "fastest_addr_desc": "Zahtevajte vse strežnike DNS in vrne najhitrejši naslov IP med vsemi odgovori. To upočasni zahteve DNS, saj mora AdGuard Home čakati na odgovore vseh strežnikov DNS, vendar izboljša splošno povezljivost.", + "fastest_addr_desc": "Počakajte na odgovore od vseh DNS strežnikov, izmerite hitrost TCP povezave za vsak strežnik in vrnite naslov IP strežnika z najhitrejšo povezavo.
Ta način lahko znatno upočasni poizvedbe DNS, če eden ali več gorvodnih strežnikov ne odgovarja. Prepričajte se, da so vaši gorvodni strežniki stabilni in da je vaš gorvodni časovni zahtevek nizek.", "autofix_warning_text": "Če kliknete 'Popravi', bo AdGuardHome konfiguriral vaš sistem za uporabo strežnika AdGuardHome DNS.", "autofix_warning_list": "To bo izvedlo naslednja opravila: <0>Deaktiviraj sistemski DNSStubListener <0>Nastavi naslov strežnika DNS na 127.0.0.1 <0>Zamenjaj cilj simbolične povezave /etc/resolv.conf with /run/systemd/resolve/resolv.conf <0>Zaustavi DNSStubListener (znova naloži storitev systemd-resolved)", "autofix_warning_result": "Kot rezultat, bo vse zahteve DNS iz vašega sistema privzeto obdelal AdGuard Home.", @@ -617,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Razlog: {{reason}}", "check_service": "Ime storitve: {{service}}", + "check_hostname": "Ime gostitelja ali ime domene", + "check_client_id": "Identifikator odjemalca (ClientID ali naslov IP)", + "check_enter_client_id": "Vnesite identifikator odjemalca", + "check_dns_record": "Izberite vrsto DNS zapisa", "service_name": "Ime storitve", "check_not_found": "Ni najdeno na vašem seznamu filtrov", "client_confirm_block": "Ali ste prepričani, da želite onemogočiti odjemalca \"{{ip}}\"?", @@ -649,7 +656,7 @@ "blocklist": "Seznam nedovoljenih", "milliseconds_abbreviation": "ms", "cache_size": "Velikost predpomnilnika", - "cache_size_desc": "Velikost predpomnilnika DNS (v bajtih). Če želite onemogočiti predpomnjenje, pustite prazno.", + "cache_size_desc": "Velikost predpomnilnika DNS (v bajtih). Če želite onemogočiti predpomnjenje, nastavite na 0.", "cache_ttl_min_override": "Preglasi najmanjši TTL", "cache_ttl_max_override": "Preglasi največji TTL", "enter_cache_size": "Vnesite velikost predpomnilnika (v bajtih)", diff --git a/client/src/__locales/sr-cs.json b/client/src/__locales/sr-cs.json index 312451be..a3a3b592 100644 --- a/client/src/__locales/sr-cs.json +++ b/client/src/__locales/sr-cs.json @@ -6,21 +6,21 @@ "upstream_parallel": "Koristite paralelne upite da biste ubrzali rešavanje tako što ćete istovremeno ispitati sve uzvodne servere.", "parallel_requests": "Paralelni zahtevi", "load_balancing": "Load-balancing", - "load_balancing_desc": "Koristi jedan upstream server. AdGuard Home koristi najnoviji nasumični algoritam da izabere server tako da se najbrži server češće koristi.", + "load_balancing_desc": "Upitajte jedan uzvodni server u isto vreme.
AdGuard Home koristi ponderisani slučajni algoritam za odabir servera sa najmanjim brojem neuspelih pretraga i najnižim prosečnim vremenom pretrage.", "bootstrap_dns": "Bootstrap DNS serveri", "bootstrap_dns_desc": "IP adrese DNS servera koje se koriste za rešavanje IP adresa DoH/DoT razrešivača koje navodite kao uzvodne. Komentari nisu dozvoljeni.", "fallback_dns_title": "Odstupajući DNS serveri", "fallback_dns_desc": "Lista povratnih DNS servera koji se koriste kada se uzvodni DNS serveri ne odaziva. Sintaksa je ista kao u glavnom uzvodnom polju iznad.", "fallback_dns_placeholder": "Unesite jedan povratni DNS server po liniji", "local_ptr_title": "Private reverse DNS serveri", - "local_ptr_desc": "DNS serveri koje AdGuard Home koristi za lokalne PTR upite. Ovi serveri se koriste za rešavanje imena domaćina klijenata sa privatnim IP adresama, na primer \"192.168.12.34\", koristeći obrnuti DNS. Ako nije podešen, AdGuard Home koristi adrese podrazumevanih DNS razrešivača vašeg OS-a osim adresa samog AdGuard Home-a.", + "local_ptr_desc": "DNS serveri koje koristi AdGuard Home za privatne PTR, SOA i NS zahteve. Zahtev se smatra privatnim ako traži ARPA domen koji sadrži podmrežu unutar privatnih IP opsega (kao što je \"192.168.12.34\") i dolazi od klijenta sa privatnom IP adresom. Ako nije podešeno, podrazumevani DNS resolveri vašeg operativnog sistema će se koristiti, osim za AdGuard Home IP adrese.", "local_ptr_default_resolver": "Podrazumevano, AdGuard Home koristi sledeće obrnute DNS razrešivače: {{ip}}.", "local_ptr_no_default_resolver": "AdGuard Home ne može da odredi pogodne privatne obrnute DNS razrešivače za ovaj sistem.", "local_ptr_placeholder": "Unesite jednu IP adresu servera po redu", "resolve_clients_title": "Uključi obrnuto razrešavanje klijentskih IP adresa", "resolve_clients_desc": "Obrnuto razrešite IP adrese klijenata u njihova imena domaćina slanjem PTR upita odgovarajućim razrešivačima (privatni DNS serveri za lokalne klijente, uzvodni serveri za klijente sa javnim IP adresama).", "use_private_ptr_resolvers_title": "Koristi privatne obrnute razrešivače", - "use_private_ptr_resolvers_desc": "Izvršavanje obrnutih DNS izgleda za lokalno servirane adrese pomoću ovih uzvodnih servera. Ako je onemogućen, AdGuard Home odgovara sa NXDOMAIN na sve takve PTR zahteve osim klijenata poznatih iz DHCP- a, /etc/hosts itd.", + "use_private_ptr_resolvers_desc": "Rešavanje PTR, SOA i NS zahteva za ARPA domene koji sadrže privatne IP adrese preko privatnih uzvodnih servera, DHCP, /etc/hosts, itd. Ako je onemogućen, AdGuard Home će odgovoriti na sve takve zahteve sa NKSDOMAIN.", "check_dhcp_servers": "Proveri DHCP servere", "save_config": "Sačuvaj konfiguraciju", "enabled_dhcp": "DHCP server uključen", @@ -154,7 +154,7 @@ "use_adguard_parental": "Koristi AdGuard-ovu uslugu roditeljske kontrole", "use_adguard_parental_hint": "AdGuard Home će proveriti da li domen sadrži sadržaj za odrasle. Koristi se isti privatni prijateljski API kao i kod usluge bezbednog pregledanja.", "enforce_safe_search": "Nametni sigurno pretraživanje", - "enforce_save_search_hint": "AdGuard Home može nametnuti sigurno pretraživanje u sledećim pretraživačima: Google, Youtube, Bing, DuckDuckGo i Yandex.", + "enforce_save_search_hint": "AdGuard Home će sprovesti sigurnu pretragu u sledećim pretraživačima: Google, IouTube, Bing, DuckDuckGo, Ecosia, Iandek, Pikabai.", "no_servers_specified": "Serveri nisu određeni", "general_settings": "Opšte postavke", "dns_settings": "DNS postavke", @@ -294,6 +294,9 @@ "blocked_response_ttl": "TTL blokiranog odgovora", "blocked_response_ttl_desc": "Određuje koliko sekundi klijenti treba da keširaju filtrirani odgovor", "form_enter_blocked_response_ttl": "Unesite TTL blokiranog odgovora (sekunde)", + "upstream_timeout": "Upravljački timeout", + "upstream_timeout_desc": "Određuje broj sekundi čekanja na odgovor od uzvodnog servera", + "form_enter_upstream_timeout": "Unesite trajanje timeout-a upstream servera u sekundama", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -425,6 +428,9 @@ "encryption_hostnames": "Imena hostova", "encryption_reset": "Jeste li sigurni da želite dda resetujete postavke šifrovanja?", "encryption_warning": "Upozorenje", + "encryption_plain_dns_enable": "Omogući plain DNS", + "encryption_plain_dns_desc": "Plain DNS je podrazumevano omogućen. Možete ga onemogućiti da biste primorali sve uređaje da koriste šifrovani DNS. Da biste to uradili, potrebno je da omogućite bar jedan šifrovani DNS protokol", + "encryption_plain_dns_error": "Da biste onemogućili običan DNS, omogućite najmanje jedan šifrovani DNS protokol", "topline_expiring_certificate": "Vaš SSL sertifikat uskoro ističe. Ažurirajte <0>postavke šifrovanja.", "topline_expired_certificate": "Vaš SSL sertifikat je istekao. Ažurirajte <0>postavke šifrovanja.", "form_error_port_range": "Unesite vrednost porta u opsegu od 80-65535", @@ -595,7 +601,7 @@ "disable_ipv6": "Onemogući rešavanje IPv6 adresa", "disable_ipv6_desc": "Ignorisanje svih DNS upite za IPv6 adrese (tip AAAA) i uklanjanje IPv6 podataka iz HTTPS odgovora.", "fastest_addr": "Najbrža IP adresa", - "fastest_addr_desc": "Pretražuje sve DNS servere i vraća najbržu IP adresu među svim odgovorima. Ovo će usporiti DNS pretragu jer moramo da čekamo na odgovore od svih DNS servera, ali će poboljšati sveukupnu povezanost.", + "fastest_addr_desc": "Sačekajte odgovore od Sve DNS serveri, izmerite brzinu TCP veze za svaki server i vratite IP adresu servera sa najvećom brzinom veze.
Ovaj režim može značajno usporiti DNS upite, ako jedan ili više uzvodnih servera ne reaguju. Uverite se da su vaši uzvodni serveri stabilni i da je vaš uzvodni timeout nizak.", "autofix_warning_text": "Ako kliknete \"Popravi\", AdGuardHome će konfigurisati vaš sistem da koristi AdGuardHome DNS server.", "autofix_warning_list": "To će izvršiti sledeće zadatke: <0>Deaktiviranje system DNSStubListener <0>Set DNS server address to 127.0.0.1 <0>Replace symbolic link target of /etc/resolv.conf to /run/systemd/resolve/resolv.conf <0>Stop DNSStubListener (reload systemd-resolved service)", "autofix_warning_result": "Kao rezultat, svi DNS zahtevi sa vašeg sistema će biti obrađeni od AdGuardHome.", @@ -614,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Razlog: {{reason}}", "check_service": "Ime usluge: {{service}}", + "check_hostname": "Ime domaćina ili ime domena", + "check_client_id": "Identifikator klijenta (ClientID ili IP adresa)", + "check_enter_client_id": "Unesite identifikator klijenta", + "check_dns_record": "Izaberite tip DNS zapisa", "service_name": "Ime usluge", "check_not_found": "Nije pronađeno na vašoj listi filtera", "client_confirm_block": "Jeste li sigurni da želite da blokirate klijent \"{{ip}}\"?", @@ -646,7 +656,7 @@ "blocklist": "Lista blokiranih", "milliseconds_abbreviation": "ms", "cache_size": "Veličina predmemorije", - "cache_size_desc": "Veličina DNS keša (u bajtovima). Da biste onemogućili keširanje, ostavite prazno.", + "cache_size_desc": "Veličina DNS keša (u bajtovima). Da biste onemogućili keširanje, postavite na 0.", "cache_ttl_min_override": "Prepiši najmanji TTL", "cache_ttl_max_override": "Prepiši najveći TTL", "enter_cache_size": "Unesite veličinu predmemorije", @@ -675,7 +685,7 @@ "use_saved_key": "Koristi prethodno sačuvan ključ", "parental_control": "Roditeljska kontrola", "safe_browsing": "Sigurno pregledanje", - "served_from_cache": "{{value}} (posluženo iz predmemorije)", + "served_from_cache_label": "Posluženo iz pred memorije", "form_error_password_length": "Lozinka mora imati od {{min}} do {{max}} znakova", "anonymizer_notification": "<0>Nota: IP prepoznavanje je omogućeno. Možete ga onemogućiti u opštim <1>postavkama.", "confirm_dns_cache_clear": "Želite li zaista da obrišite DNS keš?", diff --git a/client/src/__locales/sv.json b/client/src/__locales/sv.json index 9ff5ec40..75059c89 100644 --- a/client/src/__locales/sv.json +++ b/client/src/__locales/sv.json @@ -6,21 +6,21 @@ "upstream_parallel": "Använd parallella förfrågningar för att snabba upp dessa genom att fråga alla uppströmsservrar samtidigt.", "parallel_requests": "Parallella förfrågningar", "load_balancing": "Lastbalansering", - "load_balancing_desc": "Fråga en uppströmsserver åt gången. AdGuard Home använder sin viktade slumpmässiga algoritm för att välja server så att den snabbaste servern används oftare.", + "load_balancing_desc": "Fråga en uppströmsserver åt gången.
AdGuard Home använder en viktad slumpmässig algoritm för att välja servrar med det lägsta antalet misslyckade uppslagningar och den lägsta genomsnittliga uppslagningstiden.", "bootstrap_dns": "Bootstrap-DNS-servrar", "bootstrap_dns_desc": "IP-adresser för DNS-servrar som används för att lösa IP-adresser för de DoH/DoT-resolvers som du anger som uppströms. Kommentarer är inte tillåtna.", "fallback_dns_title": "Reserv DNS-servrar", "fallback_dns_desc": "Lista över reserv-DNS-servrar som används när uppströms DNS-servrar inte svarar. Syntaxen är densamma som i huvuduppströmsfältet ovan.", "fallback_dns_placeholder": "Ange en reserv-DNS-server per rad", "local_ptr_title": "Privata omvända DNS-servrar", - "local_ptr_desc": "DNS servrarna som AdGuard Home använder för lokala PTR frågor. Dessa servrar används för att lösa värdnamnen på klienter med privata IP-adresser, till exempel \"192.168.12.34\", genom omvänd DNS. Om inga servrar angetts använder AdGuard Home adresserna till standard DNS servrar för ditt operativsystem förutom adresserna till AdGuard Home själv.", + "local_ptr_desc": "DNS-servrar som används av AdGuard Home för privata PTR-, SOA- och NS-förfrågningar. En begäran anses vara privat om den frågar efter en ARPA-domän som innehåller ett subnät inom privata IP-intervallerna (t.ex. \"192.168.12.34\") och kommer från en klient med en privat IP-adress. Om det inte är inställt kommer standard DNS-resolvers för ditt operativsystem att användas, förutom AdGuard Home IP-adresserna.", "local_ptr_default_resolver": "Som standard använder AdGuard Home följande omvända DNS upplösare: {{ip}}.", "local_ptr_no_default_resolver": "AdGuard Home kunde inte fastställa lämpliga privata omvända DNS upplösare för detta system.", "local_ptr_placeholder": "Ange en IP-adress per rad", "resolve_clients_title": "Aktivera omvänd upplösning av klienters IP-adresser", "resolve_clients_desc": "Lös upp klienternas värdnamn med omvänt uppslag av klienternas IP-adresser genom att skicka PTR-frågor till motsvarande upplösare (privata DNS-servrar för lokala klienter, uppströmsservrar för klienter med offentliga IP-adresser).", "use_private_ptr_resolvers_title": "Använd privata omvända DNS upplösare", - "use_private_ptr_resolvers_desc": "Utför omvända DNS-sökningar för lokalt betjänade adresser med dessa uppströmsservrar. Om det är inaktiverat svarar AdGuard Home med NXDOMAIN på alla sådana PTR-förfrågningar förutom klienter kända från DHCP, /etc/hosts, och så vidare.", + "use_private_ptr_resolvers_desc": "Lös PTR-, SOA- och NS-förfrågningar för ARPA-domäner som innehåller privata IP-adresser genom privata uppströmsservrar, DHCP, /etc/hosts, etc. Om det är inaktiverat kommer AdGuard Home att svara på alla sådana förfrågningar med NXDOMAIN.", "check_dhcp_servers": "Letar efter DHCP-servrar", "save_config": "Spara konfiguration", "enabled_dhcp": "DHCP-server aktiverad", @@ -154,7 +154,7 @@ "use_adguard_parental": "Använda AdGuards webbservice för föräldrakontroll", "use_adguard_parental_hint": "AdGuard Home kommer att kontrollera domäner för innehåll av vuxenmaterial . Samma integritetsvänliga metod för API-lookup som tillämpas i webbservicens surfsäkerhet används.", "enforce_safe_search": "Använd SafeSearch", - "enforce_save_search_hint": "AdGuard Home kommer tvinga säker surf på följande sökmotorer: Google, Youtube, Bing, DuckDuckGo, Yandex, Pixabay.", + "enforce_save_search_hint": "AdGuard Home kommer tvinga säker surf på följande sökmotorer: Google, YouTube, Bing, DuckDuckGo, Yandex, Pixabay.", "no_servers_specified": "Inga servrar angivna", "general_settings": "Allmänna inställningar", "dns_settings": "DNS-inställningar", @@ -294,6 +294,9 @@ "blocked_response_ttl": "TTL för blockerat svar", "blocked_response_ttl_desc": "Anger hur många sekunder klienterna ska cache ett filtrerat svar", "form_enter_blocked_response_ttl": "Ange TTL för blockerat svar (sekunder)", + "upstream_timeout": "Uppströms timeout", + "upstream_timeout_desc": "Anger antalet sekunder att vänta på ett svar från uppströmsservern", + "form_enter_upstream_timeout": "Ange uppströmsserverns timeout-längd i sekunder", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -319,6 +322,7 @@ "rate_limit_subnet_len_ipv6_desc": "Subnätprefixlängd för IPv6-adresser som används för hastighetsbegränsning. Standard är 56", "rate_limit_subnet_len_ipv6_error": "IPv6-subnätets prefixlängd ska vara mellan 0 och 128", "form_enter_rate_limit_subnet_len": "Ange subnätprefixlängd för hastighetsbegränsning", + "rate_limit_whitelist": "Vitlista för hastighetsgränser", "rate_limit_whitelist_desc": "IP-adresser uteslutna från hastighetsbegränsning", "rate_limit_whitelist_placeholder": "Ange en IP-adress per rad", "blocking_ipv4_desc": "IP adress som ska returneras för en blockerad A förfrågan", @@ -424,6 +428,9 @@ "encryption_hostnames": "Värdnamn", "encryption_reset": "Är du säker på att du vill återställa krypteringsinställningarna?", "encryption_warning": "Varning", + "encryption_plain_dns_enable": "Aktivera vanlig DNS", + "encryption_plain_dns_desc": "Vanlig DNS är aktiverad som standard. Du kan inaktivera den för att tvinga alla enheter att använda krypterad DNS. För att göra detta måste du aktivera minst ett krypterat DNS-protokoll", + "encryption_plain_dns_error": "För att inaktivera vanlig DNS, aktivera minst ett krypterat DNS-protokoll", "topline_expiring_certificate": "Ditt SSL-certifikat håller på att gå ut. <0>Krypteringsinställningar.", "topline_expired_certificate": "Ditt SSL-certifikat har gått ut. Uppdatera <0>Krypteringsinställningar-", "form_error_port_range": "Ange ett portnummer inom värdena 80-65535", @@ -594,7 +601,7 @@ "disable_ipv6": "Inaktivera upplösning av IPv6 adresser", "disable_ipv6_desc": "Släpp alla DNS-frågor för IPv6-adresser (typ AAAA) och ta bort IPv6-tips från HTTPS-svar.", "fastest_addr": "Snabbaste IP adressen", - "fastest_addr_desc": "Fråga alla DNS servrar och returnera den snabbaste IP adressen bland alla svar. Detta saktar ner DNS-frågor eftersom AdGuard Home måste vänta på svar från alla DNS servrar, men förbättrar den övergripande anslutningen.", + "fastest_addr_desc": "Vänta på svar från alla DNS-servrar, mät TCP-anslutningshastigheten för varje server och returnera IP-adressen till servern med den snabbaste anslutningshastigheten.
Detta läge kan avsevärt sakta ner DNS-frågor om en eller flera uppströmsservrar inte svarar. Se till att dina uppströmsservrar är stabila och att din uppströms timeout är låg.", "autofix_warning_text": "Om du klickar på \"Fix\" kommer AdGuard Home att konfigurera ditt system för att använda AdGuard Home DNS server.", "autofix_warning_list": "Den kommer att utföra följande uppgifter: <0>Avaktivera system DNSStubListener <0>Sätt DNS serveradress till 127.0.0.1 <0>Ersätt symboliskt länkmål för /etc/resolv.conf med /run/systemd /resolve/resolv.conf <0>Stoppa DNSStubListener (ladda om systemd-resolved tjänst)", "autofix_warning_result": "Som ett resultat kommer alla DNS-förfrågningar från ditt system att behandlas av AdGuard Home som standard.", @@ -613,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Anledning: {{reason}}", "check_service": "Service namn: {{service}}", + "check_hostname": "Värdnamn eller domännamn", + "check_client_id": "Klientidentifierare (ClientID eller IP-adress)", + "check_enter_client_id": "Ange klientidentifierare", + "check_dns_record": "Välj typ av DNS-post", "service_name": "Service namn", "check_not_found": "Hittades inte i dina filterlistor", "client_confirm_block": "Är du säker på att du vill blockera klienten \"{{ip}}\"?", @@ -645,7 +656,7 @@ "blocklist": "Blocklista", "milliseconds_abbreviation": "ms", "cache_size": "Cachestorlek", - "cache_size_desc": "DNS-cachestorlek (i byte). Lämna tomt om du vill inaktivera cachelagring.", + "cache_size_desc": "DNS-cachestorlek (i byte). För att inaktivera cache, ställ in till 0.", "cache_ttl_min_override": "Åsidosätt minsta TTL", "cache_ttl_max_override": "Åsidosätt maximal TTL", "enter_cache_size": "Ange cachestorlek (byte)", @@ -674,6 +685,7 @@ "use_saved_key": "Använd den tidigare sparade nyckeln", "parental_control": "Föräldrakontroll", "safe_browsing": "Säker surfning", + "served_from_cache_label": "Levererat från cache", "form_error_password_length": "Lösenordet måste vara {{min}} till {{max}} tecken långt", "anonymizer_notification": "<0>Observera: IP-anonymisering är aktiverad. Du kan inaktivera den i <1>Allmänna inställningar.", "confirm_dns_cache_clear": "Är du säker på att du vill rensa DNS-cache?", diff --git a/client/src/__locales/th.json b/client/src/__locales/th.json index 97dd4ba6..a34ec540 100644 --- a/client/src/__locales/th.json +++ b/client/src/__locales/th.json @@ -1,25 +1,60 @@ { "client_settings": "การตั้งค่าไคลเอนต์", + "example_upstream_reserved": "คุณสามารถระบุ DNS อัปสตรีม <0>สำหรับโดเมนเฉพาะ", + "example_multiple_upstreams_reserved": "หลาย upstream <0>สำหรับโดเมนเฉพาะ;", + "example_upstream_comment": "คุณสามารถระบุความคิดเห็นได้", + "upstream_parallel": "ใช้การสืบค้นแบบขนานเพื่อเพิ่มความเร็วในการแก้ไขโดยการสอบถามเซิร์ฟเวอร์ upstream ทั้งหมดพร้อมกัน", + "parallel_requests": "คำขอแบบคู่ขนาน", + "load_balancing": "โหลดบาลานซ์", + "load_balancing_desc": "สอบถามเซิร์ฟเวอร์ต้นทางทีละตัว
AdGuard Home ใช้อัลกอริธึมการสุ่มแบบถ่วงน้ำหนักเพื่อเลือกเซิร์ฟเวอร์ที่มีจำนวนการค้นหาที่ล้มเหลวต่ำที่สุดและเวลาการค้นหาที่ต่ำที่สุด", "bootstrap_dns": "Bootstrap เซิร์ฟเวอร์ DNS", "bootstrap_dns_desc": "เซิร์ฟเวอร์ Bootstrap DNS ใช้เพื่อแก้ไขที่อยู่ IP ของตัวแก้ไข DoH / DoT ที่คุณระบุว่าเป็น upstreams", + "fallback_dns_title": "เซิร์ฟเวอร์ DNS สำรอง", + "fallback_dns_desc": "รายการเซิร์ฟเวอร์ DNS สำรองที่ใช้เมื่อเซิร์ฟเวอร์ DNS ต้นทางไม่ตอบสนอง ซินแท็กซ์เหมือนกับในฟิลด์เซิร์ฟเวอร์ต้นทางหลักข้างต้น.", + "fallback_dns_placeholder": "ป้อนเซิร์ฟเวอร์ DNS สำรองหนึ่งตัวต่อหนึ่งบรรทัด", + "local_ptr_title": "เซิร์ฟเวอร์ DNS ส่วนตัว", + "local_ptr_desc": "เซิร์ฟเวอร์ DNS ที่ AdGuard Home ใช้สำหรับคำขอ PTR, SOA และ NS ส่วนตัว คำขอจะถูกพิจารณาว่าเป็นส่วนตัวหากขอโดเมน ARPA ที่มีซับเน็ตภายในช่วง IP ส่วนตัว (เช่น \"192.168.12.34\") และมาจากไคลเอนต์ที่มีที่อยู่ IP ส่วนตัว หากไม่ตั้งค่า จะใช้ DNS resolver เริ่มต้นของระบบปฏิบัติการของคุณ ยกเว้นที่อยู่ IP ของ AdGuard Home", + "local_ptr_default_resolver": "ตามค่าเริ่มต้น AdGuard Home ใช้ resolver DNS ตรงข้ามต่อไปนี้: {{ip}}", + "local_ptr_no_default_resolver": "AdGuard Home ไม่สามารถกำหนด DNS resolver ส่วนตัวที่เหมาะสมสำหรับระบบนี้ได้", + "local_ptr_placeholder": "ป้อนที่อยู่เซิร์ฟเวอร์หนึ่งรายการต่อบรรทัด", + "resolve_clients_title": "เปิดใช้งานการแก้ไขย้อนกลับของที่อยู่ IP ของไคลเอ็นต์", + "resolve_clients_desc": "หากเปิดใช้งาน AdGuard Home จะพยายามแก้ไขที่อยู่ IP ของไคลเอ็นต์กลับเป็นชื่อโฮสต์โดยการส่งแบบสอบถาม PTR ไปยังตัวแก้ไขที่เกี่ยวข้อง (เซิร์ฟเวอร์ DNS ส่วนตัวสำหรับไคลเอนต์ในเครื่องเซิร์ฟเวอร์ต้นน้ำสำหรับไคลเอนต์ที่มีที่อยู่ IP สาธารณะ)", + "use_private_ptr_resolvers_title": "ใช้ DNS resolver ส่วนตัวสำหรับ DNS ตรงข้าม", + "use_private_ptr_resolvers_desc": "แก้ไขคำขอ PTR, SOA และ NS สำหรับโดเมน ARPA ที่มีที่อยู่ IP ส่วนตัว ผ่านเซิร์ฟเวอร์ต้นทางส่วนตัว, DHCP, /etc/hosts เป็นต้น หากปิดการใช้งาน AdGuard Home จะตอบสนองต่อคำขอทั้งหมดดังกล่าวด้วย NXDOMAIN", "check_dhcp_servers": "ตรวจสอบ DHCP servers", + "save_config": "บันทึกการตั้งค่า", "enabled_dhcp": "เปิดการใช้งาน DHCP server แล้ว", "disabled_dhcp": "ปิดการใช้งาน DHCP server แล้ว", + "unavailable_dhcp": "DHCP ไม่พร้อมใช้งาน", + "unavailable_dhcp_desc": "AdGuard Home ไม่สามารถทำงาน DHCP server บนระบบปฎิบัติการของ Server คุณ", "dhcp_title": "DHCP server (ยังไม่สมบูรณ์)", "dhcp_description": "ถ้าหากเราเตอร์ของคุณไม่รองรับการตั้งค่า DHCP คุณสามารถใช้ ADGuard's ทำ DHCP server ได้", "dhcp_enable": "เปิด DHCP server", "dhcp_disable": "ปิด DHCP server", + "dhcp_not_found": "มีความปลอดภัยในการเปิดใช้งานเซิร์ฟเวอร์ DHCP ในตัว - เราไม่พบเซิร์ฟเวอร์ DHCP ที่ใช้งานอยู่ในเครือข่าย อย่างไรก็ตามเราขอแนะนำให้คุณตรวจสอบด้วยตนเองอีกครั้งเนื่องจากการทดสอบอัตโนมัติของเราไม่ได้รับประกัน 100%", "dhcp_found": "พบเซิร์ฟเวอร์ DHCP ที่ใช้งานอยู่ในเครือข่าย ไม่ปลอดภัยที่จะเปิดใช้งานเซิร์ฟเวอร์ DHCP ในตัว", "dhcp_leases": "สัญญาเช่า DHCP", "dhcp_static_leases": "DHCP แบบกำหนด", "dhcp_leases_not_found": "ไม่พบสัญญาเช่า DHCP", + "dhcp_config_saved": "บันทึกการกำหนดค่า DHCP สำเร็จแล้ว", + "dhcp_ipv4_settings": "การตั้งค่า DHCP IPv4", + "dhcp_ipv6_settings": "การตั้งค่า DHCP IPv6", "form_error_required": "ช่องที่ต้องกรอก", "form_error_ip4_format": "รูปแบบ IPv4 ไม่ถูกต้อง", + "form_error_ip4_gateway_format": "ที่อยู่ IPv4 ของเกตเวย์ไม่ถูกต้อง", "form_error_ip6_format": "รูปแบบ IPv6 ไม่ถูกต้อง", "form_error_ip_format": "รูปแบบ IP ไม่ถูกต้อง", "form_error_mac_format": "รูปแบบ MAC ไม่ถูกต้อง", "form_error_client_id_format": "รูปแบบ ID ลูกค้าไม่ถูกต้อง", + "form_error_server_name": "ชื่อเซิร์ฟเวอร์ไม่ถูกต้อง", + "form_error_subnet": "ซับเน็ต \"{{cidr}}\" ไม่มีที่อยู่ IP \"{{ip}}\"", "form_error_positive": "ต้องมากกว่า 0", + "form_error_gateway_ip": "สัญญาเช่าไม่สามารถมีที่อยู่ IP ของเกตเวย์ได้", + "out_of_range_error": "ต้องออกจากช่วง \"{{start}}\"-\"{{end}}\"", + "lower_range_start_error": "ต้องน้อยกว่าช่วงเริ่มต้น", + "greater_range_start_error": "ต้องมากกว่าช่วงเริ่มต้น", + "subnet_error": "ที่อยู่ต้องอยู่ในซับเน็ตเดียวกัน", + "gateway_or_subnet_invalid": "หน้ากากซับเน็ตไม่ถูกต้อง", "dhcp_form_gateway_input": "IP ของเกตเวย์", "dhcp_form_subnet_input": "ซับเน็ตมาสก์", "dhcp_form_range_title": "ช่วงของที่อยู่ IP", @@ -30,26 +65,45 @@ "dhcp_interface_select": "เลือกอินเตอร์เฟส DHCP", "dhcp_hardware_address": "ที่อยู่ฮาร์ดแวร์", "dhcp_ip_addresses": "ที่อยู่ IP", + "ip": "ไอพี", "dhcp_table_hostname": "ชื่อโฮสต์", "dhcp_table_expires": "วันที่หมดอายุ", + "dhcp_warning": "หากคุณต้องการเปิดใช้งานเซิร์ฟเวอร์ DHCP ตรวจสอบให้แน่ใจว่าไม่มีเซิร์ฟเวอร์ DHCP ที่ใช้งานอยู่ในเครือข่ายของคุณ มิฉะนั้นจะทำให้อินเทอร์เน็ตสำหรับอุปกรณ์ที่เชื่อมต่อมีปัญหาได้!", + "dhcp_error": "เราไม่สามารถระบุได้ว่ามีเซิร์ฟเวอร์ DHCP อื่นในเครือข่ายหรือไม่", + "dhcp_static_ip_error": "ในการใช้เซิร์ฟเวอร์ DHCP จะต้องตั้งค่าที่อยู่ IP แบบคงที่ เราไม่สามารถระบุได้ว่ามีการกำหนดค่าอินเทอร์เฟซเครือข่ายนี้โดยใช้ที่อยู่ IP แบบคงที่หรือไม่ โปรดตั้งค่าที่อยู่ IP แบบคงที่ด้วยตนเอง", + "dhcp_dynamic_ip_found": "ระบบของคุณใช้การกำหนดค่าที่อยู่ IP แบบไดนามิกสำหรับอินเทอร์เฟซ <0>{{interfaceName}} ในการใช้เซิร์ฟเวอร์ DHCP จะต้องตั้งค่าที่อยู่ IP แบบคงที่ ที่อยู่ IP ปัจจุบันของคุณคือ <0>{{ipAddress}} เราจะตั้งค่าที่อยู่ IP นี้เป็นแบบคงที่โดยอัตโนมัติหากคุณกดปุ่มเปิดใช้งาน DHCP", "dhcp_lease_added": "เพิ่มสัญญาเช่าคงที่ \"{{key}}\" สำเร็จแล้ว", "dhcp_lease_deleted": "ลบสัญญาเช่าคงที่ \"{{key}}\" สำเร็จแล้ว", + "dhcp_lease_updated": "อัปเดตสัญญาเช่าคงที่ \"{{key}}\" สำเร็จแล้ว", "dhcp_new_static_lease": "เช่าใหม่คงที่", + "dhcp_edit_static_lease": "แก้ไขสัญญาเช่าคงที่", "dhcp_static_leases_not_found": "ไม่พบสัญญาเช่า DHCP แบบคงที่", "dhcp_add_static_lease": "เพิ่มสัญญาเช่าคงที่", + "dhcp_reset_leases": "รีเซ็ตสัญญาเช่าทั้งหมด", + "dhcp_reset_leases_confirm": "คุณแน่ใจหรือว่าต้องการรีเซ็ตสัญญาเช่าทั้งหมด?", + "dhcp_reset_leases_success": "รีเซ็ตสัญญาเช่า DHCP สำเร็จแล้ว", + "dhcp_reset": "คุณแน่ใจหรือว่าต้องการรีเซ็ตการกำหนดค่า DHCP?", + "country": "ประเทศ", + "city": "เมือง", "delete_confirm": "คุณแน่ใจหรือว่าต้องการลบ \"{{key}}\"?", "form_enter_hostname": "ป้อนชื่อโฮสต์", "error_details": "รายละเอียดข้อผิดพลาด", - "request_details": "ขอรายละเอียด", + "response_details": "รายละเอียดการตอบกลับ", + "request_details": "รายละเอียดคำขอ", + "client_details": "รายละเอียดลูกข่าย", + "details": "รายละเอียด", "back": "กลับ", "dashboard": "แผงควบคุม", "settings": "การตั้งค่า", "filters": "ตัวกรอง", + "filter": "ตัวกรอง", "query_log": "บันทึกการสืบค้น", + "compact": "กะทัดรัด", "nothing_found": "ไม่พบอะไร", "faq": "คำถามที่พบบ่อย", "version": "รุ่น", "address": "ที่อยู่", + "protocol": "โปรโตคอล", "on": "เปิด", "off": "ปิด", "copyright": "ลิขสิทธิ์", @@ -66,17 +120,32 @@ "stats_malware_phishing": "ปิดกั้นมัลแวร์/ฟิชชิ่ง แล้ว", "stats_adult": "ปิดกั้นเว็บไซต์สำหรับผู้ใหญ่แล้ว", "stats_query_domain": "โดเมนที่เข้าบ่อยสุด", - "for_last_24_hours": "ในช่วง 24 ชั่วโมงที่ผ่านมา", + "for_last_hours": "สำหรับ {{count}} ชั่วโมงล่าสุด", + "for_last_hours_plural": "สำหรับ {{count}} ชั่วโมงล่าสุด", "for_last_days": "สำหรับ {{count}} วันสุดท้าย", "for_last_days_plural": "สำหรับ {{count}} วันล่าสุด", + "stats_disabled": "สถิติถูกปิดใช้งานแล้ว คุณสามารถเปิดใช้งานได้จาก <0>หน้าการตั้งค่า.", + "stats_disabled_short": "สถิติถูกปิดใช้งานแล้ว", "no_domains_found": "ไม่พบโดเมน", "requests_count": "จำนวนคำขอ", "top_blocked_domains": "โดเมนที่ถูกปิดกั้นมากที่สุด", "top_clients": "ลูกข่ายที่ใช้งานบ่อยสุด", "no_clients_found": "ไม่มีเครื่องลูกข่าย", "general_statistics": "สถิติทั่วไป", + "top_upstreams": "เซิร์ฟเวอร์ต้นทางที่ดีที่สุด", + "no_upstreams_data_found": "ไม่พบข้อมูลเซิร์ฟเวอร์ต้นทาง", + "number_of_dns_query_days": "จำนวนการสืบค้น DNS ที่ประมวลผลสำหรับ {{count}} วันล่าสุด", + "number_of_dns_query_days_plural": "จำนวนการสืบค้น DNS ที่ดำเนินการในช่วง {{count}} วันล่าสุด", + "number_of_dns_query_hours": "จำนวนการสืบค้น DNS ที่ดำเนินการในช่วง {{count}} ชั่วโมงล่าสุด", + "number_of_dns_query_hours_plural": "จำนวนการสืบค้น DNS ที่ดำเนินการในช่วง {{count}} ชั่วโมงล่าสุด", + "number_of_dns_query_blocked_24_hours": "จำนวนคำขอ DNS ที่ถูกปิดกั้นโดยตัวกรองปิดกั้นและโฮสต์รายการปิดกั้น", + "number_of_dns_query_blocked_24_hours_by_sec": "คำขอ DNS จำนวนหนึ่งถูกปิดกั้นโดยโมดูลความปลอดภัยการเรียกดู AdGuard", + "number_of_dns_query_blocked_24_hours_adult": "มีการปิดกั้นเว็บไซต์สำหรับผู้ใหญ่จำนวนหนึ่ง", "enforced_save_search": "บังคับใช้การค้นหาที่ปลอดภัย", + "number_of_dns_query_to_safe_search": "จำนวนคำขอ DNS ไปยังเครื่องมือค้นหาที่บังคับใช้การค้นหาปลอดภัย", "average_processing_time": "เวลาประมวลผลโดยเฉลี่ย", + "average_upstream_response_time": "เวลาเฉลี่ยในการตอบสนองของพอร์ต", + "response_time": "เวลาในการตอบสนอง", "average_processing_time_hint": "เวลาเฉลี่ยเป็นมิลลิวินาทีในการประมวลผลคำขอ DNS", "block_domain_use_filters_and_hosts": "ปิดกั้นโดเมนโดยใช้ตัวกรองและไฟล์โฮสต์", "filters_block_toggle_hint": "คุณสามารถตั้งค่ากฎการปิดกั้นในการตั้งค่าตัวกรอง", @@ -85,58 +154,104 @@ "use_adguard_parental": "ใช้บริการเว็บการควบคุมโดยผู้ปกครองของ AdGuard", "use_adguard_parental_hint": "AdGuard Home จะตรวจสอบว่าโดเมนมีเนื้อหาสำหรับผู้ใหญ่หรือไม่ มันใช้ API ความเป็นส่วนตัวเช่นเดียวกับบริการเว็บการรักษาความปลอดภัยการท่องเว็บ", "enforce_safe_search": "บังคับใช้การค้นหาที่ปลอดภัย", + "enforce_save_search_hint": "AdGuard Home จะบังคับใช้การค้นหาที่ปลอดภัยในเครื่องมือค้นหาต่อไปนี้: Google, YouTube, Bing, DuckDuckGo, Ecosia, Yandex, Pixabay", "no_servers_specified": "ไม่ได้ระบุเซิร์ฟเวอร์", "general_settings": "การตั้งค่าทั่วไป", "dns_settings": "การตั้งค่า DNS", - "custom_filtering_rules": "กฎการกรองที่กำหนดเอง", + "dns_blocklists": "รายการบล็อค DNS", + "dns_allowlists": "รายการอนุญาต DNS", + "dns_blocklists_desc": "AdGuard Home จะบล็อกโดเมนที่ตรงกับรายการบล็อค", + "dns_allowlists_desc": "โดเมนจาก DNS allowlists จะได้รับอนุญาตแม้ว่าจะอยู่ในรายการบล็อคก็ตาม", + "custom_filtering_rules": "รายการของกฎการกรอง", "encryption_settings": "การตั้งค่าการเข้ารหัส", "dhcp_settings": "การตั้งค่า DHCP", "upstream_dns": "เซิร์ฟเวอร์ DNS ต้นทาง", + "upstream_dns_help": "ป้อนที่อยู่เซิร์ฟเวอร์หนึ่งรายการต่อบรรทัด เรียนรู้เพิ่มเติม เกี่ยวกับการกำหนดค่าเซิร์ฟเวอร์ DNS ต้นทาง", + "upstream_dns_configured_in_file": "กำหนดค่าใน {{path}}", "test_upstream_btn": "ทดสอบต้นทาง", "upstreams": "ต้นทาง", + "upstream": "เซิร์ฟเวอร์ต้นทาง", "apply_btn": "นำไปใช้", "disabled_filtering_toast": "ปิดใช้งานการกรอง", "enabled_filtering_toast": "เปิดใช้งานการกรอง", "disabled_safe_browsing_toast": "ปิดใช้งานการเรียกดูอย่างปลอดภัย", - "enabled_safe_browsing_toast": "เปิดการใช้งาน safebrowsing", + "enabled_safe_browsing_toast": "เปิดใช้งานการเรียกดูอย่างปลอดภัย", "disabled_parental_toast": "ปิดใช้งานการควบคุมโดยผู้ปกครอง", - "enabled_parental_toast": "เปิดการใช้งานเข้าเว็บไม่พึงประสงค์", + "enabled_parental_toast": "เปิดการใช้งานควบคุมโดยผู้ปกครอง", "disabled_safe_search_toast": "ปิดใช้งานการค้นหาที่ปลอดภัย", "enabled_save_search_toast": "เปิดใช้งานการค้นหาที่ปลอดภัย", + "updated_save_search_toast": "การตั้งค่าการค้นหาที่ปลอดภัยได้รับการปรับปรุงแล้ว", "enabled_table_header": "เปิดใช้งาน", "name_table_header": "ชื่อ", + "list_url_table_header": "รายการ URL", "rules_count_table_header": "กฎการนับ", "last_time_updated_table_header": "ปรับปรุงครั้งล่าสุด", "actions_table_header": "การกระทำ", + "request_table_header": "คำขอ", "edit_table_action": "แก้ไข", "delete_table_action": "ลบ", + "elapsed": "ระยะเวลา", "filters_and_hosts_hint": "AdGuard Home เข้าใจกฎปิดกั้นโฆษณาพื้นฐานและโฮสต์ไฟล์ไวยากรณ์", + "no_blocklist_added": "ไม่มีรายการบล็อกเพิ่ม", + "no_whitelist_added": "ไม่มีการเพิ่มรายการอนุญาต", + "add_blocklist": "เพิ่มรายการบล็อก", + "add_allowlist": "ไม่มีรายการอนุญาต", "cancel_btn": "ยกเลิก", "enter_name_hint": "ป้อนชื่อ", + "enter_url_or_path_hint": "ป้อน URL หรือเส้นทางสัมบูรณ์ของรายการ", "check_updates_btn": "ตรวจสอบการปรับปรุง", + "new_blocklist": "รายการบล็อคใหม่", + "new_allowlist": "รายการอนุญาตใหม่", + "edit_blocklist": "แก้ไขรายการบล็อก", + "edit_allowlist": "แก้ไขรายการอนุญาต", + "choose_blocklist": "Choose blocklists", + "choose_allowlist": "เลือกรายการอนุญาต", + "enter_valid_blocklist": "ป้อน URL ที่ถูกต้องไปยังรายการปิดกั้น", + "enter_valid_allowlist": "ป้อน URL ที่ถูกต้องไปยังรายการที่อนุญาต", + "form_error_url_format": "รูปแบบ URL ไม่ถูกต้อง", + "form_error_url_or_path_format": "URL ไม่ถูกต้องหรือเส้นทางสัมบูรณ์ของรายการ", "custom_filter_rules": "กฎการกรองที่กำหนดเอง", "custom_filter_rules_hint": "ป้อนหนึ่งกฎในหนึ่งบรรทัด คุณสามารถใช้กฎปิดกั้นโฆษณาหรือโฮสต์ไฟล์ไวยากรณ์", + "system_host_files": "ไฟล์โฮสต์ระบบ", "examples_title": "ตัวอย่าง", "example_meaning_filter_block": "ปิดกั้นการเข้าถึงโดเมน example.org และโดเมนย่อยทั้งหมด", "example_meaning_filter_whitelist": "เลิกปิดกั้นการเข้าถึงโดเมน example.org และโดเมนย่อยทั้งหมด", "example_meaning_host_block": "ตอนนี้ AdGuard Home จะส่งคืนที่อยู่ 127.0.0.1 สำหรับโดเมน example.org (แต่ไม่ใช่โดเมนย่อย)", - "example_comment": "! นี่ความคิดเห็น", + "example_comment": "! นี่คือความคิดเห็น", "example_comment_meaning": "เพียงความคิดเห็น", "example_comment_hash": "# นอกจากนี้ยังมีความคิดเห็น", "example_regex_meaning": "ปิดกั้นการเข้าถึงโดเมนที่ตรงกับนิพจน์ทั่วไปที่ระบุ", "example_upstream_regular": "DNS ปกติ (มากกว่า UDP)", + "example_upstream_regular_port": "DNS ปกติ (ผ่าน UDP, พร้อมพอร์ต);", + "example_upstream_udp": "DNS ปกติ (ผ่าน UDP, ชื่อโฮสต์);", "example_upstream_dot": "encrypted <0>DNS-over-TLS แล้ว", "example_upstream_doh": "เข้ารหัส <0>DNS-over-HTTPS แล้ว", + "example_upstream_doh3": "DNS-over-HTTPS ถูกเข้ารหัสพร้อมแรงบีบ <0>HTTP/3 และไม่มีการย้อนกลับไปยัง HTTP/2 หรือต่ำกว่า;", + "example_upstream_doq": "เข้ารหัส <0> DNS-over-QUIC ", "example_upstream_sdns": "คุณสามรถใช้ <0>DNS Stamps กับ <1>DNSCrypt หรือ <2>DNS-over-HTTPS ตัวแก้ปัญหา", "example_upstream_tcp": "dNS ปกติ (ผ่าน TCP)", + "example_upstream_tcp_port": "DNS ปกติ (ผ่าน TCP, พร้อมพอร์ต);", + "example_upstream_tcp_hostname": "DNS ปกติ (ผ่าน TCP, ชื่อโฮสต์);", + "all_lists_up_to_date_toast": "รายการทั้งหมดเป็นข้อมูลล่าสุดอยู่แล้ว", + "updated_upstream_dns_toast": "อัปเดตเซิร์ฟเวอร์ DNS ต้นทาง", "dns_test_ok_toast": "เซิร์ฟเวอร์ DNS ที่ระบุทำงานอย่างถูกต้อง", "dns_test_not_ok_toast": "เซิร์ฟเวอร์ \"{{key}}\": ไม่สามารถใช้งานได้ โปรดตรวจสอบว่าคุณเขียนถูกต้อง", + "dns_test_parsing_error_toast": "ส่วน {{section}}: บรรทัด {{line}}: ไม่สามารถใช้งานได้ กรุณาตรวจสอบว่าคุณเขียนถูกต้องแล้ว", + "dns_test_warning_toast": "อัปสตรีม \"{{key}}\" ไม่ตอบสนองต่อคำขอทดสอบและอาจไม่ทำงานอย่างถูกต้อง", "unblock": "เลิกปิดกั้น", "block": "ปิดกั้น", + "disallow_this_client": "ไม่อนุญาตไคลเอ็นต์นี้", + "allow_this_client": "อนุญาตไคลเอ็นต์นี้", + "block_for_this_client_only": "ปิดกั้นสำหรับไคลเอ็นต์นี้เท่านั้น", + "unblock_for_this_client_only": "เลิกปิดกั้นสำหรับไคลเอนต์นี้เท่านั้น", + "add_persistent_client": "เพิ่มเป็นไคลเอนต์ถาวร", "time_table_header": "เวลา", + "date": "วันที่", "domain_name_table_header": "ชื่อโดเมน", + "domain_or_client": "โดเมนหรือไคลเอนต์", "type_table_header": "ประเภท", "response_table_header": "การตอบสนอง", + "response_code": "รหัสตอบกลับ", "client_table_header": "เครื่องลูกข่าย", "empty_response_status": "ว่างเปล่า", "show_all_filter_type": "แสดงทั้งหมด", @@ -155,45 +270,87 @@ "query_log_filtered": "กรองโดย {{filter}}", "query_log_confirm_clear": "คุณแน่ใจหรือไม่ว่าต้องการลบบันทึกการใช้งานทั้งหมด?", "query_log_cleared": "บันทึกการใช้งานได้รับการล้างเรียบร้อยแล้ว", + "query_log_updated": "อัปเดตบันทึกการสืบค้นสำเร็จแล้ว", "query_log_clear": "ล้างบันทึกการสืบค้น", - "query_log_retention": "แบบสอบถามบันทึกการเก็บรักษา", + "query_log_retention": "การหมุนเวียนบันทึกคำขอ", "query_log_enable": "เปิดใช้งานบันทึก", "query_log_configuration": "บันทึกการกำหนดค่า", "query_log_disabled": "บันทึกแบบสอบถามถูกปิดใช้งานและสามารถกำหนดค่าใน <0>การตั้งค่า", "query_log_strict_search": "ใช้เครื่องหมายคำพูดคู่เพื่อการค้นหาที่จำกัด", "query_log_retention_confirm": "คุณแน่ใจหรือไม่ว่าต้องการเปลี่ยนการเก็บข้อมูลบันทึกแบบสอบถาม? หากคุณลดค่าช่วงเวลา ข้อมูลบางอย่างจะหายไป", + "anonymize_client_ip": "ปิดบังเลข ip ของเครื่องลูกข่าย", + "anonymize_client_ip_desc": "อย่าบันทึกที่อยู่ IP แบบเต็มของไคลเอนต์ในบันทึกและสถิติ", "dns_config": "การกำหนดค่าเซิร์ฟเวอร์ DNS", + "dns_cache_config": "การกำหนดค่าแคช DNS", + "dns_cache_config_desc": "คุณสามารถกำหนดค่า DNS cache ได้ที่นี่", "blocking_mode": "โหมดการปิดกั้น", "default": "ค่าเริ่มต้น", "nxdomain": "NXDOMAIN", + "refused": "ปฏิเสธ", "null_ip": "IP ว่าง", "custom_ip": "IP กำหนดเอง", "blocking_ipv4": "ปิดกั้น IPv4", "blocking_ipv6": "ปิดกั้น IPv6", + "blocked_response_ttl": "การตอบกลับที่ถูกปิดกั้น TTL", + "blocked_response_ttl_desc": "ระบุว่าไคลเอนต์ควรแคชการตอบสนองที่ผ่านการกรองเป็นเวลากี่วินาที", + "form_enter_blocked_response_ttl": "ป้อนการตอบกลับที่ถูกบล็อค TTL (วินาที)", + "upstream_timeout": "ระยะเวลาหมดอายุของต้นทาง", + "upstream_timeout_desc": "ระบุจำนวนวินาทีที่ต้องรอการตอบกลับจากเซิร์ฟเวอร์ต้นทาง", + "form_enter_upstream_timeout": "ป้อนระยะเวลา timeout ของเซิร์ฟเวอร์ต้นทางเป็นวินาที", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", "dns_over_quic": "DNS-over-QUIC", + "client_id": "รหัสลูกค้า", + "client_id_placeholder": "ป้อนรหัสลูกค้า", + "client_id_desc": "ลูกค้าที่แตกต่างกันสามารถระบุได้ด้วยรหัสลูกค้าพิเศษ ที่นี่ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับวิธีระบุลูกค้า", + "download_mobileconfig_doh": "ดาวน์โหลด .mobileconfig สำหรับ DNS-over-HTTPS", + "download_mobileconfig_dot": "ดาวน์โหลด .mobileconfig สำหรับ DNS-over-TLS", + "download_mobileconfig": "ดาวน์โหลดไฟล์กำหนดค่า", + "plain_dns": "DNS ธรรมดา", "form_enter_rate_limit": "ป้อนขีดจำกัดอัตรา", "rate_limit": "จำกัดอัตรา", "edns_enable": "เปิดใช้งานซับเน็ตไคลเอ็นต์ EDNS", - "edns_cs_desc": "หากเปิดใช้งาน AdGuard Home จะส่งซับเน็ตของไคลเอนต์ไปยังเซิร์ฟเวอร์ DNS", + "edns_cs_desc": "เพิ่มตัวเลือก EDNS Client Subnet (ECS) ลงในคำร้องขอไปยัง upstream และบันทึกค่าที่ส่งโดยไคลเอนต์ในบันทึกคำขอ.", + "edns_use_custom_ip": "ใช้ IP ที่กำหนดเองสำหรับ EDNS", + "edns_use_custom_ip_desc": "อนุญาตให้ใช้ IP ที่กำหนดเองสำหรับ EDNS", + "rate_limit_desc": "จำนวนการร้องขอต่อวินาทีที่อนุญาตให้ไคลเอนต์เดียวทำ (0: ไม่จำกัดจำนวน)", + "rate_limit_subnet_len_ipv4": "ความยาวของคำนำหน้าซับเน็ตสำหรับที่อยู่ IPv4", + "rate_limit_subnet_len_ipv4_desc": "ความยาวพรีฟิกซ์ซับเน็ตสำหรับที่อยู่ IPv4 ที่ใช้สำหรับการจำกัดอัตรา ค่าเริ่มต้นคือ 24", + "rate_limit_subnet_len_ipv4_error": "ความยาวพรีฟิกซ์ซับเน็ต IPv4 ควรอยู่ระหว่าง 0 ถึง 32", + "rate_limit_subnet_len_ipv6": "ความยาวของคำนำหน้าซับเน็ตสำหรับที่อยู่ IPv6", + "rate_limit_subnet_len_ipv6_desc": "ความยาวพรีฟิกซ์ซับเน็ตสำหรับที่อยู่ IPv6 ที่ใช้สำหรับการจำกัดอัตรา ค่าเริ่มต้นคือ 56", + "rate_limit_subnet_len_ipv6_error": "ความยาวพรีฟิกซ์ซับเน็ต IPv6 ควรอยู่ระหว่าง 0 ถึง 128", + "form_enter_rate_limit_subnet_len": "ป้อนความยาวคำนำหน้าซับเน็ตเพื่อจำกัดอัตรา", + "rate_limit_whitelist": "รายการอนุญาตจำกัดอัตรา", + "rate_limit_whitelist_desc": "ที่อยู่ IP ที่ถูกยกเว้นจากการจำกัดอัตรา", + "rate_limit_whitelist_placeholder": "ป้อนที่อยู่ IP หนึ่งรายการต่อบรรทัด", "blocking_ipv4_desc": "ที่อยู่ IP ที่จะส่งคืนสำหรับคำขอที่ถูกปิดกั้น", "blocking_ipv6_desc": "ที่อยู่ IP ที่จะส่งคืนสำหรับคำขอ AAAA ที่ถูกปิดกั้น", + "blocking_mode_default": "ปฏิเสธ: ตอบสนองด้วย REFUSED เมื่อถูกปิดกั้นโดยกฎสไตล์ปิดกั้นโฆษณา; ตอบกลับด้วยที่อยู่ IP ที่ระบุในกฎเมื่อถูกปิดกั้นโดยกฎ /etc/hosts-style", + "blocking_mode_refused": "REFUSED: ตอบกลับด้วยรหัส REFUSED", "blocking_mode_nxdomain": "NXDOMAIN: ตอบสนองด้วยรหัส NXDOMAIN", "blocking_mode_null_ip": "Null IP: ตอบกลับด้วยที่อยู่เลขศูนย์ IP (0.0.0.0 สำหรับ A; :: สำหรับ AAAA)", "blocking_mode_custom_ip": "IP ที่กำหนดเอง: ตอบกลับด้วยที่อยู่ IP ที่ตั้งค่าด้วยตนเอง", + "theme_auto": "ออโต้", + "theme_light": "โหมดสว่าง", + "theme_dark": "โหมดมืด", "upstream_dns_client_desc": "หากคุณเว้นช่องนี้ว่างไว้ AdGuard Home จะใช้เซิร์ฟเวอร์ที่กำหนดค่าใน <0>การตั้งค่า DNS", + "tracker_source": "แหล่งที่มาของตัวติดตาม", "source_label": "ที่มา", "found_in_known_domain_db": "พบในฐานข้อมูลโดเมนที่รู้จัก", "category_label": "ประเภท", + "rule_label": "กฎ", + "list_label": "รายการ", "unknown_filter": "ตัวกรองที่ไม่รู้จัก {{filterId}}", + "known_tracker": "ตัวติดตามที่รู้จัก", "install_welcome_title": "ยินดีต้อนรับสู่ AdGuard Home", "install_welcome_desc": "AdGuard Home เป็นเซิร์ฟเวอร์ DNS ปิดกั้นโฆษณาและติดตามทั่วทั้งเครือข่าย วัตถุประสงค์คือเพื่อให้คุณควบคุมเครือข่ายทั้งหมดและอุปกรณ์ทั้งหมดของคุณและไม่จำเป็นต้องใช้โปรแกรมฝั่งไคลเอ็นต์", "install_settings_title": "รูปแบบเว็บสำหรับผู้ดูแล", "install_settings_listen": "รูปแบบการดักจับ", "install_settings_port": "พอร์ต", "install_settings_interface_link": "เว็บอินเตอร์เฟสผู้ดูแลระบบ AdGuard Home ของคุณจะพร้อมใช้งานตามที่อยู่ต่อไปนี้:", + "form_error_port": "ป้อนค่าพอร์ตที่ถูกต้อง", "install_settings_dns": "เซิรฟ์เวอร์ DNS", "install_settings_dns_desc": "คุณจะต้องกำหนดค่าอุปกรณ์หรือเราเตอร์ของคุณเพื่อใช้เซิร์ฟเวอร์ DNS ตามที่อยู่ต่อไปนี้:", "install_settings_all_interfaces": "อินเทอร์เฟซทั้งหมด", @@ -212,14 +369,16 @@ "install_devices_router": "เราเตอร์", "install_devices_router_desc": "การตั้งค่านี้จะครอบคลุมอุปกรณ์ทั้งหมดที่เชื่อมต่อกับเราเตอร์ที่บ้านของคุณโดยอัตโนมัติและคุณไม่จำเป็นต้องกำหนดค่าแต่ละอุปกรณ์ด้วยตนเอง", "install_devices_address": "เซิร์ฟเวอร์ DNS ของ AdGuard Home กำลังรับฟังตามที่อยู่ต่อไปนี้", + "install_devices_router_list_1": "เปิดการตั้งค่าสำหรับเราเตอร์ของคุณ โดยปกติแล้วคุณสามารถเข้าถึงได้จากเบราว์เซอร์ของคุณผ่าน URL (เช่น http://192.168.0.1/ หรือ http://192.168.1.1/) คุณอาจถูกขอให้ป้อนรหัสผ่าน หากคุณจำไม่ได้คุณสามารถรีเซ็ตรหัสผ่านได้บ่อยครั้งโดยกดปุ่มบนเราเตอร์เอง อย่างไรก็ตามคุณควรทราบว่าหากเลือกขั้นตอนนี้คุณอาจสูญเสียการกำหนดค่าของเราเตอร์ทั้งหมด หากเราเตอร์ของคุณต้องการแอปในการตั้งค่า กรุณาติดตั้งแอปบนโทรศัพท์หรือคอมพิวเตอร์ของคุณแล้วใช้เพื่อเข้าถึงการตั้งค่าของเราเตอร์", "install_devices_router_list_2": "ค้นหาการตั้งค่า DHCP/DNS ค้นหาตัวอักษร DNS ที่อยู่ถัดจากช่องที่อนุญาตให้มีตัวเลขสองหรือสามชุดโดยแต่ละกลุ่มแบ่งออกเป็นสี่กลุ่มหนึ่งถึงสามหลัก", "install_devices_router_list_3": "ป้อนที่อยู่เซิร์ฟเวอร์ AdGuard Home ของคุณที่นั่น", + "install_devices_router_list_4": "ในเราเตอร์บางประเภท ไม่สามารถตั้งค่าเซิร์ฟเวอร์ DNS แบบกำหนดเองได้ ในกรณีนั้น ให้ตั้งค่า AdGuard Home เป็นเซิร์ฟเวอร์ DHCP อาจช่วยได้ มิฉะนั้น คุณควรตรวจสอบคู่มือเราเตอร์เพื่อดูวิธีปรับแต่งเซิร์ฟเวอร์ DNS ในรุ่นเราเตอร์ของคุณโดยเฉพาะ", "install_devices_windows_list_1": "เปิด Control Panel โดยใช้ Start menu หรือ Windows search", "install_devices_windows_list_2": "ไปที่หมวด Network and Internet แล้วเลือก Network and Sharing Center", "install_devices_windows_list_3": "ทางด้านซ้ายจะมีคำว่า Change adapter settings ให้กดเข้าไป", "install_devices_windows_list_4": "เลือกการเชื่อมต่อที่ใช้งานอยู่ คลิกขวาแล้วเลือก Properties", "install_devices_windows_list_5": "ค้นหา Internet Protocol Version 4 (TCP/IP) แล้วคลิก Properties อีกครั้ง", - "install_devices_windows_list_6": "ค้นหา DNS server addresses ให้ทำการกรอกหมายเลข AdGuard Home ลงไปในช่อง", + "install_devices_windows_list_6": "เลือก \"ใช้ที่อยู่เซิร์ฟเวอร์ DNS ต่อไปนี้\" และป้อนที่อยู่เซิร์ฟเวอร์ AdGuard Home ของคุณ", "install_devices_macos_list_1": "คลิกโลโก้แอปเปิ้ลแล้วกด System Preferences", "install_devices_macos_list_2": "คลิก Network", "install_devices_macos_list_3": "เลือกการเชื่อมต่อแล้วคลิก Advanced", @@ -238,7 +397,8 @@ "open_dashboard": "เปิดหน้าควบคุม", "install_saved": "บันทึกเรียบร้อยแล้ว", "encryption_title": "การเข้ารหัส", - "encryption_desc": "การดข้ารหัส (HTTPS/TLS) รองรับทั้ง DNS และหน้าเว็บแอดมิน", + "encryption_desc": "การเข้ารหัส (HTTPS/QUIC/TLS) รองรับทั้ง DNS และหน้าเว็บแอดมิน", + "encryption_config_saved": "บันทึกการตั้งค่าเข้ารหัสเรียบร้อยแล้ว", "encryption_server": "ชื่อเซิร์ฟเวอร์", "encryption_server_enter": "ป้อนชื่อโดเมน", "encryption_redirect": "ไปเส้นทาง HTTPS อัตโนมัติ", @@ -247,6 +407,8 @@ "encryption_https_desc": "หากมีการกำหนดค่าพอร์ต HTTPS ส่วนติดต่อผู้ดูแลระบบของ AdGuard Home จะสามารถเข้าถึงได้ผ่าน HTTPS และจะให้ DNS-over-HTTPS ในตำแหน่ง '/dns-query'", "encryption_dot": "พอร์ต DNS-over-TLS", "encryption_dot_desc": "หากมีการกำหนดค่าพอร์ตนี้ AdGuard Home จะเรียกใช้เซิร์ฟเวอร์ DNS-over-TLS ในพอร์ตนี้", + "encryption_doq": "พอร์ต DNS-over-QUIC", + "encryption_doq_desc": "หากพอร์ตนี้ถูกกำหนดค่า AdGuard Home จะทำงานเซิร์ฟเวอร์ DNS-over-QUIC ที่พอร์ตนี้ และอาจจะยังไม่เชื่อถือได้ นอกจากนี้ยังมีผู้ใช้ที่ไม่มากนักที่รองรับในขณะนี้", "encryption_certificates": "ใบรับรอง", "encryption_certificates_desc": "ในการใช้การเข้ารหัสคุณต้องระบุเชนใบรับรอง SSL ที่ถูกต้องสำหรับโดเมนของคุณ คุณสามารถรับใบรับรองฟรีได้ที่ <0>{{link}} หรือคุณสามารถซื้อได้จากหนึ่งในผู้ออกใบรับรองที่เชื่อถือได้", "encryption_certificates_input": "คัดลอก/วางใบรับรองที่เข้ารหัส PEM ของคุณที่นี่", @@ -257,7 +419,7 @@ "encryption_enable": "เปิดการเข้ารหัส (HTTPS, DNS-over-HTTPS, และ DNS-over-TLS)", "encryption_enable_desc": "หากเปิดใช้งานการเข้ารหัสอินเทอร์เฟซผู้ดูแลระบบของ AdGuard Home จะทำงานผ่าน HTTPS และเซิร์ฟเวอร์ DNS จะรับฟังคำร้องขอผ่านทาง DNS-over-HTTPS และ DNS-over-TLS", "encryption_chain_valid": "ใบรับรองมีความน่าเชื่อถือ", - "encryption_chain_invalid": "ใบรับรองไม่มีความน่าเชื่อถือแต่สามรถใช้ได้", + "encryption_chain_invalid": "ใบรับรองไม่มีความน่าเชื่อถือ", "encryption_key_valid": "นี่เป็นคีย์ส่วนตัว {{type}} ที่ถูกต้อง", "encryption_key_invalid": "นี่เป็นคีย์ส่วนตัว {{type}} ที่ไม่ถูกต้อง", "encryption_subject": "เรื่อง:", @@ -265,12 +427,18 @@ "encryption_hostnames": "ชื่อโฮส", "encryption_reset": "คุณแน่ใจนะว่าจะล้างค่าการเข้ารหัส?", "encryption_warning": "คำเตือน", + "encryption_plain_dns_enable": "เปิดใช้งาน DNS ธรรมดา", + "encryption_plain_dns_desc": "DNS แบบธรรมดาจะเปิดใช้งานตามค่าเริ่มต้น คุณสามารถปิดใช้งานเพื่อบังคับให้อุปกรณ์ทั้งหมดใช้ DNS ที่เข้ารหัสได้ หากต้องการทำเช่นนี้ คุณต้องเปิดใช้งานโปรโตคอล DNS ที่เข้ารหัสอย่างน้อยหนึ่งโปรโตคอล", + "encryption_plain_dns_error": "หากต้องการปิดใช้งาน DNS ธรรมดา ให้เปิดใช้งานโปรโตคอล DNS ที่เข้ารหัสอย่างน้อยหนึ่งรายการ", "topline_expiring_certificate": "ใบรับรอง SSL ของคุณกำลังจะหมดอายุ กรุณาอัปเดท <0>การตั้งค่าเข้ารหัส.", "topline_expired_certificate": "ใบรับรอง SSL ของคุณหมดอายุแล้ว กรุณาอัปเดท <0>การตั้งค่าเข้ารหัส.", + "form_error_port_range": "ป้อนค่าพอร์ตในช่วง 80-65535", "form_error_port_unsafe": "เป็นพอร์ทที่ไม่ปลอดภัย", + "form_error_equal": "ไม่ควรตรงกัน", "form_error_password": "รหัสผ่านไม่ตรงกัน", "reset_settings": "รีเซ็ตการตั้งค่า", "update_announcement": "AdGuard Home {{version}} พร้อมแล้ว <0>กดตรงนี้ สำหรับข้อมูลเพิ่มเติม", + "setup_guide": "วิธีการตั้งค่า", "dns_addresses": "ที่อยู่ DNS", "dns_start": "เซิร์ฟเวอร์ DNS เริ่มทำงาน", "dns_status_error": "เกิดข้อผิดพลาดในการตรวจสอบสถานะเซิร์ฟเวอร์ DNS", @@ -279,9 +447,10 @@ "dns_providers": "นี่คือรายการ <0>ของผู้ให้บริการ DNS ที่เป็นที่รู้จัก ให้เลือก", "update_now": "อัปเดตตอนนี้", "update_failed": "อัปเดทล้มเหลว กรุณา ทำตามขั้นตอน เพื่ออัพเดทด้วยตนเอง", + "manual_update": "อัปเดทล้มเหลว กรุณา ทำตามขั้นตอน เพื่ออัพเดทด้วยตนเอง", "processing_update": "รอซักครู่ AdGuard Home กำลังอัปเดท", "clients_title": "เครื่องลูกข่าย", - "clients_desc": "ตั้งค่าอุปกรณ์เพื่อเชื่อมต่อ AdGuard Home", + "clients_desc": "ตั้งค่าอุปกรณ์ที่เชื่อมต่อกับ AdGuard Home", "settings_global": "ทั่วโลก", "settings_custom": "กำหนดเอง", "table_client": "เครื่องลูกข่าย", @@ -292,31 +461,65 @@ "client_edit": "แก้ไขเครื่องลูกข่าย", "client_identifier": "ตรวจสอบโดย", "ip_address": "IP addresses", + "client_identifier_desc": "ลูกค้าสามารถระบุได้โดยที่อยู่ IP, CIDR, ที่อยู่ MAC โปรดทราบว่าการใช้ MAC เป็นตัวระบุเป็นไปได้ก็ต่อเมื่อ AdGuard Home เป็น <0>เซิร์ฟเวอร์ DHCP ด้วย", "form_enter_ip": "กรอก IP", + "form_enter_subnet_ip": "กรอกที่อยู่ IP ในซับเน็ต \"{{cidr}}\"", "form_enter_mac": "กรอก MAC", "form_enter_id": "ป้อนตัวระบุ", "form_add_id": "เพิ่มตัวระบุ", "form_client_name": "กรอกชื่อเครื่องลูกข่าย", + "name": "ชื่อ", + "client_name": "ลูกค้า {{id}}", "client_global_settings": "ใช้การตั้งค่าทั่วโลก", "client_deleted": "เครื่อง \"{{key}}\" ลบเรียบร้อยแล้ว", "client_added": "เครื่อง \"{{key}}\" เพิ่มเรียบร้อยแล้ว", "client_updated": "อัปเดตเครื่อง \"{{key}}\" สำเร็จแล้ว", "clients_not_found": "ไม่มีเครื่องลูกข่าย", "client_confirm_delete": "คุณแน่ใจนะว่าจะลบเครื่อง \"{{key}}\"?", + "list_confirm_delete": "แน่ใจไหมว่าต้องการลบรายการนี้?", "auto_clients_title": "เครื่อง (runtime)", - "auto_clients_desc": "ข้อมูลเกี่ยวกับไคลเอนต์ที่ใช้ AdGuard Home แต่ไม่ได้เก็บไว้ในการกำหนดค่า", + "auto_clients_desc": "ข้อมูลเกี่ยวกับที่อยู่ IP ของอุปกรณ์ที่ใช้หรืออาจใช้ AdGuard Home ข้อมูลนี้ถูกรวบรวมจากหลายแหล่งรวมถึงไฟล์โฮสต์, DNS ย้อนกลับ ฯลฯ", "access_title": "เข้าถึงการตั้งค่า", "access_desc": "ที่นี่คุณสามารถกำหนดค่ากฎการเข้าถึงสำหรับเซิร์ฟเวอร์ AdGuard Home DNS", "access_allowed_title": "ลูกค้าที่ได้รับอนุญาต", - "access_allowed_desc": "รายการ CIDR หรือที่อยู่ IP หากกำหนดค่า AdGuard Home จะยอมรับคำขอจากที่อยู่ IP เหล่านี้เท่านั้น", + "access_allowed_desc": "รายการ CIDR หรือที่อยู่ IP หากมีการตั้งค่าไว้ AdGuard Home จะยอมรับคำขอจากที่อยู่ IP เหล่านี้เท่านั้น", "access_disallowed_title": "ลูกค้าไม่ได้รับอนุญาต", - "access_disallowed_desc": "รายการ CIDR หรือที่อยู่ IP หากกำหนดค่าไว้ AdGuard Home จะส่งคำขอจากที่อยู่ IP เหล่านี้", + "access_disallowed_desc": "รายการ CIDR หรือที่อยู่ IP ถ้าหากมีการตั้งค่าไว้ AdGuard Home จะยกเลิกคำขอจากที่อยู่ IP เหล่านี้ หากมีรายการใน Allowed clients จะไม่มีการพิจารณาฟิลด์นี้.", "access_blocked_title": "โดเมนที่ถูกปิดกั้น", + "access_blocked_desc": "อย่าสับสนกับตัวกรอง AdGuard Home จะลบคำขอ DNS ที่ตรงกับโดเมนเหล่านี้ และคำขอเหล่านี้จะไม่ปรากฏในบันทึกคำขอด้วยซ้ำ คุณสามารถระบุชื่อโดเมน ไวล์ดการ์ด หรือกฎตัวกรอง URL ได้ เช่น \"example.org\" \"*.example.org\" หรือ \"||example.org^\" ตามลำดับ", + "access_settings_saved": "บันทึกการตั้งค่าการเข้าถึงเรียบร้อยแล้ว", + "updates_version_equal": "AdGuard Home เป็นตัวล่าสุดแล้ว", "check_updates_now": "ตรวจสอบการปรับปรุง", + "version_request_error": "การตรวจสอบการอัปเดตล้มเหลว โปรดตรวจสอบการเชื่อมต่ออินเทอร์เน็ตของคุณ", + "dns_privacy": "ความเป็นส่วนตัวของ DNS", + "setup_dns_privacy_1": "<0>DNS-over-TLS ใช้ที่อยู่ <1>{{address}}", + "setup_dns_privacy_2": "<0>DNS-over-HTTPS ใช้ที่อยู่ <1>{{address}}", + "setup_dns_privacy_3": "<0>นี่คือรายการซอฟต์แวร์ที่คุณสามารถใช้ได้", + "setup_dns_privacy_4": "บนอุปกรณ์ iOS 14 หรือ macOS Big Sur คุณสามารถดาวน์โหลดไฟล์พิเศษ '.mobileconfig' ที่จะเพิ่มเซิร์ฟเวอร์ DNS-over-HTTPS หรือ DNS-over-TLS ลงในการตั้งค่า DNS", + "setup_dns_privacy_android_1": "Android 9 รองรับ DNS-over-TLS โดยตรง หากต้องการกำหนดค่า ให้ไปที่การตั้งค่า → เครือข่ายและอินเทอร์เน็ต → ขั้นสูง → DNS ส่วนตัว และป้อนชื่อโดเมนของคุณที่นั่น", + "setup_dns_privacy_android_2": "<0>AdGuard สำหรับ Android รองรับ <1>DNS-over-HTTPS และ <1>DNS-over-TLS -", + "setup_dns_privacy_android_3": "<0>ภายใน เพิ่ม <1>DNS-over-HTTPS รองรับระบบ Android", + "setup_dns_privacy_ios_1": "<0>DNS โคลก รองรับ <1>DNS-over-HTTPS แต่เพื่อกำหนดค่าให้ใช้เซิร์ฟเวอร์ของคุณเอง คุณจะต้องสร้าง <2>DNS Stamp สำหรับมัน", + "setup_dns_privacy_ios_2": "<0>AdGuard สำหรับ iOS รองรับ <1>DNS-over-HTTPS และ <1>DNS-over-TLS การตั้งค่า", "setup_dns_privacy_other_title": "การใช้งานอื่น ๆ", "setup_dns_privacy_other_1": "AdGuard Home จะส่ง DNS ที่ปลอดภัยทุกเครื่อทุกระบบ\n", "setup_dns_privacy_other_2": "<0>dnsproxy รองรับโปรโตคอล DNS ที่ปลอดภัยที่รู้จักทั้งหมด", + "setup_dns_privacy_other_3": "<0>พร็อกซี DNScrypt รองรับ <1>DNS-over-HTTPS -", + "setup_dns_privacy_other_4": "<0>โมซิลล่า ไฟร์ฟอกซ์ รองรับ <1>DNS-over-HTTPS -", + "setup_dns_privacy_other_5": "คุณจะพบการใช้งานเพิ่มเติมได้<0>ที่นี่ และ <1>ที่นี่ -", + "setup_dns_privacy_ioc_mac": "การกำหนดค่า iOS และ macOS", + "setup_dns_notice": "เพื่อใช้ <1>DNS-over-HTTPS หรือ <1>DNS-over-TLS คุณต้อง<0>กำหนดค่าการเข้ารหัส ในการตั้งค่า AdGuard Home", + "rewrite_added": "เพิ่มการเขียน DNS ใหม่สำหรับ \"{{key}}\" สำเร็จแล้ว", + "rewrite_deleted": "ลบการเขียน DNS ใหม่สำหรับ \"{{key}}\" สำเร็จแล้ว", + "rewrite_updated": "อัปเดตการเขียน DNS ใหม่สำเร็จแล้ว", "rewrite_add": "เพิ่ม DNS rewrite", + "rewrite_edit": "แก้ไขการเขียน DNS ใหม่", + "rewrite_not_found": "ไม่พบการเขียน DNS ใหม่", + "rewrite_confirm_delete": "คุณแน่ใจหรือไม่ว่าต้องการลบการเขียน DNS ใหม่สำหรับ \"{{key}}\"", + "rewrite_desc": "ช่วยให้สามารถกำหนดค่าการตอบสนอง DNS แบบกำหนดเองสำหรับชื่อโดเมนเฉพาะได้อย่างง่ายดาย", + "rewrite_applied": "กฎการเขียนใหม่ถูกนำมาใช้", + "rewrite_hosts_applied": "เขียนใหม่โดยกฎไฟล์โฮสต์", + "dns_rewrites": "การเขียน DNS ใหม่", "form_domain": "ป้อนชื่อโดเมน", "form_answer": "ป้อนชื่อโดเมนหรือ IP", "form_error_domain_format": "รูปแบบ Domain ไม่ถูกต้อง", @@ -344,21 +547,29 @@ "interval_days": "{{count}} วัน", "interval_days_plural": "{{count}} วัน", "domain": "โดเมน", + "ecs": "อีซีเอส", + "punycode": "Punycode", "answer": "คำตอบ", "filter_added_successfully": "ตัวกรองเพิ่มเรียบร้อยแล้ว", + "filter_removed_successfully": "รายการถูกลบเรียบร้อยแล้ว", "filter_updated": "อัปเดตตัวกรองสำเร็จแล้ว", "statistics_configuration": "การกำหนดค่าสถิติ", "statistics_retention": "การเก็บรักษาสถิติ", "statistics_retention_desc": "หากคุณลดค่าช่วงเวลาข้อมูลบางอย่างจะหายไป", - "statistics_clear": "ล้างสถิติ", + "statistics_clear": " ล้างค่าสถิติ", "statistics_clear_confirm": "คุณแน่ใจหรือไม่ว่าต้องการล้างสถิติ?", "statistics_retention_confirm": "คุณแน่ใจหรือไม่ว่าต้องการเปลี่ยนการเก็บรักษาสถิติ? หากคุณลดค่าช่วงเวลา ข้อมูลบางอย่างจะหายไป", "statistics_cleared": "สถิติได้ถูกล้างเรียบร้อยแล้ว", + "statistics_enable": "เปิดใช้งานสถิติ", + "ignore_domains": "โดเมนที่ถูกละเว้น (แยกด้วยการขึ้นบรรทัดใหม่)", + "ignore_domains_title": "โดเมนที่ถูกละเว้น", + "ignore_domains_desc_stats": "คำค้นที่ตรงกับกฎเหล่านี้จะไม่ถูกเขียนลงในสถิติ", + "ignore_domains_desc_query": "คำค้นที่ตรงกับกฎเหล่านี้จะไม่ถูกเขียนลงในบันทึกคำค้น", "interval_hours": "{{count}} ชั่วโมง", "interval_hours_plural": "{{count}} ชั่วโมง", "filters_configuration": "การกำหนดค่าตัวกรอง", "filters_enable": "เปิดใช้งานตัวกรอง", - "filters_interval": "ตัวกรองช่วงเวลาการอัปเดต", + "filters_interval": "ช่วงเวลาการอัปเดตตัวกรอง", "disabled": "ปิดใช้งาน", "username_label": "ชื่อผู้ใช้", "username_placeholder": "ป้อนชื่อผู้ใช้", @@ -376,12 +587,19 @@ "whois": "Whois", "filtering_rules_learn_more": "<0>เรียนรู้เพิ่มเติม เกี่ยวกับการสร้างรายการปิดกั้นโฮสต์ของคุณเอง", "blocked_by_response": "ปิดกั้นโดย CNAME หรือ IP ในการตอบกลับ", + "blocked_by_cname_or_ip": "บล็อกโดย CNAME หรือ IP", "try_again": "ลองอีกครั้ง", "domain_desc": "ป้อนชื่อโดเมนหรือไวด์การ์ดที่คุณต้องการเขียนใหม่", "example_rewrite_domain": "เขียนคำตอบซ้ำสำหรับชื่อโดเมนนี้เท่านั้น", "example_rewrite_wildcard": "เขียนคำตอบใหม่ทั้งหมดสำหรับ <0>example.org โดเมนย่อย", + "rewrite_ip_address": "ที่อยู่ IP: ใช้ IP นี้ในการตอบสนอง A หรือ AAAA", + "rewrite_domain_name": "ชื่อโดเมน: เพิ่มระเบียน CNAME", + "rewrite_A": "<0>A: ค่าเฉพาะ, เก็บ <0>A บันทึกจาก upstream", + "rewrite_AAAA": "<0>AAAA: ค่าเฉพาะ, เก็บ <0>AAAA บันทึกจาก upstream", "disable_ipv6": "ปิดใช้งาน IPv6", "disable_ipv6_desc": "หากเปิดใช้งานคุณสมบัตินี้การสืบค้น DNS ทั้งหมดสำหรับที่อยู่ IPv6 (ประเภท AAAA) จะถูกทิ้ง", + "fastest_addr": "ที่อยู่ IP ที่เร็วที่สุด", + "fastest_addr_desc": "รอการตอบกลับจาก ทั้งหมด เซิร์ฟเวอร์ DNS, วัดความเร็วการเชื่อมต่อ TCP สำหรับแต่ละเซิร์ฟเวอร์, และคืนค่าที่อยู่ IP ของเซิร์ฟเวอร์ที่มีความเร็วการเชื่อมต่อเร็วที่สุด.
โหมดนี้อาจทำให้การค้นหา DNS ช้าลงอย่างมีนัยสำคัญหากหนึ่งหรือหลายเซิร์ฟเวอร์ต้นทางไม่ได้ตอบกลับ ตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ต้นทางของคุณมีเสถียรภาพและเวลาตอบกลับของคุณต่ำ.", "autofix_warning_text": "หากคุณคลิก \"แก้ไข\" AdGuardHome จะกำหนดค่าระบบของคุณเพื่อใช้เซิร์ฟเวอร์ AdGuardHome", "autofix_warning_list": "มันจะทำงานเหล่านี้: <0>ปิดการใช้งานระบบ DNSStubListener <0>ตั้งที่อยู่เซิร์ฟเวอร์ DNS เป็น 127.0.0.1 <0>แทนที่เป้าหมายลิงก์สัญลักษณ์ของ /etc/resolv.conf เป็น /run/systemd/resolve/resolv.conf <0>หยุด DNSStubListener (โหลดบริการแก้ไขระบบซ้ำ)", "autofix_warning_result": "ดังนั้น AdGuardHome จะประมวลผลคำขอ DNS ทั้งหมดจากระบบของคุณตามค่าเริ่มต้น", @@ -390,21 +608,145 @@ "form_select_tags": "เลือกแท็กเครื่อง", "check_title": "ตรวจสอบการกรอง", "check_desc": "ตรวจสอบว่าชื่อโฮสต์ถูกกรอง", + "check": "ตรวจสอบ", "form_enter_host": "ป้อนชื่อโฮสต์", + "filtered_custom_rules": "ถูกกรองโดยกฎการกรองที่กำหนดเอง", + "choose_from_list": "เลือกจากรายการ", + "add_custom_list": "เพิ่มรายการที่กำหนดเอง", + "host_whitelisted": "โฮสต์ได้รับอนุญาต", + "check_ip": "IP addresses: {{ip}}", + "check_cname": "CNAME: {{cname}}", + "check_reason": "เหตุผล: {{reason}}", + "check_service": "ชื่อบริการ: {{service}}", + "check_hostname": "ชื่อโฮสต์หรือชื่อโดเมน", + "check_client_id": "ตัวระบุไคลเอนต์ (ClientID หรือ ที่อยู่ IP)", + "check_enter_client_id": "ป้อนตัวระบุคล้าย", + "check_dns_record": "เลือกประเภทระเบียน DNS", + "service_name": "ชื่อบริการ", + "check_not_found": "ไม่พบในรายการตัวกรองของคุณ", + "client_confirm_block": "คุณแน่ใจนะว่าจะบล็อกเครื่อง \"{{ip}}\"?", + "client_confirm_unblock": "คุณแน่ใจนะว่าจะยกเลิกบล็อกเครื่อง \"{{ip}}\"?", + "client_blocked": "บล็อกเครื่อง \"{{ip}}\" สำเร็จแล้ว", + "client_unblocked": "ยกเลิกบล็อกเครื่อง \"{{ip}}\" สำเร็จแล้ว", + "static_ip": "ที่อยู่ IP แบบคงที่", + "static_ip_desc": "AdGuard Home เป็นเซิร์ฟเวอร์ดังนั้นจึงต้องการที่อยู่ IP แบบคงที่เพื่อให้ทำงานได้อย่างถูกต้อง มิฉะนั้นในบางครั้งเราเตอร์ของคุณอาจกำหนดที่อยู่ IP อื่นให้กับอุปกรณ์นี้", + "set_static_ip": "ตั้งค่าที่อยู่ IP แบบคงที่", + "install_static_ok": "ข่าวดี! ที่อยู่ IP คงที่ได้ถูกกำหนดค่าแล้ว", + "install_static_error": "AdGuard Home ไม่สามารถกำหนดค่าโดยอัตโนมัติสำหรับอินเตอร์เฟซเครือข่ายนี้ได้ กรุณาหาเอกสารในการทำขั้นตอนนี้ด้วยตนเอง.", + "install_static_configure": "AdGuard Home ตรวจพบว่าใช้ที่อยู่ IP แบบไดนามิก <0>{{ip}} คุณต้องการให้ตั้งเป็นที่อยู่ IP คงที่ของคุณหรือไม่?", + "confirm_static_ip": "AdGuard Home จะกำหนด {{ip}} เป็นที่อยู่ IP คงที่ของคุณ คุณต้องการดำเนินการต่อหรือไม่?", + "list_updated": "{{count}} รายการได้รับการอัปเดต", + "list_updated_plural": "{{count}} รายการอัปเดต", + "dnssec_enable": "เปิดใช้ DNSSEC", + "dnssec_enable_desc": "ตั้งค่าสถานะ DNSSEC ในการสืบค้น DNS ขาออกและตรวจสอบผลลัพธ์ (ต้องใช้ตัวแก้ไขที่เปิดใช้ DNSSEC)", + "validated_with_dnssec": "ตรวจสอบกับ DNSSEC", + "all_queries": "ทุกการสอบถาม", "show_blocked_responses": "ปิดกั้นแล้ว", "show_whitelisted_responses": "รายการที่อนุญาต", "show_processed_responses": "ประมวลผลแล้ว", + "blocked_safebrowsing": "ถูกบล็อกโดยการค้นหาที่ปลอดภัย", "blocked_adult_websites": "ถูกปิดกั้นโดยการควบคุมของผู้ปกครอง", - "safe_search": "ค้นหาอย่างปลอดภัย", - "blocklist": "บัญชีดำ", + "blocked_threats": "ภัยคุกคามที่ถูกบล็อก", "allowed": "รายการที่อนุญาต", + "filtered": "ถูกกรอง", + "rewritten": "เขียนใหม่", + "safe_search": "ค้นหาอย่างปลอดภัย", + "blocklist": "บัญชีดำของระบบ", + "milliseconds_abbreviation": "ms", + "cache_size": "ขนาดแคช", + "cache_size_desc": "ขนาดแคช DNS (ในไบต์). เพื่อปิดการตั้งค่าแคช, ตั้งค่าเป็น 0.", + "cache_ttl_min_override": "ไม่มีการกำหนดค่า TTL ขั้นต่ำ", + "cache_ttl_max_override": "ไม่มีการกำหนดค่า TTL สูงสุด", + "enter_cache_size": "ป้อนขนาดแคช (ไบต์)", + "enter_cache_ttl_min_override": "ป้อน TTL ขั้นต่ำ (วินาที)", + "enter_cache_ttl_max_override": "ป้อน TTL สูงสุด (วินาที)", + "cache_ttl_min_override_desc": "ขยายค่าเวลาที่สั้น (วินาที) ที่ได้รับจากเซิร์ฟเวอร์ upstream เมื่อแคชตอบสนอง DNS", + "cache_ttl_max_override_desc": "ตั้งค่าค่าระยะเวลาการมีชีวิตสูงสุด (วินาที) สำหรับคำแนะนำในแคช DNS", + "ttl_cache_validation": "ค่าการเขียนทับ TTL ของแคชขั้นต่ำจะต้องน้อยกว่าหรือเท่ากับค่าสูงสุด", + "cache_optimistic": "การเก็บข้อมูลแบบมีความหวัง", + "cache_optimistic_desc": "ทำให้ AdGuard Home ตอบกลับจากแคช แม้เมื่อข้อมูลหมดอายุแล้ว และยังลองรีเฟรชข้อมูลด้วย.", + "filter_category_general": "ทั่วไป", + "filter_category_security": "ความปลอดภัย", + "filter_category_regional": "ภูมิภาค", "filter_category_other": "อื่น ๆ", + "filter_category_general_desc": "รายการที่ปิดกั้นการติดตามและโฆษณาบนอุปกรณ์ส่วนใหญ่", + "filter_category_security_desc": "รายการที่ออกแบบมาเพื่อปิดกั้นโดเมนที่เป็นอันตราย ฟิชชิ่ง และโดเมนหลอกลวง", + "filter_category_regional_desc": "รายการที่เน้นโฆษณาระดับภูมิภาคและเซิร์ฟเวอร์ตัวติดตาม", + "filter_category_other_desc": "รายการปิดกั้นอื่น ๆ", + "setup_config_to_enable_dhcp_server": "ตั้งค่าคอนฟิกเพื่อเปิดใช้งานเซิร์ฟเวอร์ DHCP", + "original_response": "ตอบกลับเดิม", + "click_to_view_queries": "คลิกเพื่อดูคำถาม", + "port_53_faq_link": "พอร์ต 53 มักถูกครอบครองโดยบริการ \"DNSStubListener\" หรือ \"systemd-resolved\" โปรดอ่าน <0>คำแนะนำนี้ เกี่ยวกับวิธีแก้ไขปัญหานี้", + "adg_will_drop_dns_queries": "AdGuard Home จะลบคำขอ DNS ทั้งหมดจากไคลเอนต์นี้", + "filter_allowlist": "คำเตือน: การดำเนินการนี้จะยกเว้นกฎ \"{{disallowed_rule}}\" จากรายการไคลเอนต์ที่อนุญาตด้วย", + "last_rule_in_allowlist": "ไม่สามารถไม่อนุญาตไคลเอนต์นี้ได้เนื่องจากการยกเว้นกฎ \"{{disallowed_rule}}\" จะปิดการใช้งานรายการ \"ไคลเอนต์ที่อนุญาต\"", + "use_saved_key": "ใช้คีย์ที่บันทึกไว้ก่อนหน้านี้", "parental_control": "ควบคุมโดยผู้ปกครอง", + "safe_browsing": "ท่องเว็บอย่างปลอดภัย", + "served_from_cache_label": "เสิร์ฟจากแคช", + "form_error_password_length": "รหัสผ่านต้องมีความยาว {{min}} ถึง {{max}} อักขระ", + "anonymizer_notification": "<0>หมายเหตุ: เปิดใช้งานการไม่ระบุตัวตนของ IP แล้ว คุณสามารถปิดใช้งานได้ใน <1>การตั้งค่าทั่วไป -", + "confirm_dns_cache_clear": "คุณแน่ใจหรือไม่ว่าต้องการล้างแคช DNS?", + "cache_cleared": "ล้างแคช DNS สำเร็จแล้ว", + "clear_cache": "ล้างแคช", + "make_static": "ทำให้คงที่", + "theme_auto_desc": "อัตโนมัติ (ขึ้นอยู่กับโทนสีของอุปกรณ์ของคุณ)", + "theme_dark_desc": "ธีมสีเข้ม", + "theme_light_desc": "ธีมสีอ่อน", + "disable_for_seconds": "เป็นเวลา {{count}} วินาที", + "disable_for_seconds_plural": "เป็นเวลา {{count}} วินาที", + "disable_for_minutes": "เป็นเวลา {{count}} นาที", + "disable_for_minutes_plural": "เป็นเวลา {{count}} นาที", + "disable_for_hours": "เป็นเวลา {{count}} ชั่วโมง", + "disable_for_hours_plural": "เป็นเวลา {{count}} ชั่วโมง", + "disable_until_tomorrow": "จนกว่าจะถึงวันพรุ่งนี้", + "disable_notify_for_seconds": "ปิดใช้งานการป้องกันเป็นเวลา {{count}} วินาที", + "disable_notify_for_seconds_plural": "ปิดใช้งานการป้องกันเป็นเวลา {{count}} วินาที", + "disable_notify_for_minutes": "ปิดใช้งานการป้องกันเป็นเวลา {{count}} นาที", + "disable_notify_for_minutes_plural": "ปิดใช้งานการป้องกันเป็นเวลา {{count}} นาที", + "disable_notify_for_hours": "ปิดใช้งานการป้องกันเป็นเวลา {{count}} ชั่วโมง", + "disable_notify_for_hours_plural": "ปิดใช้งานการป้องกันเป็นเวลา {{count}} ชั่วโมง", + "disable_notify_until_tomorrow": "ปิดการป้องกันจนถึงพรุ่งนี้", + "enable_protection_timer": "การป้องกันจะเปิดใช้งานใน {{time}}", + "custom_retention_input": "ป้อนการเก็บรักษาเป็นชั่วโมง", + "custom_rotation_input": "ป้อนการหมุนรอบเป็นชั่วโมง", + "protection_section_label": "การป้องกัน", + "log_and_stats_section_label": "บันทึกการสอบถามและสถิติ", + "ignore_query_log": "ละเว้นไคลเอนต์นี้ในบันทึกการค้นหา", + "ignore_statistics": "ละเว้นไคลเอนต์นี้ในสถิติ", + "schedule_services": "หยุดการบล็อคบริการ", + "schedule_services_desc": "กำหนดค่ากำหนดการหยุดชั่วคราวของตัวกรองการบล็อคบริการ", + "schedule_services_desc_client": "กำหนดค่ากำหนดการหยุดชั่วคราวของตัวกรองการบล็อคบริการสำหรับไคลเอนต์นี้", + "schedule_desc": "ตั้งค่าระยะเวลาที่ไม่มีกิจกรรมสำหรับบริการที่ถูกบล็อค", + "schedule_invalid_select": "เวลาเริ่มต้นต้องอยู่ก่อนเวลาสิ้นสุด", + "schedule_select_days": "เลือกวัน", + "schedule_timezone": "เลือกโซนเวลา", + "schedule_current_timezone": "เขตเวลาปัจจุบัน: {{value}}", + "schedule_time_all_day": "ตลอดทั้งวัน", + "schedule_modal_description": "ตารางนี้จะมาแทนที่ตารางที่มีอยู่สำหรับวันเดียวกันของสัปดาห์ แต่ละวันของสัปดาห์สามารถมีช่วงที่ไม่มีกิจกรรมได้เพียงช่วงเดียวเท่านั้น", + "schedule_modal_time_off": "ไม่มีการบล็อคบริการ:", + "schedule_new": "ตารางใหม่", + "schedule_edit": "แก้ไขตารางเวลา", + "schedule_save": "บันทึกตารางเวลา", + "schedule_add": "เพิ่มตารางเวลา", + "schedule_remove": "ลบตารางเวลา", + "schedule_from": "จาก", + "schedule_to": "ถึง", + "sunday": "วันอาทิตย์", + "monday": "วันจันทร์", + "tuesday": "อังคาร", + "wednesday": "พุธ", + "thursday": "พฤหัสบดี", + "friday": "ศุกร์", + "saturday": "เสาร์", "sunday_short": "อาทิตย์", "monday_short": "จันทร์", "tuesday_short": "อังคาร", "wednesday_short": "พุธ", "thursday_short": "พฤหัส", "friday_short": "ศุกร์", - "saturday_short": "เสาร์" + "saturday_short": "เสาร์", + "upstream_dns_cache_configuration": "การกำหนดค่าแคช DNS สำหรับเซิร์ฟเวอร์ต้นทาง", + "enable_upstream_dns_cache": "เปิดใช้งานการแคช DNS สำหรับการกำหนดค่าสำหรับลูกค้ารายนี้", + "dns_cache_size": "ขนาดแคช DNS, เป็นไบต์" } diff --git a/client/src/__locales/tr.json b/client/src/__locales/tr.json index aa2f58cc..97ae1c9c 100644 --- a/client/src/__locales/tr.json +++ b/client/src/__locales/tr.json @@ -1,24 +1,24 @@ { "client_settings": "İstemci ayarları", - "example_upstream_reserved": "<0>belirli alan adları için bir üst sunucusu;", - "example_multiple_upstreams_reserved": "<0>belirli alanlar için birden fazla üst kaynaklar;", + "example_upstream_reserved": "<0>belirli alan adları için bir üst kaynak;", + "example_multiple_upstreams_reserved": "<0>belirli alan adları için birden fazla üst kaynak;", "example_upstream_comment": "bir yorum.", - "upstream_parallel": "Tüm üst sunucuları eş zamanlı sorgulayarak çözümlemeyi hızlandırmak için paralel sorgular kullanın.", - "parallel_requests": "Paralel istekler", + "upstream_parallel": "Tüm üst kaynak sunucuları aynı anda sorgulayarak çözümlemeyi hızlandırır.", + "parallel_requests": "Eş zamanlı sorgu", "load_balancing": "Yük dengeleme", - "load_balancing_desc": "Aynı anda bir üst kaynak sunucusunu sorgulayın. AdGuard Home, en düşük başarısız arama sayısına ve en düşük ortalama arama süresine sahip sunucuları seçmek için ağırlıklı rastgele bir algoritma kullanır.", - "bootstrap_dns": "DNS Önyükleme sunucuları", + "load_balancing_desc": "Üst kaynak sunucuları aynı anda sorgulanır.
AdGuard Home, en düşük başarısız sorgu sayısına ve en düşük ortalama sorgu süresine sahip sunucuları seçmek için ağırlıklı rastgele algoritma kullanır.", + "bootstrap_dns": "Ön yükleme DNS sunucuları", "bootstrap_dns_desc": "Üst kaynak olarak belirttiğiniz DoH/DoT çözümleyicilerin IP adreslerini çözümlemek için kullanılan DNS sunucularının IP adresleri. Yorumlara izin verilmez.", "fallback_dns_title": "Yedek DNS sunucuları", "fallback_dns_desc": "Yukarı akış DNS sunucuları yanıt vermediğinde kullanılan yedek DNS sunucularının listesi. Söz dizimi yukarıdaki ana üst kaynak alanıyla aynıdır.", "fallback_dns_placeholder": "Her satıra bir yedek DNS sunucusu girin", "local_ptr_title": "Özel ters DNS sunucuları", - "local_ptr_desc": "AdGuard Home tarafından özel PTR, SOA ve NS istekleri için kullanılan DNS sunucuları. Bir istek, özel IP aralıkları (\"192.168.12.34\" gibi) içinde bir alt ağ içeren bir ARPA alan adı ister ve özel IP adresine sahip bir istemciden gelirse özel olarak kabul edilir. Ayarlanmadığı durumda AdGuard Home, IP adresleri dışında işletim sisteminizin varsayılan DNS çözümleyicileri kullanılır.", + "local_ptr_desc": "AdGuard Home tarafından özel PTR, SOA ve NS istekleri için kullanılan DNS sunucuları. Bir istek, özel IP aralıklarında (örneğin \"192.168.12.34\" gibi) bir alt ağ içeren bir ARPA alanı soruyorsa ve özel bir IP adresine sahip bir istemciden geliyorsa özel kabul edilir. Ayarlanmadığı durumda AdGuard Home IP adresleri hariç, işletim sisteminizin varsayılan DNS çözümleyicileri kullanılır.", "local_ptr_default_resolver": "AdGuard Home, varsayılan olarak aşağıdaki ters DNS çözümleyicilerini kullanır: {{ip}}.", "local_ptr_no_default_resolver": "AdGuard Home, bu sistem için uygun olan özel ters DNS çözümleyicilerini belirleyemedi.", "local_ptr_placeholder": "Her satıra bir IP adresi girin", "resolve_clients_title": "İstemcilerin IP adreslerinin ters çözümlenmesini etkinleştir", - "resolve_clients_desc": "Karşılık gelen çözümleyicilere (yerel istemciler için özel DNS sunucuları, genel IP adresleri olan istemciler için üst sunucuları) PTR sorguları göndererek istemcilerin IP adreslerini ana makine adlarının tersine çözün.", + "resolve_clients_desc": "Belirtilen çözümleyicilere (yerel istemciler için özel DNS sunucuları, genel IP adresi olan istemciler için üst kaynak sunucuları) PTR sorguları göndererek istemcilerin IP adreslerinin ana makine adlarına tersine çözülmesini sağlar.", "use_private_ptr_resolvers_title": "Özel ters DNS çözümleyicileri kullan", "use_private_ptr_resolvers_desc": "Özel üst kaynak sunucuları, DHCP, /etc/hosts, vb. aracılığıyla özel IP adresleri içeren ARPA alan adları için PTR, SOA ve NS isteklerini çözümleyin. Devre dışı bırakılırsa, AdGuard Home bu tür tüm isteklere NXDOMAIN ile yanıt verir.", "check_dhcp_servers": "DHCP sunucularını denetle", @@ -71,7 +71,7 @@ "dhcp_warning": "DHCP sunucusunu yine de etkinleştirmek istiyorsanız, ağınızda başka bir aktif DHCP sunucusu olmadığından emin olun, aksi takdirde ağa bağlı cihazların internet bağlantısı kesilebilir!", "dhcp_error": "AdGuard Home, ağda başka bir etkin DHCP sunucusu olup olmadığını belirleyemedi", "dhcp_static_ip_error": "DHCP sunucusunu kullanmak için sabit bir IP adresi ayarlanmalıdır. AdGuard Home, bu ağ arayüzünün sabit bir IP adresi kullanılarak yapılandırılıp yapılandırılmadığını belirleyemedi. Lütfen sabit IP adresini elle ayarlayın.", - "dhcp_dynamic_ip_found": "Sisteminiz, <0>{{interfaceName}} arayüzü için dinamik IP adresi yapılandırması kullanıyor. DHCP sunucusunu kullanmak için sabit bir IP adresi ayarlanmalıdır. Geçerli olan IP adresiniz <0>{{ipAddress}}. \"DHCP sunucusunu etkinleştir\" düğmesine basarsanız, AdGuard Home bu IP adresini otomatik bir şekilde sabit olarak ayarlayacaktır.", + "dhcp_dynamic_ip_found": "Sisteminiz, <0>{{interfaceName}} arayüzü için değişebilen IP adresi yapılandırması kullanıyor. DHCP sunucusunu kullanmak için sabit bir IP adresi ayarlanmalıdır. Geçerli olan IP adresiniz <0>{{ipAddress}}. \"DHCP sunucusunu etkinleştir\" düğmesine basarsanız, AdGuard Home bu IP adresini otomatik bir şekilde sabit olarak ayarlar.", "dhcp_lease_added": "Sabit kiralama \"{{key}}\" başarıyla eklendi", "dhcp_lease_deleted": "Sabit kiralama \"{{key}}\" başarıyla silindi", "dhcp_lease_updated": "Statik kiralama \"{{key}}\" başarıyla güncellendi", @@ -122,8 +122,8 @@ "stats_query_domain": "Başlıca sorgulanan alan adları", "for_last_hours": "son {{count}} saat için", "for_last_hours_plural": "son {{count}} saat için", - "for_last_days": "son {{count}} gün boyunca", - "for_last_days_plural": "son {{count}} gün boyunca", + "for_last_days": "son {{count}} gün için", + "for_last_days_plural": "son {{count}} gün için", "stats_disabled": "İstatistikler devre dışı bırakıldı. Bunu, <0>ayarlar sayfasından etkinleştirebilirsiniz.", "stats_disabled_short": "İstatistikler devre dışı bırakıldı", "no_domains_found": "Alan adı bulunamadı", @@ -134,10 +134,10 @@ "general_statistics": "Genel istatistikler", "top_upstreams": "Başlıca üst kaynaklar", "no_upstreams_data_found": "Üst kaynak verisi bulunamadı", - "number_of_dns_query_days": "Son {{count}} gün boyunca işlenen DNS sorgularının sayısı", - "number_of_dns_query_days_plural": "Son {{count}} gün boyunca işlenen DNS sorgularının sayısı", - "number_of_dns_query_hours": "Son {{count}} saat için işlenen DNS sorgularının sayısı", - "number_of_dns_query_hours_plural": "Son {{count}} saatiçin işlenen DNS sorgularının sayısı", + "number_of_dns_query_days": "Son {{count}} gün içinde işlenen DNS sorgularının sayısı", + "number_of_dns_query_days_plural": "Son {{count}} gün içinde işlenen DNS sorgularının sayısı", + "number_of_dns_query_hours": "Son {{count}} saat içinde işlenen DNS sorgularının sayısı", + "number_of_dns_query_hours_plural": "Son {{count}} saat içinde işlenen DNS sorgularının sayısı", "number_of_dns_query_blocked_24_hours": "Reklam engelleme filtreleri ve hosts engel listeleri tarafından engellenen DNS isteklerinin sayısı", "number_of_dns_query_blocked_24_hours_by_sec": "AdGuard gezinti koruması modülü tarafından engellenen DNS isteklerinin sayısı", "number_of_dns_query_blocked_24_hours_adult": "Engellenen yetişkin içerikli sitelerin sayısı", @@ -165,10 +165,10 @@ "custom_filtering_rules": "Özel filtreleme kuralları", "encryption_settings": "Şifreleme ayarları", "dhcp_settings": "DHCP ayarları", - "upstream_dns": "Üst DNS sunucusu", + "upstream_dns": "Üst kaynak DNS sunucusu", "upstream_dns_help": "Her satıra bir sunucu adresi girin. Üst DNS sunucularını yapılandırma hakkında daha fazla bilgi edinin.", "upstream_dns_configured_in_file": "{{path}} dosyasında yapılandırıldı", - "test_upstream_btn": "Üst sunucuyu test et", + "test_upstream_btn": "Üst kaynakları test et", "upstreams": "Üst kaynak", "upstream": "Üst kaynak", "apply_btn": "Uygula", @@ -198,7 +198,7 @@ "add_allowlist": "İzin listesi ekle", "cancel_btn": "İptal", "enter_name_hint": "Ad girin", - "enter_url_or_path_hint": "Listenin URL adresini veya dosya yolunu girin", + "enter_url_or_path_hint": "Listenin URL'sini veya dosya yolunu girin", "check_updates_btn": "Güncellemeleri denetle", "new_blocklist": "Yeni engel listesi", "new_allowlist": "Yeni izin listesi", @@ -208,8 +208,8 @@ "choose_allowlist": "İzin listelerini seçin", "enter_valid_blocklist": "Engel listesine geçerli bir URL girin.", "enter_valid_allowlist": "İzin listesine geçerli bir URL girin.", - "form_error_url_format": "Geçersiz URL biçimi", - "form_error_url_or_path_format": "Geçersiz URL adresi veya dosya yolu", + "form_error_url_format": "URL biçimi geçersiz", + "form_error_url_or_path_format": "Listenin URL'si veya dosya konumu geçersiz", "custom_filter_rules": "Özel filtreleme kuralları", "custom_filter_rules_hint": "Her satıra bir kural girin. Reklam engelleme kuralı veya hosts dosyası söz dizimi kullanabilirsiniz.", "system_host_files": "Sistem hosts dosyaları", @@ -232,7 +232,7 @@ "example_upstream_tcp": "normal DNS (TCP üzerinden);", "example_upstream_tcp_port": "normal DNS (TCP üzerinden, bağlantı noktası ile);", "example_upstream_tcp_hostname": "normal DNS (TCP üzerinden, ana makine adı);", - "all_lists_up_to_date_toast": "Tüm listeler güncel durumda", + "all_lists_up_to_date_toast": "Tüm listeler güncel", "updated_upstream_dns_toast": "Üst sunucular başarıyla kaydedildi", "dns_test_ok_toast": "Belirtilen DNS sunucuları düzgün çalışıyor", "dns_test_not_ok_toast": "Sunucu \"{{key}}\": kullanılamıyor, lütfen doğru yazdığınızdan emin olun", @@ -245,7 +245,7 @@ "block_for_this_client_only": "Yalnızca bu istemci için engelle", "unblock_for_this_client_only": "Yalnızca bu istemci için engellemeyi kaldır", "add_persistent_client": "Kalıcı istemci olarak ekle", - "time_table_header": "Saat", + "time_table_header": "Süre", "date": "Tarih", "domain_name_table_header": "Alan adı", "domain_or_client": "Alan adı veya istemci", @@ -272,14 +272,14 @@ "query_log_cleared": "Sorgu günlüğü başarıyla temizlendi", "query_log_updated": "Sorgu günlüğü başarıyla güncellendi", "query_log_clear": "Sorgu günlüklerini temizle", - "query_log_retention": "Sorgu günlükleri rotasyonu", + "query_log_retention": "Sorgu günlüğü döngüsü", "query_log_enable": "Günlüğü etkinleştir", "query_log_configuration": "Günlük yapılandırması", "query_log_disabled": "Sorgu günlüğü devre dışı bırakıldı, bunu <0>ayarlar kısmından yapılandırılabilirsiniz", "query_log_strict_search": "Tam arama için çift tırnak işareti kullanın", - "query_log_retention_confirm": "Sorgu günlüğü rotasyonunu değiştirmek istediğinizden emin misiniz? Aralık değerini düşürürseniz, bazı veriler kaybolacaktır.", + "query_log_retention_confirm": "Sorgu günlüğü döngüsünü değiştirmek istediğinizden emin misiniz? Aralık değerini düşürürseniz, bazı veriler kaybolacaktır", "anonymize_client_ip": "İstemcinin IP adresini gizle", - "anonymize_client_ip_desc": "İstemcinin tam IP adresini günlüklere veya istatistiklere kaydetmeyin", + "anonymize_client_ip_desc": "İstemcinin tam IP adresini günlüklere veya istatistiklere kaydetmez", "dns_config": "DNS sunucu yapılandırması", "dns_cache_config": "DNS önbellek yapılandırması", "dns_cache_config_desc": "Burada DNS önbelleğini yapılandırabilirsiniz", @@ -291,8 +291,8 @@ "custom_ip": "Özel IP", "blocking_ipv4": "IPv4 engelleme", "blocking_ipv6": "IPv6 engelleme", - "blocked_response_ttl": "Engellenen yanıt kullanım süresi", - "blocked_response_ttl_desc": "İstemcilerin filtrelenmiş bir yanıtı kaç saniye süreyle önbelleğe alması gerektiğini belirtir", + "blocked_response_ttl": "Engellenen yanıtın geçerlilik süresi", + "blocked_response_ttl_desc": "İstemcilerin filtrelenmiş bir yanıtı kaç saniye boyunca önbellekte tutması gerektiğini belirtir", "form_enter_blocked_response_ttl": "Engellenen yanıt kullanım süresini girin (saniye)", "upstream_timeout": "Üst kaynak zaman aşımı", "upstream_timeout_desc": "Üst kaynak sunucusundan yanıt almak için kaç saniye bekleneceğini belirtir", @@ -302,8 +302,8 @@ "dns_over_tls": "DNS-over-TLS", "dns_over_quic": "DNS-over-QUIC", "client_id": "İstemci Kimliği", - "client_id_placeholder": "İstemci Kimliği girin", - "client_id_desc": "İstemciler, İstemci Kimliği ile tanımlanabilir. İstemcileri nasıl tanımlayacağınız hakkında daha fazla bilgiyi buradan öğrenin.", + "client_id_placeholder": "İstemci kimliği girin", + "client_id_desc": "İstemciler, İstemci Kimliği ile tanımlanabilir. İstemcileri nasıl tanımlayacağınız hakkında daha fazla bilgiye buradan ulaşabilirsiniz.", "download_mobileconfig_doh": "DNS-over-HTTPS için .mobileconfig dosyasını indir", "download_mobileconfig_dot": "DNS-over-TLS için .mobileconfig dosyasını indir", "download_mobileconfig": "Yapılandırma dosyasını indir", @@ -327,18 +327,18 @@ "rate_limit_whitelist_placeholder": "Her satıra bir IP adresi girin", "blocking_ipv4_desc": "Engellenen bir A isteği için geri döndürülecek IP adresi", "blocking_ipv6_desc": "Engellenen bir AAAA isteği için geri döndürülecek IP adresi", - "blocking_mode_default": "Varsayılan: Reklam engelleme stili kuralı tarafından engellendiğinde sıfır IP adresiyle (A için 0.0.0.0; :: AAAA için) yanıt verin; /etc/hosts-tarzı kural tarafından engellendiğinde, kuralda belirtilen IP adresiyle yanıt verin", + "blocking_mode_default": "Varsayılan: Reklam engelleyici tarzı kural tarafından engellendiğinde sıfır IP adresiyle (A için 0.0.0.0; AAAA için ::) yanıt verir; /etc/hosts tarzı kural tarafından engellendiğinde, kuralda belirtilen IP adresiyle yanıt verir", "blocking_mode_refused": "REFUSED: REFUSED koduyla yanıt verin", "blocking_mode_nxdomain": "NXDOMAIN: NXDOMAIN koduyla yanıt verin", - "blocking_mode_null_ip": "Boş IP: Sıfır IP adresiyle yanıt verin (A için 0.0.0.0; :: AAAA için)", - "blocking_mode_custom_ip": "Özel IP: El ile ayarlanmış bir IP adresiyle yanıt verin", + "blocking_mode_null_ip": "Boş IP: Sıfır IP adresiyle yanıt verin (A için 0.0.0.0; AAAA için ::)", + "blocking_mode_custom_ip": "Özel IP: Elle ayarlanmış IP adresiyle yanıt verin", "theme_auto": "Otomatik", "theme_light": "Açık", "theme_dark": "Koyu", "upstream_dns_client_desc": "Bu alanı boş bırakırsanız, AdGuard Home, <0>DNS ayarlarında yapılandırılan sunucuları kullanır.", "tracker_source": "İzleyici kaynağı", "source_label": "Kaynak", - "found_in_known_domain_db": "Alan adlarının bilindiği veri tabanında bulundu.", + "found_in_known_domain_db": "Bilinen alan adları veri tabanında bulundu.", "category_label": "Kategori", "rule_label": "Kural", "list_label": "Liste", @@ -365,7 +365,7 @@ "install_devices_title": "Cihazlarınızı yapılandırın", "install_devices_desc": "AdGuard Home'u kullanmaya başlamak için, cihazlarınızı onu kullanacak şekilde yapılandırmanız gerekir.", "install_submit_title": "Tebrikler!", - "install_submit_desc": "Yükleme işlemi tamamlandı ve artık AdGuard Home'u kullanmaya hazırsınız.", + "install_submit_desc": "Kurulum işlemi tamamlandı ve artık AdGuard Home'u kullanmaya hazırsınız.", "install_devices_router": "Yönlendirici", "install_devices_router_desc": "Bu kurulum, ev yönlendiricinize bağlı tüm cihazları otomatik olarak kapsar ve her birini elle yapılandırmanıza gerek yoktur.", "install_devices_address": "AdGuard Home DNS sunucusu aşağıdaki adresleri dinliyor", @@ -375,21 +375,21 @@ "install_devices_router_list_4": "Bazı yönlendirici türlerinde özel bir DNS sunucusu yapılandırılamaz. Bu durumda, AdGuard Home'u bir <0>DHCP sunucusu olarak yapılandırmak yardımcı olabilir. Aksi takdirde, yönlendirici modelinizde DNS sunucularını nasıl özelleştireceğinizi öğrenmek için yönlendirici kılavuzunu kontrol etmelisiniz.", "install_devices_windows_list_1": "Başlat menüsünden veya Windows araması aracılığıyla Denetim Masası'nı açın.", "install_devices_windows_list_2": "Ağ ve İnternet kategorisine girin ve ardından Ağ ve Paylaşım Merkezi'ne girin.", - "install_devices_windows_list_3": "Sol panelde \"Bağdaştırıcı ayarlarını değiştirin\" öğesine tıklayın.", + "install_devices_windows_list_3": "Panelin solunda \"Bağdaştırıcı ayarlarını değiştirin\" öğesine tıklayın.", "install_devices_windows_list_4": "Kullandığınız aktif bağlantının üzerine sağ tıklayın ve Özellikler öğesine tıklayın.", "install_devices_windows_list_5": "Listede \"İnternet Protokolü Sürüm 4 (TCP/IPv4)\" (veya IPv6 için \"İnternet Protokolü Sürüm 6 (TCP/IPv6)\") öğesini bulun, seçin ve ardından tekrar Özellikler öğesine tıklayın.", - "install_devices_windows_list_6": "\"Aşağıdaki DNS sunucu adreslerini kullan\"ı seçin ve AdGuard Home sunucu adreslerinizi girin.", + "install_devices_windows_list_6": "\"Aşağıdaki DNS sunucu adreslerini kullan\" seçeneğini seçin ve ardından AdGuard Home sunucunuzun adreslerini girin.", "install_devices_macos_list_1": "Apple simgesine tıklayın ve Sistem Tercihleri öğesine gidin.", "install_devices_macos_list_2": "Ağ öğesine tıklayın.", "install_devices_macos_list_3": "Listedeki ilk bağlantıyı seçin ve Gelişmiş öğesine tıklayın.", "install_devices_macos_list_4": "DNS sekmesini seçin ve AdGuard Home sunucunuzun adreslerini girin.", "install_devices_android_list_1": "Android Menüsü ana ekranından Ayarlar'a dokunun.", - "install_devices_android_list_2": "Menüde bulunan Wi-Fi öğesine dokunun. Mevcut tüm ağlar listelenecektir (telefon ağlar için özel DNS sunucusu ayarlanamaz).", + "install_devices_android_list_2": "Menüde bulunan Wi-Fi öğesine dokunun. Mevcut tüm ağlar listelenecektir (mobil ağlar için özel DNS sunucusu ayarlanamaz).", "install_devices_android_list_3": "Bağlı olduğunuz ağın üzerine basılı tutun ve Ağı Değiştir'e dokunun.", "install_devices_android_list_4": "Bazı cihazlarda, diğer ayarları görmek için \"Gelişmiş\" seçeneğini seçmeniz gerekebilir. Android DNS ayarlarınızı yapmak için IP ayarlarını DHCP modundan Statik moda değiştirmeniz gerekir.", "install_devices_android_list_5": "DNS 1 ve DNS 2 değerlerini AdGuard Home sunucunuzun adresleriyle değiştirin.", "install_devices_ios_list_1": "Ana ekrandan Ayarlar'a dokunun.", - "install_devices_ios_list_2": "Sol menüde bulunan Wi-Fi bölümüne girin (telefon ağlar için özel DNS sunucusu ayarlanamaz).", + "install_devices_ios_list_2": "Sol menüde bulunan Wi-Fi bölümüne girin (mobil ağlar için özel DNS sunucusu ayarlanamaz).", "install_devices_ios_list_3": "O anda aktif olan ağın adına dokunun.", "install_devices_ios_list_4": "DNS alanına AdGuard Home sunucunuzun adreslerini girin.", "get_started": "Başla", @@ -402,14 +402,14 @@ "encryption_server": "Sunucu adı", "encryption_server_enter": "Alan adınızı girin", "encryption_server_desc": "Ayarlanırsa, AdGuard Home ClientID'leri algılar, DDR sorgularına yanıt verir ve ek bağlantı doğrulamaları gerçekleştirir. Ayarlanmazsa, bu özellikler devre dışı bırakılır. Sertifikadaki DNS Adlarından biriyle eşleşmelidir.", - "encryption_redirect": "Otomatik olarak HTTPS'e yönlendir", + "encryption_redirect": "HTTPS'e otomatik olarak yönlendir", "encryption_redirect_desc": "İşaretlenirse, AdGuard Home sizi otomatik olarak HTTP adresinden HTTPS adreslerine yönlendirir.", "encryption_https": "HTTPS bağlantı noktası", "encryption_https_desc": "HTTPS bağlantı noktası yapılandırılırsa, AdGuard Home yönetici arayüzüne HTTPS aracılığıyla erişilebilir olacak ve ayrıca '/dns-query' üzerinden DNS-over-HTTPS bağlantısı sağlar.", "encryption_dot": "DNS-over-TLS bağlantı noktası", "encryption_dot_desc": "Bu bağlantı noktası yapılandırılırsa, AdGuard Home, DNS-over-TLS sunucusunu bu bağlantı noktası üzerinden çalıştırır.", "encryption_doq": "DNS-over-QUIC bağlantı noktası", - "encryption_doq_desc": "Bu bağlantı noktası yapılandırılırsa, AdGuard Home, bu bağlantı noktasında bir DNS-over-QUIC sunucusu çalıştırır.", + "encryption_doq_desc": "Bu bağlantı noktası yapılandırılırsa, AdGuard Home, DNS-over-QUIC sunucusunu bu bağlantı noktası üzerinden çalıştırır.", "encryption_certificates": "Sertifikalar", "encryption_certificates_desc": "Şifrelemeyi kullanmak için alan adınıza geçerli bir SSL sertifika zinciri sağlamanız gerekir. <0>{{link}} adresinden ücretsiz bir sertifika alabilir veya güvenilir Sertifika Yetkililerinden satın alabilirsiniz.", "encryption_certificates_input": "PEM biçimindeki sertifikalarınızı kopyalayıp buraya yapıştırın.", @@ -420,7 +420,7 @@ "encryption_enable": "Şifrelemeyi etkinleştir (HTTPS, DNS-over-HTTPS ve DNS-over-TLS)", "encryption_enable_desc": "Şifrelemeyi etkinleştirirseniz, AdGuard Home yönetici arayüzü HTTPS üzerinden çalışır ve DNS sunucusu, DNS-over-HTTPS ve DNS-over-TLS üzerinden gelen istekleri dinler.", "encryption_chain_valid": "Sertifika zinciri geçerli", - "encryption_chain_invalid": "Sertifika zinciri geçersiz.", + "encryption_chain_invalid": "Sertifika zinciri geçersiz", "encryption_key_valid": "Bu geçerli bir {{type}} özel anahtarıdır", "encryption_key_invalid": "Bu geçersiz bir {{type}} özel anahtarıdır", "encryption_subject": "Konu", @@ -429,7 +429,7 @@ "encryption_reset": "Şifreleme ayarlarını sıfırlamak istediğinizden emin misiniz?", "encryption_warning": "Uyarı", "encryption_plain_dns_enable": "Düz DNS'i etkinleştir", - "encryption_plain_dns_desc": "Düz DNS varsayılan olarak etkindir. Tüm aygıtları şifrelenmiş DNS kullanmaya zorlamak için bunu devre dışı bırakabilirsiniz. Bunu yapmak için en az bir şifrelenmiş DNS protokolünü etkinleştirmeniz gerekir", + "encryption_plain_dns_desc": "Düz DNS varsayılan olarak etkindir. Tüm cihazları şifrelenmiş DNS kullanmaya zorlamak için bunu devre dışı bırakabilirsiniz. Bunu yapmak için en az bir şifrelenmiş DNS protokolünü etkinleştirmeniz gerekir", "encryption_plain_dns_error": "Düz DNS'i devre dışı bırakmak için en az bir şifrelenmiş DNS protokolünü etkinleştirin", "topline_expiring_certificate": "SSL sertifikanızın süresi sona üzere. <0>Şifreleme ayarlarını güncelleyin.", "topline_expired_certificate": "SSL sertifikanızın süresi sona erdi. <0>Şifreleme ayarlarını güncelleyin.", @@ -438,11 +438,11 @@ "form_error_equal": "Aynı olmamalıdır", "form_error_password": "Parolalar uyuşmuyor", "reset_settings": "Ayarları sıfırla", - "update_announcement": "AdGuard Home {{version}} sürümü artık mevcut! Daha fazla bilgi için <0>buraya tıklayın.", + "update_announcement": "AdGuard Home'un {{version}} sürümü mevcut! Daha fazla bilgi için <0>buraya tıklayın.", "setup_guide": "Kurulum Rehberi", "dns_addresses": "DNS adresleri", "dns_start": "DNS sunucusu başlatılıyor", - "dns_status_error": "DNS sunucusunun durumu denetlenirken bir hata oluştu", + "dns_status_error": "DNS sunucusunun durumu denetlenirken hata oluştu", "down": "Kapalı", "fix": "Düzelt", "dns_providers": "Aralarından seçim yapabileceğiniz, bilinen <0>DNS sağlayıcıların listesi.", @@ -451,7 +451,7 @@ "manual_update": "Elle güncellemek için lütfen bu adımları uygulayın.", "processing_update": "Lütfen bekleyin, AdGuard Home güncelleniyor", "clients_title": "Kalıcı istemciler", - "clients_desc": "AdGuard Home'a bağlı cihazlar için kalıcı istemci kayıtlarını yapılandırın", + "clients_desc": "AdGuard Home'a bağlı cihazlar için kalıcı istemci kayıtlarını yapılandırır", "settings_global": "Genel", "settings_custom": "Özel", "table_client": "İstemci", @@ -468,7 +468,7 @@ "form_enter_mac": "MAC adresi girin", "form_enter_id": "Tanımlayıcı girin", "form_add_id": "Tanımlayıcı ekle", - "form_client_name": "İstemci ismi girin", + "form_client_name": "İstemci adını girin", "name": "Adı", "client_name": "İstemci {{id}}", "client_global_settings": "Genel ayarları kullan", @@ -481,18 +481,18 @@ "auto_clients_title": "Çalışma zamanı istemcileri", "auto_clients_desc": "AdGuard Home'u kullanan veya kullanabilecek cihazların IP adresleri hakkında bilgiler. Bu bilgiler, ana bilgisayar dosyaları, ters DNS sorguları ve çeşitli diğer kaynaklardan toplanmaktadır.", "access_title": "Erişim ayarları", - "access_desc": "AdGuard Home DNS sunucusu için erişim kurallarını buradan yapılandırabilirsiniz", + "access_desc": "AdGuard Home DNS sunucusu için erişim kuralları buradan yapılandırılabilir", "access_allowed_title": "İzin verilen istemciler", - "access_allowed_desc": "CIDR'lerin, IP adreslerinin veya İstemci Kimliklerin listesi. Bu listede girişler varsa, AdGuard Home yalnızca bu istemcilerden gelen istekleri kabul eder.", + "access_allowed_desc": "CIDR'lerin, IP adreslerinin veya İstemci Kimliklerinin listesi. Bu listede girişler varsa, AdGuard Home yalnızca bu istemcilerden gelen istekleri kabul eder.", "access_disallowed_title": "İzin verilmeyen istemciler", - "access_disallowed_desc": "CIDR'lerin, IP adreslerinin veya İstemci Kimliklerin listesi. Bu listede girişler varsa, AdGuard Home bu istemcilerden gelen istekleri keser. İzin verilen istemcilerde girişler varsa, bu alan yok sayılır.", + "access_disallowed_desc": "CIDR'lerin, IP adreslerinin veya İstemci Kimliklerinin listesi. Bu listede girişler varsa, AdGuard Home bu istemcilerden gelen istekleri kabul etmez. İzin verilen istemcilerde girişler varsa, bu alan yok sayılır.", "access_blocked_title": "İzin verilmeyen alan adları", "access_blocked_desc": "Bu işlem filtrelerle ilgili değildir. AdGuard Home, bu alan adlarından gelen DNS sorgularını yanıtsız bırakır ve bu sorgular sorgu günlüğünde görünmez. Tam alan adlarını, joker karakterleri veya URL filtre kurallarını belirtebilirsiniz, örn. \"example.org\", \"*.example.org\" veya \"||example.org^\".", "access_settings_saved": "Erişim ayarları başarıyla kaydedildi!", "updates_checked": "AdGuard Home'un yeni bir sürümü mevcut", - "updates_version_equal": "AdGuard Home yazılımı güncel durumda", + "updates_version_equal": "AdGuard Home güncel", "check_updates_now": "Güncellemeleri şimdi denetle", - "version_request_error": "Güncelleme denetimi başarısız. Lütfen internet bağlantınızı kontrol edin.", + "version_request_error": "Güncelleme denetlenemedi. Lütfen internet bağlantınızı kontrol edin.", "dns_privacy": "DNS Gizliliği", "setup_dns_privacy_1": "<0>DNS-over-TLS: <1>{{address}} dizesini kullan.", "setup_dns_privacy_2": "<0>DNS-over-HTTPS: <1>{{address}} dizesini kullan.", @@ -533,14 +533,14 @@ "blocked_services_desc": "Popüler siteleri ve hizmetleri hızlı bir şekilde engellemenizi sağlar.", "blocked_services_saved": "Engellenen hizmetler başarıyla kaydedildi", "blocked_services_global": "Genel olarak engellenen hizmetleri kullan", - "blocked_service": "Engellenen hizmet", + "blocked_service": "Hizmet engellendi", "block_all": "Tümünü engelle", "unblock_all": "Tüm engellemeyi kaldır", "encryption_certificate_path": "Sertifika dosya yolu", - "encryption_private_key_path": "Özel anahtar yolu", + "encryption_private_key_path": "Özel anahtar dosya yolu", "encryption_certificates_source_path": "Bir sertifika dosyası yolu ayarlayın", "encryption_certificates_source_content": "Sertifika içeriğini yapıştır", - "encryption_key_source_path": "Özel bir anahtar dosyası belirleyin", + "encryption_key_source_path": "Özel bir anahtar dosyası belirle", "encryption_key_source_content": "Özel anahtar içeriğini yapıştır", "stats_params": "İstatistik yapılandırması", "config_successfully_saved": "Yapılandırma başarıyla kaydedildi", @@ -592,27 +592,27 @@ "blocked_by_cname_or_ip": "CNAME veya IP tarafından engellendi", "try_again": "Tekrar dene", "domain_desc": "Yeniden yazılmasını istediğiniz alan adını veya joker karakteri girin.", - "example_rewrite_domain": "yanıtları yalnızca bu alan adı için yeniden yaz.", - "example_rewrite_wildcard": "tüm <0>example.org alt alanları için yanıtları yeniden yaz.", - "rewrite_ip_address": "IP adresi: bu IP'yi A veya AAAA yanıtında kullanın", - "rewrite_domain_name": "Alan adı: bir CNAME kaydı ekleyin", - "rewrite_A": "<0>A: özel değer, üst sunucudan gelen <0>A kayıtlarını tutun", - "rewrite_AAAA": "<0>AAA: özel değer, üst sunucudan gelen <0>AAA kayıtlarını tutun", + "example_rewrite_domain": "yanıtları yalnızca bu alan adı için yeniden yazar.", + "example_rewrite_wildcard": "tüm <0>example.org yanıtları alt alan adları için yeniden yazar.", + "rewrite_ip_address": "IP adresi: bu IP'yi A veya AAAA yanıtında kullanır", + "rewrite_domain_name": "Alan adı: bir CNAME kaydı ekler", + "rewrite_A": "<0>A: özel değer, üst kaynak sunucudan gelen <0>A kayıtlarını tutar", + "rewrite_AAAA": "<0>AAA: özel değer, üst sunucudan gelen <0>AAA kayıtlarını tutar", "disable_ipv6": "IPv6 adreslerinin çözümlenmesini devre dışı bırak", - "disable_ipv6_desc": "IPv6 adresleri için tüm DNS sorgularını bırakın (AAAA yazın) ve HTTPS yanıtlarından IPv6 ipuçlarını kaldırın.", + "disable_ipv6_desc": "IPv6 adresleri için tüm DNS sorgularını yanıtsız bırakır (AAAA yazar) ve HTTPS yanıtlarından IPv6 ipuçlarını kaldırır.", "fastest_addr": "En hızlı IP adresi", "fastest_addr_desc": "Tüm DNS sunucularından yanıt bekler, her sunucu için TCP bağlantı hızını ölçer ve en hızlı bağlantı hızına sahip sunucunun IP adresini döndürür.
Bu yapılandırma, bir veya daha fazla üst kaynak sunucusu yanıt vermediğinde, DNS sorgularını önemli ölçüde yavaşlatabilir. Üst kaynak sunucularınızın kararlı olduğundan ve üst kaynak zaman aşım sürenizin düşük olduğundan emin olun.", "autofix_warning_text": "\"Düzelt\" seçeneğine tıklarsanız, AdGuard Home, sisteminizi AdGuard Home DNS sunucusunu kullanacak şekilde yapılandırır.", "autofix_warning_list": "Bu görevleri gerçekleştirir: <0>Sistem DNSStubListener'ı devre dışı bırakın <0>DNS sunucusu adresini 127.0.0.1 olarak ayarlayın <0>/etc/resolv.conf'un sembolik bağlantı hedefini /run/systemd/resolve/resolv.conf ile değiştirin<0> <0>DNSStubListener'ı durdurun (systemd çözümlenmiş hizmeti yeniden yükleyin)", "autofix_warning_result": "Sonuç olarak, sisteminizden gelen tüm DNS istekleri varsayılan olarak AdGuard Home tarafından işlenecektir.", "tags_title": "Etiketler", - "tags_desc": "İstemciyi tanımlayan etiketleri seçebilirsiniz. Filtreleme kurallarına etiketleri dahil ederek daha hassas bir şekilde uygulayabilirsiniz. <0>Daha fazla bilgi edinin.", + "tags_desc": "İstemciyi tanımlayan etiketleri seçebilirsiniz. Etiketleri filtreleme kurallarına ekleyerek filtrelemeyi daha etkin bir şekilde uygulayabilirsiniz. <0>Daha fazla bilgi edinin.", "form_select_tags": "İstemci etiketlerini seçin", "check_title": "Filtrelemeyi denetleyin", - "check_desc": "Ana makine adının filtreleme durumunu kontrol edin.", + "check_desc": "Ana makine adının filtreleme durumunu denetler.", "check": "Denetle", "form_enter_host": "Ana makine adı girin", - "filtered_custom_rules": "Özel filtreleme kurallarına göre filtrelendi", + "filtered_custom_rules": "Özel filtreleme kuralları tarafından filtrelendi", "choose_from_list": "Listeden seç", "add_custom_list": "Özel liste ekle", "host_whitelisted": "Ana makineye izin verildi", @@ -620,49 +620,56 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Sebep: {{reason}}", "check_service": "Hizmet adı: {{service}}", + "check_hostname": "Ana makine adı veya alan adı", + "check_client_id": "İstemci tanımlayıcısı (ClientID veya IP adresi)", + "check_enter_client_id": "İstemci tanımlayıcısı girin", + "check_dns_record": "DNS kayıt türünü seçin", "service_name": "Hizmet adı", "check_not_found": "Filtre listelerinizde bulunamadı", "client_confirm_block": "\"{{ip}}\" istemcisini engellemek istediğinizden emin misiniz?", "client_confirm_unblock": "\"{{ip}}\" istemcisinin engellemesini kaldırmak istediğinizden emin misiniz?", "client_blocked": "\"{{ip}}\" istemcisi başarıyla engellendi", - "client_unblocked": "\"{{ip}}\" istemcinin engellemesi başarıyla kaldırıldı", + "client_unblocked": "\"{{ip}}\" istemcisinin engeli başarıyla kaldırıldı", "static_ip": "Sabit IP adresi", "static_ip_desc": "AdGuard Home bir sunucudur, bu nedenle düzgün çalışabilmesi için sabit bir IP adresine ihtiyaç duyar. Aksi takdirde, yönlendiriciniz bu cihaza farklı bir IP adresi atayabilir.", - "set_static_ip": "Sabit IP adresi ayarla", - "install_static_ok": "Güzel haber! Sabit IP adresi zaten yapılandırılmış", - "install_static_error": "AdGuard Home, bu ağ arayüzü için otomatik olarak yapılandıramıyor. Lütfen bunu elle nasıl yapacağınızla ilgili talimatlara bakın.", - "install_static_configure": "AdGuard Home, <0>{{ip}} sabit IP adresinin kullanıldığını tespit etti. Sabit adresiniz olarak ayarlanmasını ister misiniz?", + "set_static_ip": "Sabit IP adresi olarak ayarla", + "install_static_ok": "İyi haber! Sabit IP adresi zaten yapılandırılmış", + "install_static_error": "AdGuard Home, bu ağ arayüzü için otomatik olarak yapılandırılamıyor. Lütfen bunu elle nasıl yapacağınızla ilgili talimatlara bakın.", + "install_static_configure": "AdGuard Home, <0>{{ip}} sabit IP adresinin kullanıldığını tespit etti. Sabit adresiniz olarak ayarlanmasını istiyor musunuz?", "confirm_static_ip": "AdGuard Home, {{ip}} adresini sabit IP adresiniz olacak şekilde yapılandırır. Devam etmek istiyor musunuz?", "list_updated": "{{count}} liste güncellendi", "list_updated_plural": "{{count}} liste güncellendi", "dnssec_enable": "DNSSEC'i etkinleştir", - "dnssec_enable_desc": "Giden DNS sorguları için DNSSEC özelliğini etkinleştir ve sonucu kontrol et (DNSSEC özellikli çözümleyici gerekli).", + "dnssec_enable_desc": "Giden DNS sorguları için DNSSEC işaretini etkinleştirir ve sonucu denetler (DNSSEC özellikli çözümleyici gereklidir).", "validated_with_dnssec": "DNSSEC ile doğrulandı", "all_queries": "Tüm sorgular", - "show_blocked_responses": "Engellenen", + "show_blocked_responses": "Engellendi", "show_whitelisted_responses": "İzin verilen", - "show_processed_responses": "İşlenen", + "show_processed_responses": "İşlendi", "blocked_safebrowsing": "Güvenli Gezinti tarafından engellendi", "blocked_adult_websites": "Ebeveyn Denetimi tarafından engellendi", - "blocked_threats": "Engellenen tehditler", + "blocked_threats": "Tehdit engellendi", "allowed": "İzin verilen", - "filtered": "Filtrelenen", - "rewritten": "Yeniden yazılan", + "filtered": "Filtrelendi", + "rewritten": "Yeniden yazıldı", "safe_search": "Güvenli Arama", "blocklist": "Engel listesi", "milliseconds_abbreviation": "ms", + "cache_enabled": "Önbelleği etkinleştir", + "cache_enabled_desc": "DNS yanıtlarını yerel olarak depolayın.", "cache_size": "Önbellek boyutu", - "cache_size_desc": "DNS önbellek boyutu (bayt cinsinden). Önbelleğe almayı devre dışı bırakmak için boş bırakın.", - "cache_ttl_min_override": "Minimum kullanım süresini geçersiz kıl", - "cache_ttl_max_override": "Maksimum kullanım süresini geçersiz kıl", - "enter_cache_size": "Önbellek boyutunu girin (bayt)", - "enter_cache_ttl_min_override": "Minimum kullanım süresi girin (saniye olarak)", - "enter_cache_ttl_max_override": "Maksimum kullanım süresi girin (saniye olarak)", - "cache_ttl_min_override_desc": "DNS yanıtlarını önbelleğe alırken üst sunucudan alınan kullanım süresi değerini uzatın (saniye olarak).", - "cache_ttl_max_override_desc": "DNS önbelleğindeki girişler için maksimum kullanım süresi değerini ayarlayın (saniye olarak).", + "cache_size_validation": "Etkinleştirildiğinde önbellek boyutu sıfırdan büyük olmalıdır.", + "cache_size_desc": "DNS önbellek boyutu (bayt cinsinden). Önbelleği devre dışı bırakmak için 0 olarak ayarlayın.", + "cache_ttl_min_override": "En az kullanım süresini geçersiz kıl", + "cache_ttl_max_override": "En fazla kullanım süresini geçersiz kıl", + "enter_cache_size": "Önbellek boyutunu bayt türünden girin", + "enter_cache_ttl_min_override": "En az kullanım süresini saniye olarak girin", + "enter_cache_ttl_max_override": "En fazla kullanım süresini saniye olarak girin", + "cache_ttl_min_override_desc": "DNS yanıtlarını önbelleğe alırken üst sunucudan alınan kullanım süresi değerini saniye türünden uzatır.", + "cache_ttl_max_override_desc": "DNS önbelleğindeki girişler için en fazla kullanım süresi değerini saniye türünden belirler.", "ttl_cache_validation": "Minimum önbellek kullanım süresi geçersiz kılma, maksimum değerden küçük veya ona eşit olmalıdır", "cache_optimistic": "İyimser önbelleğe alma", - "cache_optimistic_desc": "Girişlerin süresi dolduğunda bile AdGuard Home'un önbellekten yanıt vermesini sağlayın ve bunları yenilemeye çalışın.", + "cache_optimistic_desc": "AdGuard Home, yanıtların süresi dolduğunda bile önbellekten yanıt vermesini sağlar ve bu yanıtları yenilemeyi dener.", "filter_category_general": "Genel", "filter_category_security": "Güvenlik", "filter_category_regional": "Bölgesel", @@ -674,8 +681,8 @@ "setup_config_to_enable_dhcp_server": "DHCP sunucusunu etkinleştirmek için kurulum yapılandırması", "original_response": "Gerçek yanıt", "click_to_view_queries": "Sorguları görmek için tıklayın", - "port_53_faq_link": "53 numaralı bağlantı noktası genellikle \"DNSStubListener\" veya \"systemd-resolved\" hizmetleri tarafından kullanılır. Lütfen bu sorunun nasıl çözüleceğine ilişkin <0>bu talimatı okuyun.", - "adg_will_drop_dns_queries": "AdGuard Home, bu istemciden gelen tüm DNS sorgularını yok sayacaktır.", + "port_53_faq_link": "53 numaralı bağlantı noktası genellikle \"DNSStubListener\" veya \"systemd-resolved\" hizmetleri tarafından kullanılır. Bu sorunun nasıl çözüleceğine ilişkin lütfen <0>bu talimatı okuyun.", + "adg_will_drop_dns_queries": "AdGuard Home, bu istemciden gelen tüm DNS sorgularını yok sayar.", "filter_allowlist": "UYARI: Bu işlem ayrıca \"{{disallowed_rule}}\" kuralını izin verilen istemciler listesinden hariç tutar.", "last_rule_in_allowlist": "\"{{disallowed_rule}}\" kuralı hariç tutulduğunda \"İzin verilen istemciler\" listesi DEVRE DIŞI bırakılacağı için bu istemciye izin verilemez.", "use_saved_key": "Önceden kaydedilmiş anahtarı kullan", @@ -683,7 +690,7 @@ "safe_browsing": "Güvenli Gezinti", "served_from_cache_label": "Önbellekten kullanıldı", "form_error_password_length": "Parola {{min}} ila {{max}} karakter uzunluğunda olmalıdır", - "anonymizer_notification": "<0>Not: IP anonimleştirme etkinleştirildi. Bunu <1>Genel ayarlardan devre dışı bırakabilirsiniz.", + "anonymizer_notification": "<0>Not: IP gizleme etkinleştirildi. Bunu <1>Genel ayarlardan devre dışı bırakabilirsiniz.", "confirm_dns_cache_clear": "DNS önbelleğini temizlemek istediğinizden emin misiniz?", "cache_cleared": "DNS önbelleği başarıyla temizlendi", "clear_cache": "Önbelleği temizle", @@ -700,14 +707,14 @@ "disable_until_tomorrow": "Yarına kadar", "disable_notify_for_seconds": "Korumayı {{count}} saniyeliğine devre dışı bırak", "disable_notify_for_seconds_plural": "Korumayı {{count}} saniyeliğine devre dışı bırak", - "disable_notify_for_minutes": "Korumayı {{count}} dakiklığına devre dışı bırak", - "disable_notify_for_minutes_plural": "Korumayı {{count}} dakiklığına devre dışı bırak", + "disable_notify_for_minutes": "Korumayı {{count}} dakikalığına devre dışı bırak", + "disable_notify_for_minutes_plural": "Korumayı {{count}} dakikalığına devre dışı bırak", "disable_notify_for_hours": "Korumayı {{count}} saatliğine devre dışı bırak", "disable_notify_for_hours_plural": "Korumayı {{count}} saatliğine devre dışı bırak", "disable_notify_until_tomorrow": "Korumayı yarına kadar devre dışı bırak", "enable_protection_timer": "Koruma {{time}} içinde etkinleştirilecektir", "custom_retention_input": "Saklama süresini saat olarak girin", - "custom_rotation_input": "Rotasyonu saat cinsinden girin", + "custom_rotation_input": "Döngüyü saat cinsinden girin", "protection_section_label": "Koruma", "log_and_stats_section_label": "Sorgu günlüğü ve istatistikler", "ignore_query_log": "Sorgu günlüğünde bu istemciyi gösterme", @@ -715,13 +722,13 @@ "schedule_services": "Hizmet engellemeyi duraklat", "schedule_services_desc": "Hizmet engelleme filtresinin duraklatma planını yapılandırın", "schedule_services_desc_client": "Bu istemci için hizmet engelleme filtresinin duraklatma planını yapılandırın", - "schedule_desc": "Engellenen hizmetler için hareketsizlik sürelerini ayarlayın", + "schedule_desc": "Engellenen hizmetler için duraklatma zamanı ayarlayın", "schedule_invalid_select": "Başlangıç zamanı, bitiş zamanından önce olmalıdır", "schedule_select_days": "Günleri seçin", "schedule_timezone": "Saat dilimi seçin", "schedule_current_timezone": "Şu anki saat dilimi: {{value}}", "schedule_time_all_day": "Tüm gün", - "schedule_modal_description": "Bu plan, haftanın aynı günü için mevcut planların yerini alır. Haftanın her gününde yalnızca bir hareketsizlik süresine sahip olabilir.", + "schedule_modal_description": "Bu plan, haftanın aynı günü için mevcut planların yerini alır. Haftanın her gününde yalnızca bir duraklatma zamanı olabilir.", "schedule_modal_time_off": "Hizmet engelleme yok:", "schedule_new": "Yeni plan", "schedule_edit": "Planı düzenle", diff --git a/client/src/__locales/uk.json b/client/src/__locales/uk.json index 868e320f..dd0bc72e 100644 --- a/client/src/__locales/uk.json +++ b/client/src/__locales/uk.json @@ -6,14 +6,14 @@ "upstream_parallel": "Використовувати паралельні запити, щоб пришвидшити вирішення одночасною чергою всіх оригінальних серверів.", "parallel_requests": "Паралельні запити", "load_balancing": "Балансування навантаження", - "load_balancing_desc": "Запитувати один сервер за раз. AdGuard Home використовуватиме зважений випадковий алгоритм для вибору сервера, щоб найшвидший сервер використовувався частіше.", + "load_balancing_desc": "Виконуйте запити по одному upstream серверу за раз.
AdGuard Home використовує зважений випадковий алгоритм, щоб вибрати сервери з найменшою кількістю невдалих пошуків і найменшим середнім часом пошуку.", "bootstrap_dns": "Bootstrap DNS-сервери", "bootstrap_dns_desc": "IP-адреси DNS-серверів, які використовуються для визначення IP-адрес DoH/DoT-розпізнавачів, які ви вказуєте як висхідні. Коментарі заборонені.", "fallback_dns_title": "Резервні DNS-сервери", "fallback_dns_desc": "Список резервних DNS-серверів, які використовуються, коли upstream DNS-сервери не відповідають. Синтаксис такий самий, як і в полі upstream сервера вище.", "fallback_dns_placeholder": "Вводьте один резервний DNS-сервер на рядок", "local_ptr_title": "Приватні сервери для зворотного DNS", - "local_ptr_desc": "DNS-сервери, які AdGuard Home використовує для локальних PTR-запитів. Ці сервери використовуються для вирішення PTR-запитів для адрес у приватних мережах, наприклад, «192.168.12.34». Якщо список порожній, AdGuard Home буде усталено використовувати системний DNS-сервер.", + "local_ptr_desc": "DNS-сервери, які AdGuard Home використовує для приватних запитів PTR, SOA та NS. Запит вважається приватним, якщо він запитує домен ARPA, що містить підмережу в межах приватних діапазонів IP (наприклад, \"192.168.12.34\") і надходить від клієнта з приватною IP-адресою. Якщо не встановлено, використовуватимуться стандартні DNS-перетворювачі вашої ОС, за винятком домашніх IP-адрес AdGuard.", "local_ptr_default_resolver": "Стандартно AdGuard Home користується такими зворотними DNS-вирішувачами: {{ip}}.", "local_ptr_no_default_resolver": "AdGuard Home не зміг визначити приватні зворотні DNS-вирішувачі, які підійшли б для цієї системи.", "local_ptr_placeholder": "Вводьте одну адресу на рядок", @@ -154,7 +154,7 @@ "use_adguard_parental": "Використовувати вебслужбу «Батьківський контроль» AdGuard", "use_adguard_parental_hint": "AdGuard Home перевірить, чи містить домен матеріали для дорослих. Буде використано той же безпечний API, що й для «Безпеки перегляду» AdGuard.", "enforce_safe_search": "Використовувати Безпечний пошук", - "enforce_save_search_hint": "AdGuard Home може примусово застосовувати безпечний пошук в таких пошукових системах: Google, YouTube, Bing, DuckDuckGo, Yandex, Pixabay.", + "enforce_save_search_hint": "AdGuard Home забезпечить безпечний пошук у таких пошукових системах: Google, YouTube, Bing, DuckDuckGo, Ecosia, Yandex, Pixabay.", "no_servers_specified": "Сервери не вказано", "general_settings": "Загальні налаштування", "dns_settings": "Налаштування DNS", @@ -294,6 +294,9 @@ "blocked_response_ttl": "TTL заблокованої відповіді", "blocked_response_ttl_desc": "Вказує, скільки секунд клієнти повинні кешувати відфільтровану відповідь", "form_enter_blocked_response_ttl": "Введіть TTL заблокованої відповіді (секунди)", + "upstream_timeout": "Час вийшов для upstream", + "upstream_timeout_desc": "Визначає кількість секунд, які потрібно чекати на відповідь від upstream сервера", + "form_enter_upstream_timeout": "Введіть тривалість тайм-ауту upstream сервера в секундах", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -598,7 +601,7 @@ "disable_ipv6": "Вимкнути вирішення IPv6-адрес", "disable_ipv6_desc": "Ігнорувати всі DNS-запити адрес IPv6 (тип AAAA) та видаляти IPv6-дані з відповідей типу HTTPS.", "fastest_addr": "Найшвидша IP-адреса", - "fastest_addr_desc": "Опитати всі DNS-сервери й повернути найшвидшу IP-адресу серед усіх наданих. Це сповільнить швидкість DNS-запитів, оскільки AdGuard Home повинен буде чекати відповіді усіх DNS-серверів, але водночас може покращити якість з'єднання.", + "fastest_addr_desc": "Чекайте на відповіді від усіх DNS серверів, вимірюйте швидкість TCP з'єднання для кожного сервера та поверніть IP-адресу сервера з найшвидшою швидкістю з'єднання.
Цей режим може суттєво уповільнити DNS запити, якщо один або декілька upstream серверів не відповідають. Переконайтеся, що ваші upstream сервери стабільні, а тайм-аут низький.", "autofix_warning_text": "Якщо ви натиснете «Виправити», AdGuard Home налаштує вашу систему на використання DNS-сервера AdGuard Home.", "autofix_warning_list": "Будуть виконані такі дії: <0>Деактивація системи DNSStubListener <0>Зміна адреси DNS-сервера на «127.0.0.1» <0>Заміна символічного посилання «/etc/resolv.conf» на «/run/systemd/resolve/resolv.conf» <0>Зупинка DNSStubListener (перезапуск системної служби systemd-resolved)", "autofix_warning_result": "В результаті буде усталено, що усі DNS-запити вашої системи будуть опрацьовані AdGuard Home.", @@ -617,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Причина: {{reason}}", "check_service": "Назва сервісу: {{service}}", + "check_hostname": "Ім'я хоста або доменне ім'я", + "check_client_id": "Ідентифікатор клієнта (ClientID або IP-адреса)", + "check_enter_client_id": "Введіть ідентифікатор клієнта", + "check_dns_record": "Виберіть тип DNS запису", "service_name": "Назва сервісу", "check_not_found": "Не знайдено у ваших списках фільтрів", "client_confirm_block": "Ви впевнені, що хочете заблокувати клієнта «{{ip}}»?", @@ -649,7 +656,7 @@ "blocklist": "Список блокування", "milliseconds_abbreviation": "мс", "cache_size": "Розмір кешу", - "cache_size_desc": "Розмір кешу DNS (у байтах). Щоб вимкнути кешування, залиште пустим.", + "cache_size_desc": "Розмір кешу DNS (в байтах). Щоб вимкнути кешування, встановіть 0.", "cache_ttl_min_override": "Змінити мінімальний TTL", "cache_ttl_max_override": "Змінити максимальний TTL", "enter_cache_size": "Введіть розмір кешу (байт)", diff --git a/client/src/__locales/vi.json b/client/src/__locales/vi.json index 1c24a6cd..dad5ed9a 100644 --- a/client/src/__locales/vi.json +++ b/client/src/__locales/vi.json @@ -6,7 +6,7 @@ "upstream_parallel": "Sử dụng truy vấn song song để tăng tốc độ giải quyết bằng cách truy vấn đồng thời tất cả các máy chủ ngược tuyến", "parallel_requests": "Yêu cầu song song", "load_balancing": "Cân bằng tải", - "load_balancing_desc": "Truy vấn một máy chủ thượng nguồn tại một thời điểm. AdGuard Home sử dụng thuật toán ngẫu nhiên có trọng số để chọn máy chủ có số lần tìm kiếm không thành công thấp nhất và thời gian tìm kiếm trung bình thấp nhất.", + "load_balancing_desc": "Truy vấn một máy chủ thượng nguồn tại một thời điểm.
AdGuard Home sử dụng thuật toán ngẫu nhiên có trọng số để chọn máy chủ có số lần tìm kiếm không thành công thấp nhất và thời gian tìm kiếm trung bình thấp nhất.", "bootstrap_dns": "Máy chủ DNS Bootstrap", "bootstrap_dns_desc": "Địa chỉ IP của máy chủ DNS được sử dụng để phân giải địa chỉ IP của trình phân giải DoH/DoT mà bạn chỉ định làm thượng nguồn. Bình luận không được phép.", "fallback_dns_title": "Máy chủ DNS dự phòng", @@ -294,6 +294,9 @@ "blocked_response_ttl": "Chặn phản hồi TTL", "blocked_response_ttl_desc": "Chỉ định trong bao nhiêu giây máy khách sẽ lưu vào bộ đệm một phản hồi đã được lọc", "form_enter_blocked_response_ttl": "Nhập phản hồi bị chặn TTL (giây)", + "upstream_timeout": "Thời gian chờ ngược dòng", + "upstream_timeout_desc": "Xác định số giây chờ để nhận phản hồi từ máy chủ thượng nguồn", + "form_enter_upstream_timeout": "Nhập thời gian chờ máy chủ ngược dòng tính bằng giây", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -598,7 +601,7 @@ "disable_ipv6": "Tắt IPv6", "disable_ipv6_desc": "Bỏ tất cả truy vấn DNS cho địa chỉ IPv6 (loại AAAA) và xóa gợi ý IPv6 khỏi phản hồi HTTPS.", "fastest_addr": "Địa chỉ IP nhanh nhất", - "fastest_addr_desc": "Truy vấn tất cả các máy chủ DNS và trả về địa chỉ IP nhanh nhất trong số tất cả các phản hồi", + "fastest_addr_desc": "Chờ phản hồi từ tất cả các máy chủ DNS, đo tốc độ kết nối TCP cho từng máy chủ, và trả về địa chỉ IP của máy chủ có tốc độ kết nối nhanh nhất.
Chế độ này có thể làm chậm đáng kể các truy vấn DNS, nếu một hoặc nhiều máy chủ thượng nguồn không phản hồi. Hãy đảm bảo rằng các máy chủ thượng nguồn của bạn ổn định và thời gian hết hạn đến máy chủ thượng nguồn của bạn thấp.", "autofix_warning_text": "Nếu bạn nhấp vào \"Khắc phục\", AdGuard Home sẽ định cấu hình hệ thống của bạn để sử dụng máy chủ DNS của AdGuard Home.", "autofix_warning_list": "Nó sẽ thực hiện các tác vụ sau: <0> Hủy kích hoạt hệ thống DNSStubListener <0> Đặt địa chỉ máy chủ DNS thành 127.0.0.1 <0> Thay thế mục tiêu liên kết tượng trưng của /etc/resolv.conf bằng / run / systemd /resolve/resolv.conf <0> Dừng DNSStubListener (tải lại dịch vụ do hệ thống phân giải) ", "autofix_warning_result": "Do đó, tất cả các yêu cầu DNS từ hệ thống của bạn sẽ được AdGuard Home xử lý theo mặc định.", @@ -617,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "Lý do: {{reason}}", "check_service": "Tên dịch vụ: {{service}}", + "check_hostname": "Tên máy chủ hoặc tên miền", + "check_client_id": "Định danh khách hàng (ClientID hoặc Địa chỉ IP)", + "check_enter_client_id": "Nhập định danh khách hàng", + "check_dns_record": "Chọn loại bản ghi DNS", "service_name": "Tên dịch vụ", "check_not_found": "Không tìm thấy trong danh sách bộ lọc của bạn", "client_confirm_block": "Bạn có muốn chặn người dùng {{ip}}?", @@ -649,7 +656,7 @@ "blocklist": "Danh sách chặn", "milliseconds_abbreviation": "ms", "cache_size": "Kích thước cache", - "cache_size_desc": "Kích thước bộ nhớ cache DNS (tính bằng byte). Để tắt bộ nhớ đệm, hãy để trống.", + "cache_size_desc": "Kích thước bộ nhớ đệm DNS (tính bằng byte). Để vô hiệu hoá bộ nhớ đệm, hãy đặt giá trị là 0.", "cache_ttl_min_override": "Ghi đè TTL tối thiểu", "cache_ttl_max_override": "Ghi đè TTL tối đa", "enter_cache_size": "Nhập kích thước bộ nhớ cache (byte)", diff --git a/client/src/__locales/zh-cn.json b/client/src/__locales/zh-cn.json index 732e9114..c2d50561 100644 --- a/client/src/__locales/zh-cn.json +++ b/client/src/__locales/zh-cn.json @@ -620,6 +620,10 @@ "check_cname": "CNAME: {{cname}}", "check_reason": "原因:{{reason}}", "check_service": "服务名称:{{service}}", + "check_hostname": "主机名或域名", + "check_client_id": "客户端标识符(ClientID 或 IP 地址)", + "check_enter_client_id": "输入客户端标识符", + "check_dns_record": "选择 DNS 记录类型", "service_name": "服务名称", "check_not_found": "未在您的筛选列表中找到", "client_confirm_block": "确定要阻止客户端 \"{{ip}}\"?", @@ -651,8 +655,11 @@ "safe_search": "安全搜索", "blocklist": "黑名单", "milliseconds_abbreviation": "毫秒", + "cache_enabled": "启用缓存", + "cache_enabled_desc": "在本地存储 DNS 响应。", "cache_size": "缓存大小", - "cache_size_desc": "DNS 缓存大小(单位:字节)。若要关闭缓存,请留空。", + "cache_size_validation": "启用时,缓存大小必须大于 0。", + "cache_size_desc": "DNS 缓存大小(单位:字节)。若要禁用缓存,请设置为 0。", "cache_ttl_min_override": "覆盖最小 TTL 值", "cache_ttl_max_override": "覆盖最大 TTL 值", "enter_cache_size": "输入缓存大小(字节)", diff --git a/client/src/__locales/zh-hk.json b/client/src/__locales/zh-hk.json index e8a75d40..b6f4722d 100644 --- a/client/src/__locales/zh-hk.json +++ b/client/src/__locales/zh-hk.json @@ -6,21 +6,21 @@ "upstream_parallel": "使用平行查詢,同時查詢所有上游伺服器來加速解析結果", "parallel_requests": "平行處理", "load_balancing": "負載平衡", - "load_balancing_desc": "一次只查詢一個伺服器。AdGuard Home 會使用加權隨機取樣來選擇使用的查詢結果,以確保速度最快的伺服器能被充分運用。", + "load_balancing_desc": "一次查詢一台上游伺服器。
AdGuard Home 使用加權隨機演算法來選擇具有最少失敗查詢和最低平均查詢時間的伺服器。", "bootstrap_dns": "引導(Boostrap) DNS 伺服器", "bootstrap_dns_desc": "Bootstrap DNS 伺服器用於解析您所設定的上游 DoH/DoT 解析器的 IP 地址", "fallback_dns_title": "備用 DNS 伺服器", "fallback_dns_desc": "備用 DNS 伺服器列表:於主要 DNS 伺服器沒有回應時使用。語法與主要 DNS 伺服器設定欄位相同。", "fallback_dns_placeholder": "每行輸入一個備用 DNS 伺服器", "local_ptr_title": "私人 DNS 伺服器", - "local_ptr_desc": "AdGuard Home 用於區域 PTR 查詢的 DNS 伺服器。這些伺服器將用於解析具有私人 IP 位址的用戶端的主機名稱,例如 \"192.168.12.34\",使用 rDNS。如果沒有設定,AdGuard Home 將自動使用您的系統預設 DNS 解析。", + "local_ptr_desc": "AdGuard Home 使用的 DNS 伺服器用於私人 PTR、SOA 和 NS 請求。如果請求要求包含私有 IP 範圍內的子網域的 ARPA 網域(例如 \"192.168.12.34\"),並來自具有私人 IP 位址的用戶端,該請求被視為私人。如果未設定,將使用您的作業系統的預設 DNS 解析器,但不包括 AdGuard Home 的 IP 位址。", "local_ptr_default_resolver": "AdGuard Home 預設使用以下作為 DNS 反解器:{{ip}}", "local_ptr_no_default_resolver": "AdGuard Home 無法為此系統確定適合私有反解析器。", "local_ptr_placeholder": "每行輸入一個伺服器位址", "resolve_clients_title": "啟用用戶端的 IP 位址的反向解析", "resolve_clients_desc": "透過相應的伺服器傳送 PTR 查詢(本機用戶端使用私人 DNS 伺服器,公共 IP 使用上游伺服器),將客戶端的 IP 反解為主機名稱。", "use_private_ptr_resolvers_title": "使用私人 DNS 反解器", - "use_private_ptr_resolvers_desc": "使用這些上游為本機提供反解 DNS 查詢。如果禁用 AdGuard Home 將會對相關 PTR 請求回應 NXDOMAIN,但 DHCP、/etc/hosts 等已知的用戶端除外。", + "use_private_ptr_resolvers_desc": "透過私有上游伺服器、DHCP 或 /etc/hosts 等管道,解析含有私有 IP 位址的 ARPA 網域的 PTR、SOA 與 NS 請求。若停用此功能,AdGuard Home 將以 NXDOMAIN 回應所有相關請求。", "check_dhcp_servers": "檢查 DHCP 伺服器", "save_config": "儲存設定", "enabled_dhcp": "DHCP 伺服器已啟動", @@ -154,7 +154,7 @@ "use_adguard_parental": "使用 AdGuard 家長監護功能", "use_adguard_parental_hint": "AdGuard Home 將比對查詢網域是否含有成人內容。它使用與 AdGuard 瀏覽安全一樣的尊重個人隱私的 API 來進行檢查。", "enforce_safe_search": "強制使用安全搜尋", - "enforce_save_search_hint": "AdGuard Home 可在下列搜尋引擎使用強制安全搜尋:Google、YouTube、Bing、DuckDuckGo, Yandex 和 Pixabay。", + "enforce_save_search_hint": "AdGuard Home 將在下列的搜尋引擎:Google、YouTube、Bing、DuckDuckGo、Ecosia、Yandex 和 Pixabay 中強制執行安全搜尋。", "no_servers_specified": "沒有指定的伺服器", "general_settings": "一般設定", "dns_settings": "DNS 設定", @@ -294,6 +294,9 @@ "blocked_response_ttl": "阻塞響應 TTL", "blocked_response_ttl_desc": "指定客戶端應快取過濾回應的秒數", "form_enter_blocked_response_ttl": "輸入已封鎖的回應 TTL(秒)", + "upstream_timeout": "上游超時", + "upstream_timeout_desc": "指定等待來自此上游伺服器回應的秒數", + "form_enter_upstream_timeout": "輸入上游伺服器超時持續時間(以秒為單位)", "dnscrypt": "DNSCrypt", "dns_over_https": "DNS-over-HTTPS", "dns_over_tls": "DNS-over-TLS", @@ -598,7 +601,7 @@ "disable_ipv6": "停止解析 IPv6 位址", "disable_ipv6_desc": "開啟此功能後,將捨棄所有對 IPv6 位址(AAAA)的查詢。", "fastest_addr": "Fastest IP 位址", - "fastest_addr_desc": "從所有 DNS 伺服器查詢中回應最快的 IP 位址。但這操作會等待所有 DNS 查詢結果後才能回應,導致速度有所降低,不過同時卻也改善了整體連線品質。", + "fastest_addr_desc": "等待所有 DNS 伺服器的回應,測量每個伺服器的 TCP 連線速度,並返回連線速度最快的伺服器的 IP 位址。
如果一個或多個上游伺服器沒有回應,此模式會顯著減慢 DNS 查詢速度。確保您的上游伺服器穩定且上游超時時間短。", "autofix_warning_text": "如果您點擊「修復」,AdGuard Home 將更改您的系統 DNS 設定更改為 AdGuard Home DNS 伺服器", "autofix_warning_list": "它將執行這些任務:<0>停用系統 DNSStubListener <0>將 DNS 設定為 127.0.0.1 <0>更換軟連結將 /etc/resolv.conf 為 /run/systemd/resolve/resolv.conf <0>停止 DNSStubListener(重新載入 systemd-resolved)", "autofix_warning_result": "就結論來說 DNS 請求預設由本機的 AdGuard Home 處理。", @@ -617,6 +620,10 @@ "check_cname": "CNAME:{{cname}}", "check_reason": "原因:{{reason}}", "check_service": "服務名稱:{{service}}", + "check_hostname": "主機名稱或域名", + "check_client_id": "用戶端識別碼(ClientID 或 IP 位址)", + "check_enter_client_id": "輸入用戶識別碼", + "check_dns_record": "選擇 DNS 記錄類型", "service_name": "服務名稱", "check_not_found": "未在您的過濾清單中找到", "client_confirm_block": "您確定要封鎖「{{ip}}」用戶端?", @@ -649,7 +656,7 @@ "blocklist": "封鎖清單", "milliseconds_abbreviation": "ms", "cache_size": "快取大小", - "cache_size_desc": "DNS 快取大小(bytes)", + "cache_size_desc": "DNS 快取大小(位元組)。若要停用快取,請設為 0。", "cache_ttl_min_override": "覆寫最小 TTL 值", "cache_ttl_max_override": "覆寫最大 TTL 值", "enter_cache_size": "輸入快取大小(bytes)", diff --git a/client/src/__locales/zh-tw.json b/client/src/__locales/zh-tw.json index dff9d611..11a9cf6b 100644 --- a/client/src/__locales/zh-tw.json +++ b/client/src/__locales/zh-tw.json @@ -1,6 +1,6 @@ { "client_settings": "用戶端設定", - "example_upstream_reserved": "<0>供特定的網域之上游;", + "example_upstream_reserved": "<0>特定網域的上游;", "example_multiple_upstreams_reserved": "<0>特定網域的多個上游伺服器;", "example_upstream_comment": "註解。", "upstream_parallel": "透過同時地查詢所有上游的伺服器,使用並行的查詢以加速解析。", @@ -20,7 +20,7 @@ "resolve_clients_title": "啟用用戶端的 IP 位址之反向的解析", "resolve_clients_desc": "透過傳送指標(PTR)查詢到對應的解析器(私人 DNS 伺服器供區域的用戶端,上游的伺服器供有公共 IP 位址的用戶端),反向地解析用戶端的 IP 位址變為它們的主機名稱。", "use_private_ptr_resolvers_title": "使用私人反向的 DNS 解析器", - "use_private_ptr_resolvers_desc": "使用私人上游伺服器、DHCP、/etc/hosts 等方式解析包含私人 IP 位址的 ARPA 網域的 PTR、SOA 和 NS 請求。如果停用,AdGuard Home 將對所有此類請求以 NXDOMAIN 回應。", + "use_private_ptr_resolvers_desc": "透過私有上游伺服器、DHCP 或 /etc/hosts 等管道,解析含有私有 IP 位址的 ARPA 網域的 PTR、SOA 與 NS 請求。若停用此功能,AdGuard Home 將以 NXDOMAIN 回應所有相關請求。", "check_dhcp_servers": "檢查動態主機設定協定(DHCP)伺服器", "save_config": "儲存配置", "enabled_dhcp": "動態主機設定協定(DHCP)伺服器被啟用", @@ -112,8 +112,8 @@ "privacy_policy": "隱私政策", "enable_protection": "啟用防護", "enabled_protection": "已啟用防護", - "disable_protection": "禁用防護", - "disabled_protection": "已禁用防護", + "disable_protection": "停用防護", + "disabled_protection": "已停用防護", "refresh_statics": "重新整理統計資料", "dns_query": "DNS 查詢", "blocked_by": "<0>被過濾器封鎖", @@ -124,8 +124,8 @@ "for_last_hours_plural": "在過去的 {{count}} 小時內", "for_last_days": "在最近的 {{count}} 日內", "for_last_days_plural": "在最近的 {{count}} 日內", - "stats_disabled": "該統計資料已被禁用。您可從<0>設定頁面中打開它。", - "stats_disabled_short": "該統計資料已被禁用", + "stats_disabled": "統計功能目前停用中,請至<0>設定頁面重新開啟。", + "stats_disabled_short": "該統計資料已停用", "no_domains_found": "無已發現之網域", "requests_count": "請求總數", "top_blocked_domains": "熱門已封鎖的網域", @@ -172,13 +172,13 @@ "upstreams": "上游", "upstream": "上游伺服器", "apply_btn": "套用", - "disabled_filtering_toast": "已禁用過濾", + "disabled_filtering_toast": "已停用過濾", "enabled_filtering_toast": "已啟用過濾", - "disabled_safe_browsing_toast": "已禁用安全瀏覽", + "disabled_safe_browsing_toast": "已停用安全瀏覽", "enabled_safe_browsing_toast": "已啟用安全瀏覽", - "disabled_parental_toast": "已禁用家長控制", + "disabled_parental_toast": "已停用家長控制", "enabled_parental_toast": "已啟用家長控制", - "disabled_safe_search_toast": "已禁用安全搜尋", + "disabled_safe_search_toast": "已停用安全搜尋", "enabled_save_search_toast": "已啟用安全搜尋", "updated_save_search_toast": "安全搜尋設定更新成功", "enabled_table_header": "已啟用", @@ -275,7 +275,7 @@ "query_log_retention": "查詢記錄保留時間", "query_log_enable": "啟用記錄", "query_log_configuration": "記錄配置", - "query_log_disabled": "查詢記錄被禁用並可在<0>設定中被配置", + "query_log_disabled": "查詢記錄功能已停用,請至「<0>設定」調整", "query_log_strict_search": "使用雙引號於嚴謹的搜尋", "query_log_retention_confirm": "您確定要更改記錄檔保存期限嗎?如果您縮短期限部分資料可能將會遺失", "anonymize_client_ip": "將用戶端 IP 匿名", @@ -401,7 +401,7 @@ "encryption_config_saved": "加密配置被儲存", "encryption_server": "伺服器名稱", "encryption_server_enter": "輸入您的域名", - "encryption_server_desc": "如果被設定,AdGuard Home 檢測用戶端 IDs,回覆 DDR 查詢,並執行額外的連線驗證。如果未被設定,這些功能被禁用。必須與在該憑證裡的 DNS 名稱其中之一相符。", + "encryption_server_desc": "如果設定,AdGuard Home 會偵測 ClientID、回應 DDR 查詢,並執行其他連線驗證。如果未設定,則會停用這些功能。必須符合憑證中的一個 DNS 名稱。", "encryption_redirect": "自動地重新導向到 HTTPS", "encryption_redirect_desc": "如果被勾選,AdGuard Home 將自動地重新導向您從 HTTP 到 HTTPS 位址。", "encryption_https": "HTTPS 連接埠", @@ -429,8 +429,8 @@ "encryption_reset": "您確定您想要重置加密設定嗎?", "encryption_warning": "警告", "encryption_plain_dns_enable": "啟用一般的 DNS", - "encryption_plain_dns_desc": "預設情況下啟用一般的 DNS。使用者可以禁用它,強制所有裝置使用一般的 DNS。為此,必須至少啟用一個一般的 DNS 協定。", - "encryption_plain_dns_error": "要禁用一般的 DNS,請至少啟用一個一般的 DNS 協定", + "encryption_plain_dns_desc": "預設啟用一般 DNS。您可以停用它以強制所有裝置使用加密 DNS。若要這樣做,您必須啟用至少一個加密 DNS 通訊協定", + "encryption_plain_dns_error": "若要停用一般 DNS,請啟用至少一個加密 DNS 通訊協定", "topline_expiring_certificate": "您的安全通訊端層(SSL)憑證即將到期。更新<0>加密設定。", "topline_expired_certificate": "您的安全通訊端層(SSL)憑證為已到期的。更新<0>加密設定。", "form_error_port_range": "輸入在 80-65535 之範圍內的連接埠號碼", @@ -572,7 +572,7 @@ "filters_configuration": "過濾器配置", "filters_enable": "啟用過濾器", "filters_interval": "過濾器更新間隔", - "disabled": "已禁用", + "disabled": "已停用", "username_label": "使用者名稱", "username_placeholder": "輸入使用者名稱", "password_label": "密碼", @@ -598,7 +598,7 @@ "rewrite_domain_name": "域名:新增一筆正規名稱(CNAME)記錄", "rewrite_A": "<0>A:特殊的數值,阻止 <0>A 記錄免於該上游", "rewrite_AAAA": "<0>AAAA:特殊的數值,阻止 <0>AAAA 記錄免於該上游", - "disable_ipv6": "禁用 IPv6 位址之解析", + "disable_ipv6": "停用 IPv6 位址解析", "disable_ipv6_desc": "停止所有對於 IPv6 位址(類型 AAAA)的 DNS 查詢,並從 HTTPS 回應中移除 IPv6 的提示。", "fastest_addr": "最快的 IP 位址", "fastest_addr_desc": "等待所有 DNS 伺服器的回應,測量每個伺服器的 TCP 連線速度,並返回連線速度最快的伺服器的 IP 位址。
如果一個或多個上游伺服器沒有回應,此模式會顯著減慢 DNS 查詢速度。確保您的上游伺服器穩定且上游超時時間短。", @@ -620,6 +620,10 @@ "check_cname": "正規名稱(CNAME):{{cname}}", "check_reason": "原因:{{reason}}", "check_service": "服務名稱:{{service}}", + "check_hostname": "主機名稱或域名", + "check_client_id": "用戶端識別碼(ClientID 或 IP 位址)", + "check_enter_client_id": "輸入用戶識別碼", + "check_dns_record": "選擇 DNS 記錄類型", "service_name": "服務名稱", "check_not_found": "未在您的過濾器清單中被找到", "client_confirm_block": "您確定您想要封鎖該用戶端 \"{{ip}}\" 嗎?", @@ -651,8 +655,11 @@ "safe_search": "安全搜尋", "blocklist": "封鎖清單", "milliseconds_abbreviation": "ms", + "cache_enabled": "啟用快取", + "cache_enabled_desc": "在本機儲存 DNS 回應。", "cache_size": "快取大小", - "cache_size_desc": "DNS 快取大小(以位元組)。要禁用快取,留空。", + "cache_size_validation": "啟用時,快取大小必須大於 0。", + "cache_size_desc": "DNS 快取大小(位元組)。若要停用快取,請設為 0。", "cache_ttl_min_override": "覆寫最小的存活時間(TTL)", "cache_ttl_max_override": "覆寫最大的存活時間(TTL)", "enter_cache_size": "輸入快取大小(位元組)", @@ -677,13 +684,13 @@ "port_53_faq_link": "連接埠 53 常被 \"DNSStubListener\" 或 \"systemd-resolved\" 服務佔用。請閱讀有關如何解決這個的<0>用法說明。", "adg_will_drop_dns_queries": "AdGuard Home 將持續排除來自此用戶端之所有的 DNS 查詢。", "filter_allowlist": "警告:此動作也將把 \"{{disallowed_rule}}\" 規則排除在被允許的用戶端的清單之外。", - "last_rule_in_allowlist": "因為排除 \"{{disallowed_rule}}\" 規則將禁用\"被允許的用戶端\"清單,無法不允許此用戶端。", + "last_rule_in_allowlist": "無法禁止此用戶端,因為排除規則 \"{{disallowed_rule}}\" 會停用「允許的用戶端」清單。", "use_saved_key": "使用該先前已儲存的金鑰", "parental_control": "家長控制", "safe_browsing": "安全瀏覽", "served_from_cache_label": "從快取中", "form_error_password_length": "密碼長度必須為 {{min}} 到 {{max}} 個字符", - "anonymizer_notification": "<0>注意:IP 匿名化被啟用。您可在<1>一般設定中禁用它。", + "anonymizer_notification": "<0>注意:IP 匿名功能已開啟。您可在<1>一般設定中關閉。", "confirm_dns_cache_clear": "您確定您想要清除 DNS 快取嗎?", "cache_cleared": "DNS 快取被成功地清除", "clear_cache": "清除快取", @@ -698,14 +705,14 @@ "disable_for_hours": "{{count}} 小時", "disable_for_hours_plural": "{{count}} 小時", "disable_until_tomorrow": "直到明天", - "disable_notify_for_seconds": "計 {{count}} 秒禁用防護", - "disable_notify_for_seconds_plural": "計 {{count}} 秒禁用防護", - "disable_notify_for_minutes": "計 {{count}} 分鐘禁用防護", - "disable_notify_for_minutes_plural": "計 {{count}} 分鐘禁用防護", - "disable_notify_for_hours": "計 {{count}} 小時禁用防護", - "disable_notify_for_hours_plural": "計 {{count}} 小時禁用防護", - "disable_notify_until_tomorrow": "禁用防護直到明天", - "enable_protection_timer": "防護將於 {{time}} 被啟用", + "disable_notify_for_seconds": "計 {{count}} 秒停用防護", + "disable_notify_for_seconds_plural": "計 {{count}} 秒停用防護", + "disable_notify_for_minutes": "計 {{count}} 分鐘停用防護", + "disable_notify_for_minutes_plural": "計 {{count}} 分鐘停用防護", + "disable_notify_for_hours": "計 {{count}} 小時停用防護", + "disable_notify_for_hours_plural": "計 {{count}} 小時停用防護", + "disable_notify_until_tomorrow": "停用防護直到明天", + "enable_protection_timer": "防護將於 {{time}} 啟用", "custom_retention_input": "輸入保留時間(小時)", "custom_rotation_input": "輸入旋轉時間(小時)", "protection_section_label": "防護", diff --git a/client/src/components/Filters/Check/index.tsx b/client/src/components/Filters/Check/index.tsx index 996d6b75..2f578ade 100644 --- a/client/src/components/Filters/Check/index.tsx +++ b/client/src/components/Filters/Check/index.tsx @@ -9,13 +9,17 @@ import Info from './Info'; import { RootState } from '../../../initialState'; import { validateRequiredValue } from '../../../helpers/validators'; import { Input } from '../../ui/Controls/Input'; +import { DNS_RECORD_TYPES } from '../../../helpers/constants'; +import { Select } from '../../ui/Controls/Select'; -interface FormValues { +export type FilteringCheckFormValues = { name: string; + client?: string; + qtype?: string; } type Props = { - onSubmit?: (data: FormValues) => void; + onSubmit?: (data: FilteringCheckFormValues) => void; }; const Check = ({ onSubmit }: Props) => { @@ -27,11 +31,13 @@ const Check = ({ onSubmit }: Props) => { const { control, handleSubmit, - formState: { isDirty, isValid }, - } = useForm({ + formState: { isValid }, + } = useForm({ mode: 'onBlur', defaultValues: { name: '', + client: '', + qtype: DNS_RECORD_TYPES[0], }, }); @@ -48,24 +54,56 @@ const Check = ({ onSubmit }: Props) => { - - - } /> )} /> + ( + + )} + /> + + ( + + )} + /> + + + {hostname && ( <>
diff --git a/client/src/components/Filters/CustomRules.tsx b/client/src/components/Filters/CustomRules.tsx index db7fa92d..fc207c2c 100644 --- a/client/src/components/Filters/CustomRules.tsx +++ b/client/src/components/Filters/CustomRules.tsx @@ -7,7 +7,7 @@ import PageTitle from '../ui/PageTitle'; import Examples from './Examples'; -import Check from './Check'; +import Check, { FilteringCheckFormValues } from './Check'; import { getTextareaCommentsHighlight, syncScroll } from '../../helpers/highlightTextareaComments'; import { COMMENT_LINE_DEFAULT_TOKEN } from '../../helpers/constants'; @@ -48,8 +48,18 @@ class CustomRules extends Component { this.props.setRules(this.props.filtering.userRules); }; - handleCheck = (values: any) => { - this.props.checkHost(values); + handleCheck = (values: FilteringCheckFormValues) => { + const params: FilteringCheckFormValues = { name: values.name }; + + if (values.client) { + params.client = values.client; + } + + if (values.qtype) { + params.qtype = values.qtype; + } + + this.props.checkHost(params); }; onScroll = (e: any) => syncScroll(e, this.ref); @@ -68,6 +78,7 @@ class CustomRules extends Component {