mirror of
https://github.com/NginxProxyManager/nginx-proxy-manager.git
synced 2026-02-27 21:05:21 +00:00
Compare commits
135 Commits
04540be901
...
v2.14.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
84fb2729af | ||
|
|
c7437ddf8f | ||
|
|
627f43c729 | ||
|
|
fc4c5aac86 | ||
|
|
aff390f35d | ||
|
|
5f5a3870e4 | ||
|
|
40f363bd4f | ||
|
|
678fdd22c6 | ||
|
|
6c3cc83d66 | ||
|
|
5916fd5bee | ||
|
|
f105673904 | ||
|
|
a37d0b88d6 | ||
|
|
43bc2a743e | ||
|
|
269545256a | ||
|
|
e5df45e9ef | ||
|
|
5601dd14fc | ||
|
|
3e5655cfcd | ||
|
|
a90af83270 | ||
|
|
619a8e5acc | ||
|
|
6dcdefb57e | ||
|
|
787616010b | ||
|
|
5891c291d2 | ||
|
|
41a2a41e67 | ||
|
|
379099d7ed | ||
|
|
dbeab93c02 | ||
|
|
010cb562a0 | ||
|
|
7ff2fc1900 | ||
|
|
1c189a1888 | ||
|
|
f3c46487f6 | ||
|
|
fcca481d1b | ||
|
|
c59c237000 | ||
|
|
a62b6de9f2 | ||
|
|
d92cc953e1 | ||
|
|
1b6412688b | ||
|
|
1d14f72ba5 | ||
|
|
099243aff7 | ||
|
|
5fe12f69ba | ||
|
|
011191f645 | ||
|
|
eeab425ea4 | ||
|
|
13fbc53591 | ||
|
|
3f2aec7b86 | ||
|
|
09a3d65aa1 | ||
|
|
c910cf9512 | ||
|
|
304c51aae8 | ||
|
|
b552eb90ed | ||
|
|
b78ef9bcd3 | ||
|
|
7c67fafedf | ||
|
|
47b367d61e | ||
|
|
d19f5c1960 | ||
|
|
77662b4e7f | ||
|
|
c88de65d3a | ||
|
|
ac4efd2333 | ||
|
|
eab38d8934 | ||
|
|
4833dcbf3a | ||
|
|
c6fba1cbfe | ||
|
|
cdde543e8a | ||
|
|
0d62c26164 | ||
|
|
c3173d83b8 | ||
|
|
6ba40216cd | ||
|
|
3c54413752 | ||
|
|
65cf8ce583 | ||
|
|
a4bc8d5d21 | ||
|
|
2bcf5e91ce | ||
|
|
3e3d08b68f | ||
|
|
f90066822f | ||
|
|
bb4b5fb3aa | ||
|
|
8014f34195 | ||
|
|
4f8037ded2 | ||
|
|
e7a1f84e45 | ||
|
|
6f0931bed5 | ||
|
|
7f0c5d4364 | ||
|
|
60404b6f7e | ||
|
|
c2fddee2c7 | ||
|
|
b7402d47a0 | ||
|
|
f09876d31b | ||
|
|
8708a3bab8 | ||
|
|
218fadd168 | ||
|
|
9cf1d000c8 | ||
|
|
714bebbbc7 | ||
|
|
127008c9b5 | ||
|
|
7cc2bfbf6a | ||
|
|
de3b543d08 | ||
|
|
21f63e3db3 | ||
|
|
232b5b759a | ||
|
|
054742539f | ||
|
|
2b6a617599 | ||
|
|
187d21a0d5 | ||
|
|
c515815b0e | ||
|
|
3db02370fd | ||
|
|
4ad1af5576 | ||
|
|
a73d54fedc | ||
|
|
8c8005f817 | ||
|
|
83d993578b | ||
|
|
8532e7520f | ||
|
|
58d47cd69a | ||
|
|
bad3eac515 | ||
|
|
00b58f73f8 | ||
|
|
47981f0d56 | ||
|
|
38257859e2 | ||
|
|
a169e1131c | ||
|
|
a99cde9cd8 | ||
|
|
c69bd187af | ||
|
|
98fe622967 | ||
|
|
eddca3597d | ||
|
|
ed0b2306a2 | ||
|
|
17f6050de2 | ||
|
|
469d72a2f9 | ||
|
|
3ed3ec0001 | ||
|
|
24ff3c7b11 | ||
|
|
58dda941b8 | ||
|
|
f9f743499f | ||
|
|
534afe6067 | ||
|
|
9580903f5d | ||
|
|
df81c8425f | ||
|
|
b6f421c5fc | ||
|
|
c1ef3a3795 | ||
|
|
0aad939ccc | ||
|
|
7e092e265c | ||
|
|
cd01a2ee6b | ||
|
|
9e6720561a | ||
|
|
c50f0a144e | ||
|
|
2a9c1df3cb | ||
|
|
ef6391f22e | ||
|
|
0f46337710 | ||
|
|
1b84b8ace2 | ||
|
|
8ea8286cec | ||
|
|
7ca48f876b | ||
|
|
7c3c59c79f | ||
|
|
ef7f444404 | ||
|
|
f509e0bdba | ||
|
|
9b7af474bb | ||
|
|
28982b8bc2 | ||
|
|
19e654b998 | ||
|
|
2d774124dc | ||
|
|
f3efaae320 |
10
.github/dependabot.yml
vendored
10
.github/dependabot.yml
vendored
@@ -3,7 +3,7 @@ updates:
|
|||||||
- package-ecosystem: "npm"
|
- package-ecosystem: "npm"
|
||||||
directory: "/backend"
|
directory: "/backend"
|
||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "weekly"
|
||||||
groups:
|
groups:
|
||||||
dev-patch-updates:
|
dev-patch-updates:
|
||||||
dependency-type: "development"
|
dependency-type: "development"
|
||||||
@@ -25,7 +25,7 @@ updates:
|
|||||||
- package-ecosystem: "npm"
|
- package-ecosystem: "npm"
|
||||||
directory: "/frontend"
|
directory: "/frontend"
|
||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "weekly"
|
||||||
groups:
|
groups:
|
||||||
dev-patch-updates:
|
dev-patch-updates:
|
||||||
dependency-type: "development"
|
dependency-type: "development"
|
||||||
@@ -47,7 +47,7 @@ updates:
|
|||||||
- package-ecosystem: "npm"
|
- package-ecosystem: "npm"
|
||||||
directory: "/docs"
|
directory: "/docs"
|
||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "weekly"
|
||||||
groups:
|
groups:
|
||||||
dev-patch-updates:
|
dev-patch-updates:
|
||||||
dependency-type: "development"
|
dependency-type: "development"
|
||||||
@@ -69,7 +69,7 @@ updates:
|
|||||||
- package-ecosystem: "npm"
|
- package-ecosystem: "npm"
|
||||||
directory: "/test"
|
directory: "/test"
|
||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "weekly"
|
||||||
groups:
|
groups:
|
||||||
dev-patch-updates:
|
dev-patch-updates:
|
||||||
dependency-type: "development"
|
dependency-type: "development"
|
||||||
@@ -91,7 +91,7 @@ updates:
|
|||||||
- package-ecosystem: "docker"
|
- package-ecosystem: "docker"
|
||||||
directory: "/docker"
|
directory: "/docker"
|
||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "weekly"
|
||||||
groups:
|
groups:
|
||||||
updates:
|
updates:
|
||||||
update-types:
|
update-types:
|
||||||
|
|||||||
17
README.md
17
README.md
@@ -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
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://biomejs.dev/schemas/2.3.2/schema.json",
|
"$schema": "https://biomejs.dev/schemas/2.3.14/schema.json",
|
||||||
"vcs": {
|
"vcs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"clientKind": "git",
|
"clientKind": "git",
|
||||||
|
|||||||
@@ -23,6 +23,14 @@
|
|||||||
"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",
|
||||||
"package_name": "certbot-dns-azure",
|
"package_name": "certbot-dns-azure",
|
||||||
|
|||||||
@@ -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"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import crypto from "node:crypto";
|
import crypto from "node:crypto";
|
||||||
import bcrypt from "bcrypt";
|
import bcrypt from "bcrypt";
|
||||||
import { authenticator } 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";
|
||||||
@@ -27,7 +27,6 @@ const generateBackupCodes = async () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const internal2fa = {
|
const internal2fa = {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if user has 2FA enabled
|
* Check if user has 2FA enabled
|
||||||
* @param {number} userId
|
* @param {number} userId
|
||||||
@@ -72,8 +71,12 @@ const internal2fa = {
|
|||||||
startSetup: async (access, userId) => {
|
startSetup: async (access, userId) => {
|
||||||
await access.can("users:password", userId);
|
await access.can("users:password", userId);
|
||||||
const user = await internalUser.get(access, { id: userId });
|
const user = await internalUser.get(access, { id: userId });
|
||||||
const secret = authenticator.generateSecret();
|
const secret = generateSecret();
|
||||||
const otpauth_url = authenticator.keyuri(user.email, APP_NAME, secret);
|
const otpauth_url = generateURI({
|
||||||
|
issuer: APP_NAME,
|
||||||
|
label: user.email,
|
||||||
|
secret: secret,
|
||||||
|
});
|
||||||
const auth = await internal2fa.getUserPasswordAuth(userId);
|
const auth = await internal2fa.getUserPasswordAuth(userId);
|
||||||
|
|
||||||
// ensure user isn't already setup for 2fa
|
// ensure user isn't already setup for 2fa
|
||||||
@@ -85,7 +88,8 @@ const internal2fa = {
|
|||||||
const meta = auth.meta || {};
|
const meta = auth.meta || {};
|
||||||
meta.totp_pending_secret = secret;
|
meta.totp_pending_secret = secret;
|
||||||
|
|
||||||
await authModel.query()
|
await authModel
|
||||||
|
.query()
|
||||||
.where("id", auth.id)
|
.where("id", auth.id)
|
||||||
.andWhere("user_id", userId)
|
.andWhere("user_id", userId)
|
||||||
.andWhere("type", "password")
|
.andWhere("type", "password")
|
||||||
@@ -112,8 +116,8 @@ const internal2fa = {
|
|||||||
throw new errs.ValidationError("No pending 2FA setup found");
|
throw new errs.ValidationError("No pending 2FA setup found");
|
||||||
}
|
}
|
||||||
|
|
||||||
const valid = authenticator.verify({ token: code, secret });
|
const result = await verify({ token: code, secret });
|
||||||
if (!valid) {
|
if (!result.valid) {
|
||||||
throw new errs.ValidationError("Invalid verification code");
|
throw new errs.ValidationError("Invalid verification code");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -156,12 +160,15 @@ const internal2fa = {
|
|||||||
throw new errs.ValidationError("2FA is not enabled");
|
throw new errs.ValidationError("2FA is not enabled");
|
||||||
}
|
}
|
||||||
|
|
||||||
const valid = authenticator.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 (!valid) {
|
if (!result.valid) {
|
||||||
throw new errs.AuthError("Invalid verification code");
|
throw new errs.AuthError("Invalid verification code");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -194,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
|
||||||
const valid = authenticator.verify({
|
// and the backup codes are 8 chars.
|
||||||
token,
|
if (token.length === 6) {
|
||||||
secret,
|
const result = await verify({
|
||||||
});
|
token,
|
||||||
|
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 (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];
|
||||||
@@ -248,12 +265,12 @@ const internal2fa = {
|
|||||||
throw new errs.ValidationError("No 2FA secret found");
|
throw new errs.ValidationError("No 2FA secret found");
|
||||||
}
|
}
|
||||||
|
|
||||||
const valid = authenticator.verify({
|
const result = await verify({
|
||||||
token,
|
token,
|
||||||
secret,
|
secret,
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!valid) {
|
if (!result.valid) {
|
||||||
throw new errs.ValidationError("Invalid verification code");
|
throw new errs.ValidationError("Invalid verification code");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
@@ -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: {
|
||||||
|
|||||||
43
backend/migrations/20260131163528_trust_forwarded_proto.js
Normal file
43
backend/migrations/20260131163528_trust_forwarded_proto.js
Normal 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 };
|
||||||
@@ -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 {
|
||||||
|
|||||||
@@ -12,36 +12,37 @@
|
|||||||
"validate-schema": "node validate-schema.js"
|
"validate-schema": "node validate-schema.js"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@apidevtools/json-schema-ref-parser": "^11.7.0",
|
"@apidevtools/json-schema-ref-parser": "^14.1.1",
|
||||||
"ajv": "^8.17.1",
|
"ajv": "^8.18.0",
|
||||||
"archiver": "^5.3.0",
|
"archiver": "^7.0.1",
|
||||||
"batchflow": "^0.4.0",
|
"batchflow": "^0.4.0",
|
||||||
"bcrypt": "^5.0.0",
|
"bcrypt": "^6.0.0",
|
||||||
"body-parser": "^1.20.3",
|
"better-sqlite3": "^12.6.2",
|
||||||
|
"body-parser": "^2.2.2",
|
||||||
"compression": "^1.7.4",
|
"compression": "^1.7.4",
|
||||||
"express": "^4.22.0",
|
"express": "^5.2.1",
|
||||||
"express-fileupload": "^1.5.2",
|
"express-fileupload": "^1.5.2",
|
||||||
"gravatar": "^1.8.2",
|
"gravatar": "^1.8.2",
|
||||||
"jsonwebtoken": "^9.0.3",
|
"jsonwebtoken": "^9.0.3",
|
||||||
"knex": "3.1.0",
|
"knex": "3.1.0",
|
||||||
"liquidjs": "10.6.1",
|
"liquidjs": "10.24.0",
|
||||||
"lodash": "^4.17.23",
|
"lodash": "^4.17.23",
|
||||||
"moment": "^2.30.1",
|
"moment": "^2.30.1",
|
||||||
"mysql2": "^3.15.3",
|
"mysql2": "^3.17.1",
|
||||||
"node-rsa": "^1.1.1",
|
"node-rsa": "^1.1.1",
|
||||||
"objection": "3.0.1",
|
"objection": "3.1.5",
|
||||||
"otplib": "^12.0.1",
|
"otplib": "^13.3.0",
|
||||||
"path": "^0.12.7",
|
"path": "^0.12.7",
|
||||||
"pg": "^8.16.3",
|
"pg": "^8.18.0",
|
||||||
"proxy-agent": "^6.5.0",
|
"proxy-agent": "^6.5.0",
|
||||||
"signale": "1.4.0",
|
"signale": "1.4.0",
|
||||||
"sqlite3": "^5.1.7",
|
"sqlite3": "^5.1.7",
|
||||||
"temp-write": "^4.0.0"
|
"temp-write": "^4.0.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@apidevtools/swagger-parser": "^10.1.0",
|
"@apidevtools/swagger-parser": "^12.1.0",
|
||||||
"@biomejs/biome": "^2.3.12",
|
"@biomejs/biome": "^2.3.14",
|
||||||
"chalk": "4.1.2",
|
"chalk": "5.6.2",
|
||||||
"nodemon": "^3.1.11"
|
"nodemon": "^3.1.11"
|
||||||
},
|
},
|
||||||
"signale": {
|
"signale": {
|
||||||
|
|||||||
@@ -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": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -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
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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",
|
||||||
|
|||||||
@@ -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",
|
||||||
|
|||||||
@@ -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,
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
},
|
},
|
||||||
"code": {
|
"code": {
|
||||||
"minLength": 6,
|
"minLength": 6,
|
||||||
"maxLength": 6,
|
"maxLength": 8,
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"example": "012345"
|
"example": "012345"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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 %}
|
||||||
1268
backend/yarn.lock
1268
backend/yarn.lock
File diff suppressed because it is too large
Load Diff
@@ -109,7 +109,7 @@ services:
|
|||||||
- "cypress_logs:/test/results"
|
- "cypress_logs:/test/results"
|
||||||
- "./dev/resolv.conf:/etc/resolv.conf:ro"
|
- "./dev/resolv.conf:/etc/resolv.conf:ro"
|
||||||
- "/etc/localtime:/etc/localtime:ro"
|
- "/etc/localtime:/etc/localtime:ro"
|
||||||
command: cypress run --browser chrome --config-file=cypress/config/ci.js
|
command: cypress run --browser chrome --config-file=cypress/config/ci.mjs
|
||||||
networks:
|
networks:
|
||||||
- fulltest
|
- fulltest
|
||||||
|
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ services:
|
|||||||
- "../test/results:/results"
|
- "../test/results:/results"
|
||||||
- "./dev/resolv.conf:/etc/resolv.conf:ro"
|
- "./dev/resolv.conf:/etc/resolv.conf:ro"
|
||||||
- "/etc/localtime:/etc/localtime:ro"
|
- "/etc/localtime:/etc/localtime:ro"
|
||||||
command: cypress run --browser chrome --config-file=cypress/config/ci.js
|
command: cypress run --browser chrome --config-file=cypress/config/ci.mjs
|
||||||
networks:
|
networks:
|
||||||
- nginx_proxy_manager
|
- nginx_proxy_manager
|
||||||
|
|
||||||
|
|||||||
@@ -5,6 +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") {
|
||||||
|
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";
|
||||||
|
}
|
||||||
|
|
||||||
if ($test = H) {
|
if ($test = H) {
|
||||||
return 301 https://$host$request_uri;
|
return 301 https://$host$request_uri;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
@@ -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:
|
||||||
|
|||||||
@@ -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
|
||||||
;;
|
;;
|
||||||
|
|||||||
@@ -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.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://biomejs.dev/schemas/2.3.2/schema.json",
|
"$schema": "https://biomejs.dev/schemas/2.3.14/schema.json",
|
||||||
"vcs": {
|
"vcs": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
"clientKind": "git",
|
"clientKind": "git",
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
const allLocales = [
|
const allLocales = [
|
||||||
["en", "en-US"],
|
["en", "en-US"],
|
||||||
["de", "de-DE"],
|
["de", "de-DE"],
|
||||||
|
["pt", "pt-PT"],
|
||||||
["es", "es-ES"],
|
["es", "es-ES"],
|
||||||
["fr", "fr-FR"],
|
["fr", "fr-FR"],
|
||||||
["it", "it-IT"],
|
["it", "it-IT"],
|
||||||
@@ -17,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"],
|
||||||
|
|||||||
@@ -17,50 +17,50 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@tabler/core": "^1.4.0",
|
"@tabler/core": "^1.4.0",
|
||||||
"@tabler/icons-react": "^3.35.0",
|
"@tabler/icons-react": "^3.36.1",
|
||||||
"@tanstack/react-query": "^5.90.6",
|
"@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.5.21",
|
"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.6",
|
"formik": "^2.4.9",
|
||||||
"generate-password-browser": "^1.1.0",
|
"generate-password-browser": "^1.1.0",
|
||||||
"humps": "^2.0.1",
|
"humps": "^2.0.1",
|
||||||
"query-string": "^9.3.1",
|
"query-string": "^9.3.1",
|
||||||
"react": "^19.2.3",
|
"react": "^19.2.4",
|
||||||
"react-bootstrap": "^2.10.10",
|
"react-bootstrap": "^2.10.10",
|
||||||
"react-dom": "^19.2.3",
|
"react-dom": "^19.2.4",
|
||||||
"react-intl": "^7.1.14",
|
"react-intl": "^8.1.3",
|
||||||
"react-markdown": "^10.1.0",
|
"react-markdown": "^10.1.0",
|
||||||
"react-router-dom": "^7.9.5",
|
"react-router-dom": "^7.13.0",
|
||||||
"react-select": "^5.10.2",
|
"react-select": "^5.10.2",
|
||||||
"react-toastify": "^11.0.5",
|
"react-toastify": "^11.0.5",
|
||||||
"rooks": "^9.3.0"
|
"rooks": "^9.5.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@biomejs/biome": "^2.3.2",
|
"@biomejs/biome": "^2.4.2",
|
||||||
"@formatjs/cli": "^6.7.4",
|
"@formatjs/cli": "^6.12.2",
|
||||||
"@tanstack/react-query-devtools": "^5.90.2",
|
"@tanstack/react-query-devtools": "^5.91.3",
|
||||||
"@testing-library/dom": "^10.4.1",
|
"@testing-library/dom": "^10.4.1",
|
||||||
"@testing-library/jest-dom": "^6.9.1",
|
"@testing-library/jest-dom": "^6.9.1",
|
||||||
"@testing-library/react": "^16.3.0",
|
"@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.7",
|
"@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.2",
|
"@vitejs/plugin-react": "^5.1.4",
|
||||||
"happy-dom": "^20.0.10",
|
"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.93.3",
|
"sass": "^1.97.3",
|
||||||
"tmp": "^0.2.5",
|
"tmp": "^0.2.5",
|
||||||
"typescript": "5.9.3",
|
"typescript": "5.9.3",
|
||||||
"vite": "^7.1.12",
|
"vite": "^7.3.1",
|
||||||
"vite-plugin-checker": "^0.11.0",
|
"vite-plugin-checker": "^0.12.0",
|
||||||
"vite-tsconfig-paths": "^6.0.5",
|
"vite-tsconfig-paths": "^6.1.1",
|
||||||
"vitest": "^4.0.6"
|
"vitest": "^4.0.18"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
@@ -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>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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"]);
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import { createIntl, createIntlCache } from "react-intl";
|
import { createIntl, createIntlCache } from "react-intl";
|
||||||
import langBg from "./lang/bg.json";
|
import langBg from "./lang/bg.json";
|
||||||
import langDe from "./lang/de.json";
|
import langDe from "./lang/de.json";
|
||||||
|
import langPt from "./lang/pt.json";
|
||||||
import langEn from "./lang/en.json";
|
import langEn from "./lang/en.json";
|
||||||
import langEs from "./lang/es.json";
|
import langEs from "./lang/es.json";
|
||||||
import langFr from "./lang/fr.json";
|
import langFr from "./lang/fr.json";
|
||||||
@@ -13,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";
|
||||||
@@ -26,6 +28,7 @@ const localeOptions = [
|
|||||||
["en", "en-US", langEn],
|
["en", "en-US", langEn],
|
||||||
["de", "de-DE", langDe],
|
["de", "de-DE", langDe],
|
||||||
["es", "es-ES", langEs],
|
["es", "es-ES", langEs],
|
||||||
|
["pt", "pt-PT", langPt],
|
||||||
["fr", "fr-FR", langFr],
|
["fr", "fr-FR", langFr],
|
||||||
["ga", "ga-IE", langGa],
|
["ga", "ga-IE", langGa],
|
||||||
["ja", "ja-JP", langJa],
|
["ja", "ja-JP", langJa],
|
||||||
@@ -34,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],
|
||||||
@@ -63,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]) {
|
||||||
|
|||||||
7
frontend/src/locale/src/HelpDoc/cs/AccessLists.md
Normal file
7
frontend/src/locale/src/HelpDoc/cs/AccessLists.md
Normal 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.
|
||||||
32
frontend/src/locale/src/HelpDoc/cs/Certificates.md
Normal file
32
frontend/src/locale/src/HelpDoc/cs/Certificates.md
Normal 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.
|
||||||
10
frontend/src/locale/src/HelpDoc/cs/DeadHosts.md
Normal file
10
frontend/src/locale/src/HelpDoc/cs/DeadHosts.md
Normal 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ů.
|
||||||
7
frontend/src/locale/src/HelpDoc/cs/ProxyHosts.md
Normal file
7
frontend/src/locale/src/HelpDoc/cs/ProxyHosts.md
Normal 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.
|
||||||
7
frontend/src/locale/src/HelpDoc/cs/RedirectionHosts.md
Normal file
7
frontend/src/locale/src/HelpDoc/cs/RedirectionHosts.md
Normal 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.
|
||||||
6
frontend/src/locale/src/HelpDoc/cs/Streams.md
Normal file
6
frontend/src/locale/src/HelpDoc/cs/Streams.md
Normal 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.
|
||||||
6
frontend/src/locale/src/HelpDoc/cs/index.ts
Normal file
6
frontend/src/locale/src/HelpDoc/cs/index.ts
Normal 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";
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
import * as bg from "./bg/index";
|
import * as bg from "./bg/index";
|
||||||
import * as de from "./de/index";
|
import * as de from "./de/index";
|
||||||
|
import * as pt from "./pt/index";
|
||||||
import * as en from "./en/index";
|
import * as en from "./en/index";
|
||||||
import * as es from "./es/index";
|
import * as es from "./es/index";
|
||||||
import * as fr from "./fr/index";
|
import * as fr from "./fr/index";
|
||||||
@@ -12,12 +13,14 @@ 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, 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";
|
||||||
|
|
||||||
|
|||||||
11
frontend/src/locale/src/HelpDoc/pt/AccessLists.md
Normal file
11
frontend/src/locale/src/HelpDoc/pt/AccessLists.md
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
## O que é uma Access List?
|
||||||
|
|
||||||
|
As *Access Lists* fornecem uma lista de permissões (whitelist) ou bloqueios (blacklist)
|
||||||
|
de endereços IP específicos de clientes, juntamente com autenticação para os *Proxy Hosts*
|
||||||
|
via Autenticação HTTP Básica (*Basic Auth*).
|
||||||
|
|
||||||
|
Podes configurar múltiplas regras de cliente, nomes de utilizador e palavras-passe
|
||||||
|
para uma única *Access List*, e depois aplicá-la a um ou mais *Proxy Hosts*.
|
||||||
|
|
||||||
|
Isto é especialmente útil para serviços web encaminhados que não têm mecanismos
|
||||||
|
de autenticação integrados ou quando pretendes proteger o acesso contra clientes desconhecidos.
|
||||||
31
frontend/src/locale/src/HelpDoc/pt/Certificates.md
Normal file
31
frontend/src/locale/src/HelpDoc/pt/Certificates.md
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
## Ajuda de Certificados
|
||||||
|
|
||||||
|
### Certificado HTTP
|
||||||
|
|
||||||
|
Um certificado validado por HTTP significa que os servidores do Let's Encrypt irão
|
||||||
|
tentar aceder aos teus domínios via HTTP (não HTTPS!) e, se a ligação for bem-sucedida,
|
||||||
|
emitirão o certificado.
|
||||||
|
|
||||||
|
Para este método, é necessário ter um *Proxy Host* criado para o(s) teu(s) domínio(s),
|
||||||
|
acessível via HTTP e a apontar para esta instalação do Nginx. Depois de o certificado ser
|
||||||
|
emitido, podes modificar o *Proxy Host* para também utilizar esse certificado em ligações HTTPS.
|
||||||
|
No entanto, o *Proxy Host* deve continuar configurado para acesso HTTP para que a renovação
|
||||||
|
funcione corretamente.
|
||||||
|
|
||||||
|
Este processo **não** suporta domínios wildcard.
|
||||||
|
|
||||||
|
### Certificado DNS
|
||||||
|
|
||||||
|
Um certificado validado por DNS requer que uses um plugin de fornecedor DNS (*DNS Provider*).
|
||||||
|
Este fornecedor será usado para criar registos temporários no teu domínio, que serão consultados
|
||||||
|
pelo Let's Encrypt para confirmar que és o proprietário. Se tudo correr bem, o certificado será emitido.
|
||||||
|
|
||||||
|
Não é necessário ter um *Proxy Host* criado antes de pedir este tipo de certificado.
|
||||||
|
Também não é necessário que o *Proxy Host* tenha acesso HTTP configurado.
|
||||||
|
|
||||||
|
Este processo **suporta** domínios wildcard.
|
||||||
|
|
||||||
|
### Certificado Personalizado
|
||||||
|
|
||||||
|
Usa esta opção para carregar o teu próprio Certificado SSL, fornecido pela
|
||||||
|
tua Autoridade Certificadora.
|
||||||
9
frontend/src/locale/src/HelpDoc/pt/DeadHosts.md
Normal file
9
frontend/src/locale/src/HelpDoc/pt/DeadHosts.md
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
## O que é um 404 Host?
|
||||||
|
|
||||||
|
Um *404 Host* é simplesmente um host configurado para apresentar uma página 404.
|
||||||
|
|
||||||
|
Isto pode ser útil quando o teu domínio aparece em motores de busca e queres fornecer
|
||||||
|
uma página de erro mais agradável ou indicar especificamente aos indexadores de pesquisa
|
||||||
|
que as páginas desse domínio já não existem.
|
||||||
|
|
||||||
|
Outra vantagem é permitir consultar os registos de acessos a este host e ver os referenciadores.
|
||||||
7
frontend/src/locale/src/HelpDoc/pt/ProxyHosts.md
Normal file
7
frontend/src/locale/src/HelpDoc/pt/ProxyHosts.md
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
## O que é um Proxy Host?
|
||||||
|
|
||||||
|
Um *Proxy Host* é o ponto de entrada para um serviço web que pretendes encaminhar.
|
||||||
|
|
||||||
|
Permite, opcionalmente, fazer terminação SSL para um serviço que possa não ter suporte SSL nativo.
|
||||||
|
|
||||||
|
Os *Proxy Hosts* são a utilização mais comum do Nginx Proxy Manager.
|
||||||
7
frontend/src/locale/src/HelpDoc/pt/RedirectionHosts.md
Normal file
7
frontend/src/locale/src/HelpDoc/pt/RedirectionHosts.md
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
## O que é um Redirection Host?
|
||||||
|
|
||||||
|
Um *Redirection Host* redireciona pedidos recebidos no domínio de entrada e envia
|
||||||
|
o utilizador para outro domínio.
|
||||||
|
|
||||||
|
A razão mais comum para usar este tipo de host é quando o teu site muda de domínio
|
||||||
|
mas ainda tens motores de busca ou links de referência a apontar para o domínio antigo.
|
||||||
6
frontend/src/locale/src/HelpDoc/pt/Streams.md
Normal file
6
frontend/src/locale/src/HelpDoc/pt/Streams.md
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
## O que é um Stream?
|
||||||
|
|
||||||
|
Uma funcionalidade relativamente recente no Nginx, um *Stream* serve para encaminhar
|
||||||
|
tráfego TCP/UDP diretamente para outro computador na rede.
|
||||||
|
|
||||||
|
Se estiveres a executar servidores de jogos, FTP ou SSH, isto pode ser bastante útil.
|
||||||
6
frontend/src/locale/src/HelpDoc/pt/index.ts
Normal file
6
frontend/src/locale/src/HelpDoc/pt/index.ts
Normal 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";
|
||||||
770
frontend/src/locale/src/cs.json
Normal file
770
frontend/src/locale/src/cs.json
Normal 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é"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -11,6 +11,9 @@
|
|||||||
"locale-de-DE": {
|
"locale-de-DE": {
|
||||||
"defaultMessage": "German"
|
"defaultMessage": "German"
|
||||||
},
|
},
|
||||||
|
"locale-pt-PT": {
|
||||||
|
"defaultMessage": "Português (Europeu)"
|
||||||
|
},
|
||||||
"locale-fr-FR": {
|
"locale-fr-FR": {
|
||||||
"defaultMessage": "Français"
|
"defaultMessage": "Français"
|
||||||
},
|
},
|
||||||
@@ -26,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": "中文"
|
||||||
},
|
},
|
||||||
|
|||||||
683
frontend/src/locale/src/pt.json
Normal file
683
frontend/src/locale/src/pt.json
Normal file
@@ -0,0 +1,683 @@
|
|||||||
|
{
|
||||||
|
"access-list": {
|
||||||
|
"defaultMessage": "Lista de Controlo de Acesso (ACL)"
|
||||||
|
},
|
||||||
|
"access-list.access-count": {
|
||||||
|
"defaultMessage": "{count} {count, plural, one {Regra} other {Regras}}"
|
||||||
|
},
|
||||||
|
"access-list.auth-count": {
|
||||||
|
"defaultMessage": "{count} {count, plural, one {Utilizador} other {Utilizadores}}"
|
||||||
|
},
|
||||||
|
"access-list.help-rules-last": {
|
||||||
|
"defaultMessage": "Quando existir pelo menos 1 regra, esta regra de negação geral será aplicada em último lugar"
|
||||||
|
},
|
||||||
|
"access-list.help.rules-order": {
|
||||||
|
"defaultMessage": "Nota: as diretivas allow e deny são aplicadas pela ordem em que forem definidas."
|
||||||
|
},
|
||||||
|
"access-list.pass-auth": {
|
||||||
|
"defaultMessage": "Passar Autenticação para o Upstream"
|
||||||
|
},
|
||||||
|
"access-list.public": {
|
||||||
|
"defaultMessage": "Acesso Público"
|
||||||
|
},
|
||||||
|
"access-list.public.subtitle": {
|
||||||
|
"defaultMessage": "Sem autenticação básica"
|
||||||
|
},
|
||||||
|
"access-list.rule-source.placeholder": {
|
||||||
|
"defaultMessage": "192.168.1.100 ou 192.168.1.0/24 ou 2001:0db8::/32"
|
||||||
|
},
|
||||||
|
"access-list.satisfy-any": {
|
||||||
|
"defaultMessage": "Satisfazer Qualquer"
|
||||||
|
},
|
||||||
|
"access-list.subtitle": {
|
||||||
|
"defaultMessage": "{users} {users, plural, one {Utilizador} other {Utilizadores}}, {rules} {rules, plural, one {Regra} other {Regras}} – Criado em: {date}"
|
||||||
|
},
|
||||||
|
"access-lists": {
|
||||||
|
"defaultMessage": "Listas de Controlo de Acesso (ACL)"
|
||||||
|
},
|
||||||
|
"action.add": {
|
||||||
|
"defaultMessage": "Adicionar"
|
||||||
|
},
|
||||||
|
"action.add-location": {
|
||||||
|
"defaultMessage": "Adicionar Location"
|
||||||
|
},
|
||||||
|
"action.allow": {
|
||||||
|
"defaultMessage": "Permitir"
|
||||||
|
},
|
||||||
|
"action.close": {
|
||||||
|
"defaultMessage": "Fechar"
|
||||||
|
},
|
||||||
|
"action.delete": {
|
||||||
|
"defaultMessage": "Eliminar"
|
||||||
|
},
|
||||||
|
"action.deny": {
|
||||||
|
"defaultMessage": "Negar"
|
||||||
|
},
|
||||||
|
"action.disable": {
|
||||||
|
"defaultMessage": "Desativar"
|
||||||
|
},
|
||||||
|
"action.download": {
|
||||||
|
"defaultMessage": "Descarregar"
|
||||||
|
},
|
||||||
|
"action.edit": {
|
||||||
|
"defaultMessage": "Editar"
|
||||||
|
},
|
||||||
|
"action.enable": {
|
||||||
|
"defaultMessage": "Ativar"
|
||||||
|
},
|
||||||
|
"action.permissions": {
|
||||||
|
"defaultMessage": "Permissões"
|
||||||
|
},
|
||||||
|
"action.renew": {
|
||||||
|
"defaultMessage": "Renovar"
|
||||||
|
},
|
||||||
|
"action.view-details": {
|
||||||
|
"defaultMessage": "Ver Detalhes"
|
||||||
|
},
|
||||||
|
"auditlogs": {
|
||||||
|
"defaultMessage": "Registos de Auditoria"
|
||||||
|
},
|
||||||
|
"auto": {
|
||||||
|
"defaultMessage": "Automático"
|
||||||
|
},
|
||||||
|
"cancel": {
|
||||||
|
"defaultMessage": "Cancelar"
|
||||||
|
},
|
||||||
|
"certificate": {
|
||||||
|
"defaultMessage": "Certificado"
|
||||||
|
},
|
||||||
|
"certificate.custom-certificate": {
|
||||||
|
"defaultMessage": "Certificado Personalizado"
|
||||||
|
},
|
||||||
|
"certificate.custom-certificate-key": {
|
||||||
|
"defaultMessage": "Chave do Certificado"
|
||||||
|
},
|
||||||
|
"certificate.custom-intermediate": {
|
||||||
|
"defaultMessage": "Certificado Intermédio"
|
||||||
|
},
|
||||||
|
"certificate.in-use": {
|
||||||
|
"defaultMessage": "Em Utilização"
|
||||||
|
},
|
||||||
|
"certificate.none.subtitle": {
|
||||||
|
"defaultMessage": "Nenhum certificado atribuído"
|
||||||
|
},
|
||||||
|
"certificate.none.subtitle.for-http": {
|
||||||
|
"defaultMessage": "Este host não irá utilizar HTTPS"
|
||||||
|
},
|
||||||
|
"certificate.none.title": {
|
||||||
|
"defaultMessage": "Nenhum"
|
||||||
|
},
|
||||||
|
"certificate.not-in-use": {
|
||||||
|
"defaultMessage": "Não Utilizado"
|
||||||
|
},
|
||||||
|
"certificate.renew": {
|
||||||
|
"defaultMessage": "Renovar Certificado"
|
||||||
|
},
|
||||||
|
"certificates": {
|
||||||
|
"defaultMessage": "Certificados"
|
||||||
|
},
|
||||||
|
"certificates.custom": {
|
||||||
|
"defaultMessage": "Certificado Personalizado"
|
||||||
|
},
|
||||||
|
"certificates.custom.warning": {
|
||||||
|
"defaultMessage": "Ficheiros de chave protegidos por palavra-passe não são suportados."
|
||||||
|
},
|
||||||
|
"certificates.dns.credentials": {
|
||||||
|
"defaultMessage": "Conteúdo do Ficheiro de Credenciais"
|
||||||
|
},
|
||||||
|
"certificates.dns.credentials-note": {
|
||||||
|
"defaultMessage": "Este plugin requer um ficheiro de configuração contendo um token API ou outras credenciais do fornecedor DNS."
|
||||||
|
},
|
||||||
|
"certificates.dns.credentials-warning": {
|
||||||
|
"defaultMessage": "Estes dados serão guardados em texto simples na base de dados e num ficheiro!"
|
||||||
|
},
|
||||||
|
"certificates.dns.propagation-seconds": {
|
||||||
|
"defaultMessage": "Segundos de Propagação"
|
||||||
|
},
|
||||||
|
"certificates.dns.propagation-seconds-note": {
|
||||||
|
"defaultMessage": "Deixe em branco para usar o valor predefinido do plugin. Número de segundos a aguardar pela propagação DNS."
|
||||||
|
},
|
||||||
|
"certificates.dns.provider": {
|
||||||
|
"defaultMessage": "Fornecedor DNS"
|
||||||
|
},
|
||||||
|
"certificates.dns.provider.placeholder": {
|
||||||
|
"defaultMessage": "Selecionar fornecedor..."
|
||||||
|
},
|
||||||
|
"certificates.dns.warning": {
|
||||||
|
"defaultMessage": "Esta secção requer conhecimentos sobre o Certbot e os seus plugins DNS. Consulte a documentação dos plugins."
|
||||||
|
},
|
||||||
|
"certificates.http.reachability-404": {
|
||||||
|
"defaultMessage": "Foi encontrado um servidor neste domínio, mas não parece ser o Nginx Proxy Manager. Certifique-se de que o domínio aponta para o IP onde a sua instância está a correr."
|
||||||
|
},
|
||||||
|
"certificates.http.reachability-failed-to-check": {
|
||||||
|
"defaultMessage": "Falha ao verificar acessibilidade devido a um erro de comunicação com site24x7.com."
|
||||||
|
},
|
||||||
|
"certificates.http.reachability-not-resolved": {
|
||||||
|
"defaultMessage": "Não existe nenhum servidor acessível neste domínio. Certifique-se de que o domínio existe, aponta para o IP correto e que a porta 80 está encaminhada no seu router."
|
||||||
|
},
|
||||||
|
"certificates.http.reachability-ok": {
|
||||||
|
"defaultMessage": "O servidor está acessível e a criação de certificados deverá ser possível."
|
||||||
|
},
|
||||||
|
"certificates.http.reachability-other": {
|
||||||
|
"defaultMessage": "Foi encontrado um servidor neste domínio, mas devolveu um código inesperado ({code}). Será o servidor NPM? Confirme que o domínio aponta para o IP correto."
|
||||||
|
},
|
||||||
|
"certificates.http.reachability-wrong-data": {
|
||||||
|
"defaultMessage": "Foi encontrado um servidor neste domínio, mas devolveu dados inesperados. Será o servidor NPM? Confirme que o domínio aponta para o IP correto."
|
||||||
|
},
|
||||||
|
"certificates.http.test-results": {
|
||||||
|
"defaultMessage": "Resultados do Teste"
|
||||||
|
},
|
||||||
|
"certificates.http.warning": {
|
||||||
|
"defaultMessage": "Estes domínios devem já estar configurados para apontar para esta instalação."
|
||||||
|
},
|
||||||
|
"certificates.request.subtitle": {
|
||||||
|
"defaultMessage": "com o Let's Encrypt"
|
||||||
|
},
|
||||||
|
"certificates.request.title": {
|
||||||
|
"defaultMessage": "Pedir Novo Certificado"
|
||||||
|
},
|
||||||
|
"column.access": {
|
||||||
|
"defaultMessage": "Acesso"
|
||||||
|
},
|
||||||
|
"column.authorization": {
|
||||||
|
"defaultMessage": "Autorização"
|
||||||
|
},
|
||||||
|
"column.authorizations": {
|
||||||
|
"defaultMessage": "Autorizações"
|
||||||
|
},
|
||||||
|
"column.custom-locations": {
|
||||||
|
"defaultMessage": "Locations Personalizados"
|
||||||
|
},
|
||||||
|
"column.destination": {
|
||||||
|
"defaultMessage": "Destino"
|
||||||
|
},
|
||||||
|
"column.details": {
|
||||||
|
"defaultMessage": "Detalhes"
|
||||||
|
},
|
||||||
|
"column.email": {
|
||||||
|
"defaultMessage": "Email"
|
||||||
|
},
|
||||||
|
"column.event": {
|
||||||
|
"defaultMessage": "Evento"
|
||||||
|
},
|
||||||
|
"column.expires": {
|
||||||
|
"defaultMessage": "Expira"
|
||||||
|
},
|
||||||
|
"column.http-code": {
|
||||||
|
"defaultMessage": "Código HTTP"
|
||||||
|
},
|
||||||
|
"column.incoming-port": {
|
||||||
|
"defaultMessage": "Porta de Entrada"
|
||||||
|
},
|
||||||
|
"column.name": {
|
||||||
|
"defaultMessage": "Nome"
|
||||||
|
},
|
||||||
|
"column.protocol": {
|
||||||
|
"defaultMessage": "Protocolo"
|
||||||
|
},
|
||||||
|
"column.provider": {
|
||||||
|
"defaultMessage": "Fornecedor"
|
||||||
|
},
|
||||||
|
"column.roles": {
|
||||||
|
"defaultMessage": "Funções"
|
||||||
|
},
|
||||||
|
"column.rules": {
|
||||||
|
"defaultMessage": "Regras"
|
||||||
|
},
|
||||||
|
"column.satisfy": {
|
||||||
|
"defaultMessage": "Satisfazer"
|
||||||
|
},
|
||||||
|
"column.satisfy-all": {
|
||||||
|
"defaultMessage": "Todos"
|
||||||
|
},
|
||||||
|
"column.satisfy-any": {
|
||||||
|
"defaultMessage": "Qualquer"
|
||||||
|
},
|
||||||
|
"column.scheme": {
|
||||||
|
"defaultMessage": "Esquema"
|
||||||
|
},
|
||||||
|
"column.source": {
|
||||||
|
"defaultMessage": "Origem"
|
||||||
|
},
|
||||||
|
"column.ssl": {
|
||||||
|
"defaultMessage": "SSL"
|
||||||
|
},
|
||||||
|
"column.status": {
|
||||||
|
"defaultMessage": "Estado"
|
||||||
|
},
|
||||||
|
"created-on": {
|
||||||
|
"defaultMessage": "Criado em: {date}"
|
||||||
|
},
|
||||||
|
"dashboard": {
|
||||||
|
"defaultMessage": "Painel"
|
||||||
|
},
|
||||||
|
"dead-host": {
|
||||||
|
"defaultMessage": "Host 404"
|
||||||
|
},
|
||||||
|
"dead-hosts": {
|
||||||
|
"defaultMessage": "Hosts 404"
|
||||||
|
},
|
||||||
|
"dead-hosts.count": {
|
||||||
|
"defaultMessage": "{count} {count, plural, one {Host 404} other {Hosts 404}}"
|
||||||
|
},
|
||||||
|
"disabled": {
|
||||||
|
"defaultMessage": "Desativado"
|
||||||
|
},
|
||||||
|
"domain-names": {
|
||||||
|
"defaultMessage": "Nomes de Domínio"
|
||||||
|
},
|
||||||
|
"domain-names.max": {
|
||||||
|
"defaultMessage": "Máximo de {count} domínios"
|
||||||
|
},
|
||||||
|
"domain-names.placeholder": {
|
||||||
|
"defaultMessage": "Comece a escrever para adicionar um domínio..."
|
||||||
|
},
|
||||||
|
"domain-names.wildcards-not-permitted": {
|
||||||
|
"defaultMessage": "Wildcards não permitidos para este tipo"
|
||||||
|
},
|
||||||
|
"domain-names.wildcards-not-supported": {
|
||||||
|
"defaultMessage": "Wildcards não suportados por esta AC"
|
||||||
|
},
|
||||||
|
"domains.force-ssl": {
|
||||||
|
"defaultMessage": "Forçar SSL"
|
||||||
|
},
|
||||||
|
"domains.hsts-enabled": {
|
||||||
|
"defaultMessage": "HSTS Ativado"
|
||||||
|
},
|
||||||
|
"domains.hsts-subdomains": {
|
||||||
|
"defaultMessage": "HSTS para Subdomínios"
|
||||||
|
},
|
||||||
|
"domains.http2-support": {
|
||||||
|
"defaultMessage": "Suporte HTTP/2"
|
||||||
|
},
|
||||||
|
"domains.use-dns": {
|
||||||
|
"defaultMessage": "Utilizar DNS Challenge"
|
||||||
|
},
|
||||||
|
"email-address": {
|
||||||
|
"defaultMessage": "Endereço de Email"
|
||||||
|
},
|
||||||
|
"empty-search": {
|
||||||
|
"defaultMessage": "Nenhum resultado encontrado"
|
||||||
|
},
|
||||||
|
"empty-subtitle": {
|
||||||
|
"defaultMessage": "Porque não cria um?"
|
||||||
|
},
|
||||||
|
"enabled": {
|
||||||
|
"defaultMessage": "Ativado"
|
||||||
|
},
|
||||||
|
"error.access.at-least-one": {
|
||||||
|
"defaultMessage": "É necessária pelo menos uma Autorização ou uma Regra de Acesso"
|
||||||
|
},
|
||||||
|
"error.access.duplicate-usernames": {
|
||||||
|
"defaultMessage": "Os nomes de utilizador de autorização devem ser únicos"
|
||||||
|
},
|
||||||
|
"error.invalid-auth": {
|
||||||
|
"defaultMessage": "Email ou palavra-passe inválidos"
|
||||||
|
},
|
||||||
|
"error.invalid-domain": {
|
||||||
|
"defaultMessage": "Domínio inválido: {domain}"
|
||||||
|
},
|
||||||
|
"error.invalid-email": {
|
||||||
|
"defaultMessage": "Endereço de email inválido"
|
||||||
|
},
|
||||||
|
"error.max-character-length": {
|
||||||
|
"defaultMessage": "Tamanho máximo: {max} caractere{max, plural, one {} other {s}}"
|
||||||
|
},
|
||||||
|
"error.max-domains": {
|
||||||
|
"defaultMessage": "Demasiados domínios; o máximo é {max}"
|
||||||
|
},
|
||||||
|
"error.maximum": {
|
||||||
|
"defaultMessage": "Máximo permitido: {max}"
|
||||||
|
},
|
||||||
|
"error.min-character-length": {
|
||||||
|
"defaultMessage": "Tamanho mínimo: {min} caractere{min, plural, one {} other {s}}"
|
||||||
|
},
|
||||||
|
"error.minimum": {
|
||||||
|
"defaultMessage": "Mínimo permitido: {min}"
|
||||||
|
},
|
||||||
|
"error.passwords-must-match": {
|
||||||
|
"defaultMessage": "As palavras-passe têm de coincidir"
|
||||||
|
},
|
||||||
|
"error.required": {
|
||||||
|
"defaultMessage": "Campo obrigatório"
|
||||||
|
},
|
||||||
|
"expires.on": {
|
||||||
|
"defaultMessage": "Expira em: {date}"
|
||||||
|
},
|
||||||
|
"footer.github-fork": {
|
||||||
|
"defaultMessage": "Faz fork no GitHub"
|
||||||
|
},
|
||||||
|
"host.flags.block-exploits": {
|
||||||
|
"defaultMessage": "Bloquear Exploits Comuns"
|
||||||
|
},
|
||||||
|
"host.flags.cache-assets": {
|
||||||
|
"defaultMessage": "Cache de Conteúdos Estáticos"
|
||||||
|
},
|
||||||
|
"host.flags.preserve-path": {
|
||||||
|
"defaultMessage": "Preservar Caminho"
|
||||||
|
},
|
||||||
|
"host.flags.protocols": {
|
||||||
|
"defaultMessage": "Protocolos"
|
||||||
|
},
|
||||||
|
"host.flags.websockets-upgrade": {
|
||||||
|
"defaultMessage": "Suporte para WebSockets"
|
||||||
|
},
|
||||||
|
"host.forward-port": {
|
||||||
|
"defaultMessage": "Porta de Encaminhamento"
|
||||||
|
},
|
||||||
|
"host.forward-scheme": {
|
||||||
|
"defaultMessage": "Esquema"
|
||||||
|
},
|
||||||
|
"hosts": {
|
||||||
|
"defaultMessage": "Hosts"
|
||||||
|
},
|
||||||
|
"http-only": {
|
||||||
|
"defaultMessage": "Apenas HTTP"
|
||||||
|
},
|
||||||
|
"lets-encrypt": {
|
||||||
|
"defaultMessage": "Let's Encrypt"
|
||||||
|
},
|
||||||
|
"lets-encrypt-via-dns": {
|
||||||
|
"defaultMessage": "Let's Encrypt via DNS"
|
||||||
|
},
|
||||||
|
"lets-encrypt-via-http": {
|
||||||
|
"defaultMessage": "Let's Encrypt via HTTP"
|
||||||
|
},
|
||||||
|
"loading": {
|
||||||
|
"defaultMessage": "A carregar…"
|
||||||
|
},
|
||||||
|
"login.title": {
|
||||||
|
"defaultMessage": "Iniciar sessão na sua conta"
|
||||||
|
},
|
||||||
|
"nginx-config.label": {
|
||||||
|
"defaultMessage": "Configuração Nginx Personalizada"
|
||||||
|
},
|
||||||
|
"nginx-config.placeholder": {
|
||||||
|
"defaultMessage": "# Insira aqui a sua configuração Nginx personalizada (utilize por sua conta e risco!)"
|
||||||
|
},
|
||||||
|
"no-permission-error": {
|
||||||
|
"defaultMessage": "Não tem permissões para ver esta página."
|
||||||
|
},
|
||||||
|
"notfound.action": {
|
||||||
|
"defaultMessage": "Voltar à página inicial"
|
||||||
|
},
|
||||||
|
"notfound.content": {
|
||||||
|
"defaultMessage": "A página que procura não foi encontrada."
|
||||||
|
},
|
||||||
|
"notfound.title": {
|
||||||
|
"defaultMessage": "Oops… Encontrou uma página de erro"
|
||||||
|
},
|
||||||
|
"notification.error": {
|
||||||
|
"defaultMessage": "Erro"
|
||||||
|
},
|
||||||
|
"notification.object-deleted": {
|
||||||
|
"defaultMessage": "{object} foi eliminado"
|
||||||
|
},
|
||||||
|
"notification.object-disabled": {
|
||||||
|
"defaultMessage": "{object} foi desativado"
|
||||||
|
},
|
||||||
|
"notification.object-enabled": {
|
||||||
|
"defaultMessage": "{object} foi ativado"
|
||||||
|
},
|
||||||
|
"notification.object-renewed": {
|
||||||
|
"defaultMessage": "{object} foi renovado"
|
||||||
|
},
|
||||||
|
"notification.object-saved": {
|
||||||
|
"defaultMessage": "{object} foi guardado"
|
||||||
|
},
|
||||||
|
"notification.success": {
|
||||||
|
"defaultMessage": "Sucesso"
|
||||||
|
},
|
||||||
|
"object.actions-title": {
|
||||||
|
"defaultMessage": "{object} #{id}"
|
||||||
|
},
|
||||||
|
"object.add": {
|
||||||
|
"defaultMessage": "Adicionar {object}"
|
||||||
|
},
|
||||||
|
"object.delete": {
|
||||||
|
"defaultMessage": "Eliminar {object}"
|
||||||
|
},
|
||||||
|
"object.delete.content": {
|
||||||
|
"defaultMessage": "Tem a certeza de que deseja eliminar este {object}?"
|
||||||
|
},
|
||||||
|
"object.edit": {
|
||||||
|
"defaultMessage": "Editar {object}"
|
||||||
|
},
|
||||||
|
"object.empty": {
|
||||||
|
"defaultMessage": "Não existem {objects}"
|
||||||
|
},
|
||||||
|
"object.event.created": {
|
||||||
|
"defaultMessage": "{object} criado"
|
||||||
|
},
|
||||||
|
"object.event.deleted": {
|
||||||
|
"defaultMessage": "{object} eliminado"
|
||||||
|
},
|
||||||
|
"object.event.disabled": {
|
||||||
|
"defaultMessage": "{object} desativado"
|
||||||
|
},
|
||||||
|
"object.event.enabled": {
|
||||||
|
"defaultMessage": "{object} ativado"
|
||||||
|
},
|
||||||
|
"object.event.renewed": {
|
||||||
|
"defaultMessage": "{object} renovado"
|
||||||
|
},
|
||||||
|
"object.event.updated": {
|
||||||
|
"defaultMessage": "{object} atualizado"
|
||||||
|
},
|
||||||
|
"offline": {
|
||||||
|
"defaultMessage": "Offline"
|
||||||
|
},
|
||||||
|
"online": {
|
||||||
|
"defaultMessage": "Online"
|
||||||
|
},
|
||||||
|
"options": {
|
||||||
|
"defaultMessage": "Opções"
|
||||||
|
},
|
||||||
|
"password": {
|
||||||
|
"defaultMessage": "Palavra-passe"
|
||||||
|
},
|
||||||
|
"password.generate": {
|
||||||
|
"defaultMessage": "Gerar palavra-passe aleatória"
|
||||||
|
},
|
||||||
|
"password.hide": {
|
||||||
|
"defaultMessage": "Esconder Palavra-passe"
|
||||||
|
},
|
||||||
|
"password.show": {
|
||||||
|
"defaultMessage": "Mostrar Palavra-passe"
|
||||||
|
},
|
||||||
|
"permissions.hidden": {
|
||||||
|
"defaultMessage": "Oculto"
|
||||||
|
},
|
||||||
|
"permissions.manage": {
|
||||||
|
"defaultMessage": "Gerir"
|
||||||
|
},
|
||||||
|
"permissions.view": {
|
||||||
|
"defaultMessage": "Apenas Visualização"
|
||||||
|
},
|
||||||
|
"permissions.visibility.all": {
|
||||||
|
"defaultMessage": "Todos os Itens"
|
||||||
|
},
|
||||||
|
"permissions.visibility.title": {
|
||||||
|
"defaultMessage": "Visibilidade do Item"
|
||||||
|
},
|
||||||
|
"permissions.visibility.user": {
|
||||||
|
"defaultMessage": "Apenas Itens Criados"
|
||||||
|
},
|
||||||
|
"proxy-host": {
|
||||||
|
"defaultMessage": "Proxy Host"
|
||||||
|
},
|
||||||
|
"proxy-host.forward-host": {
|
||||||
|
"defaultMessage": "Hostname/IP de Encaminhamento"
|
||||||
|
},
|
||||||
|
"proxy-hosts": {
|
||||||
|
"defaultMessage": "Proxy Hosts"
|
||||||
|
},
|
||||||
|
"proxy-hosts.count": {
|
||||||
|
"defaultMessage": "{count} {count, plural, one {Proxy Host} other {Proxy Hosts}}"
|
||||||
|
},
|
||||||
|
"public": {
|
||||||
|
"defaultMessage": "Público"
|
||||||
|
},
|
||||||
|
"redirection-host": {
|
||||||
|
"defaultMessage": "Host de Redirecionamento"
|
||||||
|
},
|
||||||
|
"redirection-host.forward-domain": {
|
||||||
|
"defaultMessage": "Domínio de Destino"
|
||||||
|
},
|
||||||
|
"redirection-host.forward-http-code": {
|
||||||
|
"defaultMessage": "Código HTTP"
|
||||||
|
},
|
||||||
|
"redirection-hosts": {
|
||||||
|
"defaultMessage": "Hosts de Redirecionamento"
|
||||||
|
},
|
||||||
|
"redirection-hosts.count": {
|
||||||
|
"defaultMessage": "{count} {count, plural, one {Host de Redirecionamento} other {Hosts de Redirecionamento}}"
|
||||||
|
},
|
||||||
|
"redirection-hosts.http-code.300": {
|
||||||
|
"defaultMessage": "300 Múltiplas Escolhas"
|
||||||
|
},
|
||||||
|
"redirection-hosts.http-code.301": {
|
||||||
|
"defaultMessage": "301 Movido Permanentemente"
|
||||||
|
},
|
||||||
|
"redirection-hosts.http-code.302": {
|
||||||
|
"defaultMessage": "302 Movido Temporariamente"
|
||||||
|
},
|
||||||
|
"redirection-hosts.http-code.303": {
|
||||||
|
"defaultMessage": "303 Ver Outro"
|
||||||
|
},
|
||||||
|
"redirection-hosts.http-code.307": {
|
||||||
|
"defaultMessage": "307 Redirecionamento Temporário"
|
||||||
|
},
|
||||||
|
"redirection-hosts.http-code.308": {
|
||||||
|
"defaultMessage": "308 Redirecionamento Permanente"
|
||||||
|
},
|
||||||
|
"role.admin": {
|
||||||
|
"defaultMessage": "Administrador"
|
||||||
|
},
|
||||||
|
"role.standard-user": {
|
||||||
|
"defaultMessage": "Utilizador Comum"
|
||||||
|
},
|
||||||
|
"save": {
|
||||||
|
"defaultMessage": "Guardar"
|
||||||
|
},
|
||||||
|
"setting": {
|
||||||
|
"defaultMessage": "Definição"
|
||||||
|
},
|
||||||
|
"settings": {
|
||||||
|
"defaultMessage": "Definições"
|
||||||
|
},
|
||||||
|
"settings.default-site": {
|
||||||
|
"defaultMessage": "Site Predefinido"
|
||||||
|
},
|
||||||
|
"settings.default-site.404": {
|
||||||
|
"defaultMessage": "Página 404"
|
||||||
|
},
|
||||||
|
"settings.default-site.444": {
|
||||||
|
"defaultMessage": "Sem Resposta (444)"
|
||||||
|
},
|
||||||
|
"settings.default-site.congratulations": {
|
||||||
|
"defaultMessage": "Página de Boas-vindas"
|
||||||
|
},
|
||||||
|
"settings.default-site.description": {
|
||||||
|
"defaultMessage": "O que apresentar quando o Nginx recebe um Host desconhecido"
|
||||||
|
},
|
||||||
|
"settings.default-site.html": {
|
||||||
|
"defaultMessage": "HTML Personalizado"
|
||||||
|
},
|
||||||
|
"settings.default-site.html.placeholder": {
|
||||||
|
"defaultMessage": "<!-- Insira aqui o seu conteúdo HTML personalizado -->"
|
||||||
|
},
|
||||||
|
"settings.default-site.redirect": {
|
||||||
|
"defaultMessage": "Redirecionar"
|
||||||
|
},
|
||||||
|
"setup.preamble": {
|
||||||
|
"defaultMessage": "Comece por criar a sua conta de administrador."
|
||||||
|
},
|
||||||
|
"setup.title": {
|
||||||
|
"defaultMessage": "Bem-vindo!"
|
||||||
|
},
|
||||||
|
"sign-in": {
|
||||||
|
"defaultMessage": "Iniciar Sessão"
|
||||||
|
},
|
||||||
|
"ssl-certificate": {
|
||||||
|
"defaultMessage": "Certificado SSL"
|
||||||
|
},
|
||||||
|
"stream": {
|
||||||
|
"defaultMessage": "Stream"
|
||||||
|
},
|
||||||
|
"stream.forward-host": {
|
||||||
|
"defaultMessage": "Host de Destino"
|
||||||
|
},
|
||||||
|
"stream.forward-host.placeholder": {
|
||||||
|
"defaultMessage": "example.com ou 10.0.0.1 ou 2001:db8:3333:4444:5555:6666:7777:8888"
|
||||||
|
},
|
||||||
|
"stream.incoming-port": {
|
||||||
|
"defaultMessage": "Porta de Entrada"
|
||||||
|
},
|
||||||
|
"streams": {
|
||||||
|
"defaultMessage": "Streams"
|
||||||
|
},
|
||||||
|
"streams.count": {
|
||||||
|
"defaultMessage": "{count} {count, plural, one {Stream} other {Streams}}"
|
||||||
|
},
|
||||||
|
"streams.tcp": {
|
||||||
|
"defaultMessage": "TCP"
|
||||||
|
},
|
||||||
|
"streams.udp": {
|
||||||
|
"defaultMessage": "UDP"
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"defaultMessage": "Testar"
|
||||||
|
},
|
||||||
|
"update-available": {
|
||||||
|
"defaultMessage": "Atualização Disponível: {latestVersion}"
|
||||||
|
},
|
||||||
|
"user": {
|
||||||
|
"defaultMessage": "Utilizador"
|
||||||
|
},
|
||||||
|
"user.change-password": {
|
||||||
|
"defaultMessage": "Alterar Palavra-passe"
|
||||||
|
},
|
||||||
|
"user.confirm-password": {
|
||||||
|
"defaultMessage": "Confirmar Palavra-passe"
|
||||||
|
},
|
||||||
|
"user.current-password": {
|
||||||
|
"defaultMessage": "Palavra-passe Atual"
|
||||||
|
},
|
||||||
|
"user.edit-profile": {
|
||||||
|
"defaultMessage": "Editar Perfil"
|
||||||
|
},
|
||||||
|
"user.full-name": {
|
||||||
|
"defaultMessage": "Nome Completo"
|
||||||
|
},
|
||||||
|
"user.login-as": {
|
||||||
|
"defaultMessage": "Iniciar sessão como {name}"
|
||||||
|
},
|
||||||
|
"user.logout": {
|
||||||
|
"defaultMessage": "Terminar Sessão"
|
||||||
|
},
|
||||||
|
"user.new-password": {
|
||||||
|
"defaultMessage": "Nova Palavra-passe"
|
||||||
|
},
|
||||||
|
"user.nickname": {
|
||||||
|
"defaultMessage": "Alcunha"
|
||||||
|
},
|
||||||
|
"user.set-password": {
|
||||||
|
"defaultMessage": "Definir Palavra-passe"
|
||||||
|
},
|
||||||
|
"user.set-permissions": {
|
||||||
|
"defaultMessage": "Definir Permissões para {name}"
|
||||||
|
},
|
||||||
|
"user.switch-dark": {
|
||||||
|
"defaultMessage": "Ativar Modo Escuro"
|
||||||
|
},
|
||||||
|
"user.switch-light": {
|
||||||
|
"defaultMessage": "Ativar Modo Claro"
|
||||||
|
},
|
||||||
|
"username": {
|
||||||
|
"defaultMessage": "Nome de Utilizador"
|
||||||
|
},
|
||||||
|
"users": {
|
||||||
|
"defaultMessage": "Utilizadores"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -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验证"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -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 />
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ const RenewCertificateModal = EasyModal.create(({ id, visible, remove }: Props)
|
|||||||
.finally(() => {
|
.finally(() => {
|
||||||
setIsSubmitting(false);
|
setIsSubmitting(false);
|
||||||
});
|
});
|
||||||
}, [id, data, isFresh, isSubmitting, remove, queryClient.invalidateQueries]);
|
}, [id, data, isFresh, isSubmitting, remove, queryClient]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Modal show={visible} onHide={isSubmitting ? undefined : remove}>
|
<Modal show={visible} onHide={isSubmitting ? undefined : remove}>
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -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 \
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
FROM cypress/included:14.0.1
|
FROM cypress/included:15.9.0
|
||||||
|
|
||||||
# Disable Cypress CLI colors
|
# Disable Cypress CLI colors
|
||||||
ENV FORCE_COLOR=0
|
ENV FORCE_COLOR=0
|
||||||
|
|||||||
@@ -24,10 +24,10 @@ describe('Streams', () => {
|
|||||||
|
|
||||||
// Create a custom cert pair
|
// Create a custom cert pair
|
||||||
cy.exec('mkcert -cert-file=/test/cypress/fixtures/website1.pem -key-file=/test/cypress/fixtures/website1.key.pem website1.example.com').then((result) => {
|
cy.exec('mkcert -cert-file=/test/cypress/fixtures/website1.pem -key-file=/test/cypress/fixtures/website1.key.pem website1.example.com').then((result) => {
|
||||||
expect(result.code).to.eq(0);
|
expect(result.exitCode).to.eq(0);
|
||||||
// Install CA
|
// Install CA
|
||||||
cy.exec('mkcert -install').then((result) => {
|
cy.exec('mkcert -install').then((result) => {
|
||||||
expect(result.code).to.eq(0);
|
expect(result.exitCode).to.eq(0);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -56,7 +56,7 @@ describe('Streams', () => {
|
|||||||
expect(data).to.have.property('udp_forwarding', false);
|
expect(data).to.have.property('udp_forwarding', false);
|
||||||
|
|
||||||
cy.exec('curl --noproxy -- http://website1.example.com:1500').then((result) => {
|
cy.exec('curl --noproxy -- http://website1.example.com:1500').then((result) => {
|
||||||
expect(result.code).to.eq(0);
|
expect(result.exitCode).to.eq(0);
|
||||||
expect(result.stdout).to.contain('yay it works');
|
expect(result.stdout).to.contain('yay it works');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -107,7 +107,7 @@ describe('Streams', () => {
|
|||||||
expect(data).to.have.property('udp_forwarding', true);
|
expect(data).to.have.property('udp_forwarding', true);
|
||||||
|
|
||||||
cy.exec('curl --noproxy -- http://website1.example.com:1502').then((result) => {
|
cy.exec('curl --noproxy -- http://website1.example.com:1502').then((result) => {
|
||||||
expect(result.code).to.eq(0);
|
expect(result.exitCode).to.eq(0);
|
||||||
expect(result.stdout).to.contain('yay it works');
|
expect(result.stdout).to.contain('yay it works');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -176,6 +176,7 @@ describe('Streams', () => {
|
|||||||
'cert_chain_of_trust',
|
'cert_chain_of_trust',
|
||||||
'cert_extlifeSpan',
|
'cert_extlifeSpan',
|
||||||
'cert_revocation',
|
'cert_revocation',
|
||||||
|
'engine_problem',
|
||||||
'overall_grade',
|
'overall_grade',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
const logger = require('./logger');
|
import axios from "axios";
|
||||||
const axios = require('axios').default;
|
import logger from "./logger.mjs";
|
||||||
|
|
||||||
const BackendApi = function(config, token) {
|
const BackendApi = function (config, token) {
|
||||||
this.config = config;
|
this.config = config;
|
||||||
this.token = token;
|
this.token = token;
|
||||||
|
|
||||||
this.axios = axios.create({
|
this.axios = axios.create({
|
||||||
baseURL: config.baseUrl,
|
baseURL: config.baseUrl,
|
||||||
@@ -14,26 +14,24 @@ const BackendApi = function(config, token) {
|
|||||||
/**
|
/**
|
||||||
* @param {string} token
|
* @param {string} token
|
||||||
*/
|
*/
|
||||||
BackendApi.prototype.setToken = function(token) {
|
BackendApi.prototype.setToken = function (token) {
|
||||||
this.token = token;
|
this.token = token;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {bool} returnOnError
|
* @param {bool} returnOnError
|
||||||
*/
|
*/
|
||||||
BackendApi.prototype._prepareOptions = function(returnOnError) {
|
BackendApi.prototype._prepareOptions = function (returnOnError) {
|
||||||
let options = {
|
const options = {
|
||||||
headers: {
|
headers: {
|
||||||
Accept: 'application/json'
|
Accept: "application/json",
|
||||||
}
|
},
|
||||||
}
|
};
|
||||||
if (this.token) {
|
if (this.token) {
|
||||||
options.headers.Authorization = 'Bearer ' + this.token;
|
options.headers.Authorization = `Bearer ${this.token}`;
|
||||||
}
|
}
|
||||||
if (returnOnError) {
|
if (returnOnError) {
|
||||||
options.validateStatus = function () {
|
options.validateStatus = () => true;
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return options;
|
return options;
|
||||||
};
|
};
|
||||||
@@ -44,13 +42,30 @@ BackendApi.prototype._prepareOptions = function(returnOnError) {
|
|||||||
* @param {function} reject
|
* @param {function} reject
|
||||||
* @param {bool} returnOnError
|
* @param {bool} returnOnError
|
||||||
*/
|
*/
|
||||||
BackendApi.prototype._handleResponse = function(response, resolve, reject, returnOnError) {
|
BackendApi.prototype._handleResponse = (
|
||||||
logger('Response data:', response.data);
|
response,
|
||||||
if (!returnOnError && typeof response.data === 'object' && typeof response.data.error === 'object') {
|
resolve,
|
||||||
if (typeof response.data === 'object' && typeof response.data.error === 'object' && typeof response.data.error.message !== 'undefined') {
|
reject,
|
||||||
reject(new Error(response.data.error.code + ': ' + response.data.error.message));
|
returnOnError,
|
||||||
|
) => {
|
||||||
|
logger("Response data:", response.data);
|
||||||
|
if (
|
||||||
|
!returnOnError &&
|
||||||
|
typeof response.data === "object" &&
|
||||||
|
typeof response.data.error === "object"
|
||||||
|
) {
|
||||||
|
if (
|
||||||
|
typeof response.data === "object" &&
|
||||||
|
typeof response.data.error === "object" &&
|
||||||
|
typeof response.data.error.message !== "undefined"
|
||||||
|
) {
|
||||||
|
reject(
|
||||||
|
new Error(
|
||||||
|
`${response.data.error.code}: ${response.data.error.message}`,
|
||||||
|
),
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
reject(new Error('Error ' + response.status));
|
reject(new Error(`Error ${response.status}`));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
resolve(response.data);
|
resolve(response.data);
|
||||||
@@ -63,10 +78,10 @@ BackendApi.prototype._handleResponse = function(response, resolve, reject, retur
|
|||||||
* @param {function} reject
|
* @param {function} reject
|
||||||
* @param {bool} returnOnError
|
* @param {bool} returnOnError
|
||||||
*/
|
*/
|
||||||
BackendApi.prototype._handleError = function(err, resolve, reject, returnOnError) {
|
BackendApi.prototype._handleError = (err, resolve, reject, returnOnError) => {
|
||||||
logger('Axios Error:', err);
|
logger("Axios Error:", err);
|
||||||
if (returnOnError) {
|
if (returnOnError) {
|
||||||
resolve(typeof err.response.data !== 'undefined' ? err.response.data : err);
|
resolve(typeof err.response.data !== "undefined" ? err.response.data : err);
|
||||||
} else {
|
} else {
|
||||||
reject(err);
|
reject(err);
|
||||||
}
|
}
|
||||||
@@ -84,11 +99,11 @@ BackendApi.prototype.request = function (method, path, returnOnError, data) {
|
|||||||
const options = this._prepareOptions(returnOnError);
|
const options = this._prepareOptions(returnOnError);
|
||||||
|
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
let opts = {
|
const opts = {
|
||||||
method: method,
|
method: method,
|
||||||
url: path,
|
url: path,
|
||||||
...options
|
...options,
|
||||||
}
|
};
|
||||||
if (data !== undefined && data !== null) {
|
if (data !== undefined && data !== null) {
|
||||||
opts.data = data;
|
opts.data = data;
|
||||||
}
|
}
|
||||||
@@ -110,16 +125,17 @@ BackendApi.prototype.request = function (method, path, returnOnError, data) {
|
|||||||
* @returns {Promise<object>}
|
* @returns {Promise<object>}
|
||||||
*/
|
*/
|
||||||
BackendApi.prototype.postForm = function (path, form, returnOnError) {
|
BackendApi.prototype.postForm = function (path, form, returnOnError) {
|
||||||
logger('POST', this.config.baseUrl + path);
|
logger("POST", this.config.baseUrl + path);
|
||||||
const options = this._prepareOptions(returnOnError);
|
const options = this._prepareOptions(returnOnError);
|
||||||
|
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
const opts = {
|
const opts = {
|
||||||
...options,
|
...options,
|
||||||
...form.getHeaders(),
|
...form.getHeaders(),
|
||||||
}
|
};
|
||||||
|
|
||||||
this.axios.post(path, form, opts)
|
this.axios
|
||||||
|
.post(path, form, opts)
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
this._handleResponse(response, resolve, reject, returnOnError);
|
this._handleResponse(response, resolve, reject, returnOnError);
|
||||||
})
|
})
|
||||||
@@ -129,4 +145,4 @@ BackendApi.prototype.postForm = function (path, form, returnOnError) {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = BackendApi;
|
export default BackendApi;
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
const _ = require("lodash");
|
|
||||||
|
|
||||||
module.exports = function() {
|
|
||||||
let arr = _.values(arguments);
|
|
||||||
arr.unshift('[Backend API]');
|
|
||||||
console.log.apply(null, arr);
|
|
||||||
};
|
|
||||||
7
test/cypress/plugins/backendApi/logger.mjs
Normal file
7
test/cypress/plugins/backendApi/logger.mjs
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
const log = (...args) => {
|
||||||
|
const arr = args;
|
||||||
|
arr.unshift("[Backend API]");
|
||||||
|
console.log(...arr);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default log;
|
||||||
@@ -1,13 +1,12 @@
|
|||||||
const fs = require('fs');
|
import fs from "node:fs";
|
||||||
const FormData = require('form-data');
|
import FormData from "form-data";
|
||||||
const logger = require('./logger');
|
import Client from "./client.mjs";
|
||||||
const Client = require('./client');
|
import logger from "./logger.mjs";
|
||||||
|
|
||||||
module.exports = function (config) {
|
export default (config) => {
|
||||||
logger('Client Ready using', config.baseUrl);
|
logger("Client Ready using", config.baseUrl);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {object} options
|
* @param {object} options
|
||||||
* @param {string} options.path API path
|
* @param {string} options.path API path
|
||||||
@@ -18,7 +17,7 @@ module.exports = function (config) {
|
|||||||
backendApiGet: (options) => {
|
backendApiGet: (options) => {
|
||||||
const api = new Client(config);
|
const api = new Client(config);
|
||||||
api.setToken(options.token);
|
api.setToken(options.token);
|
||||||
return api.request('get', options.path, options.returnOnError || false);
|
return api.request("get", options.path, options.returnOnError || false);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -32,7 +31,12 @@ module.exports = function (config) {
|
|||||||
backendApiPost: (options) => {
|
backendApiPost: (options) => {
|
||||||
const api = new Client(config);
|
const api = new Client(config);
|
||||||
api.setToken(options.token);
|
api.setToken(options.token);
|
||||||
return api.request('post', options.path, options.returnOnError || false, options.data);
|
return api.request(
|
||||||
|
"post",
|
||||||
|
options.path,
|
||||||
|
options.returnOnError || false,
|
||||||
|
options.data,
|
||||||
|
);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -48,8 +52,11 @@ module.exports = function (config) {
|
|||||||
api.setToken(options.token);
|
api.setToken(options.token);
|
||||||
|
|
||||||
const form = new FormData();
|
const form = new FormData();
|
||||||
for (let [key, value] of Object.entries(options.files)) {
|
for (const [key, value] of Object.entries(options.files)) {
|
||||||
form.append(key, fs.createReadStream(config.fixturesFolder + '/' + value));
|
form.append(
|
||||||
|
key,
|
||||||
|
fs.createReadStream(`${config.fixturesFolder}/${value}`),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
return api.postForm(options.path, form, options.returnOnError || false);
|
return api.postForm(options.path, form, options.returnOnError || false);
|
||||||
},
|
},
|
||||||
@@ -65,7 +72,12 @@ module.exports = function (config) {
|
|||||||
backendApiPut: (options) => {
|
backendApiPut: (options) => {
|
||||||
const api = new Client(config);
|
const api = new Client(config);
|
||||||
api.setToken(options.token);
|
api.setToken(options.token);
|
||||||
return api.request('put', options.path, options.returnOnError || false, options.data);
|
return api.request(
|
||||||
|
"put",
|
||||||
|
options.path,
|
||||||
|
options.returnOnError || false,
|
||||||
|
options.data,
|
||||||
|
);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -78,7 +90,11 @@ module.exports = function (config) {
|
|||||||
backendApiDelete: (options) => {
|
backendApiDelete: (options) => {
|
||||||
const api = new Client(config);
|
const api = new Client(config);
|
||||||
api.setToken(options.token);
|
api.setToken(options.token);
|
||||||
return api.request('delete', options.path, options.returnOnError || false);
|
return api.request(
|
||||||
}
|
"delete",
|
||||||
|
options.path,
|
||||||
|
options.returnOnError || false,
|
||||||
|
);
|
||||||
|
},
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -1,20 +1,26 @@
|
|||||||
import { SwaggerValidation } from '@jc21/cypress-swagger-validation';
|
import { SwaggerValidation } from "@jc21/cypress-swagger-validation";
|
||||||
import chalk from 'chalk';
|
import chalk from "chalk";
|
||||||
|
import backendTask from "./backendApi/task.mjs";
|
||||||
|
|
||||||
export default (on, config) => {
|
export default (on, config) => {
|
||||||
// Replace swaggerBase config var wildcard
|
// Replace swaggerBase config var wildcard
|
||||||
if (typeof config.env.swaggerBase !== 'undefined') {
|
if (typeof config.env.swaggerBase !== "undefined") {
|
||||||
config.env.swaggerBase = config.env.swaggerBase.replace('{{baseUrl}}', config.baseUrl);
|
config.env.swaggerBase = config.env.swaggerBase.replace(
|
||||||
|
"{{baseUrl}}",
|
||||||
|
config.baseUrl,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Plugin Events
|
// Plugin Events
|
||||||
on('task', SwaggerValidation(config));
|
on("task", SwaggerValidation(config));
|
||||||
on('task', require('./backendApi/task')(config));
|
on("task", backendTask(config));
|
||||||
on('task', {
|
on("task", {
|
||||||
log(message) {
|
log(message) {
|
||||||
console.log(`${chalk.cyan.bold('[')}${chalk.blue.bold('LOG')}${chalk.cyan.bold(']')} ${chalk.red.bold(message)}`);
|
console.log(
|
||||||
|
`${chalk.cyan.bold("[")}${chalk.blue.bold("LOG")}${chalk.cyan.bold("]")} ${chalk.red.bold(message)}`,
|
||||||
|
);
|
||||||
return null;
|
return null;
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
return config;
|
return config;
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ Cypress.Commands.add("validateSwaggerFile", (url, savePath) => {
|
|||||||
.then((response) => cy.writeFile(savePath, response.body, { log: false }))
|
.then((response) => cy.writeFile(savePath, response.body, { log: false }))
|
||||||
.then(() => cy.exec(`yarn swagger-lint '${savePath}'`, { failOnNonZeroExit: false }))
|
.then(() => cy.exec(`yarn swagger-lint '${savePath}'`, { failOnNonZeroExit: false }))
|
||||||
.then((result) => cy.task('log', `Swagger Vacuum Results:\n${result.stdout || ''}`)
|
.then((result) => cy.task('log', `Swagger Vacuum Results:\n${result.stdout || ''}`)
|
||||||
.then(() => expect(result.code).to.eq(0)));
|
.then(() => expect(result.exitCode).to.eq(0)));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import './commands';
|
import './commands.mjs';
|
||||||
|
|
||||||
Cypress.on('uncaught:exception', (/*err, runnable*/) => {
|
Cypress.on('uncaught:exception', (/*err, runnable*/) => {
|
||||||
// returning false here prevents Cypress from
|
// returning false here prevents Cypress from
|
||||||
|
|||||||
@@ -4,6 +4,10 @@
|
|||||||
"cypress/**/*.js",
|
"cypress/**/*.js",
|
||||||
"cypress/config/dev.mjs",
|
"cypress/config/dev.mjs",
|
||||||
"cypress/config/ci.mjs",
|
"cypress/config/ci.mjs",
|
||||||
"cypress/plugins/index.mjs"
|
"cypress/plugins/index.mjs",
|
||||||
|
"cypress/plugins/backendApi/task.mjs",
|
||||||
|
"cypress/plugins/backendApi/logger.mjs",
|
||||||
|
"cypress/plugins/backendApi/client.mjs",
|
||||||
|
"cypress/support/commands.mjs"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,13 +5,13 @@
|
|||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@jc21/cypress-swagger-validation": "^0.3.2",
|
"@jc21/cypress-swagger-validation": "^0.3.2",
|
||||||
"@quobix/vacuum": "^0.19.4",
|
"@quobix/vacuum": "^0.23.4",
|
||||||
"axios": "^1.13.1",
|
"axios": "^1.13.1",
|
||||||
"chalk": "^5.6.2",
|
"chalk": "^5.6.2",
|
||||||
"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",
|
||||||
|
|||||||
586
test/yarn.lock
586
test/yarn.lock
@@ -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.0":
|
|
||||||
version "9.39.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.39.0.tgz#e1955cefd1d79e80a9557274e9aa9bd3f641be01"
|
|
||||||
integrity sha512-BIhe0sW91JGPiaF1mOuPy5v8NflqfjIcDNpC+LbW9f609WVRX1rArrhi6Z2ymvrAry9jw+5POTj4t2t62o8Bmw==
|
|
||||||
|
|
||||||
"@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"
|
||||||
@@ -183,6 +175,13 @@
|
|||||||
wrap-ansi "^8.1.0"
|
wrap-ansi "^8.1.0"
|
||||||
wrap-ansi-cjs "npm:wrap-ansi@^7.0.0"
|
wrap-ansi-cjs "npm:wrap-ansi@^7.0.0"
|
||||||
|
|
||||||
|
"@isaacs/fs-minipass@^4.0.0":
|
||||||
|
version "4.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz#2d59ae3ab4b38fb4270bfa23d30f8e2e86c7fe32"
|
||||||
|
integrity sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==
|
||||||
|
dependencies:
|
||||||
|
minipass "^7.0.4"
|
||||||
|
|
||||||
"@jc21/cypress-swagger-validation@^0.3.2":
|
"@jc21/cypress-swagger-validation@^0.3.2":
|
||||||
version "0.3.2"
|
version "0.3.2"
|
||||||
resolved "https://registry.yarnpkg.com/@jc21/cypress-swagger-validation/-/cypress-swagger-validation-0.3.2.tgz#6d1cd6c702405caf7661398b662de84a3fa50f8e"
|
resolved "https://registry.yarnpkg.com/@jc21/cypress-swagger-validation/-/cypress-swagger-validation-0.3.2.tgz#6d1cd6c702405caf7661398b662de84a3fa50f8e"
|
||||||
@@ -209,23 +208,29 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33"
|
resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33"
|
||||||
integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
|
integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
|
||||||
|
|
||||||
"@quobix/vacuum@^0.19.4":
|
"@quobix/vacuum@^0.23.4":
|
||||||
version "0.19.4"
|
version "0.23.8"
|
||||||
resolved "https://registry.yarnpkg.com/@quobix/vacuum/-/vacuum-0.19.4.tgz#1250269268aa0838e503ea97836a98d7c9756bf1"
|
resolved "https://registry.yarnpkg.com/@quobix/vacuum/-/vacuum-0.23.8.tgz#a994d6db71b483bc34b6683c8c069ef4f26e3e2b"
|
||||||
integrity sha512-+riEvta1fR2loK//bpdPOVs5AgE8F26RrKe6/oGjapAKVB/OOcqE88S+TSe/yeQbmj03QLi5EX3ZmrL9n0qyDg==
|
integrity sha512-fdxBgELoyJWabN5yeaQWlu0IREabqlPQb5EgFQjA7Plc1YjUFIXzh4RMFpQ1OJ/D6OtxXY6SeifEAy0HihQ7Qw==
|
||||||
dependencies:
|
dependencies:
|
||||||
node-fetch "^3.2.10"
|
https-proxy-agent "^7.0.6"
|
||||||
tar "^6.1.11"
|
node-fetch "^3.3.2"
|
||||||
|
tar "^7.5.2"
|
||||||
|
|
||||||
"@types/color-name@^1.1.1":
|
"@types/color-name@^1.1.1":
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
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"
|
||||||
@@ -264,16 +269,16 @@ acorn-jsx@^5.3.2:
|
|||||||
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
|
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
|
||||||
integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
|
integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
|
||||||
|
|
||||||
acorn@^8.11.3:
|
|
||||||
version "8.11.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a"
|
|
||||||
integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==
|
|
||||||
|
|
||||||
acorn@^8.15.0:
|
acorn@^8.15.0:
|
||||||
version "8.15.0"
|
version "8.15.0"
|
||||||
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816"
|
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816"
|
||||||
integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==
|
integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==
|
||||||
|
|
||||||
|
agent-base@^7.1.2:
|
||||||
|
version "7.1.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.4.tgz#e3cd76d4c548ee895d3c3fd8dc1f6c5b9032e7a8"
|
||||||
|
integrity sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==
|
||||||
|
|
||||||
aggregate-error@^3.0.0:
|
aggregate-error@^3.0.0:
|
||||||
version "3.1.0"
|
version "3.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a"
|
resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a"
|
||||||
@@ -304,7 +309,7 @@ ajv@^6.12.4:
|
|||||||
json-schema-traverse "^0.4.1"
|
json-schema-traverse "^0.4.1"
|
||||||
uri-js "^4.2.2"
|
uri-js "^4.2.2"
|
||||||
|
|
||||||
ajv@^8.0.0, ajv@^8.17.1:
|
ajv@^8.0.0, ajv@^8.17.1, ajv@^8.6.3:
|
||||||
version "8.17.1"
|
version "8.17.1"
|
||||||
resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6"
|
resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6"
|
||||||
integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==
|
integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==
|
||||||
@@ -314,16 +319,6 @@ ajv@^8.0.0, ajv@^8.17.1:
|
|||||||
json-schema-traverse "^1.0.0"
|
json-schema-traverse "^1.0.0"
|
||||||
require-from-string "^2.0.2"
|
require-from-string "^2.0.2"
|
||||||
|
|
||||||
ajv@^8.6.3:
|
|
||||||
version "8.13.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.13.0.tgz#a3939eaec9fb80d217ddf0c3376948c023f28c91"
|
|
||||||
integrity sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==
|
|
||||||
dependencies:
|
|
||||||
fast-deep-equal "^3.1.3"
|
|
||||||
json-schema-traverse "^1.0.0"
|
|
||||||
require-from-string "^2.0.2"
|
|
||||||
uri-js "^4.4.1"
|
|
||||||
|
|
||||||
ansi-colors@^4.1.1:
|
ansi-colors@^4.1.1:
|
||||||
version "4.1.1"
|
version "4.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"
|
resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"
|
||||||
@@ -425,22 +420,13 @@ aws4@^1.8.0:
|
|||||||
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.0.tgz#24390e6ad61386b0a747265754d2a17219de862c"
|
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.0.tgz#24390e6ad61386b0a747265754d2a17219de862c"
|
||||||
integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==
|
integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A==
|
||||||
|
|
||||||
axios@^1.13.1:
|
axios@^1.13.1, axios@^1.7.7:
|
||||||
version "1.13.1"
|
version "1.13.5"
|
||||||
resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.1.tgz#45b62dc8fe04e0e92274e08b98e910ba3d7963a7"
|
resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.5.tgz#5e464688fa127e11a660a2c49441c009f6567a43"
|
||||||
integrity sha512-hU4EGxxt+j7TQijx1oYdAjw4xuIp1wRQSsbMFwSthCWeBQur1eF+qJ5iQ5sN3Tw8YRzQNKb8jszgBdMDVqwJcw==
|
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"
|
|
||||||
|
|
||||||
axios@^1.7.7:
|
|
||||||
version "1.12.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/axios/-/axios-1.12.0.tgz#11248459be05a5ee493485628fa0e4323d0abfc3"
|
|
||||||
integrity sha512-oXTDccv8PcfjZmPGlWsPSwtOJCZ/b6W5jAMCNcfwJbCzDckwG0jrYJFaWH1yvivfCXjVzV/SPDEhMB3Q+DSurg==
|
|
||||||
dependencies:
|
|
||||||
follow-redirects "^1.15.6"
|
|
||||||
form-data "^4.0.4"
|
|
||||||
proxy-from-env "^1.1.0"
|
proxy-from-env "^1.1.0"
|
||||||
|
|
||||||
balanced-match@^1.0.0:
|
balanced-match@^1.0.0:
|
||||||
@@ -470,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"
|
||||||
@@ -529,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"
|
||||||
@@ -544,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==
|
||||||
@@ -569,10 +542,10 @@ chokidar@^4.0.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
readdirp "^4.0.1"
|
readdirp "^4.0.1"
|
||||||
|
|
||||||
chownr@^2.0.0:
|
chownr@^3.0.0:
|
||||||
version "2.0.0"
|
version "3.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece"
|
resolved "https://registry.yarnpkg.com/chownr/-/chownr-3.0.0.tgz#9855e64ecd240a9cc4267ce8a4aa5d24a1da15e4"
|
||||||
integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==
|
integrity sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==
|
||||||
|
|
||||||
ci-info@^4.1.0:
|
ci-info@^4.1.0:
|
||||||
version "4.2.0"
|
version "4.2.0"
|
||||||
@@ -656,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"
|
||||||
@@ -695,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"
|
||||||
@@ -727,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"
|
||||||
@@ -759,6 +727,13 @@ 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.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"
|
||||||
|
resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a"
|
||||||
|
integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==
|
||||||
|
dependencies:
|
||||||
|
ms "^2.1.3"
|
||||||
|
|
||||||
debug@^3.1.0:
|
debug@^3.1.0:
|
||||||
version "3.2.6"
|
version "3.2.6"
|
||||||
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
|
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
|
||||||
@@ -766,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=
|
||||||
@@ -881,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"
|
||||||
|
|
||||||
@@ -904,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.0"
|
version "5.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/eslint-plugin-cypress/-/eslint-plugin-cypress-5.2.0.tgz#c01cc5511542b5eaa38d31bcdfe888336bf70611"
|
resolved "https://registry.yarnpkg.com/eslint-plugin-cypress/-/eslint-plugin-cypress-5.3.0.tgz#52cb5397829a765a22680ccb010e81b73d249fb2"
|
||||||
integrity sha512-vuCUBQloUSILxtJrUWV39vNIQPlbg0L7cTunEAzvaUzv9LFZZym+KFLH18n9j2cZuFPdlxOqTubCvg5se0DyGw==
|
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"
|
||||||
|
|
||||||
@@ -923,42 +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.0.0:
|
eslint-visitor-keys@^5.0.0:
|
||||||
version "4.0.0"
|
version "5.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz#e3adc021aa038a2a8e0b2f8b0ce8f66b9483b1fb"
|
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-5.0.0.tgz#b9aa1a74aa48c44b3ae46c1597ce7171246a94a9"
|
||||||
integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==
|
integrity sha512-A0XeIi7CXU7nPlfHS9loMYEKxUaONu/hTEzHTGba9Huu94Cq1hPivf+DE5erJozZOky0LfvXAyrV/tcswpLI0Q==
|
||||||
|
|
||||||
eslint-visitor-keys@^4.2.1:
|
eslint@^10.0.0:
|
||||||
version "4.2.1"
|
version "10.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz#4cfea60fe7dd0ad8e816e1ed026c1d5251b512c1"
|
resolved "https://registry.yarnpkg.com/eslint/-/eslint-10.0.0.tgz#c93c36a96d91621d0fbb680db848ea11af56ab1e"
|
||||||
integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==
|
integrity sha512-O0piBKY36YSJhlFSG8p9VUdPV/SxxS4FYDWVpr/9GJuMaepzwlf4J8I4ov1b+ySQfDTPhc3DtLaxcT1fN0yqCg==
|
||||||
|
|
||||||
eslint@^9.39.0:
|
|
||||||
version "9.39.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.39.0.tgz#33c90ddf62b64e1e3f83b689934b336f21b5f0e5"
|
|
||||||
integrity sha512-iy2GE3MHrYTL5lrCtMZ0X1KLEKKUjmK0kzwcnefhR66txcEmXZD2YWgR5GNdcEwkNx3a0siYkSvl0vIC+Svjmg==
|
|
||||||
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.0"
|
|
||||||
"@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"
|
||||||
@@ -968,48 +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@^11.1.0:
|
||||||
version "10.0.1"
|
version "11.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/espree/-/espree-10.0.1.tgz#600e60404157412751ba4a6f3a2ee1a42433139f"
|
resolved "https://registry.yarnpkg.com/espree/-/espree-11.1.0.tgz#7d0c82a69f8df670728dba256264b383fbf73e8f"
|
||||||
integrity sha512-MWkrWZbJsL2UwnjxTX3gG8FneachS/Mwg7tdGXce011sJd5b0JG54vat5KHnfSBODZ3Wvzd2WnjxyzsRoVv+ww==
|
integrity sha512-WFWYhO1fV4iYkqOOvq8FbqIhr2pYfoDY0kCotMkDeNtGpiGGkZ1iov2u8ydjtgM8yF8rzK7oaTbw2NAzbAbehw==
|
||||||
dependencies:
|
|
||||||
acorn "^8.11.3"
|
|
||||||
acorn-jsx "^5.3.2"
|
|
||||||
eslint-visitor-keys "^4.0.0"
|
|
||||||
|
|
||||||
espree@^10.4.0:
|
|
||||||
version "10.4.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/espree/-/espree-10.4.0.tgz#d54f4949d4629005a1fa168d937c3ff1f7e2a837"
|
|
||||||
integrity sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==
|
|
||||||
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"
|
||||||
|
|
||||||
@@ -1020,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"
|
||||||
@@ -1103,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=
|
||||||
@@ -1168,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"
|
||||||
@@ -1186,10 +1127,10 @@ 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.4"
|
version "4.0.5"
|
||||||
resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.4.tgz#784cdcce0669a9d68e94d11ac4eea98088edd2c4"
|
resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.5.tgz#b49e48858045ff4cbf6b03e1805cebcad3679053"
|
||||||
integrity sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==
|
integrity sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==
|
||||||
dependencies:
|
dependencies:
|
||||||
asynckit "^0.4.0"
|
asynckit "^0.4.0"
|
||||||
combined-stream "^1.0.8"
|
combined-stream "^1.0.8"
|
||||||
@@ -1214,13 +1155,6 @@ fs-extra@^9.1.0:
|
|||||||
jsonfile "^6.0.1"
|
jsonfile "^6.0.1"
|
||||||
universalify "^2.0.0"
|
universalify "^2.0.0"
|
||||||
|
|
||||||
fs-minipass@^2.0.0:
|
|
||||||
version "2.1.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb"
|
|
||||||
integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==
|
|
||||||
dependencies:
|
|
||||||
minipass "^3.0.0"
|
|
||||||
|
|
||||||
function-bind@^1.1.2:
|
function-bind@^1.1.2:
|
||||||
version "1.1.2"
|
version "1.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
|
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
|
||||||
@@ -1295,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==
|
||||||
@@ -1361,6 +1290,14 @@ http-signature@~1.4.0:
|
|||||||
jsprim "^2.0.2"
|
jsprim "^2.0.2"
|
||||||
sshpk "^1.18.0"
|
sshpk "^1.18.0"
|
||||||
|
|
||||||
|
https-proxy-agent@^7.0.6:
|
||||||
|
version "7.0.6"
|
||||||
|
resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz#da8dfeac7da130b05c2ba4b59c9b6cd66611a6b9"
|
||||||
|
integrity sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==
|
||||||
|
dependencies:
|
||||||
|
agent-base "^7.1.2"
|
||||||
|
debug "4"
|
||||||
|
|
||||||
human-signals@^1.1.1:
|
human-signals@^1.1.1:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3"
|
resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3"
|
||||||
@@ -1376,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"
|
||||||
@@ -1414,14 +1343,7 @@ is-fullwidth-code-point@^3.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
|
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
|
||||||
integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
|
integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
|
||||||
|
|
||||||
is-glob@^4.0.0:
|
is-glob@^4.0.0, is-glob@^4.0.3:
|
||||||
version "4.0.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc"
|
|
||||||
integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==
|
|
||||||
dependencies:
|
|
||||||
is-extglob "^2.1.1"
|
|
||||||
|
|
||||||
is-glob@^4.0.3:
|
|
||||||
version "4.0.3"
|
version "4.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
|
resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
|
||||||
integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
|
integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
|
||||||
@@ -1540,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"
|
||||||
@@ -1573,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"
|
||||||
@@ -1602,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==
|
||||||
@@ -1676,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"
|
||||||
@@ -1695,35 +1604,17 @@ minimist@^1.2.8:
|
|||||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
|
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
|
||||||
integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
|
integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
|
||||||
|
|
||||||
minipass@^3.0.0:
|
"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.4, minipass@^7.1.2:
|
||||||
version "3.3.6"
|
|
||||||
resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a"
|
|
||||||
integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==
|
|
||||||
dependencies:
|
|
||||||
yallist "^4.0.0"
|
|
||||||
|
|
||||||
minipass@^5.0.0:
|
|
||||||
version "5.0.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d"
|
|
||||||
integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==
|
|
||||||
|
|
||||||
"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2:
|
|
||||||
version "7.1.2"
|
version "7.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707"
|
resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707"
|
||||||
integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==
|
integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==
|
||||||
|
|
||||||
minizlib@^2.1.1:
|
minizlib@^3.1.0:
|
||||||
version "2.1.2"
|
version "3.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931"
|
resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-3.1.0.tgz#6ad76c3a8f10227c9b51d1c9ac8e30b27f5a251c"
|
||||||
integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==
|
integrity sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==
|
||||||
dependencies:
|
dependencies:
|
||||||
minipass "^3.0.0"
|
minipass "^7.1.2"
|
||||||
yallist "^4.0.0"
|
|
||||||
|
|
||||||
mkdirp@^1.0.3:
|
|
||||||
version "1.0.4"
|
|
||||||
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e"
|
|
||||||
integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==
|
|
||||||
|
|
||||||
mkdirp@^3.0.0:
|
mkdirp@^3.0.0:
|
||||||
version "3.0.1"
|
version "3.0.1"
|
||||||
@@ -1742,9 +1633,9 @@ mocha-junit-reporter@^2.2.1:
|
|||||||
xml "^1.0.1"
|
xml "^1.0.1"
|
||||||
|
|
||||||
mocha@^11.7.4:
|
mocha@^11.7.4:
|
||||||
version "11.7.4"
|
version "11.7.5"
|
||||||
resolved "https://registry.yarnpkg.com/mocha/-/mocha-11.7.4.tgz#f161b17aeccb0762484b33bdb3f7ab9410ba5c82"
|
resolved "https://registry.yarnpkg.com/mocha/-/mocha-11.7.5.tgz#58f5bbfa5e0211ce7e5ee6128107cefc2515a627"
|
||||||
integrity sha512-1jYAaY8x0kAZ0XszLWu14pzsf4KV740Gld4HXkhNTXwcHx4AUEDkPzgEHg9CM5dVcW+zv036tjpsEbLraPJj4w==
|
integrity sha512-mTT6RgopEYABzXWFx+GcJ+ZQ32kp4fMf0xvpZIIfSq9Z8lC/++MtcCnQ9t5FP2veYEP95FIYSvW+U9fV4xrlig==
|
||||||
dependencies:
|
dependencies:
|
||||||
browser-stdout "^1.3.1"
|
browser-stdout "^1.3.1"
|
||||||
chokidar "^4.0.1"
|
chokidar "^4.0.1"
|
||||||
@@ -1768,12 +1659,7 @@ mocha@^11.7.4:
|
|||||||
yargs-parser "^21.1.1"
|
yargs-parser "^21.1.1"
|
||||||
yargs-unparser "^2.0.0"
|
yargs-unparser "^2.0.0"
|
||||||
|
|
||||||
ms@^2.1.1:
|
ms@^2.1.1, ms@^2.1.3:
|
||||||
version "2.1.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
|
|
||||||
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
|
|
||||||
|
|
||||||
ms@^2.1.3:
|
|
||||||
version "2.1.3"
|
version "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==
|
||||||
@@ -1788,7 +1674,7 @@ node-domexception@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5"
|
resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5"
|
||||||
integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==
|
integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==
|
||||||
|
|
||||||
node-fetch@^3.2.10:
|
node-fetch@^3.3.2:
|
||||||
version "3.3.2"
|
version "3.3.2"
|
||||||
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.3.2.tgz#d1e889bacdf733b4ff3b2b243eb7a12866a0b78b"
|
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.3.2.tgz#d1e889bacdf733b4ff3b2b243eb7a12866a0b78b"
|
||||||
integrity sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==
|
integrity sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==
|
||||||
@@ -1828,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"
|
||||||
@@ -1883,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"
|
||||||
@@ -1918,12 +1785,7 @@ performance-now@^2.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
|
resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
|
||||||
integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
|
integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
|
||||||
|
|
||||||
picocolors@^1.1.0:
|
picocolors@^1.1.0, picocolors@^1.1.1:
|
||||||
version "1.1.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59"
|
|
||||||
integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==
|
|
||||||
|
|
||||||
picocolors@^1.1.1:
|
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b"
|
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b"
|
||||||
integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==
|
integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==
|
||||||
@@ -1938,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"
|
||||||
@@ -1977,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"
|
||||||
|
|
||||||
@@ -2012,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"
|
||||||
@@ -2169,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"
|
||||||
@@ -2269,17 +2121,16 @@ systeminformation@^5.27.14:
|
|||||||
resolved "https://registry.yarnpkg.com/systeminformation/-/systeminformation-5.30.6.tgz#c100cb632bbb955fc44ba033f624da22c3a6a5be"
|
resolved "https://registry.yarnpkg.com/systeminformation/-/systeminformation-5.30.6.tgz#c100cb632bbb955fc44ba033f624da22c3a6a5be"
|
||||||
integrity sha512-LEIyK1aEv5P3BhAPW3swdlIyCihxwEq/Gki+kcONieU4PIeRCSLDuGkk0Va/56PSBgjVgEksOM88dmY6YqOyfQ==
|
integrity sha512-LEIyK1aEv5P3BhAPW3swdlIyCihxwEq/Gki+kcONieU4PIeRCSLDuGkk0Va/56PSBgjVgEksOM88dmY6YqOyfQ==
|
||||||
|
|
||||||
tar@^6.1.11:
|
tar@^7.5.2:
|
||||||
version "6.2.1"
|
version "7.5.7"
|
||||||
resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a"
|
resolved "https://registry.yarnpkg.com/tar/-/tar-7.5.7.tgz#adf99774008ba1c89819f15dbd6019c630539405"
|
||||||
integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==
|
integrity sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
chownr "^2.0.0"
|
"@isaacs/fs-minipass" "^4.0.0"
|
||||||
fs-minipass "^2.0.0"
|
chownr "^3.0.0"
|
||||||
minipass "^5.0.0"
|
minipass "^7.1.2"
|
||||||
minizlib "^2.1.1"
|
minizlib "^3.1.0"
|
||||||
mkdirp "^1.0.3"
|
yallist "^5.0.0"
|
||||||
yallist "^4.0.0"
|
|
||||||
|
|
||||||
throttleit@^1.0.0:
|
throttleit@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
@@ -2344,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"
|
||||||
@@ -2361,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"
|
||||||
@@ -2383,13 +2227,6 @@ uri-js@^4.2.2:
|
|||||||
dependencies:
|
dependencies:
|
||||||
punycode "^2.1.0"
|
punycode "^2.1.0"
|
||||||
|
|
||||||
uri-js@^4.4.1:
|
|
||||||
version "4.4.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
|
|
||||||
integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
|
|
||||||
dependencies:
|
|
||||||
punycode "^2.1.0"
|
|
||||||
|
|
||||||
uuid@^8.3.2:
|
uuid@^8.3.2:
|
||||||
version "8.3.2"
|
version "8.3.2"
|
||||||
resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
|
resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
|
||||||
@@ -2421,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"
|
||||||
@@ -2482,10 +2314,10 @@ y18n@^5.0.5:
|
|||||||
resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
|
resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"
|
||||||
integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
|
integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
|
||||||
|
|
||||||
yallist@^4.0.0:
|
yallist@^5.0.0:
|
||||||
version "4.0.0"
|
version "5.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
|
resolved "https://registry.yarnpkg.com/yallist/-/yallist-5.0.0.tgz#00e2de443639ed0d78fd87de0d27469fbcffb533"
|
||||||
integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
|
integrity sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==
|
||||||
|
|
||||||
yargs-parser@^21.1.1:
|
yargs-parser@^21.1.1:
|
||||||
version "21.1.1"
|
version "21.1.1"
|
||||||
|
|||||||
Reference in New Issue
Block a user