From 3bfa0606bd37dfaebd997a2352e6e53d32c5dec7 Mon Sep 17 00:00:00 2001 From: Luc Perkins Date: Mon, 5 Aug 2024 16:07:04 +0200 Subject: [PATCH 1/5] Add initial doc --- components/SignupForm.tsx | 44 +++++++++++++++++++++++++++++++++++++++ pages/features/_meta.json | 1 + pages/features/cache.mdx | 38 +++++++++++++++++++++++++++++++++ tailwind.config.ts | 5 +++++ theme.config.tsx | 2 ++ 5 files changed, 90 insertions(+) create mode 100644 components/SignupForm.tsx create mode 100644 pages/features/cache.mdx diff --git a/components/SignupForm.tsx b/components/SignupForm.tsx new file mode 100644 index 0000000..89d917b --- /dev/null +++ b/components/SignupForm.tsx @@ -0,0 +1,44 @@ +const SignupForm = () => { + return ( +
+
+

+ Register for the FlakeHub Cache private beta +

+ +
+ +
+
+ +
+
+ +
+
+
+
+
+ ); +}; + +export default SignupForm; diff --git a/pages/features/_meta.json b/pages/features/_meta.json index 9e48095..1e632ca 100644 --- a/pages/features/_meta.json +++ b/pages/features/_meta.json @@ -1,4 +1,5 @@ { + "cache": "FlakeHub Cache", "semver": "Semantic versioning", "discovery": "Flake discovery", "webhooks": "Webhooks" diff --git a/pages/features/cache.mdx b/pages/features/cache.mdx new file mode 100644 index 0000000..0692e3c --- /dev/null +++ b/pages/features/cache.mdx @@ -0,0 +1,38 @@ +# FlakeHub Cache + +*FlakeHub Cache* is a [Nix binary cache][cache] that FlakeHub offers as a service. + +FlakeHub Cache is currently in **private beta** but you can sign up for the beta here and we'll add you as soon as we're ready: + + + +## Pushing to the cache + +FlakeHub Cache differs from existing Nix caching solutions because it forbids pushing to the cache in an ad-hoc way. +Thus, you can't push to the cache from your laptop or from one of your servers. +Instead, only *trusted builders* are allowed to push to the cache. +At the moment, this includes only [GitHub Actions runners][actions] but other options will be available in the future. + +In order to push to FlakeHub Cache from GitHub Actions: + +1. Your GitHub organization needs to be [registered for the beta](#signup). + +```yaml {4-6,9-10} showLineNumbers filename=".github/workflows/nix.yml" +jobs: + build-nix-package: + runs-on: ubuntu-22.04 + permissions: + contents: read + id-token: write + steps: + - uses: actions/checkout@v3 + - uses: DeterminateSystems/nix-installer-action@main + - uses: DeterminateSystems/magic-nix-cache-action@main + # Build default package + - run: nix build +``` + +With this configuration + +[actions]: https://docs.github.com/actions +[cache]: https://zero-to-nix.com/concepts/caching diff --git a/tailwind.config.ts b/tailwind.config.ts index 396643e..0edbe75 100644 --- a/tailwind.config.ts +++ b/tailwind.config.ts @@ -12,6 +12,7 @@ export default { colors: { dark: "rgb(15, 17, 23)", code: "#111b27", + "ds-dark": "rgb(15, 17, 23)", "ds-gold": "#faa61a", "ds-magenta": "#cd1e8b", "ds-night-sky": "#211d52", @@ -21,6 +22,10 @@ export default { "ds-rich-blue": "#0d4d9c", "ds-sky-blue": "#1e9fd9", "ds-violet": "#8b2cbf", + "ds-gray": "#666666", + "ds-gray-light": "#b3b3b3", + "ds-gray-lighter": "#e4e4e7", + "ds-gray-lightest": "#f0f0f0", // Brands "twitter-blue": "#1da1f2", "mastodon-purple": "rgb(86, 58, 204)", diff --git a/theme.config.tsx b/theme.config.tsx index 93b3cd2..23f4ee2 100644 --- a/theme.config.tsx +++ b/theme.config.tsx @@ -3,6 +3,7 @@ import ExampleUrls from "@components/ExampleUrls"; import { FlakeHubPushConfigTable } from "@components/FlakeHubPushConfigTable"; import Rolling from "@components/Rolling"; import { SemVer } from "@components/SemVer"; +import SignupForm from "@components/SignupForm"; import UrlFormat from "@components/UrlFormat"; import YankButton from "@components/YankButton"; import HoverableButton from "@components/generic/HoverableButton"; @@ -67,6 +68,7 @@ const config: DocsThemeConfig = { HoverableButton, Rolling, SemVer, + SignupForm, UrlFormat, YankButton, }, From 24dea9c58c6c341ab8005e1641affb3d010bff7c Mon Sep 17 00:00:00 2001 From: Luc Perkins Date: Wed, 7 Aug 2024 16:34:26 +0200 Subject: [PATCH 2/5] More content --- .prettierignore | 2 +- components/SignupForm.tsx | 5 +-- flake.lock | 25 ++++--------- flake.nix | 11 +++--- pages/features/cache.mdx | 74 ++++++++++++++++++++++++++++++++++++--- 5 files changed, 83 insertions(+), 34 deletions(-) diff --git a/.prettierignore b/.prettierignore index f4f9155..831beb5 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,5 +1,5 @@ .direnv/ pnpm-lock.yaml -*.mdx +**/*.mdx .next/ .vscode/ diff --git a/components/SignupForm.tsx b/components/SignupForm.tsx index 89d917b..e7a634e 100644 --- a/components/SignupForm.tsx +++ b/components/SignupForm.tsx @@ -1,7 +1,7 @@ const SignupForm = () => { return (
@@ -17,6 +17,7 @@ const SignupForm = () => { x-ph-capture-event="subscribe-private-beta" > +
{
diff --git a/flake.lock b/flake.lock index ed7ba05..074dc17 100644 --- a/flake.lock +++ b/flake.lock @@ -1,34 +1,21 @@ { "nodes": { - "flake-schemas": { - "locked": { - "narHash": "sha256-j8SR19V1SRysyJwpOBF4TLuAvAjF5t+gMiboN4gYQDU=", - "rev": "764932025c817d4e500a8d2a4d8c565563923d29", - "revCount": 29, - "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.2/018b3da8-4cc3-7fbb-8ff7-1588413c53e2/source.tar.gz" - }, - "original": { - "type": "tarball", - "url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%2A.tar.gz" - } - }, "nixpkgs": { "locked": { - "narHash": "sha256-XSXP8zjBZJBVvpNb2WmY0eW8O2ce+sVyj1T0/iBRIvg=", - "rev": "da4024d0ead5d7820f6bd15147d3fe2a0c0cec73", - "revCount": 492172, + "lastModified": 1722651103, + "narHash": "sha256-IRiJA0NVAoyaZeKZluwfb2DoTpBAj+FLI0KfybBeDU0=", + "rev": "a633d89c6dc9a2a8aae11813a62d7c58b2c0cc51", + "revCount": 633693, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2305.492172%2Brev-da4024d0ead5d7820f6bd15147d3fe2a0c0cec73/018bc3df-6c0a-78fa-b718-b5c65a1bce77/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2405.633693%2Brev-a633d89c6dc9a2a8aae11813a62d7c58b2c0cc51/01911d77-7c3c-7b12-acd1-58c4d58f71a8/source.tar.gz" }, "original": { "type": "tarball", - "url": "https://flakehub.com/f/NixOS/nixpkgs/%2A.tar.gz" + "url": "https://flakehub.com/f/NixOS/nixpkgs/%2A" } }, "root": { "inputs": { - "flake-schemas": "flake-schemas", "nixpkgs": "nixpkgs" } } diff --git a/flake.nix b/flake.nix index fe22f02..3496b18 100644 --- a/flake.nix +++ b/flake.nix @@ -2,20 +2,17 @@ description = "The FlakeHub documentation"; inputs = { - nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/*.tar.gz"; - flake-schemas.url = "https://flakehub.com/f/DeterminateSystems/flake-schemas/*.tar.gz"; + nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/*"; }; - outputs = { self, nixpkgs, flake-schemas }: + outputs = { self, ... }@inputs: let supportedSystems = [ "x86_64-linux" "aarch64-darwin" "x86_64-darwin" "aarch64-linux" ]; - forEachSupportedSystem = f: nixpkgs.lib.genAttrs supportedSystems (system: f { - pkgs = import nixpkgs { inherit system; }; + forEachSupportedSystem = f: inputs.nixpkgs.lib.genAttrs supportedSystems (system: f { + pkgs = import inputs.nixpkgs { inherit system; }; }); in { - schemas = flake-schemas.schemas; - devShells = forEachSupportedSystem ({ pkgs }: let scripts = with pkgs; [ diff --git a/pages/features/cache.mdx b/pages/features/cache.mdx index 0692e3c..b0e1987 100644 --- a/pages/features/cache.mdx +++ b/pages/features/cache.mdx @@ -1,11 +1,29 @@ # FlakeHub Cache -*FlakeHub Cache* is a [Nix binary cache][cache] that FlakeHub offers as a service. +*FlakeHub Cache* is a [Nix binary cache][cache] that works in conjunction with FlakeHub. +It has two main features that distinguish it from other Nix caching services: + +1. A flexible and convenient [authentication](#authentication) model that doesn't require juggling access keys. +1. [Access control](#access-control) on a [per-flake][flakes] basis. FlakeHub Cache is currently in **private beta** but you can sign up for the beta here and we'll add you as soon as we're ready: + +## Authentication model + +FlakeHub Cache authentication is based on [JSON Web Tokens][jwt] (JWTs or "jots"). +We currently use [GitHub] as our JWT authentication provider but will be adding support for [GitLab] in the near future. +Down the road, the flexibility of JWTs will enable us to support a wide range of additional authentication solutions, including [SAML] and [Single sign-on][sso] (SSO) providers. + +Existing Nix caching services use static tokens for authentication. + +## Access control + +Nix caching solutions based on [nix-serve] serve a [Nix store][store] as a single, monolithic cache and make everything in the cache available to anyone with a public key. +With FlakeHub Cache, on the contrary, you can grant or deny read access to specific users **at the [flake][flakes] level**, which affords substantially more granular access control. + ## Pushing to the cache FlakeHub Cache differs from existing Nix caching solutions because it forbids pushing to the cache in an ad-hoc way. @@ -13,9 +31,9 @@ Thus, you can't push to the cache from your laptop or from one of your servers. Instead, only *trusted builders* are allowed to push to the cache. At the moment, this includes only [GitHub Actions runners][actions] but other options will be available in the future. -In order to push to FlakeHub Cache from GitHub Actions: - -1. Your GitHub organization needs to be [registered for the beta](#signup). +In order to push to FlakeHub Cache from GitHub Actions, your GitHub organization needs to be [registered for the beta](#signup). +Once you've been added—you'll be notified via email—you can configure your org's GitHub Actions workflows to use the cache. +Here's an example: ```yaml {4-6,9-10} showLineNumbers filename=".github/workflows/nix.yml" jobs: @@ -32,7 +50,53 @@ jobs: - run: nix build ``` -With this configuration +In this configuration: + +* The `permissions` section enables you to authenticate to FlakeHub Cache. + No other authentication method, like public keys, is necessary. +* The [Magic Nix Cache Action][mnca] + + +An easy way to push all of your flake outputs to FlakeHub Cache in [GitHub Actions][actions] is to use the [Determinate CI Action][ci]: + +```yaml filename=".github/workflows/ci.yml" +jobs: + DeterminateCI: + uses: DeterminateSystems/ci/.github/workflows/workflow.yml@main + permissions: + id-token: "write" + contents: "read" +``` + +This Action automatically: + +* Discovers all Nix derivation outputs—`packages`, `devShells`, and more—on all architectures your flake supports using [Flake Schemas][schemas]. +* Builds all derivation outputs on appropriate Actions runners and uses the [Magic Nix Cache][mnca] to push to FlakeHub Cache. +* Publishes your flake releases to FlakeHub. + + +## Pulling from the cache + +In order to pull from the cache, you need to be properly authenticated in one of two ways: + +1. On GitHub Actions runners, authentication happens automatically. +1. As an ordinary user on a laptop or workstation, you need to authenticate using [`fh login`][login]. + + [actions]: https://docs.github.com/actions [cache]: https://zero-to-nix.com/concepts/caching +[ci]: https://github.com/DeterminateSystems/ci +[determinate]: https://github.com/determinateSystems/determinate +[flakes]: https://zero-to-nix.com/concepts/flakes +[github]: https://github.com +[gitlab]: https://gitlab.com +[jwt]: https://jwt.io +[login]: https://github.com/determinateSystems/fh?tab=readme-ov-file#log-into-flakehub +[mnca]: https://github.com/determinateSystems/magic-nix-cache-action +[nix-serve]: https://nixos.org/manual/nix/stable/package-management/binary-cache-substituter +[saml]: https://en.wikipedia.org/wiki/SAML_2.0 +[schemas]: https://github.com/DeterminateSystems/flake-schemas +[sso]: https://en.wikipedia.org/wiki/Single_sign-on +[store]: https://zero-to-nix.com/concepts/store +[wizard]: https://flakehub.com/up From 25cbb98fd2032259d893c6053b3e0fa26d2b9504 Mon Sep 17 00:00:00 2001 From: Luc Perkins Date: Wed, 7 Aug 2024 16:57:26 +0200 Subject: [PATCH 3/5] Fix style linting --- flake.lock | 10 +++++----- flake.nix | 6 ++++-- pages/features/cache.mdx | 2 +- vale/{Vocab => config/vocabularies}/Docs/accept.txt | 1 + 4 files changed, 11 insertions(+), 8 deletions(-) rename vale/{Vocab => config/vocabularies}/Docs/accept.txt (96%) diff --git a/flake.lock b/flake.lock index 074dc17..1a88c8a 100644 --- a/flake.lock +++ b/flake.lock @@ -2,12 +2,12 @@ "nodes": { "nixpkgs": { "locked": { - "lastModified": 1722651103, - "narHash": "sha256-IRiJA0NVAoyaZeKZluwfb2DoTpBAj+FLI0KfybBeDU0=", - "rev": "a633d89c6dc9a2a8aae11813a62d7c58b2c0cc51", - "revCount": 633693, + "lastModified": 1722869614, + "narHash": "sha256-7ojM1KSk3mzutD7SkrdSflHXEujPvW1u7QuqWoTLXQU=", + "rev": "883180e6550c1723395a3a342f830bfc5c371f6b", + "revCount": 633812, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2405.633693%2Brev-a633d89c6dc9a2a8aae11813a62d7c58b2c0cc51/01911d77-7c3c-7b12-acd1-58c4d58f71a8/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/NixOS/nixpkgs/0.2405.633812%2Brev-883180e6550c1723395a3a342f830bfc5c371f6b/01912867-c4cd-766e-bc62-2cc7d1546d12/source.tar.gz" }, "original": { "type": "tarball", diff --git a/flake.nix b/flake.nix index 3496b18..dd06caa 100644 --- a/flake.nix +++ b/flake.nix @@ -15,9 +15,11 @@ { devShells = forEachSupportedSystem ({ pkgs }: let + content = "./pages"; + scripts = with pkgs; [ (writeScriptBin "lint-style" '' - vale pages + vale ${content} '') (writeScriptBin "preview" '' @@ -26,7 +28,7 @@ '') (writeScriptBin "check-sensitivity" '' - alex --quiet pages + alex --quiet ${content} '') (writeScriptBin "checks" '' diff --git a/pages/features/cache.mdx b/pages/features/cache.mdx index b0e1987..c18e077 100644 --- a/pages/features/cache.mdx +++ b/pages/features/cache.mdx @@ -57,7 +57,7 @@ In this configuration: * The [Magic Nix Cache Action][mnca] -An easy way to push all of your flake outputs to FlakeHub Cache in [GitHub Actions][actions] is to use the [Determinate CI Action][ci]: +You can push all of your flake outputs to FlakeHub Cache in [GitHub Actions][actions] using the [Determinate CI Action][ci]: ```yaml filename=".github/workflows/ci.yml" jobs: diff --git a/vale/Vocab/Docs/accept.txt b/vale/config/vocabularies/Docs/accept.txt similarity index 96% rename from vale/Vocab/Docs/accept.txt rename to vale/config/vocabularies/Docs/accept.txt index f1f167e..dd75d82 100644 --- a/vale/Vocab/Docs/accept.txt +++ b/vale/config/vocabularies/Docs/accept.txt @@ -11,6 +11,7 @@ lockfile kickstart neovim nixpkgs +org's orgs pageprops plaintext From 4a762c6c4e505dbe3223e1b673c7c35be4e8b486 Mon Sep 17 00:00:00 2001 From: Luc Perkins Date: Mon, 12 Aug 2024 15:35:33 +0200 Subject: [PATCH 4/5] Some final touches --- package.json | 14 +- pages/features/cache.mdx | 30 +- pnpm-lock.yaml | 681 ++++++++++++++++++++------------------- 3 files changed, 384 insertions(+), 341 deletions(-) diff --git a/package.json b/package.json index 36a5905..921efba 100644 --- a/package.json +++ b/package.json @@ -8,23 +8,23 @@ }, "dependencies": { "@heroicons/react": "^2.1.5", - "@tailwindcss/typography": "^0.5.13", + "@tailwindcss/typography": "^0.5.14", "@trivago/prettier-plugin-sort-imports": "^4.3.0", - "@types/node": "^20.12.12", - "autoprefixer": "^10.4.19", + "@types/node": "^20.14.15", + "autoprefixer": "^10.4.20", "clsx": "^2.1.1", "isomorphic-dompurify": "^1.13.0", "marked": "^5.1.2", - "next": "^14.2.3", + "next": "^14.2.5", "nextra": "^2.13.4", "nextra-theme-docs": "^2.13.4", - "postcss": "^8.4.38", - "prettier": "^3.2.5", + "postcss": "^8.4.41", + "prettier": "^3.3.3", "prettier-plugin-tailwindcss": "^0.5.14", "react": "^18.3.1", "react-dom": "^18.3.1", "react-icons": "^4.12.0", - "tailwindcss": "^3.4.3", + "tailwindcss": "^3.4.9", "typescript": "5.2.2" } } diff --git a/pages/features/cache.mdx b/pages/features/cache.mdx index c18e077..ac2f3b4 100644 --- a/pages/features/cache.mdx +++ b/pages/features/cache.mdx @@ -1,15 +1,25 @@ # FlakeHub Cache -*FlakeHub Cache* is a [Nix binary cache][cache] that works in conjunction with FlakeHub. +*FlakeHub Cache* is a [Nix binary cache][cache] that works in conjunction with [FlakeHub][home]. It has two main features that distinguish it from other Nix caching services: -1. A flexible and convenient [authentication](#authentication) model that doesn't require juggling access keys. -1. [Access control](#access-control) on a [per-flake][flakes] basis. +1. It enables you to [control access](#access-control) at the [flake][flakes] level. +1. It uses a flexible and convenient [authentication](#authentication) model that doesn't require juggling access keys. FlakeHub Cache is currently in **private beta** but you can sign up for the beta here and we'll add you as soon as we're ready: +## Access control + +Nix caching solutions based on [nix-serve] serve an entire [Nix store][store] as a single monolithic cache and make all store paths in that cache available to anyone with a public key. +With FlakeHub Cache, on the contrary, you can grant or deny read access to specific users **at the [flake][flakes] level**, which affords substantially more granular access control. + +Let's say that you're an admin for the org `omnicorp`. +You could manage access to your org's flakes in such a way that, for example: + +* Only some trusted users would be allowed to pull store paths associated with the flake `super-duper-secure`. +* Anyone in your org can pull store paths associated with the `dev-environments` flake. ## Authentication model @@ -17,12 +27,8 @@ FlakeHub Cache authentication is based on [JSON Web Tokens][jwt] (JWTs or "jots" We currently use [GitHub] as our JWT authentication provider but will be adding support for [GitLab] in the near future. Down the road, the flexibility of JWTs will enable us to support a wide range of additional authentication solutions, including [SAML] and [Single sign-on][sso] (SSO) providers. -Existing Nix caching services use static tokens for authentication. - -## Access control - -Nix caching solutions based on [nix-serve] serve a [Nix store][store] as a single, monolithic cache and make everything in the cache available to anyone with a public key. -With FlakeHub Cache, on the contrary, you can grant or deny read access to specific users **at the [flake][flakes] level**, which affords substantially more granular access control. +In contrast, existing Nix caching services use static tokens for authentication. +This model places all of the operational burden of authentication on users; with FlakeHub Cache, however, we've opted to shift that burden to trusted authentication providers. ## Pushing to the cache @@ -80,7 +86,7 @@ This Action automatically: In order to pull from the cache, you need to be properly authenticated in one of two ways: 1. On GitHub Actions runners, authentication happens automatically. -1. As an ordinary user on a laptop or workstation, you need to authenticate using [`fh login`][login]. +1. As an ordinary user on a laptop or workstation, you need to authenticate using [`fh login`][fh-login]. @@ -88,11 +94,13 @@ In order to pull from the cache, you need to be properly authenticated in one of [cache]: https://zero-to-nix.com/concepts/caching [ci]: https://github.com/DeterminateSystems/ci [determinate]: https://github.com/determinateSystems/determinate +[fh-login]: https://github.com/determinateSystems/fh?tab=readme-ov-file#log-into-flakehub [flakes]: https://zero-to-nix.com/concepts/flakes [github]: https://github.com [gitlab]: https://gitlab.com +[home]: / [jwt]: https://jwt.io -[login]: https://github.com/determinateSystems/fh?tab=readme-ov-file#log-into-flakehub +[login]: /login [mnca]: https://github.com/determinateSystems/magic-nix-cache-action [nix-serve]: https://nixos.org/manual/nix/stable/package-management/binary-cache-substituter [saml]: https://en.wikipedia.org/wiki/SAML_2.0 diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index da155ef..dd2b7a8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,21 +1,25 @@ lockfileVersion: '6.0' +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + dependencies: '@heroicons/react': specifier: ^2.1.5 version: 2.1.5(react@18.3.1) '@tailwindcss/typography': - specifier: ^0.5.13 - version: 0.5.13(tailwindcss@3.4.3) + specifier: ^0.5.14 + version: 0.5.14(tailwindcss@3.4.9) '@trivago/prettier-plugin-sort-imports': specifier: ^4.3.0 - version: 4.3.0(prettier@3.2.5) + version: 4.3.0(prettier@3.3.3) '@types/node': - specifier: ^20.12.12 - version: 20.12.12 + specifier: ^20.14.15 + version: 20.14.15 autoprefixer: - specifier: ^10.4.19 - version: 10.4.19(postcss@8.4.38) + specifier: ^10.4.20 + version: 10.4.20(postcss@8.4.41) clsx: specifier: ^2.1.1 version: 2.1.1 @@ -26,23 +30,23 @@ dependencies: specifier: ^5.1.2 version: 5.1.2 next: - specifier: ^14.2.3 - version: 14.2.3(react-dom@18.3.1)(react@18.3.1) + specifier: ^14.2.5 + version: 14.2.5(react-dom@18.3.1)(react@18.3.1) nextra: specifier: ^2.13.4 - version: 2.13.4(next@14.2.3)(react-dom@18.3.1)(react@18.3.1) + version: 2.13.4(next@14.2.5)(react-dom@18.3.1)(react@18.3.1) nextra-theme-docs: specifier: ^2.13.4 - version: 2.13.4(next@14.2.3)(nextra@2.13.4)(react-dom@18.3.1)(react@18.3.1) + version: 2.13.4(next@14.2.5)(nextra@2.13.4)(react-dom@18.3.1)(react@18.3.1) postcss: - specifier: ^8.4.38 - version: 8.4.38 + specifier: ^8.4.41 + version: 8.4.41 prettier: - specifier: ^3.2.5 - version: 3.2.5 + specifier: ^3.3.3 + version: 3.3.3 prettier-plugin-tailwindcss: specifier: ^0.5.14 - version: 0.5.14(@trivago/prettier-plugin-sort-imports@4.3.0)(prettier@3.2.5) + version: 0.5.14(@trivago/prettier-plugin-sort-imports@4.3.0)(prettier@3.3.3) react: specifier: ^18.3.1 version: 18.3.1 @@ -53,8 +57,8 @@ dependencies: specifier: ^4.12.0 version: 4.12.0(react@18.3.1) tailwindcss: - specifier: ^3.4.3 - version: 3.4.3 + specifier: ^3.4.9 + version: 3.4.9 typescript: specifier: 5.2.2 version: 5.2.2 @@ -74,11 +78,11 @@ packages: is-potential-custom-element-name: 1.0.1 dev: false - /@babel/code-frame@7.24.2: - resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} + /@babel/code-frame@7.24.7: + resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/highlight': 7.24.5 + '@babel/highlight': 7.24.7 picocolors: 1.0.1 dev: false @@ -91,100 +95,102 @@ packages: source-map: 0.5.7 dev: false - /@babel/generator@7.24.5: - resolution: {integrity: sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==} + /@babel/generator@7.25.0: + resolution: {integrity: sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.5 + '@babel/types': 7.25.2 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 dev: false - /@babel/helper-environment-visitor@7.22.20: - resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} + /@babel/helper-environment-visitor@7.24.7: + resolution: {integrity: sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/types': 7.25.2 dev: false - /@babel/helper-function-name@7.23.0: - resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} + /@babel/helper-function-name@7.24.7: + resolution: {integrity: sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/template': 7.24.0 - '@babel/types': 7.24.5 + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 dev: false - /@babel/helper-hoist-variables@7.22.5: - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} + /@babel/helper-hoist-variables@7.24.7: + resolution: {integrity: sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.5 + '@babel/types': 7.25.2 dev: false - /@babel/helper-split-export-declaration@7.24.5: - resolution: {integrity: sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==} + /@babel/helper-split-export-declaration@7.24.7: + resolution: {integrity: sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==} engines: {node: '>=6.9.0'} dependencies: - '@babel/types': 7.24.5 + '@babel/types': 7.25.2 dev: false - /@babel/helper-string-parser@7.24.1: - resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==} + /@babel/helper-string-parser@7.24.8: + resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} engines: {node: '>=6.9.0'} dev: false - /@babel/helper-validator-identifier@7.24.5: - resolution: {integrity: sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==} + /@babel/helper-validator-identifier@7.24.7: + resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} dev: false - /@babel/highlight@7.24.5: - resolution: {integrity: sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==} + /@babel/highlight@7.24.7: + resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.24.5 + '@babel/helper-validator-identifier': 7.24.7 chalk: 2.4.2 js-tokens: 4.0.0 picocolors: 1.0.1 dev: false - /@babel/parser@7.24.5: - resolution: {integrity: sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==} + /@babel/parser@7.25.3: + resolution: {integrity: sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==} engines: {node: '>=6.0.0'} hasBin: true dependencies: - '@babel/types': 7.17.0 + '@babel/types': 7.25.2 dev: false - /@babel/runtime@7.24.5: - resolution: {integrity: sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==} + /@babel/runtime@7.25.0: + resolution: {integrity: sha512-7dRy4DwXwtzBrPbZflqxnvfxLF8kdZXPkhymtDeFoFqE6ldzjQFgYTtYIFARcLEYDrqfBfYcZt1WqFxRoyC9Rw==} engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.1 dev: false - /@babel/template@7.24.0: - resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==} + /@babel/template@7.25.0: + resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.24.2 - '@babel/parser': 7.24.5 - '@babel/types': 7.24.5 + '@babel/code-frame': 7.24.7 + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 dev: false /@babel/traverse@7.23.2: resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.24.2 - '@babel/generator': 7.24.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.24.5 - '@babel/parser': 7.24.5 - '@babel/types': 7.24.5 - debug: 4.3.4 + '@babel/code-frame': 7.24.7 + '@babel/generator': 7.25.0 + '@babel/helper-environment-visitor': 7.24.7 + '@babel/helper-function-name': 7.24.7 + '@babel/helper-hoist-variables': 7.24.7 + '@babel/helper-split-export-declaration': 7.24.7 + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 + debug: 4.3.6 globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -194,16 +200,16 @@ packages: resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-validator-identifier': 7.24.5 + '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 dev: false - /@babel/types@7.24.5: - resolution: {integrity: sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==} + /@babel/types@7.25.2: + resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==} engines: {node: '>=6.9.0'} dependencies: - '@babel/helper-string-parser': 7.24.1 - '@babel/helper-validator-identifier': 7.24.5 + '@babel/helper-string-parser': 7.24.8 + '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 dev: false @@ -218,7 +224,7 @@ packages: react: ^16 || ^17 || ^18 react-dom: ^16 || ^17 || ^18 dependencies: - '@tanstack/react-virtual': 3.5.0(react-dom@18.3.1)(react@18.3.1) + '@tanstack/react-virtual': 3.8.6(react-dom@18.3.1)(react@18.3.1) client-only: 0.0.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -249,7 +255,7 @@ packages: engines: {node: '>=6.0.0'} dependencies: '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/sourcemap-codec': 1.5.0 '@jridgewell/trace-mapping': 0.3.25 dev: false @@ -263,15 +269,15 @@ packages: engines: {node: '>=6.0.0'} dev: false - /@jridgewell/sourcemap-codec@1.4.15: - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + /@jridgewell/sourcemap-codec@1.5.0: + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} dev: false /@jridgewell/trace-mapping@0.3.25: resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/sourcemap-codec': 1.5.0 dev: false /@mdx-js/mdx@2.3.0: @@ -304,12 +310,12 @@ packages: react: '>=16' dependencies: '@types/mdx': 2.0.13 - '@types/react': 18.3.2 + '@types/react': 18.3.3 react: 18.3.1 dev: false - /@napi-rs/simple-git-android-arm-eabi@0.1.16: - resolution: {integrity: sha512-dbrCL0Pl5KZG7x7tXdtVsA5CO6At5ohDX3myf5xIYn9kN4jDFxsocl8bNt6Vb/hZQoJd8fI+k5VlJt+rFhbdVw==} + /@napi-rs/simple-git-android-arm-eabi@0.1.17: + resolution: {integrity: sha512-P+B95PKy46Dq9q1sr18wCn+Uj/WShMIyBBA+ezVHWJge6JSeGh4hLhKEpv3+Rk6S7ITCXxrr7Pn7U4o20nVqhQ==} engines: {node: '>= 10'} cpu: [arm] os: [android] @@ -317,8 +323,8 @@ packages: dev: false optional: true - /@napi-rs/simple-git-android-arm64@0.1.16: - resolution: {integrity: sha512-xYz+TW5J09iK8SuTAKK2D5MMIsBUXVSs8nYp7HcMi8q6FCRO7yJj96YfP9PvKsc/k64hOyqGmL5DhCzY9Cu1FQ==} + /@napi-rs/simple-git-android-arm64@0.1.17: + resolution: {integrity: sha512-qggMcxfNKiQsAa1pupFuC8fajvAz6QQcZirHxTPWUxQSEwUvliL8cyKM4QdJwSac0VEITTmHaegDSXsn43EvGg==} engines: {node: '>= 10'} cpu: [arm64] os: [android] @@ -326,8 +332,8 @@ packages: dev: false optional: true - /@napi-rs/simple-git-darwin-arm64@0.1.16: - resolution: {integrity: sha512-XfgsYqxhUE022MJobeiX563TJqyQyX4FmYCnqrtJwAfivESVeAJiH6bQIum8dDEYMHXCsG7nL8Ok0Dp8k2m42g==} + /@napi-rs/simple-git-darwin-arm64@0.1.17: + resolution: {integrity: sha512-LYgvP3Rw1lCkBW0Ud4xZFUZ2SI+Y2vvy9X/OEzlmqee5VPC1wiez2kZ62lD3ABU0Ta4Khv7W+eJsaXiTuvcq+Q==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] @@ -335,8 +341,8 @@ packages: dev: false optional: true - /@napi-rs/simple-git-darwin-x64@0.1.16: - resolution: {integrity: sha512-tkEVBhD6vgRCbeWsaAQqM3bTfpIVGeitamPPRVSbsq8qgzJ5Dx6ZedH27R7KSsA/uao7mZ3dsrNLXbu1Wy5MzA==} + /@napi-rs/simple-git-darwin-x64@0.1.17: + resolution: {integrity: sha512-CyLbxyLILT47jdNDTCREdO0LELKWqfkbw9EV4gaFrLZVD1Dej+NnZogR4oDrg7N12pcgVWnleaK1hcBDs7SeLQ==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] @@ -344,8 +350,17 @@ packages: dev: false optional: true - /@napi-rs/simple-git-linux-arm-gnueabihf@0.1.16: - resolution: {integrity: sha512-R6VAyNnp/yRaT7DV1Ao3r67SqTWDa+fNq2LrNy0Z8gXk2wB9ZKlrxFtLPE1WSpWknWtyRDLpRlsorh7Evk7+7w==} + /@napi-rs/simple-git-freebsd-x64@0.1.17: + resolution: {integrity: sha512-SHWa3o5EZWYh7UoLi2sO4uLjZd58UFHaMttw4O9PZPvFcdjz5LjC6CQclwZbLyPDPMGefalrkUeYTs+/VJ+XEA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: false + optional: true + + /@napi-rs/simple-git-linux-arm-gnueabihf@0.1.17: + resolution: {integrity: sha512-nQpwitNfSN4qGmDpWOlS3XqeE7NARxCvL+lxO0CtKih2iBuWIoU0wViVKdf9fb/Rm3xsQHcblMkliMnjcAOupg==} engines: {node: '>= 10'} cpu: [arm] os: [linux] @@ -353,8 +368,8 @@ packages: dev: false optional: true - /@napi-rs/simple-git-linux-arm64-gnu@0.1.16: - resolution: {integrity: sha512-LAGI0opFKw/HBMCV2qIBK3uWSEW9h4xd2ireZKLJy8DBPymX6NrWIamuxYNyCuACnFdPRxR4LaRFy4J5ZwuMdw==} + /@napi-rs/simple-git-linux-arm64-gnu@0.1.17: + resolution: {integrity: sha512-JD8nSLa9WY1kAppMufYqcqFYYjZKjZZFdZtlpz6Kn0kk4Qmm3Rvt1etnuQBwax9R2wG4n9YPYfpidDxic8rlNw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -362,8 +377,8 @@ packages: dev: false optional: true - /@napi-rs/simple-git-linux-arm64-musl@0.1.16: - resolution: {integrity: sha512-I57Ph0F0Yn2KW93ep+V1EzKhACqX0x49vvSiapqIsdDA2PifdEWLc1LJarBolmK7NKoPqKmf6lAKKO9lhiZzkg==} + /@napi-rs/simple-git-linux-arm64-musl@0.1.17: + resolution: {integrity: sha512-PRdVIEvgdIuJhDvdneO3X7XfZwujU7MOyymwK3kR1RMJPlbwzxdQBA86am/jEkBP7d8Cx8RbREzJ6y/2hAHKOQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -371,8 +386,26 @@ packages: dev: false optional: true - /@napi-rs/simple-git-linux-x64-gnu@0.1.16: - resolution: {integrity: sha512-AZYYFY2V7hlcQASPEOWyOa3e1skzTct9QPzz0LiDM3f/hCFY/wBaU2M6NC5iG3d2Kr38heuyFS/+JqxLm5WaKA==} + /@napi-rs/simple-git-linux-powerpc64le-gnu@0.1.17: + resolution: {integrity: sha512-afbfsJMpQjtdLP3BRGj/hKpRqymxw2Lt+dmyoRej0zKxZnuPrws3Fi85RyYsT/6Tq0hSUAMeh5UtxGAOH3q8gA==} + engines: {node: '>= 10'} + cpu: [powerpc64le] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@napi-rs/simple-git-linux-s390x-gnu@0.1.17: + resolution: {integrity: sha512-qTgRIUsU+b7RMls+Ji4xlDYq0rsUuNBpzVgb991UPnzrhFWFFkCtyk6I6tJqMtRfg7Vgn1stCghFEQiHmpqkew==} + engines: {node: '>= 10'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@napi-rs/simple-git-linux-x64-gnu@0.1.17: + resolution: {integrity: sha512-xHlyUDJhjPUCR07JGrvMfLg5XSRVDsxgpo6B6zYQOSMcVgM7fjvyWNMBe508r4eD5YZKZyBPfSJUc5Ls9ToJNQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -380,8 +413,8 @@ packages: dev: false optional: true - /@napi-rs/simple-git-linux-x64-musl@0.1.16: - resolution: {integrity: sha512-9TyMcYSBJwjT8jwjY9m24BZbu7ozyWTjsmYBYNtK3B0Um1Ov6jthSNneLVvouQ6x+k3Ow+00TiFh6bvmT00r8g==} + /@napi-rs/simple-git-linux-x64-musl@0.1.17: + resolution: {integrity: sha512-eaTr+WPeiuEegduE3O7VzHhHftGXmX1pzzILoOTbbdmeEuH1BHnGAr35XTu+1lUHUqE2JHef3d3PgBHeh844hA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -389,8 +422,8 @@ packages: dev: false optional: true - /@napi-rs/simple-git-win32-arm64-msvc@0.1.16: - resolution: {integrity: sha512-uslJ1WuAHCYJWui6xjsyT47SjX6KOHDtClmNO8hqKz1pmDSNY7AjyUY8HxvD1lK9bDnWwc4JYhikS9cxCqHybw==} + /@napi-rs/simple-git-win32-arm64-msvc@0.1.17: + resolution: {integrity: sha512-v1F72stOCjapCd0Ha928m8X8i/IPhPQIXbYEGX0MEmaaAzbAJ3PTSSFpb0rFLShXaDFA2Wuw/jzlkPLESPdKVQ==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] @@ -398,8 +431,8 @@ packages: dev: false optional: true - /@napi-rs/simple-git-win32-x64-msvc@0.1.16: - resolution: {integrity: sha512-SoEaVeCZCDF1MP+M9bMSXsZWgEjk4On9GWADO5JOulvzR1bKjk0s9PMHwe/YztR9F0sJzrCxwtvBZowhSJsQPg==} + /@napi-rs/simple-git-win32-x64-msvc@0.1.17: + resolution: {integrity: sha512-ziSqhCGE2eTUqpQKEutGobU2fH1t9fXwGF58dMFaPgTJIISaENvdnKu5FDJfA94vPbe3BMN64JoTmjBSglGFhQ==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -407,29 +440,32 @@ packages: dev: false optional: true - /@napi-rs/simple-git@0.1.16: - resolution: {integrity: sha512-C5wRPw9waqL2jk3jEDeJv+f7ScuO3N0a39HVdyFLkwKxHH4Sya4ZbzZsu2JLi6eEqe7RuHipHL6mC7B2OfYZZw==} + /@napi-rs/simple-git@0.1.17: + resolution: {integrity: sha512-lH8bYk2kqfbKsht/Gejd8K+y069ZXPHBfrlcj1ptS6xlJbHhncHxpFyy57W+PTuCcN+MPGVjs+3CiufG8EUrCQ==} engines: {node: '>= 10'} optionalDependencies: - '@napi-rs/simple-git-android-arm-eabi': 0.1.16 - '@napi-rs/simple-git-android-arm64': 0.1.16 - '@napi-rs/simple-git-darwin-arm64': 0.1.16 - '@napi-rs/simple-git-darwin-x64': 0.1.16 - '@napi-rs/simple-git-linux-arm-gnueabihf': 0.1.16 - '@napi-rs/simple-git-linux-arm64-gnu': 0.1.16 - '@napi-rs/simple-git-linux-arm64-musl': 0.1.16 - '@napi-rs/simple-git-linux-x64-gnu': 0.1.16 - '@napi-rs/simple-git-linux-x64-musl': 0.1.16 - '@napi-rs/simple-git-win32-arm64-msvc': 0.1.16 - '@napi-rs/simple-git-win32-x64-msvc': 0.1.16 - dev: false - - /@next/env@14.2.3: - resolution: {integrity: sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA==} - dev: false - - /@next/swc-darwin-arm64@14.2.3: - resolution: {integrity: sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==} + '@napi-rs/simple-git-android-arm-eabi': 0.1.17 + '@napi-rs/simple-git-android-arm64': 0.1.17 + '@napi-rs/simple-git-darwin-arm64': 0.1.17 + '@napi-rs/simple-git-darwin-x64': 0.1.17 + '@napi-rs/simple-git-freebsd-x64': 0.1.17 + '@napi-rs/simple-git-linux-arm-gnueabihf': 0.1.17 + '@napi-rs/simple-git-linux-arm64-gnu': 0.1.17 + '@napi-rs/simple-git-linux-arm64-musl': 0.1.17 + '@napi-rs/simple-git-linux-powerpc64le-gnu': 0.1.17 + '@napi-rs/simple-git-linux-s390x-gnu': 0.1.17 + '@napi-rs/simple-git-linux-x64-gnu': 0.1.17 + '@napi-rs/simple-git-linux-x64-musl': 0.1.17 + '@napi-rs/simple-git-win32-arm64-msvc': 0.1.17 + '@napi-rs/simple-git-win32-x64-msvc': 0.1.17 + dev: false + + /@next/env@14.2.5: + resolution: {integrity: sha512-/zZGkrTOsraVfYjGP8uM0p6r0BDT6xWpkjdVbcz66PJVSpwXX3yNiRycxAuDfBKGWBrZBXRuK/YVlkNgxHGwmA==} + dev: false + + /@next/swc-darwin-arm64@14.2.5: + resolution: {integrity: sha512-/9zVxJ+K9lrzSGli1///ujyRfon/ZneeZ+v4ptpiPoOU+GKZnm8Wj8ELWU1Pm7GHltYRBklmXMTUqM/DqQ99FQ==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] @@ -437,8 +473,8 @@ packages: dev: false optional: true - /@next/swc-darwin-x64@14.2.3: - resolution: {integrity: sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==} + /@next/swc-darwin-x64@14.2.5: + resolution: {integrity: sha512-vXHOPCwfDe9qLDuq7U1OYM2wUY+KQ4Ex6ozwsKxp26BlJ6XXbHleOUldenM67JRyBfVjv371oneEvYd3H2gNSA==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] @@ -446,8 +482,8 @@ packages: dev: false optional: true - /@next/swc-linux-arm64-gnu@14.2.3: - resolution: {integrity: sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==} + /@next/swc-linux-arm64-gnu@14.2.5: + resolution: {integrity: sha512-vlhB8wI+lj8q1ExFW8lbWutA4M2ZazQNvMWuEDqZcuJJc78iUnLdPPunBPX8rC4IgT6lIx/adB+Cwrl99MzNaA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -455,8 +491,8 @@ packages: dev: false optional: true - /@next/swc-linux-arm64-musl@14.2.3: - resolution: {integrity: sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==} + /@next/swc-linux-arm64-musl@14.2.5: + resolution: {integrity: sha512-NpDB9NUR2t0hXzJJwQSGu1IAOYybsfeB+LxpGsXrRIb7QOrYmidJz3shzY8cM6+rO4Aojuef0N/PEaX18pi9OA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] @@ -464,8 +500,8 @@ packages: dev: false optional: true - /@next/swc-linux-x64-gnu@14.2.3: - resolution: {integrity: sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==} + /@next/swc-linux-x64-gnu@14.2.5: + resolution: {integrity: sha512-8XFikMSxWleYNryWIjiCX+gU201YS+erTUidKdyOVYi5qUQo/gRxv/3N1oZFCgqpesN6FPeqGM72Zve+nReVXQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -473,8 +509,8 @@ packages: dev: false optional: true - /@next/swc-linux-x64-musl@14.2.3: - resolution: {integrity: sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==} + /@next/swc-linux-x64-musl@14.2.5: + resolution: {integrity: sha512-6QLwi7RaYiQDcRDSU/os40r5o06b5ue7Jsk5JgdRBGGp8l37RZEh9JsLSM8QF0YDsgcosSeHjglgqi25+m04IQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] @@ -482,8 +518,8 @@ packages: dev: false optional: true - /@next/swc-win32-arm64-msvc@14.2.3: - resolution: {integrity: sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==} + /@next/swc-win32-arm64-msvc@14.2.5: + resolution: {integrity: sha512-1GpG2VhbspO+aYoMOQPQiqc/tG3LzmsdBH0LhnDS3JrtDx2QmzXe0B6mSZZiN3Bq7IOMXxv1nlsjzoS1+9mzZw==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] @@ -491,8 +527,8 @@ packages: dev: false optional: true - /@next/swc-win32-ia32-msvc@14.2.3: - resolution: {integrity: sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==} + /@next/swc-win32-ia32-msvc@14.2.5: + resolution: {integrity: sha512-Igh9ZlxwvCDsu6438FXlQTHlRno4gFpJzqPjSIBZooD22tKeI4fE/YMRoHVJHmrQ2P5YL1DoZ0qaOKkbeFWeMg==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] @@ -500,8 +536,8 @@ packages: dev: false optional: true - /@next/swc-win32-x64-msvc@14.2.3: - resolution: {integrity: sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==} + /@next/swc-win32-x64-msvc@14.2.5: + resolution: {integrity: sha512-tEQ7oinq1/CjSG9uSTerca3v4AZ+dFa+4Yu6ihaG8Ud8ddqLQgFGcnwYls13H5X5CPDPZJdYxyeMui6muOLd4g==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -549,11 +585,11 @@ packages: resolution: {integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==} dependencies: '@swc/counter': 0.1.3 - tslib: 2.6.2 + tslib: 2.6.3 dev: false - /@tailwindcss/typography@0.5.13(tailwindcss@3.4.3): - resolution: {integrity: sha512-ADGcJ8dX21dVVHIwTRgzrcunY6YY9uSlAHHGVKvkA+vLc5qLwEszvKts40lx7z0qc4clpjclwLeK5rVCV2P/uw==} + /@tailwindcss/typography@0.5.14(tailwindcss@3.4.9): + resolution: {integrity: sha512-ZvOCjUbsJBjL9CxQBn+VEnFpouzuKhxh2dH8xMIWHILL+HfOYtlAkWcyoon8LlzE53d2Yo6YO6pahKKNW3q1YQ==} peerDependencies: tailwindcss: '>=3.0.0 || insiders' dependencies: @@ -561,22 +597,22 @@ packages: lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 postcss-selector-parser: 6.0.10 - tailwindcss: 3.4.3 + tailwindcss: 3.4.9 dev: false - /@tanstack/react-virtual@3.5.0(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-rtvo7KwuIvqK9zb0VZ5IL7fiJAEnG+0EiFZz8FUOs+2mhGqdGmjKIaT1XU7Zq0eFqL0jonLlhbayJI/J2SA/Bw==} + /@tanstack/react-virtual@3.8.6(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-YcOQAxccjIqiC8cQ8QQiDU6F+JZtfpKNvYsw/ju5Q6S5/m9KDs5SaJvKz1kLj3RKNAOBMIFA9snN2MDmyT9lBQ==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 dependencies: - '@tanstack/virtual-core': 3.5.0 + '@tanstack/virtual-core': 3.8.6 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false - /@tanstack/virtual-core@3.5.0: - resolution: {integrity: sha512-KnPRCkQTyqhanNC0K63GBG3wA8I+D1fQuVnAvcBF8f13akOKeQp1gSbu6f77zCxhEk727iV5oQnbHLYzHrECLg==} + /@tanstack/virtual-core@3.8.6: + resolution: {integrity: sha512-UJeU4SBrx3hqULNzJ3oC0kgJ5miIAg+FwomxMTlQNxob6ppTInifANHd9ukETvzdzxr6zt3CjQ0rttQpVjbt6Q==} dev: false /@theguild/remark-mermaid@0.0.5(react@18.3.1): @@ -598,7 +634,7 @@ packages: unist-util-visit: 5.0.0 dev: false - /@trivago/prettier-plugin-sort-imports@4.3.0(prettier@3.2.5): + /@trivago/prettier-plugin-sort-imports@4.3.0(prettier@3.3.3): resolution: {integrity: sha512-r3n0onD3BTOVUNPhR4lhVK4/pABGpbA7bW3eumZnYdKaHkf1qEC+Mag6DPbGNuuh0eG8AaYj+YqmVHSiGslaTQ==} peerDependencies: '@vue/compiler-sfc': 3.x @@ -608,12 +644,12 @@ packages: optional: true dependencies: '@babel/generator': 7.17.7 - '@babel/parser': 7.24.5 + '@babel/parser': 7.25.3 '@babel/traverse': 7.23.2 '@babel/types': 7.17.0 javascript-natural-sort: 0.7.1 lodash: 4.17.21 - prettier: 3.2.5 + prettier: 3.3.3 transitivePeerDependencies: - supports-color dev: false @@ -700,8 +736,8 @@ packages: resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} dev: false - /@types/node@20.12.12: - resolution: {integrity: sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==} + /@types/node@20.14.15: + resolution: {integrity: sha512-Fz1xDMCF/B00/tYSVMlmK7hVeLh7jE5f3B7X1/hmV0MJBwE27KlS7EvD/Yp+z1lm8mVhwV5w+n8jOZG8AfTlKw==} dependencies: undici-types: 5.26.5 dev: false @@ -710,8 +746,8 @@ packages: resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} dev: false - /@types/react@18.3.2: - resolution: {integrity: sha512-Btgg89dAnqD4vV7R3hlwOxgqobUQKgx3MmrQRi0yYbs/P0ym8XozIAlkqVilPqHQwXs4e9Tf63rrCgl58BcO4w==} + /@types/react@18.3.3: + resolution: {integrity: sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==} dependencies: '@types/prop-types': 15.7.12 csstype: 3.1.3 @@ -733,16 +769,16 @@ packages: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} dev: false - /acorn-jsx@5.3.2(acorn@8.11.3): + /acorn-jsx@5.3.2(acorn@8.12.1): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - acorn: 8.11.3 + acorn: 8.12.1 dev: false - /acorn@8.11.3: - resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} + /acorn@8.12.1: + resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} engines: {node: '>=0.4.0'} hasBin: true dev: false @@ -751,7 +787,7 @@ packages: resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} engines: {node: '>= 14'} dependencies: - debug: 4.3.4 + debug: 4.3.6 transitivePeerDependencies: - supports-color dev: false @@ -832,19 +868,19 @@ packages: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: false - /autoprefixer@10.4.19(postcss@8.4.38): - resolution: {integrity: sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==} + /autoprefixer@10.4.20(postcss@8.4.41): + resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} engines: {node: ^10 || ^12 || >=14} hasBin: true peerDependencies: postcss: ^8.1.0 dependencies: - browserslist: 4.23.0 - caniuse-lite: 1.0.30001618 + browserslist: 4.23.3 + caniuse-lite: 1.0.30001651 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.0.1 - postcss: 8.4.38 + postcss: 8.4.41 postcss-value-parser: 4.2.0 dev: false @@ -880,15 +916,15 @@ packages: fill-range: 7.1.1 dev: false - /browserslist@4.23.0: - resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} + /browserslist@4.23.3: + resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001618 - electron-to-chromium: 1.4.769 - node-releases: 2.0.14 - update-browserslist-db: 1.0.16(browserslist@4.23.0) + caniuse-lite: 1.0.30001651 + electron-to-chromium: 1.5.6 + node-releases: 2.0.18 + update-browserslist-db: 1.1.0(browserslist@4.23.3) dev: false /busboy@1.6.0: @@ -903,8 +939,8 @@ packages: engines: {node: '>= 6'} dev: false - /caniuse-lite@1.0.30001618: - resolution: {integrity: sha512-p407+D1tIkDvsEAPS22lJxLQQaG8OTBEqo0KhzfABGk0TU4juBNDSfH0hyAp/HRyx+M8L17z/ltyhxh27FTfQg==} + /caniuse-lite@1.0.30001651: + resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==} dev: false /ccount@2.0.1: @@ -1076,17 +1112,17 @@ packages: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} dev: false - /cytoscape-cose-bilkent@4.1.0(cytoscape@3.29.2): + /cytoscape-cose-bilkent@4.1.0(cytoscape@3.30.2): resolution: {integrity: sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==} peerDependencies: cytoscape: ^3.2.0 dependencies: cose-base: 1.0.3 - cytoscape: 3.29.2 + cytoscape: 3.30.2 dev: false - /cytoscape@3.29.2: - resolution: {integrity: sha512-2G1ycU28Nh7OHT9rkXRLpCDP30MKH1dXJORZuBhtEhEW7pKwgPi77ImqlCWinouyE1PNepIOGZBOrE84DG7LyQ==} + /cytoscape@3.30.2: + resolution: {integrity: sha512-oICxQsjW8uSaRmn4UK/jkczKOqTrVqt5/1WL0POiJUT2EKNc9STM4hYFHv917yu55aTBMFNRzymlJhVAiWPCxw==} engines: {node: '>=0.10'} dev: false @@ -1376,12 +1412,12 @@ packages: whatwg-url: 14.0.0 dev: false - /dayjs@1.11.11: - resolution: {integrity: sha512-okzr3f11N6WuqYtZSvm+F776mB41wRZMhKP+hc34YdW+KmtYYK9iqvHSwo2k9FEH3fhGXvOPV6yz2IcSrfRUDg==} + /dayjs@1.11.12: + resolution: {integrity: sha512-Rt2g+nTbLlDWZTwwrIXjy9MeiZmSDI375FvZs72ngxx8PDC6YXOeR3q5LAuPzjZQxhiWdRKac7RKV+YyQYfYIg==} dev: false - /debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + /debug@4.3.6: + resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -1437,16 +1473,16 @@ packages: resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} dev: false - /dompurify@3.1.3: - resolution: {integrity: sha512-5sOWYSNPaxz6o2MUPvtyxTTqR4D3L77pr5rUQoWgD5ROQtVIZQgJkXbo1DLlK3vj11YGw5+LnF4SYti4gZmwng==} + /dompurify@3.1.6: + resolution: {integrity: sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==} dev: false /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} dev: false - /electron-to-chromium@1.4.769: - resolution: {integrity: sha512-bZu7p623NEA2rHTc9K1vykl57ektSPQYFFqQir8BOYf6EKOB+yIsbFB9Kpm7Cgt6tsLr9sRkqfqSZUw7LP1XxQ==} + /electron-to-chromium@1.5.6: + resolution: {integrity: sha512-jwXWsM5RPf6j9dPYzaorcBSUg6AiqocPEyMpkchkvntaH9HGfOOMZwxMJjDY/XEs3T5dM7uyH1VhRMkqUU9qVw==} dev: false /elkjs@0.9.3: @@ -1565,7 +1601,7 @@ packages: '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 - micromatch: 4.0.5 + micromatch: 4.0.7 dev: false /fastq@1.17.1: @@ -1589,8 +1625,8 @@ packages: resolution: {integrity: sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==} dev: false - /foreground-child@3.1.1: - resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} + /foreground-child@3.3.0: + resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} engines: {node: '>=14'} dependencies: cross-spawn: 7.0.3 @@ -1658,15 +1694,15 @@ packages: is-glob: 4.0.3 dev: false - /glob@10.3.15: - resolution: {integrity: sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw==} - engines: {node: '>=16 || 14 >=14.18'} + /glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} hasBin: true dependencies: - foreground-child: 3.1.1 - jackspeak: 2.3.6 - minimatch: 9.0.4 - minipass: 7.1.1 + foreground-child: 3.3.0 + jackspeak: 3.4.3 + minimatch: 9.0.5 + minipass: 7.1.2 + package-json-from-dist: 1.0.0 path-scurry: 1.11.1 dev: false @@ -1739,7 +1775,7 @@ packages: devlop: 1.1.0 hast-util-from-parse5: 8.0.1 parse5: 7.1.2 - vfile: 6.0.1 + vfile: 6.0.2 vfile-message: 4.0.2 dev: false @@ -1751,8 +1787,8 @@ packages: devlop: 1.1.0 hastscript: 8.0.0 property-information: 6.5.0 - vfile: 6.0.1 - vfile-location: 5.0.2 + vfile: 6.0.2 + vfile-location: 5.0.3 web-namespaces: 2.0.1 dev: false @@ -1768,8 +1804,8 @@ packages: '@types/hast': 3.0.4 dev: false - /hast-util-raw@9.0.3: - resolution: {integrity: sha512-ICWvVOF2fq4+7CMmtCPD5CM4QKjPbHpPotE6+8tDooV0ZuyJVUzHsrNX+O5NaRbieTf0F7FfeBOMAwi6Td0+yQ==} + /hast-util-raw@9.0.4: + resolution: {integrity: sha512-LHE65TD2YiNsHD3YuXcKPHXPLuYh/gjp12mOfU8jxSrm1f/yJpsb0F/KKljS6U9LJoP0Ux+tCe8iJ2AsPzTdgA==} dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.2 @@ -1777,11 +1813,11 @@ packages: hast-util-from-parse5: 8.0.1 hast-util-to-parse5: 8.0.0 html-void-elements: 3.0.0 - mdast-util-to-hast: 13.1.0 + mdast-util-to-hast: 13.2.0 parse5: 7.1.2 unist-util-position: 5.0.0 unist-util-visit: 5.0.0 - vfile: 6.0.1 + vfile: 6.0.2 web-namespaces: 2.0.1 zwitch: 2.0.4 dev: false @@ -1859,17 +1895,17 @@ packages: engines: {node: '>= 14'} dependencies: agent-base: 7.1.1 - debug: 4.3.4 + debug: 4.3.6 transitivePeerDependencies: - supports-color dev: false - /https-proxy-agent@7.0.4: - resolution: {integrity: sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==} + /https-proxy-agent@7.0.5: + resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} engines: {node: '>= 14'} dependencies: agent-base: 7.1.1 - debug: 4.3.4 + debug: 4.3.6 transitivePeerDependencies: - supports-color dev: false @@ -1921,8 +1957,9 @@ packages: engines: {node: '>=4'} dev: false - /is-core-module@2.13.1: - resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + /is-core-module@2.15.0: + resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==} + engines: {node: '>= 0.4'} dependencies: hasown: 2.0.2 dev: false @@ -2007,7 +2044,7 @@ packages: engines: {node: '>=18'} dependencies: '@types/dompurify': 3.0.5 - dompurify: 3.1.3 + dompurify: 3.1.6 jsdom: 23.2.0 transitivePeerDependencies: - bufferutil @@ -2016,9 +2053,8 @@ packages: - utf-8-validate dev: false - /jackspeak@2.3.6: - resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} - engines: {node: '>=14'} + /jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} dependencies: '@isaacs/cliui': 8.0.2 optionalDependencies: @@ -2029,8 +2065,8 @@ packages: resolution: {integrity: sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==} dev: false - /jiti@1.21.0: - resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} + /jiti@1.21.6: + resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} hasBin: true dev: false @@ -2069,7 +2105,7 @@ packages: form-data: 4.0.0 html-encoding-sniffer: 4.0.0 http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.4 + https-proxy-agent: 7.0.5 is-potential-custom-element-name: 1.0.1 parse5: 7.1.2 rrweb-cssom: 0.6.0 @@ -2081,7 +2117,7 @@ packages: whatwg-encoding: 3.1.1 whatwg-mimetype: 4.0.0 whatwg-url: 14.0.0 - ws: 8.17.1 + ws: 8.18.0 xml-name-validator: 5.0.0 transitivePeerDependencies: - bufferutil @@ -2095,12 +2131,12 @@ packages: hasBin: true dev: false - /jsonc-parser@3.2.1: - resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==} + /jsonc-parser@3.3.1: + resolution: {integrity: sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==} dev: false - /katex@0.16.10: - resolution: {integrity: sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==} + /katex@0.16.11: + resolution: {integrity: sha512-RQrI8rlHY92OLf3rho/Ts8i/XvjgguEjOkO1BEXcU3N8BqPpSzBNwV/G0Ukr+P/l3ivvJUE/Fa/CwbS6HesGNQ==} hasBin: true dependencies: commander: 8.3.0 @@ -2129,8 +2165,8 @@ packages: engines: {node: '>=10'} dev: false - /lilconfig@3.1.1: - resolution: {integrity: sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==} + /lilconfig@3.1.2: + resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} engines: {node: '>=14'} dev: false @@ -2173,9 +2209,8 @@ packages: js-tokens: 4.0.0 dev: false - /lru-cache@10.2.2: - resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} - engines: {node: 14 || >=16.14} + /lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} dev: false /lru-cache@4.1.5: @@ -2203,7 +2238,7 @@ packages: /match-sorter@6.3.4: resolution: {integrity: sha512-jfZW7cWS5y/1xswZo8VBOdudUiSd9nifYRWphc9M5D/ee4w4AoXLgBEdRbgVaxbMuagBPeUC5y2Hi8DO6o9aDg==} dependencies: - '@babel/runtime': 7.24.5 + '@babel/runtime': 7.25.0 remove-accents: 0.5.0 dev: false @@ -2382,8 +2417,8 @@ packages: unist-util-visit: 4.1.2 dev: false - /mdast-util-to-hast@13.1.0: - resolution: {integrity: sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==} + /mdast-util-to-hast@13.2.0: + resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} dependencies: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 @@ -2393,7 +2428,7 @@ packages: trim-lines: 3.0.1 unist-util-position: 5.0.0 unist-util-visit: 5.0.0 - vfile: 6.0.1 + vfile: 6.0.2 dev: false /mdast-util-to-markdown@1.5.0: @@ -2430,15 +2465,15 @@ packages: '@braintree/sanitize-url': 6.0.4 '@types/d3-scale': 4.0.8 '@types/d3-scale-chromatic': 3.0.3 - cytoscape: 3.29.2 - cytoscape-cose-bilkent: 4.1.0(cytoscape@3.29.2) + cytoscape: 3.30.2 + cytoscape-cose-bilkent: 4.1.0(cytoscape@3.30.2) d3: 7.9.0 d3-sankey: 0.12.3 dagre-d3-es: 7.0.10 - dayjs: 1.11.11 - dompurify: 3.1.3 + dayjs: 1.11.12 + dompurify: 3.1.6 elkjs: 0.9.3 - katex: 0.16.10 + katex: 0.16.11 khroma: 2.1.0 lodash-es: 4.17.21 mdast-util-from-markdown: 1.3.1 @@ -2548,7 +2583,7 @@ packages: resolution: {integrity: sha512-es0CcOV89VNS9wFmyn+wyFTKweXGW4CEvdaAca6SWRWPyYCbBisnjaHLjWO4Nszuiud84jCpkHsqAJoa768Pvg==} dependencies: '@types/katex': 0.16.7 - katex: 0.16.10 + katex: 0.16.11 micromark-factory-space: 1.1.0 micromark-util-character: 1.2.0 micromark-util-symbol: 1.1.0 @@ -2607,8 +2642,8 @@ packages: /micromark-extension-mdxjs@1.0.1: resolution: {integrity: sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q==} dependencies: - acorn: 8.11.3 - acorn-jsx: 5.3.2(acorn@8.11.3) + acorn: 8.12.1 + acorn-jsx: 5.3.2(acorn@8.12.1) micromark-extension-mdx-expression: 1.0.8 micromark-extension-mdx-jsx: 1.0.5 micromark-extension-mdx-md: 1.0.1 @@ -2804,7 +2839,7 @@ packages: resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==} dependencies: '@types/debug': 4.1.12 - debug: 4.3.4 + debug: 4.3.6 decode-named-character-reference: 1.0.2 micromark-core-commonmark: 1.1.0 micromark-factory-space: 1.1.0 @@ -2824,8 +2859,8 @@ packages: - supports-color dev: false - /micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + /micromatch@4.0.7: + resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} engines: {node: '>=8.6'} dependencies: braces: 3.0.3 @@ -2844,15 +2879,15 @@ packages: mime-db: 1.52.0 dev: false - /minimatch@9.0.4: - resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} + /minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 dev: false - /minipass@7.1.1: - resolution: {integrity: sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==} + /minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} dev: false @@ -2896,32 +2931,32 @@ packages: - supports-color dev: false - /next-seo@6.5.0(next@14.2.3)(react-dom@18.3.1)(react@18.3.1): + /next-seo@6.5.0(next@14.2.5)(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-MfzUeWTN/x/rsKp/1n0213eojO97lIl0unxqbeCY+6pAucViHDA8GSLRRcXpgjsSmBxfCFdfpu7LXbt4ANQoNQ==} peerDependencies: next: ^8.1.1-canary.54 || >=9.0.0 react: '>=16.0.0' react-dom: '>=16.0.0' dependencies: - next: 14.2.3(react-dom@18.3.1)(react@18.3.1) + next: 14.2.5(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false - /next-themes@0.2.1(next@14.2.3)(react-dom@18.3.1)(react@18.3.1): + /next-themes@0.2.1(next@14.2.5)(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==} peerDependencies: next: '*' react: '*' react-dom: '*' dependencies: - next: 14.2.3(react-dom@18.3.1)(react@18.3.1) + next: 14.2.5(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) dev: false - /next@14.2.3(react-dom@18.3.1)(react@18.3.1): - resolution: {integrity: sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==} + /next@14.2.5(react-dom@18.3.1)(react@18.3.1): + resolution: {integrity: sha512-0f8aRfBVL+mpzfBjYfQuLWh2WyAwtJXCRfkPF4UJ5qd2YwrHczsrSzXU4tRMV0OAxR8ZJZWPFn6uhSC56UTsLA==} engines: {node: '>=18.17.0'} hasBin: true peerDependencies: @@ -2938,31 +2973,31 @@ packages: sass: optional: true dependencies: - '@next/env': 14.2.3 + '@next/env': 14.2.5 '@swc/helpers': 0.5.5 busboy: 1.6.0 - caniuse-lite: 1.0.30001618 + caniuse-lite: 1.0.30001651 graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) styled-jsx: 5.1.1(react@18.3.1) optionalDependencies: - '@next/swc-darwin-arm64': 14.2.3 - '@next/swc-darwin-x64': 14.2.3 - '@next/swc-linux-arm64-gnu': 14.2.3 - '@next/swc-linux-arm64-musl': 14.2.3 - '@next/swc-linux-x64-gnu': 14.2.3 - '@next/swc-linux-x64-musl': 14.2.3 - '@next/swc-win32-arm64-msvc': 14.2.3 - '@next/swc-win32-ia32-msvc': 14.2.3 - '@next/swc-win32-x64-msvc': 14.2.3 + '@next/swc-darwin-arm64': 14.2.5 + '@next/swc-darwin-x64': 14.2.5 + '@next/swc-linux-arm64-gnu': 14.2.5 + '@next/swc-linux-arm64-musl': 14.2.5 + '@next/swc-linux-x64-gnu': 14.2.5 + '@next/swc-linux-x64-musl': 14.2.5 + '@next/swc-win32-arm64-msvc': 14.2.5 + '@next/swc-win32-ia32-msvc': 14.2.5 + '@next/swc-win32-x64-msvc': 14.2.5 transitivePeerDependencies: - '@babel/core' - babel-plugin-macros dev: false - /nextra-theme-docs@2.13.4(next@14.2.3)(nextra@2.13.4)(react-dom@18.3.1)(react@18.3.1): + /nextra-theme-docs@2.13.4(next@14.2.5)(nextra@2.13.4)(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-2XOoMfwBCTYBt8ds4ZHftt9Wyf2XsykiNo02eir/XEYB+sGeUoE77kzqfidjEOKCSzOHYbK9BDMcg2+B/2vYRw==} peerDependencies: next: '>=9.5.3' @@ -2979,17 +3014,17 @@ packages: git-url-parse: 13.1.1 intersection-observer: 0.12.2 match-sorter: 6.3.4 - next: 14.2.3(react-dom@18.3.1)(react@18.3.1) - next-seo: 6.5.0(next@14.2.3)(react-dom@18.3.1)(react@18.3.1) - next-themes: 0.2.1(next@14.2.3)(react-dom@18.3.1)(react@18.3.1) - nextra: 2.13.4(next@14.2.3)(react-dom@18.3.1)(react@18.3.1) + next: 14.2.5(react-dom@18.3.1)(react@18.3.1) + next-seo: 6.5.0(next@14.2.5)(react-dom@18.3.1)(react@18.3.1) + next-themes: 0.2.1(next@14.2.5)(react-dom@18.3.1)(react@18.3.1) + nextra: 2.13.4(next@14.2.5)(react-dom@18.3.1)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) scroll-into-view-if-needed: 3.1.0 zod: 3.23.8 dev: false - /nextra@2.13.4(next@14.2.3)(react-dom@18.3.1)(react@18.3.1): + /nextra@2.13.4(next@14.2.5)(react-dom@18.3.1)(react@18.3.1): resolution: {integrity: sha512-7of2rSBxuUa3+lbMmZwG9cqgftcoNOVQLTT6Rxf3EhBR9t1EI7b43dted8YoqSNaigdE3j1CoyNkX8N/ZzlEpw==} engines: {node: '>=16'} peerDependencies: @@ -3000,16 +3035,16 @@ packages: '@headlessui/react': 1.7.19(react-dom@18.3.1)(react@18.3.1) '@mdx-js/mdx': 2.3.0 '@mdx-js/react': 2.3.0(react@18.3.1) - '@napi-rs/simple-git': 0.1.16 + '@napi-rs/simple-git': 0.1.17 '@theguild/remark-mermaid': 0.0.5(react@18.3.1) '@theguild/remark-npm2yarn': 0.2.1 clsx: 2.1.1 github-slugger: 2.0.0 graceful-fs: 4.2.11 gray-matter: 4.0.3 - katex: 0.16.10 + katex: 0.16.11 lodash.get: 4.4.2 - next: 14.2.3(react-dom@18.3.1)(react@18.3.1) + next: 14.2.5(react-dom@18.3.1)(react@18.3.1) next-mdx-remote: 4.4.1(react-dom@18.3.1)(react@18.3.1) p-limit: 3.1.0 react: 18.3.1 @@ -3030,8 +3065,8 @@ packages: - supports-color dev: false - /node-releases@2.0.14: - resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} + /node-releases@2.0.18: + resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} dev: false /non-layered-tidy-tree-layout@2.0.2: @@ -3082,6 +3117,10 @@ packages: yocto-queue: 0.1.0 dev: false + /package-json-from-dist@1.0.0: + resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + dev: false + /parse-entities@4.0.1: resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} dependencies: @@ -3135,8 +3174,8 @@ packages: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} dependencies: - lru-cache: 10.2.2 - minipass: 7.1.1 + lru-cache: 10.4.3 + minipass: 7.1.2 dev: false /periscopic@3.1.0: @@ -3166,29 +3205,29 @@ packages: engines: {node: '>= 6'} dev: false - /postcss-import@15.1.0(postcss@8.4.38): + /postcss-import@15.1.0(postcss@8.4.41): resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} engines: {node: '>=14.0.0'} peerDependencies: postcss: ^8.0.0 dependencies: - postcss: 8.4.38 + postcss: 8.4.41 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 dev: false - /postcss-js@4.0.1(postcss@8.4.38): + /postcss-js@4.0.1(postcss@8.4.41): resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} engines: {node: ^12 || ^14 || >= 16} peerDependencies: postcss: ^8.4.21 dependencies: camelcase-css: 2.0.1 - postcss: 8.4.38 + postcss: 8.4.41 dev: false - /postcss-load-config@4.0.2(postcss@8.4.38): + /postcss-load-config@4.0.2(postcss@8.4.41): resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} engines: {node: '>= 14'} peerDependencies: @@ -3200,19 +3239,19 @@ packages: ts-node: optional: true dependencies: - lilconfig: 3.1.1 - postcss: 8.4.38 - yaml: 2.4.2 + lilconfig: 3.1.2 + postcss: 8.4.41 + yaml: 2.5.0 dev: false - /postcss-nested@6.0.1(postcss@8.4.38): - resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} + /postcss-nested@6.2.0(postcss@8.4.41): + resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} engines: {node: '>=12.0'} peerDependencies: postcss: ^8.2.14 dependencies: - postcss: 8.4.38 - postcss-selector-parser: 6.0.16 + postcss: 8.4.41 + postcss-selector-parser: 6.1.2 dev: false /postcss-selector-parser@6.0.10: @@ -3223,8 +3262,8 @@ packages: util-deprecate: 1.0.2 dev: false - /postcss-selector-parser@6.0.16: - resolution: {integrity: sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==} + /postcss-selector-parser@6.1.2: + resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} engines: {node: '>=4'} dependencies: cssesc: 3.0.0 @@ -3244,8 +3283,8 @@ packages: source-map-js: 1.2.0 dev: false - /postcss@8.4.38: - resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} + /postcss@8.4.41: + resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==} engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 @@ -3253,7 +3292,7 @@ packages: source-map-js: 1.2.0 dev: false - /prettier-plugin-tailwindcss@0.5.14(@trivago/prettier-plugin-sort-imports@4.3.0)(prettier@3.2.5): + /prettier-plugin-tailwindcss@0.5.14(@trivago/prettier-plugin-sort-imports@4.3.0)(prettier@3.3.3): resolution: {integrity: sha512-Puaz+wPUAhFp8Lo9HuciYKM2Y2XExESjeT+9NQoVFXZsPPnc9VYss2SpxdQ6vbatmt8/4+SN0oe0I1cPDABg9Q==} engines: {node: '>=14.21.3'} peerDependencies: @@ -3305,12 +3344,12 @@ packages: prettier-plugin-svelte: optional: true dependencies: - '@trivago/prettier-plugin-sort-imports': 4.3.0(prettier@3.2.5) - prettier: 3.2.5 + '@trivago/prettier-plugin-sort-imports': 4.3.0(prettier@3.3.3) + prettier: 3.3.3 dev: false - /prettier@3.2.5: - resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} + /prettier@3.3.3: + resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} engines: {node: '>=14'} hasBin: true dev: false @@ -3397,9 +3436,9 @@ packages: '@types/katex': 0.16.7 hast-util-from-html-isomorphic: 2.0.0 hast-util-to-text: 4.0.2 - katex: 0.16.10 + katex: 0.16.11 unist-util-visit-parents: 6.0.1 - vfile: 6.0.1 + vfile: 6.0.2 dev: false /rehype-pretty-code@0.9.11(shiki@0.14.7): @@ -3418,8 +3457,8 @@ packages: resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} dependencies: '@types/hast': 3.0.4 - hast-util-raw: 9.0.3 - vfile: 6.0.1 + hast-util-raw: 9.0.4 + vfile: 6.0.2 dev: false /remark-gfm@3.0.1: @@ -3496,7 +3535,7 @@ packages: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true dependencies: - is-core-module: 2.13.1 + is-core-module: 2.15.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 dev: false @@ -3590,7 +3629,7 @@ packages: resolution: {integrity: sha512-dNPAPrxSc87ua2sKJ3H5dQ/6ZaY8RNnaAqK+t0eG7p0Soi2ydiqbGOTaZCqaYvA/uZYfS1LJnemt3Q+mSfcPCg==} dependencies: ansi-sequence-parser: 1.1.1 - jsonc-parser: 3.2.1 + jsonc-parser: 3.3.1 vscode-oniguruma: 1.7.0 vscode-textmate: 8.0.0 dev: false @@ -3727,7 +3766,7 @@ packages: dependencies: '@jridgewell/gen-mapping': 0.3.5 commander: 4.1.1 - glob: 10.3.15 + glob: 10.4.5 lines-and-columns: 1.2.4 mz: 2.7.0 pirates: 4.0.6 @@ -3757,8 +3796,8 @@ packages: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} dev: false - /tailwindcss@3.4.3: - resolution: {integrity: sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==} + /tailwindcss@3.4.9: + resolution: {integrity: sha512-1SEOvRr6sSdV5IDf9iC+NU4dhwdqzF4zKKq3sAbasUWHEM6lsMhX+eNN5gkPx1BvLFEnZQEUFbXnGj8Qlp83Pg==} engines: {node: '>=14.0.0'} hasBin: true dependencies: @@ -3770,18 +3809,18 @@ packages: fast-glob: 3.3.2 glob-parent: 6.0.2 is-glob: 4.0.3 - jiti: 1.21.0 + jiti: 1.21.6 lilconfig: 2.1.0 - micromatch: 4.0.5 + micromatch: 4.0.7 normalize-path: 3.0.0 object-hash: 3.0.0 picocolors: 1.0.1 - postcss: 8.4.38 - postcss-import: 15.1.0(postcss@8.4.38) - postcss-js: 4.0.1(postcss@8.4.38) - postcss-load-config: 4.0.2(postcss@8.4.38) - postcss-nested: 6.0.1(postcss@8.4.38) - postcss-selector-parser: 6.0.16 + postcss: 8.4.41 + postcss-import: 15.1.0(postcss@8.4.41) + postcss-js: 4.0.1(postcss@8.4.41) + postcss-load-config: 4.0.2(postcss@8.4.41) + postcss-nested: 6.2.0(postcss@8.4.41) + postcss-selector-parser: 6.1.2 resolve: 1.22.8 sucrase: 3.35.0 transitivePeerDependencies: @@ -3862,8 +3901,8 @@ packages: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} dev: false - /tslib@2.6.2: - resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + /tslib@2.6.3: + resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} dev: false /type-fest@1.4.0: @@ -4018,13 +4057,13 @@ packages: engines: {node: '>= 4.0.0'} dev: false - /update-browserslist-db@1.0.16(browserslist@4.23.0): - resolution: {integrity: sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==} + /update-browserslist-db@1.1.0(browserslist@4.23.3): + resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' dependencies: - browserslist: 4.23.0 + browserslist: 4.23.3 escalade: 3.1.2 picocolors: 1.0.1 dev: false @@ -4056,11 +4095,11 @@ packages: sade: 1.8.1 dev: false - /vfile-location@5.0.2: - resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==} + /vfile-location@5.0.3: + resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} dependencies: '@types/unist': 3.0.2 - vfile: 6.0.1 + vfile: 6.0.2 dev: false /vfile-matter@3.0.1: @@ -4094,8 +4133,8 @@ packages: vfile-message: 3.1.4 dev: false - /vfile@6.0.1: - resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==} + /vfile@6.0.2: + resolution: {integrity: sha512-zND7NlS8rJYb/sPqkb13ZvbbUoExdbi4w3SfRrMq6R3FvnLQmmfpajJNITuuYm6AZ5uao9vy4BAos3EXBPf2rg==} dependencies: '@types/unist': 3.0.2 unist-util-stringify-position: 4.0.0 @@ -4183,8 +4222,8 @@ packages: strip-ansi: 7.1.0 dev: false - /ws@8.17.1: - resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==} + /ws@8.18.0: + resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 @@ -4209,8 +4248,8 @@ packages: resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} dev: false - /yaml@2.4.2: - resolution: {integrity: sha512-B3VqDZ+JAg1nZpaEmWtTXUlBneoGx6CPM9b0TENK6aoSu5t73dItudwdgmi6tHlIZZId4dZ9skcAQ2UbcyAeVA==} + /yaml@2.5.0: + resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==} engines: {node: '>= 14'} hasBin: true dev: false @@ -4227,7 +4266,3 @@ packages: /zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} dev: false - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false From 682e84b411ab60d8b435b80317ad2b22f4fe7ebc Mon Sep 17 00:00:00 2001 From: Luc Perkins Date: Thu, 19 Sep 2024 14:17:39 +0300 Subject: [PATCH 5/5] Fix dangling sentence --- pages/_app.mdx | 2 +- pages/features/cache.mdx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pages/_app.mdx b/pages/_app.mdx index 465ec63..90dae7c 100644 --- a/pages/_app.mdx +++ b/pages/_app.mdx @@ -1,4 +1,4 @@ -import '../style.css' +import "../style.css"; export default function App({ Component, pageProps }) { return diff --git a/pages/features/cache.mdx b/pages/features/cache.mdx index ac2f3b4..4c96bbe 100644 --- a/pages/features/cache.mdx +++ b/pages/features/cache.mdx @@ -60,7 +60,7 @@ In this configuration: * The `permissions` section enables you to authenticate to FlakeHub Cache. No other authentication method, like public keys, is necessary. -* The [Magic Nix Cache Action][mnca] +* The [Magic Nix Cache Action][mnca] sets up authentication for FlakeHub Cache. You can push all of your flake outputs to FlakeHub Cache in [GitHub Actions][actions] using the [Determinate CI Action][ci]: