diff --git a/api/openapi.yml b/api/openapi.yml index d1e8b76fa..6764d08fd 100644 --- a/api/openapi.yml +++ b/api/openapi.yml @@ -155,7 +155,7 @@ paths: example: '{{ $.Domain | default "example.com" }}' schema: type: string - - name: X-Forwarded-Uri + - name: X-Forwarded-URI in: header description: Redirection URL (URI) required: false @@ -1540,7 +1540,7 @@ components: schema: type: string forwardedURIParam: - name: X-Forwarded-Uri + name: X-Forwarded-URI in: header description: Redirection URL (URI) required: true diff --git a/docs/content/en/integration/proxies/caddy.md b/docs/content/en/integration/proxies/caddy.md index 51b00303c..850538aaa 100644 --- a/docs/content/en/integration/proxies/caddy.md +++ b/docs/content/en/integration/proxies/caddy.md @@ -230,7 +230,7 @@ nextcloud.example.com { rewrite "/api/authz/forward-auth?authelia_url=https://auth.example.com/" header_up X-Forwarded-Method {method} - header_up X-Forwarded-Uri {uri} + header_up X-Forwarded-URI {uri} ## If the auth request: ## 1. Responds with a status code IN the 200-299 range. diff --git a/docs/content/en/integration/proxies/introduction.md b/docs/content/en/integration/proxies/introduction.md index 4670ee6d1..0eb884bee 100644 --- a/docs/content/en/integration/proxies/introduction.md +++ b/docs/content/en/integration/proxies/introduction.md @@ -28,6 +28,29 @@ bootstrapping *Authelia*. See [support](support.md) for support information. +### Required Headers + +__Authelia__ itself requires the following headers are set when secured behind a reverse proxy: + +* Scheme Detection: + * Default: [X-Forwarded-Proto] (header) + * Fallback: TLS (listening socket state) +* Host Detection: + * Default: [X-Forwarded-Host] (header) + * Fallback: [Host] (header) +* Path Detection: + * Default: X-Forwarded-URI (header) + * Fallback: [Start Line] Request Target (start line) +* Remote IP: + * Default: [X-Forwarded-For] + * Fallback: TCP source IP + +[Host]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Host +[Start Line]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Messages#start_line +[X-Forwarded-For]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For +[X-Forwarded-Proto]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Proto +[X-Forwarded-Host]: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host + ## Integration Implementation Authelia is capable of being integrated into many proxies due to the decisions regarding the implementation. We handle @@ -41,12 +64,14 @@ your reverse proxy. The headers we rely on at the authz endpoints are as follows * [X-Forwarded-Proto](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Proto) * [X-Forwarded-Host](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-Host) -* X-Forwarded-Uri +* X-Forwarded-URI * [X-Forwarded-For](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For) * X-Forwarded-Method / X-Original-Method * X-Original-URL -The specifics however are dictated by the specific [Authorization Implementation](../../reference/guides/proxy-authorization.md) used. +The specifics however are dictated by the specific +[Authorization Implementation](../../reference/guides/proxy-authorization.md) used. Please refer to the specific +implementation you're using. ### User Identification diff --git a/docs/content/en/integration/proxies/nginx.md b/docs/content/en/integration/proxies/nginx.md index 4c9e9f95a..8d185e697 100644 --- a/docs/content/en/integration/proxies/nginx.md +++ b/docs/content/en/integration/proxies/nginx.md @@ -350,7 +350,7 @@ use cases. The following is an example `proxy.conf`. The important directives include the `real_ip` directives which you should read [Trusted Proxies](#trusted-proxies) section to understand, or set the `X-Forwarded-Proto`, `X-Forwarded-Host`, -`X-Forwarded-Uri`, and `X-Forwarded-For` headers. +`X-Forwarded-URI`, and `X-Forwarded-For` headers. ##### Standard Variant @@ -363,7 +363,7 @@ proxy_set_header Host $host; proxy_set_header X-Original-URL $scheme://$http_host$request_uri; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $http_host; -proxy_set_header X-Forwarded-Uri $request_uri; +proxy_set_header X-Forwarded-URI $request_uri; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; @@ -408,7 +408,7 @@ proxy_set_header Host $host; proxy_set_header X-Original-URL $scheme://$http_host$request_uri; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $http_host; -proxy_set_header X-Forwarded-Uri $request_uri; +proxy_set_header X-Forwarded-URI $request_uri; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-For $remote_addr; ``` @@ -539,7 +539,7 @@ location /internal/authelia/authz/basic { proxy_set_header X-Forwarded-Method $request_method; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $http_host; - proxy_set_header X-Forwarded-Uri $request_uri; + proxy_set_header X-Forwarded-URI $request_uri; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Content-Length ""; proxy_set_header Connection ""; diff --git a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ecdsa_generate.md b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ecdsa_generate.md index d95e5a400..962baee20 100644 --- a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ecdsa_generate.md +++ b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ecdsa_generate.md @@ -56,6 +56,7 @@ authelia crypto certificate ecdsa generate --help -o, --organization strings certificate organization (default [Authelia]) --organizational-unit strings certificate organizational unit --path.ca string source directory of the certificate authority files, if not provided the certificate will be self-signed + --pkcs8 force PKCS #8 ASN.1 format -p, --postcode strings certificate postcode --province strings certificate province --sans strings subject alternative names diff --git a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ecdsa_request.md b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ecdsa_request.md index 093cff375..5ad0f7924 100644 --- a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ecdsa_request.md +++ b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ecdsa_request.md @@ -48,6 +48,7 @@ authelia crypto certificate ecdsa request --help --not-before string earliest date and time the certificate is considered valid in various formats (default is now) -o, --organization strings certificate organization (default [Authelia]) --organizational-unit strings certificate organizational unit + --pkcs8 force PKCS #8 ASN.1 format -p, --postcode strings certificate postcode --province strings certificate province --sans strings subject alternative names diff --git a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ed25519_generate.md b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ed25519_generate.md index f246998a9..51b811712 100644 --- a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ed25519_generate.md +++ b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ed25519_generate.md @@ -55,6 +55,7 @@ authelia crypto certificate ed25519 request --help -o, --organization strings certificate organization (default [Authelia]) --organizational-unit strings certificate organizational unit --path.ca string source directory of the certificate authority files, if not provided the certificate will be self-signed + --pkcs8 force PKCS #8 ASN.1 format -p, --postcode strings certificate postcode --province strings certificate province --sans strings subject alternative names diff --git a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ed25519_request.md b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ed25519_request.md index 66d687d98..a3723e168 100644 --- a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ed25519_request.md +++ b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_ed25519_request.md @@ -47,6 +47,7 @@ authelia crypto certificate ed25519 request --help --not-before string earliest date and time the certificate is considered valid in various formats (default is now) -o, --organization strings certificate organization (default [Authelia]) --organizational-unit strings certificate organizational unit + --pkcs8 force PKCS #8 ASN.1 format -p, --postcode strings certificate postcode --province strings certificate province --sans strings subject alternative names diff --git a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_rsa_generate.md b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_rsa_generate.md index 03d4979ae..4147f3617 100644 --- a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_rsa_generate.md +++ b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_rsa_generate.md @@ -56,6 +56,7 @@ authelia crypto certificate rsa generate --help -o, --organization strings certificate organization (default [Authelia]) --organizational-unit strings certificate organizational unit --path.ca string source directory of the certificate authority files, if not provided the certificate will be self-signed + --pkcs8 force PKCS #8 ASN.1 format -p, --postcode strings certificate postcode --province strings certificate province --sans strings subject alternative names diff --git a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_rsa_request.md b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_rsa_request.md index 8280c4ee3..cc01f7c1d 100644 --- a/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_rsa_request.md +++ b/docs/content/en/reference/cli/authelia/authelia_crypto_certificate_rsa_request.md @@ -48,6 +48,7 @@ authelia crypto certificate rsa request --help --not-before string earliest date and time the certificate is considered valid in various formats (default is now) -o, --organization strings certificate organization (default [Authelia]) --organizational-unit strings certificate organizational unit + --pkcs8 force PKCS #8 ASN.1 format -p, --postcode strings certificate postcode --province strings certificate province --sans strings subject alternative names diff --git a/go.mod b/go.mod index 99390fa6b..a0e46cb08 100644 --- a/go.mod +++ b/go.mod @@ -34,7 +34,7 @@ require ( github.com/ory/fosite v0.44.0 github.com/ory/herodot v0.10.2 github.com/ory/x v0.0.553 - github.com/otiai10/copy v1.10.0 + github.com/otiai10/copy v1.11.0 github.com/pkg/errors v0.9.1 github.com/pquerna/otp v1.4.0 github.com/prometheus/client_golang v1.15.0 diff --git a/go.sum b/go.sum index 31d008ee6..21627a40b 100644 --- a/go.sum +++ b/go.sum @@ -329,8 +329,8 @@ github.com/ory/herodot v0.10.2 h1:gGvNMHgAwWzdP/eo+roSiT5CGssygHSjDU7MSQNlJ4E= github.com/ory/herodot v0.10.2/go.mod h1:MMNmY6MG1uB6fnXYFaHoqdV23DTWctlPsmRCeq/2+wc= github.com/ory/x v0.0.553 h1:dRSEcbfpJYOl+yk55LTiLUXq2JslaeVaTp6CzHQW5Kw= github.com/ory/x v0.0.553/go.mod h1:oRVemI3SQQOLvOCJWIRinHQKlgmay/NbwSyRUIsS/Yk= -github.com/otiai10/copy v1.10.0 h1:znyI7l134wNg/wDktoVQPxPkgvhDfGCYUasey+h0rDQ= -github.com/otiai10/copy v1.10.0/go.mod h1:rSaLseMUsZFFbsFGc7wCJnnkTAvdc5L6VWxPE4308Ww= +github.com/otiai10/copy v1.11.0 h1:OKBD80J/mLBrwnzXqGtFCzprFSGioo30JcmR4APsNwc= +github.com/otiai10/copy v1.11.0/go.mod h1:rSaLseMUsZFFbsFGc7wCJnnkTAvdc5L6VWxPE4308Ww= github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks= github.com/pborman/uuid v1.2.1 h1:+ZZIw58t/ozdjRaXh/3awHfmWRbzYxJoAdNJxe/3pvw= github.com/pborman/uuid v1.2.1/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= diff --git a/internal/commands/crypto.go b/internal/commands/crypto.go index f8b934026..6df2a8e20 100644 --- a/internal/commands/crypto.go +++ b/internal/commands/crypto.go @@ -275,18 +275,20 @@ func (ctx *CmdCtx) CryptoGenerateRunE(cmd *cobra.Command, args []string) (err er // CryptoCertificateRequestRunE is the RunE for the authelia crypto certificate request command. func (ctx *CmdCtx) CryptoCertificateRequestRunE(cmd *cobra.Command, _ []string) (err error) { var ( - privateKey any + template *x509.CertificateRequest + privateKey any + csr []byte + privateKeyPath, csrPath string + pkcs8 bool ) if privateKey, err = ctx.cryptoGenPrivateKeyFromCmd(cmd); err != nil { return err } - var ( - template *x509.CertificateRequest - csr []byte - privateKeyPath, csrPath string - ) + if pkcs8, err = cmd.Flags().GetBool(cmdFlagNamePKCS8); err != nil { + return err + } if template, err = cryptoGetCSRFromCmd(cmd); err != nil { return err @@ -329,7 +331,7 @@ func (ctx *CmdCtx) CryptoCertificateRequestRunE(cmd *cobra.Command, _ []string) return fmt.Errorf("failed to create certificate request: %w", err) } - if err = utils.WriteKeyToPEM(privateKey, privateKeyPath, false); err != nil { + if err = utils.WriteKeyToPEM(privateKey, privateKeyPath, pkcs8); err != nil { return err } @@ -345,8 +347,13 @@ func (ctx *CmdCtx) CryptoCertificateGenerateRunE(cmd *cobra.Command, _ []string, var ( template, caCertificate, parent *x509.Certificate publicKey, caPrivateKey, signatureKey any + pkcs8 bool ) + if pkcs8, err = cmd.Flags().GetBool(cmdFlagNamePKCS8); err != nil { + return err + } + if publicKey = utils.PublicKeyFromPrivateKey(privateKey); publicKey == nil { return fmt.Errorf("failed to obtain public key from private key") } @@ -419,7 +426,7 @@ func (ctx *CmdCtx) CryptoCertificateGenerateRunE(cmd *cobra.Command, _ []string, return fmt.Errorf("failed to create certificate: %w", err) } - if err = utils.WriteKeyToPEM(privateKey, privateKeyPath, false); err != nil { + if err = utils.WriteKeyToPEM(privateKey, privateKeyPath, pkcs8); err != nil { return err } diff --git a/internal/commands/crypto_helper.go b/internal/commands/crypto_helper.go index eb29b31a6..fd8f999f9 100644 --- a/internal/commands/crypto_helper.go +++ b/internal/commands/crypto_helper.go @@ -59,10 +59,10 @@ func cmdFlagsCryptoCertificateRequest(cmd *cobra.Command) { func cmdFlagsCryptoPairGenerate(cmd *cobra.Command) { cmd.Flags().String(cmdFlagNameFilePublicKey, "public.pem", "name of the file to export the public key data to") - cmd.Flags().Bool(cmdFlagNamePKCS8, false, "force PKCS #8 ASN.1 format") } func cmdFlagsCryptoPrivateKey(cmd *cobra.Command) { + cmd.Flags().Bool(cmdFlagNamePKCS8, false, "force PKCS #8 ASN.1 format") cmd.Flags().String(cmdFlagNameFilePrivateKey, "private.pem", "name of the file to export the private key data to") cmd.Flags().StringP(cmdFlagNameDirectory, "d", "", "directory where the generated keys, certificates, etc will be stored") } diff --git a/internal/handlers/const_test.go b/internal/handlers/const_test.go index 4ff49b9bb..142775f51 100644 --- a/internal/handlers/const_test.go +++ b/internal/handlers/const_test.go @@ -21,7 +21,7 @@ var ( const ( testXOriginalMethod = "X-Original-Method" - testXOriginalUrl = "X-Original-Url" + testXOriginalUrl = "X-Original-URL" testBypass = "bypass" testWithoutAccept = "WithoutAccept" testWithXHRHeader = "WithXHRHeader" diff --git a/internal/handlers/handler_authz_impl_forwardauth_test.go b/internal/handlers/handler_authz_impl_forwardauth_test.go index de8be0ba5..fb5ac3066 100644 --- a/internal/handlers/handler_authz_impl_forwardauth_test.go +++ b/internal/handlers/handler_authz_impl_forwardauth_test.go @@ -240,7 +240,7 @@ func (s *ForwardAuthAuthzSuite) TestShouldHandleMissingHostDeny() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, "https") mock.Ctx.Request.Header.Del(fasthttp.HeaderXForwardedHost) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", "/") + mock.Ctx.Request.Header.Set("X-Forwarded-URI", "/") mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -395,7 +395,7 @@ func (s *ForwardAuthAuthzSuite) TestShouldHandleInvalidURLForCVE202132637() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.SetBytesKV([]byte(fasthttp.HeaderXForwardedProto), tc.scheme) mock.Ctx.Request.Header.SetBytesKV([]byte(fasthttp.HeaderXForwardedHost), tc.host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", tc.path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", tc.path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -560,7 +560,7 @@ func setRequestForwardAuth(ctx *middlewares.AutheliaCtx, method string, targetUR if targetURI != nil { ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, targetURI.Scheme) ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, targetURI.Host) - ctx.Request.Header.Set("X-Forwarded-Uri", targetURI.Path) + ctx.Request.Header.Set("X-Forwarded-URI", targetURI.Path) } setRequestXHRValues(ctx, accept, xhr) diff --git a/internal/handlers/handler_authz_impl_legacy_test.go b/internal/handlers/handler_authz_impl_legacy_test.go index 3b5238072..30949e387 100644 --- a/internal/handlers/handler_authz_impl_legacy_test.go +++ b/internal/handlers/handler_authz_impl_legacy_test.go @@ -60,7 +60,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleAllMethodsDeny() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, pairURI.TargetURI.Scheme) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, pairURI.TargetURI.Host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", pairURI.TargetURI.Path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", pairURI.TargetURI.Path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -108,7 +108,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleAllMethodsOverrideAutheliaURLDeny() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, pairURI.TargetURI.Scheme) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, pairURI.TargetURI.Host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", pairURI.TargetURI.Path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", pairURI.TargetURI.Path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -151,7 +151,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleAllMethodsMissingAutheliaURLBypassSta mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, targetURI.Scheme) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, targetURI.Host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", targetURI.Path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", targetURI.Path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -183,7 +183,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleAllMethodsMissingAutheliaURLOneFactor mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, targetURI.Scheme) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, targetURI.Host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", targetURI.Path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", targetURI.Path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -213,7 +213,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleAllMethodsRDAutheliaURLOneFactorStatu mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, targetURI.Scheme) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, targetURI.Host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", targetURI.Path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", targetURI.Path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") mock.Ctx.Request.SetRequestURI("/api/verify?rd=https%3A%2F%2Fauth.example.com") @@ -263,7 +263,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleAllMethodsXHRDeny() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, pairURI.TargetURI.Scheme) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, pairURI.TargetURI.Host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", pairURI.TargetURI.Path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", pairURI.TargetURI.Path) if x { mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") @@ -311,7 +311,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleInvalidMethodCharsDeny() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, targetURI.Scheme) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, targetURI.Host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", targetURI.Path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", targetURI.Path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -338,7 +338,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleMissingHostDeny() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, "https") mock.Ctx.Request.Header.Del(fasthttp.HeaderXForwardedHost) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", "/") + mock.Ctx.Request.Header.Set("X-Forwarded-URI", "/") mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -370,7 +370,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleAllMethodsAllow() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, targetURI.Scheme) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, targetURI.Host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", targetURI.Path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", targetURI.Path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -454,7 +454,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleAllMethodsAllowXHR() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, targetURI.Scheme) mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, targetURI.Host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", targetURI.Path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", targetURI.Path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) @@ -613,7 +613,7 @@ func (s *LegacyAuthzSuite) TestShouldHandleInvalidURLForCVE202132637() { mock.Ctx.Request.Header.Set("X-Forwarded-Method", method) mock.Ctx.Request.Header.SetBytesKV([]byte(fasthttp.HeaderXForwardedProto), tc.scheme) mock.Ctx.Request.Header.SetBytesKV([]byte(fasthttp.HeaderXForwardedHost), tc.host) - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", tc.path) + mock.Ctx.Request.Header.Set("X-Forwarded-URI", tc.path) mock.Ctx.Request.Header.Set(fasthttp.HeaderAccept, "text/html; charset=utf-8") authz.Handler(mock.Ctx) diff --git a/internal/middlewares/authelia_context.go b/internal/middlewares/authelia_context.go index f302636cd..8e380ba90 100644 --- a/internal/middlewares/authelia_context.go +++ b/internal/middlewares/authelia_context.go @@ -177,7 +177,7 @@ func (ctx *AutheliaCtx) GetXForwardedHost() (host []byte) { return host } -// XForwardedURI returns the content of the X-Forwarded-Uri header. +// XForwardedURI returns the content of the X-Forwarded-URI header. func (ctx *AutheliaCtx) XForwardedURI() (host []byte) { return ctx.Request.Header.PeekBytes(headerXForwardedURI) } diff --git a/internal/server/template_test.go b/internal/server/template_test.go index 330edb851..8a422f1b6 100644 --- a/internal/server/template_test.go +++ b/internal/server/template_test.go @@ -71,7 +71,7 @@ func TestShouldTemplateOpenAPI(t *testing.T) { mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedProto, "https") mock.Ctx.Request.Header.Set(fasthttp.HeaderXForwardedHost, "example.com") - mock.Ctx.Request.Header.Set("X-Forwarded-Uri", "/api/openapi.yml") + mock.Ctx.Request.Header.Set("X-Forwarded-URI", "/api/openapi.yml") handler(mock.Ctx) diff --git a/internal/suites/example/compose/envoy/docker-compose.yml b/internal/suites/example/compose/envoy/docker-compose.yml index 231a2cbe6..9f43154fb 100644 --- a/internal/suites/example/compose/envoy/docker-compose.yml +++ b/internal/suites/example/compose/envoy/docker-compose.yml @@ -2,7 +2,7 @@ version: '3' services: envoy: - image: envoyproxy/envoy:v1.25.5 + image: envoyproxy/envoy:v1.26.0 volumes: - ./example/compose/envoy/envoy.yaml:/etc/envoy/envoy.yaml - ./common/pki:/pki diff --git a/web/package.json b/web/package.json index 989e55d98..cae8d05d0 100644 --- a/web/package.json +++ b/web/package.json @@ -23,14 +23,14 @@ "@fortawesome/free-solid-svg-icons": "6.4.0", "@fortawesome/react-fontawesome": "0.2.0", "@mui/icons-material": "5.11.16", - "@mui/material": "5.12.0", + "@mui/material": "5.12.1", "@mui/styles": "5.12.0", "@simplewebauthn/browser": "7.2.0", "@simplewebauthn/typescript-types": "7.0.0", - "axios": "1.3.5", + "axios": "1.3.6", "broadcast-channel": "5.0.3", "classnames": "2.3.2", - "i18next": "22.4.14", + "i18next": "22.4.15", "i18next-browser-languagedetector": "7.0.1", "i18next-http-backend": "2.2.0", "qrcode.react": "3.1.0", @@ -77,16 +77,16 @@ "@limegrass/eslint-plugin-import-alias": "1.0.6", "@testing-library/jest-dom": "5.16.5", "@testing-library/react": "14.0.0", - "@types/node": "18.15.11", - "@types/react": "18.0.35", + "@types/node": "18.15.13", + "@types/react": "18.0.37", "@types/react-dom": "18.0.11", "@types/testing-library__jest-dom": "5.14.5", "@types/zxcvbn": "4.4.1", - "@typescript-eslint/eslint-plugin": "5.58.0", - "@typescript-eslint/parser": "5.58.0", - "@vitejs/plugin-react": "3.1.0", + "@typescript-eslint/eslint-plugin": "5.59.0", + "@typescript-eslint/parser": "5.59.0", + "@vitejs/plugin-react": "4.0.0", "@vitest/coverage-istanbul": "0.30.1", - "esbuild": "0.17.16", + "esbuild": "0.17.17", "eslint": "8.38.0", "eslint-config-prettier": "8.8.0", "eslint-config-react-app": "7.0.1", @@ -97,12 +97,12 @@ "eslint-plugin-prettier": "4.2.1", "eslint-plugin-react": "7.32.2", "eslint-plugin-react-hooks": "4.6.0", - "happy-dom": "9.7.1", + "happy-dom": "9.8.4", "husky": "8.0.3", "prettier": "2.8.7", "react-test-renderer": "18.2.0", "typescript": "5.0.4", - "vite": "4.2.1", + "vite": "4.3.1", "vite-plugin-eslint": "1.8.1", "vite-plugin-istanbul": "4.0.1", "vite-plugin-svgr": "2.4.0", diff --git a/web/pnpm-lock.yaml b/web/pnpm-lock.yaml index bf2f8dc4d..d82caa4f5 100644 --- a/web/pnpm-lock.yaml +++ b/web/pnpm-lock.yaml @@ -6,10 +6,10 @@ dependencies: version: 11.10.7 '@emotion/react': specifier: 11.10.6 - version: 11.10.6(@types/react@18.0.35)(react@18.2.0) + version: 11.10.6(@types/react@18.0.37)(react@18.2.0) '@emotion/styled': specifier: 11.10.6 - version: 11.10.6(@emotion/react@11.10.6)(@types/react@18.0.35)(react@18.2.0) + version: 11.10.6(@emotion/react@11.10.6)(@types/react@18.0.37)(react@18.2.0) '@fortawesome/fontawesome-svg-core': specifier: 6.4.0 version: 6.4.0 @@ -24,13 +24,13 @@ dependencies: version: 0.2.0(@fortawesome/fontawesome-svg-core@6.4.0)(react@18.2.0) '@mui/icons-material': specifier: 5.11.16 - version: 5.11.16(@mui/material@5.12.0)(@types/react@18.0.35)(react@18.2.0) + version: 5.11.16(@mui/material@5.12.1)(@types/react@18.0.37)(react@18.2.0) '@mui/material': - specifier: 5.12.0 - version: 5.12.0(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.35)(react-dom@18.2.0)(react@18.2.0) + specifier: 5.12.1 + version: 5.12.1(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.37)(react-dom@18.2.0)(react@18.2.0) '@mui/styles': specifier: 5.12.0 - version: 5.12.0(@types/react@18.0.35)(react@18.2.0) + version: 5.12.0(@types/react@18.0.37)(react@18.2.0) '@simplewebauthn/browser': specifier: 7.2.0 version: 7.2.0 @@ -38,8 +38,8 @@ dependencies: specifier: 7.0.0 version: 7.0.0 axios: - specifier: 1.3.5 - version: 1.3.5 + specifier: 1.3.6 + version: 1.3.6 broadcast-channel: specifier: 5.0.3 version: 5.0.3 @@ -47,8 +47,8 @@ dependencies: specifier: 2.3.2 version: 2.3.2 i18next: - specifier: 22.4.14 - version: 22.4.14 + specifier: 22.4.15 + version: 22.4.15 i18next-browser-languagedetector: specifier: 7.0.1 version: 7.0.1 @@ -66,7 +66,7 @@ dependencies: version: 18.2.0(react@18.2.0) react-i18next: specifier: 12.2.0 - version: 12.2.0(i18next@22.4.14)(react-dom@18.2.0)(react@18.2.0) + version: 12.2.0(i18next@22.4.15)(react-dom@18.2.0)(react@18.2.0) react-loading: specifier: 2.0.3 version: 2.0.3(prop-types@15.8.1)(react@18.2.0) @@ -97,11 +97,11 @@ devDependencies: specifier: 14.0.0 version: 14.0.0(react-dom@18.2.0)(react@18.2.0) '@types/node': - specifier: 18.15.11 - version: 18.15.11 + specifier: 18.15.13 + version: 18.15.13 '@types/react': - specifier: 18.0.35 - version: 18.0.35 + specifier: 18.0.37 + version: 18.0.37 '@types/react-dom': specifier: 18.0.11 version: 18.0.11 @@ -112,20 +112,20 @@ devDependencies: specifier: 4.4.1 version: 4.4.1 '@typescript-eslint/eslint-plugin': - specifier: 5.58.0 - version: 5.58.0(@typescript-eslint/parser@5.58.0)(eslint@8.38.0)(typescript@5.0.4) + specifier: 5.59.0 + version: 5.59.0(@typescript-eslint/parser@5.59.0)(eslint@8.38.0)(typescript@5.0.4) '@typescript-eslint/parser': - specifier: 5.58.0 - version: 5.58.0(eslint@8.38.0)(typescript@5.0.4) + specifier: 5.59.0 + version: 5.59.0(eslint@8.38.0)(typescript@5.0.4) '@vitejs/plugin-react': - specifier: 3.1.0 - version: 3.1.0(vite@4.2.1) + specifier: 4.0.0 + version: 4.0.0(vite@4.3.1) '@vitest/coverage-istanbul': specifier: 0.30.1 version: 0.30.1(vitest@0.30.1) esbuild: - specifier: 0.17.16 - version: 0.17.16 + specifier: 0.17.17 + version: 0.17.17 eslint: specifier: 8.38.0 version: 8.38.0 @@ -140,10 +140,10 @@ devDependencies: version: 1.0.5 eslint-import-resolver-typescript: specifier: 3.5.5 - version: 3.5.5(@typescript-eslint/parser@5.58.0)(eslint-plugin-import@2.27.5)(eslint@8.38.0) + version: 3.5.5(@typescript-eslint/parser@5.59.0)(eslint-plugin-import@2.27.5)(eslint@8.38.0) eslint-plugin-import: specifier: 2.27.5 - version: 2.27.5(@typescript-eslint/parser@5.58.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) + version: 2.27.5(@typescript-eslint/parser@5.59.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) eslint-plugin-jsx-a11y: specifier: 6.7.1 version: 6.7.1(eslint@8.38.0) @@ -157,8 +157,8 @@ devDependencies: specifier: 4.6.0 version: 4.6.0(eslint@8.38.0) happy-dom: - specifier: 9.7.1 - version: 9.7.1 + specifier: 9.8.4 + version: 9.8.4 husky: specifier: 8.0.3 version: 8.0.3 @@ -172,23 +172,23 @@ devDependencies: specifier: 5.0.4 version: 5.0.4 vite: - specifier: 4.2.1 - version: 4.2.1(@types/node@18.15.11) + specifier: 4.3.1 + version: 4.3.1(@types/node@18.15.13) vite-plugin-eslint: specifier: 1.8.1 - version: 1.8.1(eslint@8.38.0)(vite@4.2.1) + version: 1.8.1(eslint@8.38.0)(vite@4.3.1) vite-plugin-istanbul: specifier: 4.0.1 - version: 4.0.1(vite@4.2.1) + version: 4.0.1(vite@4.3.1) vite-plugin-svgr: specifier: 2.4.0 - version: 2.4.0(vite@4.2.1) + version: 2.4.0(vite@4.3.1) vite-tsconfig-paths: specifier: 4.2.0 - version: 4.2.0(typescript@5.0.4)(vite@4.2.1) + version: 4.2.0(typescript@5.0.4)(vite@4.3.1) vitest: specifier: 0.30.1 - version: 0.30.1(happy-dom@9.7.1) + version: 0.30.1(happy-dom@9.8.4) vitest-preview: specifier: 0.0.1 version: 0.0.1 @@ -1639,15 +1639,15 @@ packages: '@commitlint/execute-rule': 17.4.0 '@commitlint/resolve-extends': 17.4.4 '@commitlint/types': 17.4.4 - '@types/node': 18.15.11 + '@types/node': 18.15.13 chalk: 4.1.2 cosmiconfig: 8.1.3 - cosmiconfig-typescript-loader: 4.3.0(@types/node@18.15.11)(cosmiconfig@8.1.3)(ts-node@10.9.1)(typescript@5.0.4) + cosmiconfig-typescript-loader: 4.3.0(@types/node@18.15.13)(cosmiconfig@8.1.3)(ts-node@10.9.1)(typescript@5.0.4) lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 lodash.uniq: 4.5.0 resolve-from: 5.0.0 - ts-node: 10.9.1(@types/node@18.15.11)(typescript@5.0.4) + ts-node: 10.9.1(@types/node@18.15.13)(typescript@5.0.4) typescript: 5.0.4 transitivePeerDependencies: - '@swc/core' @@ -1768,7 +1768,7 @@ packages: resolution: {integrity: sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==} dev: false - /@emotion/react@11.10.6(@types/react@18.0.35)(react@18.2.0): + /@emotion/react@11.10.6(@types/react@18.0.37)(react@18.2.0): resolution: {integrity: sha512-6HT8jBmcSkfzO7mc+N1L9uwvOnlcGoix8Zn7srt+9ga0MjREo6lRpuVX0kzo6Jp6oTqDhREOFsygN6Ew4fEQbw==} peerDependencies: '@types/react': '*' @@ -1784,7 +1784,7 @@ packages: '@emotion/use-insertion-effect-with-fallbacks': 1.0.0(react@18.2.0) '@emotion/utils': 1.2.0 '@emotion/weak-memoize': 0.3.0 - '@types/react': 18.0.35 + '@types/react': 18.0.37 hoist-non-react-statics: 3.3.2 react: 18.2.0 dev: false @@ -1803,7 +1803,7 @@ packages: resolution: {integrity: sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==} dev: false - /@emotion/styled@11.10.6(@emotion/react@11.10.6)(@types/react@18.0.35)(react@18.2.0): + /@emotion/styled@11.10.6(@emotion/react@11.10.6)(@types/react@18.0.37)(react@18.2.0): resolution: {integrity: sha512-OXtBzOmDSJo5Q0AFemHCfl+bUueT8BIcPSxu0EGTpGk6DmI5dnhSzQANm1e1ze0YZL7TDyAyy6s/b/zmGOS3Og==} peerDependencies: '@emotion/react': ^11.0.0-rc.0 @@ -1816,11 +1816,11 @@ packages: '@babel/runtime': 7.21.0 '@emotion/babel-plugin': 11.10.6 '@emotion/is-prop-valid': 1.2.0 - '@emotion/react': 11.10.6(@types/react@18.0.35)(react@18.2.0) + '@emotion/react': 11.10.6(@types/react@18.0.37)(react@18.2.0) '@emotion/serialize': 1.1.1 '@emotion/use-insertion-effect-with-fallbacks': 1.0.0(react@18.2.0) '@emotion/utils': 1.2.0 - '@types/react': 18.0.35 + '@types/react': 18.0.37 react: 18.2.0 dev: false @@ -1844,8 +1844,8 @@ packages: resolution: {integrity: sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==} dev: false - /@esbuild/android-arm64@0.17.16: - resolution: {integrity: sha512-QX48qmsEZW+gcHgTmAj+x21mwTz8MlYQBnzF6861cNdQGvj2jzzFjqH0EBabrIa/WVZ2CHolwMoqxVryqKt8+Q==} + /@esbuild/android-arm64@0.17.17: + resolution: {integrity: sha512-jaJ5IlmaDLFPNttv0ofcwy/cfeY4bh/n705Tgh+eLObbGtQBK3EPAu+CzL95JVE4nFAliyrnEu0d32Q5foavqg==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -1862,8 +1862,8 @@ packages: dev: true optional: true - /@esbuild/android-arm@0.17.16: - resolution: {integrity: sha512-baLqRpLe4JnKrUXLJChoTN0iXZH7El/mu58GE3WIA6/H834k0XWvLRmGLG8y8arTRS9hJJibPnF0tiGhmWeZgw==} + /@esbuild/android-arm@0.17.17: + resolution: {integrity: sha512-E6VAZwN7diCa3labs0GYvhEPL2M94WLF8A+czO8hfjREXxba8Ng7nM5VxV+9ihNXIY1iQO1XxUU4P7hbqbICxg==} engines: {node: '>=12'} cpu: [arm] os: [android] @@ -1871,8 +1871,8 @@ packages: dev: true optional: true - /@esbuild/android-x64@0.17.16: - resolution: {integrity: sha512-G4wfHhrrz99XJgHnzFvB4UwwPxAWZaZBOFXh+JH1Duf1I4vIVfuYY9uVLpx4eiV2D/Jix8LJY+TAdZ3i40tDow==} + /@esbuild/android-x64@0.17.17: + resolution: {integrity: sha512-446zpfJ3nioMC7ASvJB1pszHVskkw4u/9Eu8s5yvvsSDTzYh4p4ZIRj0DznSl3FBF0Z/mZfrKXTtt0QCoFmoHA==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -1880,8 +1880,8 @@ packages: dev: true optional: true - /@esbuild/darwin-arm64@0.17.16: - resolution: {integrity: sha512-/Ofw8UXZxuzTLsNFmz1+lmarQI6ztMZ9XktvXedTbt3SNWDn0+ODTwxExLYQ/Hod91EZB4vZPQJLoqLF0jvEzA==} + /@esbuild/darwin-arm64@0.17.17: + resolution: {integrity: sha512-m/gwyiBwH3jqfUabtq3GH31otL/0sE0l34XKpSIqR7NjQ/XHQ3lpmQHLHbG8AHTGCw8Ao059GvV08MS0bhFIJQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -1889,8 +1889,8 @@ packages: dev: true optional: true - /@esbuild/darwin-x64@0.17.16: - resolution: {integrity: sha512-SzBQtCV3Pdc9kyizh36Ol+dNVhkDyIrGb/JXZqFq8WL37LIyrXU0gUpADcNV311sCOhvY+f2ivMhb5Tuv8nMOQ==} + /@esbuild/darwin-x64@0.17.17: + resolution: {integrity: sha512-4utIrsX9IykrqYaXR8ob9Ha2hAY2qLc6ohJ8c0CN1DR8yWeMrTgYFjgdeQ9LIoTOfLetXjuCu5TRPHT9yKYJVg==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -1898,8 +1898,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-arm64@0.17.16: - resolution: {integrity: sha512-ZqftdfS1UlLiH1DnS2u3It7l4Bc3AskKeu+paJSfk7RNOMrOxmeFDhLTMQqMxycP1C3oj8vgkAT6xfAuq7ZPRA==} + /@esbuild/freebsd-arm64@0.17.17: + resolution: {integrity: sha512-4PxjQII/9ppOrpEwzQ1b0pXCsFLqy77i0GaHodrmzH9zq2/NEhHMAMJkJ635Ns4fyJPFOlHMz4AsklIyRqFZWA==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -1907,8 +1907,8 @@ packages: dev: true optional: true - /@esbuild/freebsd-x64@0.17.16: - resolution: {integrity: sha512-rHV6zNWW1tjgsu0dKQTX9L0ByiJHHLvQKrWtnz8r0YYJI27FU3Xu48gpK2IBj1uCSYhJ+pEk6Y0Um7U3rIvV8g==} + /@esbuild/freebsd-x64@0.17.17: + resolution: {integrity: sha512-lQRS+4sW5S3P1sv0z2Ym807qMDfkmdhUYX30GRBURtLTrJOPDpoU0kI6pVz1hz3U0+YQ0tXGS9YWveQjUewAJw==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -1916,8 +1916,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm64@0.17.16: - resolution: {integrity: sha512-8yoZhGkU6aHu38WpaM4HrRLTFc7/VVD9Q2SvPcmIQIipQt2I/GMTZNdEHXoypbbGao5kggLcxg0iBKjo0SQYKA==} + /@esbuild/linux-arm64@0.17.17: + resolution: {integrity: sha512-2+pwLx0whKY1/Vqt8lyzStyda1v0qjJ5INWIe+d8+1onqQxHLLi3yr5bAa4gvbzhZqBztifYEu8hh1La5+7sUw==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -1925,8 +1925,8 @@ packages: dev: true optional: true - /@esbuild/linux-arm@0.17.16: - resolution: {integrity: sha512-n4O8oVxbn7nl4+m+ISb0a68/lcJClIbaGAoXwqeubj/D1/oMMuaAXmJVfFlRjJLu/ZvHkxoiFJnmbfp4n8cdSw==} + /@esbuild/linux-arm@0.17.17: + resolution: {integrity: sha512-biDs7bjGdOdcmIk6xU426VgdRUpGg39Yz6sT9Xp23aq+IEHDb/u5cbmu/pAANpDB4rZpY/2USPhCA+w9t3roQg==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -1934,8 +1934,8 @@ packages: dev: true optional: true - /@esbuild/linux-ia32@0.17.16: - resolution: {integrity: sha512-9ZBjlkdaVYxPNO8a7OmzDbOH9FMQ1a58j7Xb21UfRU29KcEEU3VTHk+Cvrft/BNv0gpWJMiiZ/f4w0TqSP0gLA==} + /@esbuild/linux-ia32@0.17.17: + resolution: {integrity: sha512-IBTTv8X60dYo6P2t23sSUYym8fGfMAiuv7PzJ+0LcdAndZRzvke+wTVxJeCq4WgjppkOpndL04gMZIFvwoU34Q==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -1952,8 +1952,8 @@ packages: dev: true optional: true - /@esbuild/linux-loong64@0.17.16: - resolution: {integrity: sha512-TIZTRojVBBzdgChY3UOG7BlPhqJz08AL7jdgeeu+kiObWMFzGnQD7BgBBkWRwOtKR1i2TNlO7YK6m4zxVjjPRQ==} + /@esbuild/linux-loong64@0.17.17: + resolution: {integrity: sha512-WVMBtcDpATjaGfWfp6u9dANIqmU9r37SY8wgAivuKmgKHE+bWSuv0qXEFt/p3qXQYxJIGXQQv6hHcm7iWhWjiw==} engines: {node: '>=12'} cpu: [loong64] os: [linux] @@ -1961,8 +1961,8 @@ packages: dev: true optional: true - /@esbuild/linux-mips64el@0.17.16: - resolution: {integrity: sha512-UPeRuFKCCJYpBbIdczKyHLAIU31GEm0dZl1eMrdYeXDH+SJZh/i+2cAmD3A1Wip9pIc5Sc6Kc5cFUrPXtR0XHA==} + /@esbuild/linux-mips64el@0.17.17: + resolution: {integrity: sha512-2kYCGh8589ZYnY031FgMLy0kmE4VoGdvfJkxLdxP4HJvWNXpyLhjOvxVsYjYZ6awqY4bgLR9tpdYyStgZZhi2A==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -1970,8 +1970,8 @@ packages: dev: true optional: true - /@esbuild/linux-ppc64@0.17.16: - resolution: {integrity: sha512-io6yShgIEgVUhExJejJ21xvO5QtrbiSeI7vYUnr7l+v/O9t6IowyhdiYnyivX2X5ysOVHAuyHW+Wyi7DNhdw6Q==} + /@esbuild/linux-ppc64@0.17.17: + resolution: {integrity: sha512-KIdG5jdAEeAKogfyMTcszRxy3OPbZhq0PPsW4iKKcdlbk3YE4miKznxV2YOSmiK/hfOZ+lqHri3v8eecT2ATwQ==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -1979,8 +1979,8 @@ packages: dev: true optional: true - /@esbuild/linux-riscv64@0.17.16: - resolution: {integrity: sha512-WhlGeAHNbSdG/I2gqX2RK2gfgSNwyJuCiFHMc8s3GNEMMHUI109+VMBfhVqRb0ZGzEeRiibi8dItR3ws3Lk+cA==} + /@esbuild/linux-riscv64@0.17.17: + resolution: {integrity: sha512-Cj6uWLBR5LWhcD/2Lkfg2NrkVsNb2sFM5aVEfumKB2vYetkA/9Uyc1jVoxLZ0a38sUhFk4JOVKH0aVdPbjZQeA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -1988,8 +1988,8 @@ packages: dev: true optional: true - /@esbuild/linux-s390x@0.17.16: - resolution: {integrity: sha512-gHRReYsJtViir63bXKoFaQ4pgTyah4ruiMRQ6im9YZuv+gp3UFJkNTY4sFA73YDynmXZA6hi45en4BGhNOJUsw==} + /@esbuild/linux-s390x@0.17.17: + resolution: {integrity: sha512-lK+SffWIr0XsFf7E0srBjhpkdFVJf3HEgXCwzkm69kNbRar8MhezFpkIwpk0qo2IOQL4JE4mJPJI8AbRPLbuOQ==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -1997,8 +1997,8 @@ packages: dev: true optional: true - /@esbuild/linux-x64@0.17.16: - resolution: {integrity: sha512-mfiiBkxEbUHvi+v0P+TS7UnA9TeGXR48aK4XHkTj0ZwOijxexgMF01UDFaBX7Q6CQsB0d+MFNv9IiXbIHTNd4g==} + /@esbuild/linux-x64@0.17.17: + resolution: {integrity: sha512-XcSGTQcWFQS2jx3lZtQi7cQmDYLrpLRyz1Ns1DzZCtn898cWfm5Icx/DEWNcTU+T+tyPV89RQtDnI7qL2PObPg==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -2006,8 +2006,8 @@ packages: dev: true optional: true - /@esbuild/netbsd-x64@0.17.16: - resolution: {integrity: sha512-n8zK1YRDGLRZfVcswcDMDM0j2xKYLNXqei217a4GyBxHIuPMGrrVuJ+Ijfpr0Kufcm7C1k/qaIrGy6eG7wvgmA==} + /@esbuild/netbsd-x64@0.17.17: + resolution: {integrity: sha512-RNLCDmLP5kCWAJR+ItLM3cHxzXRTe4N00TQyQiimq+lyqVqZWGPAvcyfUBM0isE79eEZhIuGN09rAz8EL5KdLA==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -2015,8 +2015,8 @@ packages: dev: true optional: true - /@esbuild/openbsd-x64@0.17.16: - resolution: {integrity: sha512-lEEfkfsUbo0xC47eSTBqsItXDSzwzwhKUSsVaVjVji07t8+6KA5INp2rN890dHZeueXJAI8q0tEIfbwVRYf6Ew==} + /@esbuild/openbsd-x64@0.17.17: + resolution: {integrity: sha512-PAXswI5+cQq3Pann7FNdcpSUrhrql3wKjj3gVkmuz6OHhqqYxKvi6GgRBoaHjaG22HV/ZZEgF9TlS+9ftHVigA==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -2024,8 +2024,8 @@ packages: dev: true optional: true - /@esbuild/sunos-x64@0.17.16: - resolution: {integrity: sha512-jlRjsuvG1fgGwnE8Afs7xYDnGz0dBgTNZfgCK6TlvPH3Z13/P5pi6I57vyLE8qZYLrGVtwcm9UbUx1/mZ8Ukag==} + /@esbuild/sunos-x64@0.17.17: + resolution: {integrity: sha512-V63egsWKnx/4V0FMYkr9NXWrKTB5qFftKGKuZKFIrAkO/7EWLFnbBZNM1CvJ6Sis+XBdPws2YQSHF1Gqf1oj/Q==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -2033,8 +2033,8 @@ packages: dev: true optional: true - /@esbuild/win32-arm64@0.17.16: - resolution: {integrity: sha512-TzoU2qwVe2boOHl/3KNBUv2PNUc38U0TNnzqOAcgPiD/EZxT2s736xfC2dYQbszAwo4MKzzwBV0iHjhfjxMimg==} + /@esbuild/win32-arm64@0.17.17: + resolution: {integrity: sha512-YtUXLdVnd6YBSYlZODjWzH+KzbaubV0YVd6UxSfoFfa5PtNJNaW+1i+Hcmjpg2nEe0YXUCNF5bkKy1NnBv1y7Q==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -2042,8 +2042,8 @@ packages: dev: true optional: true - /@esbuild/win32-ia32@0.17.16: - resolution: {integrity: sha512-B8b7W+oo2yb/3xmwk9Vc99hC9bNolvqjaTZYEfMQhzdpBsjTvZBlXQ/teUE55Ww6sg//wlcDjOaqldOKyigWdA==} + /@esbuild/win32-ia32@0.17.17: + resolution: {integrity: sha512-yczSLRbDdReCO74Yfc5tKG0izzm+lPMYyO1fFTcn0QNwnKmc3K+HdxZWLGKg4pZVte7XVgcFku7TIZNbWEJdeQ==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -2051,8 +2051,8 @@ packages: dev: true optional: true - /@esbuild/win32-x64@0.17.16: - resolution: {integrity: sha512-xJ7OH/nanouJO9pf03YsL9NAFQBHd8AqfrQd7Pf5laGyyTt/gToul6QYOA/i5i/q8y9iaM5DQFNTgpi995VkOg==} + /@esbuild/win32-x64@0.17.17: + resolution: {integrity: sha512-FNZw7H3aqhF9OyRQbDDnzUApDXfC1N6fgBhkqEO2jvYCJ+DxMTfZVqg3AX0R1khg1wHTBRD5SdcibSJ+XF6bFg==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -2195,7 +2195,7 @@ packages: '@jest/schemas': 29.4.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 18.15.11 + '@types/node': 18.15.13 '@types/yargs': 17.0.24 chalk: 4.1.2 dev: true @@ -2259,8 +2259,8 @@ packages: tsconfig-paths: 3.14.2 dev: true - /@mui/base@5.0.0-alpha.125(@types/react@18.0.35)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-hAHJJ97SATu6SrkLH/HsAayK1zMZt89lrWyKuAInBKVyn363H78d1MnwyZwre9vDK5MrPoDL/NnZxtAXhwTnBA==} + /@mui/base@5.0.0-alpha.126(@types/react@18.0.37)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-I5e52A0Muv9Gaoy2GcqbYrQ6dpRyC2UXeA00brT3HuW0nF0E4fiTOIqdNTN+N5gyaYK0z3O6jtLt/97CCrIxVA==} engines: {node: '>=12.0.0'} peerDependencies: '@types/react': ^17.0.0 || ^18.0.0 || 18 @@ -2272,10 +2272,10 @@ packages: dependencies: '@babel/runtime': 7.21.0 '@emotion/is-prop-valid': 1.2.0 - '@mui/types': 7.2.4(@types/react@18.0.35) + '@mui/types': 7.2.4(@types/react@18.0.37) '@mui/utils': 5.12.0(react@18.2.0) '@popperjs/core': 2.11.7 - '@types/react': 18.0.35 + '@types/react': 18.0.37 clsx: 1.2.1 prop-types: 15.8.1 react: 18.2.0 @@ -2283,11 +2283,11 @@ packages: react-is: 18.2.0 dev: false - /@mui/core-downloads-tracker@5.12.0: - resolution: {integrity: sha512-1hoFIdlLI0sG+mkJgm70FjgIVpfLcE1vxPtNolg1tLFXrvbXGUYp9NHy3d6c41nDkg2OajuVS+Mn6A8UirFuMw==} + /@mui/core-downloads-tracker@5.12.1: + resolution: {integrity: sha512-rNiQYHtkXljcvCEnhWrJzie1ifff5O98j3uW7ZlchFgD8HWxEcz/QoxZvo+sCKC9aayAgxi9RsVn2VjCyp5CrA==} dev: false - /@mui/icons-material@5.11.16(@mui/material@5.12.0)(@types/react@18.0.35)(react@18.2.0): + /@mui/icons-material@5.11.16(@mui/material@5.12.1)(@types/react@18.0.37)(react@18.2.0): resolution: {integrity: sha512-oKkx9z9Kwg40NtcIajF9uOXhxiyTZrrm9nmIJ4UjkU2IdHpd4QVLbCc/5hZN/y0C6qzi2Zlxyr9TGddQx2vx2A==} engines: {node: '>=12.0.0'} peerDependencies: @@ -2299,13 +2299,13 @@ packages: optional: true dependencies: '@babel/runtime': 7.21.0 - '@mui/material': 5.12.0(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.35)(react-dom@18.2.0)(react@18.2.0) - '@types/react': 18.0.35 + '@mui/material': 5.12.1(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.37)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.0.37 react: 18.2.0 dev: false - /@mui/material@5.12.0(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.35)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-IMellv153zJ6+xfhLWgXpAm/9hsX8qE6gP66xWcW/Pf2B8ubyVhmkTXsp8pAJxk81D6p/EyYcnAjo5DiDVkj9g==} + /@mui/material@5.12.1(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.37)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-m+G9J6+FzIMhRqKV2y30yONH97wX107z9EWgiNCeS1/+y1CnytFZNG1ENdOuaJo1NimCRnmB/iXPvoOaSo6dOg==} engines: {node: '>=12.0.0'} peerDependencies: '@emotion/react': ^11.5.0 @@ -2322,14 +2322,14 @@ packages: optional: true dependencies: '@babel/runtime': 7.21.0 - '@emotion/react': 11.10.6(@types/react@18.0.35)(react@18.2.0) - '@emotion/styled': 11.10.6(@emotion/react@11.10.6)(@types/react@18.0.35)(react@18.2.0) - '@mui/base': 5.0.0-alpha.125(@types/react@18.0.35)(react-dom@18.2.0)(react@18.2.0) - '@mui/core-downloads-tracker': 5.12.0 - '@mui/system': 5.12.0(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.35)(react@18.2.0) - '@mui/types': 7.2.4(@types/react@18.0.35) + '@emotion/react': 11.10.6(@types/react@18.0.37)(react@18.2.0) + '@emotion/styled': 11.10.6(@emotion/react@11.10.6)(@types/react@18.0.37)(react@18.2.0) + '@mui/base': 5.0.0-alpha.126(@types/react@18.0.37)(react-dom@18.2.0)(react@18.2.0) + '@mui/core-downloads-tracker': 5.12.1 + '@mui/system': 5.12.1(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.37)(react@18.2.0) + '@mui/types': 7.2.4(@types/react@18.0.37) '@mui/utils': 5.12.0(react@18.2.0) - '@types/react': 18.0.35 + '@types/react': 18.0.37 '@types/react-transition-group': 4.4.5 clsx: 1.2.1 csstype: 3.1.2 @@ -2340,7 +2340,7 @@ packages: react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0) dev: false - /@mui/private-theming@5.12.0(@types/react@18.0.35)(react@18.2.0): + /@mui/private-theming@5.12.0(@types/react@18.0.37)(react@18.2.0): resolution: {integrity: sha512-w5dwMen1CUm1puAtubqxY9BIzrBxbOThsg2iWMvRJmWyJAPdf3Z583fPXpqeA2lhTW79uH2jajk5Ka4FuGlTPg==} engines: {node: '>=12.0.0'} peerDependencies: @@ -2352,7 +2352,7 @@ packages: dependencies: '@babel/runtime': 7.21.0 '@mui/utils': 5.12.0(react@18.2.0) - '@types/react': 18.0.35 + '@types/react': 18.0.37 prop-types: 15.8.1 react: 18.2.0 dev: false @@ -2372,14 +2372,14 @@ packages: dependencies: '@babel/runtime': 7.21.0 '@emotion/cache': 11.10.7 - '@emotion/react': 11.10.6(@types/react@18.0.35)(react@18.2.0) - '@emotion/styled': 11.10.6(@emotion/react@11.10.6)(@types/react@18.0.35)(react@18.2.0) + '@emotion/react': 11.10.6(@types/react@18.0.37)(react@18.2.0) + '@emotion/styled': 11.10.6(@emotion/react@11.10.6)(@types/react@18.0.37)(react@18.2.0) csstype: 3.1.2 prop-types: 15.8.1 react: 18.2.0 dev: false - /@mui/styles@5.12.0(@types/react@18.0.35)(react@18.2.0): + /@mui/styles@5.12.0(@types/react@18.0.37)(react@18.2.0): resolution: {integrity: sha512-X7obkgZTd9X+7igqwKKe8pEncyXYdUCNmyJfHruV9TSc6LThoI29OYs6hkN6n+7ueNli+YDKdZ+TCoC1GpJuOw==} engines: {node: '>=12.0.0'} peerDependencies: @@ -2391,10 +2391,10 @@ packages: dependencies: '@babel/runtime': 7.21.0 '@emotion/hash': 0.9.0 - '@mui/private-theming': 5.12.0(@types/react@18.0.35)(react@18.2.0) - '@mui/types': 7.2.4(@types/react@18.0.35) + '@mui/private-theming': 5.12.0(@types/react@18.0.37)(react@18.2.0) + '@mui/types': 7.2.4(@types/react@18.0.37) '@mui/utils': 5.12.0(react@18.2.0) - '@types/react': 18.0.35 + '@types/react': 18.0.37 clsx: 1.2.1 csstype: 3.1.2 hoist-non-react-statics: 3.3.2 @@ -2410,8 +2410,8 @@ packages: react: 18.2.0 dev: false - /@mui/system@5.12.0(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.35)(react@18.2.0): - resolution: {integrity: sha512-Zi+WHuiJfK1ya+9+oeJQ1rLIBdY8CGDYT5oVlQg/6kIuyiCaE6SnN9PVzxBxfY77wHuOPwz4kxcPe9srdZc12Q==} + /@mui/system@5.12.1(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(@types/react@18.0.37)(react@18.2.0): + resolution: {integrity: sha512-Po+sicdV3bbRYXdU29XZaHPZrW7HUYUqU1qCu77GCCEMbahC756YpeyefdIYuPMUg0OdO3gKIUfDISBrkjJL+w==} engines: {node: '>=12.0.0'} peerDependencies: '@emotion/react': ^11.5.0 @@ -2427,20 +2427,20 @@ packages: optional: true dependencies: '@babel/runtime': 7.21.0 - '@emotion/react': 11.10.6(@types/react@18.0.35)(react@18.2.0) - '@emotion/styled': 11.10.6(@emotion/react@11.10.6)(@types/react@18.0.35)(react@18.2.0) - '@mui/private-theming': 5.12.0(@types/react@18.0.35)(react@18.2.0) + '@emotion/react': 11.10.6(@types/react@18.0.37)(react@18.2.0) + '@emotion/styled': 11.10.6(@emotion/react@11.10.6)(@types/react@18.0.37)(react@18.2.0) + '@mui/private-theming': 5.12.0(@types/react@18.0.37)(react@18.2.0) '@mui/styled-engine': 5.12.0(@emotion/react@11.10.6)(@emotion/styled@11.10.6)(react@18.2.0) - '@mui/types': 7.2.4(@types/react@18.0.35) + '@mui/types': 7.2.4(@types/react@18.0.37) '@mui/utils': 5.12.0(react@18.2.0) - '@types/react': 18.0.35 + '@types/react': 18.0.37 clsx: 1.2.1 csstype: 3.1.2 prop-types: 15.8.1 react: 18.2.0 dev: false - /@mui/types@7.2.4(@types/react@18.0.35): + /@mui/types@7.2.4(@types/react@18.0.37): resolution: {integrity: sha512-LBcwa8rN84bKF+f5sDyku42w1NTxaPgPyYKODsh01U1fVstTClbUoSA96oyRBnSNyEiAVjKm6Gwx9vjR+xyqHA==} peerDependencies: '@types/react': '*' @@ -2448,7 +2448,7 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.0.35 + '@types/react': 18.0.37 dev: false /@mui/utils@5.12.0(react@18.2.0): @@ -2745,7 +2745,7 @@ packages: resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} dependencies: '@types/connect': 3.4.35 - '@types/node': 18.15.11 + '@types/node': 18.15.13 dev: true /@types/chai-subset@1.3.3: @@ -2761,7 +2761,7 @@ packages: /@types/connect@3.4.35: resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} dependencies: - '@types/node': 18.15.11 + '@types/node': 18.15.13 dev: true /@types/eslint@8.37.0: @@ -2778,7 +2778,7 @@ packages: /@types/express-serve-static-core@4.17.33: resolution: {integrity: sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==} dependencies: - '@types/node': 18.15.11 + '@types/node': 18.15.13 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 dev: true @@ -2831,8 +2831,8 @@ packages: resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} dev: true - /@types/node@18.15.11: - resolution: {integrity: sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==} + /@types/node@18.15.13: + resolution: {integrity: sha512-N+0kuo9KgrUQ1Sn/ifDXsvg0TTleP7rIy4zOBGECxAljqvqfqpTfzx0Q1NUedOixRMBfe2Whhb056a42cWs26Q==} dev: true /@types/normalize-package-data@2.4.1: @@ -2856,23 +2856,23 @@ packages: /@types/react-dom@18.0.11: resolution: {integrity: sha512-O38bPbI2CWtgw/OoQoY+BRelw7uysmXbWvw3nLWO21H1HSh+GOlqPuXshJfjmpNlKiiSDG9cc1JZAaMmVdcTlw==} dependencies: - '@types/react': 18.0.35 + '@types/react': 18.0.37 dev: true /@types/react-is@17.0.3: resolution: {integrity: sha512-aBTIWg1emtu95bLTLx0cpkxwGW3ueZv71nE2YFBpL8k/z5czEW8yYpOo8Dp+UUAFAtKwNaOsh/ioSeQnWlZcfw==} dependencies: - '@types/react': 18.0.35 + '@types/react': 18.0.37 dev: false /@types/react-transition-group@4.4.5: resolution: {integrity: sha512-juKD/eiSM3/xZYzjuzH6ZwpP+/lejltmiS3QEzV/vmb/Q8+HfDmxu+Baga8UEMGBqV88Nbg4l2hY/K2DkyaLLA==} dependencies: - '@types/react': 18.0.35 + '@types/react': 18.0.37 dev: false - /@types/react@18.0.35: - resolution: {integrity: sha512-6Laome31HpetaIUGFWl1VQ3mdSImwxtFZ39rh059a1MNnKGqBpC88J6NJ8n/Is3Qx7CefDGLgf/KhN/sYCf7ag==} + /@types/react@18.0.37: + resolution: {integrity: sha512-4yaZZtkRN3ZIQD3KSEwkfcik8s0SWV+82dlJot1AbGYHCzJkWP3ENBY6wYeDRmKZ6HkrgoGAmR2HqdwYGp6OEw==} dependencies: '@types/prop-types': 15.7.5 '@types/scheduler': 0.16.3 @@ -2889,7 +2889,7 @@ packages: resolution: {integrity: sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==} dependencies: '@types/mime': 3.0.1 - '@types/node': 18.15.11 + '@types/node': 18.15.13 dev: true /@types/stack-utils@2.0.1: @@ -2916,8 +2916,8 @@ packages: resolution: {integrity: sha512-3NoqvZC2W5gAC5DZbTpCeJ251vGQmgcWIHQJGq2J240HY6ErQ9aWKkwfoKJlHLx+A83WPNTZ9+3cd2ILxbvr1w==} dev: true - /@typescript-eslint/eslint-plugin@5.58.0(@typescript-eslint/parser@5.58.0)(eslint@8.38.0)(typescript@5.0.4): - resolution: {integrity: sha512-vxHvLhH0qgBd3/tW6/VccptSfc8FxPQIkmNTVLWcCOVqSBvqpnKkBTYrhcGlXfSnd78azwe+PsjYFj0X34/njA==} + /@typescript-eslint/eslint-plugin@5.59.0(@typescript-eslint/parser@5.59.0)(eslint@8.38.0)(typescript@5.0.4): + resolution: {integrity: sha512-p0QgrEyrxAWBecR56gyn3wkG15TJdI//eetInP3zYRewDh0XS+DhB3VUAd3QqvziFsfaQIoIuZMxZRB7vXYaYw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: '@typescript-eslint/parser': ^5.0.0 @@ -2928,10 +2928,10 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.5.0 - '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@5.0.4) - '@typescript-eslint/scope-manager': 5.58.0 - '@typescript-eslint/type-utils': 5.58.0(eslint@8.38.0)(typescript@5.0.4) - '@typescript-eslint/utils': 5.58.0(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/parser': 5.59.0(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/scope-manager': 5.59.0 + '@typescript-eslint/type-utils': 5.59.0(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/utils': 5.59.0(eslint@8.38.0)(typescript@5.0.4) debug: 4.3.4 eslint: 8.38.0 grapheme-splitter: 1.0.4 @@ -2957,8 +2957,8 @@ packages: - typescript dev: true - /@typescript-eslint/parser@5.58.0(eslint@8.38.0)(typescript@5.0.4): - resolution: {integrity: sha512-ixaM3gRtlfrKzP8N6lRhBbjTow1t6ztfBvQNGuRM8qH1bjFFXIJ35XY+FC0RRBKn3C6cT+7VW1y8tNm7DwPHDQ==} + /@typescript-eslint/parser@5.59.0(eslint@8.38.0)(typescript@5.0.4): + resolution: {integrity: sha512-qK9TZ70eJtjojSUMrrEwA9ZDQ4N0e/AuoOIgXuNBorXYcBDk397D2r5MIe1B3cok/oCtdNC5j+lUUpVB+Dpb+w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -2967,9 +2967,9 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 5.58.0 - '@typescript-eslint/types': 5.58.0 - '@typescript-eslint/typescript-estree': 5.58.0(typescript@5.0.4) + '@typescript-eslint/scope-manager': 5.59.0 + '@typescript-eslint/types': 5.59.0 + '@typescript-eslint/typescript-estree': 5.59.0(typescript@5.0.4) debug: 4.3.4 eslint: 8.38.0 typescript: 5.0.4 @@ -2985,8 +2985,16 @@ packages: '@typescript-eslint/visitor-keys': 5.58.0 dev: true - /@typescript-eslint/type-utils@5.58.0(eslint@8.38.0)(typescript@5.0.4): - resolution: {integrity: sha512-FF5vP/SKAFJ+LmR9PENql7fQVVgGDOS+dq3j+cKl9iW/9VuZC/8CFmzIP0DLKXfWKpRHawJiG70rVH+xZZbp8w==} + /@typescript-eslint/scope-manager@5.59.0: + resolution: {integrity: sha512-tsoldKaMh7izN6BvkK6zRMINj4Z2d6gGhO2UsI8zGZY3XhLq1DndP3Ycjhi1JwdwPRwtLMW4EFPgpuKhbCGOvQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.59.0 + '@typescript-eslint/visitor-keys': 5.59.0 + dev: true + + /@typescript-eslint/type-utils@5.59.0(eslint@8.38.0)(typescript@5.0.4): + resolution: {integrity: sha512-d/B6VSWnZwu70kcKQSCqjcXpVH+7ABKH8P1KNn4K7j5PXXuycZTPXF44Nui0TEm6rbWGi8kc78xRgOC4n7xFgA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '*' @@ -2995,8 +3003,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.58.0(typescript@5.0.4) - '@typescript-eslint/utils': 5.58.0(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/typescript-estree': 5.59.0(typescript@5.0.4) + '@typescript-eslint/utils': 5.59.0(eslint@8.38.0)(typescript@5.0.4) debug: 4.3.4 eslint: 8.38.0 tsutils: 3.21.0(typescript@5.0.4) @@ -3010,6 +3018,11 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true + /@typescript-eslint/types@5.59.0: + resolution: {integrity: sha512-yR2h1NotF23xFFYKHZs17QJnB51J/s+ud4PYU4MqdZbzeNxpgUr05+dNeCN/bb6raslHvGdd6BFCkVhpPk/ZeA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + /@typescript-eslint/typescript-estree@5.58.0(typescript@5.0.4): resolution: {integrity: sha512-cRACvGTodA+UxnYM2uwA2KCwRL7VAzo45syNysqlMyNyjw0Z35Icc9ihPJZjIYuA5bXJYiJ2YGUB59BqlOZT1Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3031,6 +3044,27 @@ packages: - supports-color dev: true + /@typescript-eslint/typescript-estree@5.59.0(typescript@5.0.4): + resolution: {integrity: sha512-sUNnktjmI8DyGzPdZ8dRwW741zopGxltGs/SAPgGL/AAgDpiLsCFLcMNSpbfXfmnNeHmK9h3wGmCkGRGAoUZAg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 5.59.0 + '@typescript-eslint/visitor-keys': 5.59.0 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.4.0 + tsutils: 3.21.0(typescript@5.0.4) + typescript: 5.0.4 + transitivePeerDependencies: + - supports-color + dev: true + /@typescript-eslint/utils@5.58.0(eslint@8.38.0)(typescript@5.0.4): resolution: {integrity: sha512-gAmLOTFXMXOC+zP1fsqm3VceKSBQJNzV385Ok3+yzlavNHZoedajjS4UyS21gabJYcobuigQPs/z71A9MdJFqQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3051,6 +3085,26 @@ packages: - typescript dev: true + /@typescript-eslint/utils@5.59.0(eslint@8.38.0)(typescript@5.0.4): + resolution: {integrity: sha512-GGLFd+86drlHSvPgN/el6dRQNYYGOvRSDVydsUaQluwIW3HvbXuxyuD5JETvBt/9qGYe+lOrDk6gRrWOHb/FvA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.38.0) + '@types/json-schema': 7.0.11 + '@types/semver': 7.3.13 + '@typescript-eslint/scope-manager': 5.59.0 + '@typescript-eslint/types': 5.59.0 + '@typescript-eslint/typescript-estree': 5.59.0(typescript@5.0.4) + eslint: 8.38.0 + eslint-scope: 5.1.1 + semver: 7.4.0 + transitivePeerDependencies: + - supports-color + - typescript + dev: true + /@typescript-eslint/visitor-keys@5.58.0: resolution: {integrity: sha512-/fBraTlPj0jwdyTwLyrRTxv/3lnU2H96pNTVM6z3esTWLtA5MZ9ghSMJ7Rb+TtUAdtEw9EyJzJ0EydIMKxQ9gA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3059,18 +3113,25 @@ packages: eslint-visitor-keys: 3.4.0 dev: true - /@vitejs/plugin-react@3.1.0(vite@4.2.1): - resolution: {integrity: sha512-AfgcRL8ZBhAlc3BFdigClmTUMISmmzHn7sB2h9U1odvc5U/MjWXsAaz18b/WoppUTDBzxOJwo2VdClfUcItu9g==} + /@typescript-eslint/visitor-keys@5.59.0: + resolution: {integrity: sha512-qZ3iXxQhanchCeaExlKPV3gDQFxMUmU35xfd5eCXB6+kUw1TUAbIy2n7QIrwz9s98DQLzNWyHp61fY0da4ZcbA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.59.0 + eslint-visitor-keys: 3.4.0 + dev: true + + /@vitejs/plugin-react@4.0.0(vite@4.3.1): + resolution: {integrity: sha512-HX0XzMjL3hhOYm+0s95pb0Z7F8O81G7joUHgfDd/9J/ZZf5k4xX6QAMFkKsHFxaHlf6X7GD7+XuaZ66ULiJuhQ==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: - vite: ^4.1.0-beta.0 + vite: ^4.2.0 dependencies: '@babel/core': 7.21.4 '@babel/plugin-transform-react-jsx-self': 7.21.0(@babel/core@7.21.4) '@babel/plugin-transform-react-jsx-source': 7.19.6(@babel/core@7.21.4) - magic-string: 0.27.0 react-refresh: 0.14.0 - vite: 4.2.1(@types/node@18.15.11) + vite: 4.3.1(@types/node@18.15.13) transitivePeerDependencies: - supports-color dev: true @@ -3092,7 +3153,7 @@ packages: istanbul-lib-source-maps: 4.0.1 istanbul-reports: 3.1.5 test-exclude: 6.0.0 - vitest: 0.30.1(happy-dom@9.7.1) + vitest: 0.30.1(happy-dom@9.8.4) transitivePeerDependencies: - supports-color dev: true @@ -3318,8 +3379,8 @@ packages: engines: {node: '>=4'} dev: true - /axios@1.3.5: - resolution: {integrity: sha512-glL/PvG/E+xCWwV8S6nCHcrfg1exGx7vxyUIivIA1iL7BIh6bePylCfVHwp6k13ao7SATxB6imau2kqY+I67kw==} + /axios@1.3.6: + resolution: {integrity: sha512-PEcdkk7JcdPiMDkvM4K6ZBRYq9keuVJsToxm2zQIM70Qqo2WHTdJZMXcG9X+RmRp2VPNUQC8W1RAGbgt6b1yMg==} dependencies: follow-redirects: 1.15.2 form-data: 4.0.0 @@ -3687,7 +3748,7 @@ packages: browserslist: 4.21.5 dev: true - /cosmiconfig-typescript-loader@4.3.0(@types/node@18.15.11)(cosmiconfig@8.1.3)(ts-node@10.9.1)(typescript@5.0.4): + /cosmiconfig-typescript-loader@4.3.0(@types/node@18.15.13)(cosmiconfig@8.1.3)(ts-node@10.9.1)(typescript@5.0.4): resolution: {integrity: sha512-NTxV1MFfZDLPiBMjxbHRwSh5LaLcPMwNdCutmnHJCKoVnlvldPWlllonKwrsRJ5pYZBIBGRWWU2tfvzxgeSW5Q==} engines: {node: '>=12', npm: '>=6'} peerDependencies: @@ -3696,9 +3757,9 @@ packages: ts-node: '>=10' typescript: '>=3' dependencies: - '@types/node': 18.15.11 + '@types/node': 18.15.13 cosmiconfig: 8.1.3 - ts-node: 10.9.1(@types/node@18.15.11)(typescript@5.0.4) + ts-node: 10.9.1(@types/node@18.15.13)(typescript@5.0.4) typescript: 5.0.4 dev: true @@ -4256,33 +4317,33 @@ packages: esbuild-windows-arm64: 0.15.18 dev: true - /esbuild@0.17.16: - resolution: {integrity: sha512-aeSuUKr9aFVY9Dc8ETVELGgkj4urg5isYx8pLf4wlGgB0vTFjxJQdHnNH6Shmx4vYYrOTLCHtRI5i1XZ9l2Zcg==} + /esbuild@0.17.17: + resolution: {integrity: sha512-/jUywtAymR8jR4qsa2RujlAF7Krpt5VWi72Q2yuLD4e/hvtNcFQ0I1j8m/bxq238pf3/0KO5yuXNpuLx8BE1KA==} engines: {node: '>=12'} requiresBuild: true optionalDependencies: - '@esbuild/android-arm': 0.17.16 - '@esbuild/android-arm64': 0.17.16 - '@esbuild/android-x64': 0.17.16 - '@esbuild/darwin-arm64': 0.17.16 - '@esbuild/darwin-x64': 0.17.16 - '@esbuild/freebsd-arm64': 0.17.16 - '@esbuild/freebsd-x64': 0.17.16 - '@esbuild/linux-arm': 0.17.16 - '@esbuild/linux-arm64': 0.17.16 - '@esbuild/linux-ia32': 0.17.16 - '@esbuild/linux-loong64': 0.17.16 - '@esbuild/linux-mips64el': 0.17.16 - '@esbuild/linux-ppc64': 0.17.16 - '@esbuild/linux-riscv64': 0.17.16 - '@esbuild/linux-s390x': 0.17.16 - '@esbuild/linux-x64': 0.17.16 - '@esbuild/netbsd-x64': 0.17.16 - '@esbuild/openbsd-x64': 0.17.16 - '@esbuild/sunos-x64': 0.17.16 - '@esbuild/win32-arm64': 0.17.16 - '@esbuild/win32-ia32': 0.17.16 - '@esbuild/win32-x64': 0.17.16 + '@esbuild/android-arm': 0.17.17 + '@esbuild/android-arm64': 0.17.17 + '@esbuild/android-x64': 0.17.17 + '@esbuild/darwin-arm64': 0.17.17 + '@esbuild/darwin-x64': 0.17.17 + '@esbuild/freebsd-arm64': 0.17.17 + '@esbuild/freebsd-x64': 0.17.17 + '@esbuild/linux-arm': 0.17.17 + '@esbuild/linux-arm64': 0.17.17 + '@esbuild/linux-ia32': 0.17.17 + '@esbuild/linux-loong64': 0.17.17 + '@esbuild/linux-mips64el': 0.17.17 + '@esbuild/linux-ppc64': 0.17.17 + '@esbuild/linux-riscv64': 0.17.17 + '@esbuild/linux-s390x': 0.17.17 + '@esbuild/linux-x64': 0.17.17 + '@esbuild/netbsd-x64': 0.17.17 + '@esbuild/openbsd-x64': 0.17.17 + '@esbuild/sunos-x64': 0.17.17 + '@esbuild/win32-arm64': 0.17.17 + '@esbuild/win32-ia32': 0.17.17 + '@esbuild/win32-x64': 0.17.17 dev: true /escalade@3.1.1: @@ -4328,14 +4389,14 @@ packages: '@babel/core': 7.21.4 '@babel/eslint-parser': 7.21.3(@babel/core@7.21.4)(eslint@8.38.0) '@rushstack/eslint-patch': 1.2.0 - '@typescript-eslint/eslint-plugin': 5.58.0(@typescript-eslint/parser@5.58.0)(eslint@8.38.0)(typescript@5.0.4) - '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/eslint-plugin': 5.59.0(@typescript-eslint/parser@5.59.0)(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/parser': 5.59.0(eslint@8.38.0)(typescript@5.0.4) babel-preset-react-app: 10.0.1 confusing-browser-globals: 1.0.11 eslint: 8.38.0 eslint-plugin-flowtype: 8.0.3(@babel/plugin-syntax-flow@7.21.4)(@babel/plugin-transform-react-jsx@7.21.0)(eslint@8.38.0) - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.58.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) - eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@5.58.0)(eslint@8.38.0)(typescript@5.0.4) + eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.59.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) + eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@5.59.0)(eslint@8.38.0)(typescript@5.0.4) eslint-plugin-jsx-a11y: 6.7.1(eslint@8.38.0) eslint-plugin-react: 7.32.2(eslint@8.38.0) eslint-plugin-react-hooks: 4.6.0(eslint@8.38.0) @@ -4364,7 +4425,7 @@ packages: - supports-color dev: true - /eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.58.0)(eslint-plugin-import@2.27.5)(eslint@8.38.0): + /eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.59.0)(eslint-plugin-import@2.27.5)(eslint@8.38.0): resolution: {integrity: sha512-TdJqPHs2lW5J9Zpe17DZNQuDnox4xo2o+0tE7Pggain9Rbc19ik8kFtXdxZ250FVx2kF4vlt2RSf4qlUpG7bhw==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: @@ -4374,8 +4435,8 @@ packages: debug: 4.3.4 enhanced-resolve: 5.12.0 eslint: 8.38.0 - eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.58.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.58.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) + eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.59.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) + eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.59.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) get-tsconfig: 4.5.0 globby: 13.1.3 is-core-module: 2.12.0 @@ -4388,7 +4449,7 @@ packages: - supports-color dev: true - /eslint-module-utils@2.7.4(@typescript-eslint/parser@5.58.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0): + /eslint-module-utils@2.7.4(@typescript-eslint/parser@5.59.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0): resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==} engines: {node: '>=4'} peerDependencies: @@ -4409,11 +4470,11 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/parser': 5.59.0(eslint@8.38.0)(typescript@5.0.4) debug: 3.2.7 eslint: 8.38.0 eslint-import-resolver-node: 0.3.7 - eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.58.0)(eslint-plugin-import@2.27.5)(eslint@8.38.0) + eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.59.0)(eslint-plugin-import@2.27.5)(eslint@8.38.0) transitivePeerDependencies: - supports-color dev: true @@ -4433,7 +4494,7 @@ packages: string-natural-compare: 3.0.1 dev: true - /eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.58.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0): + /eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.59.0)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0): resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==} engines: {node: '>=4'} peerDependencies: @@ -4443,7 +4504,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 5.58.0(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/parser': 5.59.0(eslint@8.38.0)(typescript@5.0.4) array-includes: 3.1.6 array.prototype.flat: 1.3.1 array.prototype.flatmap: 1.3.1 @@ -4451,7 +4512,7 @@ packages: doctrine: 2.1.0 eslint: 8.38.0 eslint-import-resolver-node: 0.3.7 - eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.58.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) + eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.59.0)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.5)(eslint@8.38.0) has: 1.0.3 is-core-module: 2.12.0 is-glob: 4.0.3 @@ -4466,7 +4527,7 @@ packages: - supports-color dev: true - /eslint-plugin-jest@25.7.0(@typescript-eslint/eslint-plugin@5.58.0)(eslint@8.38.0)(typescript@5.0.4): + /eslint-plugin-jest@25.7.0(@typescript-eslint/eslint-plugin@5.59.0)(eslint@8.38.0)(typescript@5.0.4): resolution: {integrity: sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} peerDependencies: @@ -4479,7 +4540,7 @@ packages: jest: optional: true dependencies: - '@typescript-eslint/eslint-plugin': 5.58.0(@typescript-eslint/parser@5.58.0)(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/eslint-plugin': 5.59.0(@typescript-eslint/parser@5.59.0)(eslint@8.38.0)(typescript@5.0.4) '@typescript-eslint/experimental-utils': 5.58.0(eslint@8.38.0)(typescript@5.0.4) eslint: 8.38.0 transitivePeerDependencies: @@ -4568,7 +4629,7 @@ packages: peerDependencies: eslint: ^7.5.0 || ^8.0.0 dependencies: - '@typescript-eslint/utils': 5.58.0(eslint@8.38.0)(typescript@5.0.4) + '@typescript-eslint/utils': 5.59.0(eslint@8.38.0)(typescript@5.0.4) eslint: 8.38.0 transitivePeerDependencies: - supports-color @@ -5095,8 +5156,8 @@ packages: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} dev: true - /happy-dom@9.7.1: - resolution: {integrity: sha512-C5KQXt5JA3Og1qNf32Zqg65Oj5DKe/IeeGo8269DKE4VFK8NZpOEBY1R6ofJLCqsaPppu1t73okYuh7CPJUB6A==} + /happy-dom@9.8.4: + resolution: {integrity: sha512-IB2glIailsAloOmTfRRQfpA3aW/bbhpdw9wX1CKvDrmj8tMVtdabjM+579YLdHpBXVyOku+p07+aea7TdnGnyw==} dependencies: css.escape: 1.5.1 he: 1.2.0 @@ -5223,8 +5284,8 @@ packages: - encoding dev: false - /i18next@22.4.14: - resolution: {integrity: sha512-VtLPtbdwGn0+DAeE00YkiKKXadkwg+rBUV+0v8v0ikEjwdiJ0gmYChVE4GIa9HXymY6wKapkL93vGT7xpq6aTw==} + /i18next@22.4.15: + resolution: {integrity: sha512-yYudtbFrrmWKLEhl6jvKUYyYunj4bTBCe2qIUYAxbXoPusY7YmdwPvOE6fx6UIfWvmlbCWDItr7wIs8KEBZ5Zg==} dependencies: '@babel/runtime': 7.21.0 dev: false @@ -5582,7 +5643,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.5.0 - '@types/node': 18.15.11 + '@types/node': 18.15.13 chalk: 4.1.2 ci-info: 3.8.0 graceful-fs: 4.2.11 @@ -5857,13 +5918,6 @@ packages: resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} dev: true - /magic-string@0.27.0: - resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} - engines: {node: '>=12'} - dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 - dev: true - /magic-string@0.30.0: resolution: {integrity: sha512-LA+31JYDJLs82r2ScLrlz1GjSgu66ZV518eyWT+S8VhyQn/JL0u9MeBOvQMGYiPk1DBiSN9DDMOcXvigJZaViQ==} engines: {node: '>=12'} @@ -6431,7 +6485,7 @@ packages: react: 18.2.0 scheduler: 0.23.0 - /react-i18next@12.2.0(i18next@22.4.14)(react-dom@18.2.0)(react@18.2.0): + /react-i18next@12.2.0(i18next@22.4.15)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-5XeVgSygaGfyFmDd2WcXvINRw2WEC1XviW1LXY/xLOEMzsCFRwKqfnHN+hUjla8ZipbVJR27GCMSuTr0BhBBBQ==} peerDependencies: i18next: '>= 19.0.0' @@ -6446,7 +6500,7 @@ packages: dependencies: '@babel/runtime': 7.21.0 html-parse-stringify: 3.0.1 - i18next: 22.4.14 + i18next: 22.4.15 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) dev: false @@ -7109,7 +7163,7 @@ packages: engines: {node: '>=8'} dev: true - /ts-node@10.9.1(@types/node@18.15.11)(typescript@5.0.4): + /ts-node@10.9.1(@types/node@18.15.13)(typescript@5.0.4): resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} peerDependencies: '@swc/core': '>=1.2.50' @@ -7127,7 +7181,7 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.3 - '@types/node': 18.15.11 + '@types/node': 18.15.13 acorn: 8.8.2 acorn-walk: 8.2.0 arg: 4.1.3 @@ -7322,7 +7376,7 @@ packages: engines: {node: '>= 0.8'} dev: true - /vite-node@0.30.1(@types/node@18.15.11): + /vite-node@0.30.1(@types/node@18.15.13): resolution: {integrity: sha512-vTikpU/J7e6LU/8iM3dzBo8ZhEiKZEKRznEMm+mJh95XhWaPrJQraT/QsT2NWmuEf+zgAoMe64PKT7hfZ1Njmg==} engines: {node: '>=v14.18.0'} dependencies: @@ -7331,7 +7385,7 @@ packages: mlly: 1.2.0 pathe: 1.1.0 picocolors: 1.0.0 - vite: 4.2.1(@types/node@18.15.11) + vite: 4.3.1(@types/node@18.15.13) transitivePeerDependencies: - '@types/node' - less @@ -7342,7 +7396,7 @@ packages: - terser dev: true - /vite-plugin-eslint@1.8.1(eslint@8.38.0)(vite@4.2.1): + /vite-plugin-eslint@1.8.1(eslint@8.38.0)(vite@4.3.1): resolution: {integrity: sha512-PqdMf3Y2fLO9FsNPmMX+//2BF5SF8nEWspZdgl4kSt7UvHDRHVVfHvxsD7ULYzZrJDGRxR81Nq7TOFgwMnUang==} peerDependencies: eslint: '>=7' @@ -7352,10 +7406,10 @@ packages: '@types/eslint': 8.37.0 eslint: 8.38.0 rollup: 2.79.1 - vite: 4.2.1(@types/node@18.15.11) + vite: 4.3.1(@types/node@18.15.13) dev: true - /vite-plugin-istanbul@4.0.1(vite@4.2.1): + /vite-plugin-istanbul@4.0.1(vite@4.3.1): resolution: {integrity: sha512-1fUCJyYvt/vkDQWR/15knwCk+nWmNbVbmZTXf/X4XD0dcdmJsYrZF5JQo7ttYxFyflGH2SVu+XRlpN06CakKPQ==} peerDependencies: vite: '>=2.9.1 <= 5' @@ -7364,25 +7418,25 @@ packages: istanbul-lib-instrument: 5.2.1 picocolors: 1.0.0 test-exclude: 6.0.0 - vite: 4.2.1(@types/node@18.15.11) + vite: 4.3.1(@types/node@18.15.13) transitivePeerDependencies: - supports-color dev: true - /vite-plugin-svgr@2.4.0(vite@4.2.1): + /vite-plugin-svgr@2.4.0(vite@4.3.1): resolution: {integrity: sha512-q+mJJol6ThvqkkJvvVFEndI4EaKIjSI0I3jNFgSoC9fXAz1M7kYTVUin8fhUsFojFDKZ9VHKtX6NXNaOLpbsHA==} peerDependencies: vite: ^2.6.0 || 3 || 4 dependencies: '@rollup/pluginutils': 5.0.2 '@svgr/core': 6.5.1 - vite: 4.2.1(@types/node@18.15.11) + vite: 4.3.1(@types/node@18.15.13) transitivePeerDependencies: - rollup - supports-color dev: true - /vite-tsconfig-paths@4.2.0(typescript@5.0.4)(vite@4.2.1): + /vite-tsconfig-paths@4.2.0(typescript@5.0.4)(vite@4.3.1): resolution: {integrity: sha512-jGpus0eUy5qbbMVGiTxCL1iB9ZGN6Bd37VGLJU39kTDD6ZfULTTb1bcc5IeTWqWJKiWV5YihCaibeASPiGi8kw==} peerDependencies: vite: '*' @@ -7393,13 +7447,13 @@ packages: debug: 4.3.4 globrex: 0.1.2 tsconfck: 2.1.1(typescript@5.0.4) - vite: 4.2.1(@types/node@18.15.11) + vite: 4.3.1(@types/node@18.15.13) transitivePeerDependencies: - supports-color - typescript dev: true - /vite@3.2.5(@types/node@18.15.11): + /vite@3.2.5(@types/node@18.15.13): resolution: {integrity: sha512-4mVEpXpSOgrssFZAOmGIr85wPHKvaDAcXqxVxVRZhljkJOMZi1ibLibzjLHzJvcok8BMguLc7g1W6W/GqZbLdQ==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: @@ -7423,7 +7477,7 @@ packages: terser: optional: true dependencies: - '@types/node': 18.15.11 + '@types/node': 18.15.13 esbuild: 0.15.18 postcss: 8.4.21 resolve: 1.22.2 @@ -7432,8 +7486,8 @@ packages: fsevents: 2.3.2 dev: true - /vite@4.2.1(@types/node@18.15.11): - resolution: {integrity: sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==} + /vite@4.3.1(@types/node@18.15.13): + resolution: {integrity: sha512-EPmfPLAI79Z/RofuMvkIS0Yr091T2ReUoXQqc5ppBX/sjFRhHKiPPF/R46cTdoci/XgeQpB23diiJxq5w30vdg==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: '@types/node': '>= 14' @@ -7456,10 +7510,9 @@ packages: terser: optional: true dependencies: - '@types/node': 18.15.11 - esbuild: 0.17.16 + '@types/node': 18.15.13 + esbuild: 0.17.17 postcss: 8.4.21 - resolve: 1.22.2 rollup: 3.20.2 optionalDependencies: fsevents: 2.3.2 @@ -7469,10 +7522,10 @@ packages: resolution: {integrity: sha512-rKh+rzW54HYfgYjCU/9n8t0V8rnxYiH67uJGYUKKqW5L87Cl8NESDzNe2BbD6WmNvM4ojQdc0VqLXv6QsDt1Jw==} dependencies: '@types/express': 4.17.17 - '@types/node': 18.15.11 + '@types/node': 18.15.13 '@vitest-preview/dev-utils': 0.0.1 express: 4.18.2 - vite: 3.2.5(@types/node@18.15.11) + vite: 3.2.5(@types/node@18.15.13) transitivePeerDependencies: - less - sass @@ -7482,7 +7535,7 @@ packages: - terser dev: true - /vitest@0.30.1(happy-dom@9.7.1): + /vitest@0.30.1(happy-dom@9.8.4): resolution: {integrity: sha512-y35WTrSTlTxfMLttgQk4rHcaDkbHQwDP++SNwPb+7H8yb13Q3cu2EixrtHzF27iZ8v0XCciSsLg00RkPAzB/aA==} engines: {node: '>=v14.18.0'} peerDependencies: @@ -7514,7 +7567,7 @@ packages: dependencies: '@types/chai': 4.3.4 '@types/chai-subset': 1.3.3 - '@types/node': 18.15.11 + '@types/node': 18.15.13 '@vitest/expect': 0.30.1 '@vitest/runner': 0.30.1 '@vitest/snapshot': 0.30.1 @@ -7526,7 +7579,7 @@ packages: chai: 4.3.7 concordance: 5.0.4 debug: 4.3.4 - happy-dom: 9.7.1 + happy-dom: 9.8.4 local-pkg: 0.4.3 magic-string: 0.30.0 pathe: 1.1.0 @@ -7536,8 +7589,8 @@ packages: strip-literal: 1.0.1 tinybench: 2.4.0 tinypool: 0.4.0 - vite: 4.2.1(@types/node@18.15.11) - vite-node: 0.30.1(@types/node@18.15.11) + vite: 4.3.1(@types/node@18.15.13) + vite-node: 0.30.1(@types/node@18.15.13) why-is-node-running: 2.2.2 transitivePeerDependencies: - less