From b51d0ce751359a2b2352879827c82ab08d4cdf42 Mon Sep 17 00:00:00 2001 From: Leo Vernisse Date: Fri, 1 Nov 2024 17:15:12 +0100 Subject: [PATCH] chore: update to nanocl 0.16 (#49) * chore: update to nanocl 0.16 * added blog post * updated openapi spec --- blog/2024-05-07-release-0.14/index.md | 3 + blog/2024-06-11-release-0.15/index.md | 11 +- blog/2024-11-01-release-0.16/index.md | 399 + blog/authors.yml | 2 +- docs/guides/nanocl/overview.md | 6 +- docs/references/nanocl/cli/nanocl-inspect.md | 28 + docs/references/nanocl/cli/nanocl-install.md | 2 +- .../nanocl/cli/nanocl-job-inspect.md | 2 +- docs/references/nanocl/cli/nanocl-job-list.md | 2 +- docs/references/nanocl/cli/nanocl-job-logs.md | 2 +- .../nanocl/cli/nanocl-job-remove.md | 2 +- .../references/nanocl/cli/nanocl-job-start.md | 2 +- docs/references/nanocl/cli/nanocl-job-wait.md | 2 +- docs/references/nanocl/cli/nanocl-job.md | 2 +- docs/references/nanocl/cli/nanocl-logs.md | 38 + .../nanocl/cli/nanocl-metric-inspect.md | 2 +- .../nanocl/cli/nanocl-metric-list.md | 2 +- docs/references/nanocl/cli/nanocl-metric.md | 2 +- .../nanocl/cli/nanocl-namespace-create.md | 2 +- .../nanocl/cli/nanocl-namespace-inspect.md | 2 +- .../nanocl/cli/nanocl-namespace-list.md | 2 +- .../nanocl/cli/nanocl-namespace-remove.md | 2 +- .../references/nanocl/cli/nanocl-namespace.md | 2 +- .../references/nanocl/cli/nanocl-node-list.md | 2 +- docs/references/nanocl/cli/nanocl-node.md | 2 +- docs/references/nanocl/cli/nanocl-ps.md | 2 +- .../nanocl/cli/nanocl-resource-history.md | 2 +- .../nanocl/cli/nanocl-resource-inspect.md | 2 +- .../nanocl/cli/nanocl-resource-list.md | 2 +- .../nanocl/cli/nanocl-resource-remove.md | 2 +- .../nanocl/cli/nanocl-resource-revert.md | 2 +- docs/references/nanocl/cli/nanocl-resource.md | 2 +- ...nanocl-secret-create-container-registry.md | 2 +- .../nanocl/cli/nanocl-secret-create-env.md | 2 +- .../nanocl/cli/nanocl-secret-create-tls.md | 18 +- .../nanocl/cli/nanocl-secret-create.md | 2 +- .../nanocl/cli/nanocl-secret-inspect.md | 2 +- .../nanocl/cli/nanocl-secret-list.md | 2 +- .../nanocl/cli/nanocl-secret-remove.md | 2 +- docs/references/nanocl/cli/nanocl-secret.md | 2 +- .../nanocl/cli/nanocl-state-apply.md | 2 +- .../nanocl/cli/nanocl-state-logs.md | 2 +- .../nanocl/cli/nanocl-state-remove.md | 2 +- docs/references/nanocl/cli/nanocl-state.md | 2 +- .../references/nanocl/cli/nanocl-uninstall.md | 2 +- docs/references/nanocl/cli/nanocl-version.md | 2 +- .../references/nanocl/cli/nanocl-vm-attach.md | 2 +- .../references/nanocl/cli/nanocl-vm-create.md | 2 +- .../nanocl/cli/nanocl-vm-image-clone.md | 2 +- .../nanocl/cli/nanocl-vm-image-create.md | 2 +- .../nanocl/cli/nanocl-vm-image-list.md | 2 +- .../nanocl/cli/nanocl-vm-image-remove.md | 2 +- .../nanocl/cli/nanocl-vm-image-resize.md | 2 +- docs/references/nanocl/cli/nanocl-vm-image.md | 2 +- .../nanocl/cli/nanocl-vm-inspect.md | 2 +- docs/references/nanocl/cli/nanocl-vm-list.md | 2 +- docs/references/nanocl/cli/nanocl-vm-patch.md | 2 +- .../references/nanocl/cli/nanocl-vm-remove.md | 2 +- docs/references/nanocl/cli/nanocl-vm-run.md | 2 +- docs/references/nanocl/cli/nanocl-vm-start.md | 2 +- docs/references/nanocl/cli/nanocl-vm-stop.md | 2 +- docs/references/nanocl/cli/nanocl-vm.md | 2 +- docs/references/nanocl/cli/nanocl.md | 8 +- docs/references/nanocl/cli/readme.md | 92 + docs/references/nanocl/objects/resource.md | 6 +- docs/samples/databases/_category_.yml | 2 - docs/samples/databases/mariadb.md | 35 - docs/samples/databases/mongodb.md | 34 - docs/samples/databases/mysql.md | 34 - docs/samples/databases/postgresql.md | 34 - docs/samples/databases/redis.md | 34 - docs/samples/overview.md | 20 - docs/samples/webapps/_category_.yml | 2 - docs/samples/webapps/adminer.md | 56 - docs/samples/webapps/gitlab.md | 55 - docs/samples/webapps/mongo-express.md | 55 - docusaurus.config.js | 8 +- examples/advanced/vpn.yml | 2 +- examples/get-started/proxy.yml | 4 +- examples/samples/databases/mariadb.yml | 22 - examples/samples/databases/mongodb.yml | 23 - examples/samples/databases/mysql.yml | 23 - examples/samples/databases/postgresql.yml | 22 - examples/samples/databases/redis.yml | 19 - examples/samples/webapps/adminer.yml | 33 - examples/samples/webapps/gitlab.yml | 41 - examples/samples/webapps/mongo-express.yml | 39 - package-lock.json | 2943 ++++-- package.json | 16 +- sidebars.js | 13 - src/pages/references/nanocl/daemon/v0.16.jsx | 12 + static/specs/nanocld/0.16.yaml | 7878 +++++++++++++++++ vars.js | 6 +- 93 files changed, 10676 insertions(+), 1508 deletions(-) create mode 100644 blog/2024-11-01-release-0.16/index.md create mode 100644 docs/references/nanocl/cli/nanocl-inspect.md create mode 100644 docs/references/nanocl/cli/nanocl-logs.md create mode 100644 docs/references/nanocl/cli/readme.md delete mode 100644 docs/samples/databases/_category_.yml delete mode 100644 docs/samples/databases/mariadb.md delete mode 100644 docs/samples/databases/mongodb.md delete mode 100644 docs/samples/databases/mysql.md delete mode 100644 docs/samples/databases/postgresql.md delete mode 100644 docs/samples/databases/redis.md delete mode 100644 docs/samples/overview.md delete mode 100644 docs/samples/webapps/_category_.yml delete mode 100644 docs/samples/webapps/adminer.md delete mode 100644 docs/samples/webapps/gitlab.md delete mode 100644 docs/samples/webapps/mongo-express.md delete mode 100644 examples/samples/databases/mariadb.yml delete mode 100644 examples/samples/databases/mongodb.yml delete mode 100644 examples/samples/databases/mysql.yml delete mode 100644 examples/samples/databases/postgresql.yml delete mode 100644 examples/samples/databases/redis.yml delete mode 100644 examples/samples/webapps/adminer.yml delete mode 100644 examples/samples/webapps/gitlab.yml delete mode 100644 examples/samples/webapps/mongo-express.yml create mode 100644 src/pages/references/nanocl/daemon/v0.16.jsx create mode 100644 static/specs/nanocld/0.16.yaml diff --git a/blog/2024-05-07-release-0.14/index.md b/blog/2024-05-07-release-0.14/index.md index bd6c505..2ef59e9 100644 --- a/blog/2024-05-07-release-0.14/index.md +++ b/blog/2024-05-07-release-0.14/index.md @@ -3,6 +3,9 @@ slug: nanocl-0.14 title: Introducing Nanocl 0.14 authors: [leone] tags: [nanocl, release, 0.14] +description: Nanocl 0.14 is here with a host of new features and enhancements to streamline your deployment workflows. Dive into the details! +image: /img/logo.png +keywords: [containerization, Docker, Kubernetes, Nanocl, NGINX, software development, deployment, release, 0.15] --- In the rapidly evolving landscape of container and virtual machine (VM) orchestration, staying ahead means constantly innovating and adapting to the needs of developers and operators. With that commitment in mind, we're thrilled to unveil Nanocl 0.14 – the latest iteration of our cutting-edge orchestrator that brings a plethora of enhancements and features to streamline your deployment workflows. diff --git a/blog/2024-06-11-release-0.15/index.md b/blog/2024-06-11-release-0.15/index.md index f8e3f14..8e0d20e 100644 --- a/blog/2024-06-11-release-0.15/index.md +++ b/blog/2024-06-11-release-0.15/index.md @@ -1,16 +1,17 @@ --- slug: nanocl-0.15 -title: Announcing Nanocl 0.15 +title: Introducing Nanocl 0.15 +description: Nanocl 0.15.0 is packed with exciting new features, significant enhancements, and important fixes to streamline your container orchestration and virtualization management. Dive into the details! +image: /img/logo.png authors: [leone] tags: [nanocl, release, 0.15] +keywords: [containerization, Docker, Kubernetes, Nanocl, NGINX, software development, deployment, release, 0.15] --- -# Announcing Nanocl 0.15 - -## Enhanced Functionality and Improved Performance - We are thrilled to announce the release of **Nanocl 0.15.0**, packed with exciting new features, significant enhancements, and important fixes to streamline your container orchestration and virtualization management. This release, effective from **June 11, 2024**, brings you the tools and improvements you’ve been waiting for. Let’s dive into the details! + + ## Key Highlights ### New Features diff --git a/blog/2024-11-01-release-0.16/index.md b/blog/2024-11-01-release-0.16/index.md new file mode 100644 index 0000000..86caa8e --- /dev/null +++ b/blog/2024-11-01-release-0.16/index.md @@ -0,0 +1,399 @@ +--- +slug: nanocl-0.16 +title: Introducing Nanocl 0.16 +description: Nanocl 0.16 is here with a range of changes and improvements across the Nanocl ecosystem. Dive into the details! +image: /img/logo.png +authors: [leone] +tags: [nanocl, release, 0.16] +keywords: [containerization, Docker, Kubernetes, Nanocl, NGINX, software development, deployment, release, 0.16] +--- + +We're excited to announce the release of **Nanocl 0.16**! This update brings a range of changes and improvements across the Nanocl ecosystem. Although this update may seem small, it lays the foundation for future scalability, especially around network meshing, with crucial enhancements in security and network binding. Let’s dive into what’s new and improved across our core components. + + + +## Highlights of Nanocl 0.16 + +One of the most significant improvements in this release is a shift in network architecture. Previously, each Nanocl namespace created its own Docker network, which posed challenges for future scalability, especially with IP binding across multiple nodes. With this release, we've moved to a single network for all containers, virtual machines, and jobs. This architecture will support seamless IP binding for multi-node scaling without compromising on efficiency. + +To enhance security in this unified network, we’ve introduced TLS-based end-to-end encryption. By mounting TLS secrets directly inside each container (cargo), only processes with the correct TLS secret can communicate with each other over the network. This allows network discovery but restricts unauthorized access, maintaining security across your distributed applications. + +--- + +## Component Changes + +### `ncproxy` 0.13.0 +- **Changed:** + - Updated to `nanocld_client` 0.16.0. + - Improved target network selection using `NetworkKind`. + - `NetworkKind` is now used to bind networks, enhancing flexibility in network management. +- **Fixed:** + - TLS proxy support to enable secure end-to-end encryption. + +### `ncdns` 0.8.0 +- **Changed:** + - Updated to `nanocld_client` 0.16.0. + - Network binding now utilizes `NetworkKind` for streamlined network operations. + +### `nanocld` 0.16.0 +- **Added:** + - Mounted TLS secrets within each container (cargo) for enhanced security. Located in `/opt/nanocl.io/secrets`. + - Loaded environment secrets in `InitContainer` for `cargo` and `job` configurations. + - Injected internal gateway data (`$$INTERNAL_GATEWAY`) for ease of internal network management. +- **Changed:** + - Removed namespace-based network bindings to reduce overhead. +- **Fixed:** + - Resolved missing metadata issues in job specs. + - Improved error messages for events. + - Fixed issues with cargo `InitContainer` network selection. + - Status when stopping a living object (cargo, vm, job) + +### `nanocl` 0.16.0 (CLI) +- **Added:** + - `nanocl logs` command for single-process log viewing for easier debugging. + - `nanocl inspect` command for inspecting individual processes. +- **Changed:** + - Updated to `nanocld_client` 0.16.0. +- **Fixed:** + - Windows compatibility and resolved compilation issues. + +--- + +## Example End to End TLS Configuration + +Below is an example of how to configure a TLS secret in Nanocl, showcasing the setup for a end to end tls encryption between the proxy and the cargo: + +```yaml +ApiVersion: v0.16 +Secrets: +- Name: test-client + Kind: nanocl.io/tls + Immutable: false + Data: + Certificate: | + -----BEGIN CERTIFICATE----- + MIIErDCCApQCFA0NY4tAFj3MJEOqNJoUacx8lHhgMA0GCSqGSIb3DQEBCwUAMBQx + EjAQBgNVBAMMCUN1c3RvbSBDQTAeFw0yNDAxMzExNTAwNDNaFw0yNTAxMzAxNTAw + NDNaMBExDzANBgNVBAMMBmNsaWVudDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCC + AgoCggIBAMxpYNAVPRG3SArHfdzscL86o0St73ZFODMCb0WkVucDetCUTY6qcG+4 + YzSNDpYKmwkdQ/k95zQPq09GKjD7Us2YrAvUM/Bk3rZ0LpI01ApmXDGKhGQRW/T5 + U9veLOkjY3MzDQBdOYhwSQeHqmPyUepMfSmMeAFrLLo7SqVyjwxc9qLO4TATgsnA + qlGYqeVr+VKdduy1/lcwetGb2swOFNWahaac9H6XN+5m3O0zj6tyq9u6G42RZswT + gyW9pOiLa0BJWOK8ON7h7uPDEx6bwYTiBE2eyGPqT3HEPQjQ1jiJ3PEZN5YQj2A2 + j6csjmostpDUweL0lH0VfsOOqFsZv3pGqNWMWSUqDTuGxxTcSRntVQNbW0OfG1zB + t6ZtBbQqC/6RlpqSvXHf7K1ctqONJM27kpdmw9sAmqCRAnfxJCwwwnC1vrFnXNv7 + WQGhjBeegyj0Acxh/ubXCwgqeVbxMVig49b1fUwm3eqaT8/zIQg9C8cp9BsF7PLw + EA8IHO+/iiUGlq2vzsens3FPkJDaqsBVdFh3IBER4VzG63qe1ui0l80d9h/qKa/O + 2CTSo8xy01fvxemjTmxMNdOwB6TLMPSpU+D3FEC17ptGqalwewlVIW9/67e4ebQH + VF8/+zktn7mN8DMc+XNM2n1umrsXgz59xB6grkxb4SzTst408whFAgMBAAEwDQYJ + KoZIhvcNAQELBQADggIBAG0qkRIzH1p4IdJz+FuwggXoV5qpCHzBfTBvb4SNVvxe + BPryZ7Qxjc9/KpyOMHF9PqyHoTJoQRFesDpmFpgOfDSU2+mXsVBQb7y393uRLGMq + K5XVLO1q8mFDI9ktB1N0vc6DvL8RE6IbN66AanKvtTzxlkHcpRtIwFnpRWJwyQqP + HWa+0AFTkWMU3c1ljW5+kUVuUxrHA83W6cu8+pjz0wabfqFbe5o5ycRIR6aDJ2Dj + DUltkPnstmgnTMfjS4/gJVOwKt248QPwLdGQxKhYNr587pISrGybNZ0c79VcuY6H + 6Q/dDQI9gIG0vcfkyChpwO78ycsqfqTgqoURjoEFu1XM3+zyho4BdjBMvNVkKAuJ + FhfdQF8UkpDvHNvM35QR9rjkebSC9yJjCqFAj8J7mRmgwfkfDbss/yurUFWCpAE3 + QlJuwQPcg6Uq1EL0Diah7oYzy3exdZHlXoX2GJcAchOkGkzdjlggRD/o4BZ0yKR0 + buV7W24av9syoNNUGl7IPBINJm0rs3+TjwGp60c+yay2APeG3TxP9wWQ0E0e8xYI + /ZFFoHngBDkWbBBvrIy3bffXTisMlHXdt5WeoN5x1lrm+PVP/95Ntebj7DIK2TJx + +Je/N6PsCqJkCxYIX2iA0DK+gzDcTy2bXiTysh01G7w9vKK1ycMVQNOWxlowBRnR + -----END CERTIFICATE----- + CertificateClient: | + -----BEGIN PRIVATE KEY----- + MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQCwjJ3Yg04CkFVx + x3I+F7xQEB+FSe/7HhWHauGRauOpjJdif37b15xIPwxGyFJ5KTDkWkqQ/TWFagkB + 4yUsYaoSZccL4taKWFuCFaSCtPGKc2nQbjQixELpg1T7T/OJFQvik5HAqvgCsnQB + UcVXVf/36rqkTivI1m7Tl7D35XieQsgTqRy4QqWEQQKJVBVQ1Obotau+FsAiwAvB + 51JlpFg60S6ZWtYuj5Ixh19Nj+5sSlHexcUk01jvHHmkUK1Xl6JPUNoIBJtqogV9 + YlUeykEzZo8qqwTSbs8vUjW1L5e5d3ubVSwxozNbxtHLyrOAhYdM0R8wLhpKtaEO + 5KKtSXzNsB7+Ggo3K69UV0syhXUPA8YOxiumKFJgBQ3guDFIo06cUFoRjjs/24ia + P2PaGrRnqw8kOEnVaNNh53+kY+TA5moTPkeg/9IINsKh7OAPo3UEsGx8cerVslRM + ALPCkOkmlLM8nZOX0+aUWrfwQbq/icsitPnE2Z/hm0uHm+X2slHNXf83cfPgK4O1 + AM0dfwRozODbFWICPquYIX/GDw60tZ8PnIiJHnok69kb+bEI1OkEVbqnZKQErn14 + hnKLWb8fsiJcI3VVHcT1qiAKE5uX1PvqFB8yULAzLtEVHINmPiZ2D+0mGHbbEtIM + c3MhDsDdW/AHhlYv/ViBfrcxJfohbwIDAQABAoICABSp9gpSyV1WH2oYegVNKeav + vGtmuAagWCISycwHbWt5inkmNbxC2YaV5TieVxOEqrWk4SK56vsZP2ylIBi4ZaY5 + m2PcwlehoombQYy646UyKlRm/FswCtTiC575QKaZfAaiVxDsnJKpkxevG8tDxENJ + igbpJLQhGl+nBY4+TDEvMn56m2NFtFxtGirmAzNZd/K3hh59ndzItZeVx6MglTht + JhMfpVSrITqtfuNz0T2DhV7vBErHIfBQA5Ij5JC4AsYIeecuWDJ8PEBCCMx4cnaI + WSwZUDsrv7w+LGMZ6vGeS9gRJAG7TwDoSG3zOlyfRF14AeUrFZC2VDTgtdmqcZzq + QhgkY1EpETZYQyWtEBR2WP10r8HXJ9idKXCk99LgC+BL75DJc08/4NaP6c/6z4Cx + Y6BubifUYAd5cXe30xy9CMQRFhw75JX+RxIv8hM450sdme9aH7Dpfi99i0QUu8r4 + MGl1BzYaDIebJc126GxIn76sAAhtRFimHfG04venERvhVBDbJQ0NBiaQQpSzVS83 + Y6gzEU6ssrX63cEU8mFlKGj5vFyvZriMjNTob9ec648A2go5lJjOEV3lA8fUCJHH + eAYmDbMya8DVXok/j+l9v7iPhmuW3JfHPNgCS+9RYyj6dxkNBsJtzAwj0y6otDLZ + 0B1xxMFgCfpCYjo2/2/hAoIBAQDm3l0lSRNLhdCpu14gWOWQeWftW3LFFVN1uTlT + W+T4qncqhRxyZs0sbamkMsBs+Jv+6SFTo/MlT6msb7lVZYt7EfsTrjOOtvrUkg0P + KODK1ncjO8PKhsaEcCoxDCiKfvQ4wZ22Ajsj4KCGyBDDiLA2BOw8AjSXr+h0oh4I + CKPqBrXgfZROu8vl2U7l+A+KSqh9S/PD59kVQ/iLQfKktAacqF7Q0NwJx5AF5QCo + ooeq7DP+ZhP/DXJGjw3gAHdKLPU2MuDdHizC0ZLfJYODzRpn4TXBQdpW9gXA9XKW + xAtKDK22apHpEZGMjx3wxgpc9LZQLrdt9R+EdU0gqs7b2h7TAoIBAQDDxIf/oVEH + YAtwMW2Yq3DVgPGulpRuQycuTMMJPW6eFvv+MDMmdjij+kkWtQrAN72Uxq3gd8Cg + nDLokzHPhqpmqoNvXaqa3MfIAukXEL3mBLiNPodNlIzkf6qFBxX0Fe0qIEoK1TTz + 7d42XX84DCEuQtUHfpoujgM25/u0jGg1ERnP1Jk9oc0YIDNAZTKadtRQ6OLSbZk7 + KG9jCFchQtb2asKzmWF8Wr5C/5VKC5xIXPpKH74KAUnq/vini/LIOf+WFb2kSCoW + MOhibZm3D2DNff4VOUM9q6CY0qB1r3W988p50D6zB1MStIQpymtVonjmi1xnKDlL + nBBPv4PYVOl1AoIBAH+6EkpojXZBCFp/QOoghJFTub3F1E9ZJx2AZkjKFHnGxbsO + fdiFK4oi+bHQKkmfmZ6EGF4P3JuN4U93WE/4qBxkrEYNIJUagtdMHlF+yi8uTCeA + DyhjPD1VWOJd2agV6MPlyn1B6rpEsksfMLcdTm/0dUYV6kbpmW+9qWPEc/srzz/t + +jk9COeXPGFaxi46c9EuTiTahm2Pd1iEGdwphWbyd9KLWtFGSVYZhi3GDczwdSuQ + CgwXwltrFcASQe0Vxmw/5cwvv4/hJqKyPHqU5MEIBhdveX6XCkPhB46F08EaFplP + iH4rrBzZqTTmPCGFecAOuIjrDo7X3t3t4hgcKuUCggEAanAAQUxD8e6WSXmWTNtp + jat9u57DNO/t7Y5uvCdabTmx6JHsPY0pXn5GHsJwBfJIcQtUniZ95NUIGMtu2ZYu + L4Ol0nbquygutuBeOtwvY1BNxv2oMtYBhHqlC46+sOb6+1xy5VDmaXl6x7Qt5xsx + LyXHDTwYOBeeR8v5XkC4p6GUlxrP9mJyUBuxweFDkhfpd9Qm/qH4HeHuLbnrJXph + xbhmA5/xENuFdoffc1K8tdtXedWoTWhF+C6Iow/EAHkILWHEqf1SZJ5SurE8Ufta + dl96Na/cjzsxJeXeuB2dtplGDNTcQhpJYHIlKVOU6ApeEXrT0oJcJG/FrpZB6OzB + wQKCAQEAiUNXWkm3kj3jHsc4o8eyvDkDt7lHqk1o4r+nQX0m/PSWhkt61kg5aTUI + qBmuPZ+5ZcH3wC92w8M0S6rvxZHwdUS/UtqVsj/KKzp1zXY7gVqjp+ZOAMYo6nEK + Qj835Xaw+RsuG4OVFIv/xiccG8gkERr8WCpkPaHcOoyJj6p/JLcIj4nT2/sllFRK + 7PaAxFIOzQtzjzOvX3riVZl9ZvyY0G5noPYS9T1cxPtHDX3Pzddr1fHAxyQPac9T + V2wQH2qCTkJCBzEqcoWAEv67PKhGFERXh4J13OxxGfej32D9I7xmtAXopFJV0YN1 + hJuriKyWGRdv1yvfRLQzxRQsJOb0OA== + -----END PRIVATE KEY----- + CertificateKey: | + -----BEGIN PRIVATE KEY----- + MIIJQQIBADANBgkqhkiG9w0BAQEFAASCCSswggknAgEAAoICAQDMaWDQFT0Rt0gK + x33c7HC/OqNEre92RTgzAm9FpFbnA3rQlE2OqnBvuGM0jQ6WCpsJHUP5Pec0D6tP + Riow+1LNmKwL1DPwZN62dC6SNNQKZlwxioRkEVv0+VPb3izpI2NzMw0AXTmIcEkH + h6pj8lHqTH0pjHgBayy6O0qlco8MXPaizuEwE4LJwKpRmKnla/lSnXbstf5XMHrR + m9rMDhTVmoWmnPR+lzfuZtztM4+rcqvbuhuNkWbME4MlvaToi2tASVjivDje4e7j + wxMem8GE4gRNnshj6k9xxD0I0NY4idzxGTeWEI9gNo+nLI5qLLaQ1MHi9JR9FX7D + jqhbGb96RqjVjFklKg07hscU3EkZ7VUDW1tDnxtcwbembQW0Kgv+kZaakr1x3+yt + XLajjSTNu5KXZsPbAJqgkQJ38SQsMMJwtb6xZ1zb+1kBoYwXnoMo9AHMYf7m1wsI + KnlW8TFYoOPW9X1MJt3qmk/P8yEIPQvHKfQbBezy8BAPCBzvv4olBpatr87Hp7Nx + T5CQ2qrAVXRYdyAREeFcxut6ntbotJfNHfYf6imvztgk0qPMctNX78Xpo05sTDXT + sAekyzD0qVPg9xRAte6bRqmpcHsJVSFvf+u3uHm0B1RfP/s5LZ+5jfAzHPlzTNp9 + bpq7F4M+fcQeoK5MW+Es07LeNPMIRQIDAQABAoICABDO02qYwc+XR1cM5fEIshFP + VDB9Wt+EkTqZ3Htt/W/7wxlWhcq8LLL1sZaXHgLBYX543RIoAGmxUM/xFYlh3lel + 0kkbYZ/xM2JDoGFeSFczPn5xBNzTk+ugpWrCqeULsg2Svjga8kmhQ1Kuru3j9XoI + tbv5Cb8YHcfnFdwP1OpafzSOQp7447wM2b8MM2Ai0OVK/wXiGxqhPmAblXyfkHVV + 7N/GhSYe72GXggVbxC2qqANRGhs5wFRPKxgAhYhSOndBRgvywnxf4zbwNJNuPECI + cyZ3bsPPIZ7ZrikaPvB23ud7lYIDNOmKOFAHOQ31mkIYyc6Md488zr0WxF96o69X + t7uprI/sIQhjFyTnSowOpGUq8x7zhw5McW3p5L6Ctl3BFQbeYDbJ2Nav7l+tJaLR + NK0ywJWCn2Hlcn/PJpvlbOoO7xAy/ioqW6SFk6P+gW2cJQs88kjcPr62xG0aV/Hn + QDLbp+Pxa+KjnhX2rB7Z9ek5aMQi3FSawX8PYzfFFaBNNAKtbBowYbs1EHLuBlsw + 5xmKC3mWQz3jGjHnkXx8+kJPpnSXbVPRpxD+UXfg/0ka50em7hVJumXI+eJo+/XE + ps34Jfe2M2LVJRbHz7VZjxCsGtNOW40cjzJWmW49lbz6Pa80DARcxnNwvR39/fKE + ovEaJup2dbE1oMmWd1K7AoIBAQDXNQ+PzzDa8A47kJAYPRNyJzF9EBzpOewStAsS + TOYo+UPXYoBuHjuvqgOmhsXD/AE3vAC+vaRY1avxlN5GkzEn/18qdkeMUz1CPojB + SNkixoUu8eToVF/cdMl7mNLj1SjMyqcacBD9S48fmmmpD7bQ+YQMcoYOv8fMuXXe + uHc+bgyge6HZIEZTMey7tENn4JnX0DhtieqaGxi0XWSUfsF5PfWbFN8OyowbgOrH + BT/O8tiUey6cydv0U/jxszl/gu5HVUNkrj8njt0VbXhDyhSuc6puh7F0gOtZAV4S + DIjnJS64ZPvCZp45xTgQG+I7YwKpLHNrtIzillMSUkD9tPDrAoIBAQDzKHV4BOT0 + pEAjyCO5ByvNvv2AcLueJrYvOJMUuwzI83ruAsspYGCt7jhTnidMvjrGcwl9IQy0 + ukgfPTYkinxl/Ce+jS/7sDb8SRa+IUxE1Psa/hZVBbk4+wWo8Kh34Z5TRCKBbau4 + WaQBJZSOM9yH2YQMVVYN2qMT6PTCEgBZI4DxcNLHk9FMdyZF0zqvVnzT8e8pwU2J + sz2efq2YO6m7R6IqrlDZIHvRCYY55koUFdt4D+JfuOWTz0l8MaBrzL29ybJHVamx + wtSIyrBWCZn5T5xMzfdfKOSLsZ3xINKS2lmuwXRZFR7wmlT7RvgxTGnZ/Hrx1Vpp + VL9b04kuHB+PAoIBAF9zvW8/qp+xEd8Bg6f8jv92utCJsQkRE9BH4xE+4mcSCDEk + E2rEJh0H/46BAH6o67FYxcvUOWzdeOIx8VTEPG1NK1yeEaX/1Y/oRKfWM9jkzHXB + /JG/urUBZ8xWQFOlW+9ZgzyKsD5ooRaXWn4N5jxSL2uF8EficDAxokIi92DNVvRn + YaX4VrjXz/SBQ9RzHklGpYCQR2oK0q5NLite/VlVTfZ3D2h0FiisyXV0spSLydwx + tr78GX8JL8WkhMA1xpIFE1s4nfJhv1WdtFX876dgzhswPFk8RSa5IIxI2wAK0eof + gDr9YPimrPMYKwPEKo32lUsUTdjCbB4YNZNSCfkCggEANS+xWho/9l8DBJCfd7Zg + 13UiP/jooPQ4v2VxjoRHjKDtT6hexeMl4oWL3oZmdDvb4VKCTdNv0ww4AFVERYPh + J/Gaw+xgBX6K2G4oQlhINXocns/bFKfW1ubZWxWg0/AO0InDvmm9uOoqnHGa5+vi + HfjvED+OPiOHrjAzcUu8tcK1TppuEGd9zWr2fSlx2a5iSX3O4WQ90JPbM5Lj57uN + KcDGcO2GE6guTQ/3QyzjITeStNVMn8Fyvf0GRtsYCtxS2HOIwl+zaYWDNZSYM4mQ + G19Vgds/c5ofO4sTUA3s4WBPY5E/IMkk5l3rnrbsTOQ49wxp3AHd79IwtSY1CFfw + cwKCAQBnAEdsc0UTRTjVfFrgkd1eT5O6XRgqxyKz8/2ZtxvskbjKvekrpdIRUMIv + tb8inY4JM1s1FNvGfYV7DUhRxIAxomLBvhj6cQVgUK/+5Jli9yXH+Wo1/aeDJ+XE + U+NtM9zKqDbMDZpSL7P2tyuY4uULGxHKcw2nJ4kEtMiL2OqkgtK9J04te+szGH+S + 1xqOm0tKjJZfe/7J3nqyvlnoVN+SHHyv8E/zHrcPLO0sLedurrQ0/sHv13/MGQcG + uemOQEYBEtoyDFsa28u1iNKZJo6Sz3f2NLMe4RmrRGGqC0fS0EPS5zjlgN8RJu8l + EDMo4iBXxfQa2PpBry2dyhFN07e2 + -----END PRIVATE KEY----- + VerifyClient: false +- Name: test-srv + Kind: nanocl.io/tls + Immutable: false + Data: + Certificate: | + -----BEGIN CERTIFICATE----- + MIIEsTCCApkCFBdhDFVUKj+T74FUL+0R4tVm7+/bMA0GCSqGSIb3DQEBCwUAMBQx + EjAQBgNVBAMMCUN1c3RvbSBDQTAeFw0yNDAxMzExNTAwMzJaFw0yNTAxMzAxNTAw + MzJaMBYxFDASBgNVBAMMC2V4YW1wbGUuY29tMIICIjANBgkqhkiG9w0BAQEFAAOC + Ag8AMIICCgKCAgEAuyYLpyMpy3yGT00omMvQ8v8hBq/NtstTI5I/B45fmEf9UmQC + yDragWdkixQssLxOYro0qCj/O607AJHNakMaazZ4imgHhvzYuHMlvv27KXxLxCFj + f1PXRTAzo3gCwJrC9HjGr23/3L8KWUlbI/12R2Vswlg4fa4BL7iOggPIV6qoRdjk + X4un+50jELAweNfOy6OH+STCVkNCbAivett2VTyWCp9y+TI3wH1L8MBHwidY6d/0 + Gzqh8EbTreqeU898wSSjZEJD8sxxBfECChvRBXVgp2vnAaWxAw+5dmIMr+PGPB2I + 83GROYa1M9WoKBYzVDXxk0tyAqJ6kvgVzam6WIz3qdwMQUofy0ydyglG47SY8zs4 + ivNus4tIkygcVHE+B1Jhu2FUFbvzdVQ5D9bRms4+OaK2QJ5YLpujRC0YSthOiToX + /kVAZQzu/NcMqVNUy5/jeD07HvAt41c+dXLSqs6nRgwGquqKfCVHfDRB1/LScLfR + A8/9LED24VhD3CvTIEEU++ncGw5xVXHc96cPZkBfcU4qM2NIZrLt4pAmorsGi7Wj + P9c7VRtHmTuzlYXLD81/DpnahNtKI/awIu3cjM9mt6L5gSOvCV0D6J0gBhN/7v9b + 0q+GqI/bEm9Ao2snlxFNmJwqqbDvyVcBuLAUDrtqYrpSgMHGJq69VPkI4gkCAwEA + ATANBgkqhkiG9w0BAQsFAAOCAgEARswWop1ZibUSFobhEZR7kPKy3boPV+Dq0Ezj + N4Sn+r1mgTo9alW6UqcGO7CJPWWILC9iEbmcW5CLrcDzb6Atax2VPBLWYK4SWXNf + IBcXAdh75SYpx4M8eCcHlOb4FXTM3NGuGoJfUxDXBSFoe+iJ6WVnWCgbsqHqSMeK + ZWL9rjScItMw9AK68CCRe4YVtwGIGNCd+TZsPekfDbqxBtVxa3XJkbjdONhLdgC0 + JD8/5hpQj3LOMAtGvzcbzyZ+IbjLD8HttSvnZI1+iqUd6nOkACGiIrIMmR5Ao6GE + 7dX6D/ue74PbQUUfI9jS/Ire6OtkOxPwvj83dLD6ZJ/dt3/Djt2S3pWnEnGxR1br + mIvH5xIAjdrG7fSKBzOTMN3i+VFdKsC1f696RgYBlGyiB4LnJex8D7LWk2osXYRB + 4/bLjuF3OlWIzvPZSZ8dUZcKrx/0XcgRCfneuDQAbQUcfw2cbkm0BDxetMCCVIyl + cF77+NQ0KQqrTQe9qPhkpwmIT6nA8T3Tn/KoZwoLOuNN3PRoOfcTKCFym5+qN/c6 + VfD4nH+otSEbCfkbIe3Uu7yxyGRJB3OSL8MyHLe8eGsMRCSxzUxlTy6Qaj3X2Cdk + ZUlYGbfyOq07srXzLHRMiW1QhpTA0Fos9Mc/HvdlNvg6guG496+XknELJzCN1t8W + fll3jsU= + -----END CERTIFICATE----- + CertificateClient: | + -----BEGIN PRIVATE KEY----- + MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQCwjJ3Yg04CkFVx + x3I+F7xQEB+FSe/7HhWHauGRauOpjJdif37b15xIPwxGyFJ5KTDkWkqQ/TWFagkB + 4yUsYaoSZccL4taKWFuCFaSCtPGKc2nQbjQixELpg1T7T/OJFQvik5HAqvgCsnQB + UcVXVf/36rqkTivI1m7Tl7D35XieQsgTqRy4QqWEQQKJVBVQ1Obotau+FsAiwAvB + 51JlpFg60S6ZWtYuj5Ixh19Nj+5sSlHexcUk01jvHHmkUK1Xl6JPUNoIBJtqogV9 + YlUeykEzZo8qqwTSbs8vUjW1L5e5d3ubVSwxozNbxtHLyrOAhYdM0R8wLhpKtaEO + 5KKtSXzNsB7+Ggo3K69UV0syhXUPA8YOxiumKFJgBQ3guDFIo06cUFoRjjs/24ia + P2PaGrRnqw8kOEnVaNNh53+kY+TA5moTPkeg/9IINsKh7OAPo3UEsGx8cerVslRM + ALPCkOkmlLM8nZOX0+aUWrfwQbq/icsitPnE2Z/hm0uHm+X2slHNXf83cfPgK4O1 + AM0dfwRozODbFWICPquYIX/GDw60tZ8PnIiJHnok69kb+bEI1OkEVbqnZKQErn14 + hnKLWb8fsiJcI3VVHcT1qiAKE5uX1PvqFB8yULAzLtEVHINmPiZ2D+0mGHbbEtIM + c3MhDsDdW/AHhlYv/ViBfrcxJfohbwIDAQABAoICABSp9gpSyV1WH2oYegVNKeav + vGtmuAagWCISycwHbWt5inkmNbxC2YaV5TieVxOEqrWk4SK56vsZP2ylIBi4ZaY5 + m2PcwlehoombQYy646UyKlRm/FswCtTiC575QKaZfAaiVxDsnJKpkxevG8tDxENJ + igbpJLQhGl+nBY4+TDEvMn56m2NFtFxtGirmAzNZd/K3hh59ndzItZeVx6MglTht + JhMfpVSrITqtfuNz0T2DhV7vBErHIfBQA5Ij5JC4AsYIeecuWDJ8PEBCCMx4cnaI + WSwZUDsrv7w+LGMZ6vGeS9gRJAG7TwDoSG3zOlyfRF14AeUrFZC2VDTgtdmqcZzq + QhgkY1EpETZYQyWtEBR2WP10r8HXJ9idKXCk99LgC+BL75DJc08/4NaP6c/6z4Cx + Y6BubifUYAd5cXe30xy9CMQRFhw75JX+RxIv8hM450sdme9aH7Dpfi99i0QUu8r4 + MGl1BzYaDIebJc126GxIn76sAAhtRFimHfG04venERvhVBDbJQ0NBiaQQpSzVS83 + Y6gzEU6ssrX63cEU8mFlKGj5vFyvZriMjNTob9ec648A2go5lJjOEV3lA8fUCJHH + eAYmDbMya8DVXok/j+l9v7iPhmuW3JfHPNgCS+9RYyj6dxkNBsJtzAwj0y6otDLZ + 0B1xxMFgCfpCYjo2/2/hAoIBAQDm3l0lSRNLhdCpu14gWOWQeWftW3LFFVN1uTlT + W+T4qncqhRxyZs0sbamkMsBs+Jv+6SFTo/MlT6msb7lVZYt7EfsTrjOOtvrUkg0P + KODK1ncjO8PKhsaEcCoxDCiKfvQ4wZ22Ajsj4KCGyBDDiLA2BOw8AjSXr+h0oh4I + CKPqBrXgfZROu8vl2U7l+A+KSqh9S/PD59kVQ/iLQfKktAacqF7Q0NwJx5AF5QCo + ooeq7DP+ZhP/DXJGjw3gAHdKLPU2MuDdHizC0ZLfJYODzRpn4TXBQdpW9gXA9XKW + xAtKDK22apHpEZGMjx3wxgpc9LZQLrdt9R+EdU0gqs7b2h7TAoIBAQDDxIf/oVEH + YAtwMW2Yq3DVgPGulpRuQycuTMMJPW6eFvv+MDMmdjij+kkWtQrAN72Uxq3gd8Cg + nDLokzHPhqpmqoNvXaqa3MfIAukXEL3mBLiNPodNlIzkf6qFBxX0Fe0qIEoK1TTz + 7d42XX84DCEuQtUHfpoujgM25/u0jGg1ERnP1Jk9oc0YIDNAZTKadtRQ6OLSbZk7 + KG9jCFchQtb2asKzmWF8Wr5C/5VKC5xIXPpKH74KAUnq/vini/LIOf+WFb2kSCoW + MOhibZm3D2DNff4VOUM9q6CY0qB1r3W988p50D6zB1MStIQpymtVonjmi1xnKDlL + nBBPv4PYVOl1AoIBAH+6EkpojXZBCFp/QOoghJFTub3F1E9ZJx2AZkjKFHnGxbsO + fdiFK4oi+bHQKkmfmZ6EGF4P3JuN4U93WE/4qBxkrEYNIJUagtdMHlF+yi8uTCeA + DyhjPD1VWOJd2agV6MPlyn1B6rpEsksfMLcdTm/0dUYV6kbpmW+9qWPEc/srzz/t + +jk9COeXPGFaxi46c9EuTiTahm2Pd1iEGdwphWbyd9KLWtFGSVYZhi3GDczwdSuQ + CgwXwltrFcASQe0Vxmw/5cwvv4/hJqKyPHqU5MEIBhdveX6XCkPhB46F08EaFplP + iH4rrBzZqTTmPCGFecAOuIjrDo7X3t3t4hgcKuUCggEAanAAQUxD8e6WSXmWTNtp + jat9u57DNO/t7Y5uvCdabTmx6JHsPY0pXn5GHsJwBfJIcQtUniZ95NUIGMtu2ZYu + L4Ol0nbquygutuBeOtwvY1BNxv2oMtYBhHqlC46+sOb6+1xy5VDmaXl6x7Qt5xsx + LyXHDTwYOBeeR8v5XkC4p6GUlxrP9mJyUBuxweFDkhfpd9Qm/qH4HeHuLbnrJXph + xbhmA5/xENuFdoffc1K8tdtXedWoTWhF+C6Iow/EAHkILWHEqf1SZJ5SurE8Ufta + dl96Na/cjzsxJeXeuB2dtplGDNTcQhpJYHIlKVOU6ApeEXrT0oJcJG/FrpZB6OzB + wQKCAQEAiUNXWkm3kj3jHsc4o8eyvDkDt7lHqk1o4r+nQX0m/PSWhkt61kg5aTUI + qBmuPZ+5ZcH3wC92w8M0S6rvxZHwdUS/UtqVsj/KKzp1zXY7gVqjp+ZOAMYo6nEK + Qj835Xaw+RsuG4OVFIv/xiccG8gkERr8WCpkPaHcOoyJj6p/JLcIj4nT2/sllFRK + 7PaAxFIOzQtzjzOvX3riVZl9ZvyY0G5noPYS9T1cxPtHDX3Pzddr1fHAxyQPac9T + V2wQH2qCTkJCBzEqcoWAEv67PKhGFERXh4J13OxxGfej32D9I7xmtAXopFJV0YN1 + hJuriKyWGRdv1yvfRLQzxRQsJOb0OA== + -----END PRIVATE KEY----- + CertificateKey: | + -----BEGIN PRIVATE KEY----- + MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQC7JgunIynLfIZP + TSiYy9Dy/yEGr822y1Mjkj8Hjl+YR/1SZALIOtqBZ2SLFCywvE5iujSoKP87rTsA + kc1qQxprNniKaAeG/Ni4cyW+/bspfEvEIWN/U9dFMDOjeALAmsL0eMavbf/cvwpZ + SVsj/XZHZWzCWDh9rgEvuI6CA8hXqqhF2ORfi6f7nSMQsDB4187Lo4f5JMJWQ0Js + CK9623ZVPJYKn3L5MjfAfUvwwEfCJ1jp3/QbOqHwRtOt6p5Tz3zBJKNkQkPyzHEF + 8QIKG9EFdWCna+cBpbEDD7l2Ygyv48Y8HYjzcZE5hrUz1agoFjNUNfGTS3IConqS + +BXNqbpYjPep3AxBSh/LTJ3KCUbjtJjzOziK826zi0iTKBxUcT4HUmG7YVQVu/N1 + VDkP1tGazj45orZAnlgum6NELRhK2E6JOhf+RUBlDO781wypU1TLn+N4PTse8C3j + Vz51ctKqzqdGDAaq6op8JUd8NEHX8tJwt9EDz/0sQPbhWEPcK9MgQRT76dwbDnFV + cdz3pw9mQF9xTiozY0hmsu3ikCaiuwaLtaM/1ztVG0eZO7OVhcsPzX8OmdqE20oj + 9rAi7dyMz2a3ovmBI68JXQPonSAGE3/u/1vSr4aoj9sSb0CjayeXEU2YnCqpsO/J + VwG4sBQOu2piulKAwcYmrr1U+QjiCQIDAQABAoICADuk0+jn+X17CbkDT7Fmn4ia + C9X8OHUN1sjK5qCLXOcE5nSYIBTdQN8l6vKyMs3+rYKkcny3WCSWQGwdi5hWm3hY + y1Dc960rLwyV0g1NAxWlIeZ3d6TQPRa1Vne+Gy50BDbyuOuXBIi/L9al3NCbClOV + vPQxNovDZWhmirBf8T0TS/66sYnL0fUMLu02IbSZnrPiwcaC0xa359bTa82dXNis + busixvspaIBFzmqDdTso3BrpP3xgEtUnVXYjhGMUiN9rRFGDFvGt+0VX+nzrQZHa + RzwEVQJ+4mul2sciV4XE81wcU5W2d4CccGp9KNLhxGkNqhh13nd9fdASFazOb28W + UMBzEhQPU6um1u/KJW3jEUulWp9KMKfE8qiwjb/NnA2VSFADT4IFOoCh8kutA5JD + x6QgzSqoQ0g8Bon/bK4BdY+x6lx1mpHn2C8bTyASoAUdxxvIQzYRCqXwObOhW0ae + +s72nFlMACy8wXhyKF5RiBZ7TTdUfspXB0Ax+MSOD4P6d2+SGDUhigbXQBpy8GgH + EF2gBHEh+C/DIShX7RHFvx4M413u8pW+tMnB0iGMQfRMjCGG2mTcLXg2WFa+zWDg + 6q1U6/4OAgwIE+n6qoIh7snmrASCPaJ5dgQVUHjhpkkd50BYdcbRlAvIBf2jVui9 + QsWoPoLBVwjJp8BUFp9DAoIBAQDr9yQBPfsQN6ek3/SJllaDpt8P5lA54wCVYTgt + 1wKfkSBorjses3r6oznAgFSo4BLwsqfAMnzXwIJL9HyXSxp9lLmt6Ak6oHNb2H3k + URf5GyUfXoBbZE9mi5qHifbqvtOJHaeK2ITE3Sq/DO6/4jZQtax+XpdoL8p5JQW1 + sQ26DfP1QKhXDChaz/wtfn0VuP6KAwgq9ZKS+q9F3kV0YZvhFDdiNNboj9ytJvNF + u8sVoWwC53mK+ozh82/D5cvxlS9ho2g5xGyvyhzNkDxi6aGMMEaJ1/mGgEs9FCtL + +nNW4kFGGy85u2MYHjUqE3pdB8GJ5lPTYXsO36B4ZZ8IBaJfAoIBAQDLCddCiLdA + sbasquuXK7y/T7L6TBMjTB+7R9z1ITzRol8BmmIk3JW4iY2QGDDun0p0dp49hGo0 + WiaIEQE0VwwVxlqFTfNvsX7gwmDs6Gw2JXqgHU5sHpgiWAohzIHHZAfg724osfcN + dUVs5NIJFi1ZTW6Ak5BjfIbBUpTX+GbtHviu8cXUjD05xBE8r02j48yPnmkrarDU + A3GucHd1/6E9QHyjYHOg6ba9Yp1JsFeCG0F/oxJwPLNMd0JUYRo7uWMTU3buehEv + sMJMMyvLW1GLKrfkB1xVqw/EjNLo/7i1oObeO7SQjJDf3DtLiEce5ScRGlILUtGS + pLRAmEqkV2SXAoIBAGr1tPlnKgX45GIFLmirn/2/R3+Ci70hm+MalYeZ3dOMyl8J + Ez1gaA9yq7wJr9Z487ztjsK9X//AgI+DfHJsFc70+pHNC1nq3z+zy6UR6Ub+uf4V + LSPAPYmjIGHt9OIFrAeMTKTQbqZ6BmVhrFuIY8yD/XOu1vzgJOxzDrqETk+XAY2b + SHNkzGoVux64JmURXTgcFbi7Zjx/q7GFBoCxuiH1swEuKHh0tbg7XqyuamkcqcRL + PrnzxqapXXE0GhUg5cBhfN4qnoW0nQfFKMpBUvwj6eWT48THJNPD77haB6xLlQD9 + U5Pc0BdfogO3npDK8jzbDgZUOp7MWYYZslPFkgsCggEAL2ge0LQnRX25D1vhIize + JzUuru5wUX+GsS24U6vtDW2CDVfErqKqeqnzWb+sPSsIMWU40VhHi+24rXB6/YON + mM/1dsaanmutGkGIbAhgq8vYc+Yj127VSr+PrhCYBLxAcq6049+ZtZS6HxDWUbTR + 5dYEhRTvU6tRs3XatwqSza67le1xqY0NBp3XAHpWAHxB2Q69s5t3qikbtAUif3Su + ayTRdTwiA2JOfq211+zKoeBHTMwAlCA4JRR7ckQx4dwJXAvS6x+pP59f3nbcNOEf + iwTwZtepIX+NcPEIlcqPkCj/fsgmAtIvSXWciqhJIteSZZXlrisqL7kxNRvZ4cFe + BQKCAQEA4J9kZpD9BtZ8xeqiu0Fno4mukk7eACHDxKfoBHe3KmBRBJD1ywoxgtks + iZnzJq/aS3/U/5L9iN7uc8ZR23jTV5ite7xDt1/jydXx4mm/GoAclwgL1A9Av8dt + y0kxm7BPycMAlpA45naVwDBD3TfgEIYYdP9a6L/ECHPX2BG8a6FtdW1g3NGTMIkU + 5q22fbzEKsxacURxMM/wBKBAFMrN/N1KHjl2qudiIEv7wm/qgJUjMrE0ViQ0Jb8b + p24rcfkBsN2h/A95oyX0bnlRL4LUSlQDcmfc2NWylXjWjnBYeRBzzkouYLsdTgHK + LnG2nPscWJpYbyj2sYzIdM1LgPOMIA== + -----END PRIVATE KEY----- + VerifyClient: false + +Resources: + - Name: tls-end-to-end-example.com + Kind: ncproxy.io/rule + Data: + Rules: + - Domain: tls-end-to-end-example.com + Network: All + Locations: + - Path: / + Target: + Key: test-web-tls.global.c + Port: 443 + # Use the client tls secret + Ssl: test-client + +Cargoes: + - Name: test-web-tls + # Use the server tls secret + Secrets: + - test-srv + Container: + Image: docker.io/nginx:alpine + Cmd: + - /bin/sh + - -c + - | + echo 'server { + listen 443 ssl; + ssl_certificate /opt/nanocl.io/secrets/test-srv.crt; + ssl_certificate_key /opt/nanocl.io/secrets/test-srv.key; + ssl_client_certificate /opt/nanocl.io/secrets/test-srv.ca; + root /usr/share/nginx/html; + index index.html; + }' > /etc/nginx/conf.d/default.conf; + echo "

Hello, World!

" > /usr/share/nginx/html/index.html; + nginx -g 'daemon off;' +``` + +--- + +## What’s Next? + +With the foundation laid in this release, we’re in a strong position to add advanced networking features like multi-node support and enhanced IP address binding. The unified network model paired with our TLS-based end-to-end encryption helps to secure network traffic without sacrificing scalability. + +Thank you for your continued support of Nanocl! As always, feel free to [join the discussion on GitHub](https://github.com/next-hat/nanocl) and stay tuned for more exciting updates. + +**Happy deploying!** + +_Nanocl Team_ + + diff --git a/blog/authors.yml b/blog/authors.yml index 702b03e..b536e15 100644 --- a/blog/authors.yml +++ b/blog/authors.yml @@ -1,5 +1,5 @@ leone: - name: Leo Vernisse + name: Leo Vernisse title: Core Team url: https://github.com/leon3s image_url: https://github.com/leon3s.png diff --git a/docs/guides/nanocl/overview.md b/docs/guides/nanocl/overview.md index b5eb68b..b8b6ea0 100644 --- a/docs/guides/nanocl/overview.md +++ b/docs/guides/nanocl/overview.md @@ -121,8 +121,8 @@ When you use Nanocl, you are creating and using namespaces, container images, vi #### Namespaces -A namespace contains a group of services (Cargoes, Vms) that will share the same network. -This is useful when you want to isolate a group of services from the rest of the cluster. +A namespace contains a group of services (Cargoes, Vms). +This is useful when you want to isolate a group of services. There is 2 namespaces by default: * ***global*** The default namespace that will be used if you don't specify a namespace. @@ -155,6 +155,6 @@ For example a CI/CD pipeline that will build your code and run the tests. A container is a runnable instance of an container image. You can create, start, stop, move, or delete a container using the Nanocl API or CLI when using jobs, cargoes or virtual machines. -By default, a container is relatively well isolated from other containers and its host machine. You can control how isolated a container's network, storage, or other underlying subsystems are from other containers or from the host machine. +By default, a container is relatively well isolated from other containers and its host machine. You can control how isolated a container's storage, or other underlying subsystems are from other containers or from the host machine. A container is defined by its image as well as any configuration options you provide to it when you create or start it. When a container is removed, any changes to its state that aren't stored in persistent storage disappear. diff --git a/docs/references/nanocl/cli/nanocl-inspect.md b/docs/references/nanocl/cli/nanocl-inspect.md new file mode 100644 index 0000000..642525c --- /dev/null +++ b/docs/references/nanocl/cli/nanocl-inspect.md @@ -0,0 +1,28 @@ +--- +title: Inspect +sidebar_position: 27 +--- + +# Inspect + +## SYNOPSIS + +**inspect** \[**--display**\] \[**-h**\|**--help**\] \<*KEY*\> + +## DESCRIPTION + +Inspect a process + +## OPTIONS + +**--display**=*DISPLAY* +Display format + + +\[*possible values: *yaml, toml, json\] + +**-h**, **--help** +Print help + +\<*KEY*\> +Key or Name of the object to inspect diff --git a/docs/references/nanocl/cli/nanocl-install.md b/docs/references/nanocl/cli/nanocl-install.md index 4cff951..86076e6 100644 --- a/docs/references/nanocl/cli/nanocl-install.md +++ b/docs/references/nanocl/cli/nanocl-install.md @@ -1,6 +1,6 @@ --- title: Install -sidebar_position: 27 +sidebar_position: 28 --- # Install diff --git a/docs/references/nanocl/cli/nanocl-job-inspect.md b/docs/references/nanocl/cli/nanocl-job-inspect.md index 00ccead..6f0e20c 100644 --- a/docs/references/nanocl/cli/nanocl-job-inspect.md +++ b/docs/references/nanocl/cli/nanocl-job-inspect.md @@ -1,6 +1,6 @@ --- title: Job inspect -sidebar_position: 29 +sidebar_position: 30 --- # Job inspect diff --git a/docs/references/nanocl/cli/nanocl-job-list.md b/docs/references/nanocl/cli/nanocl-job-list.md index d5c747c..0dec557 100644 --- a/docs/references/nanocl/cli/nanocl-job-list.md +++ b/docs/references/nanocl/cli/nanocl-job-list.md @@ -1,6 +1,6 @@ --- title: Job list -sidebar_position: 30 +sidebar_position: 31 --- # Job list diff --git a/docs/references/nanocl/cli/nanocl-job-logs.md b/docs/references/nanocl/cli/nanocl-job-logs.md index bef724b..be3da75 100644 --- a/docs/references/nanocl/cli/nanocl-job-logs.md +++ b/docs/references/nanocl/cli/nanocl-job-logs.md @@ -1,6 +1,6 @@ --- title: Job logs -sidebar_position: 31 +sidebar_position: 32 --- # Job logs diff --git a/docs/references/nanocl/cli/nanocl-job-remove.md b/docs/references/nanocl/cli/nanocl-job-remove.md index eb2b105..eaad172 100644 --- a/docs/references/nanocl/cli/nanocl-job-remove.md +++ b/docs/references/nanocl/cli/nanocl-job-remove.md @@ -1,6 +1,6 @@ --- title: Job remove -sidebar_position: 32 +sidebar_position: 33 --- # Job remove diff --git a/docs/references/nanocl/cli/nanocl-job-start.md b/docs/references/nanocl/cli/nanocl-job-start.md index 9dd2a44..d8d15af 100644 --- a/docs/references/nanocl/cli/nanocl-job-start.md +++ b/docs/references/nanocl/cli/nanocl-job-start.md @@ -1,6 +1,6 @@ --- title: Job start -sidebar_position: 33 +sidebar_position: 34 --- # Job start diff --git a/docs/references/nanocl/cli/nanocl-job-wait.md b/docs/references/nanocl/cli/nanocl-job-wait.md index 5c1c44e..941f029 100644 --- a/docs/references/nanocl/cli/nanocl-job-wait.md +++ b/docs/references/nanocl/cli/nanocl-job-wait.md @@ -1,6 +1,6 @@ --- title: Job wait -sidebar_position: 34 +sidebar_position: 35 --- # Job wait diff --git a/docs/references/nanocl/cli/nanocl-job.md b/docs/references/nanocl/cli/nanocl-job.md index 196b22c..9592a7f 100644 --- a/docs/references/nanocl/cli/nanocl-job.md +++ b/docs/references/nanocl/cli/nanocl-job.md @@ -1,6 +1,6 @@ --- title: Job -sidebar_position: 28 +sidebar_position: 29 --- # Job diff --git a/docs/references/nanocl/cli/nanocl-logs.md b/docs/references/nanocl/cli/nanocl-logs.md new file mode 100644 index 0000000..df1664d --- /dev/null +++ b/docs/references/nanocl/cli/nanocl-logs.md @@ -0,0 +1,38 @@ +--- +title: Logs +sidebar_position: 36 +--- + +# Logs + +## SYNOPSIS + +**logs** \[**-s **\] \[**-u **\] \[**-t **\] \[**--timestamps**\] \[**-f +**\] \[**-h**\|**--help**\] \<*NAME*\> + +## DESCRIPTION + +Get logs of a process + +## OPTIONS + +**-s**=*SINCE* +Only include logs since unix timestamp + +**-u**=*UNTIL* +Only include logs until unix timestamp + +**-t**=*TAIL* +If integer only return last n logs, if "all" returns all logs + +**--timestamps** +Bool, if set include timestamp to ever log line + +**-f** +Bool, if set open the log as stream + +**-h**, **--help** +Print help + +\<*NAME*\> +Name of process to show logs diff --git a/docs/references/nanocl/cli/nanocl-metric-inspect.md b/docs/references/nanocl/cli/nanocl-metric-inspect.md index 8db8f2a..6191f79 100644 --- a/docs/references/nanocl/cli/nanocl-metric-inspect.md +++ b/docs/references/nanocl/cli/nanocl-metric-inspect.md @@ -1,6 +1,6 @@ --- title: Metric inspect -sidebar_position: 36 +sidebar_position: 38 --- # Metric inspect diff --git a/docs/references/nanocl/cli/nanocl-metric-list.md b/docs/references/nanocl/cli/nanocl-metric-list.md index 88a2c7a..b849f35 100644 --- a/docs/references/nanocl/cli/nanocl-metric-list.md +++ b/docs/references/nanocl/cli/nanocl-metric-list.md @@ -1,6 +1,6 @@ --- title: Metric list -sidebar_position: 37 +sidebar_position: 39 --- # Metric list diff --git a/docs/references/nanocl/cli/nanocl-metric.md b/docs/references/nanocl/cli/nanocl-metric.md index a06fd9e..ab0e498 100644 --- a/docs/references/nanocl/cli/nanocl-metric.md +++ b/docs/references/nanocl/cli/nanocl-metric.md @@ -1,6 +1,6 @@ --- title: Metric -sidebar_position: 35 +sidebar_position: 37 --- # Metric diff --git a/docs/references/nanocl/cli/nanocl-namespace-create.md b/docs/references/nanocl/cli/nanocl-namespace-create.md index 6675067..f99c998 100644 --- a/docs/references/nanocl/cli/nanocl-namespace-create.md +++ b/docs/references/nanocl/cli/nanocl-namespace-create.md @@ -1,6 +1,6 @@ --- title: Namespace create -sidebar_position: 39 +sidebar_position: 41 --- # Namespace create diff --git a/docs/references/nanocl/cli/nanocl-namespace-inspect.md b/docs/references/nanocl/cli/nanocl-namespace-inspect.md index 8fb4b49..e2577f9 100644 --- a/docs/references/nanocl/cli/nanocl-namespace-inspect.md +++ b/docs/references/nanocl/cli/nanocl-namespace-inspect.md @@ -1,6 +1,6 @@ --- title: Namespace inspect -sidebar_position: 40 +sidebar_position: 42 --- # Namespace inspect diff --git a/docs/references/nanocl/cli/nanocl-namespace-list.md b/docs/references/nanocl/cli/nanocl-namespace-list.md index 45448a1..30a7e4f 100644 --- a/docs/references/nanocl/cli/nanocl-namespace-list.md +++ b/docs/references/nanocl/cli/nanocl-namespace-list.md @@ -1,6 +1,6 @@ --- title: Namespace list -sidebar_position: 41 +sidebar_position: 43 --- # Namespace list diff --git a/docs/references/nanocl/cli/nanocl-namespace-remove.md b/docs/references/nanocl/cli/nanocl-namespace-remove.md index 311e8ca..6fa77f8 100644 --- a/docs/references/nanocl/cli/nanocl-namespace-remove.md +++ b/docs/references/nanocl/cli/nanocl-namespace-remove.md @@ -1,6 +1,6 @@ --- title: Namespace remove -sidebar_position: 42 +sidebar_position: 44 --- # Namespace remove diff --git a/docs/references/nanocl/cli/nanocl-namespace.md b/docs/references/nanocl/cli/nanocl-namespace.md index a5e683e..52e03c3 100644 --- a/docs/references/nanocl/cli/nanocl-namespace.md +++ b/docs/references/nanocl/cli/nanocl-namespace.md @@ -1,6 +1,6 @@ --- title: Namespace -sidebar_position: 38 +sidebar_position: 40 --- # Namespace diff --git a/docs/references/nanocl/cli/nanocl-node-list.md b/docs/references/nanocl/cli/nanocl-node-list.md index b6209fe..104edbd 100644 --- a/docs/references/nanocl/cli/nanocl-node-list.md +++ b/docs/references/nanocl/cli/nanocl-node-list.md @@ -1,6 +1,6 @@ --- title: Node list -sidebar_position: 44 +sidebar_position: 46 --- # Node list diff --git a/docs/references/nanocl/cli/nanocl-node.md b/docs/references/nanocl/cli/nanocl-node.md index 5b430f8..3972092 100644 --- a/docs/references/nanocl/cli/nanocl-node.md +++ b/docs/references/nanocl/cli/nanocl-node.md @@ -1,6 +1,6 @@ --- title: Node -sidebar_position: 43 +sidebar_position: 45 --- # Node diff --git a/docs/references/nanocl/cli/nanocl-ps.md b/docs/references/nanocl/cli/nanocl-ps.md index 8f268ca..63a0beb 100644 --- a/docs/references/nanocl/cli/nanocl-ps.md +++ b/docs/references/nanocl/cli/nanocl-ps.md @@ -1,6 +1,6 @@ --- title: Ps -sidebar_position: 45 +sidebar_position: 47 --- # Ps diff --git a/docs/references/nanocl/cli/nanocl-resource-history.md b/docs/references/nanocl/cli/nanocl-resource-history.md index a8ed004..2845e76 100644 --- a/docs/references/nanocl/cli/nanocl-resource-history.md +++ b/docs/references/nanocl/cli/nanocl-resource-history.md @@ -1,6 +1,6 @@ --- title: Resource history -sidebar_position: 47 +sidebar_position: 49 --- # Resource history diff --git a/docs/references/nanocl/cli/nanocl-resource-inspect.md b/docs/references/nanocl/cli/nanocl-resource-inspect.md index 2b136b4..0a4f89d 100644 --- a/docs/references/nanocl/cli/nanocl-resource-inspect.md +++ b/docs/references/nanocl/cli/nanocl-resource-inspect.md @@ -1,6 +1,6 @@ --- title: Resource inspect -sidebar_position: 48 +sidebar_position: 50 --- # Resource inspect diff --git a/docs/references/nanocl/cli/nanocl-resource-list.md b/docs/references/nanocl/cli/nanocl-resource-list.md index ff3f6c5..967fe09 100644 --- a/docs/references/nanocl/cli/nanocl-resource-list.md +++ b/docs/references/nanocl/cli/nanocl-resource-list.md @@ -1,6 +1,6 @@ --- title: Resource list -sidebar_position: 49 +sidebar_position: 51 --- # Resource list diff --git a/docs/references/nanocl/cli/nanocl-resource-remove.md b/docs/references/nanocl/cli/nanocl-resource-remove.md index b0bb2b1..706ec7e 100644 --- a/docs/references/nanocl/cli/nanocl-resource-remove.md +++ b/docs/references/nanocl/cli/nanocl-resource-remove.md @@ -1,6 +1,6 @@ --- title: Resource remove -sidebar_position: 50 +sidebar_position: 52 --- # Resource remove diff --git a/docs/references/nanocl/cli/nanocl-resource-revert.md b/docs/references/nanocl/cli/nanocl-resource-revert.md index 8289207..185750c 100644 --- a/docs/references/nanocl/cli/nanocl-resource-revert.md +++ b/docs/references/nanocl/cli/nanocl-resource-revert.md @@ -1,6 +1,6 @@ --- title: Resource revert -sidebar_position: 51 +sidebar_position: 53 --- # Resource revert diff --git a/docs/references/nanocl/cli/nanocl-resource.md b/docs/references/nanocl/cli/nanocl-resource.md index 8e4b48c..b0fd9eb 100644 --- a/docs/references/nanocl/cli/nanocl-resource.md +++ b/docs/references/nanocl/cli/nanocl-resource.md @@ -1,6 +1,6 @@ --- title: Resource -sidebar_position: 46 +sidebar_position: 48 --- # Resource diff --git a/docs/references/nanocl/cli/nanocl-secret-create-container-registry.md b/docs/references/nanocl/cli/nanocl-secret-create-container-registry.md index 5e9c06b..bfd97bb 100644 --- a/docs/references/nanocl/cli/nanocl-secret-create-container-registry.md +++ b/docs/references/nanocl/cli/nanocl-secret-create-container-registry.md @@ -1,6 +1,6 @@ --- title: Secret create container registry -sidebar_position: 54 +sidebar_position: 56 --- # Secret create container registry diff --git a/docs/references/nanocl/cli/nanocl-secret-create-env.md b/docs/references/nanocl/cli/nanocl-secret-create-env.md index f1533c1..5057160 100644 --- a/docs/references/nanocl/cli/nanocl-secret-create-env.md +++ b/docs/references/nanocl/cli/nanocl-secret-create-env.md @@ -1,6 +1,6 @@ --- title: Secret create env -sidebar_position: 55 +sidebar_position: 57 --- # Secret create env diff --git a/docs/references/nanocl/cli/nanocl-secret-create-tls.md b/docs/references/nanocl/cli/nanocl-secret-create-tls.md index c24476c..89bec7b 100644 --- a/docs/references/nanocl/cli/nanocl-secret-create-tls.md +++ b/docs/references/nanocl/cli/nanocl-secret-create-tls.md @@ -1,15 +1,16 @@ --- title: Secret create tls -sidebar_position: 56 +sidebar_position: 58 --- # Secret create tls ## SYNOPSIS -**tls** \<**--certificate**\> \<**--certificate-key**\> -\[**--certificate-client**\] \[**--dhparam**\] \[**--verify-client**\] -\[**-h**\|**--help**\] +**tls** \[**--certificate**\] \[**--certificate-path**\] +\[**--certificate-key**\] \[**--certificate-key-path**\] +\[**--certificate-client**\] \[**--certificate-client-path**\] +\[**--dhparam**\] \[**--verify-client**\] \[**-h**\|**--help**\] ## DESCRIPTION @@ -20,12 +21,21 @@ Create a new nanocl.io/tls secret **--certificate**=*CERTIFICATE* Certificate +**--certificate-path**=*CERTIFICATE_PATH* +Certificate path to read from a file + **--certificate-key**=*CERTIFICATE_KEY* Certificate key +**--certificate-key-path**=*CERTIFICATE_KEY_PATH* +Certificate key path to read from a file + **--certificate-client**=*CERTIFICATE_CLIENT* Client certificate +**--certificate-client-path**=*CERTIFICATE_CLIENT_PATH* +Client certificate path to read from a file + **--dhparam**=*DHPARAM* DHParam diff --git a/docs/references/nanocl/cli/nanocl-secret-create.md b/docs/references/nanocl/cli/nanocl-secret-create.md index 98da105..7a2b472 100644 --- a/docs/references/nanocl/cli/nanocl-secret-create.md +++ b/docs/references/nanocl/cli/nanocl-secret-create.md @@ -1,6 +1,6 @@ --- title: Secret create -sidebar_position: 53 +sidebar_position: 55 --- # Secret create diff --git a/docs/references/nanocl/cli/nanocl-secret-inspect.md b/docs/references/nanocl/cli/nanocl-secret-inspect.md index 8de2248..c9c3cc9 100644 --- a/docs/references/nanocl/cli/nanocl-secret-inspect.md +++ b/docs/references/nanocl/cli/nanocl-secret-inspect.md @@ -1,6 +1,6 @@ --- title: Secret inspect -sidebar_position: 57 +sidebar_position: 59 --- # Secret inspect diff --git a/docs/references/nanocl/cli/nanocl-secret-list.md b/docs/references/nanocl/cli/nanocl-secret-list.md index 737bd17..947cf36 100644 --- a/docs/references/nanocl/cli/nanocl-secret-list.md +++ b/docs/references/nanocl/cli/nanocl-secret-list.md @@ -1,6 +1,6 @@ --- title: Secret list -sidebar_position: 58 +sidebar_position: 60 --- # Secret list diff --git a/docs/references/nanocl/cli/nanocl-secret-remove.md b/docs/references/nanocl/cli/nanocl-secret-remove.md index a812fa3..269a03e 100644 --- a/docs/references/nanocl/cli/nanocl-secret-remove.md +++ b/docs/references/nanocl/cli/nanocl-secret-remove.md @@ -1,6 +1,6 @@ --- title: Secret remove -sidebar_position: 59 +sidebar_position: 61 --- # Secret remove diff --git a/docs/references/nanocl/cli/nanocl-secret.md b/docs/references/nanocl/cli/nanocl-secret.md index 97b36a1..f1cafb2 100644 --- a/docs/references/nanocl/cli/nanocl-secret.md +++ b/docs/references/nanocl/cli/nanocl-secret.md @@ -1,6 +1,6 @@ --- title: Secret -sidebar_position: 52 +sidebar_position: 54 --- # Secret diff --git a/docs/references/nanocl/cli/nanocl-state-apply.md b/docs/references/nanocl/cli/nanocl-state-apply.md index 0520086..8e80512 100644 --- a/docs/references/nanocl/cli/nanocl-state-apply.md +++ b/docs/references/nanocl/cli/nanocl-state-apply.md @@ -1,6 +1,6 @@ --- title: State apply -sidebar_position: 61 +sidebar_position: 63 --- # State apply diff --git a/docs/references/nanocl/cli/nanocl-state-logs.md b/docs/references/nanocl/cli/nanocl-state-logs.md index 56a17ee..8776c56 100644 --- a/docs/references/nanocl/cli/nanocl-state-logs.md +++ b/docs/references/nanocl/cli/nanocl-state-logs.md @@ -1,6 +1,6 @@ --- title: State logs -sidebar_position: 62 +sidebar_position: 64 --- # State logs diff --git a/docs/references/nanocl/cli/nanocl-state-remove.md b/docs/references/nanocl/cli/nanocl-state-remove.md index f474c50..b55150d 100644 --- a/docs/references/nanocl/cli/nanocl-state-remove.md +++ b/docs/references/nanocl/cli/nanocl-state-remove.md @@ -1,6 +1,6 @@ --- title: State remove -sidebar_position: 63 +sidebar_position: 65 --- # State remove diff --git a/docs/references/nanocl/cli/nanocl-state.md b/docs/references/nanocl/cli/nanocl-state.md index 2694573..d6a54cc 100644 --- a/docs/references/nanocl/cli/nanocl-state.md +++ b/docs/references/nanocl/cli/nanocl-state.md @@ -1,6 +1,6 @@ --- title: State -sidebar_position: 60 +sidebar_position: 62 --- # State diff --git a/docs/references/nanocl/cli/nanocl-uninstall.md b/docs/references/nanocl/cli/nanocl-uninstall.md index 8a94932..a59c999 100644 --- a/docs/references/nanocl/cli/nanocl-uninstall.md +++ b/docs/references/nanocl/cli/nanocl-uninstall.md @@ -1,6 +1,6 @@ --- title: Uninstall -sidebar_position: 64 +sidebar_position: 66 --- # Uninstall diff --git a/docs/references/nanocl/cli/nanocl-version.md b/docs/references/nanocl/cli/nanocl-version.md index 80afdb1..779262e 100644 --- a/docs/references/nanocl/cli/nanocl-version.md +++ b/docs/references/nanocl/cli/nanocl-version.md @@ -1,6 +1,6 @@ --- title: Version -sidebar_position: 65 +sidebar_position: 67 --- # Version diff --git a/docs/references/nanocl/cli/nanocl-vm-attach.md b/docs/references/nanocl/cli/nanocl-vm-attach.md index 73353ab..59c8d61 100644 --- a/docs/references/nanocl/cli/nanocl-vm-attach.md +++ b/docs/references/nanocl/cli/nanocl-vm-attach.md @@ -1,6 +1,6 @@ --- title: Vm attach -sidebar_position: 67 +sidebar_position: 69 --- # Vm attach diff --git a/docs/references/nanocl/cli/nanocl-vm-create.md b/docs/references/nanocl/cli/nanocl-vm-create.md index 469156e..87266f9 100644 --- a/docs/references/nanocl/cli/nanocl-vm-create.md +++ b/docs/references/nanocl/cli/nanocl-vm-create.md @@ -1,6 +1,6 @@ --- title: Vm create -sidebar_position: 68 +sidebar_position: 70 --- # Vm create diff --git a/docs/references/nanocl/cli/nanocl-vm-image-clone.md b/docs/references/nanocl/cli/nanocl-vm-image-clone.md index 0c23e10..e6491b1 100644 --- a/docs/references/nanocl/cli/nanocl-vm-image-clone.md +++ b/docs/references/nanocl/cli/nanocl-vm-image-clone.md @@ -1,6 +1,6 @@ --- title: Vm image clone -sidebar_position: 70 +sidebar_position: 72 --- # Vm image clone diff --git a/docs/references/nanocl/cli/nanocl-vm-image-create.md b/docs/references/nanocl/cli/nanocl-vm-image-create.md index 02e70fc..9a0af1b 100644 --- a/docs/references/nanocl/cli/nanocl-vm-image-create.md +++ b/docs/references/nanocl/cli/nanocl-vm-image-create.md @@ -1,6 +1,6 @@ --- title: Vm image create -sidebar_position: 71 +sidebar_position: 73 --- # Vm image create diff --git a/docs/references/nanocl/cli/nanocl-vm-image-list.md b/docs/references/nanocl/cli/nanocl-vm-image-list.md index 67b6023..796acfc 100644 --- a/docs/references/nanocl/cli/nanocl-vm-image-list.md +++ b/docs/references/nanocl/cli/nanocl-vm-image-list.md @@ -1,6 +1,6 @@ --- title: Vm image list -sidebar_position: 72 +sidebar_position: 74 --- # Vm image list diff --git a/docs/references/nanocl/cli/nanocl-vm-image-remove.md b/docs/references/nanocl/cli/nanocl-vm-image-remove.md index 22c632f..05a2040 100644 --- a/docs/references/nanocl/cli/nanocl-vm-image-remove.md +++ b/docs/references/nanocl/cli/nanocl-vm-image-remove.md @@ -1,6 +1,6 @@ --- title: Vm image remove -sidebar_position: 73 +sidebar_position: 75 --- # Vm image remove diff --git a/docs/references/nanocl/cli/nanocl-vm-image-resize.md b/docs/references/nanocl/cli/nanocl-vm-image-resize.md index 7beb985..1da0f65 100644 --- a/docs/references/nanocl/cli/nanocl-vm-image-resize.md +++ b/docs/references/nanocl/cli/nanocl-vm-image-resize.md @@ -1,6 +1,6 @@ --- title: Vm image resize -sidebar_position: 74 +sidebar_position: 76 --- # Vm image resize diff --git a/docs/references/nanocl/cli/nanocl-vm-image.md b/docs/references/nanocl/cli/nanocl-vm-image.md index c5f6151..a4cbe45 100644 --- a/docs/references/nanocl/cli/nanocl-vm-image.md +++ b/docs/references/nanocl/cli/nanocl-vm-image.md @@ -1,6 +1,6 @@ --- title: Vm image -sidebar_position: 69 +sidebar_position: 71 --- # Vm image diff --git a/docs/references/nanocl/cli/nanocl-vm-inspect.md b/docs/references/nanocl/cli/nanocl-vm-inspect.md index aee3e64..f3e7ae6 100644 --- a/docs/references/nanocl/cli/nanocl-vm-inspect.md +++ b/docs/references/nanocl/cli/nanocl-vm-inspect.md @@ -1,6 +1,6 @@ --- title: Vm inspect -sidebar_position: 75 +sidebar_position: 77 --- # Vm inspect diff --git a/docs/references/nanocl/cli/nanocl-vm-list.md b/docs/references/nanocl/cli/nanocl-vm-list.md index 2def3c6..7d894a1 100644 --- a/docs/references/nanocl/cli/nanocl-vm-list.md +++ b/docs/references/nanocl/cli/nanocl-vm-list.md @@ -1,6 +1,6 @@ --- title: Vm list -sidebar_position: 76 +sidebar_position: 78 --- # Vm list diff --git a/docs/references/nanocl/cli/nanocl-vm-patch.md b/docs/references/nanocl/cli/nanocl-vm-patch.md index 7a1d1ad..2397c84 100644 --- a/docs/references/nanocl/cli/nanocl-vm-patch.md +++ b/docs/references/nanocl/cli/nanocl-vm-patch.md @@ -1,6 +1,6 @@ --- title: Vm patch -sidebar_position: 77 +sidebar_position: 79 --- # Vm patch diff --git a/docs/references/nanocl/cli/nanocl-vm-remove.md b/docs/references/nanocl/cli/nanocl-vm-remove.md index 3775dc0..60ea6a6 100644 --- a/docs/references/nanocl/cli/nanocl-vm-remove.md +++ b/docs/references/nanocl/cli/nanocl-vm-remove.md @@ -1,6 +1,6 @@ --- title: Vm remove -sidebar_position: 78 +sidebar_position: 80 --- # Vm remove diff --git a/docs/references/nanocl/cli/nanocl-vm-run.md b/docs/references/nanocl/cli/nanocl-vm-run.md index c3db6f4..369149f 100644 --- a/docs/references/nanocl/cli/nanocl-vm-run.md +++ b/docs/references/nanocl/cli/nanocl-vm-run.md @@ -1,6 +1,6 @@ --- title: Vm run -sidebar_position: 79 +sidebar_position: 81 --- # Vm run diff --git a/docs/references/nanocl/cli/nanocl-vm-start.md b/docs/references/nanocl/cli/nanocl-vm-start.md index d94965f..ea12dfa 100644 --- a/docs/references/nanocl/cli/nanocl-vm-start.md +++ b/docs/references/nanocl/cli/nanocl-vm-start.md @@ -1,6 +1,6 @@ --- title: Vm start -sidebar_position: 80 +sidebar_position: 82 --- # Vm start diff --git a/docs/references/nanocl/cli/nanocl-vm-stop.md b/docs/references/nanocl/cli/nanocl-vm-stop.md index 310013b..4525864 100644 --- a/docs/references/nanocl/cli/nanocl-vm-stop.md +++ b/docs/references/nanocl/cli/nanocl-vm-stop.md @@ -1,6 +1,6 @@ --- title: Vm stop -sidebar_position: 81 +sidebar_position: 83 --- # Vm stop diff --git a/docs/references/nanocl/cli/nanocl-vm.md b/docs/references/nanocl/cli/nanocl-vm.md index b451df4..6f4b073 100644 --- a/docs/references/nanocl/cli/nanocl-vm.md +++ b/docs/references/nanocl/cli/nanocl-vm.md @@ -1,6 +1,6 @@ --- title: Vm -sidebar_position: 66 +sidebar_position: 68 --- # Vm diff --git a/docs/references/nanocl/cli/nanocl.md b/docs/references/nanocl/cli/nanocl.md index 6394b23..5d42844 100644 --- a/docs/references/nanocl/cli/nanocl.md +++ b/docs/references/nanocl/cli/nanocl.md @@ -63,6 +63,12 @@ Show or watch events nanocl-ps(1) Show processes +nanocl-logs(1) +Get logs of a process + +nanocl-inspect(1) +Inspect a process + nanocl-info(1) Show nanocl host information @@ -83,4 +89,4 @@ Print this message or the help of the given subcommand(s) # VERSION -v0.15.0 +v0.16.0 diff --git a/docs/references/nanocl/cli/readme.md b/docs/references/nanocl/cli/readme.md new file mode 100644 index 0000000..ee2c115 --- /dev/null +++ b/docs/references/nanocl/cli/readme.md @@ -0,0 +1,92 @@ +# Man Page + +This is a collection of man pages for the projects in this repository. +It's only include man for the `nanocl` binary. +It is generated using `pandoc`. +With `scripts/generate_man.sh` script. + +## Summary + +* [nanocl-backup.md](./nanocl-backup.md) +* [nanocl-cargo-create.md](./nanocl-cargo-create.md) +* [nanocl-cargo-exec.md](./nanocl-cargo-exec.md) +* [nanocl-cargo-history.md](./nanocl-cargo-history.md) +* [nanocl-cargo-inspect.md](./nanocl-cargo-inspect.md) +* [nanocl-cargo-list.md](./nanocl-cargo-list.md) +* [nanocl-cargo-logs.md](./nanocl-cargo-logs.md) +* [nanocl-cargo.md](./nanocl-cargo.md) +* [nanocl-cargo-patch.md](./nanocl-cargo-patch.md) +* [nanocl-cargo-remove.md](./nanocl-cargo-remove.md) +* [nanocl-cargo-restart.md](./nanocl-cargo-restart.md) +* [nanocl-cargo-revert.md](./nanocl-cargo-revert.md) +* [nanocl-cargo-run.md](./nanocl-cargo-run.md) +* [nanocl-cargo-start.md](./nanocl-cargo-start.md) +* [nanocl-cargo-stats.md](./nanocl-cargo-stats.md) +* [nanocl-cargo-stop.md](./nanocl-cargo-stop.md) +* [nanocl-context-from.md](./nanocl-context-from.md) +* [nanocl-context-list.md](./nanocl-context-list.md) +* [nanocl-context.md](./nanocl-context.md) +* [nanocl-context-use.md](./nanocl-context-use.md) +* [nanocl-event-inspect.md](./nanocl-event-inspect.md) +* [nanocl-event-list.md](./nanocl-event-list.md) +* [nanocl-event.md](./nanocl-event.md) +* [nanocl-event-watch.md](./nanocl-event-watch.md) +* [nanocl-info.md](./nanocl-info.md) +* [nanocl-inspect.md](./nanocl-inspect.md) +* [nanocl-install.md](./nanocl-install.md) +* [nanocl-job-inspect.md](./nanocl-job-inspect.md) +* [nanocl-job-list.md](./nanocl-job-list.md) +* [nanocl-job-logs.md](./nanocl-job-logs.md) +* [nanocl-job.md](./nanocl-job.md) +* [nanocl-job-remove.md](./nanocl-job-remove.md) +* [nanocl-job-start.md](./nanocl-job-start.md) +* [nanocl-job-wait.md](./nanocl-job-wait.md) +* [nanocl-logs.md](./nanocl-logs.md) +* [nanocl.md](./nanocl.md) +* [nanocl-metric-inspect.md](./nanocl-metric-inspect.md) +* [nanocl-metric-list.md](./nanocl-metric-list.md) +* [nanocl-metric.md](./nanocl-metric.md) +* [nanocl-namespace-create.md](./nanocl-namespace-create.md) +* [nanocl-namespace-inspect.md](./nanocl-namespace-inspect.md) +* [nanocl-namespace-list.md](./nanocl-namespace-list.md) +* [nanocl-namespace.md](./nanocl-namespace.md) +* [nanocl-namespace-remove.md](./nanocl-namespace-remove.md) +* [nanocl-node-list.md](./nanocl-node-list.md) +* [nanocl-node.md](./nanocl-node.md) +* [nanocl-ps.md](./nanocl-ps.md) +* [nanocl-resource-history.md](./nanocl-resource-history.md) +* [nanocl-resource-inspect.md](./nanocl-resource-inspect.md) +* [nanocl-resource-list.md](./nanocl-resource-list.md) +* [nanocl-resource.md](./nanocl-resource.md) +* [nanocl-resource-remove.md](./nanocl-resource-remove.md) +* [nanocl-resource-revert.md](./nanocl-resource-revert.md) +* [nanocl-secret-create-container-registry.md](./nanocl-secret-create-container-registry.md) +* [nanocl-secret-create-env.md](./nanocl-secret-create-env.md) +* [nanocl-secret-create.md](./nanocl-secret-create.md) +* [nanocl-secret-create-tls.md](./nanocl-secret-create-tls.md) +* [nanocl-secret-inspect.md](./nanocl-secret-inspect.md) +* [nanocl-secret-list.md](./nanocl-secret-list.md) +* [nanocl-secret.md](./nanocl-secret.md) +* [nanocl-secret-remove.md](./nanocl-secret-remove.md) +* [nanocl-state-apply.md](./nanocl-state-apply.md) +* [nanocl-state-logs.md](./nanocl-state-logs.md) +* [nanocl-state.md](./nanocl-state.md) +* [nanocl-state-remove.md](./nanocl-state-remove.md) +* [nanocl-uninstall.md](./nanocl-uninstall.md) +* [nanocl-version.md](./nanocl-version.md) +* [nanocl-vm-attach.md](./nanocl-vm-attach.md) +* [nanocl-vm-create.md](./nanocl-vm-create.md) +* [nanocl-vm-image-clone.md](./nanocl-vm-image-clone.md) +* [nanocl-vm-image-create.md](./nanocl-vm-image-create.md) +* [nanocl-vm-image-list.md](./nanocl-vm-image-list.md) +* [nanocl-vm-image.md](./nanocl-vm-image.md) +* [nanocl-vm-image-remove.md](./nanocl-vm-image-remove.md) +* [nanocl-vm-image-resize.md](./nanocl-vm-image-resize.md) +* [nanocl-vm-inspect.md](./nanocl-vm-inspect.md) +* [nanocl-vm-list.md](./nanocl-vm-list.md) +* [nanocl-vm.md](./nanocl-vm.md) +* [nanocl-vm-patch.md](./nanocl-vm-patch.md) +* [nanocl-vm-remove.md](./nanocl-vm-remove.md) +* [nanocl-vm-run.md](./nanocl-vm-run.md) +* [nanocl-vm-start.md](./nanocl-vm-start.md) +* [nanocl-vm-stop.md](./nanocl-vm-stop.md) diff --git a/docs/references/nanocl/objects/resource.md b/docs/references/nanocl/objects/resource.md index 911cc10..2918613 100644 --- a/docs/references/nanocl/objects/resource.md +++ b/docs/references/nanocl/objects/resource.md @@ -33,10 +33,10 @@ There is the openapi specification to create a proxy `ProxyRule`: | Network | Usage | | ----------- | ----------- | -| Internal | Bind only on 127.0.0.1 | +| All | Bind on all network addresses | +| Local | Bind only on 127.0.0.1 | | Public | Bind only on public ip address | -| All | Bind on all interfaces | -| \{namespace_name\}.nsp | Bind on namespace gateway | +| Internal | Bind on internal nanocl gateway | ## Dns Rule diff --git a/docs/samples/databases/_category_.yml b/docs/samples/databases/_category_.yml deleted file mode 100644 index e6724bb..0000000 --- a/docs/samples/databases/_category_.yml +++ /dev/null @@ -1,2 +0,0 @@ -label: 'Database' -position: 1 \ No newline at end of file diff --git a/docs/samples/databases/mariadb.md b/docs/samples/databases/mariadb.md deleted file mode 100644 index 827afd4..0000000 --- a/docs/samples/databases/mariadb.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: MariaDB - Nanocl -sidebar_label: MariaDB -image: /img/logo.webp -description: Easily deploy a MariaDB instance with Nanocl ! -keywords: [documentation, samples, examples, MariaDB, nanocl, nanocl CLI, CLI] -pagination_next: samples/webapps/adminer -pagination_prev: null ---- - -import StatefileBlock from '@site/src/components/statefile_block'; - -# Mariadb - -[MariaDB][mariadb] is one of the most popular open source relational databases.
-It's made by the original developers of MySQL and guaranteed to stay open source.
-Below you can find a basic example to deploy a [mariadb][mariadb] server using their official [docker image][docker image]: - - - -Copy past the previous content and save it under a file called `mariadb.yml`.
-Then execute the following command to startup a [mariadb][mariadb] server: - -```sh -nanocl state apply -s mariadb.yml -- --password my_root_password --volume /opt/mariadb -``` - -:::tip -Other cargo created in the same namespace **global** will be able to connect to the mariadb using is key **mariadb.global.c** -The key can be predicted and caculated, it's formated this way: **cargo_name.namespace_name.c|v** **c** for container and **v** for virtual machine. -This allow us to have the same name for virtual machine and containers. -::: - -[mariadb]: https://mariadb.org -[docker image]: https://hub.docker.com/_/mariadb diff --git a/docs/samples/databases/mongodb.md b/docs/samples/databases/mongodb.md deleted file mode 100644 index 6b92364..0000000 --- a/docs/samples/databases/mongodb.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: MongoDB - Nanocl -sidebar_label: MongoDB -image: /img/logo.webp -description: Easily deploy a MongoDB instance with Nanocl ! -keywords: [documentation, samples, examples, MongoDB, nanocl, nanocl CLI, CLI] -pagination_next: samples/webapps/mongo-express -pagination_prev: null ---- - -import StatefileBlock from '@site/src/components/statefile_block'; - -# Mongodb - -[MongoDB][mongodb] is a popular document database.
-Below you can find a basic example to deploy a [mongodb][mongodb] server using their official [docker image][docker image]: - - - -Copy past the previous content and save it under a file called `mongodb.yml`.
-Then execute the following command to startup a [mongodb](mongodb) server: - -```sh -nanocl state apply -s mongodb.yml -- --password my_root_password --volume /opt/mongodb -``` - -:::tip -Other cargo created in the same namespace **global** will be able to connect to the mongodb using is key **mongodb.global.c** -The key can be predicted and caculated, it's formated this way: **cargo_name.namespace_name.c|v** **c** stand for container and **v** for virtual machine. -This allow us to have the same name for virtual machine and containers. -::: - -[mongodb]: https://www.mongodb.com -[docker image]: https://hub.docker.com/_/mongo \ No newline at end of file diff --git a/docs/samples/databases/mysql.md b/docs/samples/databases/mysql.md deleted file mode 100644 index 45140ad..0000000 --- a/docs/samples/databases/mysql.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: Mysql - Nanocl -sidebar_label: Mysql -image: /img/logo.webp -description: Easily deploy a Mysql instance with Nanocl ! -keywords: [documentation, samples, examples, Mysql, nanocl, nanocl CLI, CLI] -pagination_next: samples/webapps/adminer -pagination_prev: null ---- - -import StatefileBlock from '@site/src/components/statefile_block'; - -# Mysql - -[MySQL][mysql] is a relational database management system (RDBMS) developed by Oracle that is based on structured query language (SQL).
-Below you can find a basic example to deploy a [mysql][mysql] server using their official [docker image][docker image]: - - - -Copy past the previous content and save it under a file called `mysql.yml`.
-Then execute the following command to startup a [mysql][mysql] server: - -```sh -nanocl state apply -s mysql.yml -- --password my_root_password --volume /opt/mysql -``` - -:::tip -Other cargo created in the same namespace **global** will be able to connect to the mysql using is key **mysql.global.c** -The key can be predicted and caculated, it's formated this way: **cargo_name.namespace_name.c|v** **c** for container or **v** for virtual machine. -This allow us to have the same name for virtual machine and containers. -::: - -[mysql]: https://www.mysql.com/ -[docker image]: https://hub.docker.com/_/mysql diff --git a/docs/samples/databases/postgresql.md b/docs/samples/databases/postgresql.md deleted file mode 100644 index 53b2282..0000000 --- a/docs/samples/databases/postgresql.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: Postgresql - Nanocl -sidebar_label: Postgresql -image: /img/logo.webp -description: Easily deploy a Postgresql instance with Nanocl ! -keywords: [documentation, samples, examples, Postgresql, nanocl, nanocl CLI, CLI] -pagination_next: samples/webapps/adminer -pagination_prev: null ---- - -import StatefileBlock from '@site/src/components/statefile_block'; - -# Postgresql - -[PostgreSQL][postgresql] is a powerful, open source object-relational database system with over 35 years of active development.
-Below you can find a basic example to deploy a [postgresql][postgresql] server using their official [docker image][docker image]: - - - -Copy past the previous content and save it under a file called `postgresql.yml`.
-Then execute the following command to startup a `postgresql` server: - -```sh -nanocl state apply -s postgresql.yml -- --password my_root_password --volume /opt/postgresql -``` - -:::tip -Other cargo created in the same namespace **global** will be able to connect to the postgresql using is key **postgresql.global.c** -The key can be predicted and caculated, it's formated this way: **cargo_name.namespace_name.c|v** **c** for container or **v** for virtual machine. -This allow us to have the same name for virtual machine and containers. -::: - -[postgresql]: https://www.postgresql.org/ -[docker image]: https://hub.docker.com/_/postgres diff --git a/docs/samples/databases/redis.md b/docs/samples/databases/redis.md deleted file mode 100644 index 10f27e6..0000000 --- a/docs/samples/databases/redis.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: Redis - Nanocl -sidebar_label: Redis -image: /img/logo.webp -description: Easily deploy a Redis instance with Nanocl ! -keywords: [documentation, samples, examples, Redis, nanocl, nanocl CLI, CLI] -pagination_next: null -pagination_prev: null ---- - -import StatefileBlock from '@site/src/components/statefile_block'; - -# Redis - -[Redis][redis] is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker.
-Below you can find a basic example to deploy a [redis][redis] server using their official [docker image][docker image]: - - - -Copy past the previous content and save it under a file called `redis.yml`.
-Then execute the following command to startup a `redis` server: - -```sh -nanocl state apply -s redis.yml -- --volume /opt/redis -``` - -:::tip -Other cargo created in the same namespace **global** will be able to connect to the redis using is key **redis.global.c** -The key can be predicted and caculated, it's formated this way: **cargo_name.namespace_name.c|v** **c** for container or **v** for virtual machine. -This allow us to have the same name for virtual machine and containers. -::: - -[redis]: https://redis.com -[docker image]: https://hub.docker.com/_/redis diff --git a/docs/samples/overview.md b/docs/samples/overview.md deleted file mode 100644 index c177d4c..0000000 --- a/docs/samples/overview.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: Samples - Nanocl -sidebar_label: Samples -image: /img/logo.webp -description: Learn how to deploy different types of services by walking through Official Nanocl samples. -keywords: [documentation, samples, examples, nanocl, nanocl CLI, CLI] -pagination_next: null -pagination_prev: null ---- -# Nanocl Samples - -Learn how to deploy different types of services by walking through Official `Nanocl` samples. - -## Databases - -[MariaDB](./databases/mariadb) | [MongoDB](./databases/mongodb) | [Mysql](./databases/mysql) | [Postgresql](./databases/postgresql) | [Redis](./databases/redis) - -## Webapps - -[Adminer](./webapps/adminer) | [Mongo Express](./webapps/mongo-express) | [Gitlab](./webapps/gitlab) diff --git a/docs/samples/webapps/_category_.yml b/docs/samples/webapps/_category_.yml deleted file mode 100644 index 5b487cd..0000000 --- a/docs/samples/webapps/_category_.yml +++ /dev/null @@ -1,2 +0,0 @@ -label: 'Webapps' -position: 2 \ No newline at end of file diff --git a/docs/samples/webapps/adminer.md b/docs/samples/webapps/adminer.md deleted file mode 100644 index a5ff3a2..0000000 --- a/docs/samples/webapps/adminer.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: Adminer - Nanocl -sidebar_label: Adminer -image: /img/logo.webp -description: Easily deploy a Adminer instance with Nanocl ! -keywords: [documentation, samples, examples, Adminer, nanocl, nanocl CLI, CLI] -sidebar_position: 1 -pagination_next: null -pagination_prev: null ---- - -import StatefileBlock from '@site/src/components/statefile_block'; - -# Adminer - -[Adminer][adminer] (formerly phpMinAdmin) is a full-featured database management tool written in PHP. -You can easily deploy [adminer][adminer] using their official [docker image][docker image]: - - - -Copy past the previous content and save it under a file called `adminer.yml`.
-Then execute the following command to startup a [adminer][adminer] server: - -```sh -nanocl state apply -s adminer.yml -``` - -If you are using `Nanocl` on your local computer, edit your `/etc/hosts` to add this line: - -``` -127.0.0.1 adminer.internal -``` - -You should be able to see the following page: - - - -Optionally you can choose the domain name using this command: - -```sh -nanocl state apply -s adminer.yml -- --domain my-domain.com -``` - -For production, we recommand you to deploy it inside a vpn follow our [vpn guide][vpn guide].
-And rerun the previos command with the network of your vpn, if you didn't took something fancy it should be: - -```sh -nanocl state apply -s adminer.yml -- --network private.nsp -``` - -This way [adminer][adminer] will only be accessible over the vpn! - - -[adminer]: https://www.adminer.org -[docker image]: https://hub.docker.com/_/adminer/ -[vpn guide]: /guides/nanocl/advanced-usage/vpn diff --git a/docs/samples/webapps/gitlab.md b/docs/samples/webapps/gitlab.md deleted file mode 100644 index cfec29f..0000000 --- a/docs/samples/webapps/gitlab.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -title: Gitlab - Nanocl -sidebar_label: Gitlab -image: /img/logo.webp -description: Easily deploy a Gitlab instance with Nanocl ! -keywords: [documentation, samples, examples, Gitlab, nanocl, nanocl CLI, CLI] -sidebar_position: 3 -pagination_next: null -pagination_prev: null ---- - -import StatefileBlock from '@site/src/components/statefile_block'; - -# Gitlab - -[Gitlab][gitlab] is a Project Planning and Source Code Management to CI/CD.
-You can easily deploy [gitlab][gitlab] using their official [docker image][docker image]: - - - -Copy past the previous content and save it under a file called `gitlab.yml`.
-Then execute the following command to startup a [gitlab][gitlab] server: - -```sh -nanocl state apply -s gitlab.yml -``` - -If you are using `Nanocl` on your local computer, edit your `/etc/hosts` to add this line: - -``` -127.0.0.1 gitlab.internal -``` - -You should be able to see the following page: - - - -Optionally you can choose the domain name using this command: - -```sh -nanocl state apply -s gitlab.yml -- --domain my-domain.com -``` - -For production, we recommand you to deploy it inside a vpn follow our [vpn guide][vpn guide].
-And rerun the previos command with the network of your vpn, if you didn't took something fancy it should be: - -```sh -nanocl state apply -s gitlab.yml -- --network private.nsp -``` - -This way [gitlab][gitlab] will only be accessible over the vpn! - -[gitlab]: https://about.gitlab.com/ -[docker image]: https://hub.docker.com/r/gitlab/gitlab-ee -[vpn guide]: /guides/nanocl/advanced-usage/vpn \ No newline at end of file diff --git a/docs/samples/webapps/mongo-express.md b/docs/samples/webapps/mongo-express.md deleted file mode 100644 index 6430f07..0000000 --- a/docs/samples/webapps/mongo-express.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -title: Mongo Express - Nanocl -sidebar_label: Mongo Express -image: /img/logo.webp -description: Easily deploy a Mongo Express instance with Nanocl ! -keywords: [documentation, samples, examples, Mongo Express, nanocl, nanocl CLI, CLI] -sidebar_position: 2 -pagination_next: null -pagination_prev: null ---- - -import StatefileBlock from '@site/src/components/statefile_block'; - -# Mongo Express - -[Mongo Express][mongo express] is a Web-based MongoDB admin interface, written with Node.js and express!
-You can easily deploy [mongo express][mongo express] using their official [docker image][docker image]: - - - -Copy past the previous content and save it under a file called `mongo-express.yml`.
-Then execute the following command to startup a [mongo express][mongo-express] server: - -```sh -nanocl state apply -s mongo-express.yml -``` - -If you are using `Nanocl` on your local computer, edit your `/etc/hosts` to add this line: - -``` -127.0.0.1 mongo-express.internal -``` - -You should be able to see the following page: - - - -Optionally you can choose the domain name using this command: - -```sh -nanocl state apply -s mongo-express.yml -- --domain my-domain.com -``` - -For production, we recommand you to deploy it inside a vpn follow our [vpn guide][vpn guide].
-And rerun the previos command with the network of your vpn, if you didn't took something fancy it should be: - -```sh -nanocl state apply -s mongo-express.yml -- --network private.nsp -``` - -This way [mongo express][mongo express] will only be accessible over the vpn! - -[mongo express]: https://github.com/mongo-express/mongo-express -[docker image]: https://hub.docker.com/_/mongo-express -[vpn guide]: /guides/nanocl/advanced-usage/vpn diff --git a/docusaurus.config.js b/docusaurus.config.js index 8de0ebb..1a94ef9 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -73,7 +73,7 @@ const config = { (item) => // @ts-ignore // This makes sure that the landing pages are not duplicated in the sidebars - item.id !== 'guides/summary' && item.id !== 'manuals/summary' && item.id !== 'references/summary' && item.id !== 'samples/overview' + item.id !== 'guides/summary' && item.id !== 'manuals/summary' && item.id !== 'references/summary' ) }, }, @@ -152,12 +152,6 @@ const config = { docId: 'references/summary', label: 'References', }, - { - type: 'doc', - position: 'left', - docId: 'samples/overview', - label: 'Samples', - }, ], }, footer: { diff --git a/examples/advanced/vpn.yml b/examples/advanced/vpn.yml index 1dab4fa..6d06109 100644 --- a/examples/advanced/vpn.yml +++ b/examples/advanced/vpn.yml @@ -19,7 +19,7 @@ Cargoes: Image: hwdsl2/ipsec-vpn-server:latest Env: - VPN_PUBLIC_IP=${{ Args.public-ip }} - - VPN_DNS_SRV1=${{ Namespaces[ Args.namespace ].Gateway }} + - VPN_DNS_SRV1=$$INTERNAL_GATEWAY - VPN_DNS_SRV2=${{ Args.dns }} - VPN_L2TP_NET=192.168.42.0/16 - VPN_L2TP_LOCAL=192.168.42.1 diff --git a/examples/get-started/proxy.yml b/examples/get-started/proxy.yml index f30c28d..6b9e9ef 100644 --- a/examples/get-started/proxy.yml +++ b/examples/get-started/proxy.yml @@ -7,14 +7,14 @@ Resources: Rules: # Domain name for the target - Domain: deploy-example.com - # See https://docs.next-hat.com/references/nanocl/resource#proxy-rule-network + # See https://docs.next-hat.com/references/nanocl/objects/resource#proxy-rule-network # For more information about proxy rule network Network: All # List of target by path for maximum flexibility Locations: - Path: / Target: - # Cargo to target formated as follow `cargo-name.namespace_name.type` `c` cargo, `v` vm + # Cargo to target formatted as follow `cargo-name.namespace_name.type` `c` cargo, `v` vm Key: my-cargo.global.c # Cargo port to target Port: 9001 diff --git a/examples/samples/databases/mariadb.yml b/examples/samples/databases/mariadb.yml deleted file mode 100644 index 618b50e..0000000 --- a/examples/samples/databases/mariadb.yml +++ /dev/null @@ -1,22 +0,0 @@ -ApiVersion: $NANOCL_VERSION - -Namespace: global - -Args: -- Name: password - Kind: String -- Name: volume - Kind: String - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/cargo -Cargoes: -- Name: mariadb - Container: - Image: mariadb:11.1.2 - Env: - # More info on env variables can be found there https://hub.docker.com/_/mariadb - - MARIADB_ROOT_PASSWORD=${{ Args.password }} - HostConfig: - Binds: - - ${{ Args.volume }}:/var/lib/mysql diff --git a/examples/samples/databases/mongodb.yml b/examples/samples/databases/mongodb.yml deleted file mode 100644 index 0b30bb7..0000000 --- a/examples/samples/databases/mongodb.yml +++ /dev/null @@ -1,23 +0,0 @@ -ApiVersion: $NANOCL_VERSION - -Namespace: global - -Args: -- Name: password - Kind: String -- Name: volume - Kind: String - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/cargo -Cargoes: -- Name: mongodb - Container: - Image: mongo:5.0.21 - Env: - # More info on env variable can be found there https://hub.docker.com/_/mongo - - MONGO_INITDB_ROOT_USERNAME=root - - MONGO_INITDB_ROOT_PASSWORD=${{ Args.password }} - HostConfig: - Binds: - - ${{ Args.volume }}:/data/db \ No newline at end of file diff --git a/examples/samples/databases/mysql.yml b/examples/samples/databases/mysql.yml deleted file mode 100644 index 8af610f..0000000 --- a/examples/samples/databases/mysql.yml +++ /dev/null @@ -1,23 +0,0 @@ -ApiVersion: $NANOCL_VERSION - -Namespace: global - -Args: -- Name: password - Kind: String -- Name: volume - Kind: String - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/cargo -Cargoes: -- Name: mysql - Container: - Image: mysql:8.1.0 - Env: - # More info on env variable can be found there https://hub.docker.com/_/mysql - - MYSQL_ROOT_PASSWORD=${{ Args.password }} - HostConfig: - Binds: - - ${{ Args.volume }}:/var/lib/mysql - diff --git a/examples/samples/databases/postgresql.yml b/examples/samples/databases/postgresql.yml deleted file mode 100644 index eebd2ab..0000000 --- a/examples/samples/databases/postgresql.yml +++ /dev/null @@ -1,22 +0,0 @@ -ApiVersion: $NANOCL_VERSION - -Namespace: global - -Args: -- Name: password - Kind: String -- Name: volume - Kind: String - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/cargo -Cargoes: -- Name: postgresql - Container: - Image: postgres:16.0 - Env: - # More info on env variable can be found there https://hub.docker.com/_/postgres - - POSTGRES_PASSWORD=${{ Args.password }} - HostConfig: - Binds: - - ${{ Args.volume }}:/var/lib/postgresql/data diff --git a/examples/samples/databases/redis.yml b/examples/samples/databases/redis.yml deleted file mode 100644 index 0f15833..0000000 --- a/examples/samples/databases/redis.yml +++ /dev/null @@ -1,19 +0,0 @@ -ApiVersion: $NANOCL_VERSION - -Namespace: global - -Args: -- Name: volume - Kind: String - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/cargo -Cargoes: -- Name: redis - Container: - Image: redis:7.2.1 - Env: - # More info on env variable can be found there https://hub.docker.com/_/redis - HostConfig: - Binds: - - ${{ Args.volume }}:/data \ No newline at end of file diff --git a/examples/samples/webapps/adminer.yml b/examples/samples/webapps/adminer.yml deleted file mode 100644 index 17b10f6..0000000 --- a/examples/samples/webapps/adminer.yml +++ /dev/null @@ -1,33 +0,0 @@ -ApiVersion: $NANOCL_VERSION - -Namespace: global - -Args: -- Name: domain - Kind: String - Default: adminer.internal -- Name: network - Kind: String - Default: Public - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/cargo -Cargoes: -- Name: adminer - Container: - Image: adminer:4.8.1 - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/resource -Resources: -- Name: adminer - Kind: ncproxy.io/rule/$NCPROXY_VERSION - Data: - Rules: - - Network: ${{ Args.network }} - Domain: ${{ Args.domain }} - Locations: - - Path: / - Target: - Key: adminer.global.c - Port: 8080 \ No newline at end of file diff --git a/examples/samples/webapps/gitlab.yml b/examples/samples/webapps/gitlab.yml deleted file mode 100644 index 34e3693..0000000 --- a/examples/samples/webapps/gitlab.yml +++ /dev/null @@ -1,41 +0,0 @@ -ApiVersion: $NANOCL_VERSION - -Namespace: global - -Args: -- Name: domain - Kind: String - Default: gitlab.internal -- Name: network - Kind: String - Default: Public - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/cargo -Cargoes: -- Name: gitlab - Container: - Image: gitlab/gitlab-ee:16.4.0-ee.0 - Env: - - GITLAB_ROOT_PASSWORD=root - HostConfig: - ShmSize: 268435456 - Binds: - - /opt/gitlab/config:/etc/gitlab - - /opt/gitlab/logs:/var/log/gitlab - - /opt/gitlab/data:/var/opt/gitlab - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/resource -Resources: -- Name: gitlab - Kind: ncproxy.io/rule/$NCPROXY_VERSION - Data: - Rules: - - Network: ${{ Args.network }} - Domain: ${{ Args.domain }} - Locations: - - Path: / - Target: - Key: gitlab.global.c - Port: 80 \ No newline at end of file diff --git a/examples/samples/webapps/mongo-express.yml b/examples/samples/webapps/mongo-express.yml deleted file mode 100644 index 1fac0a2..0000000 --- a/examples/samples/webapps/mongo-express.yml +++ /dev/null @@ -1,39 +0,0 @@ -ApiVersion: $NANOCL_VERSION - -Namespace: global - -Args: -- Name: domain - Kind: String - Default: mongo-express.internal -- Name: network - Kind: String - Default: Public - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/cargo -Cargoes: -- Name: mongo-express - Container: - Image: mongo-express:0.54 - Env: - - ME_CONFIG_MONGODB_ADMINUSERNAME=root - - ME_CONFIG_MONGODB_ADMINPASSWORD=root - - ME_CONFIG_MONGODB_SERVER=mongodb.global.c - - ME_CONFIG_MONGODB_PORT=27017 - - ME_CONFIG_MONGODB_URL=mongodb://root:root@mongodb.global.c:27017/ - -# See all options: -# https://docs.next-hat.com/references/nanocl/objects/resource -Resources: -- Name: mongo-express - Kind: ncproxy.io/rule/$NCPROXY_VERSION - Data: - Rules: - - Network: ${{ Args.network }} - Domain: ${{ Args.domain }} - Locations: - - Path: / - Target: - Key: mongo-express.global.c - Port: 8081 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 8f79352..8a32900 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,26 +1,26 @@ { "name": "docs-next-hat-com", - "version": "0.14.0", + "version": "0.16.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "docs-next-hat-com", - "version": "0.14.0", + "version": "0.16.0", "dependencies": { - "@docusaurus/core": "^3.4.0", - "@docusaurus/plugin-google-analytics": "^3.4.0", - "@docusaurus/preset-classic": "^3.4.0", - "@mdx-js/react": "^3.0.1", + "@docusaurus/core": "^3.5.2", + "@docusaurus/plugin-google-analytics": "^3.5.2", + "@docusaurus/preset-classic": "^3.5.2", + "@mdx-js/react": "^3.1.0", "clsx": "^2.1.1", - "prism-react-renderer": "^2.3.1", + "prism-react-renderer": "^2.4.0", "raw-loader": "^4.0.2", "react": "^18.3.1", "react-dom": "^18.3.1", - "redocusaurus": "^2.0.2" + "redocusaurus": "^2.1.2" }, "devDependencies": { - "@docusaurus/module-type-aliases": "^3.4.0" + "@docusaurus/module-type-aliases": "^3.5.2" }, "engines": { "node": ">=16.14" @@ -68,74 +68,126 @@ } }, "node_modules/@algolia/cache-browser-local-storage": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.23.3.tgz", - "integrity": "sha512-vRHXYCpPlTDE7i6UOy2xE03zHF2C8MEFjPN2v7fRbqVpcOvAUQK81x3Kc21xyb5aSIpYCjWCZbYZuz8Glyzyyg==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.24.0.tgz", + "integrity": "sha512-t63W9BnoXVrGy9iYHBgObNXqYXM3tYXCjDSHeNwnsc324r4o5UiVKUiAB4THQ5z9U5hTj6qUvwg/Ez43ZD85ww==", "dependencies": { - "@algolia/cache-common": "4.23.3" + "@algolia/cache-common": "4.24.0" } }, "node_modules/@algolia/cache-common": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.23.3.tgz", - "integrity": "sha512-h9XcNI6lxYStaw32pHpB1TMm0RuxphF+Ik4o7tcQiodEdpKK+wKufY6QXtba7t3k8eseirEMVB83uFFF3Nu54A==" + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.24.0.tgz", + "integrity": "sha512-emi+v+DmVLpMGhp0V9q9h5CdkURsNmFC+cOS6uK9ndeJm9J4TiqSvPYVu+THUP8P/S08rxf5x2P+p3CfID0Y4g==" }, "node_modules/@algolia/cache-in-memory": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.23.3.tgz", - "integrity": "sha512-yvpbuUXg/+0rbcagxNT7un0eo3czx2Uf0y4eiR4z4SD7SiptwYTpbuS0IHxcLHG3lq22ukx1T6Kjtk/rT+mqNg==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.24.0.tgz", + "integrity": "sha512-gDrt2so19jW26jY3/MkFg5mEypFIPbPoXsQGQWAi6TrCPsNOSEYepBMPlucqWigsmEy/prp5ug2jy/N3PVG/8w==", "dependencies": { - "@algolia/cache-common": "4.23.3" + "@algolia/cache-common": "4.24.0" } }, "node_modules/@algolia/client-account": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.23.3.tgz", - "integrity": "sha512-hpa6S5d7iQmretHHF40QGq6hz0anWEHGlULcTIT9tbUssWUriN9AUXIFQ8Ei4w9azD0hc1rUok9/DeQQobhQMA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.24.0.tgz", + "integrity": "sha512-adcvyJ3KjPZFDybxlqnf+5KgxJtBjwTPTeyG2aOyoJvx0Y8dUQAEOEVOJ/GBxX0WWNbmaSrhDURMhc+QeevDsA==", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/client-search": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-account/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", "dependencies": { - "@algolia/client-common": "4.23.3", - "@algolia/client-search": "4.23.3", - "@algolia/transporter": "4.23.3" + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-account/node_modules/@algolia/client-search": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.24.0.tgz", + "integrity": "sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" } }, "node_modules/@algolia/client-analytics": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.23.3.tgz", - "integrity": "sha512-LBsEARGS9cj8VkTAVEZphjxTjMVCci+zIIiRhpFun9jGDUlS1XmhCW7CTrnaWeIuCQS/2iPyRqSy1nXPjcBLRA==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.24.0.tgz", + "integrity": "sha512-y8jOZt1OjwWU4N2qr8G4AxXAzaa8DBvyHTWlHzX/7Me1LX8OayfgHexqrsL4vSBcoMmVw2XnVW9MhL+Y2ZDJXg==", "dependencies": { - "@algolia/client-common": "4.23.3", - "@algolia/client-search": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/transporter": "4.23.3" + "@algolia/client-common": "4.24.0", + "@algolia/client-search": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" } }, - "node_modules/@algolia/client-common": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.23.3.tgz", - "integrity": "sha512-l6EiPxdAlg8CYhroqS5ybfIczsGUIAC47slLPOMDeKSVXYG1n0qGiz4RjAHLw2aD0xzh2EXZ7aRguPfz7UKDKw==", + "node_modules/@algolia/client-analytics/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", "dependencies": { - "@algolia/requester-common": "4.23.3", - "@algolia/transporter": "4.23.3" + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-analytics/node_modules/@algolia/client-search": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.24.0.tgz", + "integrity": "sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-common": { + "version": "5.10.2", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.10.2.tgz", + "integrity": "sha512-eE4OaTlb5KZdCehWmDARq2KEmMF7DEeFLjKqFDcZNb56k1DMSsa9zCQRXZMovlf2AXLsx0A/1q+SGAEgzF7G3w==", + "peer": true, + "engines": { + "node": ">= 14.0.0" } }, "node_modules/@algolia/client-personalization": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.23.3.tgz", - "integrity": "sha512-3E3yF3Ocr1tB/xOZiuC3doHQBQ2zu2MPTYZ0d4lpfWads2WTKG7ZzmGnsHmm63RflvDeLK/UVx7j2b3QuwKQ2g==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.24.0.tgz", + "integrity": "sha512-l5FRFm/yngztweU0HdUzz1rC4yoWCFo3IF+dVIVTfEPg906eZg5BOd1k0K6rZx5JzyyoP4LdmOikfkfGsKVE9w==", "dependencies": { - "@algolia/client-common": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/transporter": "4.23.3" + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-personalization/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", + "dependencies": { + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" } }, "node_modules/@algolia/client-search": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.23.3.tgz", - "integrity": "sha512-P4VAKFHqU0wx9O+q29Q8YVuaowaZ5EM77rxfmGnkHUJggh28useXQdopokgwMeYw2XUht49WX5RcTQ40rZIabw==", + "version": "5.10.2", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.10.2.tgz", + "integrity": "sha512-rGX8uil2uvPycFgtS9Fzwvh4tgKvfFWG5RIh3E77W42HrO66bykCf9jHqhIIlCxdDJih1PuUqBYZIkIAAoSkww==", + "peer": true, "dependencies": { - "@algolia/client-common": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/transporter": "4.23.3" + "@algolia/client-common": "5.10.2", + "@algolia/requester-browser-xhr": "5.10.2", + "@algolia/requester-fetch": "5.10.2", + "@algolia/requester-node-http": "5.10.2" + }, + "engines": { + "node": ">= 14.0.0" } }, "node_modules/@algolia/events": { @@ -144,65 +196,120 @@ "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" }, "node_modules/@algolia/logger-common": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.23.3.tgz", - "integrity": "sha512-y9kBtmJwiZ9ZZ+1Ek66P0M68mHQzKRxkW5kAAXYN/rdzgDN0d2COsViEFufxJ0pb45K4FRcfC7+33YB4BLrZ+g==" + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.24.0.tgz", + "integrity": "sha512-LLUNjkahj9KtKYrQhFKCzMx0BY3RnNP4FEtO+sBybCjJ73E8jNdaKJ/Dd8A/VA4imVHP5tADZ8pn5B8Ga/wTMA==" }, "node_modules/@algolia/logger-console": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.23.3.tgz", - "integrity": "sha512-8xoiseoWDKuCVnWP8jHthgaeobDLolh00KJAdMe9XPrWPuf1by732jSpgy2BlsLTaT9m32pHI8CRfrOqQzHv3A==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.24.0.tgz", + "integrity": "sha512-X4C8IoHgHfiUROfoRCV+lzSy+LHMgkoEEU1BbKcsfnV0i0S20zyy0NLww9dwVHUWNfPPxdMU+/wKmLGYf96yTg==", "dependencies": { - "@algolia/logger-common": "4.23.3" + "@algolia/logger-common": "4.24.0" } }, "node_modules/@algolia/recommend": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-4.23.3.tgz", - "integrity": "sha512-9fK4nXZF0bFkdcLBRDexsnGzVmu4TSYZqxdpgBW2tEyfuSSY54D4qSRkLmNkrrz4YFvdh2GM1gA8vSsnZPR73w==", - "dependencies": { - "@algolia/cache-browser-local-storage": "4.23.3", - "@algolia/cache-common": "4.23.3", - "@algolia/cache-in-memory": "4.23.3", - "@algolia/client-common": "4.23.3", - "@algolia/client-search": "4.23.3", - "@algolia/logger-common": "4.23.3", - "@algolia/logger-console": "4.23.3", - "@algolia/requester-browser-xhr": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/requester-node-http": "4.23.3", - "@algolia/transporter": "4.23.3" + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-4.24.0.tgz", + "integrity": "sha512-P9kcgerfVBpfYHDfVZDvvdJv0lEoCvzNlOy2nykyt5bK8TyieYyiD0lguIJdRZZYGre03WIAFf14pgE+V+IBlw==", + "dependencies": { + "@algolia/cache-browser-local-storage": "4.24.0", + "@algolia/cache-common": "4.24.0", + "@algolia/cache-in-memory": "4.24.0", + "@algolia/client-common": "4.24.0", + "@algolia/client-search": "4.24.0", + "@algolia/logger-common": "4.24.0", + "@algolia/logger-console": "4.24.0", + "@algolia/requester-browser-xhr": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/requester-node-http": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/recommend/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", + "dependencies": { + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/recommend/node_modules/@algolia/client-search": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.24.0.tgz", + "integrity": "sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/recommend/node_modules/@algolia/requester-browser-xhr": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.24.0.tgz", + "integrity": "sha512-Z2NxZMb6+nVXSjF13YpjYTdvV3032YTBSGm2vnYvYPA6mMxzM3v5rsCiSspndn9rzIW4Qp1lPHBvuoKJV6jnAA==", + "dependencies": { + "@algolia/requester-common": "4.24.0" + } + }, + "node_modules/@algolia/recommend/node_modules/@algolia/requester-node-http": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.24.0.tgz", + "integrity": "sha512-JF18yTjNOVYvU/L3UosRcvbPMGT9B+/GQWNWnenIImglzNVGpyzChkXLnrSf6uxwVNO6ESGu6oN8MqcGQcjQJw==", + "dependencies": { + "@algolia/requester-common": "4.24.0" } }, "node_modules/@algolia/requester-browser-xhr": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.23.3.tgz", - "integrity": "sha512-jDWGIQ96BhXbmONAQsasIpTYWslyjkiGu0Quydjlowe+ciqySpiDUrJHERIRfELE5+wFc7hc1Q5hqjGoV7yghw==", + "version": "5.10.2", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.10.2.tgz", + "integrity": "sha512-gzlfE/H05ggDiEWNi8WaDSRhpE5X8rD1JqYKPPeM31JRI3TutQIKAk3MSUsa1bHM/Di56r2Gm6L1g3ZlZv2ETA==", + "peer": true, "dependencies": { - "@algolia/requester-common": "4.23.3" + "@algolia/client-common": "5.10.2" + }, + "engines": { + "node": ">= 14.0.0" } }, "node_modules/@algolia/requester-common": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.23.3.tgz", - "integrity": "sha512-xloIdr/bedtYEGcXCiF2muajyvRhwop4cMZo+K2qzNht0CMzlRkm8YsDdj5IaBhshqfgmBb3rTg4sL4/PpvLYw==" + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.24.0.tgz", + "integrity": "sha512-k3CXJ2OVnvgE3HMwcojpvY6d9kgKMPRxs/kVohrwF5WMr2fnqojnycZkxPoEg+bXm8fi5BBfFmOqgYztRtHsQA==" + }, + "node_modules/@algolia/requester-fetch": { + "version": "5.10.2", + "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.10.2.tgz", + "integrity": "sha512-Q27ciW9WRdq3pUITVlxpHIwe9QWOe+oPvgs8Z+gsv8vMkwXnLfANvSgeZCyQgx3SqzUPzhel0ozVq7Qoh8xIkg==", + "peer": true, + "dependencies": { + "@algolia/client-common": "5.10.2" + }, + "engines": { + "node": ">= 14.0.0" + } }, "node_modules/@algolia/requester-node-http": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.23.3.tgz", - "integrity": "sha512-zgu++8Uj03IWDEJM3fuNl34s746JnZOWn1Uz5taV1dFyJhVM/kTNw9Ik7YJWiUNHJQXcaD8IXD1eCb0nq/aByA==", + "version": "5.10.2", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.10.2.tgz", + "integrity": "sha512-WMUQ4iFhNnQXC4F1Yj51x8tgIvq5h8jtTLMBs7LbMiW6JhnLHfBVl7IVk6X1fZJO5YcvXW051HN8aFlfAb5QEw==", + "peer": true, "dependencies": { - "@algolia/requester-common": "4.23.3" + "@algolia/client-common": "5.10.2" + }, + "engines": { + "node": ">= 14.0.0" } }, "node_modules/@algolia/transporter": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.23.3.tgz", - "integrity": "sha512-Wjl5gttqnf/gQKJA+dafnD0Y6Yw97yvfY8R9h0dQltX1GXTgNs1zWgvtWW0tHl1EgMdhAyw189uWiZMnL3QebQ==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.24.0.tgz", + "integrity": "sha512-86nI7w6NzWxd1Zp9q3413dRshDqAzSbsQjhcDhPIatEFiZrL1/TjnHL8S7jVKFePlIMzDsZWXAXwXzcok9c5oA==", "dependencies": { - "@algolia/cache-common": "4.23.3", - "@algolia/logger-common": "4.23.3", - "@algolia/requester-common": "4.23.3" + "@algolia/cache-common": "4.24.0", + "@algolia/logger-common": "4.24.0", + "@algolia/requester-common": "4.24.0" } }, "node_modules/@ampproject/remapping": { @@ -549,9 +656,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz", - "integrity": "sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz", + "integrity": "sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==", "engines": { "node": ">=6.9.0" } @@ -1626,11 +1733,11 @@ } }, "node_modules/@babel/plugin-transform-react-constant-elements": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.24.1.tgz", - "integrity": "sha512-QXp1U9x0R7tkiGB0FOk8o74jhnap0FlZ5gNkRIWdG3eP+SvMFg118e1zaWewDzgABb106QSKpVsD3Wgd8t6ifA==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.25.9.tgz", + "integrity": "sha512-Ncw2JFsJVuvfRsa2lSHiC55kETQVLSnsYGQ1JDDwkUeWGTL/8Tom8aLTnlqgoeuopWrbbGndrc9AlLYrIosrow==", "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -2128,6 +2235,28 @@ "node": ">=6.9.0" } }, + "node_modules/@cfaester/enzyme-adapter-react-18": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@cfaester/enzyme-adapter-react-18/-/enzyme-adapter-react-18-0.8.0.tgz", + "integrity": "sha512-3Z3ThTUouHwz8oIyhTYQljEMNRFtlVyc3VOOHCbxs47U6cnXs8K9ygi/c1tv49s7MBlTXeIcuN+Ttd9aPtILFQ==", + "dependencies": { + "enzyme-shallow-equal": "^1.0.0", + "function.prototype.name": "^1.1.6", + "has": "^1.0.4", + "react-is": "^18.2.0", + "react-shallow-renderer": "^16.15.0" + }, + "peerDependencies": { + "enzyme": "^3.11.0", + "react": ">=18", + "react-dom": ">=18" + } + }, + "node_modules/@cfaester/enzyme-adapter-react-18/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==" + }, "node_modules/@colors/colors": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", @@ -2146,18 +2275,18 @@ } }, "node_modules/@docsearch/css": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.6.0.tgz", - "integrity": "sha512-+sbxb71sWre+PwDK7X2T8+bhS6clcVMLwBPznX45Qu6opJcgRjAp7gYSDzVFp187J+feSj5dNBN1mJoi6ckkUQ==" + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.6.2.tgz", + "integrity": "sha512-vKNZepO2j7MrYBTZIGXvlUOIR+v9KRf70FApRgovWrj3GTs1EITz/Xb0AOlm1xsQBp16clVZj1SY/qaOJbQtZw==" }, "node_modules/@docsearch/react": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.6.0.tgz", - "integrity": "sha512-HUFut4ztcVNmqy9gp/wxNbC7pTOHhgVVkHVGCACTuLhUKUhKAF9KYHJtMiLUJxEqiFLQiuri1fWF8zqwM/cu1w==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.6.2.tgz", + "integrity": "sha512-rtZce46OOkVflCQH71IdbXSFK+S8iJZlUF56XBW5rIgx/eG5qoomC7Ag3anZson1bBac/JFQn7XOBfved/IMRA==", "dependencies": { "@algolia/autocomplete-core": "1.9.3", "@algolia/autocomplete-preset-algolia": "1.9.3", - "@docsearch/css": "3.6.0", + "@docsearch/css": "3.6.2", "algoliasearch": "^4.19.1" }, "peerDependencies": { @@ -2182,9 +2311,9 @@ } }, "node_modules/@docusaurus/core": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.4.0.tgz", - "integrity": "sha512-g+0wwmN2UJsBqy2fQRQ6fhXruoEa62JDeEa5d8IdTJlMoaDaEDfHh7WjwGRn4opuTQWpjAwP/fbcgyHKlE+64w==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.5.2.tgz", + "integrity": "sha512-4Z1WkhCSkX4KO0Fw5m/Vuc7Q3NxBG53NE5u59Rs96fWkMPZVSrzEPP16/Nk6cWb/shK7xXPndTmalJtw7twL/w==", "dependencies": { "@babel/core": "^7.23.3", "@babel/generator": "^7.23.3", @@ -2196,12 +2325,12 @@ "@babel/runtime": "^7.22.6", "@babel/runtime-corejs3": "^7.22.6", "@babel/traverse": "^7.22.8", - "@docusaurus/cssnano-preset": "3.4.0", - "@docusaurus/logger": "3.4.0", - "@docusaurus/mdx-loader": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-common": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "@docusaurus/cssnano-preset": "3.5.2", + "@docusaurus/logger": "3.5.2", + "@docusaurus/mdx-loader": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-common": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "autoprefixer": "^10.4.14", "babel-loader": "^9.1.3", "babel-plugin-dynamic-import-node": "^2.3.3", @@ -2262,14 +2391,15 @@ "node": ">=18.0" }, "peerDependencies": { + "@mdx-js/react": "^3.0.0", "react": "^18.0.0", "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/cssnano-preset": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.4.0.tgz", - "integrity": "sha512-qwLFSz6v/pZHy/UP32IrprmH5ORce86BGtN0eBtG75PpzQJAzp9gefspox+s8IEOr0oZKuQ/nhzZ3xwyc3jYJQ==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.5.2.tgz", + "integrity": "sha512-D3KiQXOMA8+O0tqORBrTOEQyQxNIfPm9jEaJoALjjSjc2M/ZAWcUfPQEnwr2JB2TadHw2gqWgpZckQmrVWkytA==", "dependencies": { "cssnano-preset-advanced": "^6.1.2", "postcss": "^8.4.38", @@ -2281,9 +2411,9 @@ } }, "node_modules/@docusaurus/logger": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.4.0.tgz", - "integrity": "sha512-bZwkX+9SJ8lB9kVRkXw+xvHYSMGG4bpYHKGXeXFvyVc79NMeeBSGgzd4TQLHH+DYeOJoCdl8flrFJVxlZ0wo/Q==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.5.2.tgz", + "integrity": "sha512-LHC540SGkeLfyT3RHK3gAMK6aS5TRqOD4R72BEU/DE2M/TY8WwEUAMY576UUc/oNJXv8pGhBmQB6N9p3pt8LQw==", "dependencies": { "chalk": "^4.1.2", "tslib": "^2.6.0" @@ -2293,13 +2423,13 @@ } }, "node_modules/@docusaurus/mdx-loader": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.4.0.tgz", - "integrity": "sha512-kSSbrrk4nTjf4d+wtBA9H+FGauf2gCax89kV8SUSJu3qaTdSIKdWERlngsiHaCFgZ7laTJ8a67UFf+xlFPtuTw==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.5.2.tgz", + "integrity": "sha512-ku3xO9vZdwpiMIVd8BzWV0DCqGEbCP5zs1iHfKX50vw6jX8vQo0ylYo1YJMZyz6e+JFJ17HYHT5FzVidz2IflA==", "dependencies": { - "@docusaurus/logger": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "@docusaurus/logger": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "@mdx-js/mdx": "^3.0.0", "@slorber/remark-comment": "^1.0.0", "escape-html": "^1.0.3", @@ -2331,11 +2461,11 @@ } }, "node_modules/@docusaurus/module-type-aliases": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.4.0.tgz", - "integrity": "sha512-A1AyS8WF5Bkjnb8s+guTDuYmUiwJzNrtchebBHpc0gz0PyHJNMaybUlSrmJjHVcGrya0LKI4YcR3lBDQfXRYLw==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.5.2.tgz", + "integrity": "sha512-Z+Xu3+2rvKef/YKTMxZHsEXp1y92ac0ngjDiExRdqGTmEKtCUpkbNYH8v5eXo5Ls+dnW88n6WTa+Q54kLOkwPg==", "dependencies": { - "@docusaurus/types": "3.4.0", + "@docusaurus/types": "3.5.2", "@types/history": "^4.7.11", "@types/react": "*", "@types/react-router-config": "*", @@ -2349,18 +2479,19 @@ } }, "node_modules/@docusaurus/plugin-content-blog": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.4.0.tgz", - "integrity": "sha512-vv6ZAj78ibR5Jh7XBUT4ndIjmlAxkijM3Sx5MAAzC1gyv0vupDQNhzuFg1USQmQVj3P5I6bquk12etPV3LJ+Xw==", - "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/logger": "3.4.0", - "@docusaurus/mdx-loader": "3.4.0", - "@docusaurus/types": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-common": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", - "cheerio": "^1.0.0-rc.12", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.5.2.tgz", + "integrity": "sha512-R7ghWnMvjSf+aeNDH0K4fjyQnt5L0KzUEnUhmf1e3jZrv3wogeytZNN6n7X8yHcMsuZHPOrctQhXWnmxu+IRRg==", + "dependencies": { + "@docusaurus/core": "3.5.2", + "@docusaurus/logger": "3.5.2", + "@docusaurus/mdx-loader": "3.5.2", + "@docusaurus/theme-common": "3.5.2", + "@docusaurus/types": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-common": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", + "cheerio": "1.0.0-rc.12", "feed": "^4.2.2", "fs-extra": "^11.1.1", "lodash": "^4.17.21", @@ -2375,23 +2506,25 @@ "node": ">=18.0" }, "peerDependencies": { + "@docusaurus/plugin-content-docs": "*", "react": "^18.0.0", "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/plugin-content-docs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.4.0.tgz", - "integrity": "sha512-HkUCZffhBo7ocYheD9oZvMcDloRnGhBMOZRyVcAQRFmZPmNqSyISlXA1tQCIxW+r478fty97XXAGjNYzBjpCsg==", - "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/logger": "3.4.0", - "@docusaurus/mdx-loader": "3.4.0", - "@docusaurus/module-type-aliases": "3.4.0", - "@docusaurus/types": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-common": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.5.2.tgz", + "integrity": "sha512-Bt+OXn/CPtVqM3Di44vHjE7rPCEsRCB/DMo2qoOuozB9f7+lsdrHvD0QCHdBs0uhz6deYJDppAr2VgqybKPlVQ==", + "dependencies": { + "@docusaurus/core": "3.5.2", + "@docusaurus/logger": "3.5.2", + "@docusaurus/mdx-loader": "3.5.2", + "@docusaurus/module-type-aliases": "3.5.2", + "@docusaurus/theme-common": "3.5.2", + "@docusaurus/types": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-common": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "@types/react-router-config": "^5.0.7", "combine-promises": "^1.1.0", "fs-extra": "^11.1.1", @@ -2410,15 +2543,15 @@ } }, "node_modules/@docusaurus/plugin-content-pages": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.4.0.tgz", - "integrity": "sha512-h2+VN/0JjpR8fIkDEAoadNjfR3oLzB+v1qSXbIAKjQ46JAHx3X22n9nqS+BWSQnTnp1AjkjSvZyJMekmcwxzxg==", - "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/mdx-loader": "3.4.0", - "@docusaurus/types": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.5.2.tgz", + "integrity": "sha512-WzhHjNpoQAUz/ueO10cnundRz+VUtkjFhhaQ9jApyv1a46FPURO4cef89pyNIOMny1fjDz/NUN2z6Yi+5WUrCw==", + "dependencies": { + "@docusaurus/core": "3.5.2", + "@docusaurus/mdx-loader": "3.5.2", + "@docusaurus/types": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "fs-extra": "^11.1.1", "tslib": "^2.6.0", "webpack": "^5.88.1" @@ -2432,13 +2565,13 @@ } }, "node_modules/@docusaurus/plugin-debug": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-3.4.0.tgz", - "integrity": "sha512-uV7FDUNXGyDSD3PwUaf5YijX91T5/H9SX4ErEcshzwgzWwBtK37nUWPU3ZLJfeTavX3fycTOqk9TglpOLaWkCg==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-3.5.2.tgz", + "integrity": "sha512-kBK6GlN0itCkrmHuCS6aX1wmoWc5wpd5KJlqQ1FyrF0cLDnvsYSnh7+ftdwzt7G6lGBho8lrVwkkL9/iQvaSOA==", "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/types": "3.4.0", - "@docusaurus/utils": "3.4.0", + "@docusaurus/core": "3.5.2", + "@docusaurus/types": "3.5.2", + "@docusaurus/utils": "3.5.2", "fs-extra": "^11.1.1", "react-json-view-lite": "^1.2.0", "tslib": "^2.6.0" @@ -2452,13 +2585,13 @@ } }, "node_modules/@docusaurus/plugin-google-analytics": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.4.0.tgz", - "integrity": "sha512-mCArluxEGi3cmYHqsgpGGt3IyLCrFBxPsxNZ56Mpur0xSlInnIHoeLDH7FvVVcPJRPSQ9/MfRqLsainRw+BojA==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.5.2.tgz", + "integrity": "sha512-rjEkJH/tJ8OXRE9bwhV2mb/WP93V441rD6XnM6MIluu7rk8qg38iSxS43ga2V2Q/2ib53PcqbDEJDG/yWQRJhQ==", "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/types": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "@docusaurus/core": "3.5.2", + "@docusaurus/types": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "tslib": "^2.6.0" }, "engines": { @@ -2470,13 +2603,13 @@ } }, "node_modules/@docusaurus/plugin-google-gtag": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.4.0.tgz", - "integrity": "sha512-Dsgg6PLAqzZw5wZ4QjUYc8Z2KqJqXxHxq3vIoyoBWiLEEfigIs7wHR+oiWUQy3Zk9MIk6JTYj7tMoQU0Jm3nqA==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.5.2.tgz", + "integrity": "sha512-lm8XL3xLkTPHFKKjLjEEAHUrW0SZBSHBE1I+i/tmYMBsjCcUB5UJ52geS5PSiOCFVR74tbPGcPHEV/gaaxFeSA==", "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/types": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "@docusaurus/core": "3.5.2", + "@docusaurus/types": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "@types/gtag.js": "^0.0.12", "tslib": "^2.6.0" }, @@ -2489,13 +2622,13 @@ } }, "node_modules/@docusaurus/plugin-google-tag-manager": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.4.0.tgz", - "integrity": "sha512-O9tX1BTwxIhgXpOLpFDueYA9DWk69WCbDRrjYoMQtFHSkTyE7RhNgyjSPREUWJb9i+YUg3OrsvrBYRl64FCPCQ==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.5.2.tgz", + "integrity": "sha512-QkpX68PMOMu10Mvgvr5CfZAzZQFx8WLlOiUQ/Qmmcl6mjGK6H21WLT5x7xDmcpCoKA/3CegsqIqBR+nA137lQg==", "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/types": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "@docusaurus/core": "3.5.2", + "@docusaurus/types": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "tslib": "^2.6.0" }, "engines": { @@ -2507,16 +2640,16 @@ } }, "node_modules/@docusaurus/plugin-sitemap": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.4.0.tgz", - "integrity": "sha512-+0VDvx9SmNrFNgwPoeoCha+tRoAjopwT0+pYO1xAbyLcewXSemq+eLxEa46Q1/aoOaJQ0qqHELuQM7iS2gp33Q==", - "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/logger": "3.4.0", - "@docusaurus/types": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-common": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.5.2.tgz", + "integrity": "sha512-DnlqYyRAdQ4NHY28TfHuVk414ft2uruP4QWCH//jzpHjqvKyXjj2fmDtI8RPUBh9K8iZKFMHRnLtzJKySPWvFA==", + "dependencies": { + "@docusaurus/core": "3.5.2", + "@docusaurus/logger": "3.5.2", + "@docusaurus/types": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-common": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "fs-extra": "^11.1.1", "sitemap": "^7.1.1", "tslib": "^2.6.0" @@ -2530,23 +2663,23 @@ } }, "node_modules/@docusaurus/preset-classic": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-3.4.0.tgz", - "integrity": "sha512-Ohj6KB7siKqZaQhNJVMBBUzT3Nnp6eTKqO+FXO3qu/n1hJl3YLwVKTWBg28LF7MWrKu46UuYavwMRxud0VyqHg==", - "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/plugin-content-blog": "3.4.0", - "@docusaurus/plugin-content-docs": "3.4.0", - "@docusaurus/plugin-content-pages": "3.4.0", - "@docusaurus/plugin-debug": "3.4.0", - "@docusaurus/plugin-google-analytics": "3.4.0", - "@docusaurus/plugin-google-gtag": "3.4.0", - "@docusaurus/plugin-google-tag-manager": "3.4.0", - "@docusaurus/plugin-sitemap": "3.4.0", - "@docusaurus/theme-classic": "3.4.0", - "@docusaurus/theme-common": "3.4.0", - "@docusaurus/theme-search-algolia": "3.4.0", - "@docusaurus/types": "3.4.0" + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-3.5.2.tgz", + "integrity": "sha512-3ihfXQ95aOHiLB5uCu+9PRy2gZCeSZoDcqpnDvf3B+sTrMvMTr8qRUzBvWkoIqc82yG5prCboRjk1SVILKx6sg==", + "dependencies": { + "@docusaurus/core": "3.5.2", + "@docusaurus/plugin-content-blog": "3.5.2", + "@docusaurus/plugin-content-docs": "3.5.2", + "@docusaurus/plugin-content-pages": "3.5.2", + "@docusaurus/plugin-debug": "3.5.2", + "@docusaurus/plugin-google-analytics": "3.5.2", + "@docusaurus/plugin-google-gtag": "3.5.2", + "@docusaurus/plugin-google-tag-manager": "3.5.2", + "@docusaurus/plugin-sitemap": "3.5.2", + "@docusaurus/theme-classic": "3.5.2", + "@docusaurus/theme-common": "3.5.2", + "@docusaurus/theme-search-algolia": "3.5.2", + "@docusaurus/types": "3.5.2" }, "engines": { "node": ">=18.0" @@ -2557,26 +2690,26 @@ } }, "node_modules/@docusaurus/theme-classic": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.4.0.tgz", - "integrity": "sha512-0IPtmxsBYv2adr1GnZRdMkEQt1YW6tpzrUPj02YxNpvJ5+ju4E13J5tB4nfdaen/tfR1hmpSPlTFPvTf4kwy8Q==", - "dependencies": { - "@docusaurus/core": "3.4.0", - "@docusaurus/mdx-loader": "3.4.0", - "@docusaurus/module-type-aliases": "3.4.0", - "@docusaurus/plugin-content-blog": "3.4.0", - "@docusaurus/plugin-content-docs": "3.4.0", - "@docusaurus/plugin-content-pages": "3.4.0", - "@docusaurus/theme-common": "3.4.0", - "@docusaurus/theme-translations": "3.4.0", - "@docusaurus/types": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-common": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.5.2.tgz", + "integrity": "sha512-XRpinSix3NBv95Rk7xeMF9k4safMkwnpSgThn0UNQNumKvmcIYjfkwfh2BhwYh/BxMXQHJ/PdmNh22TQFpIaYg==", + "dependencies": { + "@docusaurus/core": "3.5.2", + "@docusaurus/mdx-loader": "3.5.2", + "@docusaurus/module-type-aliases": "3.5.2", + "@docusaurus/plugin-content-blog": "3.5.2", + "@docusaurus/plugin-content-docs": "3.5.2", + "@docusaurus/plugin-content-pages": "3.5.2", + "@docusaurus/theme-common": "3.5.2", + "@docusaurus/theme-translations": "3.5.2", + "@docusaurus/types": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-common": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "@mdx-js/react": "^3.0.0", "clsx": "^2.0.0", "copy-text-to-clipboard": "^3.2.0", - "infima": "0.2.0-alpha.43", + "infima": "0.2.0-alpha.44", "lodash": "^4.17.21", "nprogress": "^0.2.0", "postcss": "^8.4.26", @@ -2596,17 +2729,14 @@ } }, "node_modules/@docusaurus/theme-common": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.4.0.tgz", - "integrity": "sha512-0A27alXuv7ZdCg28oPE8nH/Iz73/IUejVaCazqu9elS4ypjiLhK3KfzdSQBnL/g7YfHSlymZKdiOHEo8fJ0qMA==", - "dependencies": { - "@docusaurus/mdx-loader": "3.4.0", - "@docusaurus/module-type-aliases": "3.4.0", - "@docusaurus/plugin-content-blog": "3.4.0", - "@docusaurus/plugin-content-docs": "3.4.0", - "@docusaurus/plugin-content-pages": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-common": "3.4.0", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.5.2.tgz", + "integrity": "sha512-QXqlm9S6x9Ibwjs7I2yEDgsCocp708DrCrgHgKwg2n2AY0YQ6IjU0gAK35lHRLOvAoJUfCKpQAwUykB0R7+Eew==", + "dependencies": { + "@docusaurus/mdx-loader": "3.5.2", + "@docusaurus/module-type-aliases": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-common": "3.5.2", "@types/history": "^4.7.11", "@types/react": "*", "@types/react-router-config": "*", @@ -2620,23 +2750,24 @@ "node": ">=18.0" }, "peerDependencies": { + "@docusaurus/plugin-content-docs": "*", "react": "^18.0.0", "react-dom": "^18.0.0" } }, "node_modules/@docusaurus/theme-search-algolia": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.4.0.tgz", - "integrity": "sha512-aiHFx7OCw4Wck1z6IoShVdUWIjntC8FHCw9c5dR8r3q4Ynh+zkS8y2eFFunN/DL6RXPzpnvKCg3vhLQYJDmT9Q==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.5.2.tgz", + "integrity": "sha512-qW53kp3VzMnEqZGjakaV90sst3iN1o32PH+nawv1uepROO8aEGxptcq2R5rsv7aBShSRbZwIobdvSYKsZ5pqvA==", "dependencies": { "@docsearch/react": "^3.5.2", - "@docusaurus/core": "3.4.0", - "@docusaurus/logger": "3.4.0", - "@docusaurus/plugin-content-docs": "3.4.0", - "@docusaurus/theme-common": "3.4.0", - "@docusaurus/theme-translations": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-validation": "3.4.0", + "@docusaurus/core": "3.5.2", + "@docusaurus/logger": "3.5.2", + "@docusaurus/plugin-content-docs": "3.5.2", + "@docusaurus/theme-common": "3.5.2", + "@docusaurus/theme-translations": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-validation": "3.5.2", "algoliasearch": "^4.18.0", "algoliasearch-helper": "^3.13.3", "clsx": "^2.0.0", @@ -2655,9 +2786,9 @@ } }, "node_modules/@docusaurus/theme-translations": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.4.0.tgz", - "integrity": "sha512-zSxCSpmQCCdQU5Q4CnX/ID8CSUUI3fvmq4hU/GNP/XoAWtXo9SAVnM3TzpU8Gb//H3WCsT8mJcTfyOk3d9ftNg==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.5.2.tgz", + "integrity": "sha512-GPZLcu4aT1EmqSTmbdpVrDENGR2yObFEX8ssEFYTCiAIVc0EihNSdOIBTazUvgNqwvnoU1A8vIs1xyzc3LITTw==", "dependencies": { "fs-extra": "^11.1.1", "tslib": "^2.6.0" @@ -2667,9 +2798,9 @@ } }, "node_modules/@docusaurus/types": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.4.0.tgz", - "integrity": "sha512-4jcDO8kXi5Cf9TcyikB/yKmz14f2RZ2qTRerbHAsS+5InE9ZgSLBNLsewtFTcTOXSVcbU3FoGOzcNWAmU1TR0A==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.5.2.tgz", + "integrity": "sha512-N6GntLXoLVUwkZw7zCxwy9QiuEXIcTVzA9AkmNw16oc0AP3SXLrMmDMMBIfgqwuKWa6Ox6epHol9kMtJqekACw==", "dependencies": { "@mdx-js/mdx": "^3.0.0", "@types/history": "^4.7.11", @@ -2687,12 +2818,12 @@ } }, "node_modules/@docusaurus/utils": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.4.0.tgz", - "integrity": "sha512-fRwnu3L3nnWaXOgs88BVBmG1yGjcQqZNHG+vInhEa2Sz2oQB+ZjbEMO5Rh9ePFpZ0YDiDUhpaVjwmS+AU2F14g==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.5.2.tgz", + "integrity": "sha512-33QvcNFh+Gv+C2dP9Y9xWEzMgf3JzrpL2nW9PopidiohS1nDcyknKRx2DWaFvyVTTYIkkABVSr073VTj/NITNA==", "dependencies": { - "@docusaurus/logger": "3.4.0", - "@docusaurus/utils-common": "3.4.0", + "@docusaurus/logger": "3.5.2", + "@docusaurus/utils-common": "3.5.2", "@svgr/webpack": "^8.1.0", "escape-string-regexp": "^4.0.0", "file-loader": "^6.2.0", @@ -2725,9 +2856,9 @@ } }, "node_modules/@docusaurus/utils-common": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.4.0.tgz", - "integrity": "sha512-NVx54Wr4rCEKsjOH5QEVvxIqVvm+9kh7q8aYTU5WzUU9/Hctd6aTrcZ3G0Id4zYJ+AeaG5K5qHA4CY5Kcm2iyQ==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.5.2.tgz", + "integrity": "sha512-i0AZjHiRgJU6d7faQngIhuHKNrszpL/SHQPgF1zH4H+Ij6E9NBYGy6pkcGWToIv7IVPbs+pQLh1P3whn0gWXVg==", "dependencies": { "tslib": "^2.6.0" }, @@ -2744,13 +2875,13 @@ } }, "node_modules/@docusaurus/utils-validation": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.4.0.tgz", - "integrity": "sha512-hYQ9fM+AXYVTWxJOT1EuNaRnrR2WGpRdLDQG07O8UOpsvCPWUVOeo26Rbm0JWY2sGLfzAb+tvJ62yF+8F+TV0g==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.5.2.tgz", + "integrity": "sha512-m+Foq7augzXqB6HufdS139PFxDC5d5q2QKZy8q0qYYvGdI6nnlNsGH4cIGsgBnV7smz+mopl3g4asbSDvMV0jA==", "dependencies": { - "@docusaurus/logger": "3.4.0", - "@docusaurus/utils": "3.4.0", - "@docusaurus/utils-common": "3.4.0", + "@docusaurus/logger": "3.5.2", + "@docusaurus/utils": "3.5.2", + "@docusaurus/utils-common": "3.5.2", "fs-extra": "^11.2.0", "joi": "^17.9.2", "js-yaml": "^4.1.0", @@ -2762,9 +2893,9 @@ } }, "node_modules/@emotion/is-prop-valid": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.1.tgz", - "integrity": "sha512-61Mf7Ufx4aDxx1xlDeOm8aFFigGHE4z+0sKCa+IHCeZKiyP9RLD0Mmx7m8b9/Cf37f7NAvQOOJAbQQGVr5uERw==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.2.tgz", + "integrity": "sha512-uNsoYd37AFmaCdXlg6EYD1KaPOaRWRByMCYzbKUX4+hhMfrxdVSelShywL4JVaAeM/eHUOSprYBQls+/neX3pw==", "dependencies": { "@emotion/memoize": "^0.8.1" } @@ -2882,9 +3013,9 @@ "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" }, "node_modules/@mdx-js/mdx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-3.0.1.tgz", - "integrity": "sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-3.1.0.tgz", + "integrity": "sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==", "dependencies": { "@types/estree": "^1.0.0", "@types/estree-jsx": "^1.0.0", @@ -2892,14 +3023,15 @@ "@types/mdx": "^2.0.0", "collapse-white-space": "^2.0.0", "devlop": "^1.0.0", - "estree-util-build-jsx": "^3.0.0", "estree-util-is-identifier-name": "^3.0.0", - "estree-util-to-js": "^2.0.0", + "estree-util-scope": "^1.0.0", "estree-walker": "^3.0.0", - "hast-util-to-estree": "^3.0.0", "hast-util-to-jsx-runtime": "^2.0.0", "markdown-extensions": "^2.0.0", - "periscopic": "^3.0.0", + "recma-build-jsx": "^1.0.0", + "recma-jsx": "^1.0.0", + "recma-stringify": "^1.0.0", + "rehype-recma": "^1.0.0", "remark-mdx": "^3.0.0", "remark-parse": "^11.0.0", "remark-rehype": "^11.0.0", @@ -2916,9 +3048,9 @@ } }, "node_modules/@mdx-js/react": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.0.1.tgz", - "integrity": "sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.1.0.tgz", + "integrity": "sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==", "dependencies": { "@types/mdx": "^2.0.0" }, @@ -3006,27 +3138,34 @@ "integrity": "sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ==" }, "node_modules/@redocly/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-9GWx27t7xWhDIR02PA18nzBdLcKQRgc46xNQvjFkrYk4UOmvKhJ/dawwiX0cCOeetN5LcaaiqQbVOWYK62SGHw==", + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/@redocly/ajv/-/ajv-8.11.2.tgz", + "integrity": "sha512-io1JpnwtIcvojV7QKDUSIuMN/ikdOUd1ReEnUnMKGfDVridQZ31J0MmIuqwuRjWDZfmvr+Q0MqCcfHM2gTivOg==", "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "uri-js-replace": "^1.0.1" }, "funding": { "type": "github", "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/@redocly/config": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/@redocly/config/-/config-0.6.3.tgz", + "integrity": "sha512-hGWJgCsXRw0Ow4rplqRlUQifZvoSwZipkYnt11e3SeH1Eb23VUIDBcRuaQOUqy1wn0eevXkU2GzzQ8fbKdQ7Mg==" + }, "node_modules/@redocly/openapi-core": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.10.3.tgz", - "integrity": "sha512-4SnIWh8r3EM1ylcoHIJSnQnuvqRTpQMnf2RU3BfVdcCBa0A1uEyH6XSxgcO5ehxfQGuGGpUXJ+vPh32PUaQDkA==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.16.0.tgz", + "integrity": "sha512-z06h+svyqbUcdAaePq8LPSwTPlm6Ig7j2VlL8skPBYnJvyaQ2IN7x/JkOvRL4ta+wcOCBdAex5JWnZbKaNktJg==", "dependencies": { "@redocly/ajv": "^8.11.0", + "@redocly/config": "^0.6.0", "colorette": "^1.2.0", + "https-proxy-agent": "^7.0.4", "js-levenshtein": "^1.1.6", "js-yaml": "^4.1.0", "lodash.isequal": "^4.5.0", @@ -3415,24 +3554,6 @@ "@types/ms": "*" } }, - "node_modules/@types/eslint": { - "version": "8.44.8", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.8.tgz", - "integrity": "sha512-4K8GavROwhrYl2QXDXm0Rv9epkA8GBFu0EI+XrrnnuCl7u8CWBRusX7fXJfanhZTDWSAL24gDI/UqXyUM0Injw==", - "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "node_modules/@types/eslint-scope": { - "version": "3.7.7", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", - "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, "node_modules/@types/estree": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", @@ -3536,9 +3657,9 @@ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" }, "node_modules/@types/mdast": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.3.tgz", - "integrity": "sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", "dependencies": { "@types/unist": "*" } @@ -3692,14 +3813,14 @@ } }, "node_modules/@types/stylis": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.0.tgz", - "integrity": "sha512-n4sx2bqL0mW1tvDf/loQ+aMX7GQD3lc3fkCMC55VFNDu/vBOabO+LTIeXKM14xK0ppk5TUGcWRjiSpIlUpghKw==" + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.5.tgz", + "integrity": "sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw==" }, "node_modules/@types/unist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", - "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==" }, "node_modules/@types/ws": { "version": "8.5.10", @@ -3728,9 +3849,9 @@ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" }, "node_modules/@webassemblyjs/ast": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", - "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", "dependencies": { "@webassemblyjs/helper-numbers": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6" @@ -3747,9 +3868,9 @@ "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==" }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", - "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==" + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==" }, "node_modules/@webassemblyjs/helper-numbers": { "version": "1.11.6", @@ -3767,14 +3888,14 @@ "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==" }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", - "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6" + "@webassemblyjs/wasm-gen": "1.12.1" } }, "node_modules/@webassemblyjs/ieee754": { @@ -3799,26 +3920,26 @@ "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==" }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", - "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-opt": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6", - "@webassemblyjs/wast-printer": "1.11.6" + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", - "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", "@webassemblyjs/leb128": "1.11.6", @@ -3826,22 +3947,22 @@ } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", - "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", "dependencies": { - "@webassemblyjs/ast": "1.11.6", - "@webassemblyjs/helper-buffer": "1.11.6", - "@webassemblyjs/wasm-gen": "1.11.6", - "@webassemblyjs/wasm-parser": "1.11.6" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", - "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@webassemblyjs/helper-api-error": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", "@webassemblyjs/ieee754": "1.11.6", @@ -3850,11 +3971,11 @@ } }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", - "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dependencies": { - "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/ast": "1.12.1", "@xtuc/long": "4.2.2" } }, @@ -3910,10 +4031,10 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-assertions": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", - "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", "peerDependencies": { "acorn": "^8" } @@ -3942,6 +4063,17 @@ "node": ">= 10.0.0" } }, + "node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/aggregate-error": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", @@ -3997,31 +4129,31 @@ } }, "node_modules/algoliasearch": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.23.3.tgz", - "integrity": "sha512-Le/3YgNvjW9zxIQMRhUHuhiUjAlKY/zsdZpfq4dlLqg6mEm0nL6yk+7f2hDOtLpxsgE4jSzDmvHL7nXdBp5feg==", - "dependencies": { - "@algolia/cache-browser-local-storage": "4.23.3", - "@algolia/cache-common": "4.23.3", - "@algolia/cache-in-memory": "4.23.3", - "@algolia/client-account": "4.23.3", - "@algolia/client-analytics": "4.23.3", - "@algolia/client-common": "4.23.3", - "@algolia/client-personalization": "4.23.3", - "@algolia/client-search": "4.23.3", - "@algolia/logger-common": "4.23.3", - "@algolia/logger-console": "4.23.3", - "@algolia/recommend": "4.23.3", - "@algolia/requester-browser-xhr": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/requester-node-http": "4.23.3", - "@algolia/transporter": "4.23.3" + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.24.0.tgz", + "integrity": "sha512-bf0QV/9jVejssFBmz2HQLxUadxk574t4iwjCKp5E7NBzwKkrDEhKPISIIjAU/p6K5qDx3qoeh4+26zWN1jmw3g==", + "dependencies": { + "@algolia/cache-browser-local-storage": "4.24.0", + "@algolia/cache-common": "4.24.0", + "@algolia/cache-in-memory": "4.24.0", + "@algolia/client-account": "4.24.0", + "@algolia/client-analytics": "4.24.0", + "@algolia/client-common": "4.24.0", + "@algolia/client-personalization": "4.24.0", + "@algolia/client-search": "4.24.0", + "@algolia/logger-common": "4.24.0", + "@algolia/logger-console": "4.24.0", + "@algolia/recommend": "4.24.0", + "@algolia/requester-browser-xhr": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/requester-node-http": "4.24.0", + "@algolia/transporter": "4.24.0" } }, "node_modules/algoliasearch-helper": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.21.0.tgz", - "integrity": "sha512-hjVOrL15I3Y3K8xG0icwG1/tWE+MocqBrhW6uVBWpU+/kVEMK0BnM2xdssj6mZM61eJ4iRxHR0djEI3ENOpR8w==", + "version": "3.22.5", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.22.5.tgz", + "integrity": "sha512-lWvhdnc+aKOKx8jyA3bsdEgHzm/sglC4cYdMG4xSQyRiPLJVJtH/IVYZG3Hp6PkTEhQqhyVYkeP9z2IlcHJsWw==", "dependencies": { "@algolia/events": "^4.0.1" }, @@ -4029,6 +4161,41 @@ "algoliasearch": ">= 3.1 < 6" } }, + "node_modules/algoliasearch/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", + "dependencies": { + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/algoliasearch/node_modules/@algolia/client-search": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.24.0.tgz", + "integrity": "sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/algoliasearch/node_modules/@algolia/requester-browser-xhr": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.24.0.tgz", + "integrity": "sha512-Z2NxZMb6+nVXSjF13YpjYTdvV3032YTBSGm2vnYvYPA6mMxzM3v5rsCiSspndn9rzIW4Qp1lPHBvuoKJV6jnAA==", + "dependencies": { + "@algolia/requester-common": "4.24.0" + } + }, + "node_modules/algoliasearch/node_modules/@algolia/requester-node-http": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.24.0.tgz", + "integrity": "sha512-JF18yTjNOVYvU/L3UosRcvbPMGT9B+/GQWNWnenIImglzNVGpyzChkXLnrSf6uxwVNO6ESGu6oN8MqcGQcjQJw==", + "dependencies": { + "@algolia/requester-common": "4.24.0" + } + }, "node_modules/ansi-align": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", @@ -4110,6 +4277,21 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array-flatten": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", @@ -4123,10 +4305,69 @@ "node": ">=8" } }, + "node_modules/array.prototype.filter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/array.prototype.filter/-/array.prototype.filter-1.0.4.tgz", + "integrity": "sha512-r+mCJ7zXgXElgR4IRC+fkvNCeoaavWBs6EdCso5Tbcf+iEMKzBU/His60lt34WEZ9vlb8wDkZvQGcVI5GwkfoQ==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-array-method-boxes-properly": "^1.0.0", + "es-object-atoms": "^1.0.0", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/astring": { - "version": "1.8.6", - "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", - "integrity": "sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/astring/-/astring-1.9.0.tgz", + "integrity": "sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==", "bin": { "astring": "bin/astring" } @@ -4140,9 +4381,9 @@ } }, "node_modules/autoprefixer": { - "version": "10.4.19", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", - "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", "funding": [ { "type": "opencollective", @@ -4158,11 +4399,11 @@ } ], "dependencies": { - "browserslist": "^4.23.0", - "caniuse-lite": "^1.0.30001599", + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", + "picocolors": "^1.0.1", "postcss-value-parser": "^4.2.0" }, "bin": { @@ -4175,6 +4416,20 @@ "postcss": "^8.1.0" } }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/babel-loader": { "version": "9.1.3", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", @@ -4279,9 +4534,9 @@ } }, "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -4291,7 +4546,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -4369,20 +4624,20 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" } }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", "funding": [ { "type": "opencollective", @@ -4398,10 +4653,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" }, "bin": { "browserslist": "cli.js" @@ -4530,9 +4785,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001632", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001632.tgz", - "integrity": "sha512-udx3o7yHJfUxMLkGohMlVHCvFvWmirKh9JAH/d7WOLPetlH+LTL5cocMZ0t7oZx/mdlOWXti97xLZWc8uURRHg==", + "version": "1.0.30001669", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz", + "integrity": "sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==", "funding": [ { "type": "opencollective", @@ -5040,9 +5295,9 @@ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" }, "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "engines": { "node": ">= 0.6" } @@ -5500,6 +5755,54 @@ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==" }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/debounce": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", @@ -5754,6 +6057,12 @@ "node": ">=8" } }, + "node_modules/discontinuous-range": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz", + "integrity": "sha512-c68LpLbO+7kP/b1Hr1qs8/BJ09F5khZGTxqxZuhzxpmwJKOgRFHJWIb9/KmqnqHhLdO55aOxFH/EGBvUQbL/RQ==", + "peer": true + }, "node_modules/dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", @@ -5771,12 +6080,12 @@ } }, "node_modules/docusaurus-plugin-redoc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/docusaurus-plugin-redoc/-/docusaurus-plugin-redoc-2.0.2.tgz", - "integrity": "sha512-J4pfu+dvwm1D4qWA6O8FT6EYSw9R1mv9fIXCqKh7aHYD+OU19hj/vQQUdjIbAwTcOkBg+eUYVXvdopwTvUXNcQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/docusaurus-plugin-redoc/-/docusaurus-plugin-redoc-2.1.1.tgz", + "integrity": "sha512-gf9HbFAKPZu17rbx+3C6vIpfMMTuvUFG8rRKeuHro1B5wUutBSjE5/VjB1owVGjIJQ74OgVKJvgczqUjhcQcjQ==", "dependencies": { - "@redocly/openapi-core": "1.10.3", - "redoc": "2.1.3" + "@redocly/openapi-core": "1.16.0", + "redoc": "2.1.5" }, "engines": { "node": ">=18" @@ -5786,16 +6095,18 @@ } }, "node_modules/docusaurus-theme-redoc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/docusaurus-theme-redoc/-/docusaurus-theme-redoc-2.0.2.tgz", - "integrity": "sha512-qa8svxKCipIvokNGctoQRP3Vz+HTF2Mnwg6xzY/W/LR5TYEIu3nuSvouLLR58uBrHKGzGpto5CEPDq0SvVvDlA==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/docusaurus-theme-redoc/-/docusaurus-theme-redoc-2.1.2.tgz", + "integrity": "sha512-UB6g+YDPjVgFMhJnIUaW/mNl9vsCMbrMQutgdoG5DaI+HpxO2sV+zT2z23Wg6ngi2GM+oxEhYf5Qc1dPwKZqBQ==", "dependencies": { - "@redocly/openapi-core": "1.10.3", + "@redocly/openapi-core": "1.16.0", "clsx": "^1.2.1", "lodash": "^4.17.21", - "mobx": "^6.0.4", - "redoc": "2.1.3", - "styled-components": "^6.0.5" + "mobx": "^6.12.4", + "postcss": "^8.4.45", + "postcss-prefix-selector": "^1.16.1", + "redoc": "2.1.5", + "styled-components": "^6.1.11" }, "engines": { "node": ">=18" @@ -5813,10 +6124,37 @@ "node": ">=6" } }, - "node_modules/dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "node_modules/docusaurus-theme-redoc/node_modules/postcss": { + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", "dependencies": { "utila": "~0.4" } @@ -5860,9 +6198,9 @@ } }, "node_modules/dompurify": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.5.2.tgz", - "integrity": "sha512-5vSyvxRAb45EoWwAktUT3AYqAwXK4FL7si22Cgj46U6ICsj/YJczCN+Bk7WNABIQmpWRymGfslMhrRUZkQNnqA==" + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.1.7.tgz", + "integrity": "sha512-VaTstWtsneJY8xzy7DekmYWEOZcmzIe3Qb3zPd4STve1OBTa+e+WmS1ITQec1fZYXI3HCsOZZiSMpG6oxoWMWQ==" }, "node_modules/domutils": { "version": "3.1.0", @@ -5924,9 +6262,9 @@ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.754", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.754.tgz", - "integrity": "sha512-7Kr5jUdns5rL/M9wFFmMZAgFDuL2YOnanFH4OI4iFzUqyh3XOL7nAGbSlSMZdzKMIyyTpNSbqZsWG9odwLeKvA==" + "version": "1.5.45", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.45.tgz", + "integrity": "sha512-vOzZS6uZwhhbkZbcRyiy99Wg+pYFV5hk+5YaECvx0+Z31NR3Tt5zS6dze2OepT6PCTzVzT0dIJItti+uAW5zmw==" }, "node_modules/emoji-regex": { "version": "9.2.2", @@ -5947,26 +6285,26 @@ } }, "node_modules/emoticon": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-4.0.1.tgz", - "integrity": "sha512-dqx7eA9YaqyvYtUhJwT4rC1HIp82j5ybS1/vQ42ur+jBe17dJMwZE4+gvL1XadSFfxaPFFGt3Xsw+Y8akThDlw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-4.1.0.tgz", + "integrity": "sha512-VWZfnxqwNcc51hIy/sbOdEem6D+cVtpPzEEtVAFdaas30+1dgkyaOQ4sQ6Bp0tOMqWO1v+HQfYaoodOkdhK6SQ==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" } }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "engines": { "node": ">= 0.8" } }, "node_modules/enhanced-resolve": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", - "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -5986,6 +6324,51 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/enzyme": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/enzyme/-/enzyme-3.11.0.tgz", + "integrity": "sha512-Dw8/Gs4vRjxY6/6i9wU0V+utmQO9kvh9XLnz3LIudviOnVYDEe2ec+0k+NQoMamn1VrjKgCUOWj5jG/5M5M0Qw==", + "peer": true, + "dependencies": { + "array.prototype.flat": "^1.2.3", + "cheerio": "^1.0.0-rc.3", + "enzyme-shallow-equal": "^1.0.1", + "function.prototype.name": "^1.1.2", + "has": "^1.0.3", + "html-element-map": "^1.2.0", + "is-boolean-object": "^1.0.1", + "is-callable": "^1.1.5", + "is-number-object": "^1.0.4", + "is-regex": "^1.0.5", + "is-string": "^1.0.5", + "is-subset": "^0.1.1", + "lodash.escape": "^4.0.1", + "lodash.isequal": "^4.5.0", + "object-inspect": "^1.7.0", + "object-is": "^1.0.2", + "object.assign": "^4.1.0", + "object.entries": "^1.1.1", + "object.values": "^1.1.1", + "raf": "^3.4.1", + "rst-selector-parser": "^2.2.3", + "string.prototype.trim": "^1.2.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/enzyme-shallow-equal": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.7.tgz", + "integrity": "sha512-/um0GFqUXnpM9SvKtje+9Tjoz3f1fpBC3eXRFrNs8kpYn69JljciYP7KZTqM/YQbUY9KUjvKB4jo/q+L6WGGvg==", + "dependencies": { + "hasown": "^2.0.0", + "object-is": "^1.1.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -5994,6 +6377,71 @@ "is-arrayish": "^0.2.1" } }, + "node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-array-method-boxes-properly": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", + "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", + "peer": true + }, "node_modules/es-define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", @@ -6018,15 +6466,94 @@ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.4.1.tgz", "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==" }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "peer": true, + "dependencies": { + "hasown": "^2.0.0" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/es6-promise": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", "integrity": "sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==" }, + "node_modules/esast-util-from-estree": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/esast-util-from-estree/-/esast-util-from-estree-2.0.0.tgz", + "integrity": "sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-visit": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/esast-util-from-js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esast-util-from-js/-/esast-util-from-js-2.0.1.tgz", + "integrity": "sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "acorn": "^8.0.0", + "esast-util-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "engines": { "node": ">=6" } @@ -6145,6 +6672,19 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/estree-util-scope": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/estree-util-scope/-/estree-util-scope-1.0.0.tgz", + "integrity": "sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==", + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/estree-util-to-js": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", @@ -6160,12 +6700,11 @@ } }, "node_modules/estree-util-value-to-estree": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.1.1.tgz", - "integrity": "sha512-5mvUrF2suuv5f5cGDnDphIy4/gW86z82kl5qG6mM9z04SEQI4FB5Apmaw/TGEf3l55nLtMs5s51dmhUzvAHQCA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.1.2.tgz", + "integrity": "sha512-S0gW2+XZkmsx00tU2uJ4L9hUT7IFabbml9pHh2WQqFmAbxit++YGZne0sKJbNwkj9Wvg9E4uqWl4nCIFQMmfag==", "dependencies": { - "@types/estree": "^1.0.0", - "is-plain-obj": "^4.0.0" + "@types/estree": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/remcohaszing" @@ -6267,36 +6806,36 @@ } }, "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "version": "4.21.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz", + "integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.10", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -6337,9 +6876,9 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz", + "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==" }, "node_modules/express/node_modules/range-parser": { "version": "1.2.1", @@ -6395,14 +6934,6 @@ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" }, - "node_modules/fast-url-parser": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", - "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", - "dependencies": { - "punycode": "^1.3.2" - } - }, "node_modules/fastq": { "version": "1.15.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", @@ -6518,9 +7049,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -6529,12 +7060,12 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -6615,6 +7146,14 @@ } } }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, "node_modules/foreach": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.6.tgz", @@ -6828,6 +7367,31 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -6878,6 +7442,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/github-slugger": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", @@ -6983,6 +7563,21 @@ "node": ">=4" } }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/globby": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", @@ -7106,6 +7701,22 @@ "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" }, + "node_modules/has": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.4.tgz", + "integrity": "sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -7126,9 +7737,9 @@ } }, "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "engines": { "node": ">= 0.4" }, @@ -7147,6 +7758,20 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-yarn": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-3.0.0.tgz", @@ -7159,9 +7784,9 @@ } }, "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dependencies": { "function-bind": "^1.1.2" }, @@ -7201,9 +7826,9 @@ } }, "node_modules/hast-util-raw": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.2.tgz", - "integrity": "sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.4.tgz", + "integrity": "sha512-LHE65TD2YiNsHD3YuXcKPHXPLuYh/gjp12mOfU8jxSrm1f/yJpsb0F/KKljS6U9LJoP0Ux+tCe8iJ2AsPzTdgA==", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -7251,10 +7876,23 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/hast-util-to-estree/node_modules/inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, + "node_modules/hast-util-to-estree/node_modules/style-to-object": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", + "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, "node_modules/hast-util-to-jsx-runtime": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.0.tgz", - "integrity": "sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.2.tgz", + "integrity": "sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==", "dependencies": { "@types/estree": "^1.0.0", "@types/hast": "^3.0.0", @@ -7277,19 +7915,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/hast-util-to-jsx-runtime/node_modules/inline-style-parser": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.3.tgz", - "integrity": "sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==" - }, - "node_modules/hast-util-to-jsx-runtime/node_modules/style-to-object": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.6.tgz", - "integrity": "sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==", - "dependencies": { - "inline-style-parser": "0.2.3" - } - }, "node_modules/hast-util-to-parse5": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz", @@ -7408,6 +8033,19 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/html-element-map": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/html-element-map/-/html-element-map-1.3.1.tgz", + "integrity": "sha512-6XMlxrAFX4UEEGxctfFnmrFaaZFNf9i5fNuV5wZ3WWQ4FVaNP1aX1LkX9j2mfEx1NpjeE/rL3nmgEn23GdFmrg==", + "peer": true, + "dependencies": { + "array.prototype.filter": "^1.0.0", + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/html-entities": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.4.0.tgz", @@ -7588,9 +8226,9 @@ } }, "node_modules/http-proxy-middleware": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", - "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.7.tgz", + "integrity": "sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA==", "dependencies": { "@types/http-proxy": "^1.17.8", "http-proxy": "^1.18.1", @@ -7638,6 +8276,18 @@ "node": ">=10.19.0" } }, + "node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -7739,9 +8389,9 @@ } }, "node_modules/infima": { - "version": "0.2.0-alpha.43", - "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.43.tgz", - "integrity": "sha512-2uw57LvUqW0rK/SWYnd/2rRfxNA5DDNOh33jxF7fy46VWoNhGxiUQyVZHbBMjQ33mQem0cjdDVwgWVAmlRfgyQ==", + "version": "0.2.0-alpha.44", + "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.44.tgz", + "integrity": "sha512-tuRkUSO/lB3rEhLJk25atwAjgLuzq070+pOW8XcvpHky/YbENnRRdPd85IBkyeTgttmOy5ah+yHYsK1HhUd4lQ==", "engines": { "node": ">=12" } @@ -7766,9 +8416,22 @@ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, "node_modules/inline-style-parser": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", - "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.4.tgz", + "integrity": "sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==" + }, + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } }, "node_modules/interpret": { "version": "1.4.0", @@ -7816,11 +8479,37 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -7832,6 +8521,32 @@ "node": ">=8" } }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-ci": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", @@ -7854,6 +8569,34 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-decimal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-2.0.1.tgz", @@ -7936,6 +8679,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-npm": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-6.0.0.tgz", @@ -7955,6 +8709,20 @@ "node": ">=0.12.0" } }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", @@ -7998,12 +8766,19 @@ "node": ">=0.10.0" } }, - "node_modules/is-reference": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.2.tgz", - "integrity": "sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==", + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dependencies": { - "@types/estree": "*" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-regexp": { @@ -8014,23 +8789,85 @@ "node": ">=0.10.0" } }, - "node_modules/is-root": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", - "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", + "node_modules/is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-subset": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz", + "integrity": "sha512-6Ybun0IkarhmEqxXCNw/C0bna6Zb/TkfUX9UbwJtK6ObwAVCxmAP308WWTHviM/zAqXk05cdhYsUsZeGQh99iw==", + "peer": true + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dependencies": { + "which-typed-array": "^1.1.14" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-typedarray": { @@ -8038,6 +8875,17 @@ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", @@ -8128,9 +8976,9 @@ } }, "node_modules/joi": { - "version": "17.13.1", - "resolved": "https://registry.npmjs.org/joi/-/joi-17.13.1.tgz", - "integrity": "sha512-vaBlIKCyo4FCUtCm7Eu4QZd/q02bWcxfUO6YSXAZOWF6gzcLBeba8kwotUdYJjDLW8Cz8RywsSOqiNJZW0mNvg==", + "version": "17.13.3", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.13.3.tgz", + "integrity": "sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==", "dependencies": { "@hapi/hoek": "^9.3.0", "@hapi/topo": "^5.1.0", @@ -8335,6 +9183,18 @@ "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" }, + "node_modules/lodash.escape": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-4.0.1.tgz", + "integrity": "sha512-nXEOnb/jK9g0DYMr1/Xvq6l5xMD7GDG55+GSYIYmS0G4tBk/hURD4JR9WCavs04t33WmJx9kCyp9vJ+mr4BOUw==", + "peer": true + }, + "node_modules/lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", + "peer": true + }, "node_modules/lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", @@ -8419,9 +9279,9 @@ } }, "node_modules/markdown-table": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.3.tgz", - "integrity": "sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz", + "integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==", "funding": { "type": "github", "url": "https://github.com/sponsors/wooorm" @@ -8484,9 +9344,9 @@ } }, "node_modules/mdast-util-from-markdown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.0.tgz", - "integrity": "sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.1.tgz", + "integrity": "sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==", "dependencies": { "@types/mdast": "^4.0.0", "@types/unist": "^3.0.0", @@ -8568,9 +9428,9 @@ } }, "node_modules/mdast-util-gfm-autolink-literal": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.0.tgz", - "integrity": "sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz", + "integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==", "dependencies": { "@types/mdast": "^4.0.0", "ccount": "^2.0.0", @@ -8695,9 +9555,9 @@ } }, "node_modules/mdast-util-mdx-expression": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.0.tgz", - "integrity": "sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz", + "integrity": "sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/hast": "^3.0.0", @@ -8712,9 +9572,9 @@ } }, "node_modules/mdast-util-mdx-jsx": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.1.2.tgz", - "integrity": "sha512-eKMQDeywY2wlHc97k5eD8VC+9ASMjN8ItEZQNGwJ6E0XWKiW/Z0V5/H8pvoXUf+y+Mj0VIgeRRbujBmFn4FTyA==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.1.3.tgz", + "integrity": "sha512-bfOjvNt+1AcbPLTFMFWY149nJz0OjmewJs3LQQ5pIyVGxP4CdOqNVJL6kTaM5c68p8q82Xv3nCyFfUnuEcH3UQ==", "dependencies": { "@types/estree-jsx": "^1.0.0", "@types/hast": "^3.0.0", @@ -8726,7 +9586,6 @@ "mdast-util-to-markdown": "^2.0.0", "parse-entities": "^4.0.0", "stringify-entities": "^4.0.0", - "unist-util-remove-position": "^5.0.0", "unist-util-stringify-position": "^4.0.0", "vfile-message": "^4.0.0" }, @@ -8766,9 +9625,9 @@ } }, "node_modules/mdast-util-to-hast": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz", - "integrity": "sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==", + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", + "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", "dependencies": { "@types/hast": "^3.0.0", "@types/mdast": "^4.0.0", @@ -8841,9 +9700,12 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -8987,9 +9849,9 @@ ] }, "node_modules/micromark-extension-directive": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-directive/-/micromark-extension-directive-3.0.0.tgz", - "integrity": "sha512-61OI07qpQrERc+0wEysLHMvoiO3s2R56x5u7glHq2Yqq6EHbH4dW25G9GfDdGCDYqA21KE6DWgNSzxSwHc2hSg==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/micromark-extension-directive/-/micromark-extension-directive-3.0.2.tgz", + "integrity": "sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA==", "dependencies": { "devlop": "^1.0.0", "micromark-factory-space": "^2.0.0", @@ -9126,9 +9988,9 @@ } }, "node_modules/micromark-extension-gfm-autolink-literal": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.0.0.tgz", - "integrity": "sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz", + "integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==", "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-sanitize-uri": "^2.0.0", @@ -9175,9 +10037,9 @@ ] }, "node_modules/micromark-extension-gfm-footnote": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.0.0.tgz", - "integrity": "sha512-6Rzu0CYRKDv3BfLAUnZsSlzx3ak6HAoI85KTiijuKIz5UxZxbUI+pD6oHgw+6UtQuiRwnGRhzMmPRv4smcz0fg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz", + "integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==", "dependencies": { "devlop": "^1.0.0", "micromark-core-commonmark": "^2.0.0", @@ -9247,9 +10109,9 @@ ] }, "node_modules/micromark-extension-gfm-strikethrough": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.0.0.tgz", - "integrity": "sha512-c3BR1ClMp5fxxmwP6AoOY2fXO9U8uFMKs4ADD66ahLTNcwzSCyRVU4k7LPV5Nxo/VJiR4TdzxRQY2v3qIUceCw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz", + "integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==", "dependencies": { "devlop": "^1.0.0", "micromark-util-chunked": "^2.0.0", @@ -9279,9 +10141,9 @@ ] }, "node_modules/micromark-extension-gfm-table": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.0.0.tgz", - "integrity": "sha512-PoHlhypg1ItIucOaHmKE8fbin3vTLpDOUg8KAr8gRCF1MOZI9Nquq2i/44wFvviM4WuxJzc3demT8Y3dkfvYrw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.0.tgz", + "integrity": "sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==", "dependencies": { "devlop": "^1.0.0", "micromark-factory-space": "^2.0.0", @@ -9360,9 +10222,9 @@ } }, "node_modules/micromark-extension-gfm-task-list-item": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.0.1.tgz", - "integrity": "sha512-cY5PzGcnULaN5O7T+cOzfMoHjBW7j+T9D2sucA5d/KbsBTPcYdebm9zUd9zzdgJGCwahV+/W78Z3nbulBYVbTw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz", + "integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==", "dependencies": { "devlop": "^1.0.0", "micromark-factory-space": "^2.0.0", @@ -9507,9 +10369,9 @@ ] }, "node_modules/micromark-extension-mdx-jsx": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.0.tgz", - "integrity": "sha512-uvhhss8OGuzR4/N17L1JwvmJIpPhAd8oByMawEKx6NVdBCbesjH4t+vjEp3ZXft9DwvlKSD07fCeI44/N0Vf2w==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.1.tgz", + "integrity": "sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==", "dependencies": { "@types/acorn": "^4.0.0", "@types/estree": "^1.0.0", @@ -9518,6 +10380,7 @@ "micromark-factory-mdx-expression": "^2.0.0", "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", + "micromark-util-events-to-acorn": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0", "vfile-message": "^4.0.0" @@ -9775,9 +10638,9 @@ ] }, "node_modules/micromark-factory-mdx-expression": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.1.tgz", - "integrity": "sha512-F0ccWIUHRLRrYp5TC9ZYXmZo+p2AM13ggbsW4T0b5CRKP8KHVRB8t4pwtBgTxtjRmwrK0Irwm7vs2JOZabHZfg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.2.tgz", + "integrity": "sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==", "funding": [ { "type": "GitHub Sponsors", @@ -9791,6 +10654,7 @@ "dependencies": { "@types/estree": "^1.0.0", "devlop": "^1.0.0", + "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", "micromark-util-events-to-acorn": "^2.0.0", "micromark-util-symbol": "^2.0.0", @@ -9799,6 +10663,25 @@ "vfile-message": "^4.0.0" } }, + "node_modules/micromark-factory-mdx-expression/node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, "node_modules/micromark-factory-mdx-expression/node_modules/micromark-util-character": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", @@ -10538,11 +11421,11 @@ ] }, "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dependencies": { - "braces": "^3.0.2", + "braces": "^3.0.3", "picomatch": "^2.3.1" }, "engines": { @@ -10641,27 +11524,27 @@ } }, "node_modules/mobx": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.12.3.tgz", - "integrity": "sha512-c8NKkO4R2lShkSXZ2Ongj1ycjugjzFFo/UswHBnS62y07DMcTc9Rvo03/3nRyszIvwPNljlkd4S828zIBv/piw==", + "version": "6.13.5", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.13.5.tgz", + "integrity": "sha512-/HTWzW2s8J1Gqt+WmUj5Y0mddZk+LInejADc79NJadrWla3rHzmRHki/mnEUH1AvOmbNTZ1BRbKxr8DSgfdjMA==", "funding": { "type": "opencollective", "url": "https://opencollective.com/mobx" } }, "node_modules/mobx-react": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-7.6.0.tgz", - "integrity": "sha512-+HQUNuh7AoQ9ZnU6c4rvbiVVl+wEkb9WqYsVDzGLng+Dqj1XntHu79PvEWKtSMoMj67vFp/ZPXcElosuJO8ckA==", + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-9.1.1.tgz", + "integrity": "sha512-gVV7AdSrAAxqXOJ2bAbGa5TkPqvITSzaPiiEkzpW4rRsMhSec7C2NBCJYILADHKp2tzOAIETGRsIY0UaCV5aEw==", "dependencies": { - "mobx-react-lite": "^3.4.0" + "mobx-react-lite": "^4.0.7" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/mobx" }, "peerDependencies": { - "mobx": "^6.1.0", + "mobx": "^6.9.0", "react": "^16.8.0 || ^17 || ^18" }, "peerDependenciesMeta": { @@ -10674,15 +11557,18 @@ } }, "node_modules/mobx-react-lite": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-3.4.3.tgz", - "integrity": "sha512-NkJREyFTSUXR772Qaai51BnE1voWx56LOL80xG7qkZr6vo8vEaLF3sz1JNUVh+rxmUzxYaqOhfuxTfqUh0FXUg==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/mobx-react-lite/-/mobx-react-lite-4.0.7.tgz", + "integrity": "sha512-RjwdseshK9Mg8On5tyJZHtGD+J78ZnCnRaxeQDSiciKVQDUbfZcXhmld0VMxAwvcTnPEHZySGGewm467Fcpreg==", + "dependencies": { + "use-sync-external-store": "^1.2.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/mobx" }, "peerDependencies": { - "mobx": "^6.1.0", + "mobx": "^6.9.0", "react": "^16.8.0 || ^17 || ^18" }, "peerDependenciesMeta": { @@ -10694,6 +11580,12 @@ } } }, + "node_modules/moo": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz", + "integrity": "sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==", + "peer": true + }, "node_modules/mrmime": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", @@ -10736,6 +11628,34 @@ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, + "node_modules/nearley": { + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.20.1.tgz", + "integrity": "sha512-+Mc8UaAebFzgV+KpI5n7DasuuQCHA89dmwm7JXw3TV43ukfNQ9DnBH3Mdb2g/I4Fdxc26pwimBWvjIw0UAILSQ==", + "peer": true, + "dependencies": { + "commander": "^2.19.0", + "moo": "^0.5.0", + "railroad-diagrams": "^1.0.0", + "randexp": "0.4.6" + }, + "bin": { + "nearley-railroad": "bin/nearley-railroad.js", + "nearley-test": "bin/nearley-test.js", + "nearley-unparse": "bin/nearley-unparse.js", + "nearleyc": "bin/nearleyc.js" + }, + "funding": { + "type": "individual", + "url": "https://nearley.js.org/#give-to-nearley" + } + }, + "node_modules/nearley/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "peer": true + }, "node_modules/negotiator": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", @@ -10819,9 +11739,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==" }, "node_modules/normalize-path": { "version": "3.0.0", @@ -10947,6 +11867,21 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object-is": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", @@ -10972,6 +11907,37 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.entries": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", + "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.values": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", @@ -11178,9 +12144,9 @@ } }, "node_modules/parse-entities/node_modules/@types/unist": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", - "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz", + "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==" }, "node_modules/parse-json": { "version": "5.2.0", @@ -11205,22 +12171,22 @@ "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" }, "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.0.tgz", + "integrity": "sha512-ZkDsAOcxsUMZ4Lz5fVciOehNcJ+Gb8gTzcA4yl3wnc273BAybYWrQ+Ks/OjCjSEpjvQkDSeZbybK9qj2VHHdGA==", "dependencies": { - "entities": "^4.4.0" + "entities": "^4.5.0" }, "funding": { "url": "https://github.com/inikulin/parse5?sponsor=1" } }, "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz", + "integrity": "sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==", "dependencies": { - "domhandler": "^5.0.2", + "domhandler": "^5.0.3", "parse5": "^7.0.0" }, "funding": { @@ -11284,9 +12250,9 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.9.0.tgz", + "integrity": "sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g==", "dependencies": { "isarray": "0.0.1" } @@ -11304,20 +12270,16 @@ "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" }, - "node_modules/periscopic": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/periscopic/-/periscopic-3.1.0.tgz", - "integrity": "sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==", - "dependencies": { - "@types/estree": "^1.0.0", - "estree-walker": "^3.0.0", - "is-reference": "^3.0.0" - } + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "peer": true }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/picomatch": { "version": "2.3.1", @@ -11430,6 +12392,14 @@ "node": ">=10" } }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/postcss": { "version": "8.4.38", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", @@ -11884,6 +12854,14 @@ "postcss": "^8.4.31" } }, + "node_modules/postcss-prefix-selector": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/postcss-prefix-selector/-/postcss-prefix-selector-1.16.1.tgz", + "integrity": "sha512-Umxu+FvKMwlY6TyDzGFoSUnzW+NOfMBLyC1tAkIjgX+Z/qGspJeRjVC903D7mx7TuBpJlwti2ibXtWuA7fKMeQ==", + "peerDependencies": { + "postcss": ">4 <9" + } + }, "node_modules/postcss-reduce-idents": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-6.0.3.tgz", @@ -12016,9 +12994,9 @@ } }, "node_modules/prism-react-renderer": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-2.3.1.tgz", - "integrity": "sha512-Rdf+HzBLR7KYjzpJ1rSoxT9ioO85nZngQEoFIhL07XhtJHlCU3SOz0GJ6+qvMyQe0Se+BV3qpe6Yd/NmQF5Juw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-2.4.0.tgz", + "integrity": "sha512-327BsVCD/unU4CNLZTWVHyUHKnsqcvj2qbPlQ8MiBE2eq2rgctjigPA1Gp9HLF83kZ20zNN6jgizHJeEsyFYOw==", "dependencies": { "@types/prismjs": "^1.26.0", "clsx": "^2.0.0" @@ -12096,11 +13074,6 @@ "node": ">= 0.10" } }, - "node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" - }, "node_modules/pupa": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/pupa/-/pupa-3.1.0.tgz", @@ -12116,11 +13089,11 @@ } }, "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -12167,6 +13140,34 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "peer": true, + "dependencies": { + "performance-now": "^2.1.0" + } + }, + "node_modules/railroad-diagrams": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", + "integrity": "sha512-cz93DjNeLY0idrCNOH6PviZGRN9GJhsdm9hpn1YCS879fj4W+x5IFJhhkRZcwVgMmFF7R82UA/7Oh+R8lLZg6A==", + "peer": true + }, + "node_modules/randexp": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz", + "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==", + "peer": true, + "dependencies": { + "discontinuous-range": "1.0.0", + "ret": "~0.1.10" + }, + "engines": { + "node": ">=0.12" + } + }, "node_modules/randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -12464,9 +13465,9 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "node_modules/react-json-view-lite": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/react-json-view-lite/-/react-json-view-lite-1.4.0.tgz", - "integrity": "sha512-wh6F6uJyYAmQ4fK0e8dSQMEWuvTs2Wr3el3sLD9bambX1+pSWUVXIz1RFaoy3TI1mZ0FqdpKq9YgbgTTgyrmXA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/react-json-view-lite/-/react-json-view-lite-1.5.0.tgz", + "integrity": "sha512-nWqA1E4jKPklL2jvHWs6s+7Na0qNgw9HCP6xehdQJeg6nPBTFZgGwyko9Q0oj+jQWKTTVRS30u0toM5wiuL3iw==", "engines": { "node": ">=14" }, @@ -12549,24 +13550,28 @@ "react": ">=15" } }, - "node_modules/react-tabs": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-4.3.0.tgz", - "integrity": "sha512-2GfoG+f41kiBIIyd3gF+/GRCCYtamC8/2zlAcD8cqQmqI9Q+YVz7fJLHMmU9pXDVYYHpJeCgUSBJju85vu5q8Q==", + "node_modules/react-shallow-renderer": { + "version": "16.15.0", + "resolved": "https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.15.0.tgz", + "integrity": "sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==", "dependencies": { - "clsx": "^1.1.0", - "prop-types": "^15.5.0" + "object-assign": "^4.1.1", + "react-is": "^16.12.0 || ^17.0.0 || ^18.0.0" }, "peerDependencies": { - "react": "^16.8.0 || ^17.0.0-0 || ^18.0.0" + "react": "^16.0.0 || ^17.0.0 || ^18.0.0" } }, - "node_modules/react-tabs/node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", - "engines": { - "node": ">=6" + "node_modules/react-tabs": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-6.0.2.tgz", + "integrity": "sha512-aQXTKolnM28k3KguGDBSAbJvcowOQr23A+CUJdzJtOSDOtTwzEaJA+1U4KwhNL9+Obe+jFS7geuvA7ICQPXOnQ==", + "dependencies": { + "clsx": "^2.0.0", + "prop-types": "^15.5.0" + }, + "peerDependencies": { + "react": "^18.0.0" } }, "node_modules/readdirp": { @@ -12596,6 +13601,66 @@ "node": ">= 0.10" } }, + "node_modules/recma-build-jsx": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/recma-build-jsx/-/recma-build-jsx-1.0.0.tgz", + "integrity": "sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-util-build-jsx": "^3.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/recma-jsx": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/recma-jsx/-/recma-jsx-1.0.0.tgz", + "integrity": "sha512-5vwkv65qWwYxg+Atz95acp8DMu1JDSqdGkA2Of1j6rCreyFUE/gp15fC8MnGEuG1W68UKjM6x6+YTWIh7hZM/Q==", + "dependencies": { + "acorn-jsx": "^5.0.0", + "estree-util-to-js": "^2.0.0", + "recma-parse": "^1.0.0", + "recma-stringify": "^1.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/recma-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/recma-parse/-/recma-parse-1.0.0.tgz", + "integrity": "sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ==", + "dependencies": { + "@types/estree": "^1.0.0", + "esast-util-from-js": "^2.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/recma-stringify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/recma-stringify/-/recma-stringify-1.0.0.tgz", + "integrity": "sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-util-to-js": "^2.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/recursive-readdir": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", @@ -12608,30 +13673,31 @@ } }, "node_modules/redoc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.1.3.tgz", - "integrity": "sha512-d7F9qLLxaiFW4GC03VkwlX9wuRIpx9aiIIf3o6mzMnqPfhxrn2IRKGndrkJeVdItgCfmg9jXZiFEowm60f1meQ==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.1.5.tgz", + "integrity": "sha512-POSbVg+7WLf+/5/c6GWLxL7+9t2D+1WlZdLN0a6qaCQc+ih3XYzteRBkXEN5kjrYrRNjdspfxTZkDLN5WV3Tzg==", "dependencies": { - "@redocly/openapi-core": "^1.0.0-rc.2", - "classnames": "^2.3.1", + "@cfaester/enzyme-adapter-react-18": "^0.8.0", + "@redocly/openapi-core": "^1.4.0", + "classnames": "^2.3.2", "decko": "^1.2.0", - "dompurify": "^2.2.8", - "eventemitter3": "^4.0.7", + "dompurify": "^3.0.6", + "eventemitter3": "^5.0.1", "json-pointer": "^0.6.2", "lunr": "^2.3.9", "mark.js": "^8.11.1", - "marked": "^4.0.15", - "mobx-react": "^7.2.0", - "openapi-sampler": "^1.3.1", + "marked": "^4.3.0", + "mobx-react": "^9.1.1", + "openapi-sampler": "^1.5.0", "path-browserify": "^1.0.1", "perfect-scrollbar": "^1.5.5", - "polished": "^4.1.3", - "prismjs": "^1.27.0", - "prop-types": "^15.7.2", - "react-tabs": "^4.3.0", + "polished": "^4.2.2", + "prismjs": "^1.29.0", + "prop-types": "^15.8.1", + "react-tabs": "^6.0.2", "slugify": "~1.4.7", "stickyfill": "^1.1.1", - "swagger2openapi": "^7.0.6", + "swagger2openapi": "^7.0.8", "url-template": "^2.0.8" }, "engines": { @@ -12646,13 +13712,18 @@ "styled-components": "^4.1.1 || ^5.1.1 || ^6.0.5" } }, + "node_modules/redoc/node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==" + }, "node_modules/redocusaurus": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/redocusaurus/-/redocusaurus-2.0.2.tgz", - "integrity": "sha512-o71XY24IkqCWVUF39UpVbklvKilbI5LfqPPeD5yhuaME87agsIHpRNdvifdPIK0oAQog4RMjDM+qMRqKUB414A==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/redocusaurus/-/redocusaurus-2.1.2.tgz", + "integrity": "sha512-PqMXxmjAyQ78zdI9W5lUI21a9N9bXDQYj5NuTcjG5xmyn63+KfqF+ugmqh7FbY3Fr9Sud14X6ZDoRGdwVtBDew==", "dependencies": { - "docusaurus-plugin-redoc": "2.0.2", - "docusaurus-theme-redoc": "2.0.2" + "docusaurus-plugin-redoc": "2.1.1", + "docusaurus-theme-redoc": "2.1.2" }, "engines": { "node": ">=14" @@ -12699,6 +13770,23 @@ "@babel/runtime": "^7.8.4" } }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", + "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/regexpu-core": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", @@ -12773,6 +13861,20 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/rehype-recma": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rehype-recma/-/rehype-recma-1.0.0.tgz", + "integrity": "sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==", + "dependencies": { + "@types/estree": "^1.0.0", + "@types/hast": "^3.0.0", + "hast-util-to-estree": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/relateurl": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", @@ -12844,9 +13946,9 @@ } }, "node_modules/remark-mdx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.0.1.tgz", - "integrity": "sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-3.1.0.tgz", + "integrity": "sha512-Ngl/H3YXyBV9RcRNdlYsZujAmhsxwzxpDzpDEhFBVAGthS4GDgnctpDjgFl/ULx5UEDzqtW1cyBSNKqYYrqLBA==", "dependencies": { "mdast-util-mdx": "^3.0.0", "micromark-extension-mdxjs": "^3.0.0" @@ -12872,9 +13974,9 @@ } }, "node_modules/remark-rehype": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.0.tgz", - "integrity": "sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==", + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.1.tgz", + "integrity": "sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==", "dependencies": { "@types/hast": "^3.0.0", "@types/mdast": "^4.0.0", @@ -13071,6 +14173,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "peer": true, + "engines": { + "node": ">=0.12" + } + }, "node_modules/retry": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", @@ -13102,15 +14213,25 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rst-selector-parser": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz", + "integrity": "sha512-nDG1rZeP6oFTLN6yNDV/uiAvs1+FS/KlrEwh7+y7dpuApDBy6bI2HTBcc0/V8lv9OTqfyD34eF7au2pm8aBbhA==", + "peer": true, + "dependencies": { + "lodash.flattendeep": "^4.4.0", + "nearley": "^2.7.10" + } + }, "node_modules/rtl-detect": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.1.2.tgz", "integrity": "sha512-PGMBq03+TTG/p/cRB7HCLKJ1MgDIi07+QU1faSjiYRfmY5UsAttV9Hs08jDAHVwcOwmVLcSJkpwyfXszVjWfIQ==" }, "node_modules/rtlcss": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-4.1.1.tgz", - "integrity": "sha512-/oVHgBtnPNcggP2aVXQjSy6N1mMAfHg4GSag0QtZBlD5bdDgAHwr4pydqJGd+SUCu9260+Pjqbjwtvu7EMH1KQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-4.3.0.tgz", + "integrity": "sha512-FI+pHEn7Wc4NqKXMXFM+VAYKEj/mRIcW4h24YVwVtyjI+EqGrLc2Hx/Ny0lrZ21cBWU2goLy36eqMcNj3AQJig==", "dependencies": { "escalade": "^3.1.1", "picocolors": "^1.0.0", @@ -13146,6 +14267,28 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -13165,15 +14308,31 @@ } ] }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/sax": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", - "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" }, "node_modules/scheduler": { "version": "0.23.2", @@ -13202,9 +14361,9 @@ } }, "node_modules/search-insights": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.14.0.tgz", - "integrity": "sha512-OLN6MsPMCghDOqlCtsIsYgtsC0pnwVTyT9Mu6A3ewOj1DxvzZF6COrn2g86E/c05xbktB0XN04m/t1Z+n+fTGw==", + "version": "2.17.2", + "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.17.2.tgz", + "integrity": "sha512-zFNpOpUO+tY2D85KrxJ+aqwnIfdEGi06UH2+xEb+Bp9Mwznmauqc9djbnBibJO5mpfUPPa8st6Sx65+vbeO45g==", "peer": true }, "node_modules/section-matter": { @@ -13281,9 +14440,9 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", @@ -13316,6 +14475,14 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -13338,24 +14505,23 @@ } }, "node_modules/serve-handler": { - "version": "6.1.5", - "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", - "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.6.tgz", + "integrity": "sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==", "dependencies": { "bytes": "3.0.0", "content-disposition": "0.5.2", - "fast-url-parser": "1.1.3", "mime-types": "2.1.18", "minimatch": "3.1.2", "path-is-inside": "1.0.2", - "path-to-regexp": "2.2.1", + "path-to-regexp": "3.3.0", "range-parser": "1.2.0" } }, "node_modules/serve-handler/node_modules/path-to-regexp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", - "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.3.0.tgz", + "integrity": "sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==" }, "node_modules/serve-index": { "version": "1.9.1", @@ -13428,14 +14594,14 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -13457,6 +14623,20 @@ "node": ">= 0.4" } }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -13695,9 +14875,9 @@ } }, "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "engines": { "node": ">=0.10.0" } @@ -13852,6 +15032,52 @@ "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/stringify-entities": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", @@ -13917,27 +15143,27 @@ } }, "node_modules/style-to-object": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.4.tgz", - "integrity": "sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-1.0.8.tgz", + "integrity": "sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==", "dependencies": { - "inline-style-parser": "0.1.1" + "inline-style-parser": "0.2.4" } }, "node_modules/styled-components": { - "version": "6.1.9", - "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.1.9.tgz", - "integrity": "sha512-aBOqs0uMsYufFXSE4q6cA6Ty1fwZuMk4BJRHfiGSna59F1otnxiDelwhN4fEwmBtIymmF0ZqXHnpSigr2ps9Cg==", + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.1.13.tgz", + "integrity": "sha512-M0+N2xSnAtwcVAQeFEsGWFFxXDftHUD7XrKla06QbpUMmbmtFBMMTcKWvFXtWxuD5qQkB8iU5gk6QASlx2ZRMw==", "dependencies": { - "@emotion/is-prop-valid": "1.2.1", + "@emotion/is-prop-valid": "1.2.2", "@emotion/unitless": "0.8.1", - "@types/stylis": "4.2.0", + "@types/stylis": "4.2.5", "css-to-react-native": "3.2.0", - "csstype": "3.1.2", - "postcss": "8.4.31", + "csstype": "3.1.3", + "postcss": "8.4.38", "shallowequal": "1.1.0", - "stylis": "4.3.1", - "tslib": "2.5.0" + "stylis": "4.3.2", + "tslib": "2.6.2" }, "engines": { "node": ">= 16" @@ -13951,43 +15177,6 @@ "react-dom": ">= 16.8.0" } }, - "node_modules/styled-components/node_modules/csstype": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", - "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" - }, - "node_modules/styled-components/node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/styled-components/node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" - }, "node_modules/stylehacks": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz", @@ -14004,9 +15193,9 @@ } }, "node_modules/stylis": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz", - "integrity": "sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==" + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.2.tgz", + "integrity": "sha512-bhtUjWd/z6ltJiQwg0dUfxEJ+W+jdqQd8TbWLWyeIJHlnsqmGLRFFd8e5mA0AZi/zx90smXRlN66YMTcaSFifg==" }, "node_modules/supports-color": { "version": "7.2.0", @@ -14119,15 +15308,15 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.3.9", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", - "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", "dependencies": { - "@jridgewell/trace-mapping": "^0.3.17", + "@jridgewell/trace-mapping": "^0.3.20", "jest-worker": "^27.4.5", "schema-utils": "^3.1.1", "serialize-javascript": "^6.0.1", - "terser": "^5.16.8" + "terser": "^5.26.0" }, "engines": { "node": ">= 10.13.0" @@ -14353,6 +15542,75 @@ "node": ">= 0.6" } }, + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -14374,6 +15632,20 @@ "node": ">=14.17" } }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/undici-types": { "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", @@ -14424,9 +15696,9 @@ } }, "node_modules/unified": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", - "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", "dependencies": { "@types/unist": "^3.0.0", "bail": "^2.0.0", @@ -14491,19 +15763,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/unist-util-remove-position": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz", - "integrity": "sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==", - "dependencies": { - "@types/unist": "^3.0.0", - "unist-util-visit": "^5.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/unist-util-stringify-position": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", @@ -14560,9 +15819,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "funding": [ { "type": "opencollective", @@ -14578,8 +15837,8 @@ } ], "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" @@ -14666,6 +15925,11 @@ "punycode": "^2.1.0" } }, + "node_modules/uri-js-replace": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uri-js-replace/-/uri-js-replace-1.0.1.tgz", + "integrity": "sha512-W+C9NWNLFOoBI2QWDp4UT9pv65r2w5Cx+3sTYFvtMdDBxkKt1syCqsUdSFAChbEe1uK5TfS04wt/nGwmaeIQ0g==" + }, "node_modules/uri-js/node_modules/punycode": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", @@ -14769,6 +16033,14 @@ "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" }, + "node_modules/use-sync-external-store": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.2.tgz", + "integrity": "sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -14817,12 +16089,11 @@ } }, "node_modules/vfile": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", - "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", "dependencies": { "@types/unist": "^3.0.0", - "unist-util-stringify-position": "^4.0.0", "vfile-message": "^4.0.0" }, "funding": { @@ -14831,9 +16102,9 @@ } }, "node_modules/vfile-location": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.2.tgz", - "integrity": "sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.3.tgz", + "integrity": "sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==", "dependencies": { "@types/unist": "^3.0.0", "vfile": "^6.0.0" @@ -14857,9 +16128,9 @@ } }, "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", "dependencies": { "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" @@ -14891,33 +16162,32 @@ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, "node_modules/webpack": { - "version": "5.89.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz", - "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", + "version": "5.95.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz", + "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==", + "dependencies": { + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", "acorn": "^8.7.1", - "acorn-import-assertions": "^1.9.0", - "browserslist": "^4.14.5", + "acorn-import-attributes": "^1.9.5", + "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.15.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", + "graceful-fs": "^4.2.11", "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", "schema-utils": "^3.2.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", "webpack-sources": "^3.2.3" }, "bin": { @@ -15088,9 +16358,9 @@ "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==" }, "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.14.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.14.2.tgz", - "integrity": "sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", "engines": { "node": ">=10.0.0" }, @@ -15253,6 +16523,39 @@ "node": ">= 8" } }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/widest-line": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", @@ -15341,9 +16644,9 @@ } }, "node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", "engines": { "node": ">=8.3.0" }, diff --git a/package.json b/package.json index 2bc9b13..eae79ee 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "docs-next-hat-com", - "version": "0.15.0", + "version": "0.16.0", "private": true, "scripts": { "docusaurus": "docusaurus", @@ -10,19 +10,19 @@ "clear": "docusaurus clear" }, "dependencies": { - "@docusaurus/core": "^3.4.0", - "@docusaurus/plugin-google-analytics": "^3.4.0", - "@docusaurus/preset-classic": "^3.4.0", - "@mdx-js/react": "^3.0.1", + "@docusaurus/core": "^3.5.2", + "@docusaurus/plugin-google-analytics": "^3.5.2", + "@docusaurus/preset-classic": "^3.5.2", + "@mdx-js/react": "^3.1.0", "clsx": "^2.1.1", - "prism-react-renderer": "^2.3.1", + "prism-react-renderer": "^2.4.0", "raw-loader": "^4.0.2", "react": "^18.3.1", "react-dom": "^18.3.1", - "redocusaurus": "^2.0.2" + "redocusaurus": "^2.1.2" }, "devDependencies": { - "@docusaurus/module-type-aliases": "^3.4.0" + "@docusaurus/module-type-aliases": "^3.5.2" }, "browserslist": { "production": [ diff --git a/sidebars.js b/sidebars.js index ad44384..af42401 100644 --- a/sidebars.js +++ b/sidebars.js @@ -38,19 +38,6 @@ const sidebars = { ], }, ], - samples: [ - { - type: "category", - label: 'Samples', - link: { type: 'doc', id: 'samples/overview' }, - items: [ - { - type: 'autogenerated', - dirName: 'samples', - }, - ], - }, - ], references: [ { type: 'category', diff --git a/src/pages/references/nanocl/daemon/v0.16.jsx b/src/pages/references/nanocl/daemon/v0.16.jsx new file mode 100644 index 0000000..71405ad --- /dev/null +++ b/src/pages/references/nanocl/daemon/v0.16.jsx @@ -0,0 +1,12 @@ +import React from 'react'; +import OpenApi from '@site/src/components/open_api'; + +export default function OpenApiPage() { + return ( + + ); +} diff --git a/static/specs/nanocld/0.16.yaml b/static/specs/nanocld/0.16.yaml new file mode 100644 index 0000000..b20844a --- /dev/null +++ b/static/specs/nanocld/0.16.yaml @@ -0,0 +1,7878 @@ +openapi: 3.1.0 +info: + title: Nanocl Daemon + description: | + The `Nanocl Daemon` is an `HTTP REST API`.
+ It is the `API` the `Nanocl Client` uses, so everything the `Nanocl Client` can do can be done with the `API`. + + Most of the client's commands map directly to API endpoints e.g: `nanocl ps` is `GET /processes`.
+ The notable exception is running `Cargo`, which consists of several `API` calls. + + + ## OpenAPI Specification + This API is documented in **OpenAPI format** using [Utoipa](https://github.com/juhaku/utoipa)
+ The specification is generated automatically when running in development only.
+ When releasing a version, the generated file is transferred to our [Documentation](https://github.com/next-hat/documentation). + + + ## Cross-Origin Resource Sharing + This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/).
+ And that allows cross-domain communication from the browser.
+ All responses have a wildcard same-origin which makes them completely public and accessible to everyone, including any code on any site. + contact: + name: nanocl contributors + email: team@next-hat.com + license: + name: MIT OR Apache-2.0 + version: v0.16.0 +servers: +- url: /{Version} + variables: + Version: + default: v0.16.0 + description: API version +paths: + /_ping: + head: + tags: + - System + summary: Ping the server to check if it is up + operationId: get_ping + responses: + '202': + description: Server is up + /cargoes: + get: + tags: + - Cargoes + summary: List cargoes with optional filter + operationId: list_cargo + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "test" } } } }' + - name: namespace + in: query + description: Namespace where the cargoes belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: List of cargoes + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/CargoSummary' + post: + tags: + - Cargoes + summary: Create a new cargo by it specification + operationId: create_cargo + parameters: + - name: namespace + in: query + description: Namespace where to create the cargo default to 'global' + required: false + schema: + type: + - string + - 'null' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CargoSpecPartial' + required: true + responses: + '201': + description: Cargo created + content: + application/json: + schema: + $ref: '#/components/schemas/Cargo' + '409': + description: Cargo already exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /cargoes/count: + get: + tags: + - Cargoes + summary: Count cargoes with optional filter + operationId: count_cargo + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "my-cargo" } } } }' + - name: namespace + in: query + description: Namespace where the cargoes belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: Count result + content: + application/json: + schema: + $ref: '#/components/schemas/GenericCount' + /cargoes/{cargo_name}/exec: + post: + tags: + - Cargoes + operationId: create_exec_command + parameters: + - name: Name + in: path + description: Name of the cargo + required: true + schema: + type: string + - name: Namespace + in: query + description: Namespace of the cargo + required: false + schema: + type: + - string + - 'null' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateExecOptions' + required: true + responses: + '200': + description: Event Stream of the command output + content: + text/event-stream: {} + '404': + description: Cargo does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /cargoes/{name}: + put: + tags: + - Cargoes + summary: Update a cargo by it's new specification and create a history record + operationId: put_cargo + parameters: + - name: name + in: path + description: Name of the cargo + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the cargoes belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CargoSpecPartial' + required: true + responses: + '200': + description: Cargo updated + content: + application/json: + schema: + $ref: '#/components/schemas/Cargo' + '404': + description: Cargo does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + delete: + tags: + - Cargoes + summary: Delete a cargo by it's name + operationId: delete_cargo + parameters: + - name: name + in: path + description: Name of the cargo + required: true + schema: + type: string + - name: force + in: query + description: If true forces the delete operation even if the cargo is started + required: true + schema: + type: boolean + - name: namespace + in: query + description: Namespace where the cargoes belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '202': + description: Cargo deleted + '404': + description: Cargo does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + patch: + tags: + - Cargoes + summary: Patch a cargo with it's specification meaning merging current spec with the new one and add history record + operationId: patch_cargo + parameters: + - name: name + in: path + description: Name of the cargo + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the cargoes belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CargoSpecUpdate' + required: true + responses: + '200': + description: Cargo updated + content: + application/json: + schema: + $ref: '#/components/schemas/Cargo' + '404': + description: Cargo does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /cargoes/{name}/histories: + get: + tags: + - Cargoes + summary: List cargo histories + operationId: list_cargo_history + parameters: + - name: name + in: path + description: Name of the cargo + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the cargoes belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: List of cargo histories + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/CargoSpec' + '404': + description: Cargo does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /cargoes/{name}/histories/{key}/revert: + patch: + tags: + - Cargoes + summary: Revert a cargo to a specific history record + operationId: revert_cargo + parameters: + - name: name + in: path + description: Name of the cargo + required: true + schema: + type: string + - name: key + in: path + description: Key of the cargo history + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the cargoes belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: Cargo revert + content: + application/json: + schema: + $ref: '#/components/schemas/Cargo' + '404': + description: Cargo does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /cargoes/{name}/inspect: + get: + tags: + - Cargoes + summary: Get detailed information about a cargo by its name + operationId: inspect_cargo + parameters: + - name: name + in: path + description: Name of the cargo + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the cargoes belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: Cargo details + content: + application/json: + schema: + $ref: '#/components/schemas/CargoInspect' + /events: + get: + tags: + - Events + summary: List events with optional filter + operationId: list_event + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "kind": { "eq": "normal" } } } }' + responses: + '200': + description: List of events + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Event' + /events/count: + get: + tags: + - Events + summary: Count events with optional filter + operationId: count_event + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "namespace_name": { "eq": "global" } } } }' + responses: + '200': + description: Count result + content: + application/json: + schema: + $ref: '#/components/schemas/GenericCount' + /events/watch: + post: + tags: + - Events + summary: Watch on new events of all peer nodes with optional condition to stop the stream + operationId: watch_event + requestBody: + content: + application/json: + schema: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/EventCondition' + responses: + '200': + description: Event stream + content: + text/event-stream: + schema: + type: string + /events/{key}/inspect: + get: + tags: + - Events + summary: Get detailed information about an event + operationId: inspect_event + parameters: + - name: key + in: path + description: Key of the event + required: true + schema: + type: string + responses: + '200': + description: Detailed information about the event + content: + application/json: + schema: + $ref: '#/components/schemas/Event' + /exec/{id}/cargo/inspect: + post: + tags: + - Exec + summary: Inspect a command executed in a cargo + operationId: inspect_exec_command + parameters: + - name: id + in: path + description: Exec id to inspect + required: true + schema: + type: string + responses: + '200': + description: Inspect exec infos + content: + application/json: + schema: + $ref: '#/components/schemas/ExecInspectResponse' + '404': + description: Exec instance does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /exec/{id}/cargo/start: + post: + tags: + - Exec + operationId: start_exec_command + parameters: + - name: id + in: path + description: Exec command id + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/StartExecOptions' + required: true + responses: + '200': + description: Event Stream of the command output + content: + text/event-stream: {} + '404': + description: Cargo does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /info: + get: + tags: + - System + summary: Get host/node system information + operationId: get_info + responses: + '200': + description: Host/Node information + content: + application/json: + schema: + $ref: '#/components/schemas/HostInfo' + /jobs: + get: + tags: + - Jobs + summary: List jobs with optional filter + operationId: list_job + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "job-example" } } } }' + responses: + '200': + description: List of jobs + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/JobSummary' + post: + tags: + - Jobs + summary: Create a new job + operationId: create_job + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/JobPartial' + required: true + responses: + '201': + description: Job created + content: + application/json: + schema: + $ref: '#/components/schemas/Job' + '409': + description: Job already exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /jobs/count: + get: + tags: + - Jobs + summary: Count jobs + operationId: count_job + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "key": { "eq": "job-example" } } } }' + responses: + '200': + description: Count result + content: + application/json: + schema: + $ref: '#/components/schemas/GenericCount' + /jobs/{name}: + delete: + tags: + - Jobs + summary: Delete a job by name + operationId: delete_job + parameters: + - name: name + in: path + description: Name of the job + required: true + schema: + type: string + responses: + '202': + description: Job deleted + '404': + description: Job does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /jobs/{name}/inspect: + get: + tags: + - Jobs + summary: Get detailed information about a job + operationId: inspect_job + parameters: + - name: name + in: path + description: Name of the job + required: true + schema: + type: string + responses: + '200': + description: Job details + content: + application/json: + schema: + $ref: '#/components/schemas/JobInspect' + /metrics: + get: + tags: + - Metrics + summary: List metrics with optional filter + operationId: list_metric + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "kind": { "eq": "CPU" } } } }' + responses: + '200': + description: List of metrics + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Metric' + post: + tags: + - Metrics + summary: Create a new metric + operationId: create_metric + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/MetricPartial' + required: true + responses: + '201': + description: Metric created + content: + application/json: + schema: + $ref: '#/components/schemas/Metric' + '409': + description: Metric already exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /metrics/count: + get: + tags: + - Metrics + summary: Count metrics with optional filter + operationId: count_metric + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "kind": { "eq": "ncproxy.io/http" } } } }' + responses: + '200': + description: Count result + content: + application/json: + schema: + $ref: '#/components/schemas/GenericCount' + /metrics/{key}/inspect: + get: + tags: + - Metrics + summary: Get detailed information about a metric + operationId: inspect_metric + parameters: + - name: key + in: path + description: Key of the metric + required: true + schema: + type: string + responses: + '200': + description: Detailed information about a metric + content: + application/json: + schema: + $ref: '#/components/schemas/Metric' + '404': + description: Metric not found + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /namespaces: + get: + tags: + - Namespaces + summary: List namespaces with optional filter + operationId: list_namespace + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "test" } } } }' + responses: + '200': + description: List of namespace + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/NamespaceSummary' + post: + tags: + - Namespaces + summary: Create a new namespace + operationId: create_namespace + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/NamespacePartial' + required: true + responses: + '200': + description: The created namespace + content: + application/json: + schema: + $ref: '#/components/schemas/Namespace' + '409': + description: Namespace already exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /namespaces/count: + get: + tags: + - Namespaces + summary: Count namespaces + operationId: count_namespace + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "global" } } } }' + responses: + '200': + description: Count result + content: + application/json: + schema: + $ref: '#/components/schemas/GenericCount' + /namespaces/{name}: + delete: + tags: + - Namespaces + summary: Delete a namespace + operationId: delete_namespace + parameters: + - name: name + in: path + description: Name of the namespace to delete + required: true + schema: + type: string + responses: + '202': + description: Namespace have been deleted + '404': + description: Namespace is not existing + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /namespaces/{name}/inspect: + get: + tags: + - Namespaces + summary: Get detailed information about a namespace + operationId: inspect_namespace + parameters: + - name: name + in: path + description: The namespace name to inspect + required: true + schema: + type: string + responses: + '200': + description: Detailed information about a namespace + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/NamespaceInspect' + '404': + description: Namespace doesn't exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /nodes: + get: + tags: + - Nodes + summary: List nodes + operationId: list_node + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "test" } } } }' + responses: + '200': + description: List of nodes + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Node' + /nodes/count: + get: + tags: + - Nodes + summary: Count nodes + operationId: count_node + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "test" } } } }' + responses: + '200': + description: List of nodes + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/GenericCount' + /nodes/ws: + get: + tags: + - Nodes + summary: Websocket endpoint for communication between nodes used internally + operationId: node_ws + responses: + '101': + description: Websocket connection + /processes: + get: + tags: + - Processes + summary: List processes with optional filter + operationId: list_processes + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "where": { "name": { "eq": "test" } } }' + responses: + '200': + description: List of instances + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Process' + /processes/count: + get: + tags: + - Processes + summary: Count processes + operationId: count_processes + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "global" } } } }' + responses: + '200': + description: Count result + content: + application/json: + schema: + $ref: '#/components/schemas/GenericCount' + /processes/{kind}/{name}/kill: + post: + tags: + - Processes + summary: Send a signal to all processes of given kind and name (cargo, job, vm) + operationId: kill_processes + parameters: + - name: kind + in: path + description: Kind of the process + required: true + schema: + type: string + example: cargo + - name: name + in: path + description: Name of the process + required: true + schema: + type: string + example: deploy-example + - name: namespace + in: query + description: Namespace where the process belongs if needed + required: false + schema: + type: + - string + - 'null' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CargoKillOptions' + required: true + responses: + '200': + description: Process instances killed + /processes/{kind}/{name}/logs: + get: + tags: + - Processes + summary: Get logs of processes of given kind and name (cargo, job, vm) + operationId: logs_processes + parameters: + - name: kind + in: path + description: Kind of the process + required: true + schema: + type: string + example: cargo + - name: name + in: path + description: Name of the process + required: true + schema: + type: string + example: deploy-example + - name: namespace + in: query + description: Namespace of the process + required: false + schema: + type: + - string + - 'null' + - name: since + in: query + description: Only logs returned since timestamp + required: false + schema: + type: + - integer + - 'null' + format: int64 + - name: until + in: query + description: Only logs returned until timestamp + required: false + schema: + type: + - integer + - 'null' + format: int64 + - name: timestamps + in: query + description: Add timestamps to every log line + required: false + schema: + type: + - boolean + - 'null' + - name: follow + in: query + description: Boolean to return a stream or not + required: false + schema: + type: + - boolean + - 'null' + - name: tail + in: query + description: Only return the n last (integer) or all ('all') logs + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: Process instances logs + content: + application/vdn.nanocl.raw-stream: {} + /processes/{kind}/{name}/restart: + post: + tags: + - Processes + summary: Restart all processes of given kind and name (cargo, job, vm) + operationId: restart_processes + parameters: + - name: kind + in: path + description: Kind of the process + required: true + schema: + type: string + example: cargo + - name: name + in: path + description: Name of the process + required: true + schema: + type: string + example: deploy-example + - name: namespace + in: query + description: Namespace where the process belongs if needed + required: false + schema: + type: + - string + - 'null' + responses: + '202': + description: Process instances restarted + /processes/{kind}/{name}/start: + post: + tags: + - Processes + summary: Start all processes of given kind and name (cargo, job, vm) + operationId: start_processes + parameters: + - name: kind + in: path + description: Kind of the process + required: true + schema: + type: string + example: cargo + - name: name + in: path + description: Name of the process + required: true + schema: + type: string + example: deploy-example + - name: namespace + in: query + description: Namespace where the process belongs if needed + required: false + schema: + type: + - string + - 'null' + responses: + '202': + description: Process instances started + /processes/{kind}/{name}/stats: + get: + tags: + - Processes + summary: Get stats of all processes of given kind and name (cargo, job, vm) + operationId: stats_processes + parameters: + - name: kind + in: path + description: Kind of process + required: true + schema: + type: string + example: cargo + - name: name + in: path + description: Name of the process group + required: true + schema: + type: string + example: deploy-example + - name: namespace + in: query + description: Namespace where the process belongs if needed + required: false + schema: + type: + - string + - 'null' + - name: stream + in: query + description: Return a stream of stats + required: false + schema: + type: + - boolean + - 'null' + - name: one_shot + in: query + description: Return stats only once + required: false + schema: + type: + - boolean + - 'null' + responses: + '200': + description: Process stats + content: + application/vdn.nanocl.raw-stream: + schema: + $ref: '#/components/schemas/ProcessStats' + '404': + description: Process does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /processes/{kind}/{name}/stop: + post: + tags: + - Processes + summary: Stop all processes of given kind and name (cargo, job, vm) + operationId: stop_processes + parameters: + - name: kind + in: path + description: Kind of the process + required: true + schema: + type: string + example: cargo + - name: name + in: path + description: Name of the process + required: true + schema: + type: string + example: deploy-example + - name: namespace + in: query + description: Namespace where the process belongs if needed + required: false + schema: + type: + - string + - 'null' + responses: + '202': + description: Process instances stopped + /processes/{kind}/{name}/wait: + get: + tags: + - Processes + summary: Wait for a all processes to reach a specific state + operationId: wait_processes + parameters: + - name: kind + in: path + description: 'Kind of the process instance eg: (cargo, job, vm)' + required: true + schema: + type: string + example: cargo + - name: name + in: path + description: Name of the process instance + required: true + schema: + type: string + responses: + '200': + description: Process wait stream + content: + application/vdn.nanocl.raw-stream: {} + '404': + description: Process does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /processes/{name}/inspect: + get: + tags: + - Processes + summary: Get detailed information about a process by it's name + operationId: inspect_process + parameters: + - name: name + in: path + description: Name of the process + required: true + schema: + type: string + responses: + '200': + description: Process details + content: + application/json: + schema: + $ref: '#/components/schemas/Process' + '404': + description: Process doesn't exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /processes/{name}/logs: + get: + tags: + - Processes + summary: Get logs of a single process instance by it's name or id + operationId: logs_process + parameters: + - name: name + in: path + description: Name of the process + required: true + schema: + type: string + example: deploy-example + - name: since + in: query + description: Only logs returned since timestamp + required: false + schema: + type: + - integer + - 'null' + format: int64 + - name: until + in: query + description: Only logs returned until timestamp + required: false + schema: + type: + - integer + - 'null' + format: int64 + - name: timestamps + in: query + description: Add timestamps to every log line + required: false + schema: + type: + - boolean + - 'null' + - name: follow + in: query + description: Boolean to return a stream or not + required: false + schema: + type: + - boolean + - 'null' + - name: tail + in: query + description: Only return the n last (integer) or all ('all') logs + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: Process instances logs + content: + application/vdn.nanocl.raw-stream: {} + /processes/{pk}/start: + post: + tags: + - Processes + summary: Start a single process by it's name or id + operationId: start_process_by_pk + parameters: + - name: pk + in: path + description: Pk of the process + required: true + schema: + type: string + example: '1234567890' + responses: + '202': + description: Process instances started + /resource/kinds: + get: + tags: + - ResourceKinds + summary: List resource kinds + operationId: list_resource_kind + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "test" } } } }' + responses: + '200': + description: List of jobs + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourceKind' + post: + tags: + - ResourceKinds + summary: Create a resource kind + operationId: create_resource_kind + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ResourceKindPartial' + required: true + responses: + '201': + description: Job created + content: + application/json: + schema: + $ref: '#/components/schemas/ResourceKind' + '409': + description: Resource kind already exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /resource/kinds/count: + get: + tags: + - ResourceKinds + summary: Count resource kinds + operationId: count_resource_kind + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "global" } } } }' + responses: + '200': + description: Count result + content: + application/json: + schema: + $ref: '#/components/schemas/GenericCount' + /resource/kinds/{domain}/{name}: + delete: + tags: + - ResourceKinds + summary: Delete a resource kind + operationId: delete_resource_kind + parameters: + - name: domain + in: path + description: Domain of the resource kind + required: true + schema: + type: string + - name: name + in: path + description: Name of the resource kind + required: true + schema: + type: string + responses: + '202': + description: Resource kind deleted + '404': + description: Resource kind doesn't exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /resource/kinds/{domain}/{name}/inspect: + get: + tags: + - ResourceKinds + summary: Get detailed information about a resource kind + operationId: inspect_resource_kind + parameters: + - name: domain + in: path + description: Domain of the resource kind + required: true + schema: + type: string + - name: name + in: path + description: Name of the resource kind + required: true + schema: + type: string + responses: + '200': + description: Details about a resource kind + content: + application/json: + schema: + $ref: '#/components/schemas/ResourceKindInspect' + '404': + description: Resource kind doesn't exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /resource/kinds/{domain}/{name}/version/{version}: + get: + tags: + - ResourceKinds + summary: Get detailed information about a resource kind version + operationId: inspect_resource_kind_version + parameters: + - name: domain + in: path + description: Domain of the resource kind + required: true + schema: + type: string + - name: name + in: path + description: Name of the resource kind + required: true + schema: + type: string + - name: version + in: path + description: Version of the resource kind + required: true + schema: + type: string + responses: + '200': + description: Details about a resource kind + content: + application/json: + schema: + $ref: '#/components/schemas/ResourceKindVersion' + '404': + description: Resource kind doesn't exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /resources: + get: + tags: + - Resources + summary: List resources with optional filter + operationId: list_resource + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "kind": { "eq": "ncproxy.io/rule" } } } }' + responses: + '200': + description: List of resources + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Resource' + post: + tags: + - Resources + summary: Create a new resource + operationId: create_resource + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ResourcePartial' + required: true + responses: + '200': + description: The created resource + content: + application/json: + schema: + $ref: '#/components/schemas/Resource' + '409': + description: Resource already exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /resources/count: + get: + tags: + - Resources + summary: Count resources + operationId: count_resource + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "global" } } } }' + responses: + '200': + description: Count result + content: + application/json: + schema: + $ref: '#/components/schemas/GenericCount' + /resources/{name}: + put: + tags: + - Resources + summary: Create a new resource spec and add history entry + operationId: put_resource + parameters: + - name: name + in: path + description: Name of the resource + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/ResourceUpdate' + required: true + responses: + '200': + description: Resource updated + content: + application/json: + schema: + $ref: '#/components/schemas/Resource' + '404': + description: Resource does not exit + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + delete: + tags: + - Resources + summary: Delete a resource by name + operationId: delete_resource + parameters: + - name: name + in: path + description: The resource name to delete + required: true + schema: + type: string + responses: + '202': + description: The resource and his history has been deleted + '404': + description: Resource doesn't exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /resources/{name}/histories: + get: + tags: + - Resources + summary: List resource history + operationId: list_resource_history + parameters: + - name: name + in: path + description: The resource name to list history + required: true + schema: + type: string + responses: + '200': + description: The resource history + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/ResourceSpec' + '404': + description: Resource is not existing + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /resources/{name}/histories/{id}/revert: + patch: + tags: + - Resources + summary: Revert a resource to a specific history + operationId: revert_resource + parameters: + - name: name + in: path + description: The resource name to revert + required: true + schema: + type: string + - name: id + in: path + description: The resource history id to revert to + required: true + schema: + type: string + responses: + '200': + description: The resource has been revert + content: + application/json: + schema: + $ref: '#/components/schemas/Resource' + '404': + description: Resource doesn't exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /resources/{name}/inspect: + get: + tags: + - Resources + summary: Get detailed information about a resource + operationId: inspect_resource + parameters: + - name: name + in: path + description: The resource name to inspect + required: true + schema: + type: string + responses: + '200': + description: Detailed information about a resource + content: + application/json: + schema: + $ref: '#/components/schemas/Resource' + '404': + description: Resource doesn't exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /secrets: + get: + tags: + - Secrets + summary: List secret with optional filter + operationId: list_secret + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "kind": { "eq": "Env" } } } }' + responses: + '200': + description: List of secret + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Secret' + post: + tags: + - Secrets + summary: Create a new secret + operationId: create_secret + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SecretPartial' + required: true + responses: + '200': + description: List of secret + content: + application/json: + schema: + $ref: '#/components/schemas/Secret' + '409': + description: Secret already exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /secrets/count: + get: + tags: + - Secrets + summary: Count secrets + operationId: count_secret + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "global" } } } }' + responses: + '200': + description: Count result + content: + application/json: + schema: + $ref: '#/components/schemas/GenericCount' + /secrets/{key}: + delete: + tags: + - Secrets + summary: Delete a secret + operationId: delete_secret + parameters: + - name: key + in: path + description: Key of the secret + required: true + schema: + type: string + responses: + '202': + description: Secret have been deleted + '404': + description: Secret doesn't exists + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + patch: + tags: + - Secrets + summary: Update a secret + operationId: patch_secret + parameters: + - name: key + in: path + description: Key of the secret + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/SecretUpdate' + required: true + responses: + '200': + description: Secret patched + content: + application/json: + schema: + $ref: '#/components/schemas/Secret' + '404': + description: Secret does't exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /secrets/{key}/inspect: + get: + tags: + - Secrets + summary: Get detailed information about a secret + operationId: inspect_secret + parameters: + - name: key + in: path + description: Key of the secret + required: true + schema: + type: string + responses: + '200': + description: Detailed information about a secret + content: + application/json: + schema: + $ref: '#/components/schemas/Secret' + '404': + description: Secret doesn't + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /version: + get: + tags: + - System + summary: Get version information + operationId: get_version + responses: + '200': + description: Version information + content: + application/json: + schema: + $ref: '#/components/schemas/BinaryInfo' + /vms: + get: + tags: + - Vms + summary: List virtual machines with optional filter + operationId: list_vm + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "my-vm" } } } }' + - name: namespace + in: query + description: Namespace where the virtual machine belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: List of virtual machine + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/VmSummary' + post: + tags: + - Vms + summary: Create a virtual machine + operationId: create_vm + parameters: + - name: namespace + in: query + description: The namespace of the virtual machine + required: false + schema: + type: + - string + - 'null' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/VmSpecPartial' + required: true + responses: + '200': + description: The virtual machine has been created + content: + application/json: + schema: + $ref: '#/components/schemas/Vm' + '409': + description: The virtual machine already exists + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /vms/images: + get: + tags: + - VmImages + summary: List virtual machine images with optional filter + operationId: list_vm_images + parameters: + - name: filter + in: query + description: Generic filter + required: false + schema: + type: + - string + - 'null' + example: '{ "filter": { "where": { "name": { "eq": "my-image" } } } }' + responses: + '200': + description: List of vm images + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/VmImage' + /vms/images/{name}: + delete: + tags: + - VmImages + summary: Delete a virtual machine image + operationId: delete_vm_image + parameters: + - name: name + in: path + description: The name of the vm image + required: true + schema: + type: string + responses: + '200': + description: Image have been deleted + '404': + description: The vm image does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /vms/images/{name}/clone/{clone_name}: + post: + tags: + - VmImages + summary: Clone a virtual machine image + operationId: clone_vm_image + parameters: + - name: name + in: path + description: The name of the vm image + required: true + schema: + type: string + - name: clone_name + in: path + description: The name of the clone + required: true + schema: + type: string + requestBody: + content: + text/plain: + schema: + type: string + required: true + responses: + '200': + description: The snapshot have been created + content: + application/json: + schema: + $ref: '#/components/schemas/VmImage' + '404': + description: The vm image does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /vms/images/{name}/import: + post: + tags: + - VmImages + summary: Import a virtual machine image from a file + operationId: import_vm_image + parameters: + - name: name + in: path + description: The name of the vm image + required: true + schema: + type: string + requestBody: + content: + text/plain: + schema: + type: string + required: true + responses: + '200': + description: Image have been imported + /vms/images/{name}/resize: + post: + tags: + - VmImages + summary: Resize a virtual machine image + operationId: resize_vm_image + parameters: + - name: name + in: path + description: The name of the vm image + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/VmImageResizePayload' + required: true + responses: + '200': + description: The snapshot have been created + content: + application/json: + schema: + $ref: '#/components/schemas/VmImage' + /vms/images/{name}/snapshot/{snapshot_name}: + post: + tags: + - VmImages + summary: Create a snapshot of a virtual machine image + operationId: snapshot_vm_image + parameters: + - name: name + in: path + description: The name of the vm image + required: true + schema: + type: string + - name: snap + in: path + description: The name of the snapshot + required: true + schema: + type: string + requestBody: + content: + text/plain: + schema: + type: string + required: true + responses: + '200': + description: The snapshot have been created + content: + application/json: + schema: + $ref: '#/components/schemas/VmImage' + /vms/{name}: + delete: + tags: + - Vms + summary: Delete a virtual machine by name + operationId: delete_vm + parameters: + - name: name + in: path + description: The name of the virtual machine + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the virtual machine belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: The virtual machine has been deleted + '404': + description: The virtual machine does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + patch: + tags: + - Vms + summary: Patch a virtual machine config meaning merging current config with the new one and add history entry + operationId: patch_vm + parameters: + - name: name + in: path + description: Name of the virtual machine + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the virtual machine belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/VmSpecUpdate' + required: true + responses: + '200': + description: Updated virtual machine + content: + application/json: + schema: + $ref: '#/components/schemas/Vm' + '404': + description: Virtual machine not found + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /vms/{name}/attach: + get: + tags: + - Vms + summary: Attach to a virtual machine via websocket + operationId: vm_attach + parameters: + - name: name + in: path + description: Name of the virtual machine + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the virtual machine belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '101': + description: Websocket connection + /vms/{name}/histories: + get: + tags: + - Vms + summary: List virtual machine histories + operationId: list_vm_history + parameters: + - name: name + in: path + description: The name of the virtual machine + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the virtual machine belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: The virtual machine histories have been listed + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/VmSpec' + '404': + description: The virtual machine does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' + /vms/{name}/inspect: + get: + tags: + - Vms + summary: Get detailed information about a virtual machine + operationId: inspect_vm + parameters: + - name: name + in: path + description: The name of the virtual machine + required: true + schema: + type: string + - name: namespace + in: query + description: Namespace where the virtual machine belongs default to 'global' + required: false + schema: + type: + - string + - 'null' + responses: + '200': + description: Detailed information about a virtual machine + content: + application/json: + schema: + $ref: '#/components/schemas/VmInspect' + '404': + description: The virtual machine does not exist + content: + application/json: + schema: + $ref: '#/components/schemas/ApiError' +components: + schemas: + Address: + type: object + description: Address represents an IPv4 or IPv6 IP address. + properties: + Addr: + type: + - string + - 'null' + description: IP address. + PrefixLen: + type: + - integer + - 'null' + format: int64 + description: Mask length of the IP address. + Any: + oneOf: + - type: string + - type: number + format: double + - type: boolean + - type: array + items: + $ref: '#/components/schemas/Primitive' + - type: object + additionalProperties: + $ref: '#/components/schemas/Primitive' + propertyNames: + type: string + description: Helper to generate have Any type for [OpenApi](OpenApi) useful for dynamic json objects like [ResourceSpec](ResourceSpec) + ApiError: + type: object + description: |- + When returning a [HttpError](nanocl_error::http::HttpError) + the status code is stripped and the error + is returned as a json object with the message + field set to the error message. + required: + - msg + properties: + msg: + type: string + BinaryInfo: + type: object + description: Details about the binary + required: + - Arch + - Channel + - Version + - CommitId + properties: + Arch: + type: string + description: Arch is the architecture of the current binary + Channel: + type: string + description: Channel is the channel of the current binary + Version: + type: string + description: Version is the version of the current binary + CommitId: + type: string + description: CommitID is the commit id of the current binary + BlkioStats: + type: object + description: I/O statistics for the container. + properties: + io_service_bytes_recursive: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/BlkioStatsEntry' + io_serviced_recursive: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/BlkioStatsEntry' + io_queue_recursive: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/BlkioStatsEntry' + io_service_time_recursive: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/BlkioStatsEntry' + io_wait_time_recursive: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/BlkioStatsEntry' + io_merged_recursive: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/BlkioStatsEntry' + io_time_recursive: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/BlkioStatsEntry' + sectors_recursive: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/BlkioStatsEntry' + BlkioStatsEntry: + type: object + required: + - major + - minor + - op + - value + properties: + major: + type: integer + format: int64 + minimum: 0 + minor: + type: integer + format: int64 + minimum: 0 + op: + type: string + value: + type: integer + format: int64 + minimum: 0 + CPUStats: + type: object + description: General CPU statistics for the container. + required: + - cpu_usage + - throttling_data + properties: + cpu_usage: + $ref: '#/components/schemas/CPUUsage' + system_cpu_usage: + type: + - integer + - 'null' + format: int64 + minimum: 0 + online_cpus: + type: + - integer + - 'null' + format: int64 + minimum: 0 + throttling_data: + $ref: '#/components/schemas/ThrottlingData' + CPUUsage: + type: object + description: CPU usage statistics for the container. + required: + - usage_in_usermode + - total_usage + - usage_in_kernelmode + properties: + percpu_usage: + type: + - array + - 'null' + items: + type: integer + format: int64 + minimum: 0 + usage_in_usermode: + type: integer + format: int64 + minimum: 0 + total_usage: + type: integer + format: int64 + minimum: 0 + usage_in_kernelmode: + type: integer + format: int64 + minimum: 0 + Cargo: + type: object + description: |- + A Cargo is a replicable container + It is used to run one or multiple instances of the same container + You can define the number of replicas you want to run + You can also define the minimum and maximum number of replicas + The cluster will automatically scale the number of replicas to match the number of replicas you want + Cargo contain a specification which is used to create the container + The specification can be updated and the old specification will be kept in the history + That way you can rollback to a previous specification quickly + required: + - NamespaceName + - CreatedAt + - Status + - Spec + properties: + NamespaceName: + type: string + description: Name of the namespace + CreatedAt: + type: string + format: date-time + description: When the cargo was created + Status: + $ref: '#/components/schemas/ObjPsStatus' + description: Status of the cargo + Spec: + $ref: '#/components/schemas/CargoSpec' + description: Specification of the cargo + CargoInspect: + type: object + description: |- + Cargo Inspect is a detailed view of a cargo + It contains all the information about the cargo + It also contains the list of containers + required: + - NamespaceName + - CreatedAt + - InstanceTotal + - InstanceRunning + - Status + - Spec + - Instances + properties: + NamespaceName: + type: string + description: Name of the namespace + CreatedAt: + type: string + format: date-time + description: When the cargo was created + InstanceTotal: + type: integer + description: Number of instances + minimum: 0 + InstanceRunning: + type: integer + description: Number of running instances + minimum: 0 + Status: + $ref: '#/components/schemas/ObjPsStatus' + description: Status of the cargo + Spec: + $ref: '#/components/schemas/CargoSpec' + description: Specification of the cargo + Instances: + type: array + items: + $ref: '#/components/schemas/Process' + description: List of instances + CargoKillOptions: + type: object + description: Options for the kill command + required: + - signal + properties: + signal: + type: string + description: 'Signal to send to the container default: SIGKILL' + CargoSpec: + type: object + description: |- + A cargo spec is the specification of a cargo + It used to know the state of the cargo + It keep tracking of an history when you patch an existing cargo + required: + - Key + - CargoKey + - Version + - CreatedAt + - Name + - Container + properties: + Key: + type: string + format: uuid + description: Unique identifier of the cargo spec + CargoKey: + type: string + description: The key of the cargo + Version: + type: string + description: Version of the spec + CreatedAt: + type: string + format: date-time + description: Creation date of the cargo spec + Name: + type: string + description: Name of the cargo + Metadata: + type: object + description: Metadata of the cargo (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + InitContainer: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/Config' + description: Action to run before the container + Secrets: + type: + - array + - 'null' + items: + type: string + description: List of secrets to use as environment variables + ImagePullSecret: + type: + - string + - 'null' + description: Secret to use when pulling the image + ImagePullPolicy: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ImagePullPolicy' + description: Image pull policy of the cargo + Container: + $ref: '#/components/schemas/Config' + description: Container specification of the cargo + Replication: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ReplicationMode' + description: Replication specification of the cargo + CargoSpecPartial: + type: object + description: A cargo spec partial is used to create a Cargo + required: + - Name + - Container + properties: + Name: + type: string + description: Name of the cargo + Metadata: + type: object + description: Metadata of the cargo (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + InitContainer: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/Config' + description: Action to run before the container + Secrets: + type: + - array + - 'null' + items: + type: string + description: List of secrets to use as environment variables + ImagePullSecret: + type: + - string + - 'null' + description: Secret to use when pulling the image + ImagePullPolicy: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ImagePullPolicy' + description: Image pull policy of the cargo + Container: + $ref: '#/components/schemas/Config' + description: Container specification of the cargo + Replication: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ReplicationMode' + description: Replication specification of the cargo + additionalProperties: false + CargoSpecUpdate: + type: object + description: |- + Payload used to patch a cargo + It will create a new [CargoSpec](CargoSpec) with the new values + It will keep the old values in the history + properties: + Name: + type: + - string + - 'null' + description: New name of the cargo + Metadata: + type: object + description: New metadata of the cargo (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + InitContainer: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/Config' + description: Action to run before the container + Secrets: + type: + - array + - 'null' + items: + type: string + description: List of secrets to use as environment variables + ImagePullSecret: + type: + - string + - 'null' + description: Secret to use when pulling the image + ImagePullPolicy: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ImagePullPolicy' + description: Image pull policy of the cargo + Container: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/Config' + description: New container specification of the cargo + Replication: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ReplicationMode' + description: New replication specification of the cargo + additionalProperties: false + CargoSummary: + type: object + description: |- + A CargoSummary is a summary of a cargo + It's the data structure returned by the list operation + required: + - NamespaceName + - Status + - CreatedAt + - InstanceTotal + - InstanceRunning + - Spec + properties: + NamespaceName: + type: string + description: Name of the namespace + Status: + $ref: '#/components/schemas/ObjPsStatus' + description: Status of the cargo + CreatedAt: + type: string + format: date-time + description: When the cargo was created + InstanceTotal: + type: integer + description: Number of instances + minimum: 0 + InstanceRunning: + type: integer + description: Number of running instances + minimum: 0 + Spec: + $ref: '#/components/schemas/CargoSpec' + description: Specification of the cargo + ClusterInfo: + type: object + description: ClusterInfo represents information about the swarm as is returned by the \"/info\" endpoint. Join-tokens are not included. + properties: + ID: + type: + - string + - 'null' + description: The ID of the swarm. + Version: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ObjectVersion' + CreatedAt: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/String' + description: Date and time at which the swarm was initialised in [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds. + UpdatedAt: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/String' + description: Date and time at which the swarm was last updated in [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds. + Spec: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmSpec' + TLSInfo: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/TlsInfo' + RootRotationInProgress: + type: + - boolean + - 'null' + description: Whether there is currently a root CA rotation in progress for the swarm + DataPathPort: + type: + - integer + - 'null' + format: int32 + description: DataPathPort specifies the data path port number for data traffic. Acceptable port range is 1024 to 49151. If no port is set or is set to 0, the default port (4789) is used. + minimum: 0 + DefaultAddrPool: + type: + - array + - 'null' + items: + type: string + description: Default Address Pool specifies default subnet pools for global scope networks. + SubnetSize: + type: + - integer + - 'null' + format: int32 + description: SubnetSize specifies the subnet size of the networks created from the default subnet pool. + minimum: 0 + Commit: + type: object + description: Commit holds the Git-commit (SHA1) that a binary was built from, as reported in the version-string of external tools, such as `containerd`, or `runC`. + properties: + ID: + type: + - string + - 'null' + description: Actual commit ID of external tool. + Expected: + type: + - string + - 'null' + description: Commit ID of external tool expected by dockerd as set at build time. + Config: + type: object + description: Container to create. + properties: + Hostname: + type: + - string + - 'null' + description: The hostname to use for the container, as a valid RFC 1123 hostname. + Domainname: + type: + - string + - 'null' + description: The domain name to use for the container. + User: + type: + - string + - 'null' + description: The user that commands are run as inside the container. + AttachStdin: + type: + - boolean + - 'null' + description: Whether to attach to `stdin`. + AttachStdout: + type: + - boolean + - 'null' + description: Whether to attach to `stdout`. + AttachStderr: + type: + - boolean + - 'null' + description: Whether to attach to `stderr`. + ExposedPorts: + type: + - object + - 'null' + description: 'An object mapping ports to an empty object in the form: `{\"/\": {}}`' + additionalProperties: + type: object + additionalProperties: + default: null + propertyNames: + default: null + propertyNames: + type: string + Tty: + type: + - boolean + - 'null' + description: Attach standard streams to a TTY, including `stdin` if it is not closed. + OpenStdin: + type: + - boolean + - 'null' + description: Open `stdin` + StdinOnce: + type: + - boolean + - 'null' + description: Close `stdin` after one attached client disconnects + Env: + type: + - array + - 'null' + items: + type: string + description: A list of environment variables to set inside the container in the form `[\"VAR=value\", ...]`. A variable without `=` is removed from the environment, rather than to have an empty value. + Cmd: + type: + - array + - 'null' + items: + type: string + description: Command to run specified as a string or an array of strings. + Healthcheck: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HealthConfig' + description: A TEST to perform TO Check that the container is healthy. + ArgsEscaped: + type: + - boolean + - 'null' + description: Command is already escaped (Windows only) + Image: + type: + - string + - 'null' + description: The name of the image to use when creating the container + Volumes: + type: + - object + - 'null' + description: An object mapping mount point paths inside the container to empty objects. + additionalProperties: + type: object + additionalProperties: + default: null + propertyNames: + default: null + propertyNames: + type: string + WorkingDir: + type: + - string + - 'null' + description: The working directory for commands to run in. + Entrypoint: + type: + - array + - 'null' + items: + type: string + description: The entry point for the container as a string or an array of strings. If the array consists of exactly one empty string (`[\"\"]`) then the entry point is reset to system default (i.e., the entry point used by docker when there is no `ENTRYPOINT` instruction in the `Dockerfile`). + NetworkDisabled: + type: + - boolean + - 'null' + description: Disable networking for the container. + MacAddress: + type: + - string + - 'null' + description: MAC address of the container. + OnBuild: + type: + - array + - 'null' + items: + type: string + description: '`ONBUILD` metadata that were defined in the image''s `Dockerfile`.' + Labels: + type: + - object + - 'null' + description: User-defined key/value metadata. + additionalProperties: + type: string + propertyNames: + type: string + StopSignal: + type: + - string + - 'null' + description: Signal to stop a container as a string or unsigned integer. + StopTimeout: + type: + - integer + - 'null' + format: int64 + description: Timeout to stop a container in seconds. + Shell: + type: + - array + - 'null' + items: + type: string + description: Shell for when `RUN`, `CMD`, and `ENTRYPOINT` uses a shell. + HostConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HostConfig' + description: |- + Container configuration that depends on the host we are running on. + Shell for when `RUN`, `CMD`, and `ENTRYPOINT` uses a shell. + NetworkingConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/NetworkingConfig_String' + description: This container's networking configuration. + ContainerConfig: + type: object + description: Configuration for a container that is portable between hosts. When used as `ContainerConfig` field in an image, `ContainerConfig` is an optional field containing the configuration of the container that was last committed when creating the image. Previous versions of Docker builder used this field to store build cache, and it is not in active use anymore. + properties: + Hostname: + type: + - string + - 'null' + description: The hostname to use for the container, as a valid RFC 1123 hostname. + Domainname: + type: + - string + - 'null' + description: The domain name to use for the container. + User: + type: + - string + - 'null' + description: The user that commands are run as inside the container. + AttachStdin: + type: + - boolean + - 'null' + description: Whether to attach to `stdin`. + AttachStdout: + type: + - boolean + - 'null' + description: Whether to attach to `stdout`. + AttachStderr: + type: + - boolean + - 'null' + description: Whether to attach to `stderr`. + ExposedPorts: + type: + - object + - 'null' + description: 'An object mapping ports to an empty object in the form: `{\"/\": {}}`' + additionalProperties: + type: object + additionalProperties: + default: null + propertyNames: + default: null + propertyNames: + type: string + Tty: + type: + - boolean + - 'null' + description: Attach standard streams to a TTY, including `stdin` if it is not closed. + OpenStdin: + type: + - boolean + - 'null' + description: Open `stdin` + StdinOnce: + type: + - boolean + - 'null' + description: Close `stdin` after one attached client disconnects + Env: + type: + - array + - 'null' + items: + type: string + description: A list of environment variables to set inside the container in the form `[\"VAR=value\", ...]`. A variable without `=` is removed from the environment, rather than to have an empty value. + Cmd: + type: + - array + - 'null' + items: + type: string + description: Command to run specified as a string or an array of strings. + Healthcheck: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HealthConfig' + ArgsEscaped: + type: + - boolean + - 'null' + description: Command is already escaped (Windows only) + Image: + type: + - string + - 'null' + description: The name (or reference) of the image to use when creating the container, or which was used when the container was created. + Volumes: + type: + - object + - 'null' + description: An object mapping mount point paths inside the container to empty objects. + additionalProperties: + type: object + additionalProperties: + default: null + propertyNames: + default: null + propertyNames: + type: string + WorkingDir: + type: + - string + - 'null' + description: The working directory for commands to run in. + Entrypoint: + type: + - array + - 'null' + items: + type: string + description: The entry point for the container as a string or an array of strings. If the array consists of exactly one empty string (`[\"\"]`) then the entry point is reset to system default (i.e., the entry point used by docker when there is no `ENTRYPOINT` instruction in the `Dockerfile`). + NetworkDisabled: + type: + - boolean + - 'null' + description: Disable networking for the container. + MacAddress: + type: + - string + - 'null' + description: 'MAC address of the container. Deprecated: this field is deprecated in API v1.44 and up. Use EndpointSettings.MacAddress instead.' + OnBuild: + type: + - array + - 'null' + items: + type: string + description: '`ONBUILD` metadata that were defined in the image''s `Dockerfile`.' + Labels: + type: + - object + - 'null' + description: User-defined key/value metadata. + additionalProperties: + type: string + propertyNames: + type: string + StopSignal: + type: + - string + - 'null' + description: Signal to stop a container as a string or unsigned integer. + StopTimeout: + type: + - integer + - 'null' + format: int64 + description: Timeout to stop a container in seconds. + Shell: + type: + - array + - 'null' + items: + type: string + description: Shell for when `RUN`, `CMD`, and `ENTRYPOINT` uses a shell. + ContainerInspectResponse: + type: object + properties: + Id: + type: + - string + - 'null' + description: The ID of the container + Created: + type: + - string + - 'null' + description: The time the container was created + Path: + type: + - string + - 'null' + description: The path to the command being run + Args: + type: + - array + - 'null' + items: + type: string + description: The arguments to the command being run + State: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ContainerState' + Image: + type: + - string + - 'null' + description: The container's image ID + ResolvConfPath: + type: + - string + - 'null' + HostnamePath: + type: + - string + - 'null' + HostsPath: + type: + - string + - 'null' + LogPath: + type: + - string + - 'null' + Name: + type: + - string + - 'null' + RestartCount: + type: + - integer + - 'null' + format: int64 + Driver: + type: + - string + - 'null' + Platform: + type: + - string + - 'null' + MountLabel: + type: + - string + - 'null' + ProcessLabel: + type: + - string + - 'null' + AppArmorProfile: + type: + - string + - 'null' + ExecIDs: + type: + - array + - 'null' + items: + type: string + description: IDs of exec instances that are running in the container. + HostConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HostConfig' + GraphDriver: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/GraphDriverData' + SizeRw: + type: + - integer + - 'null' + format: int64 + description: The size of files that have been created or changed by this container. + SizeRootFs: + type: + - integer + - 'null' + format: int64 + description: The total size of all the files in this container. + Mounts: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/MountPoint' + Config: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ContainerConfig' + NetworkSettings: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/NetworkSettings' + ContainerState: + type: object + description: ContainerState stores container's running state. It's part of ContainerJSONBase and will be returned by the \"inspect\" command. + properties: + Status: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ContainerStateStatusEnum' + description: String representation of the container state. Can be one of \"created\", \"running\", \"paused\", \"restarting\", \"removing\", \"exited\", or \"dead\". + Running: + type: + - boolean + - 'null' + description: 'Whether this container is running. Note that a running container can be _paused_. The `Running` and `Paused` booleans are not mutually exclusive: When pausing a container (on Linux), the freezer cgroup is used to suspend all processes in the container. Freezing the process requires the process to be running. As a result, paused containers are both `Running` _and_ `Paused`. Use the `Status` field instead to determine if a container''s state is \"running\".' + Paused: + type: + - boolean + - 'null' + description: Whether this container is paused. + Restarting: + type: + - boolean + - 'null' + description: Whether this container is restarting. + OOMKilled: + type: + - boolean + - 'null' + description: Whether a process within this container has been killed because it ran out of memory since the container was last started. + Dead: + type: + - boolean + - 'null' + Pid: + type: + - integer + - 'null' + format: int64 + description: The process ID of this container + ExitCode: + type: + - integer + - 'null' + format: int64 + description: The last exit code of this container + Error: + type: + - string + - 'null' + StartedAt: + type: + - string + - 'null' + description: The time when this container was last started. + FinishedAt: + type: + - string + - 'null' + description: The time when this container last exited. + Health: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/Health' + ContainerStateStatusEnum: + type: string + enum: + - EMPTY + - created + - running + - paused + - restarting + - removing + - exited + - dead + CreateExecOptions: + type: object + description: Exec configuration used in the [Create Exec API](Docker::create_exec()) + properties: + AttachStdin: + type: + - boolean + - 'null' + description: Attach to `stdin` of the exec command. + AttachStdout: + type: + - boolean + - 'null' + description: Attach to stdout of the exec command. + AttachStderr: + type: + - boolean + - 'null' + description: Attach to stderr of the exec command. + Tty: + type: + - boolean + - 'null' + description: Allocate a pseudo-TTY. + DetachKeys: + type: + - string + - 'null' + description: |- + Override the key sequence for detaching a container. Format is a single character `[a-Z]` + or `ctrl-` where `` is one of: `a-z`, `@`, `^`, `[`, `,` or `_`. + Env: + type: + - array + - 'null' + items: + type: string + description: A list of environment variables in the form `["VAR=value", ...].` + Cmd: + type: + - array + - 'null' + items: + type: string + description: Command to run, as a string or array of strings. + Privileged: + type: + - boolean + - 'null' + description: Runs the exec process with extended privileges. + User: + type: + - string + - 'null' + description: |- + The user, and optionally, group to run the exec process inside the container. Format is one + of: `user`, `user:group`, `uid`, or `uid:gid`. + WorkingDir: + type: + - string + - 'null' + description: The working directory for the exec process inside the container. + DaemonConfig: + type: object + description: |- + Configuration of the daemon + It is used to configure the daemon + required: + - hosts + - state_dir + - gateway + - hostname + - nodes + - advertise_addr + - conf_dir + - gid + properties: + hosts: + type: array + items: + type: string + description: List of hosts to listen on + state_dir: + type: string + description: Path to the state directory + docker_host: + type: string + description: Docker host to use + store_addr: + type: + - string + - 'null' + description: Store address to connect to + gateway: + type: string + description: Host gateway automatically detected to host default gateway if not set + hostname: + type: string + description: Hostname to use for the node automatically detected if not set + nodes: + type: array + items: + type: string + description: List of nodes to join + advertise_addr: + type: string + description: Address to advertise to other nodes + conf_dir: + type: string + description: Config directory + gid: + type: integer + format: int32 + description: Group id + minimum: 0 + ssl: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SslConfig' + description: Optional ssl configuration + DeviceMapping: + type: object + description: A device mapping between the host and container + properties: + PathOnHost: + type: + - string + - 'null' + PathInContainer: + type: + - string + - 'null' + CgroupPermissions: + type: + - string + - 'null' + DeviceRequest: + type: object + description: A request for devices to be sent to device drivers + properties: + Driver: + type: + - string + - 'null' + Count: + type: + - integer + - 'null' + format: int64 + DeviceIDs: + type: + - array + - 'null' + items: + type: string + Capabilities: + type: + - array + - 'null' + items: + type: array + items: + type: string + description: A list of capabilities; an OR list of AND lists of capabilities. + Options: + type: + - object + - 'null' + description: Driver-specific options, specified as a key/value pairs. These options are passed directly to the driver. + additionalProperties: + type: string + propertyNames: + type: string + EndpointIpamConfig: + type: object + description: EndpointIPAMConfig represents an endpoint's IPAM configuration. + properties: + IPv4Address: + type: + - string + - 'null' + IPv6Address: + type: + - string + - 'null' + LinkLocalIPs: + type: + - array + - 'null' + items: + type: string + EndpointSettings: + type: object + description: Configuration for a network endpoint. + properties: + IPAMConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/EndpointIpamConfig' + Links: + type: + - array + - 'null' + items: + type: string + MacAddress: + type: + - string + - 'null' + description: MAC address for the endpoint on this network. The network driver might ignore this parameter. + Aliases: + type: + - array + - 'null' + items: + type: string + NetworkID: + type: + - string + - 'null' + description: Unique ID of the network. + EndpointID: + type: + - string + - 'null' + description: Unique ID for the service endpoint in a Sandbox. + Gateway: + type: + - string + - 'null' + description: Gateway address for this network. + IPAddress: + type: + - string + - 'null' + description: IPv4 address. + IPPrefixLen: + type: + - integer + - 'null' + format: int64 + description: Mask length of the IPv4 address. + IPv6Gateway: + type: + - string + - 'null' + description: IPv6 gateway address. + GlobalIPv6Address: + type: + - string + - 'null' + description: Global IPv6 address. + GlobalIPv6PrefixLen: + type: + - integer + - 'null' + format: int64 + description: Mask length of the global IPv6 address. + DriverOpts: + type: + - object + - 'null' + description: DriverOpts is a mapping of driver options and values. These options are passed directly to the driver and are driver specific. + additionalProperties: + type: string + propertyNames: + type: string + DNSNames: + type: + - array + - 'null' + items: + type: string + description: List of all DNS names an endpoint has on a specific network. This list is based on the container name, network aliases, container short ID, and hostname. These DNS names are non-fully qualified but can contain several dots. You can get fully qualified DNS names by appending `.`. For instance, if container name is `my.ctr` and the network is named `testnet`, `DNSNames` will contain `my.ctr` and the FQDN will be `my.ctr.testnet`. + Event: + type: object + description: Event is a generic event type that is used to notify state changes + required: + - Key + - CreatedAt + - ExpiresAt + - ReportingNode + - ReportingController + - Kind + - Action + - Reason + properties: + Key: + type: string + format: uuid + description: Unique identifier of this event. + CreatedAt: + type: string + format: date-time + description: When the event was created. + ExpiresAt: + type: string + format: date-time + description: When the event expires. + ReportingNode: + type: string + description: Reporting Node is the name of the node where the Event was generated. + ReportingController: + type: string + description: |- + Reporting Controller is the name of the controller that emitted this Event. + e.g. `nanocl.io/core`. This field cannot be empty for new Events. + Kind: + $ref: '#/components/schemas/EventKind' + description: |- + Kind of this event (Error, Normal, Warning), new types could be added in the future. + It is machine-readable. This field cannot be empty for new Events. + Action: + type: string + description: |- + Action is what action was taken/failed regarding to the regarding actor. + It is machine-readable. + This field cannot be empty for new Events and it can have at most 128 characters. + Reason: + type: string + description: |- + Reason is why the action was taken. It is human-readable. + This field cannot be empty for new Events and it can have at most 128 characters. + Note: + type: + - string + - 'null' + description: Human-readable description of the status of this operation + Actor: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/EventActor' + description: Actor contains the object this Event is about. + Related: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/EventActor' + description: |- + Optional secondary actor for more complex actions. + E.g. when regarding actor triggers a creation or deletion of related actor. + Metadata: + type: object + description: Standard metadata. + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + EventActor: + type: object + description: Actor is the actor that triggered the event + required: + - Kind + properties: + Key: + type: + - string + - 'null' + Kind: + $ref: '#/components/schemas/EventActorKind' + Attributes: + type: object + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + EventActorKind: + type: string + description: Kind is the type of event related to the actor kind + enum: + - Namespace + - Cargo + - Vm + - Job + - Resource + - Secret + - Process + - ContainerImage + EventCondition: + type: object + description: Condition to stop watching for events if their are meet + required: + - Kind + - Action + properties: + ActorKey: + type: + - string + - 'null' + ActorKind: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/EventActorKind' + RelatedKey: + type: + - string + - 'null' + RelatedKind: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/EventActorKind' + Kind: + type: array + items: + $ref: '#/components/schemas/EventKind' + Action: + type: array + items: + $ref: '#/components/schemas/NativeEventAction' + EventKind: + type: string + description: Kind of event (Error, Normal, Warning), new types could be added in the future. + enum: + - error + - normal + - warning + ExecInspectResponse: + type: object + properties: + CanRemove: + type: + - boolean + - 'null' + DetachKeys: + type: + - string + - 'null' + ID: + type: + - string + - 'null' + Running: + type: + - boolean + - 'null' + ExitCode: + type: + - integer + - 'null' + format: int64 + ProcessConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ProcessConfig' + OpenStdin: + type: + - boolean + - 'null' + OpenStderr: + type: + - boolean + - 'null' + OpenStdout: + type: + - boolean + - 'null' + ContainerID: + type: + - string + - 'null' + Pid: + type: + - integer + - 'null' + format: int64 + description: The system process ID for the exec process. + GenericCount: + type: object + description: Generic count response + required: + - Count + properties: + Count: + type: integer + format: int64 + description: Number of items + GenericResourcesInner: + type: object + properties: + NamedResourceSpec: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/GenericResourcesInnerNamedResourceSpec' + DiscreteResourceSpec: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/GenericResourcesInnerDiscreteResourceSpec' + GenericResourcesInnerDiscreteResourceSpec: + type: object + properties: + Kind: + type: + - string + - 'null' + Value: + type: + - integer + - 'null' + format: int64 + GenericResourcesInnerNamedResourceSpec: + type: object + properties: + Kind: + type: + - string + - 'null' + Value: + type: + - string + - 'null' + GraphDriverData: + type: object + description: Information about the storage driver used to store the container's and image's filesystem. + required: + - Name + - Data + properties: + Name: + type: string + description: Name of the storage driver. + Data: + type: object + description: Low-level storage metadata, provided as key/value pairs. This information is driver-specific, and depends on the storage-driver in use, and should be used for informational purposes only. + additionalProperties: + type: string + propertyNames: + type: string + HashMap: + type: object + additionalProperties: + oneOf: + - type: 'null' + - type: array + items: + type: object + description: PortBinding represents a binding between a host IP address and a host port. + properties: + HostIp: + type: + - string + - 'null' + description: Host IP address that the container's port is mapped to. + HostPort: + type: + - string + - 'null' + description: Host port number that the container's port is mapped to. + propertyNames: + type: string + Health: + type: object + description: Health stores information about the container's healthcheck results. + properties: + Status: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HealthStatusEnum' + description: Status is one of `none`, `starting`, `healthy` or `unhealthy` - \"none\" Indicates there is no healthcheck - \"starting\" Starting indicates that the container is not yet ready - \"healthy\" Healthy indicates that the container is running correctly - \"unhealthy\" Unhealthy indicates that the container has a problem + FailingStreak: + type: + - integer + - 'null' + format: int64 + description: FailingStreak is the number of consecutive failures + Log: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/HealthcheckResult' + description: Log contains the last few results (oldest first) + HealthConfig: + type: object + description: A test to perform to check that the container is healthy. + properties: + Test: + type: + - array + - 'null' + items: + type: string + description: 'The test to perform. Possible values are: - `[]` inherit healthcheck from image or parent image - `[\"NONE\"]` disable healthcheck - `[\"CMD\", args...]` exec arguments directly - `[\"CMD-SHELL\", command]` run command with system''s default shell' + Interval: + type: + - integer + - 'null' + format: int64 + description: The time to wait between checks in nanoseconds. It should be 0 or at least 1000000 (1 ms). 0 means inherit. + Timeout: + type: + - integer + - 'null' + format: int64 + description: The time to wait before considering the check to have hung. It should be 0 or at least 1000000 (1 ms). 0 means inherit. + Retries: + type: + - integer + - 'null' + format: int64 + description: The number of consecutive failures needed to consider a container as unhealthy. 0 means inherit. + StartPeriod: + type: + - integer + - 'null' + format: int64 + description: Start period for the container to initialize before starting health-retries countdown in nanoseconds. It should be 0 or at least 1000000 (1 ms). 0 means inherit. + StartInterval: + type: + - integer + - 'null' + format: int64 + description: The time to wait between checks in nanoseconds during the start period. It should be 0 or at least 1000000 (1 ms). 0 means inherit. + HealthStatusEnum: + type: string + enum: + - EMPTY + - none + - starting + - healthy + - unhealthy + HealthcheckResult: + type: object + description: HealthcheckResult stores information about a single run of a healthcheck probe + properties: + Start: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/String' + description: Date and time at which this check started in [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds. + End: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/String' + description: Date and time at which this check ended in [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds. + ExitCode: + type: + - integer + - 'null' + format: int64 + description: 'ExitCode meanings: - `0` healthy - `1` unhealthy - `2` reserved (considered unhealthy) - other values: error running probe' + Output: + type: + - string + - 'null' + description: Output from last check + HostConfig: + type: object + description: Container configuration that depends on the host we are running on + properties: + CpuShares: + type: + - integer + - 'null' + format: int64 + description: An integer value representing this container's relative CPU weight versus other containers. + Memory: + type: + - integer + - 'null' + format: int64 + description: Memory limit in bytes. + CgroupParent: + type: + - string + - 'null' + description: Path to `cgroups` under which the container's `cgroup` is created. If the path is not absolute, the path is considered to be relative to the `cgroups` path of the init process. Cgroups are created if they do not already exist. + BlkioWeight: + type: + - integer + - 'null' + format: int32 + description: Block IO weight (relative weight). + minimum: 0 + BlkioWeightDevice: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/ResourcesBlkioWeightDevice' + description: 'Block IO weight (relative device weight) in the form: ``` [{\"Path\": \"device_path\", \"Weight\": weight}] ```' + BlkioDeviceReadBps: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/ThrottleDevice' + description: 'Limit read rate (bytes per second) from a device, in the form: ``` [{\"Path\": \"device_path\", \"Rate\": rate}] ```' + BlkioDeviceWriteBps: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/ThrottleDevice' + description: 'Limit write rate (bytes per second) to a device, in the form: ``` [{\"Path\": \"device_path\", \"Rate\": rate}] ```' + BlkioDeviceReadIOps: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/ThrottleDevice' + description: 'Limit read rate (IO per second) from a device, in the form: ``` [{\"Path\": \"device_path\", \"Rate\": rate}] ```' + BlkioDeviceWriteIOps: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/ThrottleDevice' + description: 'Limit write rate (IO per second) to a device, in the form: ``` [{\"Path\": \"device_path\", \"Rate\": rate}] ```' + CpuPeriod: + type: + - integer + - 'null' + format: int64 + description: The length of a CPU period in microseconds. + CpuQuota: + type: + - integer + - 'null' + format: int64 + description: Microseconds of CPU time that the container can get in a CPU period. + CpuRealtimePeriod: + type: + - integer + - 'null' + format: int64 + description: The length of a CPU real-time period in microseconds. Set to 0 to allocate no time allocated to real-time tasks. + CpuRealtimeRuntime: + type: + - integer + - 'null' + format: int64 + description: The length of a CPU real-time runtime in microseconds. Set to 0 to allocate no time allocated to real-time tasks. + CpusetCpus: + type: + - string + - 'null' + description: CPUs in which to allow execution (e.g., `0-3`, `0,1`). + CpusetMems: + type: + - string + - 'null' + description: Memory nodes (MEMs) in which to allow execution (0-3, 0,1). Only effective on NUMA systems. + Devices: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/DeviceMapping' + description: A list of devices to add to the container. + DeviceCgroupRules: + type: + - array + - 'null' + items: + type: string + description: a list of cgroup rules to apply to the container + DeviceRequests: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/DeviceRequest' + description: A list of requests for devices to be sent to device drivers. + KernelMemoryTCP: + type: + - integer + - 'null' + format: int64 + description: Hard limit for kernel TCP buffer memory (in bytes). Depending on the OCI runtime in use, this option may be ignored. It is no longer supported by the default (runc) runtime. This field is omitted when empty. + MemoryReservation: + type: + - integer + - 'null' + format: int64 + description: Memory soft limit in bytes. + MemorySwap: + type: + - integer + - 'null' + format: int64 + description: Total memory limit (memory + swap). Set as `-1` to enable unlimited swap. + MemorySwappiness: + type: + - integer + - 'null' + format: int64 + description: Tune a container's memory swappiness behavior. Accepts an integer between 0 and 100. + NanoCpus: + type: + - integer + - 'null' + format: int64 + description: CPU quota in units of 10-9 CPUs. + OomKillDisable: + type: + - boolean + - 'null' + description: Disable OOM Killer for the container. + Init: + type: + - boolean + - 'null' + description: Run an init inside the container that forwards signals and reaps processes. This field is omitted if empty, and the default (as configured on the daemon) is used. + PidsLimit: + type: + - integer + - 'null' + format: int64 + description: Tune a container's PIDs limit. Set `0` or `-1` for unlimited, or `null` to not change. + Ulimits: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/ResourcesUlimits' + description: 'A list of resource limits to set in the container. For example: ``` {\"Name\": \"nofile\", \"Soft\": 1024, \"Hard\": 2048} ```' + CpuCount: + type: + - integer + - 'null' + format: int64 + description: The number of usable CPUs (Windows only). On Windows Server containers, the processor resource controls are mutually exclusive. The order of precedence is `CPUCount` first, then `CPUShares`, and `CPUPercent` last. + CpuPercent: + type: + - integer + - 'null' + format: int64 + description: The usable percentage of the available CPUs (Windows only). On Windows Server containers, the processor resource controls are mutually exclusive. The order of precedence is `CPUCount` first, then `CPUShares`, and `CPUPercent` last. + IOMaximumIOps: + type: + - integer + - 'null' + format: int64 + description: Maximum IOps for the container system drive (Windows only) + IOMaximumBandwidth: + type: + - integer + - 'null' + format: int64 + description: Maximum IO in bytes per second for the container system drive (Windows only). + Binds: + type: + - array + - 'null' + items: + type: string + description: 'A list of volume bindings for this container. Each volume binding is a string in one of these forms: - `host-src:container-dest[:options]` to bind-mount a host path into the container. Both `host-src`, and `container-dest` must be an _absolute_ path. - `volume-name:container-dest[:options]` to bind-mount a volume managed by a volume driver into the container. `container-dest` must be an _absolute_ path. `options` is an optional, comma-delimited list of: - `nocopy` disables automatic copying of data from the container path to the volume. The `nocopy` flag only applies to named volumes. - `[ro|rw]` mounts a volume read-only or read-write, respectively. If omitted or set to `rw`, volumes are mounted read-write. - `[z|Z]` applies SELinux labels to allow or deny multiple containers to read and write to the same volume. - `z`: a _shared_ content label is applied to the content. This label indicates that multiple containers can share the volume content, for both reading and writing. - `Z`: a _private unshared_ label is applied to the content. This label indicates that only the current container can use a private volume. Labeling systems such as SELinux require proper labels to be placed on volume content that is mounted into a container. Without a label, the security system can prevent a container''s processes from using the content. By default, the labels set by the host operating system are not modified. - `[[r]shared|[r]slave|[r]private]` specifies mount [propagation behavior](https://www.kernel.org/doc/Documentation/filesystems/sharedsubtree.txt). This only applies to bind-mounted volumes, not internal volumes or named volumes. Mount propagation requires the source mount point (the location where the source directory is mounted in the host operating system) to have the correct propagation properties. For shared volumes, the source mount point must be set to `shared`. For slave volumes, the mount must be set to either `shared` or `slave`.' + ContainerIDFile: + type: + - string + - 'null' + description: Path to a file where the container ID is written + LogConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HostConfigLogConfig' + NetworkMode: + type: + - string + - 'null' + description: 'Network mode to use for this container. Supported standard values are: `bridge`, `host`, `none`, and `container:`. Any other value is taken as a custom network''s name to which this container should connect to.' + PortBindings: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HashMap' + RestartPolicy: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/RestartPolicy' + AutoRemove: + type: + - boolean + - 'null' + description: Automatically remove the container when the container's process exits. This has no effect if `RestartPolicy` is set. + VolumeDriver: + type: + - string + - 'null' + description: Driver that this container uses to mount volumes. + VolumesFrom: + type: + - array + - 'null' + items: + type: string + description: A list of volumes to inherit from another container, specified in the form `[:]`. + Mounts: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/Mount' + description: Specification for mounts to be added to the container. + ConsoleSize: + type: + - array + - 'null' + items: + type: integer + format: int32 + description: Initial console size, as an `[height, width]` array. + Annotations: + type: + - object + - 'null' + description: Arbitrary non-identifying metadata attached to container and provided to the runtime when the container is started. + additionalProperties: + type: string + propertyNames: + type: string + CapAdd: + type: + - array + - 'null' + items: + type: string + description: A list of kernel capabilities to add to the container. Conflicts with option 'Capabilities'. + CapDrop: + type: + - array + - 'null' + items: + type: string + description: A list of kernel capabilities to drop from the container. Conflicts with option 'Capabilities'. + CgroupnsMode: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HostConfigCgroupnsModeEnum' + description: 'cgroup namespace mode for the container. Possible values are: - `\"private\"`: the container runs in its own private cgroup namespace - `\"host\"`: use the host system''s cgroup namespace If not specified, the daemon default is used, which can either be `\"private\"` or `\"host\"`, depending on daemon version, kernel support and configuration.' + Dns: + type: + - array + - 'null' + items: + type: string + description: A list of DNS servers for the container to use. + DnsOptions: + type: + - array + - 'null' + items: + type: string + description: A list of DNS options. + DnsSearch: + type: + - array + - 'null' + items: + type: string + description: A list of DNS search domains. + ExtraHosts: + type: + - array + - 'null' + items: + type: string + description: A list of hostnames/IP mappings to add to the container's `/etc/hosts` file. Specified in the form `[\"hostname:IP\"]`. + GroupAdd: + type: + - array + - 'null' + items: + type: string + description: A list of additional groups that the container process will run as. + IpcMode: + type: + - string + - 'null' + description: 'IPC sharing mode for the container. Possible values are: - `\"none\"`: own private IPC namespace, with /dev/shm not mounted - `\"private\"`: own private IPC namespace - `\"shareable\"`: own private IPC namespace, with a possibility to share it with other containers - `\"container:\"`: join another (shareable) container''s IPC namespace - `\"host\"`: use the host system''s IPC namespace If not specified, daemon default is used, which can either be `\"private\"` or `\"shareable\"`, depending on daemon version and configuration.' + Cgroup: + type: + - string + - 'null' + description: Cgroup to use for the container. + Links: + type: + - array + - 'null' + items: + type: string + description: A list of links for the container in the form `container_name:alias`. + OomScoreAdj: + type: + - integer + - 'null' + format: int64 + description: An integer value containing the score given to the container in order to tune OOM killer preferences. + PidMode: + type: + - string + - 'null' + description: 'Set the PID (Process) Namespace mode for the container. It can be either: - `\"container:\"`: joins another container''s PID namespace - `\"host\"`: use the host''s PID namespace inside the container' + Privileged: + type: + - boolean + - 'null' + description: Gives the container full access to the host. + PublishAllPorts: + type: + - boolean + - 'null' + description: Allocates an ephemeral host port for all of a container's exposed ports. Ports are de-allocated when the container stops and allocated when the container starts. The allocated port might be changed when restarting the container. The port is selected from the ephemeral port range that depends on the kernel. For example, on Linux the range is defined by `/proc/sys/net/ipv4/ip_local_port_range`. + ReadonlyRootfs: + type: + - boolean + - 'null' + description: Mount the container's root filesystem as read only. + SecurityOpt: + type: + - array + - 'null' + items: + type: string + description: A list of string values to customize labels for MLS systems, such as SELinux. + StorageOpt: + type: + - object + - 'null' + description: 'Storage driver options for this container, in the form `{\"size\": \"120G\"}`.' + additionalProperties: + type: string + propertyNames: + type: string + Tmpfs: + type: + - object + - 'null' + description: 'A map of container directories which should be replaced by tmpfs mounts, and their corresponding mount options. For example: ``` { \"/run\": \"rw,noexec,nosuid,size=65536k\" } ```' + additionalProperties: + type: string + propertyNames: + type: string + UTSMode: + type: + - string + - 'null' + description: UTS namespace to use for the container. + UsernsMode: + type: + - string + - 'null' + description: Sets the usernamespace mode for the container when usernamespace remapping option is enabled. + ShmSize: + type: + - integer + - 'null' + format: int64 + description: Size of `/dev/shm` in bytes. If omitted, the system uses 64MB. + Sysctls: + type: + - object + - 'null' + description: 'A list of kernel parameters (sysctls) to set in the container. For example: ``` {\"net.ipv4.ip_forward\": \"1\"} ```' + additionalProperties: + type: string + propertyNames: + type: string + Runtime: + type: + - string + - 'null' + description: Runtime to use with this container. + Isolation: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HostConfigIsolationEnum' + description: Isolation technology of the container. (Windows only) + MaskedPaths: + type: + - array + - 'null' + items: + type: string + description: The list of paths to be masked inside the container (this overrides the default set of paths). + ReadonlyPaths: + type: + - array + - 'null' + items: + type: string + description: The list of paths to be set as read-only inside the container (this overrides the default set of paths). + HostConfigCgroupnsModeEnum: + type: string + enum: + - EMPTY + - private + - host + HostConfigIsolationEnum: + type: string + enum: + - EMPTY + - default + - process + - hyperv + HostConfigLogConfig: + type: object + description: The logging configuration for this container + properties: + Type: + type: + - string + - 'null' + Config: + type: + - object + - 'null' + additionalProperties: + type: string + propertyNames: + type: string + HostInfo: + allOf: + - $ref: '#/components/schemas/SystemInfo' + description: Docker contains information about the docker daemon + - type: object + required: + - HostGateway + - Network + - Config + properties: + HostGateway: + type: string + description: HostGateway is the gateway address of the host + Network: + $ref: '#/components/schemas/Network' + description: Network configuration + Config: + $ref: '#/components/schemas/DaemonConfig' + description: Daemon configuration + description: HostInfo contains information about the host and the docker daemon + ImagePullPolicy: + type: string + description: Policy for pulling images related to process objects (job, cargo, vm) + enum: + - Never + - Always + - IfNotPresent + IndexInfo: + type: object + description: IndexInfo contains information about a registry. + properties: + Name: + type: + - string + - 'null' + description: Name of the registry, such as \"docker.io\". + Mirrors: + type: + - array + - 'null' + items: + type: string + description: List of mirrors, expressed as URIs. + Secure: + type: + - boolean + - 'null' + description: 'Indicates if the registry is part of the list of insecure registries. If `false`, the registry is insecure. Insecure registries accept un-encrypted (HTTP) and/or untrusted (HTTPS with certificates from unknown CAs) communication. > **Warning**: Insecure registries can be useful when running a local > registry. However, because its use creates security vulnerabilities > it should ONLY be enabled for testing purposes. For increased > security, users should add their CA to their system''s list of > trusted CAs instead of enabling this option.' + Official: + type: + - boolean + - 'null' + description: Indicates whether this is an official registry (i.e., Docker Hub / docker.io) + Ipam: + type: object + properties: + Driver: + type: + - string + - 'null' + description: Name of the IPAM driver to use. + Config: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/IpamConfig' + description: 'List of IPAM configuration options, specified as a map: ``` {\"Subnet\": , \"IPRange\": , \"Gateway\": , \"AuxAddress\": } ```' + Options: + type: + - object + - 'null' + description: Driver-specific options, specified as a map. + additionalProperties: + type: string + propertyNames: + type: string + IpamConfig: + type: object + properties: + Subnet: + type: + - string + - 'null' + IPRange: + type: + - string + - 'null' + Gateway: + type: + - string + - 'null' + AuxiliaryAddresses: + type: + - object + - 'null' + additionalProperties: + type: string + propertyNames: + type: string + Job: + type: object + description: A job is a collection of containers to run in sequence as a single unit to act like a command + required: + - Name + - CreatedAt + - UpdatedAt + - Status + - Containers + properties: + Name: + type: string + description: Name of the job + CreatedAt: + type: string + format: date-time + description: When the job have been created + UpdatedAt: + type: string + format: date-time + description: When the job have been updated + Status: + $ref: '#/components/schemas/ObjPsStatus' + description: Status of the job + Secrets: + type: + - array + - 'null' + items: + type: string + description: Secrets to load as environment variables + Metadata: + type: object + description: Metadata (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Schedule: + type: + - string + - 'null' + description: Schedule of the job (cron) + Ttl: + type: + - integer + - 'null' + description: Remove the job after (x) seconds after execution + minimum: 0 + ImagePullSecret: + type: + - string + - 'null' + description: Secret to use when pulling the image + ImagePullPolicy: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ImagePullPolicy' + description: Image pull policy + Containers: + type: array + items: + $ref: '#/components/schemas/Config' + description: Containers to run + JobInspect: + type: object + description: Detailed information about a job + required: + - InstanceTotal + - InstanceSuccess + - InstanceRunning + - InstanceFailed + - Spec + - Instances + properties: + InstanceTotal: + type: integer + description: Number of instances + minimum: 0 + InstanceSuccess: + type: integer + description: Number of instance that succeeded + minimum: 0 + InstanceRunning: + type: integer + description: Number of instance running + minimum: 0 + InstanceFailed: + type: integer + description: Number of instance failed + minimum: 0 + Spec: + $ref: '#/components/schemas/Job' + description: Specification of the job + Instances: + type: array + items: + $ref: '#/components/schemas/Process' + description: List of instances + JobPartial: + type: object + description: Job partial is used to create a new job + required: + - Name + - Containers + properties: + Name: + type: string + description: Name of the job + Secrets: + type: + - array + - 'null' + items: + type: string + description: Secrets to load as environment variables + Metadata: + type: object + description: Metadata (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Schedule: + type: + - string + - 'null' + description: Schedule of the job (cron) + Ttl: + type: + - integer + - 'null' + description: Remove the job after (x) seconds after execution + minimum: 0 + ImagePullSecret: + type: + - string + - 'null' + description: Secret to use when pulling the image + ImagePullPolicy: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ImagePullPolicy' + Containers: + type: array + items: + $ref: '#/components/schemas/Config' + description: List of container to run + additionalProperties: false + JobSummary: + type: object + description: Summary of a job (used in list) + required: + - InstanceTotal + - InstanceSuccess + - InstanceRunning + - InstanceFailed + - Spec + properties: + InstanceTotal: + type: integer + description: Number of instances + minimum: 0 + InstanceSuccess: + type: integer + description: Number of instance that succeeded + minimum: 0 + InstanceRunning: + type: integer + description: Number of instance running + minimum: 0 + InstanceFailed: + type: integer + description: Number of instance failed + minimum: 0 + Spec: + $ref: '#/components/schemas/Job' + description: Specification of the job + LocalNodeState: + type: string + description: |- + Current local status of this node. + Enumeration of values. + Since this enum's variants do not hold data, we can easily define them them as `#[repr(C)]` + which helps with FFI. + enum: + - EMPTY + - inactive + - pending + - active + - error + - locked + MemoryStats: + type: object + description: General memory statistics for the container. + properties: + stats: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/MemoryStatsStats' + max_usage: + type: + - integer + - 'null' + format: int64 + minimum: 0 + usage: + type: + - integer + - 'null' + format: int64 + minimum: 0 + failcnt: + type: + - integer + - 'null' + format: int64 + minimum: 0 + limit: + type: + - integer + - 'null' + format: int64 + minimum: 0 + commit: + type: + - integer + - 'null' + format: int64 + minimum: 0 + commit_peak: + type: + - integer + - 'null' + format: int64 + minimum: 0 + commitbytes: + type: + - integer + - 'null' + format: int64 + minimum: 0 + commitpeakbytes: + type: + - integer + - 'null' + format: int64 + minimum: 0 + privateworkingset: + type: + - integer + - 'null' + format: int64 + minimum: 0 + MemoryStatsStats: + oneOf: + - $ref: '#/components/schemas/MemoryStatsStatsV1' + - $ref: '#/components/schemas/MemoryStatsStatsV2' + description: Granular memory statistics for the container. + MemoryStatsStatsV1: + type: object + description: |- + Granular memory statistics for the container, v1 cgroups. + + Exposed in the docker library [here](https://github.com/moby/moby/blob/40d9e2aff130b42ba0f83d5238b9b53184c8ab3b/daemon/daemon_unix.go#L1436). + required: + - cache + - dirty + - mapped_file + - total_inactive_file + - pgpgout + - rss + - total_mapped_file + - writeback + - unevictable + - pgpgin + - total_unevictable + - pgmajfault + - total_rss + - total_rss_huge + - total_writeback + - total_inactive_anon + - rss_huge + - hierarchical_memory_limit + - total_pgfault + - total_active_file + - active_anon + - total_active_anon + - total_pgpgout + - total_cache + - total_dirty + - inactive_anon + - active_file + - pgfault + - inactive_file + - total_pgmajfault + - total_pgpgin + properties: + cache: + type: integer + format: int64 + minimum: 0 + dirty: + type: integer + format: int64 + minimum: 0 + mapped_file: + type: integer + format: int64 + minimum: 0 + total_inactive_file: + type: integer + format: int64 + minimum: 0 + pgpgout: + type: integer + format: int64 + minimum: 0 + rss: + type: integer + format: int64 + minimum: 0 + total_mapped_file: + type: integer + format: int64 + minimum: 0 + writeback: + type: integer + format: int64 + minimum: 0 + unevictable: + type: integer + format: int64 + minimum: 0 + pgpgin: + type: integer + format: int64 + minimum: 0 + total_unevictable: + type: integer + format: int64 + minimum: 0 + pgmajfault: + type: integer + format: int64 + minimum: 0 + total_rss: + type: integer + format: int64 + minimum: 0 + total_rss_huge: + type: integer + format: int64 + minimum: 0 + total_writeback: + type: integer + format: int64 + minimum: 0 + total_inactive_anon: + type: integer + format: int64 + minimum: 0 + rss_huge: + type: integer + format: int64 + minimum: 0 + hierarchical_memory_limit: + type: integer + format: int64 + minimum: 0 + total_pgfault: + type: integer + format: int64 + minimum: 0 + total_active_file: + type: integer + format: int64 + minimum: 0 + active_anon: + type: integer + format: int64 + minimum: 0 + total_active_anon: + type: integer + format: int64 + minimum: 0 + total_pgpgout: + type: integer + format: int64 + minimum: 0 + total_cache: + type: integer + format: int64 + minimum: 0 + total_dirty: + type: integer + format: int64 + minimum: 0 + inactive_anon: + type: integer + format: int64 + minimum: 0 + active_file: + type: integer + format: int64 + minimum: 0 + pgfault: + type: integer + format: int64 + minimum: 0 + inactive_file: + type: integer + format: int64 + minimum: 0 + total_pgmajfault: + type: integer + format: int64 + minimum: 0 + total_pgpgin: + type: integer + format: int64 + minimum: 0 + hierarchical_memsw_limit: + type: + - integer + - 'null' + format: int64 + minimum: 0 + shmem: + type: + - integer + - 'null' + format: int64 + minimum: 0 + total_shmem: + type: + - integer + - 'null' + format: int64 + minimum: 0 + additionalProperties: false + MemoryStatsStatsV2: + type: object + description: |- + Granular memory statistics for the container, v2 cgroups. + + Exposed in the docker library [here](https://github.com/moby/moby/blob/40d9e2aff130b42ba0f83d5238b9b53184c8ab3b/daemon/daemon_unix.go#L1542). + required: + - anon + - file + - kernel_stack + - slab + - sock + - shmem + - file_mapped + - file_dirty + - file_writeback + - anon_thp + - inactive_anon + - active_anon + - inactive_file + - active_file + - unevictable + - slab_reclaimable + - slab_unreclaimable + - pgfault + - pgmajfault + - workingset_refault + - workingset_activate + - workingset_nodereclaim + - pgrefill + - pgscan + - pgsteal + - pgactivate + - pgdeactivate + - pglazyfree + - pglazyfreed + - thp_fault_alloc + - thp_collapse_alloc + properties: + anon: + type: integer + format: int64 + minimum: 0 + file: + type: integer + format: int64 + minimum: 0 + kernel_stack: + type: integer + format: int64 + minimum: 0 + slab: + type: integer + format: int64 + minimum: 0 + sock: + type: integer + format: int64 + minimum: 0 + shmem: + type: integer + format: int64 + minimum: 0 + file_mapped: + type: integer + format: int64 + minimum: 0 + file_dirty: + type: integer + format: int64 + minimum: 0 + file_writeback: + type: integer + format: int64 + minimum: 0 + anon_thp: + type: integer + format: int64 + minimum: 0 + inactive_anon: + type: integer + format: int64 + minimum: 0 + active_anon: + type: integer + format: int64 + minimum: 0 + inactive_file: + type: integer + format: int64 + minimum: 0 + active_file: + type: integer + format: int64 + minimum: 0 + unevictable: + type: integer + format: int64 + minimum: 0 + slab_reclaimable: + type: integer + format: int64 + minimum: 0 + slab_unreclaimable: + type: integer + format: int64 + minimum: 0 + pgfault: + type: integer + format: int64 + minimum: 0 + pgmajfault: + type: integer + format: int64 + minimum: 0 + workingset_refault: + type: integer + format: int64 + minimum: 0 + workingset_activate: + type: integer + format: int64 + minimum: 0 + workingset_nodereclaim: + type: integer + format: int64 + minimum: 0 + pgrefill: + type: integer + format: int64 + minimum: 0 + pgscan: + type: integer + format: int64 + minimum: 0 + pgsteal: + type: integer + format: int64 + minimum: 0 + pgactivate: + type: integer + format: int64 + minimum: 0 + pgdeactivate: + type: integer + format: int64 + minimum: 0 + pglazyfree: + type: integer + format: int64 + minimum: 0 + pglazyfreed: + type: integer + format: int64 + minimum: 0 + thp_fault_alloc: + type: integer + format: int64 + minimum: 0 + thp_collapse_alloc: + type: integer + format: int64 + minimum: 0 + additionalProperties: false + Metric: + type: object + description: Metric entry + required: + - Key + - CreatedAt + - ExpiresAt + - NodeName + - Kind + - Data + properties: + Key: + type: string + format: uuid + description: The key of the metric in the database `UUID` + CreatedAt: + type: string + format: date-time + description: When the metric was created + ExpiresAt: + type: string + format: date-time + description: When the metric will expire + NodeName: + type: string + description: The node where the metric come from + Kind: + type: string + description: The kind of the metric + Data: + description: The data of the metric + Note: + type: + - string + - 'null' + description: Optional note about the metric + MetricPartial: + type: object + description: Used to create a new metric + required: + - Kind + - Data + properties: + Kind: + type: string + description: The kind of the metric + Data: + description: The data of the metric + Note: + type: + - string + - 'null' + description: Optional note about the metric + Mount: + type: object + properties: + Target: + type: + - string + - 'null' + description: Container path. + Source: + type: + - string + - 'null' + description: Mount source (e.g. a volume name, a host path). + Type: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/MountTypeEnum' + description: 'The mount type. Available types: - `bind` Mounts a file or directory from the host into the container. Must exist prior to creating the container. - `volume` Creates a volume with the given name and options (or uses a pre-existing volume with the same name and options). These are **not** removed when the container is removed. - `tmpfs` Create a tmpfs with the given options. The mount source cannot be specified for tmpfs. - `npipe` Mounts a named pipe from the host into the container. Must exist prior to creating the container. - `cluster` a Swarm cluster volume' + ReadOnly: + type: + - boolean + - 'null' + description: Whether the mount should be read-only. + Consistency: + type: + - string + - 'null' + description: 'The consistency requirement for the mount: `default`, `consistent`, `cached`, or `delegated`.' + BindOptions: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/MountBindOptions' + VolumeOptions: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/MountVolumeOptions' + TmpfsOptions: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/MountTmpfsOptions' + MountBindOptions: + type: object + description: Optional configuration for the `bind` type. + properties: + Propagation: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/MountBindOptionsPropagationEnum' + description: A propagation mode with the value `[r]private`, `[r]shared`, or `[r]slave`. + NonRecursive: + type: + - boolean + - 'null' + description: Disable recursive bind mount. + CreateMountpoint: + type: + - boolean + - 'null' + description: Create mount point on host if missing + ReadOnlyNonRecursive: + type: + - boolean + - 'null' + description: Make the mount non-recursively read-only, but still leave the mount recursive (unless NonRecursive is set to `true` in conjunction). Addded in v1.44, before that version all read-only mounts were non-recursive by default. To match the previous behaviour this will default to `true` for clients on versions prior to v1.44. + ReadOnlyForceRecursive: + type: + - boolean + - 'null' + description: Raise an error if the mount cannot be made recursively read-only. + MountBindOptionsPropagationEnum: + type: string + enum: + - EMPTY + - private + - rprivate + - shared + - rshared + - slave + - rslave + MountPoint: + type: object + description: MountPoint represents a mount point configuration inside the container. This is used for reporting the mountpoints in use by a container. + properties: + Type: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/MountPointTypeEnum' + description: 'The mount type: - `bind` a mount of a file or directory from the host into the container. - `volume` a docker volume with the given `Name`. - `tmpfs` a `tmpfs`. - `npipe` a named pipe from the host into the container. - `cluster` a Swarm cluster volume' + Name: + type: + - string + - 'null' + description: Name is the name reference to the underlying data defined by `Source` e.g., the volume name. + Source: + type: + - string + - 'null' + description: Source location of the mount. For volumes, this contains the storage location of the volume (within `/var/lib/docker/volumes/`). For bind-mounts, and `npipe`, this contains the source (host) part of the bind-mount. For `tmpfs` mount points, this field is empty. + Destination: + type: + - string + - 'null' + description: Destination is the path relative to the container root (`/`) where the `Source` is mounted inside the container. + Driver: + type: + - string + - 'null' + description: Driver is the volume driver used to create the volume (if it is a volume). + Mode: + type: + - string + - 'null' + description: Mode is a comma separated list of options supplied by the user when creating the bind/volume mount. The default is platform-specific (`\"z\"` on Linux, empty on Windows). + RW: + type: + - boolean + - 'null' + description: Whether the mount is mounted writable (read-write). + Propagation: + type: + - string + - 'null' + description: Propagation describes how mounts are propagated from the host into the mount point, and vice-versa. Refer to the [Linux kernel documentation](https://www.kernel.org/doc/Documentation/filesystems/sharedsubtree.txt) for details. This field is not used on Windows. + MountPointTypeEnum: + type: string + enum: + - EMPTY + - bind + - volume + - tmpfs + - npipe + - cluster + MountTmpfsOptions: + type: object + description: Optional configuration for the `tmpfs` type. + properties: + SizeBytes: + type: + - integer + - 'null' + format: int64 + description: The size for the tmpfs mount in bytes. + Mode: + type: + - integer + - 'null' + format: int64 + description: The permission mode for the tmpfs mount in an integer. + MountTypeEnum: + type: string + enum: + - EMPTY + - bind + - volume + - tmpfs + - npipe + - cluster + MountVolumeOptions: + type: object + description: Optional configuration for the `volume` type. + properties: + NoCopy: + type: + - boolean + - 'null' + description: Populate volume with data from the target. + Labels: + type: + - object + - 'null' + description: User-defined key/value metadata. + additionalProperties: + type: string + propertyNames: + type: string + DriverConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/MountVolumeOptionsDriverConfig' + Subpath: + type: + - string + - 'null' + description: Source path inside the volume. Must be relative without any back traversals. + MountVolumeOptionsDriverConfig: + type: object + description: Map of driver specific options + properties: + Name: + type: + - string + - 'null' + description: Name of the driver to use to create the volume. + Options: + type: + - object + - 'null' + description: key/value map of driver specific options. + additionalProperties: + type: string + propertyNames: + type: string + Namespace: + type: object + description: |- + Namespace is a identifier for a set of cargoes + It is used to group cargoes together + required: + - Name + - CreatedAt + properties: + Name: + type: string + description: The name as primary key of the namespace + CreatedAt: + type: string + format: date-time + description: When the namespace was created + Metadata: + description: User defined metadata + NamespaceInspect: + type: object + description: |- + A Namespace Inspect is a detailed view of a namespace + It is used to inspect a namespace + It contains all the information about the namespace + It also contains the list of cargoes + required: + - Name + - Cargoes + properties: + Name: + type: string + description: Name of the namespace + Cargoes: + type: array + items: + $ref: '#/components/schemas/CargoInspect' + description: Number of cargoes + NamespacePartial: + type: object + description: A Namespace partial is a payload used to create a new namespace + required: + - Name + properties: + Name: + type: string + description: Name of the namespace + Metadata: + description: User defined metadata + additionalProperties: false + NamespaceSummary: + type: object + description: |- + A Namespace Summary is a summary of a namespace + It is used to list all the namespaces + It contains the number of cargoes and instances existing in the namespace + required: + - Name + - Cargoes + - Instances + - CreatedAt + properties: + Name: + type: string + description: Name of the namespace + Cargoes: + type: integer + description: Number of cargoes + minimum: 0 + Instances: + type: integer + description: Number of instances + minimum: 0 + CreatedAt: + type: string + format: date-time + description: When the namespace was created + NativeEventAction: + oneOf: + - type: string + enum: + - create + - type: string + enum: + - starting + - type: string + enum: + - start + - type: string + enum: + - updating + - type: string + enum: + - update + - type: string + enum: + - destroying + - type: string + enum: + - destroy + - type: string + enum: + - stopping + - type: string + enum: + - stop + - type: string + enum: + - restart + - type: string + enum: + - finish + - type: string + enum: + - fail + - type: string + enum: + - die + - type: string + enum: + - downloading + - type: string + enum: + - download + - type: object + required: + - other + properties: + other: + type: string + description: Action is the action that triggered the event + Network: + type: object + properties: + Name: + type: + - string + - 'null' + Id: + type: + - string + - 'null' + Created: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/String' + Scope: + type: + - string + - 'null' + Driver: + type: + - string + - 'null' + EnableIPv6: + type: + - boolean + - 'null' + IPAM: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/Ipam' + Internal: + type: + - boolean + - 'null' + Attachable: + type: + - boolean + - 'null' + Ingress: + type: + - boolean + - 'null' + Containers: + type: + - object + - 'null' + additionalProperties: + $ref: '#/components/schemas/NetworkContainer' + propertyNames: + type: string + Options: + type: + - object + - 'null' + additionalProperties: + type: string + propertyNames: + type: string + Labels: + type: + - object + - 'null' + additionalProperties: + type: string + propertyNames: + type: string + NetworkContainer: + type: object + properties: + Name: + type: + - string + - 'null' + EndpointID: + type: + - string + - 'null' + MacAddress: + type: + - string + - 'null' + IPv4Address: + type: + - string + - 'null' + IPv6Address: + type: + - string + - 'null' + NetworkSettings: + type: object + description: NetworkSettings exposes the network settings in the API + properties: + Bridge: + type: + - string + - 'null' + description: Name of the default bridge interface when dockerd's --bridge flag is set. + SandboxID: + type: + - string + - 'null' + description: SandboxID uniquely represents a container's network stack. + HairpinMode: + type: + - boolean + - 'null' + description: 'Indicates if hairpin NAT should be enabled on the virtual interface. Deprecated: This field is never set and will be removed in a future release.' + LinkLocalIPv6Address: + type: + - string + - 'null' + description: 'IPv6 unicast address using the link-local prefix. Deprecated: This field is never set and will be removed in a future release.' + LinkLocalIPv6PrefixLen: + type: + - integer + - 'null' + format: int64 + description: 'Prefix length of the IPv6 unicast address. Deprecated: This field is never set and will be removed in a future release.' + Ports: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/HashMap' + SandboxKey: + type: + - string + - 'null' + description: SandboxKey is the full path of the netns handle + SecondaryIPAddresses: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/Address' + description: 'Deprecated: This field is never set and will be removed in a future release.' + SecondaryIPv6Addresses: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/Address' + description: 'Deprecated: This field is never set and will be removed in a future release.' + EndpointID: + type: + - string + - 'null' + description: 'EndpointID uniquely represents a service endpoint in a Sandbox.


> **Deprecated**: This field is only propagated when attached to the > default \"bridge\" network. Use the information from the \"bridge\" > network inside the `Networks` map instead, which contains the same > information. This field was deprecated in Docker 1.9 and is scheduled > to be removed in Docker 17.12.0' + Gateway: + type: + - string + - 'null' + description: 'Gateway address for the default \"bridge\" network.


> **Deprecated**: This field is only propagated when attached to the > default \"bridge\" network. Use the information from the \"bridge\" > network inside the `Networks` map instead, which contains the same > information. This field was deprecated in Docker 1.9 and is scheduled > to be removed in Docker 17.12.0' + GlobalIPv6Address: + type: + - string + - 'null' + description: 'Global IPv6 address for the default \"bridge\" network.


> **Deprecated**: This field is only propagated when attached to the > default \"bridge\" network. Use the information from the \"bridge\" > network inside the `Networks` map instead, which contains the same > information. This field was deprecated in Docker 1.9 and is scheduled > to be removed in Docker 17.12.0' + GlobalIPv6PrefixLen: + type: + - integer + - 'null' + format: int64 + description: 'Mask length of the global IPv6 address.


> **Deprecated**: This field is only propagated when attached to the > default \"bridge\" network. Use the information from the \"bridge\" > network inside the `Networks` map instead, which contains the same > information. This field was deprecated in Docker 1.9 and is scheduled > to be removed in Docker 17.12.0' + IPAddress: + type: + - string + - 'null' + description: 'IPv4 address for the default \"bridge\" network.


> **Deprecated**: This field is only propagated when attached to the > default \"bridge\" network. Use the information from the \"bridge\" > network inside the `Networks` map instead, which contains the same > information. This field was deprecated in Docker 1.9 and is scheduled > to be removed in Docker 17.12.0' + IPPrefixLen: + type: + - integer + - 'null' + format: int64 + description: 'Mask length of the IPv4 address.


> **Deprecated**: This field is only propagated when attached to the > default \"bridge\" network. Use the information from the \"bridge\" > network inside the `Networks` map instead, which contains the same > information. This field was deprecated in Docker 1.9 and is scheduled > to be removed in Docker 17.12.0' + IPv6Gateway: + type: + - string + - 'null' + description: 'IPv6 gateway address for this network.


> **Deprecated**: This field is only propagated when attached to the > default \"bridge\" network. Use the information from the \"bridge\" > network inside the `Networks` map instead, which contains the same > information. This field was deprecated in Docker 1.9 and is scheduled > to be removed in Docker 17.12.0' + MacAddress: + type: + - string + - 'null' + description: 'MAC address for the container on the default \"bridge\" network.


> **Deprecated**: This field is only propagated when attached to the > default \"bridge\" network. Use the information from the \"bridge\" > network inside the `Networks` map instead, which contains the same > information. This field was deprecated in Docker 1.9 and is scheduled > to be removed in Docker 17.12.0' + Networks: + type: + - object + - 'null' + description: Information about all networks that the container is connected to. + additionalProperties: + $ref: '#/components/schemas/EndpointSettings' + propertyNames: + type: string + NetworkStats: + type: object + description: Network statistics for the container. + required: + - rx_dropped + - rx_bytes + - rx_errors + - tx_packets + - tx_dropped + - rx_packets + - tx_errors + - tx_bytes + properties: + rx_dropped: + type: integer + format: int64 + minimum: 0 + rx_bytes: + type: integer + format: int64 + minimum: 0 + rx_errors: + type: integer + format: int64 + minimum: 0 + tx_packets: + type: integer + format: int64 + minimum: 0 + tx_dropped: + type: integer + format: int64 + minimum: 0 + rx_packets: + type: integer + format: int64 + minimum: 0 + tx_errors: + type: integer + format: int64 + minimum: 0 + tx_bytes: + type: integer + format: int64 + minimum: 0 + NetworkingConfig_String: + type: object + description: This container's networking configuration. + required: + - EndpointsConfig + properties: + EndpointsConfig: + type: object + additionalProperties: + $ref: '#/components/schemas/EndpointSettings' + propertyNames: + type: string + Node: + type: object + required: + - Name + - CreatedAt + - IpAddress + - Endpoint + - Version + properties: + Name: + type: string + description: The name of the node + CreatedAt: + type: string + format: date-time + description: The created at date + IpAddress: + type: string + description: The ip address of the node + Endpoint: + type: string + description: Endpoint to connect to the node + Version: + type: string + description: Version of the node + Metadata: + description: User defined metadata + ObjPsStatus: + type: object + required: + - UpdatedAt + - Wanted + - PrevWanted + - Actual + - PrevActual + properties: + UpdatedAt: + type: string + format: date-time + Wanted: + $ref: '#/components/schemas/ObjPsStatusKind' + PrevWanted: + $ref: '#/components/schemas/ObjPsStatusKind' + Actual: + $ref: '#/components/schemas/ObjPsStatusKind' + PrevActual: + $ref: '#/components/schemas/ObjPsStatusKind' + ObjPsStatusKind: + type: string + enum: + - create + - starting + - start + - updating + - update + - destroying + - destroy + - stopping + - stop + - fail + - finish + - unknown + ObjectVersion: + type: object + description: The version number of the object such as node, service, etc. This is needed to avoid conflicting writes. The client must send the version number along with the modified specification when updating these objects. This approach ensures safe concurrency and determinism in that the change on the object may not be applied if the version number has changed from the last read. In other words, if two update requests specify the same base version, only one of the requests can succeed. As a result, two separate update requests that happen at the same time will not unintentionally overwrite each other. + properties: + Index: + type: + - integer + - 'null' + format: int64 + minimum: 0 + PeerNode: + type: object + description: Represents a peer-node in the swarm + properties: + NodeID: + type: + - string + - 'null' + description: Unique identifier of for this node in the swarm. + Addr: + type: + - string + - 'null' + description: IP address and ports at which this node can be reached. + PidsStats: + type: object + description: Process ID statistics for the container. + properties: + current: + type: + - integer + - 'null' + format: int64 + minimum: 0 + limit: + type: + - integer + - 'null' + format: int64 + minimum: 0 + PluginsInfo: + type: object + description: 'Available plugins per type.


> **Note**: Only unmanaged (V1) plugins are included in this list. > V1 plugins are \"lazily\" loaded, and are not returned in this list > if there is no resource using the plugin.' + properties: + Volume: + type: + - array + - 'null' + items: + type: string + description: Names of available volume-drivers, and network-driver plugins. + Network: + type: + - array + - 'null' + items: + type: string + description: Names of available network-drivers, and network-driver plugins. + Authorization: + type: + - array + - 'null' + items: + type: string + description: Names of available authorization plugins. + Log: + type: + - array + - 'null' + items: + type: string + description: Names of available logging-drivers, and logging-driver plugins. + Primitive: + oneOf: + - type: string + - type: number + format: double + - type: boolean + Process: + type: object + description: Represents a process (Vm, Job, Cargo) + required: + - Key + - CreatedAt + - UpdatedAt + - Name + - Kind + - NodeName + - KindKey + - Data + properties: + Key: + type: string + description: The key of the process + CreatedAt: + type: string + format: date-time + description: The created at date + UpdatedAt: + type: string + format: date-time + description: Last time the instance was updated + Name: + type: string + description: Name of the process + Kind: + $ref: '#/components/schemas/ProcessKind' + description: Kind of the process (Job, Vm, Cargo) + NodeName: + type: string + description: Name of the node where the container is running + KindKey: + type: string + description: Key of the related kind + Data: + $ref: '#/components/schemas/ContainerInspectResponse' + description: The data of the process a ContainerInspect + ProcessConfig: + type: object + properties: + privileged: + type: + - boolean + - 'null' + user: + type: + - string + - 'null' + tty: + type: + - boolean + - 'null' + entrypoint: + type: + - string + - 'null' + arguments: + type: + - array + - 'null' + items: + type: string + ProcessKind: + type: string + description: Kind of process (Vm, Job, Cargo) + enum: + - vm + - job + - cargo + ProcessStats: + type: object + description: Stats of a process + required: + - Name + - Stats + properties: + Name: + type: string + Stats: + $ref: '#/components/schemas/Stats' + RegistryServiceConfig: + type: object + description: RegistryServiceConfig stores daemon registry services configuration. + properties: + AllowNondistributableArtifactsCIDRs: + type: + - array + - 'null' + items: + type: string + description: 'List of IP ranges to which nondistributable artifacts can be pushed, using the CIDR syntax [RFC 4632](https://tools.ietf.org/html/4632). Some images (for example, Windows base images) contain artifacts whose distribution is restricted by license. When these images are pushed to a registry, restricted artifacts are not included. This configuration override this behavior, and enables the daemon to push nondistributable artifacts to all registries whose resolved IP address is within the subnet described by the CIDR syntax. This option is useful when pushing images containing nondistributable artifacts to a registry on an air-gapped network so hosts on that network can pull the images without connecting to another server. > **Warning**: Nondistributable artifacts typically have restrictions > on how and where they can be distributed and shared. Only use this > feature to push artifacts to private registries and ensure that you > are in compliance with any terms that cover redistributing > nondistributable artifacts.' + AllowNondistributableArtifactsHostnames: + type: + - array + - 'null' + items: + type: string + description: 'List of registry hostnames to which nondistributable artifacts can be pushed, using the format `[:]` or `[:]`. Some images (for example, Windows base images) contain artifacts whose distribution is restricted by license. When these images are pushed to a registry, restricted artifacts are not included. This configuration override this behavior for the specified registries. This option is useful when pushing images containing nondistributable artifacts to a registry on an air-gapped network so hosts on that network can pull the images without connecting to another server. > **Warning**: Nondistributable artifacts typically have restrictions > on how and where they can be distributed and shared. Only use this > feature to push artifacts to private registries and ensure that you > are in compliance with any terms that cover redistributing > nondistributable artifacts.' + InsecureRegistryCIDRs: + type: + - array + - 'null' + items: + type: string + description: 'List of IP ranges of insecure registries, using the CIDR syntax ([RFC 4632](https://tools.ietf.org/html/4632)). Insecure registries accept un-encrypted (HTTP) and/or untrusted (HTTPS with certificates from unknown CAs) communication. By default, local registries (`127.0.0.0/8`) are configured as insecure. All other registries are secure. Communicating with an insecure registry is not possible if the daemon assumes that registry is secure. This configuration override this behavior, insecure communication with registries whose resolved IP address is within the subnet described by the CIDR syntax. Registries can also be marked insecure by hostname. Those registries are listed under `IndexConfigs` and have their `Secure` field set to `false`. > **Warning**: Using this option can be useful when running a local > registry, but introduces security vulnerabilities. This option > should therefore ONLY be used for testing purposes. For increased > security, users should add their CA to their system''s list of trusted > CAs instead of enabling this option.' + IndexConfigs: + type: + - object + - 'null' + additionalProperties: + $ref: '#/components/schemas/IndexInfo' + propertyNames: + type: string + Mirrors: + type: + - array + - 'null' + items: + type: string + description: List of registry URLs that act as a mirror for the official (`docker.io`) registry. + ReplicationMode: + oneOf: + - type: object + description: |- + Auto is used to automatically define that the number of replicas in the cluster + This will ensure at least 1 replica exists in the cluster + And automatically add more replicas in the cluster if needed for redundancy + required: + - Mode + properties: + Mode: + type: string + enum: + - Auto + - type: object + description: Unique is used to ensure that only one replica exists in the cluster + required: + - Mode + properties: + Mode: + type: string + enum: + - Unique + - type: object + description: UniqueByNode is used to ensure one replica is running on each node + required: + - Mode + properties: + Mode: + type: string + enum: + - UniqueByNode + - type: object + description: UniqueByNodeGroups is used to ensure one replica is running on each node group + required: + - groups + - Mode + properties: + groups: + type: array + items: + type: string + Mode: + type: string + enum: + - UniqueByNodeGroups + - type: object + description: UniqueByNodeNames is used to ensure one replica is running on each node name + required: + - names + - Mode + properties: + names: + type: array + items: + type: string + Mode: + type: string + enum: + - UniqueByNodeNames + - allOf: + - $ref: '#/components/schemas/ReplicationStatic' + description: Number is used to manually set the number of replicas in one node + - type: object + required: + - Mode + properties: + Mode: + type: string + enum: + - Static + description: Number is used to manually set the number of replicas in one node + - allOf: + - $ref: '#/components/schemas/ReplicationStatic' + description: NumberByNodes is used to manually set the number of replicas in each node + - type: object + required: + - Mode + properties: + Mode: + type: string + enum: + - StaticByNodes + description: NumberByNodes is used to manually set the number of replicas in each node + - type: object + description: NumberByNodeGroups is used to manually set the number of replicas in each node group + required: + - groups + - number + - Mode + properties: + groups: + type: array + items: + type: string + number: + type: integer + format: int64 + Mode: + type: string + enum: + - StaticByNodeGroups + - type: object + description: NumberByNodeNames is used to manually set the number of replicas in each node name + required: + - names + - number + - Mode + properties: + names: + type: array + items: + type: string + number: + type: integer + format: int64 + Mode: + type: string + enum: + - StaticByNodeNames + description: |- + Auto is used to automatically define that the number of replicas in the cluster + Number is used to manually set the number of replicas + Note: auto will ensure at least 1 replica exists in the cluster + ReplicationStatic: + type: object + required: + - Number + properties: + Number: + type: integer + minimum: 0 + additionalProperties: false + Resource: + type: object + description: |- + Resource is a specification with a name and a kind + It is used to define [proxy rules](ProxyRule) and other kind of spec + required: + - Kind + - CreatedAt + - Spec + properties: + Kind: + type: string + description: The kind of the resource + CreatedAt: + type: string + format: date-time + description: The creation date of the resource + Spec: + $ref: '#/components/schemas/ResourceSpec' + description: Specification of the ressource + ResourceKind: + type: object + required: + - Name + - Version + - CreatedAt + - Data + properties: + Name: + type: string + description: Name of the kind + Version: + type: string + description: When the kind have been created + CreatedAt: + type: string + format: date-time + description: When the kind have been created + Metadata: + description: When the kind have been created + Data: + $ref: '#/components/schemas/ResourceKindSpec' + description: When the kind have been created + additionalProperties: false + ResourceKindInspect: + type: object + required: + - Name + - CreatedAt + - Versions + properties: + Name: + type: string + description: Name of the kind + CreatedAt: + type: string + format: date-time + description: When the kind have been created + Versions: + type: array + items: + $ref: '#/components/schemas/ResourceKindVersion' + description: List of versions available + additionalProperties: false + ResourceKindPartial: + type: object + description: |- + This structure is a partial representation of a resource kind. + Used to define a new kind type for plugins. + required: + - Name + - Version + - Data + properties: + Name: + type: string + description: The name of the resource kind + Version: + type: string + description: The version of the resource kind + Metadata: + type: object + description: Metadata (user defined) of the resource kind + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Data: + $ref: '#/components/schemas/ResourceKindSpec' + description: Spec of the resource kind + additionalProperties: false + ResourceKindSpec: + type: object + description: |- + Specification of a resource kind. + Depending on the spec it will validate a JSONSchema or call a service. + properties: + Schema: + type: object + description: The JSONSchema of the resource of this kind and version + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Url: + type: + - string + - 'null' + description: The service to call when creating, updating or deleting a resource of this kind and version + additionalProperties: false + ResourceKindVersion: + type: object + required: + - Key + - CreatedAt + - KindKey + - Version + - Data + properties: + Key: + type: string + format: uuid + description: Key of the version + CreatedAt: + type: string + format: date-time + description: When the version have been created + KindKey: + type: string + description: Kind linked to this version + Version: + type: string + description: Version + Metadata: + type: object + description: Metadata (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Data: + $ref: '#/components/schemas/ResourceKindSpec' + description: Spec of the kind + additionalProperties: false + ResourcePartial: + type: object + description: Payload used to create a new resource + required: + - Name + - Kind + - Data + properties: + Name: + type: string + description: The name of the resource + Kind: + type: string + description: The kind of the resource + Data: + type: object + description: The data of the resource (json object) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Metadata: + type: object + description: The metadata of the resource (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + additionalProperties: false + ResourceSpec: + type: object + description: The spec of a resource once created in the system + required: + - Key + - Version + - CreatedAt + - ResourceKey + - Data + properties: + Key: + type: string + format: uuid + description: Key of the resource + Version: + type: string + description: Version of the resource + CreatedAt: + type: string + format: date-time + description: The creation date of the resource + ResourceKey: + type: string + description: Resource key associated with the data + Data: + type: object + description: The data of the resource as a json object + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Metadata: + type: object + description: The metadata of the resource (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + additionalProperties: false + ResourceUpdate: + type: object + description: Payload used to update a resource + required: + - Data + properties: + Data: + type: object + description: The spec of the resource as a json object + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Metadata: + type: object + description: The metadata of the resource as a json object + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + additionalProperties: false + ResourcesBlkioWeightDevice: + type: object + properties: + Path: + type: + - string + - 'null' + Weight: + type: + - integer + - 'null' + minimum: 0 + ResourcesUlimits: + type: object + properties: + Name: + type: + - string + - 'null' + description: Name of ulimit + Soft: + type: + - integer + - 'null' + format: int64 + description: Soft limit + Hard: + type: + - integer + - 'null' + format: int64 + description: Hard limit + RestartPolicy: + type: object + description: The behavior to apply when the container exits. The default is not to restart. An ever increasing delay (double the previous delay, starting at 100ms) is added before each restart to prevent flooding the server. + properties: + Name: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/RestartPolicyNameEnum' + description: '- Empty string means not to restart - `no` Do not automatically restart - `always` Always restart - `unless-stopped` Restart always except when the user has manually stopped the container - `on-failure` Restart only when the container exit code is non-zero' + MaximumRetryCount: + type: + - integer + - 'null' + format: int64 + description: If `on-failure` is used, the number of times to retry before giving up. + RestartPolicyNameEnum: + type: string + enum: + - EMPTY + - no + - always + - unless-stopped + - on-failure + Runtime: + type: object + description: Runtime describes an [OCI compliant](https://github.com/opencontainers/runtime-spec) runtime. The runtime is invoked by the daemon via the `containerd` daemon. OCI runtimes act as an interface to the Linux kernel namespaces, cgroups, and SELinux. + properties: + path: + type: + - string + - 'null' + description: Name and, optional, path, of the OCI executable binary. If the path is omitted, the daemon searches the host's `$PATH` for the binary and uses the first result. + runtimeArgs: + type: + - array + - 'null' + items: + type: string + description: List of command-line arguments to pass to the runtime when invoked. + status: + type: + - object + - 'null' + description: 'Information specific to the runtime. While this API specification does not define data provided by runtimes, the following well-known properties may be provided by runtimes: `org.opencontainers.runtime-spec.features`: features structure as defined in the [OCI Runtime Specification](https://github.com/opencontainers/runtime-spec/blob/main/features.md), in a JSON string representation.


> **Note**: The information returned in this field, including the > formatting of values and labels, should not be considered stable, > and may change without notice.' + additionalProperties: + type: string + propertyNames: + type: string + Secret: + type: object + description: |- + This structure represent the secret in the database. + A secret is a key/value pair that can be used by the user to store + sensitive data. It is stored as a json object in the database. + required: + - Name + - CreatedAt + - UpdatedAt + - Kind + - Immutable + - Data + properties: + Name: + type: string + description: The name of the secret + CreatedAt: + type: string + format: date-time + description: The creation date + UpdatedAt: + type: string + format: date-time + description: The last update date + Kind: + type: string + description: The kind of secret + Immutable: + type: boolean + description: The secret cannot be updated + Metadata: + type: object + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Data: + type: object + description: The secret data + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + SecretPartial: + type: object + description: |- + A partial secret object. This is used to create a secret. + A secret is a key/value pair that can be used by the user to store + sensitive data. It is stored as a json object in the database. + required: + - Name + - Kind + - Data + properties: + Name: + type: string + description: The name of the secret + Kind: + type: string + description: The kind of secret + Immutable: + type: boolean + description: The secret cannot be updated + Metadata: + type: object + description: The metadata of the resource (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Data: + type: object + description: The secret data + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + additionalProperties: false + SecretUpdate: + type: object + description: This structure is used to update a secret. + required: + - Data + properties: + Metadata: + type: object + description: The metadata of the secret (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Data: + type: object + description: The data of the secret as a json object + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + additionalProperties: false + SslConfig: + type: object + properties: + Cert: + type: + - string + - 'null' + CertKey: + type: + - string + - 'null' + CertCa: + type: + - string + - 'null' + StartExecOptions: + type: object + description: Exec configuration used in the [Create Exec API](Docker::create_exec()) + required: + - Detach + - Tty + properties: + Detach: + type: boolean + description: Detach from the command. + Tty: + type: boolean + description: Allocate a pseudo-TTY. + OutputCapacity: + type: + - integer + - 'null' + description: The maximum size for a line of output. The default is 8 * 1024 (roughly 1024 characters). + minimum: 0 + Stats: + type: object + description: Statistics for the container. + required: + - read + - preread + - num_procs + - pids_stats + - memory_stats + - blkio_stats + - cpu_stats + - precpu_stats + - storage_stats + properties: + read: + type: string + preread: + type: string + num_procs: + type: integer + format: int32 + minimum: 0 + pids_stats: + $ref: '#/components/schemas/PidsStats' + network: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/NetworkStats' + networks: + type: + - object + - 'null' + additionalProperties: + $ref: '#/components/schemas/NetworkStats' + propertyNames: + type: string + memory_stats: + $ref: '#/components/schemas/MemoryStats' + blkio_stats: + $ref: '#/components/schemas/BlkioStats' + cpu_stats: + $ref: '#/components/schemas/CPUStats' + precpu_stats: + $ref: '#/components/schemas/CPUStats' + storage_stats: + $ref: '#/components/schemas/StorageStats' + name: + type: string + id: + type: string + StorageStats: + type: object + description: File I/O statistics for the container. + properties: + read_count_normalized: + type: + - integer + - 'null' + format: int64 + minimum: 0 + read_size_bytes: + type: + - integer + - 'null' + format: int64 + minimum: 0 + write_count_normalized: + type: + - integer + - 'null' + format: int64 + minimum: 0 + write_size_bytes: + type: + - integer + - 'null' + format: int64 + minimum: 0 + String: + type: string + SwarmInfo: + type: object + description: Represents generic information about swarm. + properties: + NodeID: + type: + - string + - 'null' + description: Unique identifier of for this node in the swarm. + NodeAddr: + type: + - string + - 'null' + description: IP address at which this node can be reached by other nodes in the swarm. + LocalNodeState: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/LocalNodeState' + ControlAvailable: + type: + - boolean + - 'null' + Error: + type: + - string + - 'null' + RemoteManagers: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/PeerNode' + description: List of ID's and addresses of other managers in the swarm. + Nodes: + type: + - integer + - 'null' + format: int64 + description: Total number of nodes in the swarm. + Managers: + type: + - integer + - 'null' + format: int64 + description: Total number of managers in the swarm. + Cluster: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/ClusterInfo' + SwarmSpec: + type: object + description: User modifiable swarm configuration. + properties: + Name: + type: + - string + - 'null' + description: Name of the swarm. + Labels: + type: + - object + - 'null' + description: User-defined key/value metadata. + additionalProperties: + type: string + propertyNames: + type: string + Orchestration: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmSpecOrchestration' + Raft: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmSpecRaft' + Dispatcher: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmSpecDispatcher' + CAConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmSpecCaConfig' + EncryptionConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmSpecEncryptionConfig' + TaskDefaults: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmSpecTaskDefaults' + SwarmSpecCaConfig: + type: object + description: CA configuration. + properties: + NodeCertExpiry: + type: + - integer + - 'null' + format: int64 + description: The duration node certificates are issued for. + ExternalCAs: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/SwarmSpecCaConfigExternalCas' + description: Configuration for forwarding signing requests to an external certificate authority. + SigningCACert: + type: + - string + - 'null' + description: The desired signing CA certificate for all swarm node TLS leaf certificates, in PEM format. + SigningCAKey: + type: + - string + - 'null' + description: The desired signing CA key for all swarm node TLS leaf certificates, in PEM format. + ForceRotate: + type: + - integer + - 'null' + format: int64 + description: An integer whose purpose is to force swarm to generate a new signing CA certificate and key, if none have been specified in `SigningCACert` and `SigningCAKey` + minimum: 0 + SwarmSpecCaConfigExternalCas: + type: object + properties: + Protocol: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmSpecCaConfigExternalCasProtocolEnum' + description: Protocol for communication with the external CA (currently only `cfssl` is supported). + URL: + type: + - string + - 'null' + description: URL where certificate signing requests should be sent. + Options: + type: + - object + - 'null' + description: An object with key/value pairs that are interpreted as protocol-specific options for the external CA driver. + additionalProperties: + type: string + propertyNames: + type: string + CACert: + type: + - string + - 'null' + description: The root CA certificate (in PEM format) this external CA uses to issue TLS certificates (assumed to be to the current swarm root CA certificate if not provided). + SwarmSpecCaConfigExternalCasProtocolEnum: + type: string + enum: + - EMPTY + - cfssl + SwarmSpecDispatcher: + type: object + description: Dispatcher configuration. + properties: + HeartbeatPeriod: + type: + - integer + - 'null' + format: int64 + description: The delay for an agent to send a heartbeat to the dispatcher. + SwarmSpecEncryptionConfig: + type: object + description: Parameters related to encryption-at-rest. + properties: + AutoLockManagers: + type: + - boolean + - 'null' + description: If set, generate a key and use it to lock data stored on the managers. + SwarmSpecOrchestration: + type: object + description: Orchestration configuration. + properties: + TaskHistoryRetentionLimit: + type: + - integer + - 'null' + format: int64 + description: The number of historic tasks to keep per instance or node. If negative, never remove completed or failed tasks. + SwarmSpecRaft: + type: object + description: Raft configuration. + properties: + SnapshotInterval: + type: + - integer + - 'null' + format: int64 + description: The number of log entries between snapshots. + minimum: 0 + KeepOldSnapshots: + type: + - integer + - 'null' + format: int64 + description: The number of snapshots to keep beyond the current snapshot. + minimum: 0 + LogEntriesForSlowFollowers: + type: + - integer + - 'null' + format: int64 + description: The number of log entries to keep around to sync up slow followers after a snapshot is created. + minimum: 0 + ElectionTick: + type: + - integer + - 'null' + format: int64 + description: The number of ticks that a follower will wait for a message from the leader before becoming a candidate and starting an election. `ElectionTick` must be greater than `HeartbeatTick`. A tick currently defaults to one second, so these translate directly to seconds currently, but this is NOT guaranteed. + HeartbeatTick: + type: + - integer + - 'null' + format: int64 + description: The number of ticks between heartbeats. Every HeartbeatTick ticks, the leader will send a heartbeat to the followers. A tick currently defaults to one second, so these translate directly to seconds currently, but this is NOT guaranteed. + SwarmSpecTaskDefaults: + type: object + description: Defaults for creating tasks in this cluster. + properties: + LogDriver: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmSpecTaskDefaultsLogDriver' + SwarmSpecTaskDefaultsLogDriver: + type: object + description: The log driver to use for tasks created in the orchestrator if unspecified by a service. Updating this value only affects new tasks. Existing tasks continue to use their previously configured log driver until recreated. + properties: + Name: + type: + - string + - 'null' + description: The log driver to use as a default for new tasks. + Options: + type: + - object + - 'null' + description: Driver-specific options for the selectd log driver, specified as key/value pairs. + additionalProperties: + type: string + propertyNames: + type: string + SystemInfo: + type: object + properties: + ID: + type: + - string + - 'null' + description: 'Unique identifier of the daemon.


> **Note**: The format of the ID itself is not part of the API, and > should not be considered stable.' + Containers: + type: + - integer + - 'null' + format: int64 + description: Total number of containers on the host. + ContainersRunning: + type: + - integer + - 'null' + format: int64 + description: Number of containers with status `\"running\"`. + ContainersPaused: + type: + - integer + - 'null' + format: int64 + description: Number of containers with status `\"paused\"`. + ContainersStopped: + type: + - integer + - 'null' + format: int64 + description: Number of containers with status `\"stopped\"`. + Images: + type: + - integer + - 'null' + format: int64 + description: Total number of images on the host. Both _tagged_ and _untagged_ (dangling) images are counted. + Driver: + type: + - string + - 'null' + description: Name of the storage driver in use. + DriverStatus: + type: + - array + - 'null' + items: + type: array + items: + type: string + description: 'Information specific to the storage driver, provided as \"label\" / \"value\" pairs. This information is provided by the storage driver, and formatted in a way consistent with the output of `docker info` on the command line.


> **Note**: The information returned in this field, including the > formatting of values and labels, should not be considered stable, > and may change without notice.' + DockerRootDir: + type: + - string + - 'null' + description: Root directory of persistent Docker state. Defaults to `/var/lib/docker` on Linux, and `C:\\ProgramData\\docker` on Windows. + Plugins: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/PluginsInfo' + MemoryLimit: + type: + - boolean + - 'null' + description: Indicates if the host has memory limit support enabled. + SwapLimit: + type: + - boolean + - 'null' + description: Indicates if the host has memory swap limit support enabled. + KernelMemoryTCP: + type: + - boolean + - 'null' + description: Indicates if the host has kernel memory TCP limit support enabled. This field is omitted if not supported. Kernel memory TCP limits are not supported when using cgroups v2, which does not support the corresponding `memory.kmem.tcp.limit_in_bytes` cgroup. + CpuCfsPeriod: + type: + - boolean + - 'null' + description: Indicates if CPU CFS(Completely Fair Scheduler) period is supported by the host. + CpuCfsQuota: + type: + - boolean + - 'null' + description: Indicates if CPU CFS(Completely Fair Scheduler) quota is supported by the host. + CPUShares: + type: + - boolean + - 'null' + description: Indicates if CPU Shares limiting is supported by the host. + CPUSet: + type: + - boolean + - 'null' + description: Indicates if CPUsets (cpuset.cpus, cpuset.mems) are supported by the host. See [cpuset(7)](https://www.kernel.org/doc/Documentation/cgroup-v1/cpusets.txt) + PidsLimit: + type: + - boolean + - 'null' + description: Indicates if the host kernel has PID limit support enabled. + OomKillDisable: + type: + - boolean + - 'null' + description: Indicates if OOM killer disable is supported on the host. + IPv4Forwarding: + type: + - boolean + - 'null' + description: Indicates IPv4 forwarding is enabled. + BridgeNfIptables: + type: + - boolean + - 'null' + description: Indicates if `bridge-nf-call-iptables` is available on the host. + BridgeNfIp6tables: + type: + - boolean + - 'null' + description: Indicates if `bridge-nf-call-ip6tables` is available on the host. + Debug: + type: + - boolean + - 'null' + description: Indicates if the daemon is running in debug-mode / with debug-level logging enabled. + NFd: + type: + - integer + - 'null' + format: int64 + description: The total number of file Descriptors in use by the daemon process. This information is only returned if debug-mode is enabled. + NGoroutines: + type: + - integer + - 'null' + format: int64 + description: The number of goroutines that currently exist. This information is only returned if debug-mode is enabled. + SystemTime: + type: + - string + - 'null' + description: Current system-time in [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format with nano-seconds. + LoggingDriver: + type: + - string + - 'null' + description: The logging driver to use as a default for new containers. + CgroupDriver: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SystemInfoCgroupDriverEnum' + description: The driver to use for managing cgroups. + CgroupVersion: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SystemInfoCgroupVersionEnum' + description: The version of the cgroup. + NEventsListener: + type: + - integer + - 'null' + format: int64 + description: Number of event listeners subscribed. + KernelVersion: + type: + - string + - 'null' + description: Kernel version of the host. On Linux, this information obtained from `uname`. On Windows this information is queried from the HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\ registry value, for example _\"10.0 14393 (14393.1198.amd64fre.rs1_release_sec.170427-1353)\"_. + OperatingSystem: + type: + - string + - 'null' + description: 'Name of the host''s operating system, for example: \"Ubuntu 16.04.2 LTS\" or \"Windows Server 2016 Datacenter\"' + OSVersion: + type: + - string + - 'null' + description: 'Version of the host''s operating system


> **Note**: The information returned in this field, including its > very existence, and the formatting of values, should not be considered > stable, and may change without notice.' + OSType: + type: + - string + - 'null' + description: Generic type of the operating system of the host, as returned by the Go runtime (`GOOS`). Currently returned values are \"linux\" and \"windows\". A full list of possible values can be found in the [Go documentation](https://go.dev/doc/install/source#environment). + Architecture: + type: + - string + - 'null' + description: Hardware architecture of the host, as returned by the Go runtime (`GOARCH`). A full list of possible values can be found in the [Go documentation](https://go.dev/doc/install/source#environment). + NCPU: + type: + - integer + - 'null' + format: int64 + description: The number of logical CPUs usable by the daemon. The number of available CPUs is checked by querying the operating system when the daemon starts. Changes to operating system CPU allocation after the daemon is started are not reflected. + MemTotal: + type: + - integer + - 'null' + format: int64 + description: Total amount of physical memory available on the host, in bytes. + IndexServerAddress: + type: + - string + - 'null' + description: Address / URL of the index server that is used for image search, and as a default for user authentication for Docker Hub and Docker Cloud. + RegistryConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/RegistryServiceConfig' + GenericResources: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/GenericResourcesInner' + HttpProxy: + type: + - string + - 'null' + description: HTTP-proxy configured for the daemon. This value is obtained from the [`HTTP_PROXY`](https://www.gnu.org/software/wget/manual/html_node/Proxies.html) environment variable. Credentials ([user info component](https://tools.ietf.org/html/rfc3986#section-3.2.1)) in the proxy URL are masked in the API response. Containers do not automatically inherit this configuration. + HttpsProxy: + type: + - string + - 'null' + description: HTTPS-proxy configured for the daemon. This value is obtained from the [`HTTPS_PROXY`](https://www.gnu.org/software/wget/manual/html_node/Proxies.html) environment variable. Credentials ([user info component](https://tools.ietf.org/html/rfc3986#section-3.2.1)) in the proxy URL are masked in the API response. Containers do not automatically inherit this configuration. + NoProxy: + type: + - string + - 'null' + description: Comma-separated list of domain extensions for which no proxy should be used. This value is obtained from the [`NO_PROXY`](https://www.gnu.org/software/wget/manual/html_node/Proxies.html) environment variable. Containers do not automatically inherit this configuration. + Name: + type: + - string + - 'null' + description: Hostname of the host. + Labels: + type: + - array + - 'null' + items: + type: string + description: 'User-defined labels (key/value metadata) as set on the daemon.


> **Note**: When part of a Swarm, nodes can both have _daemon_ labels, > set through the daemon configuration, and _node_ labels, set from a > manager node in the Swarm. Node labels are not included in this > field. Node labels can be retrieved using the `/nodes/(id)` endpoint > on a manager node in the Swarm.' + ExperimentalBuild: + type: + - boolean + - 'null' + description: Indicates if experimental features are enabled on the daemon. + ServerVersion: + type: + - string + - 'null' + description: Version string of the daemon. + Runtimes: + type: + - object + - 'null' + description: List of [OCI compliant](https://github.com/opencontainers/runtime-spec) runtimes configured on the daemon. Keys hold the \"name\" used to reference the runtime. The Docker daemon relies on an OCI compliant runtime (invoked via the `containerd` daemon) as its interface to the Linux kernel namespaces, cgroups, and SELinux. The default runtime is `runc`, and automatically configured. Additional runtimes can be configured by the user and will be listed here. + additionalProperties: + $ref: '#/components/schemas/Runtime' + propertyNames: + type: string + DefaultRuntime: + type: + - string + - 'null' + description: Name of the default OCI runtime that is used when starting containers. The default can be overridden per-container at create time. + Swarm: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SwarmInfo' + LiveRestoreEnabled: + type: + - boolean + - 'null' + description: Indicates if live restore is enabled. If enabled, containers are kept running when the daemon is shutdown or upon daemon start if running containers are detected. + Isolation: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/SystemInfoIsolationEnum' + description: Represents the isolation technology to use as a default for containers. The supported values are platform-specific. If no isolation value is specified on daemon start, on Windows client, the default is `hyperv`, and on Windows server, the default is `process`. This option is currently not used on other platforms. + InitBinary: + type: + - string + - 'null' + description: Name and, optional, path of the `docker-init` binary. If the path is omitted, the daemon searches the host's `$PATH` for the binary and uses the first result. + ContainerdCommit: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/Commit' + RuncCommit: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/Commit' + InitCommit: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/Commit' + SecurityOptions: + type: + - array + - 'null' + items: + type: string + description: List of security features that are enabled on the daemon, such as apparmor, seccomp, SELinux, user-namespaces (userns), rootless and no-new-privileges. Additional configuration options for each security feature may be present, and are included as a comma-separated list of key/value pairs. + ProductLicense: + type: + - string + - 'null' + description: Reports a summary of the product license on the daemon. If a commercial license has been applied to the daemon, information such as number of nodes, and expiration are included. + DefaultAddressPools: + type: + - array + - 'null' + items: + $ref: '#/components/schemas/SystemInfoDefaultAddressPools' + description: 'List of custom default address pools for local networks, which can be specified in the daemon.json file or dockerd option. Example: a Base \"10.10.0.0/16\" with Size 24 will define the set of 256 10.10.[0-255].0/24 address pools.' + Warnings: + type: + - array + - 'null' + items: + type: string + description: List of warnings / informational messages about missing features, or issues related to the daemon configuration. These messages can be printed by the client as information to the user. + CDISpecDirs: + type: + - array + - 'null' + items: + type: string + description: List of directories where (Container Device Interface) CDI specifications are located. These specifications define vendor-specific modifications to an OCI runtime specification for a container being created. An empty list indicates that CDI device injection is disabled. Note that since using CDI device injection requires the daemon to have experimental enabled. For non-experimental daemons an empty list will always be returned. + SystemInfoCgroupDriverEnum: + type: string + enum: + - EMPTY + - cgroupfs + - systemd + - none + SystemInfoCgroupVersionEnum: + type: string + enum: + - EMPTY + - '1' + - '2' + SystemInfoDefaultAddressPools: + type: object + properties: + Base: + type: + - string + - 'null' + description: The network address in CIDR format + Size: + type: + - integer + - 'null' + format: int64 + description: The network pool size + SystemInfoIsolationEnum: + type: string + enum: + - EMPTY + - default + - hyperv + - process + ThrottleDevice: + type: object + properties: + Path: + type: + - string + - 'null' + description: Device path + Rate: + type: + - integer + - 'null' + format: int64 + description: Rate + ThrottlingData: + type: object + description: CPU throttling statistics. + required: + - periods + - throttled_periods + - throttled_time + properties: + periods: + type: integer + format: int64 + minimum: 0 + throttled_periods: + type: integer + format: int64 + minimum: 0 + throttled_time: + type: integer + format: int64 + minimum: 0 + TlsInfo: + type: object + description: Information about the issuer of leaf TLS certificates and the trusted root CA certificate. + properties: + TrustRoot: + type: + - string + - 'null' + description: The root CA certificate(s) that are used to validate leaf TLS certificates. + CertIssuerSubject: + type: + - string + - 'null' + description: The base64-url-safe-encoded raw subject bytes of the issuer. + CertIssuerPublicKey: + type: + - string + - 'null' + description: The base64-url-safe-encoded raw public key bytes of the issuer. + Vm: + type: object + description: A virtual machine instance + required: + - NamespaceName + - CreatedAt + - Status + - Spec + properties: + NamespaceName: + type: string + description: Name of the namespace + CreatedAt: + type: string + format: date-time + description: When the vm was created + Status: + $ref: '#/components/schemas/ObjPsStatus' + description: Status of the vm + Spec: + $ref: '#/components/schemas/VmSpec' + description: Specification of the vm + VmDisk: + type: object + description: Disk representation of a VM + required: + - Image + properties: + Image: + type: string + description: Name of the image to use + Size: + type: + - integer + - 'null' + format: int64 + description: 'Virtual size allowed for the disk in GB (default: 20)' + minimum: 0 + additionalProperties: false + VmHostConfig: + type: object + description: A vm's resources (cpu, memory, network) + required: + - Cpu + - Memory + properties: + Cpu: + type: integer + format: int64 + description: 'Number of cpu of the vm (default: 1)' + minimum: 0 + Memory: + type: integer + format: int64 + description: 'Memory of the vm in MB (default: 512)' + minimum: 0 + NetIface: + type: + - string + - 'null' + description: 'Network interface of the vm to setup (default: ens3)' + LinkNetIface: + type: + - string + - 'null' + description: 'Network interface to link the vm (default: eth0)' + Kvm: + type: + - boolean + - 'null' + description: 'Enable KVM acceleration (default: false)' + Dns: + type: + - array + - 'null' + items: + type: string + description: A list of DNS servers for the vm to use + Runtime: + type: + - string + - 'null' + description: 'Container image name to use for vm (default: nanocl-qemu)' + RuntimeNetwork: + type: + - string + - 'null' + HostTun: + type: + - boolean + - 'null' + description: Use host tun device + additionalProperties: false + VmImage: + type: object + required: + - Name + - CreatedAt + - Path + - Kind + - Format + - SizeActual + - SizeVirtual + properties: + Name: + type: string + description: The name of the image + CreatedAt: + type: string + format: date-time + description: When the image was created + Path: + type: string + description: The path to the image + Kind: + type: string + description: The type of the image + Format: + type: string + description: The format of the image + SizeActual: + type: integer + format: int64 + description: The actual size of the image in bytes + SizeVirtual: + type: integer + format: int64 + description: The virtual size of the image in bytes + VmImageResizePayload: + type: object + required: + - Size + - Shrink + properties: + Size: + type: integer + format: int64 + description: The new size of the image in bytes + minimum: 0 + Shrink: + type: boolean + description: Whether to shrink the image or not + additionalProperties: false + VmInspect: + type: object + description: |- + A Vm Inspect is a detailed view of a vm + It is used to inspect a vm + It contains all the information about the vm + It also contains the list of containers + required: + - NamespaceName + - CreatedAt + - InstanceTotal + - InstanceRunning + - Status + - Spec + - Instances + properties: + NamespaceName: + type: string + description: Name of the namespace + CreatedAt: + type: string + format: date-time + description: Creation date of the vm + InstanceTotal: + type: integer + description: Number of instances + minimum: 0 + InstanceRunning: + type: integer + description: Number of running instances + minimum: 0 + Status: + $ref: '#/components/schemas/ObjPsStatus' + description: Status of the vm + Spec: + $ref: '#/components/schemas/VmSpec' + description: Specification of the vm + Instances: + type: array + items: + $ref: '#/components/schemas/Process' + description: List of instances + VmSpec: + type: object + description: |- + A vm spec is the specification of a vm + It used to know the state of the vm + It keep tracking of an history when you patch an existing vm + required: + - Key + - CreatedAt + - Name + - Version + - VmKey + - Disk + - HostConfig + properties: + Key: + type: string + format: uuid + description: Unique identifier of the vm spec + CreatedAt: + type: string + format: date-time + description: Creation date of the vm spec + Name: + type: string + description: Name of the vm + Version: + type: string + description: Version of the spec + VmKey: + type: string + description: The key of the vm + Metadata: + type: object + description: The metadata (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Hostname: + type: + - string + - 'null' + description: Hostname of the vm + Password: + type: + - string + - 'null' + description: Default password of the vm (cloud) + SshKey: + type: + - string + - 'null' + description: Default ssh key for the user + User: + type: + - string + - 'null' + description: Default user of the vm (cloud) + Disk: + $ref: '#/components/schemas/VmDisk' + description: Disk config of the vm + MacAddress: + type: + - string + - 'null' + description: Mac address of the vm + Labels: + type: + - object + - 'null' + description: User-defined key/value metadata. + additionalProperties: + type: string + propertyNames: + type: string + HostConfig: + $ref: '#/components/schemas/VmHostConfig' + description: A vm's resources (cpu, memory, network) + VmSpecPartial: + type: object + description: A vm spec partial is used to create a vm + required: + - Name + - Disk + properties: + Name: + type: string + description: Name of the vm + Metadata: + type: object + description: The metadata (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Hostname: + type: + - string + - 'null' + description: 'Hostname of the vm (default: generated from name)' + User: + type: + - string + - 'null' + description: 'Default user of the vm (default: cloud)' + Password: + type: + - string + - 'null' + description: 'Default password of the vm (default: cloud)' + SshKey: + type: + - string + - 'null' + description: Default ssh pub key for the user (recommended) + Disk: + $ref: '#/components/schemas/VmDisk' + description: Disk config of the vm (image, size) required + MacAddress: + type: + - string + - 'null' + description: 'Mac address of the vm (default: generated)' + Labels: + type: + - object + - 'null' + description: User-defined key/value metadata. + additionalProperties: + type: string + propertyNames: + type: string + HostConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/VmHostConfig' + description: A vm's resources (cpu, memory, network) + additionalProperties: false + VmSpecUpdate: + type: object + description: | + ## VmSpecUpdate + + Payload used to patch a vm + It will create a new [VmSpec](VmSpec) with the new values + and keep the old values in the history + properties: + Name: + type: + - string + - 'null' + description: Name of the vm + Metadata: + type: object + description: The metadata (user defined) + additionalProperties: + $ref: '#/components/schemas/Any' + propertyNames: + type: string + Hostname: + type: + - string + - 'null' + description: Hostname of the vm + User: + type: + - string + - 'null' + description: Default user of the vm (cloud) + Password: + type: + - string + - 'null' + description: Default password of the vm (cloud) + SshKey: + type: + - string + - 'null' + description: Default ssh key for the user + Labels: + type: + - object + - 'null' + description: User-defined key/value metadata. + additionalProperties: + type: string + propertyNames: + type: string + HostConfig: + oneOf: + - type: 'null' + - $ref: '#/components/schemas/VmHostConfig' + description: A vm's resources (cpu, memory, network) + additionalProperties: false + VmSummary: + type: object + description: |- + A Vm Summary is a summary of a vm + It is used to list all the vms + required: + - NamespaceName + - Status + - CreatedAt + - InstanceTotal + - InstanceRunning + - Spec + properties: + NamespaceName: + type: string + description: Name of the namespace + Status: + $ref: '#/components/schemas/ObjPsStatus' + description: Status of the vm + CreatedAt: + type: string + format: date-time + description: Creation date of the vm + InstanceTotal: + type: integer + description: Number of instances + minimum: 0 + InstanceRunning: + type: integer + description: Number of running instances + minimum: 0 + Spec: + $ref: '#/components/schemas/VmSpec' + description: Specification of the vm +tags: +- name: Namespaces + description: Namespaces management endpoints. +- name: Nodes + description: Nodes management endpoints. +- name: Resources + description: Resources management endpoints. +- name: System + description: General system endpoints. +- name: VmImages + description: Virtual machine images management endpoints. +- name: Vms + description: Virtual machines management endpoints. +- name: Metrics + description: Metrics management endpoints. +- name: Processes + description: Processes management endpoints. +- name: Secrets + description: Secrets management endpoints. +- name: Jobs + description: Jobs management endpoints. +- name: Events + description: Events management endpoints. diff --git a/vars.js b/vars.js index 412e042..d8ddda0 100644 --- a/vars.js +++ b/vars.js @@ -1,5 +1,5 @@ module.exports = { - nanoclMajorVersion: '0.15', - ncproxyMajorVersion: '0.12', - ncdnsMajorVersion: '0.7', + nanoclMajorVersion: '0.16', + ncproxyMajorVersion: '0.13', + ncdnsMajorVersion: '0.8', };