Compare commits

...

60 Commits

Author SHA1 Message Date
jc21
84fb2729af Merge pull request #5318 from NginxProxyManager/develop
v2.14.0
2026-02-17 15:32:19 +10:00
jc21
c7437ddf8f Merge branch 'master' into develop 2026-02-17 15:02:29 +10:00
jc21
627f43c729 Merge pull request #5314 from NginxProxyManager/dependabot/npm_and_yarn/frontend/dev-minor-updates-d71d2fefd7
Bump the dev-minor-updates group in /frontend with 2 updates
2026-02-17 14:57:17 +10:00
jc21
fc4c5aac86 Merge pull request #5315 from NginxProxyManager/dependabot/npm_and_yarn/frontend/prod-patch-updates-95db6732c0
Bump the prod-patch-updates group in /frontend with 2 updates
2026-02-17 14:57:03 +10:00
jc21
aff390f35d Merge pull request #5317 from Tech-no-1/fix-custom-certificates
Fix uploading of custom certificates
2026-02-17 14:50:07 +10:00
Jamie Curnow
5f5a3870e4 Drop support for armv7 builds, bump version, update docs 2026-02-17 12:55:56 +10:00
Tech-no-1
40f363bd4f Fix uploading of custom certificates 2026-02-17 02:58:18 +01:00
dependabot[bot]
678fdd22c6 Bump the dev-minor-updates group in /frontend with 2 updates
Bumps the dev-minor-updates group in /frontend with 2 updates: [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome) and [happy-dom](https://github.com/capricorn86/happy-dom).


Updates `@biomejs/biome` from 2.3.14 to 2.4.0
- [Release notes](https://github.com/biomejs/biome/releases)
- [Changelog](https://github.com/biomejs/biome/blob/main/packages/@biomejs/biome/CHANGELOG.md)
- [Commits](https://github.com/biomejs/biome/commits/@biomejs/biome@2.4.0/packages/@biomejs/biome)

Updates `happy-dom` from 20.5.3 to 20.6.1
- [Release notes](https://github.com/capricorn86/happy-dom/releases)
- [Commits](https://github.com/capricorn86/happy-dom/compare/v20.5.3...v20.6.1)

---
updated-dependencies:
- dependency-name: "@biomejs/biome"
  dependency-version: 2.4.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-minor-updates
- dependency-name: happy-dom
  dependency-version: 20.6.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-minor-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-17 01:43:56 +00:00
dependabot[bot]
6c3cc83d66 Bump the prod-patch-updates group in /frontend with 2 updates
Bumps the prod-patch-updates group in /frontend with 2 updates: [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) and [country-flag-icons](https://gitlab.com/catamphetamine/country-flag-icons).


Updates `@tanstack/react-query` from 5.90.20 to 5.90.21
- [Release notes](https://github.com/TanStack/query/releases)
- [Changelog](https://github.com/TanStack/query/blob/main/packages/react-query/CHANGELOG.md)
- [Commits](https://github.com/TanStack/query/commits/@tanstack/react-query@5.90.21/packages/react-query)

Updates `country-flag-icons` from 1.6.12 to 1.6.13
- [Changelog](https://gitlab.com/catamphetamine/country-flag-icons/blob/master/CHANGELOG.md)
- [Commits](https://gitlab.com/catamphetamine/country-flag-icons/compare/v1.6.12...v1.6.13)

---
updated-dependencies:
- dependency-name: "@tanstack/react-query"
  dependency-version: 5.90.21
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod-patch-updates
- dependency-name: country-flag-icons
  dependency-version: 1.6.13
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod-patch-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-17 01:43:37 +00:00
jc21
5916fd5bee Merge pull request #5313 from NginxProxyManager/dependabot/npm_and_yarn/backend/prod-minor-updates-4d12c0f7cc
Bump the prod-minor-updates group in /backend with 3 updates
2026-02-17 11:42:02 +10:00
jc21
f105673904 Merge pull request #5312 from NginxProxyManager/dependabot/npm_and_yarn/frontend/dev-patch-updates-38f6d3601d
Bump the dev-patch-updates group in /frontend with 3 updates
2026-02-17 11:41:44 +10:00
jc21
a37d0b88d6 Merge pull request #5308 from YTKme/ytkme/fix-sqlite-internal-error
Fix SQLite Internal Error
2026-02-17 11:41:31 +10:00
Jamie Curnow
43bc2a743e Add note to docs about retiring armv7 after June 2026 2026-02-17 11:38:17 +10:00
jc21
269545256a Merge pull request #5283 from broker-consulting/feat/add-czech-translation
Add Czech translation and related locale files
2026-02-17 11:06:40 +10:00
jc21
e5df45e9ef Merge pull request #5279 from dodog/develop
Update Slovak translation
2026-02-17 11:05:51 +10:00
dependabot[bot]
5601dd14fc Bump the prod-minor-updates group in /backend with 3 updates
Bumps the prod-minor-updates group in /backend with 3 updates: [ajv](https://github.com/ajv-validator/ajv), [mysql2](https://github.com/sidorares/node-mysql2) and [otplib](https://github.com/yeojz/otplib/tree/HEAD/packages/otplib).


Updates `ajv` from 8.17.1 to 8.18.0
- [Release notes](https://github.com/ajv-validator/ajv/releases)
- [Commits](https://github.com/ajv-validator/ajv/compare/v8.17.1...v8.18.0)

Updates `mysql2` from 3.16.3 to 3.17.1
- [Release notes](https://github.com/sidorares/node-mysql2/releases)
- [Changelog](https://github.com/sidorares/node-mysql2/blob/master/Changelog.md)
- [Commits](https://github.com/sidorares/node-mysql2/compare/v3.16.3...v3.17.1)

Updates `otplib` from 13.2.1 to 13.3.0
- [Release notes](https://github.com/yeojz/otplib/releases)
- [Changelog](https://github.com/yeojz/otplib/blob/main/release.config.json)
- [Commits](https://github.com/yeojz/otplib/commits/v13.3.0/packages/otplib)

---
updated-dependencies:
- dependency-name: ajv
  dependency-version: 8.18.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod-minor-updates
- dependency-name: mysql2
  dependency-version: 3.17.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod-minor-updates
- dependency-name: otplib
  dependency-version: 13.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod-minor-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 14:01:58 +00:00
dependabot[bot]
3e5655cfcd Bump the dev-patch-updates group in /frontend with 3 updates
Bumps the dev-patch-updates group in /frontend with 3 updates: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react), [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) and [vite-tsconfig-paths](https://github.com/aleclarson/vite-tsconfig-paths).


Updates `@types/react` from 19.2.13 to 19.2.14
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

Updates `@vitejs/plugin-react` from 5.1.3 to 5.1.4
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@5.1.4/packages/plugin-react)

Updates `vite-tsconfig-paths` from 6.1.0 to 6.1.1
- [Release notes](https://github.com/aleclarson/vite-tsconfig-paths/releases)
- [Commits](https://github.com/aleclarson/vite-tsconfig-paths/compare/v6.1.0...v6.1.1)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-version: 19.2.14
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-patch-updates
- dependency-name: "@vitejs/plugin-react"
  dependency-version: 5.1.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-patch-updates
- dependency-name: vite-tsconfig-paths
  dependency-version: 6.1.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-patch-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 14:01:52 +00:00
jc21
a90af83270 Merge pull request #5309 from NginxProxyManager/dependabot/npm_and_yarn/test/prod-patch-updates-d4d031af8e
All checks were successful
Close stale issues and PRs / stale (push) Successful in 32s
Bump @quobix/vacuum from 0.23.5 to 0.23.8 in /test in the prod-patch-updates group across 1 directory
2026-02-16 11:57:14 +10:00
jc21
619a8e5acc Merge pull request #5310 from NginxProxyManager/dependabot/npm_and_yarn/test/prod-minor-updates-aef0194d28
Bump eslint-plugin-cypress from 5.2.1 to 5.3.0 in /test in the prod-minor-updates group across 1 directory
2026-02-16 11:57:05 +10:00
jc21
6dcdefb57e Merge pull request #5294 from NginxProxyManager/dependabot/npm_and_yarn/frontend/dev-patch-updates-cb582034f5
Bump the dev-patch-updates group in /frontend with 2 updates
2026-02-16 10:30:46 +10:00
jc21
787616010b Merge pull request #5289 from kiaxseventh/develop
Added ArvanCloud DNS plugin support via certbot-dns-arvan package
2026-02-16 10:30:34 +10:00
dependabot[bot]
5891c291d2 Bump eslint-plugin-cypress
Bumps the prod-minor-updates group with 1 update in the /test directory: [eslint-plugin-cypress](https://github.com/cypress-io/eslint-plugin-cypress).


Updates `eslint-plugin-cypress` from 5.2.1 to 5.3.0
- [Release notes](https://github.com/cypress-io/eslint-plugin-cypress/releases)
- [Commits](https://github.com/cypress-io/eslint-plugin-cypress/compare/v5.2.1...v5.3.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-cypress
  dependency-version: 5.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod-minor-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 00:29:59 +00:00
dependabot[bot]
41a2a41e67 Bump @quobix/vacuum
Bumps the prod-patch-updates group with 1 update in the /test directory: [@quobix/vacuum](https://github.com/daveshanley/vacuum).


Updates `@quobix/vacuum` from 0.23.5 to 0.23.8
- [Release notes](https://github.com/daveshanley/vacuum/releases)
- [Commits](https://github.com/daveshanley/vacuum/compare/v0.23.5...v0.23.8)

---
updated-dependencies:
- dependency-name: "@quobix/vacuum"
  dependency-version: 0.23.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod-patch-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-16 00:29:36 +00:00
jc21
379099d7ed Merge pull request #5292 from NginxProxyManager/dependabot/npm_and_yarn/test/prod-minor-updates-69046ce3b8
Bump cypress from 15.9.0 to 15.10.0 in /test in the prod-minor-updates group
2026-02-16 10:29:02 +10:00
jc21
dbeab93c02 Merge pull request #5293 from NginxProxyManager/dependabot/npm_and_yarn/test/eslint-10.0.0
Bump eslint from 9.39.2 to 10.0.0 in /test
2026-02-16 10:28:52 +10:00
jc21
010cb562a0 Merge pull request #5295 from NginxProxyManager/dependabot/npm_and_yarn/frontend/dev-minor-updates-24fcbaaf54
Bump vite-tsconfig-paths from 6.0.5 to 6.1.0 in /frontend in the dev-minor-updates group
2026-02-16 10:28:39 +10:00
jc21
7ff2fc1900 Merge pull request #5299 from NginxProxyManager/dependabot/npm_and_yarn/test/axios-1.13.5
Bump axios from 1.13.4 to 1.13.5 in /test
2026-02-16 10:28:26 +10:00
jc21
1c189a1888 Merge pull request #5300 from NginxProxyManager/dependabot/npm_and_yarn/test/jsonpath-1.2.1
Bump jsonpath from 1.1.1 to 1.2.1 in /test
2026-02-16 10:28:16 +10:00
jc21
f3c46487f6 Merge pull request #5303 from 7heMech/fix-2fa-logout
Add guardrail to fix disabling 2fa
2026-02-16 10:27:58 +10:00
jc21
fcca481d1b Merge pull request #5305 from NginxProxyManager/dependabot/npm_and_yarn/backend/qs-6.14.2
Bump qs from 6.14.1 to 6.14.2 in /backend
2026-02-16 10:27:28 +10:00
jc21
c59c237000 Merge pull request #5306 from NginxProxyManager/dependabot/npm_and_yarn/test/qs-6.14.2
Bump qs from 6.14.1 to 6.14.2 in /test
2026-02-16 10:27:17 +10:00
Yan Kuang
a62b6de9f2 Update SQLite client configuration from sqlite3 to better-sqlite3 2026-02-14 23:53:43 -08:00
dependabot[bot]
d92cc953e1 Bump qs from 6.14.1 to 6.14.2 in /test
Bumps [qs](https://github.com/ljharb/qs) from 6.14.1 to 6.14.2.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.14.1...v6.14.2)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-14 12:44:07 +00:00
dependabot[bot]
1b6412688b Bump qs from 6.14.1 to 6.14.2 in /backend
Bumps [qs](https://github.com/ljharb/qs) from 6.14.1 to 6.14.2.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.14.1...v6.14.2)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-14 12:44:05 +00:00
7heMech
1d14f72ba5 Add guardrail for disable 2fa 2026-02-14 06:28:59 +00:00
dependabot[bot]
099243aff7 Bump jsonpath from 1.1.1 to 1.2.1 in /test
Bumps [jsonpath](https://github.com/dchester/jsonpath) from 1.1.1 to 1.2.1.
- [Commits](https://github.com/dchester/jsonpath/commits/1.2.1)

---
updated-dependencies:
- dependency-name: jsonpath
  dependency-version: 1.2.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-12 15:31:26 +00:00
dependabot[bot]
5fe12f69ba Bump axios from 1.13.4 to 1.13.5 in /test
Bumps [axios](https://github.com/axios/axios) from 1.13.4 to 1.13.5.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.13.4...v1.13.5)

---
updated-dependencies:
- dependency-name: axios
  dependency-version: 1.13.5
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-11 20:22:09 +00:00
jc21
011191f645 Merge pull request #5260 from jerry-yuan/develop
All checks were successful
Close stale issues and PRs / stale (push) Successful in 35s
Add trust_forwarded_proto option for SSL redirect handling in r…
2026-02-11 14:54:00 +10:00
jerry-yuan
eeab425ea4 fix: unknown "trust_forwarded_proto" variable error when run with already created old virtual hosts 2026-02-10 10:53:17 +00:00
Jamie Curnow
13fbc53591 Fix bug when adding invalid custom certs
All checks were successful
Close stale issues and PRs / stale (push) Successful in 36s
2026-02-10 14:54:33 +10:00
dependabot[bot]
3f2aec7b86 Bump vite-tsconfig-paths in /frontend in the dev-minor-updates group
Bumps the dev-minor-updates group in /frontend with 1 update: [vite-tsconfig-paths](https://github.com/aleclarson/vite-tsconfig-paths).


Updates `vite-tsconfig-paths` from 6.0.5 to 6.1.0
- [Release notes](https://github.com/aleclarson/vite-tsconfig-paths/releases)
- [Commits](https://github.com/aleclarson/vite-tsconfig-paths/compare/v6.0.5...v6.1.0)

---
updated-dependencies:
- dependency-name: vite-tsconfig-paths
  dependency-version: 6.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-minor-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 14:29:32 +00:00
dependabot[bot]
09a3d65aa1 Bump the dev-patch-updates group in /frontend with 2 updates
Bumps the dev-patch-updates group in /frontend with 2 updates: [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) and [happy-dom](https://github.com/capricorn86/happy-dom).


Updates `@types/react` from 19.2.10 to 19.2.13
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

Updates `happy-dom` from 20.5.0 to 20.5.3
- [Release notes](https://github.com/capricorn86/happy-dom/releases)
- [Commits](https://github.com/capricorn86/happy-dom/compare/v20.5.0...v20.5.3)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-version: 19.2.13
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-patch-updates
- dependency-name: happy-dom
  dependency-version: 20.5.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-patch-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 14:29:16 +00:00
dependabot[bot]
c910cf9512 Bump eslint from 9.39.2 to 10.0.0 in /test
Bumps [eslint](https://github.com/eslint/eslint) from 9.39.2 to 10.0.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/compare/v9.39.2...v10.0.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 10.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 14:29:11 +00:00
dependabot[bot]
304c51aae8 Bump cypress in /test in the prod-minor-updates group
Bumps the prod-minor-updates group in /test with 1 update: [cypress](https://github.com/cypress-io/cypress).


Updates `cypress` from 15.9.0 to 15.10.0
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/cypress-io/cypress/compare/v15.9.0...v15.10.0)

---
updated-dependencies:
- dependency-name: cypress
  dependency-version: 15.10.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod-minor-updates
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 14:28:59 +00:00
kiaxseventh
b552eb90ed Add ArvanCloud DNS support 2026-02-09 13:02:18 +03:30
Tomáš Novák
b78ef9bcd3 Add Czech translation and related locale files 2026-02-06 17:02:47 +01:00
Jozef Gaal
7c67fafedf Update Slovak translation
Updated Slovak translations for 2FA and other features
2026-02-06 01:23:59 +01:00
jc21
47b367d61e Merge pull request #5276 from NginxProxyManager/develop
v2.13.7
2026-02-06 07:11:49 +10:00
Jamie Curnow
d19f5c1960 Fix upgrade problem with otplib existing secrets
All checks were successful
Close stale issues and PRs / stale (push) Successful in 33s
2026-02-05 13:12:54 +10:00
Jamie Curnow
77662b4e7f Use better-sqlite3 package for sqlite databases 2026-02-05 13:11:57 +10:00
Jamie Curnow
c88de65d3a Fix #5274 2fa backup codes not validating properly 2026-02-05 10:51:15 +10:00
jc21
ac4efd2333 Merge branch 'master' into develop 2026-02-05 08:27:41 +10:00
Jamie Curnow
eab38d8934 Bump version 2026-02-05 08:26:49 +10:00
Jerry8块
b7402d47a0 Merge branch 'NginxProxyManager:develop' into develop 2026-02-03 15:10:13 +08:00
jerry-yuan
21f63e3db3 fix: delete advanced options from redir_host/dead_host/streams 2026-02-01 10:38:09 +00:00
Jerry
232b5b759a fix: make variable name meaningful 2026-02-01 00:16:17 +08:00
jerry-yuan
054742539f fix: Supplement Swagger documentation 2026-01-31 14:17:05 +00:00
jerry-yuan
2b6a617599 fix: reformat migration scripts 2026-01-31 13:28:53 +00:00
jerry-yuan
187d21a0d5 feat: add trust_forwarded_proto option for SSL redirect handling in reverse proxy scenarios
When Nginx is behind another proxy server (like CloudFlare or AWS ALB), the force-SSL
feature can cause redirect loops because Nginx sees the connection as plain HTTP
while SSL is already handled upstream. This adds a new boolean option to trust
the X-Forwarded-Proto header from upstream proxies.

Changes:
- Add `trust_forwarded_proto` column to proxy_host table (migration)
- Update model and API schema to support the new boolean field
- Modify force-ssl Nginx template to check X-Forwarded-Proto/X-Forwarded-Scheme
- Add map directives in nginx.conf to validate and sanitize forwarded headers
- Add advanced option toggle in frontend UI with i18n support (EN/ZH)
- Set proxy headers from validated map variables instead of $scheme

This allows administrators to control SSL redirect behavior when Nginx is deployed
behind a TLS-terminating proxy.
2026-01-31 13:11:47 +00:00
jc21
f3efaae320 Merge pull request #5141 from NginxProxyManager/develop
v2.13.6
2026-01-14 14:30:49 +10:00
49 changed files with 1485 additions and 452 deletions

View File

@@ -1 +1 @@
2.13.6 2.14.0

View File

@@ -1,7 +1,7 @@
<p align="center"> <p align="center">
<img src="https://nginxproxymanager.com/github.png"> <img src="https://nginxproxymanager.com/github.png">
<br><br> <br><br>
<img src="https://img.shields.io/badge/version-2.13.6-green.svg?style=for-the-badge"> <img src="https://img.shields.io/badge/version-2.14.0-green.svg?style=for-the-badge">
<a href="https://hub.docker.com/repository/docker/jc21/nginx-proxy-manager"> <a href="https://hub.docker.com/repository/docker/jc21/nginx-proxy-manager">
<img src="https://img.shields.io/docker/stars/jc21/nginx-proxy-manager.svg?style=for-the-badge"> <img src="https://img.shields.io/docker/stars/jc21/nginx-proxy-manager.svg?style=for-the-badge">
</a> </a>
@@ -36,6 +36,10 @@ so that the barrier for entry here is low.
- Advanced Nginx configuration available for super users - Advanced Nginx configuration available for super users
- User management, permissions and audit log - User management, permissions and audit log
::: warning
`armv7` is no longer supported in version 2.14+. This is due to Nodejs dropping support for armhf. Please
use the `2.13.7` image tag if this applies to you.
:::
## Hosting your home network ## Hosting your home network
@@ -43,16 +47,15 @@ I won't go in to too much detail here but here are the basics for someone new to
1. Your home router will have a Port Forwarding section somewhere. Log in and find it 1. Your home router will have a Port Forwarding section somewhere. Log in and find it
2. Add port forwarding for port 80 and 443 to the server hosting this project 2. Add port forwarding for port 80 and 443 to the server hosting this project
3. Configure your domain name details to point to your home, either with a static ip or a service like DuckDNS or [Amazon Route53](https://github.com/jc21/route53-ddns) 3. Configure your domain name details to point to your home, either with a static ip or a service like
- DuckDNS
- [Amazon Route53](https://github.com/jc21/route53-ddns)
- [Cloudflare](https://github.com/jc21/cloudflare-ddns)
4. Use the Nginx Proxy Manager as your gateway to forward to your other web based services 4. Use the Nginx Proxy Manager as your gateway to forward to your other web based services
## Quick Setup ## Quick Setup
1. Install Docker and Docker-Compose 1. [Install Docker](https://docs.docker.com/install/)
- [Docker Install documentation](https://docs.docker.com/install/)
- [Docker-Compose Install documentation](https://docs.docker.com/compose/install/)
2. Create a docker-compose.yml file similar to this: 2. Create a docker-compose.yml file similar to this:
```yml ```yml

View File

@@ -22,6 +22,14 @@
"dependencies": "", "dependencies": "",
"credentials": "dns_aliyun_access_key = 12345678\ndns_aliyun_access_key_secret = 1234567890abcdef1234567890abcdef", "credentials": "dns_aliyun_access_key = 12345678\ndns_aliyun_access_key_secret = 1234567890abcdef1234567890abcdef",
"full_plugin_name": "dns-aliyun" "full_plugin_name": "dns-aliyun"
},
"arvan": {
"name": "ArvanCloud",
"package_name": "certbot-dns-arvan",
"version": ">=0.1.0",
"dependencies": "",
"credentials": "dns_arvan_key = Apikey xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"full_plugin_name": "dns-arvan"
}, },
"azure": { "azure": {
"name": "Azure", "name": "Azure",

View File

@@ -2,7 +2,7 @@
"database": { "database": {
"engine": "knex-native", "engine": "knex-native",
"knex": { "knex": {
"client": "sqlite3", "client": "better-sqlite3",
"connection": { "connection": {
"filename": "/app/config/mydb.sqlite" "filename": "/app/config/mydb.sqlite"
}, },

View File

@@ -1,6 +1,6 @@
import crypto from "node:crypto"; import crypto from "node:crypto";
import bcrypt from "bcrypt"; import bcrypt from "bcrypt";
import { generateSecret, generateURI, verify } from "otplib"; import { createGuardrails, generateSecret, generateURI, verify } from "otplib";
import errs from "../lib/error.js"; import errs from "../lib/error.js";
import authModel from "../models/auth.js"; import authModel from "../models/auth.js";
import internalUser from "./user.js"; import internalUser from "./user.js";
@@ -163,6 +163,9 @@ const internal2fa = {
const result = await verify({ const result = await verify({
token: code, token: code,
secret: auth.meta.totp_secret, secret: auth.meta.totp_secret,
guardrails: createGuardrails({
MIN_SECRET_BYTES: 10,
}),
}); });
if (!result.valid) { if (!result.valid) {
@@ -198,20 +201,30 @@ const internal2fa = {
return false; return false;
} }
// Try TOTP code first // Try TOTP code first, if it's 6 chars. it will throw errors if it's not 6 chars
// and the backup codes are 8 chars.
if (token.length === 6) {
const result = await verify({ const result = await verify({
token, token,
secret, secret,
// These guardrails lower the minimum length requirement for secrets.
// In v12 of otplib the default minimum length is 10 and in v13 it is 16.
// Since there are 2fa secrets in the wild generated with v12 we need to allow shorter secrets
// so people won't be locked out when upgrading.
guardrails: createGuardrails({
MIN_SECRET_BYTES: 10,
}),
}); });
if (result.valid) { if (result.valid) {
return true; return true;
} }
}
// Try backup codes // Try backup codes
const backupCodes = auth?.meta?.backup_codes || []; const backupCodes = auth?.meta?.backup_codes || [];
for (let i = 0; i < backupCodes.length; i++) { for (let i = 0; i < backupCodes.length; i++) {
const match = await bcrypt.compare(code.toUpperCase(), backupCodes[i]); const match = await bcrypt.compare(token.toUpperCase(), backupCodes[i]);
if (match) { if (match) {
// Remove used backup code // Remove used backup code
const updatedCodes = [...backupCodes]; const updatedCodes = [...backupCodes];
@@ -275,7 +288,11 @@ const internal2fa = {
}, },
getUserPasswordAuth: async (userId) => { getUserPasswordAuth: async (userId) => {
const auth = await authModel.query().where("user_id", userId).andWhere("type", "password").first(); const auth = await authModel
.query()
.where("user_id", userId)
.andWhere("type", "password")
.first();
if (!auth) { if (!auth) {
throw new errs.ItemNotFoundError("Auth not found"); throw new errs.ItemNotFoundError("Auth not found");

View File

@@ -630,7 +630,7 @@ const internalCertificate = {
* @param {String} privateKey This is the entire key contents as a string * @param {String} privateKey This is the entire key contents as a string
*/ */
checkPrivateKey: async (privateKey) => { checkPrivateKey: async (privateKey) => {
const filepath = await tempWrite(privateKey, "/tmp"); const filepath = await tempWrite(privateKey);
const failTimeout = setTimeout(() => { const failTimeout = setTimeout(() => {
throw new error.ValidationError( throw new error.ValidationError(
"Result Validation Error: Validation timed out. This could be due to the key being passphrase-protected.", "Result Validation Error: Validation timed out. This could be due to the key being passphrase-protected.",
@@ -660,8 +660,8 @@ const internalCertificate = {
* @param {Boolean} [throwExpired] Throw when the certificate is out of date * @param {Boolean} [throwExpired] Throw when the certificate is out of date
*/ */
getCertificateInfo: async (certificate, throwExpired) => { getCertificateInfo: async (certificate, throwExpired) => {
const filepath = await tempWrite(certificate);
try { try {
const filepath = await tempWrite(certificate, "/tmp");
const certData = await internalCertificate.getCertificateInfoFromFile(filepath, throwExpired); const certData = await internalCertificate.getCertificateInfoFromFile(filepath, throwExpired);
fs.unlinkSync(filepath); fs.unlinkSync(filepath);
return certData; return certData;

View File

@@ -5,7 +5,7 @@ import { global as logger } from "../logger.js";
const keysFile = '/data/keys.json'; const keysFile = '/data/keys.json';
const mysqlEngine = 'mysql2'; const mysqlEngine = 'mysql2';
const postgresEngine = 'pg'; const postgresEngine = 'pg';
const sqliteClientName = 'sqlite3'; const sqliteClientName = 'better-sqlite3';
let instance = null; let instance = null;
@@ -84,6 +84,7 @@ const configure = () => {
} }
const envSqliteFile = process.env.DB_SQLITE_FILE || "/data/database.sqlite"; const envSqliteFile = process.env.DB_SQLITE_FILE || "/data/database.sqlite";
logger.info(`Using Sqlite: ${envSqliteFile}`); logger.info(`Using Sqlite: ${envSqliteFile}`);
instance = { instance = {
database: { database: {

View File

@@ -0,0 +1,43 @@
import { migrate as logger } from "../logger.js";
const migrateName = "trust_forwarded_proto";
/**
* Migrate
*
* @see http://knexjs.org/#Schema
*
* @param {Object} knex
* @returns {Promise}
*/
const up = function (knex) {
logger.info(`[${migrateName}] Migrating Up...`);
return knex.schema
.alterTable('proxy_host', (table) => {
table.tinyint('trust_forwarded_proto').notNullable().defaultTo(0);
})
.then(() => {
logger.info(`[${migrateName}] proxy_host Table altered`);
});
};
/**
* Undo Migrate
*
* @param {Object} knex
* @returns {Promise}
*/
const down = function (knex) {
logger.info(`[${migrateName}] Migrating Down...`);
return knex.schema
.alterTable('proxy_host', (table) => {
table.dropColumn('trust_forwarded_proto');
})
.then(() => {
logger.info(`[${migrateName}] proxy_host Table altered`);
});
};
export { up, down };

View File

@@ -21,6 +21,7 @@ const boolFields = [
"enabled", "enabled",
"hsts_enabled", "hsts_enabled",
"hsts_subdomains", "hsts_subdomains",
"trust_forwarded_proto",
]; ];
class ProxyHost extends Model { class ProxyHost extends Model {

View File

@@ -13,10 +13,11 @@
}, },
"dependencies": { "dependencies": {
"@apidevtools/json-schema-ref-parser": "^14.1.1", "@apidevtools/json-schema-ref-parser": "^14.1.1",
"ajv": "^8.17.1", "ajv": "^8.18.0",
"archiver": "^7.0.1", "archiver": "^7.0.1",
"batchflow": "^0.4.0", "batchflow": "^0.4.0",
"bcrypt": "^6.0.0", "bcrypt": "^6.0.0",
"better-sqlite3": "^12.6.2",
"body-parser": "^2.2.2", "body-parser": "^2.2.2",
"compression": "^1.7.4", "compression": "^1.7.4",
"express": "^5.2.1", "express": "^5.2.1",
@@ -27,10 +28,10 @@
"liquidjs": "10.24.0", "liquidjs": "10.24.0",
"lodash": "^4.17.23", "lodash": "^4.17.23",
"moment": "^2.30.1", "moment": "^2.30.1",
"mysql2": "^3.16.3", "mysql2": "^3.17.1",
"node-rsa": "^1.1.1", "node-rsa": "^1.1.1",
"objection": "3.1.5", "objection": "3.1.5",
"otplib": "^13.2.1", "otplib": "^13.3.0",
"path": "^0.12.7", "path": "^0.12.7",
"pg": "^8.18.0", "pg": "^8.18.0",
"proxy-agent": "^6.5.0", "proxy-agent": "^6.5.0",

View File

@@ -22,7 +22,8 @@
"enabled", "enabled",
"locations", "locations",
"hsts_enabled", "hsts_enabled",
"hsts_subdomains" "hsts_subdomains",
"trust_forwarded_proto"
], ],
"properties": { "properties": {
"id": { "id": {
@@ -141,6 +142,11 @@
"hsts_subdomains": { "hsts_subdomains": {
"$ref": "../common.json#/properties/hsts_subdomains" "$ref": "../common.json#/properties/hsts_subdomains"
}, },
"trust_forwarded_proto":{
"type": "boolean",
"description": "Trust the forwarded headers",
"example": false
},
"certificate": { "certificate": {
"oneOf": [ "oneOf": [
{ {

View File

@@ -58,7 +58,8 @@
"enabled": true, "enabled": true,
"locations": [], "locations": [],
"hsts_enabled": false, "hsts_enabled": false,
"hsts_subdomains": false "hsts_subdomains": false,
"trust_forwarded_proto": false
} }
] ]
} }

View File

@@ -56,6 +56,7 @@
"locations": [], "locations": [],
"hsts_enabled": false, "hsts_enabled": false,
"hsts_subdomains": false, "hsts_subdomains": false,
"trust_forwarded_proto": false,
"owner": { "owner": {
"id": 1, "id": 1,
"created_on": "2025-10-28T00:50:24.000Z", "created_on": "2025-10-28T00:50:24.000Z",

View File

@@ -56,6 +56,9 @@
"hsts_subdomains": { "hsts_subdomains": {
"$ref": "../../../../components/proxy-host-object.json#/properties/hsts_subdomains" "$ref": "../../../../components/proxy-host-object.json#/properties/hsts_subdomains"
}, },
"trust_forwarded_proto": {
"$ref": "../../../../components/proxy-host-object.json#/properties/trust_forwarded_proto"
},
"http2_support": { "http2_support": {
"$ref": "../../../../components/proxy-host-object.json#/properties/http2_support" "$ref": "../../../../components/proxy-host-object.json#/properties/http2_support"
}, },
@@ -122,6 +125,7 @@
"locations": [], "locations": [],
"hsts_enabled": false, "hsts_enabled": false,
"hsts_subdomains": false, "hsts_subdomains": false,
"trust_forwarded_proto": false,
"owner": { "owner": {
"id": 1, "id": 1,
"created_on": "2025-10-28T00:50:24.000Z", "created_on": "2025-10-28T00:50:24.000Z",

View File

@@ -48,6 +48,9 @@
"hsts_subdomains": { "hsts_subdomains": {
"$ref": "../../../components/proxy-host-object.json#/properties/hsts_subdomains" "$ref": "../../../components/proxy-host-object.json#/properties/hsts_subdomains"
}, },
"trust_forwarded_proto": {
"$ref": "../../../components/proxy-host-object.json#/properties/trust_forwarded_proto"
},
"http2_support": { "http2_support": {
"$ref": "../../../components/proxy-host-object.json#/properties/http2_support" "$ref": "../../../components/proxy-host-object.json#/properties/http2_support"
}, },
@@ -119,6 +122,7 @@
"locations": [], "locations": [],
"hsts_enabled": false, "hsts_enabled": false,
"hsts_subdomains": false, "hsts_subdomains": false,
"trust_forwarded_proto": false,
"certificate": null, "certificate": null,
"owner": { "owner": {
"id": 1, "id": 1,

View File

@@ -17,7 +17,7 @@
}, },
"code": { "code": {
"minLength": 6, "minLength": 6,
"maxLength": 6, "maxLength": 8,
"type": "string", "type": "string",
"example": "012345" "example": "012345"
} }

View File

@@ -16,7 +16,7 @@
} }
], ],
"requestBody": { "requestBody": {
"description": "Verififcation Payload", "description": "Verification Payload",
"required": true, "required": true,
"content": { "content": {
"application/json": { "application/json": {
@@ -25,7 +25,7 @@
"properties": { "properties": {
"code": { "code": {
"minLength": 6, "minLength": 6,
"maxLength": 6, "maxLength": 8,
"type": "string", "type": "string",
"example": "123456" "example": "123456"
} }

View File

@@ -16,7 +16,7 @@
} }
], ],
"requestBody": { "requestBody": {
"description": "Verififcation Payload", "description": "Verification Payload",
"required": true, "required": true,
"content": { "content": {
"application/json": { "application/json": {
@@ -25,7 +25,7 @@
"properties": { "properties": {
"code": { "code": {
"minLength": 6, "minLength": 6,
"maxLength": 6, "maxLength": 8,
"type": "string", "type": "string",
"example": "123456" "example": "123456"
} }

View File

@@ -1,6 +1,11 @@
{% if certificate and certificate_id > 0 -%} {% if certificate and certificate_id > 0 -%}
{% if ssl_forced == 1 or ssl_forced == true %} {% if ssl_forced == 1 or ssl_forced == true %}
# Force SSL # Force SSL
{% if trust_forwarded_proto == true %}
set $trust_forwarded_proto "T";
{% else %}
set $trust_forwarded_proto "F";
{% endif %}
include conf.d/include/force-ssl.conf; include conf.d/include/force-ssl.conf;
{% endif %} {% endif %}
{% endif %} {% endif %}

View File

@@ -132,50 +132,50 @@
mkdirp "^1.0.4" mkdirp "^1.0.4"
rimraf "^3.0.2" rimraf "^3.0.2"
"@otplib/core@13.2.1": "@otplib/core@13.3.0":
version "13.2.1" version "13.3.0"
resolved "https://registry.yarnpkg.com/@otplib/core/-/core-13.2.1.tgz#83449322a390b6b4c045b2e799cbd1f7718f1f64" resolved "https://registry.yarnpkg.com/@otplib/core/-/core-13.3.0.tgz#7f037af6cc5907c2cff9cf6092952088a0ce5a6e"
integrity sha512-IyfHvYNCyipDxhmJdcUUvUeT3Hz84/GgM6G2G6BTEmnAKPzNA7U0kYGkxKZWY9h23W94RJk4qiClJRJN5zKGvg== integrity sha512-pnQDOuCmFVeF/XnboJq9TOJgLoo2idNPJKMymOF8vGqJJ+ReKRYM9bUGjNPRWC0tHjMwu1TXbnzyBp494JgRag==
"@otplib/hotp@13.2.1": "@otplib/hotp@13.3.0":
version "13.2.1" version "13.3.0"
resolved "https://registry.yarnpkg.com/@otplib/hotp/-/hotp-13.2.1.tgz#6149c877e5a51fd1c527ada535fe75ca4f525eee" resolved "https://registry.yarnpkg.com/@otplib/hotp/-/hotp-13.3.0.tgz#135e45c6350ae60bbc1170a1801a6100e49794b8"
integrity sha512-iRKqvj0TnemtXXtEswzBX50Z0yMNa0lH9PSdr5N4CJc1mDEuUmFFZQqnu3PfA3fPd3WeAU+mHgmK/xq18+K1QA== integrity sha512-XJMZGz2bg4QJwK7ulvl1GUI2VMn/flaIk/E/BTKAejHsX2kUtPF1bRhlZ2+elq8uU5Fs9Z9FHcQK2CPZNQbbUQ==
dependencies: dependencies:
"@otplib/core" "13.2.1" "@otplib/core" "13.3.0"
"@otplib/uri" "13.2.1" "@otplib/uri" "13.3.0"
"@otplib/plugin-base32-scure@13.2.1": "@otplib/plugin-base32-scure@13.3.0":
version "13.2.1" version "13.3.0"
resolved "https://registry.yarnpkg.com/@otplib/plugin-base32-scure/-/plugin-base32-scure-13.2.1.tgz#2e7b1849311bfafd630fa87ce2812b7c3c718675" resolved "https://registry.yarnpkg.com/@otplib/plugin-base32-scure/-/plugin-base32-scure-13.3.0.tgz#3362fc5dd568e9cecac913fd0fa169148c469142"
integrity sha512-vnA2qqgJ/FbFbDNGOLAS8dKfCsJFXwFsZKYklE8yl2INkCOUR0vbVdJ2TVmufzC8R1RRZHW+cDR20ACgc9XFYg== integrity sha512-/jYbL5S6GB0Ie3XGEWtLIr9s5ZICl/BfmNL7+8/W7usZaUU4GiyLd2S+JGsNCslPyqNekSudD864nDAvRI0s8w==
dependencies: dependencies:
"@otplib/core" "13.2.1" "@otplib/core" "13.3.0"
"@scure/base" "^2.0.0" "@scure/base" "^2.0.0"
"@otplib/plugin-crypto-noble@13.2.1": "@otplib/plugin-crypto-noble@13.3.0":
version "13.2.1" version "13.3.0"
resolved "https://registry.yarnpkg.com/@otplib/plugin-crypto-noble/-/plugin-crypto-noble-13.2.1.tgz#11f6325f4593f57360af2268313b94003b225807" resolved "https://registry.yarnpkg.com/@otplib/plugin-crypto-noble/-/plugin-crypto-noble-13.3.0.tgz#edfd6c8c54730cfdfc52c6a3fcd797e204fdd0e2"
integrity sha512-Dxjmt4L+5eDWJf5EvbcMp+fxcliyKoB9N9sNQq/vuVAUvq+KiqpiiCQZ/wHyrN0ArB0NdevtK1KByyAq080ldg== integrity sha512-wmV+jBVncepgwv99G7Plrdzd0tHfbpXk2U+OD7MO7DzpDqOYEgOPi+IIneksJSTL8QvWdfi+uQEuhnER4fKouA==
dependencies: dependencies:
"@noble/hashes" "^2.0.1" "@noble/hashes" "^2.0.1"
"@otplib/core" "13.2.1" "@otplib/core" "13.3.0"
"@otplib/totp@13.2.1": "@otplib/totp@13.3.0":
version "13.2.1" version "13.3.0"
resolved "https://registry.yarnpkg.com/@otplib/totp/-/totp-13.2.1.tgz#2c8f8a8d87cf6e440d9050d363dfd24bc25179d6" resolved "https://registry.yarnpkg.com/@otplib/totp/-/totp-13.3.0.tgz#1d1f61cfd1acd773e1051e6b918227ae34545808"
integrity sha512-LzDzAAK3w8rspF3urBnWjOlxso1SCGxX9Pnu/iy+HkC0y0HgiLsW7jhkr2hJ3u4cyBdL/tOKUhhELwsjyvunwQ== integrity sha512-XfjGNoN8d9S3Ove2j7AwkVV7+QDFsV7Lm7YwSiezNaHffkWtJ60aJYpmf+01dARdPST71U2ptueMsRJso4sq4A==
dependencies: dependencies:
"@otplib/core" "13.2.1" "@otplib/core" "13.3.0"
"@otplib/hotp" "13.2.1" "@otplib/hotp" "13.3.0"
"@otplib/uri" "13.2.1" "@otplib/uri" "13.3.0"
"@otplib/uri@13.2.1": "@otplib/uri@13.3.0":
version "13.2.1" version "13.3.0"
resolved "https://registry.yarnpkg.com/@otplib/uri/-/uri-13.2.1.tgz#50054fe922f3610e7558b0c5337353770c1f382e" resolved "https://registry.yarnpkg.com/@otplib/uri/-/uri-13.3.0.tgz#7474d6dc0fdf8ab2d0cf2b79e2001446c4e7b6b3"
integrity sha512-ssYnfiUrFTs/rPRUW8h59m0MVLYOC+UKk7tVGYgtG15lLaLBrNBQjM2YFanuzn9Jm4iv9JxiNG7TRkwcnyR09A== integrity sha512-3oh6nBXy+cm3UX9cxEAGZiDrfxHU2gfelYFV+XNCx+8dq39VaQVymwlU2yjPZiMAi/3agaUeEftf2RwM5F+Cyg==
dependencies: dependencies:
"@otplib/core" "13.2.1" "@otplib/core" "13.3.0"
"@pkgjs/parseargs@^0.11.0": "@pkgjs/parseargs@^0.11.0":
version "0.11.0" version "0.11.0"
@@ -261,10 +261,10 @@ ajv-formats@^2.1.1:
dependencies: dependencies:
ajv "^8.0.0" ajv "^8.0.0"
ajv@^8.0.0, ajv@^8.17.1: ajv@^8.0.0, ajv@^8.17.1, ajv@^8.18.0:
version "8.17.1" version "8.18.0"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.18.0.tgz#8864186b6738d003eb3a933172bb3833e10cefbc"
integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== integrity sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==
dependencies: dependencies:
fast-deep-equal "^3.1.3" fast-deep-equal "^3.1.3"
fast-uri "^3.0.1" fast-uri "^3.0.1"
@@ -414,6 +414,14 @@ bcrypt@^6.0.0:
node-addon-api "^8.3.0" node-addon-api "^8.3.0"
node-gyp-build "^4.8.4" node-gyp-build "^4.8.4"
better-sqlite3@^12.6.2:
version "12.6.2"
resolved "https://registry.yarnpkg.com/better-sqlite3/-/better-sqlite3-12.6.2.tgz#770649f28a62e543a360f3dfa1afe4cc944b1937"
integrity sha512-8VYKM3MjCa9WcaSAI3hzwhmyHVlH8tiGFwf0RlTsZPWJ1I5MkzjiudCo4KC4DxOaL/53A5B1sI/IbldNFDbsKA==
dependencies:
bindings "^1.5.0"
prebuild-install "^7.1.1"
binary-extensions@^2.0.0: binary-extensions@^2.0.0:
version "2.3.0" version "2.3.0"
resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522"
@@ -1853,10 +1861,10 @@ ms@^2.0.0, ms@^2.1.1, ms@^2.1.3:
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
mysql2@^3.16.3: mysql2@^3.17.1:
version "3.16.3" version "3.17.1"
resolved "https://registry.yarnpkg.com/mysql2/-/mysql2-3.16.3.tgz#59491bfa13f1979c2a87fd1ef68a3eb83fd58fcb" resolved "https://registry.yarnpkg.com/mysql2/-/mysql2-3.17.1.tgz#781292f60df3806949c0a3161a51ad3e4e4689a1"
integrity sha512-+3XhQEt4FEFuvGV0JjIDj4eP2OT/oIj/54dYvqhblnSzlfcxVOuj+cd15Xz6hsG4HU1a+A5+BA9gm0618C4z7A== integrity sha512-UzIzdVwPXPoZm+FaJ4lNsRt28HtUwt68gpLH7NP1oSjd91M5Qn1XJzbIsSRMRc5CV3pvktLNshmbaFfMYqPBhQ==
dependencies: dependencies:
aws-ssl-profiles "^1.1.2" aws-ssl-profiles "^1.1.2"
denque "^2.1.0" denque "^2.1.0"
@@ -1866,7 +1874,7 @@ mysql2@^3.16.3:
lru.min "^1.1.3" lru.min "^1.1.3"
named-placeholders "^1.1.6" named-placeholders "^1.1.6"
seq-queue "^0.0.5" seq-queue "^0.0.5"
sqlstring "^2.3.3" sql-escaper "^1.3.2"
named-placeholders@^1.1.6: named-placeholders@^1.1.6:
version "1.1.6" version "1.1.6"
@@ -2011,17 +2019,17 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0:
dependencies: dependencies:
wrappy "1" wrappy "1"
otplib@^13.2.1: otplib@^13.3.0:
version "13.2.1" version "13.3.0"
resolved "https://registry.yarnpkg.com/otplib/-/otplib-13.2.1.tgz#39cc114228409ff30cfa6779e2f8cb007b535942" resolved "https://registry.yarnpkg.com/otplib/-/otplib-13.3.0.tgz#2ead040ab29d1a829d1d7c510b059a3e4c76b2b0"
integrity sha512-Cft9h/m34LtvnoB2TjP1E1E6v0biwcUntl6U4e+HgWrTa0bpwmb+u/D9gLFA+U6/ztlvrult0811Bu30nUVUuA== integrity sha512-VYMKyyDG8yt2q+z58sz54/EIyTh7+tyMrjeemR44iVh5+dkKtIs57irTqxjH+IkAL1uMmG1JIFhG5CxTpqdU5g==
dependencies: dependencies:
"@otplib/core" "13.2.1" "@otplib/core" "13.3.0"
"@otplib/hotp" "13.2.1" "@otplib/hotp" "13.3.0"
"@otplib/plugin-base32-scure" "13.2.1" "@otplib/plugin-base32-scure" "13.3.0"
"@otplib/plugin-crypto-noble" "13.2.1" "@otplib/plugin-crypto-noble" "13.3.0"
"@otplib/totp" "13.2.1" "@otplib/totp" "13.3.0"
"@otplib/uri" "13.2.1" "@otplib/uri" "13.3.0"
p-limit@^1.1.0: p-limit@^1.1.0:
version "1.3.0" version "1.3.0"
@@ -2337,9 +2345,9 @@ pump@^3.0.0:
once "^1.3.1" once "^1.3.1"
qs@^6.14.0, qs@^6.14.1: qs@^6.14.0, qs@^6.14.1:
version "6.14.1" version "6.14.2"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.2.tgz#b5634cf9d9ad9898e31fba3504e866e8efb6798c"
integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== integrity sha512-V/yCWTTF7VJ9hIh18Ugr2zhJMP01MY7c5kh4J870L7imm6/DIzBsNLTXzMwUA3yZ5b/KBqLx8Kp3uRvd7xSe3Q==
dependencies: dependencies:
side-channel "^1.1.0" side-channel "^1.1.0"
@@ -2679,6 +2687,11 @@ split2@^4.1.0:
resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4" resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4"
integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg== integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==
sql-escaper@^1.3.2:
version "1.3.2"
resolved "https://registry.yarnpkg.com/sql-escaper/-/sql-escaper-1.3.2.tgz#b11c68c6541fc05afdf508d52e54af7219455fad"
integrity sha512-lp+ZDVfSjHt+qAK1jXBTIXBNYnbo7gnaAGwoYTH9bE89kNkXwcu6g0WjJGRsdTKVpY1z70u3Y0IgmnBOoRybHw==
sqlite3@^5.1.7: sqlite3@^5.1.7:
version "5.1.7" version "5.1.7"
resolved "https://registry.yarnpkg.com/sqlite3/-/sqlite3-5.1.7.tgz#59ca1053c1ab38647396586edad019b1551041b7" resolved "https://registry.yarnpkg.com/sqlite3/-/sqlite3-5.1.7.tgz#59ca1053c1ab38647396586edad019b1551041b7"
@@ -2691,11 +2704,6 @@ sqlite3@^5.1.7:
optionalDependencies: optionalDependencies:
node-gyp "8.x" node-gyp "8.x"
sqlstring@^2.3.3:
version "2.3.3"
resolved "https://registry.yarnpkg.com/sqlstring/-/sqlstring-2.3.3.tgz#2ddc21f03bce2c387ed60680e739922c65751d0c"
integrity sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg==
ssri@^8.0.0, ssri@^8.0.1: ssri@^8.0.0, ssri@^8.0.1:
version "8.0.1" version "8.0.1"
resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af"

View File

@@ -5,9 +5,28 @@ if ($scheme = "http") {
if ($request_uri = /.well-known/acme-challenge/test-challenge) { if ($request_uri = /.well-known/acme-challenge/test-challenge) {
set $test "${test}T"; set $test "${test}T";
} }
# Check if the ssl staff has been handled
set $test_ssl_handled "";
if ($trust_forwarded_proto = "") {
set $trust_forwarded_proto "F";
}
if ($trust_forwarded_proto = "T") {
set $test_ssl_handled "${test_ssl_handled}T";
}
if ($http_x_forwarded_proto = "https") { if ($http_x_forwarded_proto = "https") {
set $test_ssl_handled "${test_ssl_handled}S";
}
if ($http_x_forwarded_scheme = "https") {
set $test_ssl_handled "${test_ssl_handled}S";
}
if ($test_ssl_handled = "TSS") {
set $test_ssl_handled "TS";
}
if ($test_ssl_handled = "TS") {
set $test "${test}S"; set $test "${test}S";
} }
if ($test = H) { if ($test = H) {
return 301 https://$host$request_uri; return 301 https://$host$request_uri;
} }

View File

@@ -1,7 +1,7 @@
add_header X-Served-By $host; add_header X-Served-By $host;
proxy_set_header Host $host; proxy_set_header Host $host;
proxy_set_header X-Forwarded-Scheme $scheme; proxy_set_header X-Forwarded-Scheme $x_forwarded_scheme;
proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Proto $x_forwarded_proto;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-IP $remote_addr;
proxy_pass $forward_scheme://$server:$port$request_uri; proxy_pass $forward_scheme://$server:$port$request_uri;

View File

@@ -57,6 +57,18 @@ http {
default http; default http;
} }
# Handle upstream X-Forwarded-Proto and X-Forwarded-Scheme header
map $http_x_forwarded_proto $x_forwarded_proto {
"http" "http";
"https" "https";
default $scheme;
}
map $http_x_forwarded_scheme $x_forwarded_scheme {
"http" "http";
"https" "https";
default $scheme;
}
# Real IP Determination # Real IP Determination
# Local subnets: # Local subnets:

View File

@@ -17,10 +17,6 @@ case $TARGETPLATFORM in
S6_ARCH=aarch64 S6_ARCH=aarch64
;; ;;
linux/arm/v7)
S6_ARCH=armhf
;;
*) *)
S6_ARCH=x86_64 S6_ARCH=x86_64
;; ;;

View File

@@ -169,7 +169,11 @@ Custom Postgres schema is not supported, as such `public` will be used.
The docker images support the following architectures: The docker images support the following architectures:
- amd64 - amd64
- arm64 - arm64
- armv7
::: warning
`armv7` is no longer supported in version 2.14+. This is due to Nodejs dropping support for armhf. Please
use the `2.13.7` image tag if this applies to you.
:::
The docker images are a manifest of all the architecture docker builds supported, so this means The docker images are a manifest of all the architecture docker builds supported, so this means
you don't have to worry about doing anything special and you can follow the common instructions above. you don't have to worry about doing anything special and you can follow the common instructions above.

View File

@@ -18,6 +18,7 @@ const allLocales = [
["pl", "pl-PL"], ["pl", "pl-PL"],
["ru", "ru-RU"], ["ru", "ru-RU"],
["sk", "sk-SK"], ["sk", "sk-SK"],
["cs", "cs-CZ"],
["vi", "vi-VN"], ["vi", "vi-VN"],
["zh", "zh-CN"], ["zh", "zh-CN"],
["ko", "ko-KR"], ["ko", "ko-KR"],

View File

@@ -18,11 +18,11 @@
"dependencies": { "dependencies": {
"@tabler/core": "^1.4.0", "@tabler/core": "^1.4.0",
"@tabler/icons-react": "^3.36.1", "@tabler/icons-react": "^3.36.1",
"@tanstack/react-query": "^5.90.20", "@tanstack/react-query": "^5.90.21",
"@tanstack/react-table": "^8.21.3", "@tanstack/react-table": "^8.21.3",
"@uiw/react-textarea-code-editor": "^3.1.1", "@uiw/react-textarea-code-editor": "^3.1.1",
"classnames": "^2.5.1", "classnames": "^2.5.1",
"country-flag-icons": "^1.6.12", "country-flag-icons": "^1.6.13",
"date-fns": "^4.1.0", "date-fns": "^4.1.0",
"ez-modal-react": "^1.0.5", "ez-modal-react": "^1.0.5",
"formik": "^2.4.9", "formik": "^2.4.9",
@@ -40,7 +40,7 @@
"rooks": "^9.5.0" "rooks": "^9.5.0"
}, },
"devDependencies": { "devDependencies": {
"@biomejs/biome": "^2.3.14", "@biomejs/biome": "^2.4.2",
"@formatjs/cli": "^6.12.2", "@formatjs/cli": "^6.12.2",
"@tanstack/react-query-devtools": "^5.91.3", "@tanstack/react-query-devtools": "^5.91.3",
"@testing-library/dom": "^10.4.1", "@testing-library/dom": "^10.4.1",
@@ -48,11 +48,11 @@
"@testing-library/react": "^16.3.2", "@testing-library/react": "^16.3.2",
"@types/country-flag-icons": "^1.2.2", "@types/country-flag-icons": "^1.2.2",
"@types/humps": "^2.0.6", "@types/humps": "^2.0.6",
"@types/react": "^19.2.10", "@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3", "@types/react-dom": "^19.2.3",
"@types/react-table": "^7.7.20", "@types/react-table": "^7.7.20",
"@vitejs/plugin-react": "^5.1.3", "@vitejs/plugin-react": "^5.1.4",
"happy-dom": "^20.5.0", "happy-dom": "^20.6.1",
"postcss": "^8.5.6", "postcss": "^8.5.6",
"postcss-simple-vars": "^7.0.1", "postcss-simple-vars": "^7.0.1",
"sass": "^1.97.3", "sass": "^1.97.3",
@@ -60,7 +60,7 @@
"typescript": "5.9.3", "typescript": "5.9.3",
"vite": "^7.3.1", "vite": "^7.3.1",
"vite-plugin-checker": "^0.12.0", "vite-plugin-checker": "^0.12.0",
"vite-tsconfig-paths": "^6.0.5", "vite-tsconfig-paths": "^6.1.1",
"vitest": "^4.0.18" "vitest": "^4.0.18"
} }
} }

View File

@@ -127,6 +127,7 @@ export interface ProxyHost {
locations?: ProxyLocation[]; locations?: ProxyLocation[];
hstsEnabled: boolean; hstsEnabled: boolean;
hstsSubdomains: boolean; hstsSubdomains: boolean;
trustForwardedProto: boolean;
// Expansions: // Expansions:
owner?: User; owner?: User;
accessList?: AccessList; accessList?: AccessList;

View File

@@ -5,17 +5,18 @@ import { T } from "src/locale";
interface Props { interface Props {
forHttp?: boolean; // the sslForced, http2Support, hstsEnabled, hstsSubdomains fields forHttp?: boolean; // the sslForced, http2Support, hstsEnabled, hstsSubdomains fields
forProxyHost?: boolean; // the advanced fields
forceDNSForNew?: boolean; forceDNSForNew?: boolean;
requireDomainNames?: boolean; // used for streams requireDomainNames?: boolean; // used for streams
color?: string; color?: string;
} }
export function SSLOptionsFields({ forHttp = true, forceDNSForNew, requireDomainNames, color = "bg-cyan" }: Props) { export function SSLOptionsFields({ forHttp = true, forProxyHost = false, forceDNSForNew, requireDomainNames, color = "bg-cyan" }: Props) {
const { values, setFieldValue } = useFormikContext(); const { values, setFieldValue } = useFormikContext();
const v: any = values || {}; const v: any = values || {};
const newCertificate = v?.certificateId === "new"; const newCertificate = v?.certificateId === "new";
const hasCertificate = newCertificate || (v?.certificateId && v?.certificateId > 0); const hasCertificate = newCertificate || (v?.certificateId && v?.certificateId > 0);
const { sslForced, http2Support, hstsEnabled, hstsSubdomains, meta } = v; const { sslForced, http2Support, hstsEnabled, hstsSubdomains, trustForwardedProto, meta } = v;
const { dnsChallenge } = meta || {}; const { dnsChallenge } = meta || {};
if (forceDNSForNew && newCertificate && !dnsChallenge) { if (forceDNSForNew && newCertificate && !dnsChallenge) {
@@ -115,6 +116,34 @@ export function SSLOptionsFields({ forHttp = true, forceDNSForNew, requireDomain
</div> </div>
); );
const getHttpAdvancedOptions = () =>(
<div>
<details>
<summary className="mb-1"><T id="domains.advanced" /></summary>
<div className="row">
<div className="col-12">
<Field name="trustForwardedProto">
{({ field }: any) => (
<label className="form-check form-switch mt-1">
<input
className={trustForwardedProto ? toggleEnabled : toggleClasses}
type="checkbox"
checked={!!trustForwardedProto}
onChange={(e) => handleToggleChange(e, field.name)}
disabled={!hasCertificate || !sslForced}
/>
<span className="form-check-label">
<T id="domains.trust-forwarded-proto" />
</span>
</label>
)}
</Field>
</div>
</div>
</details>
</div>
);
return ( return (
<div> <div>
{forHttp ? getHttpOptions() : null} {forHttp ? getHttpOptions() : null}
@@ -140,6 +169,7 @@ export function SSLOptionsFields({ forHttp = true, forceDNSForNew, requireDomain
{dnsChallenge ? <DNSProviderFields showBoundaryBox /> : null} {dnsChallenge ? <DNSProviderFields showBoundaryBox /> : null}
</> </>
) : null} ) : null}
{forProxyHost && forHttp ? getHttpAdvancedOptions() : null}
</div> </div>
); );
} }

View File

@@ -24,6 +24,7 @@ const fetchProxyHost = (id: number | "new") => {
enabled: true, enabled: true,
hstsEnabled: false, hstsEnabled: false,
hstsSubdomains: false, hstsSubdomains: false,
trustForwardedProto: false,
} as ProxyHost); } as ProxyHost);
} }
return getProxyHost(id, ["owner"]); return getProxyHost(id, ["owner"]);

View File

@@ -14,6 +14,7 @@ import langNl from "./lang/nl.json";
import langPl from "./lang/pl.json"; import langPl from "./lang/pl.json";
import langRu from "./lang/ru.json"; import langRu from "./lang/ru.json";
import langSk from "./lang/sk.json"; import langSk from "./lang/sk.json";
import langCs from "./lang/cs.json";
import langVi from "./lang/vi.json"; import langVi from "./lang/vi.json";
import langZh from "./lang/zh.json"; import langZh from "./lang/zh.json";
import langTr from "./lang/tr.json"; import langTr from "./lang/tr.json";
@@ -36,6 +37,7 @@ const localeOptions = [
["pl", "pl-PL", langPl], ["pl", "pl-PL", langPl],
["ru", "ru-RU", langRu], ["ru", "ru-RU", langRu],
["sk", "sk-SK", langSk], ["sk", "sk-SK", langSk],
["cs", "cs-CZ", langCs],
["vi", "vi-VN", langVi], ["vi", "vi-VN", langVi],
["zh", "zh-CN", langZh], ["zh", "zh-CN", langZh],
["ko", "ko-KR", langKo], ["ko", "ko-KR", langKo],
@@ -65,6 +67,7 @@ const getFlagCodeForLocale = (locale?: string) => {
zh: "cn", // China zh: "cn", // China
vi: "vn", // Vietnam vi: "vn", // Vietnam
ko: "kr", // Korea ko: "kr", // Korea
cs: "cz", // Czechia
}; };
if (specialCases[thisLocale]) { if (specialCases[thisLocale]) {

View File

@@ -0,0 +1,7 @@
## Co je seznam přístupů?
Seznamy přístupů poskytují blacklist nebo whitelist konkrétních IP adres klientů spolu s ověřením pro proxy hostitele prostřednictvím základního ověřování HTTP.
Můžete nakonfigurovat více pravidel pro klienty, uživatelská jména a hesla pro jeden seznam přístupu a poté ho použít na jednoho nebo více proxy hostitelů.
Toto je nejužitečnější pro přesměrované webové služby, které nemají vestavěné ověřovací mechanismy, nebo pokud se chcete chránit před neznámými klienty.

View File

@@ -0,0 +1,32 @@
## Pomoc s certifikáty
### Certifikát HTTP
Certifikát ověřený prostřednictvím protokolu HTTP znamená, že servery Let's Encrypt se
pokusí připojit k vašim doménám přes protokol HTTP (nikoli HTTPS!) a v případě úspěchu
vydají váš certifikát.
Pro tuto metodu budete muset mít pro své domény vytvořeného _Proxy Host_, který
je přístupný přes HTTP a směruje na tuto instalaci Nginx. Po vydání certifikátu
můžete změnit _Proxy Host_ tak, aby tento certifikát používal i pro HTTPS
připojení. _Proxy Host_ však bude stále potřeba nakonfigurovat pro přístup přes HTTP,
aby se certifikát mohl obnovit.
Tento proces _nepodporuje_ domény se zástupnými znaky.
### Certifikát DNS
Certifikát ověřený DNS vyžaduje použití pluginu DNS Provider. Tento DNS
Provider se použije na vytvoření dočasných záznamů ve vaší doméně a poté Let's
Encrypt ověří tyto záznamy, aby se ujistil, že jste vlastníkem, a pokud bude úspěšný,
vydá váš certifikát.
Před požádáním o tento typ certifikátu není potřeba vytvořit _Proxy Host_.
Není také potřeba mít _Proxy Host_ nakonfigurovaný pro přístup HTTP.
Tento proces _podporuje_ domény se zástupnými znaky.
### Vlastní certifikát
Tuto možnost použijte na nahrání vlastního SSL certifikátu, který vám poskytla vaše
certifikační autorita.

View File

@@ -0,0 +1,10 @@
## Co je to 404 Host?
404 Host je jednoduše nastavení hostitele, které zobrazuje stránku 404.
To může být užitečné, pokud je vaše doména uvedena ve vyhledávačích a chcete
poskytnout hezčí chybovou stránku nebo konkrétně oznámit vyhledávačům, že
stránky domény již neexistují.
Další výhodou tohoto hostitele je sledování protokolů o návštěvách a
zobrazení odkazů.

View File

@@ -0,0 +1,7 @@
## Co je proxy hostitel?
Proxy hostitel je příchozí koncový bod pro webovou službu, kterou chcete přesměrovat.
Poskytuje volitelné ukončení SSL pro vaši službu, která nemusí mít zabudovanou podporu SSL.
Proxy hostitelé jsou nejběžnějším použitím pro Nginx Proxy Manager.

View File

@@ -0,0 +1,7 @@
## Co je přesměrovací hostitel?
Přesměrovací hostitel přesměruje požadavky z příchozí domény a přesměruje
návštěvníka na jinou doménu.
Nejčastějším důvodem pro použití tohoto typu hostitele je situace, kdy vaše webová stránka změní
doménu, ale stále máte odkazy ve vyhledávačích nebo referenční odkazy směřující na starou doménu.

View File

@@ -0,0 +1,6 @@
## Co je stream?
Stream je relativně nová funkce pro Nginx, která slouží na přesměrování TCP/UDP
datového toku přímo do jiného počítače v síti.
Pokud provozujete herní servery, FTP nebo SSH servery, tato funkce se vám může hodit.

View File

@@ -0,0 +1,6 @@
export * as AccessLists from "./AccessLists.md";
export * as Certificates from "./Certificates.md";
export * as DeadHosts from "./DeadHosts.md";
export * as ProxyHosts from "./ProxyHosts.md";
export * as RedirectionHosts from "./RedirectionHosts.md";
export * as Streams from "./Streams.md";

View File

@@ -13,12 +13,13 @@ import * as nl from "./nl/index";
import * as pl from "./pl/index"; import * as pl from "./pl/index";
import * as ru from "./ru/index"; import * as ru from "./ru/index";
import * as sk from "./sk/index"; import * as sk from "./sk/index";
import * as cs from "./cs/index";
import * as vi from "./vi/index"; import * as vi from "./vi/index";
import * as zh from "./zh/index"; import * as zh from "./zh/index";
import * as tr from "./tr/index"; import * as tr from "./tr/index";
import * as hu from "./hu/index"; import * as hu from "./hu/index";
const items: any = { en, de, pt, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr, tr, hu }; const items: any = { en, de, pt, es, ja, sk, cs, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr, tr, hu };
const fallbackLang = "en"; const fallbackLang = "en";

View File

@@ -0,0 +1,770 @@
{
"2fa.backup-codes-remaining": {
"defaultMessage": "Počet zbývajících záložních kódů: {count}"
},
"2fa.backup-warning": {
"defaultMessage": "Tyto záložní kódy si uložte na bezpečném místě. Každý kód lze použít pouze jednou."
},
"2fa.disable": {
"defaultMessage": "Vypnout dvoufaktorové ověřování"
},
"2fa.disable-confirm": {
"defaultMessage": "Vypnout 2FA"
},
"2fa.disable-warning": {
"defaultMessage": "Vypnutím dvoufaktorového ověřování snížíte bezpečnost svého účtu."
},
"2fa.disabled": {
"defaultMessage": "Vypnuto"
},
"2fa.done": {
"defaultMessage": "Uložil jsem si své záložní kódy."
},
"2fa.enable": {
"defaultMessage": "Zapnout dvoufaktorové ověřování"
},
"2fa.enabled": {
"defaultMessage": "Zapnuto"
},
"2fa.enter-code": {
"defaultMessage": "Zadejte ověřovací kód"
},
"2fa.enter-code-disable": {
"defaultMessage": "Zadejte ověřovací kód pro vypnutí"
},
"2fa.regenerate": {
"defaultMessage": "Znovu vytvořit"
},
"2fa.regenerate-backup": {
"defaultMessage": "Znovu vytvořit záložní kódy"
},
"2fa.regenerate-instructions": {
"defaultMessage": "Zadejte ověřovací kód pro vytvoření nových záložních kódů. Vaše staré kódy budou neplatné."
},
"2fa.secret-key": {
"defaultMessage": "Tajný klíč"
},
"2fa.setup-instructions": {
"defaultMessage": "Naskenujte tento QR kód pomocí své ověřovací aplikace nebo zadejte tajný klíč ručně."
},
"2fa.status": {
"defaultMessage": "Stav"
},
"2fa.title": {
"defaultMessage": "Dvoufaktorové ověření"
},
"2fa.verify-enable": {
"defaultMessage": "Ověřit a zapnout"
},
"access-list": {
"defaultMessage": "seznam přístupů"
},
"access-list.access-count": {
"defaultMessage": "{count} {count, plural, one {pravidlo} few {pravidla} other {pravidel}}"
},
"access-list.auth-count": {
"defaultMessage": "{count} {count, plural, one {uživatel} few {uživatelé} other {uživatelů}}"
},
"access-list.help-rules-last": {
"defaultMessage": "Když existuje alespoň jedno pravidlo, toto pravidlo „zamítnout vše“ bude přidáno jako poslední"
},
"access-list.help.rules-order": {
"defaultMessage": "Upozornění: pravidla povolit a zamítnout budou uplatňována v pořadí, v jakém jsou definována."
},
"access-list.pass-auth": {
"defaultMessage": "Odeslat ověření na Upstream"
},
"access-list.public": {
"defaultMessage": "Veřejně přístupné"
},
"access-list.public.subtitle": {
"defaultMessage": "Není potřeba základní ověření"
},
"access-list.rule-source.placeholder": {
"defaultMessage": "192.168.1.100 nebo 192.168.1.0/24 nebo 2001:0db8::/32"
},
"access-list.satisfy-any": {
"defaultMessage": "Splnit kterékoliv"
},
"access-list.subtitle": {
"defaultMessage": "{users} {users, plural, one {uživatel} few {uživatelé} other {uživatelů}}, {rules} {rules, plural, one {pravidlo} few {pravidla} other {pravidel}} - Vytvořeno: {date}"
},
"access-lists": {
"defaultMessage": "Seznamy přístupů"
},
"action.add": {
"defaultMessage": "Přidat"
},
"action.add-location": {
"defaultMessage": "Přidat umístění"
},
"action.allow": {
"defaultMessage": "Povolit"
},
"action.close": {
"defaultMessage": "Zavřít"
},
"action.delete": {
"defaultMessage": "Smazat"
},
"action.deny": {
"defaultMessage": "Zamítnout"
},
"action.disable": {
"defaultMessage": "Deaktivovat"
},
"action.download": {
"defaultMessage": "Stáhnout"
},
"action.edit": {
"defaultMessage": "Upravit"
},
"action.enable": {
"defaultMessage": "Aktivovat"
},
"action.permissions": {
"defaultMessage": "Oprávnění"
},
"action.renew": {
"defaultMessage": "Obnovit"
},
"action.view-details": {
"defaultMessage": "Zobrazit podrobnosti"
},
"auditlogs": {
"defaultMessage": "Záznamy auditu"
},
"auto": {
"defaultMessage": "Automaticky"
},
"cancel": {
"defaultMessage": "Zrušit"
},
"certificate": {
"defaultMessage": "certifikát"
},
"certificate.custom-certificate": {
"defaultMessage": "Certifikát"
},
"certificate.custom-certificate-key": {
"defaultMessage": "Klíč certifikátu"
},
"certificate.custom-intermediate": {
"defaultMessage": "Zprostředkovatelský certifikát"
},
"certificate.in-use": {
"defaultMessage": "Používá se"
},
"certificate.none.subtitle": {
"defaultMessage": "Není přiřazen žádný certifikát"
},
"certificate.none.subtitle.for-http": {
"defaultMessage": "Tento hostitel nebude používat HTTPS"
},
"certificate.none.title": {
"defaultMessage": "Žádný"
},
"certificate.not-in-use": {
"defaultMessage": "Nepoužívá se"
},
"certificate.renew": {
"defaultMessage": "Obnovit certifikát"
},
"certificates": {
"defaultMessage": "Certifikáty"
},
"certificates.custom": {
"defaultMessage": "Vlastní certifikát"
},
"certificates.custom.warning": {
"defaultMessage": "Soubory klíčů chráněné heslem nejsou podporovány."
},
"certificates.dns.credentials": {
"defaultMessage": "Obsah souboru s přihlašovacími údaji"
},
"certificates.dns.credentials-note": {
"defaultMessage": "Tento doplněk vyžaduje konfigurační soubor obsahující API token nebo jiné přihlašovací údaje vašeho poskytovatele"
},
"certificates.dns.credentials-warning": {
"defaultMessage": "Tyto údaje budou uloženy v databázi a v souboru jako obyčejný text!"
},
"certificates.dns.propagation-seconds": {
"defaultMessage": "Propagace v sekundách"
},
"certificates.dns.propagation-seconds-note": {
"defaultMessage": "Nechte prázdné pro výchozí hodnotu doplňku. Počet sekund, po které se čeká na propagaci DNS."
},
"certificates.dns.provider": {
"defaultMessage": "DNS poskytovatel"
},
"certificates.dns.provider.placeholder": {
"defaultMessage": "Vyberte poskytovatele..."
},
"certificates.dns.warning": {
"defaultMessage": "Tato sekce vyžaduje znalost Certbotu a jeho DNS doplňků. Prosím, podívejte se do dokumentace příslušného doplňku."
},
"certificates.http.reachability-404": {
"defaultMessage": "Na této doméně byl nalezen server, ale nezdá se, že jde o Nginx Proxy Manager. Ujistěte se, že vaše doména směřuje na IP, kde běží vaše instance NPM."
},
"certificates.http.reachability-failed-to-check": {
"defaultMessage": "Nepodařilo se ověřit dostupnost kvůli chybě komunikace se službou site24x7.com."
},
"certificates.http.reachability-not-resolved": {
"defaultMessage": "Na této doméně není dostupný žádný server. Ujistěte se, že doména existuje a směřuje na IP adresu s NPM a pokud je to potřeba, port 80 je přesměrován ve vašem routeru."
},
"certificates.http.reachability-ok": {
"defaultMessage": "Váš server je dostupný a vytvoření certifikátu by mělo být možné."
},
"certificates.http.reachability-other": {
"defaultMessage": "Na této doméně byl nalezen server, ale vrátil neočekávaný stavový kód {code}. Je to NPM server? Ujistěte se prosím, že doména směřuje na IP, kde běží vaše instance NPM."
},
"certificates.http.reachability-wrong-data": {
"defaultMessage": "Na této doméně byl nalezen server, ale vrátil neočekávaná data. Je to NPM server? Ujistěte se, že doména směřuje na IP, kde běží vaše instance NPM."
},
"certificates.http.test-results": {
"defaultMessage": "Výsledky testu"
},
"certificates.http.warning": {
"defaultMessage": "Tyto domény musí být již nakonfigurovány tak, aby směřovaly na tuto instalaci."
},
"certificates.key-type": {
"defaultMessage": "Typ klíče"
},
"certificates.key-type-description": {
"defaultMessage": "RSA je široce kompatibilní, ECDSA je rychlejší a bezpečnější, ale nemusí být podporován staršími systémy"
},
"certificates.key-type-ecdsa": {
"defaultMessage": "ECDSA 256"
},
"certificates.key-type-rsa": {
"defaultMessage": "RSA 2048"
},
"certificates.request.subtitle": {
"defaultMessage": "pomocí Let's Encrypt"
},
"certificates.request.title": {
"defaultMessage": "Vyžádat nový certifikát"
},
"column.access": {
"defaultMessage": "Přístup"
},
"column.authorization": {
"defaultMessage": "Autorizace"
},
"column.authorizations": {
"defaultMessage": "Autorizace"
},
"column.custom-locations": {
"defaultMessage": "Vlastní umístění"
},
"column.destination": {
"defaultMessage": "Cíl"
},
"column.details": {
"defaultMessage": "Podrobnosti"
},
"column.email": {
"defaultMessage": "Email"
},
"column.event": {
"defaultMessage": "Událost"
},
"column.expires": {
"defaultMessage": "Platnost do"
},
"column.http-code": {
"defaultMessage": "Přístup"
},
"column.incoming-port": {
"defaultMessage": "Vstupní port"
},
"column.name": {
"defaultMessage": "Název"
},
"column.protocol": {
"defaultMessage": "Protokol"
},
"column.provider": {
"defaultMessage": "Poskytovatel"
},
"column.roles": {
"defaultMessage": "Role"
},
"column.rules": {
"defaultMessage": "Pravidla"
},
"column.satisfy": {
"defaultMessage": "Splnit"
},
"column.satisfy-all": {
"defaultMessage": "Všechny"
},
"column.satisfy-any": {
"defaultMessage": "Kterékoliv"
},
"column.scheme": {
"defaultMessage": "Schéma"
},
"column.source": {
"defaultMessage": "Zdroj"
},
"column.ssl": {
"defaultMessage": "SSL"
},
"column.status": {
"defaultMessage": "Stav"
},
"created-on": {
"defaultMessage": "Vytvořeno: {date}"
},
"dashboard": {
"defaultMessage": "Panel"
},
"dead-host": {
"defaultMessage": "404 hostitel"
},
"dead-hosts": {
"defaultMessage": "404 Hostitelé"
},
"dead-hosts.count": {
"defaultMessage": "{count} {count, plural, one {404 hostitel} few {404 hostitelé} other {404 hostitelů}}"
},
"disabled": {
"defaultMessage": "Deaktivováno"
},
"domain-names": {
"defaultMessage": "Doménová jména"
},
"domain-names.max": {
"defaultMessage": "Maximálně {count} doménových jmen"
},
"domain-names.placeholder": {
"defaultMessage": "Začněte psát pro přidání domény..."
},
"domain-names.wildcards-not-permitted": {
"defaultMessage": "Wildcards nejsou pro tento typ povoleny"
},
"domain-names.wildcards-not-supported": {
"defaultMessage": "Wildcards nejsou podporovány pro tuto certifikační autoritu"
},
"domains.force-ssl": {
"defaultMessage": "Vynutit SSL"
},
"domains.hsts-enabled": {
"defaultMessage": "HSTS povoleno"
},
"domains.hsts-subdomains": {
"defaultMessage": "HSTS pro subdomény"
},
"domains.http2-support": {
"defaultMessage": "Podpora HTTP/2"
},
"domains.use-dns": {
"defaultMessage": "Použít DNS výzvu"
},
"email-address": {
"defaultMessage": "Emailová adresa"
},
"empty-search": {
"defaultMessage": "Nebyly nalezeny žádné výsledky"
},
"empty-subtitle": {
"defaultMessage": "Proč nevytvoříte nějaký?"
},
"enabled": {
"defaultMessage": "Aktivováno"
},
"error.access.at-least-one": {
"defaultMessage": "Je vyžadována alespoň jedna autorizace nebo jedno přístupové pravidlo"
},
"error.access.duplicate-usernames": {
"defaultMessage": "Uživatelská jména pro autorizaci musí být jedinečná"
},
"error.invalid-auth": {
"defaultMessage": "Neplatný email nebo heslo"
},
"error.invalid-domain": {
"defaultMessage": "Neplatná doména: {domain}"
},
"error.invalid-email": {
"defaultMessage": "Neplatná emailová adresa"
},
"error.max-character-length": {
"defaultMessage": "Maximální délka je {max} znak{max, plural, one {} few {y} other {ů}}"
},
"error.max-domains": {
"defaultMessage": "Příliš mnoho domén, maximum je {max}"
},
"error.maximum": {
"defaultMessage": "Maximum je {max}"
},
"error.min-character-length": {
"defaultMessage": "Minimální délka je {min} znak{min, plural, one {} few {y} other {ů}}"
},
"error.minimum": {
"defaultMessage": "Minimum je {min}"
},
"error.passwords-must-match": {
"defaultMessage": "Hesla se musí shodovat"
},
"error.required": {
"defaultMessage": "Toto pole je povinné"
},
"expires.on": {
"defaultMessage": "Platnost do: {date}"
},
"footer.github-fork": {
"defaultMessage": "Forkněte mě na GitHubu"
},
"host.flags.block-exploits": {
"defaultMessage": "Blokovat běžné exploity"
},
"host.flags.cache-assets": {
"defaultMessage": "Uložit zdroje do mezipaměti"
},
"host.flags.preserve-path": {
"defaultMessage": "Zachovat cestu"
},
"host.flags.protocols": {
"defaultMessage": "Protokoly"
},
"host.flags.websockets-upgrade": {
"defaultMessage": "Podpora WebSockets"
},
"host.forward-port": {
"defaultMessage": "Port přesměrování"
},
"host.forward-scheme": {
"defaultMessage": "Schéma"
},
"hosts": {
"defaultMessage": "Hostitelé"
},
"http-only": {
"defaultMessage": "Pouze HTTP"
},
"lets-encrypt": {
"defaultMessage": "Let's Encrypt"
},
"lets-encrypt-via-dns": {
"defaultMessage": "Let's Encrypt přes DNS"
},
"lets-encrypt-via-http": {
"defaultMessage": "Let's Encrypt přes HTTP"
},
"loading": {
"defaultMessage": "Načítá se…"
},
"login.2fa-code": {
"defaultMessage": "Ověřovací kód"
},
"login.2fa-code-placeholder": {
"defaultMessage": "Vložit kód"
},
"login.2fa-description": {
"defaultMessage": "Vložte kód z vaší ověřovací aplikace"
},
"login.2fa-title": {
"defaultMessage": "Dvoufaktorové ověření"
},
"login.2fa-verify": {
"defaultMessage": "Ověřit"
},
"login.title": {
"defaultMessage": "Přihlaste se ke svému účtu"
},
"nginx-config.label": {
"defaultMessage": "Vlastní Nginx konfigurace"
},
"nginx-config.placeholder": {
"defaultMessage": "# Zadejte vlastní Nginx konfiguraci na vlastní riziko!"
},
"no-permission-error": {
"defaultMessage": "Nemáte oprávnění k zobrazení tohoto obsahu."
},
"notfound.action": {
"defaultMessage": "Zpět na hlavní stránku"
},
"notfound.content": {
"defaultMessage": "Omlouváme se, stránka, kterou hledáte, nebyla nalezena"
},
"notfound.title": {
"defaultMessage": "Ups… Našli jste chybovou stránku"
},
"notification.error": {
"defaultMessage": "Chyba"
},
"notification.object-deleted": {
"defaultMessage": "{object} byl odstraněn"
},
"notification.object-disabled": {
"defaultMessage": "{object} byl deaktivován"
},
"notification.object-enabled": {
"defaultMessage": "{object} byl aktivován"
},
"notification.object-renewed": {
"defaultMessage": "{object} byl obnoven"
},
"notification.object-saved": {
"defaultMessage": "{object} byl uložen"
},
"notification.success": {
"defaultMessage": "Úspěch"
},
"object.actions-title": {
"defaultMessage": "{object} #{id}"
},
"object.add": {
"defaultMessage": "Přidat {object}"
},
"object.delete": {
"defaultMessage": "Smazat {object}"
},
"object.delete.content": {
"defaultMessage": "Opravdu chcete smazat tento {object}?"
},
"object.edit": {
"defaultMessage": "Upravit {object}"
},
"object.empty": {
"defaultMessage": "Nejsou {objects}"
},
"object.event.created": {
"defaultMessage": "Vytvořen {object}"
},
"object.event.deleted": {
"defaultMessage": "Smazán {object}"
},
"object.event.disabled": {
"defaultMessage": "Deaktivován {object}"
},
"object.event.enabled": {
"defaultMessage": "Aktivován {object}"
},
"object.event.renewed": {
"defaultMessage": "Obnoven {object}"
},
"object.event.updated": {
"defaultMessage": "Aktualizován {object}"
},
"offline": {
"defaultMessage": "Offline"
},
"online": {
"defaultMessage": "Online"
},
"options": {
"defaultMessage": "Možnosti"
},
"password": {
"defaultMessage": "Heslo"
},
"password.generate": {
"defaultMessage": "Vygenerovat náhodné heslo"
},
"password.hide": {
"defaultMessage": "Skrýt heslo"
},
"password.show": {
"defaultMessage": "Zobrazit heslo"
},
"permissions.hidden": {
"defaultMessage": "Skryté"
},
"permissions.manage": {
"defaultMessage": "Spravovat"
},
"permissions.view": {
"defaultMessage": "Pouze pro zobrazení"
},
"permissions.visibility.all": {
"defaultMessage": "Všechny položky"
},
"permissions.visibility.title": {
"defaultMessage": "Viditelnost položky"
},
"permissions.visibility.user": {
"defaultMessage": "Pouze vytvořené položky"
},
"proxy-host": {
"defaultMessage": "proxy hostitele"
},
"proxy-host.forward-host": {
"defaultMessage": "Cílový název hostitele / IP"
},
"proxy-hosts": {
"defaultMessage": "Proxy hostitelé"
},
"proxy-hosts.count": {
"defaultMessage": "{count} {count, plural, one {proxy hostitel} few {proxy hostitelé} other {proxy hostitelů}}"
},
"public": {
"defaultMessage": "Veřejné"
},
"redirection-host": {
"defaultMessage": "přesměrovacího hostitele"
},
"redirection-host.forward-domain": {
"defaultMessage": "Cílová doména"
},
"redirection-host.forward-http-code": {
"defaultMessage": "HTTP kód"
},
"redirection-hosts": {
"defaultMessage": "Přesměrovací hostitelé"
},
"redirection-hosts.count": {
"defaultMessage": "{count} {count, plural, one {přesměrovací hostitel} few {přesměrovací hostitelé} other {přesměrovacích hostitelů}}"
},
"redirection-hosts.http-code.300": {
"defaultMessage": "300 Více možností"
},
"redirection-hosts.http-code.301": {
"defaultMessage": "301 Trvale přesunuto"
},
"redirection-hosts.http-code.302": {
"defaultMessage": "302 Dočasně přesunuto"
},
"redirection-hosts.http-code.303": {
"defaultMessage": "303 Podívat se na jiné"
},
"redirection-hosts.http-code.307": {
"defaultMessage": "307 Dočasné přesměrování"
},
"redirection-hosts.http-code.308": {
"defaultMessage": "308 Trvalé přesměrování"
},
"role.admin": {
"defaultMessage": "Administrátor"
},
"role.standard-user": {
"defaultMessage": "Běžný uživatel"
},
"save": {
"defaultMessage": "Uložit"
},
"setting": {
"defaultMessage": "Nastavení"
},
"settings": {
"defaultMessage": "Nastavení"
},
"settings.default-site": {
"defaultMessage": "Výchozí stránka"
},
"settings.default-site.404": {
"defaultMessage": "Stránka 404"
},
"settings.default-site.444": {
"defaultMessage": "Bez odpovědi (444)"
},
"settings.default-site.congratulations": {
"defaultMessage": "Gratulační stránka"
},
"settings.default-site.description": {
"defaultMessage": "Co zobrazit, když Nginx zachytí neznámého hostitele"
},
"settings.default-site.html": {
"defaultMessage": "Vlastní HTML"
},
"settings.default-site.html.placeholder": {
"defaultMessage": "<!-- Sem zadejte vlastní HTML obsah -->"
},
"settings.default-site.redirect": {
"defaultMessage": "Přesměrovat"
},
"setup.preamble": {
"defaultMessage": "Začněte vytvořením administrátorského účtu."
},
"setup.title": {
"defaultMessage": "Vítejte!"
},
"sign-in": {
"defaultMessage": "Přihlásit se"
},
"ssl-certificate": {
"defaultMessage": "SSL certifikát"
},
"stream": {
"defaultMessage": "stream"
},
"stream.forward-host": {
"defaultMessage": "Cílový hostitel"
},
"stream.forward-host.placeholder": {
"defaultMessage": "napriklad.cz nebo 10.0.0.1 nebo 2001:db8:3333:4444:5555:6666:7777:8888"
},
"stream.incoming-port": {
"defaultMessage": "Vstupní port"
},
"streams": {
"defaultMessage": "Streamy"
},
"streams.count": {
"defaultMessage": "{count} {count, plural, one {stream} few {streamy} other {streamů}}"
},
"streams.tcp": {
"defaultMessage": "TCP"
},
"streams.udp": {
"defaultMessage": "UDP"
},
"test": {
"defaultMessage": "Test"
},
"update-available": {
"defaultMessage": "Dostupná aktualizace: {latestVersion}"
},
"user": {
"defaultMessage": "uživatele"
},
"user.change-password": {
"defaultMessage": "Změnit heslo"
},
"user.confirm-password": {
"defaultMessage": "Potvrdit heslo"
},
"user.current-password": {
"defaultMessage": "Aktuální heslo"
},
"user.edit-profile": {
"defaultMessage": "Upravit profil"
},
"user.full-name": {
"defaultMessage": "Celé jméno"
},
"user.login-as": {
"defaultMessage": "Přihlásit se jako {name}"
},
"user.logout": {
"defaultMessage": "Odhlásit se"
},
"user.new-password": {
"defaultMessage": "Nové heslo"
},
"user.nickname": {
"defaultMessage": "Přezdívka"
},
"user.set-password": {
"defaultMessage": "Nastavit heslo"
},
"user.set-permissions": {
"defaultMessage": "Nastavit oprávnění pro {name}"
},
"user.switch-dark": {
"defaultMessage": "Přepnout na tmavý režim"
},
"user.switch-light": {
"defaultMessage": "Přepnout na světlý režim"
},
"user.two-factor": {
"defaultMessage": "Dvoufaktorové ověření"
},
"username": {
"defaultMessage": "Uživatelské jméno"
},
"users": {
"defaultMessage": "Uživatelé"
}
}

View File

@@ -347,6 +347,9 @@
"domain-names.wildcards-not-supported": { "domain-names.wildcards-not-supported": {
"defaultMessage": "Wildcards not supported for this CA" "defaultMessage": "Wildcards not supported for this CA"
}, },
"domains.advanced": {
"defaultMessage": "Advanced"
},
"domains.force-ssl": { "domains.force-ssl": {
"defaultMessage": "Force SSL" "defaultMessage": "Force SSL"
}, },
@@ -359,6 +362,9 @@
"domains.http2-support": { "domains.http2-support": {
"defaultMessage": "HTTP/2 Support" "defaultMessage": "HTTP/2 Support"
}, },
"domains.trust-forwarded-proto": {
"defaultMessage": "Trust Upstream Forwarded Proto Headers"
},
"domains.use-dns": { "domains.use-dns": {
"defaultMessage": "Use DNS Challenge" "defaultMessage": "Use DNS Challenge"
}, },

View File

@@ -29,6 +29,9 @@
"locale-sk-SK": { "locale-sk-SK": {
"defaultMessage": "Slovenčina" "defaultMessage": "Slovenčina"
}, },
"locale-cs-CZ": {
"defaultMessage": "Čeština"
},
"locale-zh-CN": { "locale-zh-CN": {
"defaultMessage": "中文" "defaultMessage": "中文"
}, },

View File

@@ -1,4 +1,61 @@
{ {
"2fa.backup-codes-remaining": {
"defaultMessage": "Počet zostávajúcich záložných kódov: {count}"
},
"2fa.backup-warning": {
"defaultMessage": "Tieto záložné kódy si uložte na bezpečnom mieste. Každý kód je možné použiť len raz."
},
"2fa.disable": {
"defaultMessage": "Vypnúť dvojfaktorové overovanie"
},
"2fa.disable-confirm": {
"defaultMessage": "Vypnúť 2FA"
},
"2fa.disable-warning": {
"defaultMessage": "Vypnutím dvojfaktorového overovania sa zníži bezpečnosť vášho účtu."
},
"2fa.disabled": {
"defaultMessage": "Vypnuté"
},
"2fa.done": {
"defaultMessage": "Uložil som si svoje záložné kódy."
},
"2fa.enable": {
"defaultMessage": "Zapnúť dvojfaktorové overovanie"
},
"2fa.enabled": {
"defaultMessage": "Zapnuté"
},
"2fa.enter-code": {
"defaultMessage": "Zadajte overovací kód"
},
"2fa.enter-code-disable": {
"defaultMessage": "Zadajte overovací kód na vypnutie"
},
"2fa.regenerate": {
"defaultMessage": "Znova vytvoriť"
},
"2fa.regenerate-backup": {
"defaultMessage": "Znova vytvoriť záložné kódy"
},
"2fa.regenerate-instructions": {
"defaultMessage": "Zadajte overovací kód, aby sa vytvorili nové záložné kódy. Vaše staré kódy budú neplatné."
},
"2fa.secret-key": {
"defaultMessage": "Tajný kľúč"
},
"2fa.setup-instructions": {
"defaultMessage": "Naskenujte tento QR kód pomocou svojej overovacej aplikácie alebo zadajte tajný kľúč ručne."
},
"2fa.status": {
"defaultMessage": "Stav"
},
"2fa.title": {
"defaultMessage": "Dvojfaktorové overenie"
},
"2fa.verify-enable": {
"defaultMessage": "Overiť a zapnúť"
},
"access-list": { "access-list": {
"defaultMessage": "zoznam prístupov" "defaultMessage": "zoznam prístupov"
}, },
@@ -23,6 +80,9 @@
"access-list.public.subtitle": { "access-list.public.subtitle": {
"defaultMessage": "Nie je potrebné základné overenie" "defaultMessage": "Nie je potrebné základné overenie"
}, },
"access-list.rule-source.placeholder": {
"defaultMessage": "192.168.1.100 alebo 192.168.1.0/24 alebo 2001:0db8::/32"
},
"access-list.satisfy-any": { "access-list.satisfy-any": {
"defaultMessage": "Splniť ktorékoľvek" "defaultMessage": "Splniť ktorékoľvek"
}, },
@@ -38,12 +98,18 @@
"action.add-location": { "action.add-location": {
"defaultMessage": "Pridať umiestnenie" "defaultMessage": "Pridať umiestnenie"
}, },
"action.allow": {
"defaultMessage": "Povoliť"
},
"action.close": { "action.close": {
"defaultMessage": "Zavrieť" "defaultMessage": "Zavrieť"
}, },
"action.delete": { "action.delete": {
"defaultMessage": "Vymazať" "defaultMessage": "Vymazať"
}, },
"action.deny": {
"defaultMessage": "Zamietnuť"
},
"action.disable": { "action.disable": {
"defaultMessage": "Deaktivovať" "defaultMessage": "Deaktivovať"
}, },
@@ -68,11 +134,14 @@
"auditlogs": { "auditlogs": {
"defaultMessage": "Záznamy auditu" "defaultMessage": "Záznamy auditu"
}, },
"auto": {
"defaultMessage": "Automaticky"
},
"cancel": { "cancel": {
"defaultMessage": "Zrušiť" "defaultMessage": "Zrušiť"
}, },
"certificate": { "certificate": {
"defaultMessage": "Certifikát" "defaultMessage": "certifikát"
}, },
"certificate.custom-certificate": { "certificate.custom-certificate": {
"defaultMessage": "Certifikát" "defaultMessage": "Certifikát"
@@ -128,6 +197,9 @@
"certificates.dns.provider": { "certificates.dns.provider": {
"defaultMessage": "DNS poskytovateľ" "defaultMessage": "DNS poskytovateľ"
}, },
"certificates.dns.provider.placeholder": {
"defaultMessage": "Vyberte poskytovateľa..."
},
"certificates.dns.warning": { "certificates.dns.warning": {
"defaultMessage": "Táto sekcia vyžaduje znalosť Certbotu a jeho DNS doplnkov. Prosím, pozrite si dokumentáciu príslušného doplnku." "defaultMessage": "Táto sekcia vyžaduje znalosť Certbotu a jeho DNS doplnkov. Prosím, pozrite si dokumentáciu príslušného doplnku."
}, },
@@ -249,7 +321,7 @@
"defaultMessage": "Panel" "defaultMessage": "Panel"
}, },
"dead-host": { "dead-host": {
"defaultMessage": "404 Hostiteľ" "defaultMessage": "404 hostiteľa"
}, },
"dead-hosts": { "dead-hosts": {
"defaultMessage": "404 Hostitelia" "defaultMessage": "404 Hostitelia"
@@ -383,6 +455,21 @@
"loading": { "loading": {
"defaultMessage": "Načítava sa…" "defaultMessage": "Načítava sa…"
}, },
"login.2fa-code": {
"defaultMessage": "Overovací kód"
},
"login.2fa-code-placeholder": {
"defaultMessage": "Vložiť kód"
},
"login.2fa-description": {
"defaultMessage": "Vložte kód z vašej overovacej aplikácie"
},
"login.2fa-title": {
"defaultMessage": "Dvoj-faktorové overenie"
},
"login.2fa-verify": {
"defaultMessage": "Overiť"
},
"login.title": { "login.title": {
"defaultMessage": "Prihláste sa do svojho účtu" "defaultMessage": "Prihláste sa do svojho účtu"
}, },
@@ -420,7 +507,7 @@
"defaultMessage": "{object} bol obnovený" "defaultMessage": "{object} bol obnovený"
}, },
"notification.object-saved": { "notification.object-saved": {
"defaultMessage": "{object} bol uložené" "defaultMessage": "{object} bol uložený"
}, },
"notification.success": { "notification.success": {
"defaultMessage": "Úspech" "defaultMessage": "Úspech"
@@ -441,7 +528,7 @@
"defaultMessage": "Upraviť {object}" "defaultMessage": "Upraviť {object}"
}, },
"object.empty": { "object.empty": {
"defaultMessage": "Nie sú žiadne/y {objects}" "defaultMessage": "Nie sú {objects}"
}, },
"object.event.created": { "object.event.created": {
"defaultMessage": "Vytvorený {object}" "defaultMessage": "Vytvorený {object}"
@@ -501,7 +588,7 @@
"defaultMessage": "Len vytvorené položky" "defaultMessage": "Len vytvorené položky"
}, },
"proxy-host": { "proxy-host": {
"defaultMessage": "Proxy hostiteľa" "defaultMessage": "proxy hostiteľa"
}, },
"proxy-host.forward-host": { "proxy-host.forward-host": {
"defaultMessage": "Cieľový názov hostiteľa / IP" "defaultMessage": "Cieľový názov hostiteľa / IP"
@@ -530,6 +617,24 @@
"redirection-hosts.count": { "redirection-hosts.count": {
"defaultMessage": "{count} {count, plural, one {presmerovací hostiteľ} few {presmerovací hostitelia} other {presmerovacích hostiteľov}}" "defaultMessage": "{count} {count, plural, one {presmerovací hostiteľ} few {presmerovací hostitelia} other {presmerovacích hostiteľov}}"
}, },
"redirection-hosts.http-code.300": {
"defaultMessage": "300 Viacero možností"
},
"redirection-hosts.http-code.301": {
"defaultMessage": "301 Trvalo presunuté"
},
"redirection-hosts.http-code.302": {
"defaultMessage": "302 Dočasne presunuté"
},
"redirection-hosts.http-code.303": {
"defaultMessage": "303 Pozrieť iné"
},
"redirection-hosts.http-code.307": {
"defaultMessage": "307 Dočasné presmerovanie"
},
"redirection-hosts.http-code.308": {
"defaultMessage": "308 Trvalé presmerovanie"
},
"role.admin": { "role.admin": {
"defaultMessage": "Administrátor" "defaultMessage": "Administrátor"
}, },
@@ -582,11 +687,14 @@
"defaultMessage": "SSL certifikát" "defaultMessage": "SSL certifikát"
}, },
"stream": { "stream": {
"defaultMessage": "Stream" "defaultMessage": "stream"
}, },
"stream.forward-host": { "stream.forward-host": {
"defaultMessage": "Cieľový hostiteľ" "defaultMessage": "Cieľový hostiteľ"
}, },
"stream.forward-host.placeholder": {
"defaultMessage": "napriklad.sk alebo 10.0.0.1 alebo 2001:db8:3333:4444:5555:6666:7777:8888"
},
"stream.incoming-port": { "stream.incoming-port": {
"defaultMessage": "Vstupný port" "defaultMessage": "Vstupný port"
}, },
@@ -605,6 +713,9 @@
"test": { "test": {
"defaultMessage": "Test" "defaultMessage": "Test"
}, },
"update-available": {
"defaultMessage": "Dostupná aktualizácia: {latestVersion}"
},
"user": { "user": {
"defaultMessage": "používateľa" "defaultMessage": "používateľa"
}, },
@@ -647,6 +758,9 @@
"user.switch-light": { "user.switch-light": {
"defaultMessage": "Prepnúť na svetlý režim" "defaultMessage": "Prepnúť na svetlý režim"
}, },
"user.two-factor": {
"defaultMessage": "Dvojfakt. overenie"
},
"username": { "username": {
"defaultMessage": "Používateľské meno" "defaultMessage": "Používateľské meno"
}, },

View File

@@ -275,6 +275,9 @@
"domain-names.wildcards-not-supported": { "domain-names.wildcards-not-supported": {
"defaultMessage": "此 CA 不支持通配符" "defaultMessage": "此 CA 不支持通配符"
}, },
"domains.advanced": {
"defaultMessage": "高级选项"
},
"domains.force-ssl": { "domains.force-ssl": {
"defaultMessage": "强制 SSL" "defaultMessage": "强制 SSL"
}, },
@@ -287,6 +290,9 @@
"domains.http2-support": { "domains.http2-support": {
"defaultMessage": "HTTP/2 支持" "defaultMessage": "HTTP/2 支持"
}, },
"domains.trust-forwarded-proto": {
"defaultMessage": "信任上游代理传递的协议类型头"
},
"domains.use-dns": { "domains.use-dns": {
"defaultMessage": "使用DNS验证" "defaultMessage": "使用DNS验证"
}, },

View File

@@ -88,6 +88,7 @@ const ProxyHostModal = EasyModal.create(({ id, visible, remove }: Props) => {
http2Support: data?.http2Support || false, http2Support: data?.http2Support || false,
hstsEnabled: data?.hstsEnabled || false, hstsEnabled: data?.hstsEnabled || false,
hstsSubdomains: data?.hstsSubdomains || false, hstsSubdomains: data?.hstsSubdomains || false,
trustForwardedProto: data?.trustForwardedProto || false,
// Advanced tab // Advanced tab
advancedConfig: data?.advancedConfig || "", advancedConfig: data?.advancedConfig || "",
meta: data?.meta || {}, meta: data?.meta || {},
@@ -339,7 +340,7 @@ const ProxyHostModal = EasyModal.create(({ id, visible, remove }: Props) => {
label="ssl-certificate" label="ssl-certificate"
allowNew allowNew
/> />
<SSLOptionsFields color="bg-lime" /> <SSLOptionsFields color="bg-lime" forProxyHost={true} />
</div> </div>
<div className="tab-pane" id="tab-advanced" role="tabpanel"> <div className="tab-pane" id="tab-advanced" role="tabpanel">
<NginxConfigField /> <NginxConfigField />

View File

@@ -235,59 +235,59 @@
"@babel/helper-string-parser" "^7.27.1" "@babel/helper-string-parser" "^7.27.1"
"@babel/helper-validator-identifier" "^7.28.5" "@babel/helper-validator-identifier" "^7.28.5"
"@biomejs/biome@^2.3.14": "@biomejs/biome@^2.4.2":
version "2.3.14" version "2.4.2"
resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.3.14.tgz#b879cd5e0495334d4db7c49d6f3cc95b67d2909c" resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.4.2.tgz#91fea27398106f87fa81118577756d9e29fe8c74"
integrity sha512-QMT6QviX0WqXJCaiqVMiBUCr5WRQ1iFSjvOLoTk6auKukJMvnMzWucXpwZB0e8F00/1/BsS9DzcKgWH+CLqVuA== integrity sha512-vVE/FqLxNLbvYnFDYg3Xfrh1UdFhmPT5i+yPT9GE2nTUgI4rkqo5krw5wK19YHBd7aE7J6r91RRmb8RWwkjy6w==
optionalDependencies: optionalDependencies:
"@biomejs/cli-darwin-arm64" "2.3.14" "@biomejs/cli-darwin-arm64" "2.4.2"
"@biomejs/cli-darwin-x64" "2.3.14" "@biomejs/cli-darwin-x64" "2.4.2"
"@biomejs/cli-linux-arm64" "2.3.14" "@biomejs/cli-linux-arm64" "2.4.2"
"@biomejs/cli-linux-arm64-musl" "2.3.14" "@biomejs/cli-linux-arm64-musl" "2.4.2"
"@biomejs/cli-linux-x64" "2.3.14" "@biomejs/cli-linux-x64" "2.4.2"
"@biomejs/cli-linux-x64-musl" "2.3.14" "@biomejs/cli-linux-x64-musl" "2.4.2"
"@biomejs/cli-win32-arm64" "2.3.14" "@biomejs/cli-win32-arm64" "2.4.2"
"@biomejs/cli-win32-x64" "2.3.14" "@biomejs/cli-win32-x64" "2.4.2"
"@biomejs/cli-darwin-arm64@2.3.14": "@biomejs/cli-darwin-arm64@2.4.2":
version "2.3.14" version "2.4.2"
resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.14.tgz#da942618e1dc2d19322bc11d5dacfe7d7616a502" resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.4.2.tgz#a748ec0a0d8f4ea559b4a3834e8981500caaa5fa"
integrity sha512-UJGPpvWJMkLxSRtpCAKfKh41Q4JJXisvxZL8ChN1eNW3m/WlPFJ6EFDCE7YfUb4XS8ZFi3C1dFpxUJ0Ety5n+A== integrity sha512-3pEcKCP/1POKyaZZhXcxFl3+d9njmeAihZ17k8lL/1vk+6e0Cbf0yPzKItFiT+5Yh6TQA4uKvnlqe0oVZwRxCA==
"@biomejs/cli-darwin-x64@2.3.14": "@biomejs/cli-darwin-x64@2.4.2":
version "2.3.14" version "2.4.2"
resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.14.tgz#3ad06cce8ef6d2b935582011bd0cc3ca98a9554d" resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.4.2.tgz#b825d247a7e582c00c9782524284bea2033a272c"
integrity sha512-PNkLNQG6RLo8lG7QoWe/hhnMxJIt1tEimoXpGQjwS/dkdNiKBLPv4RpeQl8o3s1OKI3ZOR5XPiYtmbGGHAOnLA== integrity sha512-P7hK1jLVny+0R9UwyGcECxO6sjETxfPyBm/1dmFjnDOHgdDPjPqozByunrwh4xPKld8sxOr5eAsSqal5uKgeBg==
"@biomejs/cli-linux-arm64-musl@2.3.14": "@biomejs/cli-linux-arm64-musl@2.4.2":
version "2.3.14" version "2.4.2"
resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.14.tgz#e92681273dc59ac57b75b72f1b64a67543e50f8c" resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.4.2.tgz#9a2d15f525928f06d21fbc0eaea2e332be3ed5d9"
integrity sha512-LInRbXhYujtL3sH2TMCH/UBwJZsoGwfQjBrMfl84CD4hL/41C/EU5mldqf1yoFpsI0iPWuU83U+nB2TUUypWeg== integrity sha512-/x04YK9+7erw6tYEcJv9WXoBHcULI/wMOvNdAyE9S3JStZZ9yJyV67sWAI+90UHuDo/BDhq0d96LDqGlSVv7WA==
"@biomejs/cli-linux-arm64@2.3.14": "@biomejs/cli-linux-arm64@2.4.2":
version "2.3.14" version "2.4.2"
resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.14.tgz#bab43ee0a88ba15a6d59ec648a4b415d68d6eeb7" resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.4.2.tgz#0f7928a3253cdb10ebf5884db452d81d7a49ba30"
integrity sha512-KT67FKfzIw6DNnUNdYlBg+eU24Go3n75GWK6NwU4+yJmDYFe9i/MjiI+U/iEzKvo0g7G7MZqoyrhIYuND2w8QQ== integrity sha512-DI3Mi7GT2zYNgUTDEbSjl3e1KhoP76OjQdm8JpvZYZWtVDRyLd3w8llSr2TWk1z+U3P44kUBWY3X7H9MD1/DGQ==
"@biomejs/cli-linux-x64-musl@2.3.14": "@biomejs/cli-linux-x64-musl@2.4.2":
version "2.3.14" version "2.4.2"
resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.14.tgz#ee90f7110dafdedf4644e0a27ac242975dcd88d3" resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.4.2.tgz#07c971451e62f6e147ec58b7acae345792d331b1"
integrity sha512-KQU7EkbBBuHPW3/rAcoiVmhlPtDSGOGRPv9js7qJVpYTzjQmVR+C9Rfcz+ti8YCH+zT1J52tuBybtP4IodjxZQ== integrity sha512-wbBmTkeAoAYbOQ33f6sfKG7pcRSydQiF+dTYOBjJsnXO2mWEOQHllKlC2YVnedqZFERp2WZhFUoO7TNRwnwEHQ==
"@biomejs/cli-linux-x64@2.3.14": "@biomejs/cli-linux-x64@2.4.2":
version "2.3.14" version "2.4.2"
resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.14.tgz#d152e61c6dc847836ebc741fb70fe305414aa7fe" resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.4.2.tgz#0c7755fe8b5b2745d6afa8e14806591aefef52e3"
integrity sha512-ZsZzQsl9U+wxFrGGS4f6UxREUlgHwmEfu1IrXlgNFrNnd5Th6lIJr8KmSzu/+meSa9f4rzFrbEW9LBBA6ScoMA== integrity sha512-GK2ErnrKpWFigYP68cXiCHK4RTL4IUWhK92AFS3U28X/nuAL5+hTuy6hyobc8JZRSt+upXt1nXChK+tuHHx4mA==
"@biomejs/cli-win32-arm64@2.3.14": "@biomejs/cli-win32-arm64@2.4.2":
version "2.3.14" version "2.4.2"
resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.14.tgz#2c59e84f3d172bada2a1df94d6cf7e511c244a4e" resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.4.2.tgz#a25007d0eb8ac4bbf81fb0fd010a68ce38fd46d1"
integrity sha512-+IKYkj/pUBbnRf1G1+RlyA3LWiDgra1xpS7H2g4BuOzzRbRB+hmlw0yFsLprHhbbt7jUzbzAbAjK/Pn0FDnh1A== integrity sha512-k2uqwLYrNNxnaoiW3RJxoMGnbKda8FuCmtYG3cOtVljs3CzWxaTR+AoXwKGHscC9thax9R4kOrtWqWN0+KdPTw==
"@biomejs/cli-win32-x64@2.3.14": "@biomejs/cli-win32-x64@2.4.2":
version "2.3.14" version "2.4.2"
resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.14.tgz#44405162f255fe153a5ff99379510c058bf7a1e8" resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.4.2.tgz#7693a47973bd1c910a7ce3d7eb8133292f779646"
integrity sha512-oizCjdyQ3WJEswpb3Chdngeat56rIdSYK12JI3iI11Mt5T5EXcZ7WLuowzEaFPNJ3zmOQFliMN8QY1Pi+qsfdQ== integrity sha512-9ma7C4g8Sq3cBlRJD2yrsHXB1mnnEBdpy7PhvFrylQWQb4PoyCmPucdX7frvsSBQuFtIiKCrolPl/8tCZrKvgQ==
"@emotion/babel-plugin@^11.13.5": "@emotion/babel-plugin@^11.13.5":
version "11.13.5" version "11.13.5"
@@ -749,10 +749,10 @@
uncontrollable "^8.0.4" uncontrollable "^8.0.4"
warning "^4.0.3" warning "^4.0.3"
"@rolldown/pluginutils@1.0.0-rc.2": "@rolldown/pluginutils@1.0.0-rc.3":
version "1.0.0-rc.2" version "1.0.0-rc.3"
resolved "https://registry.yarnpkg.com/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.2.tgz#10324e74cb3396cb7b616042ea7e9e6aa7d8d458" resolved "https://registry.yarnpkg.com/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.3.tgz#8a88cc92a0f741befc7bc109cb1a4c6b9408e1c5"
integrity sha512-izyXV/v+cHiRfozX62W9htOAvwMo4/bXKDrQ+vom1L1qRuexPock/7VZDAhnpHCLNejd3NJ6hiab+tO0D44Rgw== integrity sha512-eybk3TjzzzV97Dlj5c+XrBFW57eTNhzod66y9HrBlzJ6NsCrWCp/2kaPS3K9wJmurBC0Tdw4yPjXKZqlznim3Q==
"@rollup/rollup-android-arm-eabi@4.50.0": "@rollup/rollup-android-arm-eabi@4.50.0":
version "4.50.0" version "4.50.0"
@@ -908,10 +908,10 @@
dependencies: dependencies:
"@tanstack/query-devtools" "5.93.0" "@tanstack/query-devtools" "5.93.0"
"@tanstack/react-query@^5.90.20": "@tanstack/react-query@^5.90.21":
version "5.90.20" version "5.90.21"
resolved "https://registry.yarnpkg.com/@tanstack/react-query/-/react-query-5.90.20.tgz#42bb7018bfedc72f216b6e9b4052c919063f350b" resolved "https://registry.yarnpkg.com/@tanstack/react-query/-/react-query-5.90.21.tgz#e0eb40831a76510be438109435b8807ef63ab1b9"
integrity sha512-vXBxa+qeyveVO7OA0jX1z+DeyCA4JKnThKv411jd5SORpBKgkcVnYKCiBgECvADvniBX7tobwBmg01qq9JmMJw== integrity sha512-0Lu6y5t+tvlTJMTO7oh5NSpJfpg/5D41LlThfepTixPYkJ0sE2Jj0m0f6yYqujBwIXlId87e234+MxG3D3g7kg==
dependencies: dependencies:
"@tanstack/query-core" "5.90.20" "@tanstack/query-core" "5.90.20"
@@ -1111,10 +1111,10 @@
resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz" resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz"
integrity sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w== integrity sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w==
"@types/react@*", "@types/react@>=16.9.11", "@types/react@^19.2.10": "@types/react@*", "@types/react@>=16.9.11", "@types/react@^19.2.14":
version "19.2.10" version "19.2.14"
resolved "https://registry.yarnpkg.com/@types/react/-/react-19.2.10.tgz#f3ea799e6b4cebad6dfd231c238fc9de7652e2d2" resolved "https://registry.yarnpkg.com/@types/react/-/react-19.2.14.tgz#39604929b5e3957e3a6fa0001dafb17c7af70bad"
integrity sha512-WPigyYuGhgZ/cTPRXB2EwUw+XvsRA3GqHlsP4qteqrnnjDrApbS7MxcGr/hke5iUoeB7E/gQtrs9I37zAJ0Vjw== integrity sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==
dependencies: dependencies:
csstype "^3.2.2" csstype "^3.2.2"
@@ -1159,15 +1159,15 @@
resolved "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz" resolved "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz"
integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==
"@vitejs/plugin-react@^5.1.3": "@vitejs/plugin-react@^5.1.4":
version "5.1.3" version "5.1.4"
resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-5.1.3.tgz#05eba092cc89a6ff89668d3f62258e2c5a8a9122" resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-5.1.4.tgz#5b477e060bf612a7394c4febacc5de33a219b0e4"
integrity sha512-NVUnA6gQCl8jfoYqKqQU5Clv0aPw14KkZYCsX6T9Lfu9slI0LOU10OTwFHS/WmptsMMpshNd/1tuWsHQ2Uk+cg== integrity sha512-VIcFLdRi/VYRU8OL/puL7QXMYafHmqOnwTZY50U1JPlCNj30PxCMx65c494b1K9be9hX83KVt0+gTEwTWLqToA==
dependencies: dependencies:
"@babel/core" "^7.29.0" "@babel/core" "^7.29.0"
"@babel/plugin-transform-react-jsx-self" "^7.27.1" "@babel/plugin-transform-react-jsx-self" "^7.27.1"
"@babel/plugin-transform-react-jsx-source" "^7.27.1" "@babel/plugin-transform-react-jsx-source" "^7.27.1"
"@rolldown/pluginutils" "1.0.0-rc.2" "@rolldown/pluginutils" "1.0.0-rc.3"
"@types/babel__core" "^7.20.5" "@types/babel__core" "^7.20.5"
react-refresh "^0.18.0" react-refresh "^0.18.0"
@@ -1383,10 +1383,10 @@ cosmiconfig@^7.0.0:
path-type "^4.0.0" path-type "^4.0.0"
yaml "^1.10.0" yaml "^1.10.0"
country-flag-icons@^1.6.12: country-flag-icons@^1.6.13:
version "1.6.12" version "1.6.13"
resolved "https://registry.yarnpkg.com/country-flag-icons/-/country-flag-icons-1.6.12.tgz#f32f9fd6f371bf3dc9389ed5cf85150b80b20c00" resolved "https://registry.yarnpkg.com/country-flag-icons/-/country-flag-icons-1.6.13.tgz#744de466baf5d8189942ba08fc57167f74037282"
integrity sha512-tWxbBylam6Fkkg0nu+112jmny4WomHXgmdTQFobs/+evTyizSc06bCp//HAh4W1i+g1m06uqlbPuyLC5mrimkQ== integrity sha512-mR9GoTXtj3zAXoZXBkb3J4QvyDllFEPtEfZvHb9U23TAHYXfkJyP03pRtZiR0spxo6Ibja3R/hn6a68T4LHBuA==
css.escape@^1.5.1: css.escape@^1.5.1:
version "1.5.1" version "1.5.1"
@@ -1472,12 +1472,7 @@ electron-to-chromium@^1.5.211:
resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.213.tgz" resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.213.tgz"
integrity sha512-xr9eRzSLNa4neDO0xVFrkXu3vyIzG4Ay08dApecw42Z1NbmCt+keEpXdvlYGVe0wtvY5dhW0Ay0lY0IOfsCg0Q== integrity sha512-xr9eRzSLNa4neDO0xVFrkXu3vyIzG4Ay08dApecw42Z1NbmCt+keEpXdvlYGVe0wtvY5dhW0Ay0lY0IOfsCg0Q==
entities@^4.5.0: entities@^6.0.0, entities@^6.0.1:
version "4.5.0"
resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48"
integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==
entities@^6.0.0:
version "6.0.1" version "6.0.1"
resolved "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz" resolved "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz"
integrity sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g== integrity sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==
@@ -1632,15 +1627,15 @@ globrex@^0.1.2:
resolved "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz" resolved "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz"
integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==
happy-dom@^20.5.0: happy-dom@^20.6.1:
version "20.5.0" version "20.6.1"
resolved "https://registry.yarnpkg.com/happy-dom/-/happy-dom-20.5.0.tgz#64899aad7272f7e02a728e231bc9c151b872a3a5" resolved "https://registry.yarnpkg.com/happy-dom/-/happy-dom-20.6.1.tgz#af9cf1722871621334e0451b01548d551c91b515"
integrity sha512-VQe+Q5CYiGOgcCERXhcfNsbnrN92FDEKciMH/x6LppU9dd0j4aTjCTlqONFOIMcAm/5JxS3+utowbXV1OoFr+g== integrity sha512-+0vhESXXhFwkdjZnJ5DlmJIfUYGgIEEjzIjB+aKJbFuqlvvKyOi+XkI1fYbgYR9QCxG5T08koxsQ6HrQfa5gCQ==
dependencies: dependencies:
"@types/node" ">=20.0.0" "@types/node" ">=20.0.0"
"@types/whatwg-mimetype" "^3.0.2" "@types/whatwg-mimetype" "^3.0.2"
"@types/ws" "^8.18.1" "@types/ws" "^8.18.1"
entities "^4.5.0" entities "^6.0.1"
whatwg-mimetype "^3.0.0" whatwg-mimetype "^3.0.0"
ws "^8.18.3" ws "^8.18.3"
@@ -3057,10 +3052,10 @@ vite-plugin-checker@^0.12.0:
tinyglobby "^0.2.15" tinyglobby "^0.2.15"
vscode-uri "^3.1.0" vscode-uri "^3.1.0"
vite-tsconfig-paths@^6.0.5: vite-tsconfig-paths@^6.1.1:
version "6.0.5" version "6.1.1"
resolved "https://registry.yarnpkg.com/vite-tsconfig-paths/-/vite-tsconfig-paths-6.0.5.tgz#5bcbb44d6ae0d12fe42f5915a6ad9846b0ed7805" resolved "https://registry.yarnpkg.com/vite-tsconfig-paths/-/vite-tsconfig-paths-6.1.1.tgz#d5c28cba79c89ebf76489ef1040024b21df6da3a"
integrity sha512-f/WvY6ekHykUF1rWJUAbCU7iS/5QYDIugwpqJA+ttwKbxSbzNlqlE8vZSrsnxNQciUW+z6lvhlXMaEyZn9MSig== integrity sha512-2cihq7zliibCCZ8P9cKJrQBkfgdvcFkOOc3Y02o3GWUDLgqjWsZudaoiuOwO/gzTzy17cS5F7ZPo4bsnS4DGkg==
dependencies: dependencies:
debug "^4.1.1" debug "^4.1.1"
globrex "^0.1.2" globrex "^0.1.2"

View File

@@ -22,7 +22,7 @@ docker buildx build \
--build-arg BUILD_DATE="$(date '+%Y-%m-%d %T %Z')" \ --build-arg BUILD_DATE="$(date '+%Y-%m-%d %T %Z')" \
--build-arg GOPROXY="${GOPROXY:-}" \ --build-arg GOPROXY="${GOPROXY:-}" \
--build-arg GOPRIVATE="${GOPRIVATE:-}" \ --build-arg GOPRIVATE="${GOPRIVATE:-}" \
--platform linux/amd64,linux/arm64,linux/arm/7 \ --platform linux/amd64,linux/arm64 \
--progress plain \ --progress plain \
--pull \ --pull \
-f docker/Dockerfile \ -f docker/Dockerfile \

View File

@@ -11,7 +11,7 @@
"cypress": "^15.9.0", "cypress": "^15.9.0",
"cypress-multi-reporters": "^2.0.5", "cypress-multi-reporters": "^2.0.5",
"cypress-wait-until": "^3.0.2", "cypress-wait-until": "^3.0.2",
"eslint": "^9.39.0", "eslint": "^10.0.0",
"eslint-plugin-align-assignments": "^1.1.2", "eslint-plugin-align-assignments": "^1.1.2",
"eslint-plugin-chai-friendly": "^1.1.0", "eslint-plugin-chai-friendly": "^1.1.0",
"eslint-plugin-cypress": "^5.2.0", "eslint-plugin-cypress": "^5.2.0",

View File

@@ -82,65 +82,45 @@
dependencies: dependencies:
eslint-visitor-keys "^3.4.3" eslint-visitor-keys "^3.4.3"
"@eslint-community/regexpp@^4.12.1": "@eslint-community/regexpp@^4.12.2":
version "4.12.1" version "4.12.2"
resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0" resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.2.tgz#bccdf615bcf7b6e8db830ec0b8d21c9a25de597b"
integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ== integrity sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==
"@eslint/config-array@^0.21.1": "@eslint/config-array@^0.23.0":
version "0.21.1" version "0.23.1"
resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.21.1.tgz#7d1b0060fea407f8301e932492ba8c18aff29713" resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.23.1.tgz#908223da7b9148f1af5bfb3144b77a9387a89446"
integrity sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA== integrity sha512-uVSdg/V4dfQmTjJzR0szNczjOH/J+FyUMMjYtr07xFRXR7EDf9i1qdxrD0VusZH9knj1/ecxzCQQxyic5NzAiA==
dependencies: dependencies:
"@eslint/object-schema" "^2.1.7" "@eslint/object-schema" "^3.0.1"
debug "^4.3.1" debug "^4.3.1"
minimatch "^3.1.2" minimatch "^10.1.1"
"@eslint/config-helpers@^0.4.2": "@eslint/config-helpers@^0.5.2":
version "0.4.2" version "0.5.2"
resolved "https://registry.yarnpkg.com/@eslint/config-helpers/-/config-helpers-0.4.2.tgz#1bd006ceeb7e2e55b2b773ab318d300e1a66aeda" resolved "https://registry.yarnpkg.com/@eslint/config-helpers/-/config-helpers-0.5.2.tgz#314c7b03d02a371ad8c0a7f6821d5a8a8437ba9d"
integrity sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw== integrity sha512-a5MxrdDXEvqnIq+LisyCX6tQMPF/dSJpCfBgBauY+pNZ28yCtSsTvyTYrMhaI+LK26bVyCJfJkT0u8KIj2i1dQ==
dependencies: dependencies:
"@eslint/core" "^0.17.0" "@eslint/core" "^1.1.0"
"@eslint/core@^0.17.0": "@eslint/core@^1.1.0":
version "0.17.0" version "1.1.0"
resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.17.0.tgz#77225820413d9617509da9342190a2019e78761c" resolved "https://registry.yarnpkg.com/@eslint/core/-/core-1.1.0.tgz#51f5cd970e216fbdae6721ac84491f57f965836d"
integrity sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ== integrity sha512-/nr9K9wkr3P1EzFTdFdMoLuo1PmIxjmwvPozwoSodjNBdefGujXQUF93u1DDZpEaTuDvMsIQddsd35BwtrW9Xw==
dependencies: dependencies:
"@types/json-schema" "^7.0.15" "@types/json-schema" "^7.0.15"
"@eslint/eslintrc@^3.3.1": "@eslint/object-schema@^3.0.1":
version "3.3.1" version "3.0.1"
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.3.1.tgz#e55f7f1dd400600dd066dbba349c4c0bac916964" resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-3.0.1.tgz#9a1dc9af00d790dc79a9bf57a756e3cb2740ddb9"
integrity sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ== integrity sha512-P9cq2dpr+LU8j3qbLygLcSZrl2/ds/pUpfnHNNuk5HW7mnngHs+6WSq5C9mO3rqRX8A1poxqLTC9cu0KOyJlBg==
"@eslint/plugin-kit@^0.6.0":
version "0.6.0"
resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.6.0.tgz#e0cb12ec66719cb2211ad36499fb516f2a63899d"
integrity sha512-bIZEUzOI1jkhviX2cp5vNyXQc6olzb2ohewQubuYlMXZ2Q/XjBO0x0XhGPvc9fjSIiUN0vw+0hq53BJ4eQSJKQ==
dependencies: dependencies:
ajv "^6.12.4" "@eslint/core" "^1.1.0"
debug "^4.3.2"
espree "^10.0.1"
globals "^14.0.0"
ignore "^5.2.0"
import-fresh "^3.2.1"
js-yaml "^4.1.0"
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
"@eslint/js@9.39.2":
version "9.39.2"
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.39.2.tgz#2d4b8ec4c3ea13c1b3748e0c97ecd766bdd80599"
integrity sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==
"@eslint/object-schema@^2.1.7":
version "2.1.7"
resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.7.tgz#6e2126a1347e86a4dedf8706ec67ff8e107ebbad"
integrity sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==
"@eslint/plugin-kit@^0.4.1":
version "0.4.1"
resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz#9779e3fd9b7ee33571a57435cf4335a1794a6cb2"
integrity sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==
dependencies:
"@eslint/core" "^0.17.0"
levn "^0.4.1" levn "^0.4.1"
"@humanfs/core@^0.19.1": "@humanfs/core@^0.19.1":
@@ -171,6 +151,18 @@
resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.4.3.tgz#c2b9d2e374ee62c586d3adbea87199b1d7a7a6ba" resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.4.3.tgz#c2b9d2e374ee62c586d3adbea87199b1d7a7a6ba"
integrity sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ== integrity sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==
"@isaacs/balanced-match@^4.0.1":
version "4.0.1"
resolved "https://registry.yarnpkg.com/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz#3081dadbc3460661b751e7591d7faea5df39dd29"
integrity sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==
"@isaacs/brace-expansion@^5.0.1":
version "5.0.1"
resolved "https://registry.yarnpkg.com/@isaacs/brace-expansion/-/brace-expansion-5.0.1.tgz#0ef5a92d91f2fff2a37646ce54da9e5f599f6eff"
integrity sha512-WMz71T1JS624nWj2n2fnYAuPovhv7EUhk69R6i9dsVyzxt5eM3bjwvgk9L+APE1TRscGysAVMANkB0jh0LQZrQ==
dependencies:
"@isaacs/balanced-match" "^4.0.1"
"@isaacs/cliui@^8.0.2": "@isaacs/cliui@^8.0.2":
version "8.0.2" version "8.0.2"
resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550"
@@ -217,9 +209,9 @@
integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
"@quobix/vacuum@^0.23.4": "@quobix/vacuum@^0.23.4":
version "0.23.5" version "0.23.8"
resolved "https://registry.yarnpkg.com/@quobix/vacuum/-/vacuum-0.23.5.tgz#f8cbfb27cdec7437b516422752545439039c26c9" resolved "https://registry.yarnpkg.com/@quobix/vacuum/-/vacuum-0.23.8.tgz#a994d6db71b483bc34b6683c8c069ef4f26e3e2b"
integrity sha512-4/ybLW692DNkX/kXT/CRTkFF3bOqP5L+hRd7G49bUbXqAkU5E2WwB0z6xEYoVkB+BDDDYm35sw4pzARjJfXcUA== integrity sha512-fdxBgELoyJWabN5yeaQWlu0IREabqlPQb5EgFQjA7Plc1YjUFIXzh4RMFpQ1OJ/D6OtxXY6SeifEAy0HihQ7Qw==
dependencies: dependencies:
https-proxy-agent "^7.0.6" https-proxy-agent "^7.0.6"
node-fetch "^3.3.2" node-fetch "^3.3.2"
@@ -230,10 +222,15 @@
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
"@types/estree@^1.0.6": "@types/esrecurse@^4.3.1":
version "1.0.6" version "4.3.1"
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.6.tgz#628effeeae2064a1b4e79f78e81d87b7e5fc7b50" resolved "https://registry.yarnpkg.com/@types/esrecurse/-/esrecurse-4.3.1.tgz#6f636af962fbe6191b830bd676ba5986926bccec"
integrity sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw== integrity sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==
"@types/estree@^1.0.6", "@types/estree@^1.0.8":
version "1.0.8"
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e"
integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==
"@types/json-schema@^7.0.15": "@types/json-schema@^7.0.15":
version "7.0.15" version "7.0.15"
@@ -424,12 +421,12 @@ aws4@^1.8.0:
integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A== integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==
axios@^1.13.1, axios@^1.7.7: axios@^1.13.1, axios@^1.7.7:
version "1.13.4" version "1.13.5"
resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.4.tgz#15d109a4817fb82f73aea910d41a2c85606076bc" resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.5.tgz#5e464688fa127e11a660a2c49441c009f6567a43"
integrity sha512-1wVkUaAO6WyaYtCkcYCOx12ZgpGf9Zif+qXa4n+oYzK558YryKqiL6UWwd5DqiH3VRW0GYhTZQ/vlgJrCoNQlg== integrity sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q==
dependencies: dependencies:
follow-redirects "^1.15.6" follow-redirects "^1.15.11"
form-data "^4.0.4" form-data "^4.0.5"
proxy-from-env "^1.1.0" proxy-from-env "^1.1.0"
balanced-match@^1.0.0: balanced-match@^1.0.0:
@@ -459,14 +456,6 @@ bluebird@^3.7.2:
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
brace-expansion@^1.1.7:
version "1.1.12"
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.12.tgz#ab9b454466e5a8cc3a187beaad580412a9c5b843"
integrity sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==
dependencies:
balanced-match "^1.0.0"
concat-map "0.0.1"
brace-expansion@^2.0.1: brace-expansion@^2.0.1:
version "2.0.2" version "2.0.2"
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.2.tgz#54fc53237a613d854c7bd37463aad17df87214e7"
@@ -518,11 +507,6 @@ call-me-maybe@^1.0.1:
resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b"
integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= integrity sha1-JtII6onje1y95gJQoV8DHBak1ms=
callsites@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
camelcase@^6.0.0: camelcase@^6.0.0:
version "6.3.0" version "6.3.0"
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"
@@ -533,7 +517,7 @@ caseless@~0.12.0:
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=
chalk@^4.0.0, chalk@^4.1.0: chalk@^4.1.0:
version "4.1.0" version "4.1.0"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a"
integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==
@@ -645,11 +629,6 @@ common-tags@^1.8.0:
resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937" resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.0.tgz#8e3153e542d4a39e9b10554434afaaf98956a937"
integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw== integrity sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==
concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
core-util-is@1.0.2: core-util-is@1.0.2:
version "1.0.2" version "1.0.2"
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
@@ -684,9 +663,9 @@ cypress-wait-until@^3.0.2:
integrity sha512-iemies796dD5CgjG5kV0MnpEmKSH+s7O83ZoJLVzuVbZmm4lheMsZqAVT73hlMx4QlkwhxbyUzhOBUOZwoOe0w== integrity sha512-iemies796dD5CgjG5kV0MnpEmKSH+s7O83ZoJLVzuVbZmm4lheMsZqAVT73hlMx4QlkwhxbyUzhOBUOZwoOe0w==
cypress@^15.9.0: cypress@^15.9.0:
version "15.9.0" version "15.10.0"
resolved "https://registry.yarnpkg.com/cypress/-/cypress-15.9.0.tgz#9bcbbfbf3923d8aca7d06990cb174d5ba67e4084" resolved "https://registry.yarnpkg.com/cypress/-/cypress-15.10.0.tgz#06bed98a690fad1b98a21010613f9c8c7fa9f639"
integrity sha512-Ks6Bdilz3TtkLZtTQyqYaqtL/WT3X3APKaSLhTV96TmTyudzSjc6EJsJCHmBb7DxO+3R12q3Jkbjgm/iPgmwfg== integrity sha512-OtUh7OMrfEjKoXydlAD1CfG2BvKxIqgWGY4/RMjrqQ3BKGBo5JFKoYNH+Tpcj4xKxWH4XK0Xri+9y8WkxhYbqQ==
dependencies: dependencies:
"@cypress/request" "^3.0.10" "@cypress/request" "^3.0.10"
"@cypress/xvfb" "^1.2.4" "@cypress/xvfb" "^1.2.4"
@@ -716,7 +695,7 @@ cypress@^15.9.0:
hasha "5.2.2" hasha "5.2.2"
is-installed-globally "~0.4.0" is-installed-globally "~0.4.0"
listr2 "^3.8.3" listr2 "^3.8.3"
lodash "^4.17.21" lodash "^4.17.23"
log-symbols "^4.0.0" log-symbols "^4.0.0"
minimist "^1.2.8" minimist "^1.2.8"
ospath "^1.2.2" ospath "^1.2.2"
@@ -748,7 +727,7 @@ dayjs@^1.10.4:
resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.7.tgz#4b296922642f70999544d1144a2c25730fce63e2" resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.7.tgz#4b296922642f70999544d1144a2c25730fce63e2"
integrity sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ== integrity sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==
debug@4: debug@4, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.4.0:
version "4.4.3" version "4.4.3"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a"
integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==
@@ -762,19 +741,12 @@ debug@^3.1.0:
dependencies: dependencies:
ms "^2.1.1" ms "^2.1.1"
debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.4.0:
version "4.4.1"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b"
integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==
dependencies:
ms "^2.1.3"
decamelize@^4.0.0: decamelize@^4.0.0:
version "4.0.0" version "4.0.0"
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837"
integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==
deep-is@^0.1.3, deep-is@~0.1.3: deep-is@^0.1.3:
version "0.1.3" version "0.1.3"
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
@@ -877,15 +849,14 @@ escape-string-regexp@^4.0.0:
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
escodegen@^1.8.1: escodegen@^2.1.0:
version "1.12.0" version "2.1.0"
resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.12.0.tgz#f763daf840af172bb3a2b6dd7219c0e17f7ff541" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17"
integrity sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg== integrity sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==
dependencies: dependencies:
esprima "^3.1.3" esprima "^4.0.1"
estraverse "^4.2.0" estraverse "^5.2.0"
esutils "^2.0.2" esutils "^2.0.2"
optionator "^0.8.1"
optionalDependencies: optionalDependencies:
source-map "~0.6.1" source-map "~0.6.1"
@@ -900,17 +871,19 @@ eslint-plugin-chai-friendly@^1.1.0:
integrity sha512-+T1rClpDdXkgBAhC16vRQMI5umiWojVqkj9oUTdpma50+uByCZM/oBfxitZiOkjMRlm725mwFfz/RVgyDRvCKA== integrity sha512-+T1rClpDdXkgBAhC16vRQMI5umiWojVqkj9oUTdpma50+uByCZM/oBfxitZiOkjMRlm725mwFfz/RVgyDRvCKA==
eslint-plugin-cypress@^5.2.0: eslint-plugin-cypress@^5.2.0:
version "5.2.1" version "5.3.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-cypress/-/eslint-plugin-cypress-5.2.1.tgz#0ce3fbe694174068403b3c0c2de252896317b97d" resolved "https://registry.yarnpkg.com/eslint-plugin-cypress/-/eslint-plugin-cypress-5.3.0.tgz#52cb5397829a765a22680ccb010e81b73d249fb2"
integrity sha512-HTJLbcd7fwJ4agbHinZ4FUIl38bUTJT3BmH8zdgS2V32LETmPqCtWHi3xlgZ2vpX0aW6kQoHCVVqHm8NxZJ9sA== integrity sha512-qjHF2Sdi3VkXSMnfQeUqsbYnessgc6T2dus/Q1U+e5102GpPy9eLd8MWW2Xp2SS9bMpPNLnSHwktMhCKr0dIBg==
dependencies: dependencies:
globals "^16.2.0" globals "^16.5.0"
eslint-scope@^8.4.0: eslint-scope@^9.1.0:
version "8.4.0" version "9.1.0"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-8.4.0.tgz#88e646a207fad61436ffa39eb505147200655c82" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-9.1.0.tgz#dfcb41d6c0d73df6b977a50cf3e91c41ddb4154e"
integrity sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg== integrity sha512-CkWE42hOJsNj9FJRaoMX9waUFYhqY4jmyLFdAdzZr6VaCg3ynLYx4WnOdkaIifGfH4gsUcBTn4OZbHXkpLD0FQ==
dependencies: dependencies:
"@types/esrecurse" "^4.3.1"
"@types/estree" "^1.0.8"
esrecurse "^4.3.0" esrecurse "^4.3.0"
estraverse "^5.2.0" estraverse "^5.2.0"
@@ -919,37 +892,34 @@ eslint-visitor-keys@^3.4.3:
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
eslint-visitor-keys@^4.2.1: eslint-visitor-keys@^5.0.0:
version "4.2.1" version "5.0.0"
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz#4cfea60fe7dd0ad8e816e1ed026c1d5251b512c1" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-5.0.0.tgz#b9aa1a74aa48c44b3ae46c1597ce7171246a94a9"
integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ== integrity sha512-A0XeIi7CXU7nPlfHS9loMYEKxUaONu/hTEzHTGba9Huu94Cq1hPivf+DE5erJozZOky0LfvXAyrV/tcswpLI0Q==
eslint@^9.39.0: eslint@^10.0.0:
version "9.39.2" version "10.0.0"
resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.39.2.tgz#cb60e6d16ab234c0f8369a3fe7cc87967faf4b6c" resolved "https://registry.yarnpkg.com/eslint/-/eslint-10.0.0.tgz#c93c36a96d91621d0fbb680db848ea11af56ab1e"
integrity sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw== integrity sha512-O0piBKY36YSJhlFSG8p9VUdPV/SxxS4FYDWVpr/9GJuMaepzwlf4J8I4ov1b+ySQfDTPhc3DtLaxcT1fN0yqCg==
dependencies: dependencies:
"@eslint-community/eslint-utils" "^4.8.0" "@eslint-community/eslint-utils" "^4.8.0"
"@eslint-community/regexpp" "^4.12.1" "@eslint-community/regexpp" "^4.12.2"
"@eslint/config-array" "^0.21.1" "@eslint/config-array" "^0.23.0"
"@eslint/config-helpers" "^0.4.2" "@eslint/config-helpers" "^0.5.2"
"@eslint/core" "^0.17.0" "@eslint/core" "^1.1.0"
"@eslint/eslintrc" "^3.3.1" "@eslint/plugin-kit" "^0.6.0"
"@eslint/js" "9.39.2"
"@eslint/plugin-kit" "^0.4.1"
"@humanfs/node" "^0.16.6" "@humanfs/node" "^0.16.6"
"@humanwhocodes/module-importer" "^1.0.1" "@humanwhocodes/module-importer" "^1.0.1"
"@humanwhocodes/retry" "^0.4.2" "@humanwhocodes/retry" "^0.4.2"
"@types/estree" "^1.0.6" "@types/estree" "^1.0.6"
ajv "^6.12.4" ajv "^6.12.4"
chalk "^4.0.0"
cross-spawn "^7.0.6" cross-spawn "^7.0.6"
debug "^4.3.2" debug "^4.3.2"
escape-string-regexp "^4.0.0" escape-string-regexp "^4.0.0"
eslint-scope "^8.4.0" eslint-scope "^9.1.0"
eslint-visitor-keys "^4.2.1" eslint-visitor-keys "^5.0.0"
espree "^10.4.0" espree "^11.1.0"
esquery "^1.5.0" esquery "^1.7.0"
esutils "^2.0.2" esutils "^2.0.2"
fast-deep-equal "^3.1.3" fast-deep-equal "^3.1.3"
file-entry-cache "^8.0.0" file-entry-cache "^8.0.0"
@@ -959,39 +929,33 @@ eslint@^9.39.0:
imurmurhash "^0.1.4" imurmurhash "^0.1.4"
is-glob "^4.0.0" is-glob "^4.0.0"
json-stable-stringify-without-jsonify "^1.0.1" json-stable-stringify-without-jsonify "^1.0.1"
lodash.merge "^4.6.2" minimatch "^10.1.1"
minimatch "^3.1.2"
natural-compare "^1.4.0" natural-compare "^1.4.0"
optionator "^0.9.3" optionator "^0.9.3"
espree@^10.0.1, espree@^10.4.0: espree@^11.1.0:
version "10.4.0" version "11.1.0"
resolved "https://registry.yarnpkg.com/espree/-/espree-10.4.0.tgz#d54f4949d4629005a1fa168d937c3ff1f7e2a837" resolved "https://registry.yarnpkg.com/espree/-/espree-11.1.0.tgz#7d0c82a69f8df670728dba256264b383fbf73e8f"
integrity sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ== integrity sha512-WFWYhO1fV4iYkqOOvq8FbqIhr2pYfoDY0kCotMkDeNtGpiGGkZ1iov2u8ydjtgM8yF8rzK7oaTbw2NAzbAbehw==
dependencies: dependencies:
acorn "^8.15.0" acorn "^8.15.0"
acorn-jsx "^5.3.2" acorn-jsx "^5.3.2"
eslint-visitor-keys "^4.2.1" eslint-visitor-keys "^5.0.0"
esprima@1.2.2: esprima@1.2.5:
version "1.2.2" version "1.2.5"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.2.tgz#76a0fd66fcfe154fd292667dc264019750b1657b" resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.5.tgz#0993502feaf668138325756f30f9a51feeec11e9"
integrity sha1-dqD9Zvz+FU/SkmZ9wmQBl1CxZXs= integrity sha512-S9VbPDU0adFErpDai3qDkjq8+G05ONtKzcyNrPKg/ZKa+tf879nX2KexNU95b31UoTJjRLInNBHHHjFPoCd7lQ==
esprima@^3.1.3: esprima@^4.0.0, esprima@^4.0.1:
version "3.1.3"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633"
integrity sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=
esprima@^4.0.0:
version "4.0.1" version "4.0.1"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
esquery@^1.5.0: esquery@^1.7.0:
version "1.6.0" version "1.7.0"
resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.7.0.tgz#08d048f261f0ddedb5bae95f46809463d9c9496d"
integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg== integrity sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==
dependencies: dependencies:
estraverse "^5.1.0" estraverse "^5.1.0"
@@ -1002,11 +966,6 @@ esrecurse@^4.3.0:
dependencies: dependencies:
estraverse "^5.2.0" estraverse "^5.2.0"
estraverse@^4.2.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
estraverse@^5.1.0: estraverse@^5.1.0:
version "5.2.0" version "5.2.0"
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880"
@@ -1085,7 +1044,7 @@ fast-json-stable-stringify@^2.0.0:
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: fast-levenshtein@^2.0.6:
version "2.0.6" version "2.0.6"
resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
@@ -1150,10 +1109,10 @@ flatted@^3.2.9:
resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a"
integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==
follow-redirects@^1.15.6: follow-redirects@^1.15.11:
version "1.15.9" version "1.15.11"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340"
integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ== integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==
foreground-child@^3.1.0: foreground-child@^3.1.0:
version "3.3.1" version "3.3.1"
@@ -1168,7 +1127,7 @@ forever-agent@~0.6.1:
resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
form-data@^4.0.4, form-data@~4.0.4: form-data@^4.0.4, form-data@^4.0.5, form-data@~4.0.4:
version "4.0.5" version "4.0.5"
resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.5.tgz#b49e48858045ff4cbf6b03e1805cebcad3679053" resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.5.tgz#b49e48858045ff4cbf6b03e1805cebcad3679053"
integrity sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w== integrity sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==
@@ -1270,12 +1229,7 @@ global-dirs@^3.0.0:
dependencies: dependencies:
ini "2.0.0" ini "2.0.0"
globals@^14.0.0: globals@^16.5.0:
version "14.0.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e"
integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==
globals@^16.2.0:
version "16.5.0" version "16.5.0"
resolved "https://registry.yarnpkg.com/globals/-/globals-16.5.0.tgz#ccf1594a437b97653b2be13ed4d8f5c9f850cac1" resolved "https://registry.yarnpkg.com/globals/-/globals-16.5.0.tgz#ccf1594a437b97653b2be13ed4d8f5c9f850cac1"
integrity sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ== integrity sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==
@@ -1359,14 +1313,6 @@ ignore@^5.2.0:
resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef"
integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==
import-fresh@^3.2.1:
version "3.3.0"
resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
dependencies:
parent-module "^1.0.0"
resolve-from "^4.0.0"
imurmurhash@^0.1.4: imurmurhash@^0.1.4:
version "0.1.4" version "0.1.4"
resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
@@ -1516,13 +1462,13 @@ jsonfile@^6.0.1:
graceful-fs "^4.1.6" graceful-fs "^4.1.6"
jsonpath@^1.1.1: jsonpath@^1.1.1:
version "1.1.1" version "1.2.1"
resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.1.1.tgz#0ca1ed8fb65bb3309248cc9d5466d12d5b0b9901" resolved "https://registry.yarnpkg.com/jsonpath/-/jsonpath-1.2.1.tgz#2b74a4bcc78948e43e33ac971138ce0c68bce701"
integrity sha512-l6Cg7jRpixfbgoWgkrl77dgEj8RPvND0wMH6TwQmi9Qs4TFfS9u5cUFnbeKTwj5ga5Y3BTGGNI28k117LJ009w== integrity sha512-Jl6Jhk0jG+kP3yk59SSeGq7LFPR4JQz1DU0K+kXTysUhMostbhU3qh5mjTuf0PqFcXpAT7kvmMt9WxV10NyIgQ==
dependencies: dependencies:
esprima "1.2.2" esprima "1.2.5"
static-eval "2.0.2" static-eval "2.1.1"
underscore "1.12.1" underscore "1.13.6"
jsprim@^2.0.2: jsprim@^2.0.2:
version "2.0.2" version "2.0.2"
@@ -1549,14 +1495,6 @@ levn@^0.4.1:
prelude-ls "^1.2.1" prelude-ls "^1.2.1"
type-check "~0.4.0" type-check "~0.4.0"
levn@~0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=
dependencies:
prelude-ls "~1.1.2"
type-check "~0.3.2"
listr2@^3.8.3: listr2@^3.8.3:
version "3.14.0" version "3.14.0"
resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.14.0.tgz#23101cc62e1375fd5836b248276d1d2b51fdbe9e" resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.14.0.tgz#23101cc62e1375fd5836b248276d1d2b51fdbe9e"
@@ -1578,17 +1516,12 @@ locate-path@^6.0.0:
dependencies: dependencies:
p-locate "^5.0.0" p-locate "^5.0.0"
lodash.merge@^4.6.2:
version "4.6.2"
resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
lodash.once@^4.1.1: lodash.once@^4.1.1:
version "4.1.1" version "4.1.1"
resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac"
integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=
lodash@^4.17.21: lodash@^4.17.21, lodash@^4.17.23:
version "4.17.23" version "4.17.23"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a"
integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==
@@ -1652,12 +1585,12 @@ mimic-fn@^2.1.0:
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
minimatch@^3.1.2: minimatch@^10.1.1:
version "3.1.2" version "10.1.2"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.1.2.tgz#6c3f289f9de66d628fa3feb1842804396a43d81c"
integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== integrity sha512-fu656aJ0n2kcXwsnwnv9g24tkU5uSmOlTjd6WyyaKm2Z+h1qmY6bAjrcaIxF/BslFqbZ8UBtbJi7KgQOZD2PTw==
dependencies: dependencies:
brace-expansion "^1.1.7" "@isaacs/brace-expansion" "^5.0.1"
minimatch@^9.0.4, minimatch@^9.0.5: minimatch@^9.0.4, minimatch@^9.0.5:
version "9.0.5" version "9.0.5"
@@ -1781,18 +1714,6 @@ openapi-types@^12.1.3:
resolved "https://registry.yarnpkg.com/openapi-types/-/openapi-types-12.1.3.tgz#471995eb26c4b97b7bd356aacf7b91b73e777dd3" resolved "https://registry.yarnpkg.com/openapi-types/-/openapi-types-12.1.3.tgz#471995eb26c4b97b7bd356aacf7b91b73e777dd3"
integrity sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw== integrity sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==
optionator@^0.8.1:
version "0.8.3"
resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495"
integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==
dependencies:
deep-is "~0.1.3"
fast-levenshtein "~2.0.6"
levn "~0.3.0"
prelude-ls "~1.1.2"
type-check "~0.3.2"
word-wrap "~1.2.3"
optionator@^0.9.3: optionator@^0.9.3:
version "0.9.4" version "0.9.4"
resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734"
@@ -1836,13 +1757,6 @@ package-json-from-dist@^1.0.0:
resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505"
integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==
parent-module@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
dependencies:
callsites "^3.0.0"
path-exists@^4.0.0: path-exists@^4.0.0:
version "4.0.0" version "4.0.0"
resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
@@ -1886,11 +1800,6 @@ prelude-ls@^1.2.1:
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
prelude-ls@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=
pretty-bytes@^5.6.0: pretty-bytes@^5.6.0:
version "5.6.0" version "5.6.0"
resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb"
@@ -1925,9 +1834,9 @@ punycode@^2.1.0:
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
qs@~6.14.1: qs@~6.14.1:
version "6.14.1" version "6.14.2"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.2.tgz#b5634cf9d9ad9898e31fba3504e866e8efb6798c"
integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== integrity sha512-V/yCWTTF7VJ9hIh18Ugr2zhJMP01MY7c5kh4J870L7imm6/DIzBsNLTXzMwUA3yZ5b/KBqLx8Kp3uRvd7xSe3Q==
dependencies: dependencies:
side-channel "^1.1.0" side-channel "^1.1.0"
@@ -1960,11 +1869,6 @@ require-from-string@^2.0.2:
resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
resolve-from@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
restore-cursor@^3.1.0: restore-cursor@^3.1.0:
version "3.1.0" version "3.1.0"
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"
@@ -2117,12 +2021,12 @@ sshpk@^1.18.0:
safer-buffer "^2.0.2" safer-buffer "^2.0.2"
tweetnacl "~0.14.0" tweetnacl "~0.14.0"
static-eval@2.0.2: static-eval@2.1.1:
version "2.0.2" version "2.1.1"
resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.0.2.tgz#2d1759306b1befa688938454c546b7871f806a42" resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-2.1.1.tgz#71ac6a13aa32b9e14c5b5f063c362176b0d584ba"
integrity sha512-N/D219Hcr2bPjLxPiV+TQE++Tsmrady7TqAJugLy7Xk1EumfDWS/f5dtBbkRCGE7wKKXuYockQoj8Rm2/pVKyg== integrity sha512-MgWpQ/ZjGieSVB3eOJVs4OA2LT/q1vx98KPCTTQPzq/aLr0YUXTsgryTXr4SLfR0ZfUUCiedM9n/ABeDIyy4mA==
dependencies: dependencies:
escodegen "^1.8.1" escodegen "^2.1.0"
"string-width-cjs@npm:string-width@^4.2.0": "string-width-cjs@npm:string-width@^4.2.0":
version "4.2.3" version "4.2.3"
@@ -2291,13 +2195,6 @@ type-check@^0.4.0, type-check@~0.4.0:
dependencies: dependencies:
prelude-ls "^1.2.1" prelude-ls "^1.2.1"
type-check@~0.3.2:
version "0.3.2"
resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=
dependencies:
prelude-ls "~1.1.2"
type-fest@^0.21.3: type-fest@^0.21.3:
version "0.21.3" version "0.21.3"
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
@@ -2308,10 +2205,10 @@ type-fest@^0.8.0:
resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d"
integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==
underscore@1.12.1: underscore@1.13.6:
version "1.12.1" version "1.13.6"
resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.12.1.tgz#7bb8cc9b3d397e201cf8553336d262544ead829e" resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.13.6.tgz#04786a1f589dc6c09f761fc5f45b89e935136441"
integrity sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw== integrity sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==
universalify@^2.0.0: universalify@^2.0.0:
version "2.0.0" version "2.0.0"
@@ -2361,11 +2258,6 @@ word-wrap@^1.2.5:
resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34"
integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA== integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==
word-wrap@~1.2.3:
version "1.2.4"
resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.4.tgz#cb4b50ec9aca570abd1f52f33cd45b6c61739a9f"
integrity sha512-2V81OA4ugVo5pRo46hAoD2ivUJx8jXmWXfUkY4KFNw0hEptvN0QfH3K4nHiwzGeKl5rFKedV48QVoqYavy4YpA==
workerpool@^9.2.0: workerpool@^9.2.0:
version "9.3.2" version "9.3.2"
resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-9.3.2.tgz#4c045a8b437ae1bc70c646af11929a8b4d238656" resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-9.3.2.tgz#4c045a8b437ae1bc70c646af11929a8b4d238656"