From 8790f7059a20e1f9812da745676a7dd0a5aea736 Mon Sep 17 00:00:00 2001 From: Jens L Date: Sat, 4 May 2024 23:49:33 +0200 Subject: [PATCH 01/42] website/docs: switch API browser renderer to PAN (#9570) * website/docs: switch API browser renderer to PAN https://github.com/PaloAltoNetworks/docusaurus-openapi-docs/ Signed-off-by: Jens Langhammer * hey we can actually directly link to API endpoints now Signed-off-by: Jens Langhammer * set as sub category Signed-off-by: Jens Langhammer * revert sidebars back to JS for tests Signed-off-by: Jens Langhammer --------- Signed-off-by: Jens Langhammer --- website/.gitignore | 1 + website/developer-docs/api/browser.mdx | 9 - .../user/user_basic_operations.md | 2 +- website/docusaurus.config.ts | 38 +- website/package-lock.json | 5729 ++++++++++++----- website/package.json | 27 +- website/sidebarsDev.js | 7 +- 7 files changed, 4157 insertions(+), 1656 deletions(-) delete mode 100644 website/developer-docs/api/browser.mdx diff --git a/website/.gitignore b/website/.gitignore index a9e9900cba..4288897833 100644 --- a/website/.gitignore +++ b/website/.gitignore @@ -22,3 +22,4 @@ yarn-error.log* static/docker-compose.yml static/schema.yaml +developer-docs/api/reference/** diff --git a/website/developer-docs/api/browser.mdx b/website/developer-docs/api/browser.mdx deleted file mode 100644 index df117b386e..0000000000 --- a/website/developer-docs/api/browser.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -hide_table_of_contents: true ---- - -# API Browser - -import ApiDocMdx from "@theme/ApiDocMdx"; - - diff --git a/website/docs/user-group-role/user/user_basic_operations.md b/website/docs/user-group-role/user/user_basic_operations.md index f2cf6813b1..04328dcd41 100644 --- a/website/docs/user-group-role/user/user_basic_operations.md +++ b/website/docs/user-group-role/user/user_basic_operations.md @@ -8,7 +8,7 @@ The following topics are for the basic management of users: how to create, modif ### Create a user -> If you want to automate user creation, you can do that either by [invitations](./invitations.md), [`user_write` stage](../../flow/stages/user_write), or [using the API](/developer-docs/api/browser). +> If you want to automate user creation, you can do that either by [invitations](./invitations.md), [`user_write` stage](../../flow/stages/user_write), or [using the API](/developer-docs/api/reference/core-users-create). 1. In the Admin interface of your authentik instance, select **Directory > Users** in the left side menu. 2. Select the folder where you want to create a user. diff --git a/website/docusaurus.config.ts b/website/docusaurus.config.ts index 601d1c84a9..d59a752334 100644 --- a/website/docusaurus.config.ts +++ b/website/docusaurus.config.ts @@ -1,6 +1,7 @@ import type { Config } from "@docusaurus/types"; import type * as Preset from "@docusaurus/preset-classic"; import { themes as prismThemes } from "prism-react-renderer"; +import type * as OpenApiPlugin from "docusaurus-plugin-openapi-docs"; module.exports = async function (): Promise { const remarkGithub = (await import("remark-github")).default; @@ -93,7 +94,7 @@ module.exports = async function (): Promise { { docs: { id: "docs", - sidebarPath: require.resolve("./sidebars.js"), + sidebarPath: "./sidebars.js", editUrl: "https://github.com/goauthentik/authentik/edit/main/website/", remarkPlugins: [ @@ -117,17 +118,6 @@ module.exports = async function (): Promise { }, } satisfies Preset.Options, ], - [ - "redocusaurus", - { - specs: [ - { - id: "main", - spec: "static/schema.yaml", - }, - ], - }, - ], ], plugins: [ [ @@ -136,7 +126,7 @@ module.exports = async function (): Promise { id: "docsIntegrations", path: "integrations", routeBasePath: "integrations", - sidebarPath: require.resolve("./sidebarsIntegrations.js"), + sidebarPath: "./sidebarsIntegrations.js", editUrl: "https://github.com/goauthentik/authentik/edit/main/website/", }, @@ -147,15 +137,33 @@ module.exports = async function (): Promise { id: "docsDevelopers", path: "developer-docs", routeBasePath: "developer-docs", - sidebarPath: require.resolve("./sidebarsDev.js"), + sidebarPath: "./sidebarsDev.js", + docItemComponent: "@theme/ApiItem", editUrl: "https://github.com/goauthentik/authentik/edit/main/website/", }, ], + [ + "docusaurus-plugin-openapi-docs", + { + id: "api", + docsPluginId: "docsDevelopers", + config: { + authentik: { + specPath: "static/schema.yaml", + outputDir: "developer-docs/api/reference/", + hideSendButton: true, + sidebarOptions: { + groupPathsBy: "tag", + }, + } satisfies OpenApiPlugin.Options, + }, + }, + ], ], markdown: { mermaid: true, }, - themes: ["@docusaurus/theme-mermaid"], + themes: ["docusaurus-theme-openapi-docs"], }; }; diff --git a/website/package-lock.json b/website/package-lock.json index 094160c0d2..e94c9b4eeb 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -9,15 +9,17 @@ "version": "0.0.0", "license": "MIT", "dependencies": { - "@docusaurus/core": "^3.2.1", - "@docusaurus/plugin-client-redirects": "^3.2.1", - "@docusaurus/plugin-content-docs": "^3.2.1", - "@docusaurus/preset-classic": "^3.2.1", - "@docusaurus/theme-common": "^3.2.1", - "@docusaurus/theme-mermaid": "^3.2.1", + "@docusaurus/core": "^3.3.2", + "@docusaurus/plugin-client-redirects": "^3.3.2", + "@docusaurus/plugin-content-docs": "^3.3.2", + "@docusaurus/preset-classic": "^3.3.2", + "@docusaurus/theme-common": "^3.3.2", + "@docusaurus/theme-mermaid": "^3.3.2", "@mdx-js/react": "^3.0.1", "clsx": "^2.1.1", "disqus-react": "^1.1.5", + "docusaurus-plugin-openapi-docs": "^3.0.0-beta.10", + "docusaurus-theme-openapi-docs": "^3.0.0-beta.10", "postcss": "^8.4.38", "prism-react-renderer": "^2.3.1", "react": "^18.3.1", @@ -26,13 +28,12 @@ "react-feather": "^2.0.10", "react-toggle": "^4.1.3", "react-tooltip": "^5.26.4", - "redocusaurus": "^2.0.2", "remark-github": "^12.0.0" }, "devDependencies": { - "@docusaurus/module-type-aliases": "3.2.1", - "@docusaurus/tsconfig": "3.2.1", - "@docusaurus/types": "3.2.1", + "@docusaurus/module-type-aliases": "^3.3.2", + "@docusaurus/tsconfig": "^3.3.2", + "@docusaurus/types": "^3.3.2", "@types/react": "^18.3.1", "prettier": "3.2.5", "typescript": "~5.4.5" @@ -83,74 +84,74 @@ } }, "node_modules/@algolia/cache-browser-local-storage": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.23.2.tgz", - "integrity": "sha512-PvRQdCmtiU22dw9ZcTJkrVKgNBVAxKgD0/cfiqyxhA5+PHzA2WDt6jOmZ9QASkeM2BpyzClJb/Wr1yt2/t78Kw==", + "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==", "dependencies": { - "@algolia/cache-common": "4.23.2" + "@algolia/cache-common": "4.23.3" } }, "node_modules/@algolia/cache-common": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.23.2.tgz", - "integrity": "sha512-OUK/6mqr6CQWxzl/QY0/mwhlGvS6fMtvEPyn/7AHUx96NjqDA4X4+Ju7aXFQKh+m3jW9VPB0B9xvEQgyAnRPNw==" + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.23.3.tgz", + "integrity": "sha512-h9XcNI6lxYStaw32pHpB1TMm0RuxphF+Ik4o7tcQiodEdpKK+wKufY6QXtba7t3k8eseirEMVB83uFFF3Nu54A==" }, "node_modules/@algolia/cache-in-memory": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.23.2.tgz", - "integrity": "sha512-rfbi/SnhEa3MmlqQvgYz/9NNJ156NkU6xFxjbxBtLWnHbpj+qnlMoKd+amoiacHRITpajg6zYbLM9dnaD3Bczw==", + "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==", "dependencies": { - "@algolia/cache-common": "4.23.2" + "@algolia/cache-common": "4.23.3" } }, "node_modules/@algolia/client-account": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.23.2.tgz", - "integrity": "sha512-VbrOCLIN/5I7iIdskSoSw3uOUPF516k4SjDD4Qz3BFwa3of7D9A0lzBMAvQEJJEPHWdVraBJlGgdJq/ttmquJQ==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.23.3.tgz", + "integrity": "sha512-hpa6S5d7iQmretHHF40QGq6hz0anWEHGlULcTIT9tbUssWUriN9AUXIFQ8Ei4w9azD0hc1rUok9/DeQQobhQMA==", "dependencies": { - "@algolia/client-common": "4.23.2", - "@algolia/client-search": "4.23.2", - "@algolia/transporter": "4.23.2" + "@algolia/client-common": "4.23.3", + "@algolia/client-search": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/client-analytics": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.23.2.tgz", - "integrity": "sha512-lLj7irsAztGhMoEx/SwKd1cwLY6Daf1Q5f2AOsZacpppSvuFvuBrmkzT7pap1OD/OePjLKxicJS8wNA0+zKtuw==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.23.3.tgz", + "integrity": "sha512-LBsEARGS9cj8VkTAVEZphjxTjMVCci+zIIiRhpFun9jGDUlS1XmhCW7CTrnaWeIuCQS/2iPyRqSy1nXPjcBLRA==", "dependencies": { - "@algolia/client-common": "4.23.2", - "@algolia/client-search": "4.23.2", - "@algolia/requester-common": "4.23.2", - "@algolia/transporter": "4.23.2" + "@algolia/client-common": "4.23.3", + "@algolia/client-search": "4.23.3", + "@algolia/requester-common": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/client-common": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.23.2.tgz", - "integrity": "sha512-Q2K1FRJBern8kIfZ0EqPvUr3V29ICxCm/q42zInV+VJRjldAD9oTsMGwqUQ26GFMdFYmqkEfCbY4VGAiQhh22g==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.23.3.tgz", + "integrity": "sha512-l6EiPxdAlg8CYhroqS5ybfIczsGUIAC47slLPOMDeKSVXYG1n0qGiz4RjAHLw2aD0xzh2EXZ7aRguPfz7UKDKw==", "dependencies": { - "@algolia/requester-common": "4.23.2", - "@algolia/transporter": "4.23.2" + "@algolia/requester-common": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/client-personalization": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.23.2.tgz", - "integrity": "sha512-vwPsgnCGhUcHhhQG5IM27z8q7dWrN9itjdvgA6uKf2e9r7vB+WXt4OocK0CeoYQt3OGEAExryzsB8DWqdMK5wg==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.23.3.tgz", + "integrity": "sha512-3E3yF3Ocr1tB/xOZiuC3doHQBQ2zu2MPTYZ0d4lpfWads2WTKG7ZzmGnsHmm63RflvDeLK/UVx7j2b3QuwKQ2g==", "dependencies": { - "@algolia/client-common": "4.23.2", - "@algolia/requester-common": "4.23.2", - "@algolia/transporter": "4.23.2" + "@algolia/client-common": "4.23.3", + "@algolia/requester-common": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/client-search": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.23.2.tgz", - "integrity": "sha512-CxSB29OVGSE7l/iyoHvamMonzq7Ev8lnk/OkzleODZ1iBcCs3JC/XgTIKzN/4RSTrJ9QybsnlrN/bYCGufo7qw==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.23.3.tgz", + "integrity": "sha512-P4VAKFHqU0wx9O+q29Q8YVuaowaZ5EM77rxfmGnkHUJggh28useXQdopokgwMeYw2XUht49WX5RcTQ40rZIabw==", "dependencies": { - "@algolia/client-common": "4.23.2", - "@algolia/requester-common": "4.23.2", - "@algolia/transporter": "4.23.2" + "@algolia/client-common": "4.23.3", + "@algolia/requester-common": "4.23.3", + "@algolia/transporter": "4.23.3" } }, "node_modules/@algolia/events": { @@ -159,65 +160,65 @@ "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" }, "node_modules/@algolia/logger-common": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.23.2.tgz", - "integrity": "sha512-jGM49Q7626cXZ7qRAWXn0jDlzvoA1FvN4rKTi1g0hxKsTTSReyYk0i1ADWjChDPl3Q+nSDhJuosM2bBUAay7xw==" + "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==" }, "node_modules/@algolia/logger-console": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.23.2.tgz", - "integrity": "sha512-oo+lnxxEmlhTBTFZ3fGz1O8PJ+G+8FiAoMY2Qo3Q4w23xocQev6KqDTA1JQAGPDxAewNA2VBwWOsVXeXFjrI/Q==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.23.3.tgz", + "integrity": "sha512-8xoiseoWDKuCVnWP8jHthgaeobDLolh00KJAdMe9XPrWPuf1by732jSpgy2BlsLTaT9m32pHI8CRfrOqQzHv3A==", "dependencies": { - "@algolia/logger-common": "4.23.2" + "@algolia/logger-common": "4.23.3" } }, "node_modules/@algolia/recommend": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-4.23.2.tgz", - "integrity": "sha512-Q75CjnzRCDzgIlgWfPnkLtrfF4t82JCirhalXkSSwe/c1GH5pWh4xUyDOR3KTMo+YxxX3zTlrL/FjHmUJEWEcg==", + "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.2", - "@algolia/cache-common": "4.23.2", - "@algolia/cache-in-memory": "4.23.2", - "@algolia/client-common": "4.23.2", - "@algolia/client-search": "4.23.2", - "@algolia/logger-common": "4.23.2", - "@algolia/logger-console": "4.23.2", - "@algolia/requester-browser-xhr": "4.23.2", - "@algolia/requester-common": "4.23.2", - "@algolia/requester-node-http": "4.23.2", - "@algolia/transporter": "4.23.2" + "@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" } }, "node_modules/@algolia/requester-browser-xhr": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.23.2.tgz", - "integrity": "sha512-TO9wLlp8+rvW9LnIfyHsu8mNAMYrqNdQ0oLF6eTWFxXfxG3k8F/Bh7nFYGk2rFAYty4Fw4XUtrv/YjeNDtM5og==", + "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==", "dependencies": { - "@algolia/requester-common": "4.23.2" + "@algolia/requester-common": "4.23.3" } }, "node_modules/@algolia/requester-common": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.23.2.tgz", - "integrity": "sha512-3EfpBS0Hri0lGDB5H/BocLt7Vkop0bTTLVUBB844HH6tVycwShmsV6bDR7yXbQvFP1uNpgePRD3cdBCjeHmk6Q==" + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.23.3.tgz", + "integrity": "sha512-xloIdr/bedtYEGcXCiF2muajyvRhwop4cMZo+K2qzNht0CMzlRkm8YsDdj5IaBhshqfgmBb3rTg4sL4/PpvLYw==" }, "node_modules/@algolia/requester-node-http": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.23.2.tgz", - "integrity": "sha512-SVzgkZM/malo+2SB0NWDXpnT7nO5IZwuDTaaH6SjLeOHcya1o56LSWXk+3F3rNLz2GVH+I/rpYKiqmHhSOjerw==", + "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==", "dependencies": { - "@algolia/requester-common": "4.23.2" + "@algolia/requester-common": "4.23.3" } }, "node_modules/@algolia/transporter": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.23.2.tgz", - "integrity": "sha512-GY3aGKBy+8AK4vZh8sfkatDciDVKad5rTY2S10Aefyjh7e7UGBP4zigf42qVXwU8VOPwi7l/L7OACGMOFcjB0Q==", + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.23.3.tgz", + "integrity": "sha512-Wjl5gttqnf/gQKJA+dafnD0Y6Yw97yvfY8R9h0dQltX1GXTgNs1zWgvtWW0tHl1EgMdhAyw189uWiZMnL3QebQ==", "dependencies": { - "@algolia/cache-common": "4.23.2", - "@algolia/logger-common": "4.23.2", - "@algolia/requester-common": "4.23.2" + "@algolia/cache-common": "4.23.3", + "@algolia/logger-common": "4.23.3", + "@algolia/requester-common": "4.23.3" } }, "node_modules/@ampproject/remapping": { @@ -232,86 +233,38 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/code-frame": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", - "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", + "node_modules/@apidevtools/json-schema-ref-parser": { + "version": "11.6.1", + "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.6.1.tgz", + "integrity": "sha512-DxjgKBCoyReu4p5HMvpmgSOfRhhBcuf5V5soDDRgOTZMwsA4KSFzol1abFZgiCTE11L2kKGca5Md9GwDdXVBwQ==", "dependencies": { - "@babel/highlight": "^7.23.4", - "chalk": "^2.4.2" + "@jsdevtools/ono": "^7.1.3", + "@types/json-schema": "^7.0.15", + "js-yaml": "^4.1.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/philsturgeon" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.24.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", + "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", + "dependencies": { + "@babel/highlight": "^7.24.2", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/code-frame/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/code-frame/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/code-frame/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@babel/compat-data": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", - "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", + "version": "7.24.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.4.tgz", + "integrity": "sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==", "engines": { "node": ">=6.9.0" } @@ -354,13 +307,13 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.5.tgz", - "integrity": "sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.5.tgz", + "integrity": "sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA==", "dependencies": { - "@babel/types": "^7.23.5", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", + "@babel/types": "^7.24.5", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", "jsesc": "^2.5.1" }, "engines": { @@ -390,13 +343,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", - "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.15", - "browserslist": "^4.21.9", + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -524,26 +477,26 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", - "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", + "version": "7.24.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", + "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", "dependencies": { - "@babel/types": "^7.22.15" + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz", + "integrity": "sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A==", "dependencies": { "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" + "@babel/helper-module-imports": "^7.24.3", + "@babel/helper-simple-access": "^7.24.5", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -564,9 +517,9 @@ } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "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==", "engines": { "node": ">=6.9.0" } @@ -604,11 +557,11 @@ } }, "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz", + "integrity": "sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ==", "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" @@ -626,36 +579,36 @@ } }, "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz", + "integrity": "sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q==", "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "version": "7.24.1", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", + "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz", + "integrity": "sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", - "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", "engines": { "node": ">=6.9.0" } @@ -674,26 +627,27 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.5.tgz", - "integrity": "sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.5.tgz", + "integrity": "sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q==", "dependencies": { - "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.5", - "@babel/types": "^7.23.5" + "@babel/template": "^7.24.0", + "@babel/traverse": "^7.24.5", + "@babel/types": "^7.24.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", - "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.5.tgz", + "integrity": "sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw==", "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-validator-identifier": "^7.24.5", "chalk": "^2.4.2", - "js-tokens": "^4.0.0" + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -764,9 +718,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.5.tgz", - "integrity": "sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.5.tgz", + "integrity": "sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg==", "bin": { "parser": "bin/babel-parser.js" }, @@ -1626,11 +1580,11 @@ } }, "node_modules/@babel/plugin-transform-react-constant-elements": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.22.5.tgz", - "integrity": "sha512-BF5SXoO+nX3h5OhlN78XbbDrBOffv+AxPP2ENaJOVqjWCgBDeOY3WcaUcddutGSfoap+5NEQ/q/4I3WZIvgkXA==", + "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==", "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" + "@babel/helper-plugin-utils": "^7.24.0" }, "engines": { "node": ">=6.9.0" @@ -2083,32 +2037,32 @@ } }, "node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", + "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" + "@babel/code-frame": "^7.23.5", + "@babel/parser": "^7.24.0", + "@babel/types": "^7.24.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.5.tgz", - "integrity": "sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.5.tgz", + "integrity": "sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA==", "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.5", + "@babel/code-frame": "^7.24.2", + "@babel/generator": "^7.24.5", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.5", - "@babel/types": "^7.23.5", - "debug": "^4.1.0", + "@babel/helper-split-export-declaration": "^7.24.5", + "@babel/parser": "^7.24.5", + "@babel/types": "^7.24.5", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -2116,12 +2070,12 @@ } }, "node_modules/@babel/types": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.5.tgz", - "integrity": "sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==", + "version": "7.24.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.5.tgz", + "integrity": "sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ==", "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", + "@babel/helper-string-parser": "^7.24.1", + "@babel/helper-validator-identifier": "^7.24.5", "to-fast-properties": "^2.0.0" }, "engines": { @@ -2187,9 +2141,9 @@ } }, "node_modules/@docusaurus/core": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.2.1.tgz", - "integrity": "sha512-ZeMAqNvy0eBv2dThEeMuNzzuu+4thqMQakhxsgT5s02A8LqRcdkg+rbcnuNqUIpekQ4GRx3+M5nj0ODJhBXo9w==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.3.2.tgz", + "integrity": "sha512-PzKMydKI3IU1LmeZQDi+ut5RSuilbXnA8QdowGeJEgU8EJjmx3rBHNT1LxQxOVqNEwpWi/csLwd9bn7rUjggPA==", "dependencies": { "@babel/core": "^7.23.3", "@babel/generator": "^7.23.3", @@ -2201,14 +2155,12 @@ "@babel/runtime": "^7.22.6", "@babel/runtime-corejs3": "^7.22.6", "@babel/traverse": "^7.22.8", - "@docusaurus/cssnano-preset": "3.2.1", - "@docusaurus/logger": "3.2.1", - "@docusaurus/mdx-loader": "3.2.1", - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-common": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", - "@svgr/webpack": "^6.5.1", + "@docusaurus/cssnano-preset": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "autoprefixer": "^10.4.14", "babel-loader": "^9.1.3", "babel-plugin-dynamic-import-node": "^2.3.3", @@ -2222,8 +2174,8 @@ "copy-webpack-plugin": "^11.0.0", "core-js": "^3.31.1", "css-loader": "^6.8.1", - "css-minimizer-webpack-plugin": "^4.2.2", - "cssnano": "^5.1.15", + "css-minimizer-webpack-plugin": "^5.0.1", + "cssnano": "^6.1.2", "del": "^6.1.1", "detect-port": "^1.5.1", "escape-html": "^1.0.3", @@ -2243,7 +2195,7 @@ "prompts": "^2.4.2", "react-dev-utils": "^12.0.1", "react-helmet-async": "^1.3.0", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0", "react-loadable-ssr-addon-v5-slorber": "^1.0.1", "react-router": "^5.3.4", "react-router-config": "^5.1.1", @@ -2273,14 +2225,40 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/core/node_modules/@docusaurus/mdx-loader": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.2.1.tgz", - "integrity": "sha512-Fs8tXhXKZjNkdGaOy1xSLXSwfjCMT73J3Zfrju2U16uGedRFRjgK0ojpK5tiC7TnunsL3tOFgp1BSMBRflX9gw==", + "node_modules/@docusaurus/cssnano-preset": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.3.2.tgz", + "integrity": "sha512-+5+epLk/Rp4vFML4zmyTATNc3Is+buMAL6dNjrMWahdJCJlMWMPd/8YfU+2PA57t8mlSbhLJ7vAZVy54cd1vRQ==", "dependencies": { - "@docusaurus/logger": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "cssnano-preset-advanced": "^6.1.2", + "postcss": "^8.4.38", + "postcss-sort-media-queries": "^5.2.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/logger": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.3.2.tgz", + "integrity": "sha512-Ldu38GJ4P8g4guN7d7pyCOJ7qQugG7RVyaxrK8OnxuTlaImvQw33aDRwaX2eNmX8YK6v+//Z502F4sOZbHHCHQ==", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.6.0" + }, + "engines": { + "node": ">=18.0" + } + }, + "node_modules/@docusaurus/mdx-loader": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.3.2.tgz", + "integrity": "sha512-AFRxj/aOk3/mfYDPxE3wTbrjeayVRvNSZP7mgMuUlrb2UlPRbSVAFX1k2RbgAJrnTSwMgb92m2BhJgYRfptN3g==", + "dependencies": { + "@docusaurus/logger": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "@mdx-js/mdx": "^3.0.0", "@slorber/remark-comment": "^1.0.0", "escape-html": "^1.0.3", @@ -2311,45 +2289,18 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/cssnano-preset": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.2.1.tgz", - "integrity": "sha512-wTL9KuSSbMJjKrfu385HZEzAoamUsbKqwscAQByZw4k6Ja/RWpqgVvt/CbAC+aYEH6inLzOt+MjuRwMOrD3VBA==", - "dependencies": { - "cssnano-preset-advanced": "^5.3.10", - "postcss": "^8.4.26", - "postcss-sort-media-queries": "^4.4.1", - "tslib": "^2.6.0" - }, - "engines": { - "node": ">=18.0" - } - }, - "node_modules/@docusaurus/logger": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.2.1.tgz", - "integrity": "sha512-0voOKJCn9RaM3np6soqEfo7SsVvf2C+CDTWhW+H/1AyBhybASpExtDEz+7ECck9TwPzFQ5tt+I3zVugUJbJWDg==", - "dependencies": { - "chalk": "^4.1.2", - "tslib": "^2.6.0" - }, - "engines": { - "node": ">=18.0" - } - }, "node_modules/@docusaurus/module-type-aliases": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.2.1.tgz", - "integrity": "sha512-FyViV5TqhL1vsM7eh29nJ5NtbRE6Ra6LP1PDcPvhwPSlA7eiWGRKAn3jWwMUcmjkos5SYY+sr0/feCdbM3eQHQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.3.2.tgz", + "integrity": "sha512-b/XB0TBJah5yKb4LYuJT4buFvL0MGAb0+vJDrJtlYMguRtsEBkf2nWl5xP7h4Dlw6ol0hsHrCYzJ50kNIOEclw==", "dependencies": { - "@docusaurus/react-loadable": "5.5.2", - "@docusaurus/types": "3.2.1", + "@docusaurus/types": "3.3.2", "@types/history": "^4.7.11", "@types/react": "*", "@types/react-router-config": "*", "@types/react-router-dom": "*", "react-helmet-async": "*", - "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" + "react-loadable": "npm:@docusaurus/react-loadable@6.0.0" }, "peerDependencies": { "react": "*", @@ -2357,15 +2308,15 @@ } }, "node_modules/@docusaurus/plugin-client-redirects": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-client-redirects/-/plugin-client-redirects-3.2.1.tgz", - "integrity": "sha512-GgzuqwbqNQSP5s/ouUrOQFuHI8m4Rn8a5CHuWkwpqj+5lbQMsABcvsoiWjrH9M00CzN48q+slSbJy7rtHjn7zg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-client-redirects/-/plugin-client-redirects-3.3.2.tgz", + "integrity": "sha512-W8ueb5PaQ06oanatL+CzE3GjqeRBTzv3MSFqEQlBa8BqLyOomc1uHsWgieE3glHsckU4mUZ6sHnOfesAtYnnew==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/logger": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-common": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "eta": "^2.2.0", "fs-extra": "^11.1.1", "lodash": "^4.17.21", @@ -2380,17 +2331,17 @@ } }, "node_modules/@docusaurus/plugin-content-blog": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.2.1.tgz", - "integrity": "sha512-lOx0JfhlGZoZu6pEJfeEpSISZR5dQbJGGvb42IP13G5YThNHhG9R9uoWuo4IOimPqBC7sHThdLA3VLevk61Fsw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.3.2.tgz", + "integrity": "sha512-fJU+dmqp231LnwDJv+BHVWft8pcUS2xVPZdeYH6/ibH1s2wQ/sLcmUrGWyIv/Gq9Ptj8XWjRPMghlxghuPPoxg==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/logger": "3.2.1", - "@docusaurus/mdx-loader": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-common": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "cheerio": "^1.0.0-rc.12", "feed": "^4.2.2", "fs-extra": "^11.1.1", @@ -2410,57 +2361,19 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/plugin-content-blog/node_modules/@docusaurus/mdx-loader": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.2.1.tgz", - "integrity": "sha512-Fs8tXhXKZjNkdGaOy1xSLXSwfjCMT73J3Zfrju2U16uGedRFRjgK0ojpK5tiC7TnunsL3tOFgp1BSMBRflX9gw==", - "dependencies": { - "@docusaurus/logger": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", - "@mdx-js/mdx": "^3.0.0", - "@slorber/remark-comment": "^1.0.0", - "escape-html": "^1.0.3", - "estree-util-value-to-estree": "^3.0.1", - "file-loader": "^6.2.0", - "fs-extra": "^11.1.1", - "image-size": "^1.0.2", - "mdast-util-mdx": "^3.0.0", - "mdast-util-to-string": "^4.0.0", - "rehype-raw": "^7.0.0", - "remark-directive": "^3.0.0", - "remark-emoji": "^4.0.0", - "remark-frontmatter": "^5.0.0", - "remark-gfm": "^4.0.0", - "stringify-object": "^3.3.0", - "tslib": "^2.6.0", - "unified": "^11.0.3", - "unist-util-visit": "^5.0.0", - "url-loader": "^4.1.1", - "vfile": "^6.0.1", - "webpack": "^5.88.1" - }, - "engines": { - "node": ">=18.0" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, "node_modules/@docusaurus/plugin-content-docs": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.2.1.tgz", - "integrity": "sha512-GHe5b/lCskAR8QVbfWAfPAApvRZgqk7FN3sOHgjCtjzQACZxkHmq6QqyqZ8Jp45V7lVck4wt2Xw2IzBJ7Cz3bA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.3.2.tgz", + "integrity": "sha512-Dm1ri2VlGATTN3VGk1ZRqdRXWa1UlFubjaEL6JaxaK7IIFqN/Esjpl+Xw10R33loHcRww/H76VdEeYayaL76eg==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/logger": "3.2.1", - "@docusaurus/mdx-loader": "3.2.1", - "@docusaurus/module-type-aliases": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-common": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/module-type-aliases": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "@types/react-router-config": "^5.0.7", "combine-promises": "^1.1.0", "fs-extra": "^11.1.1", @@ -2478,54 +2391,16 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/mdx-loader": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.2.1.tgz", - "integrity": "sha512-Fs8tXhXKZjNkdGaOy1xSLXSwfjCMT73J3Zfrju2U16uGedRFRjgK0ojpK5tiC7TnunsL3tOFgp1BSMBRflX9gw==", - "dependencies": { - "@docusaurus/logger": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", - "@mdx-js/mdx": "^3.0.0", - "@slorber/remark-comment": "^1.0.0", - "escape-html": "^1.0.3", - "estree-util-value-to-estree": "^3.0.1", - "file-loader": "^6.2.0", - "fs-extra": "^11.1.1", - "image-size": "^1.0.2", - "mdast-util-mdx": "^3.0.0", - "mdast-util-to-string": "^4.0.0", - "rehype-raw": "^7.0.0", - "remark-directive": "^3.0.0", - "remark-emoji": "^4.0.0", - "remark-frontmatter": "^5.0.0", - "remark-gfm": "^4.0.0", - "stringify-object": "^3.3.0", - "tslib": "^2.6.0", - "unified": "^11.0.3", - "unist-util-visit": "^5.0.0", - "url-loader": "^4.1.1", - "vfile": "^6.0.1", - "webpack": "^5.88.1" - }, - "engines": { - "node": ">=18.0" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, "node_modules/@docusaurus/plugin-content-pages": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.2.1.tgz", - "integrity": "sha512-TOqVfMVTAHqWNEGM94Drz+PUpHDbwFy6ucHFgyTx9zJY7wPNSG5EN+rd/mU7OvAi26qpOn2o9xTdUmb28QLjEQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.3.2.tgz", + "integrity": "sha512-EKc9fQn5H2+OcGER8x1aR+7URtAGWySUgULfqE/M14+rIisdrBstuEZ4lUPDRrSIexOVClML82h2fDS+GSb8Ew==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/mdx-loader": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "fs-extra": "^11.1.1", "tslib": "^2.6.0", "webpack": "^5.88.1" @@ -2538,52 +2413,14 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/plugin-content-pages/node_modules/@docusaurus/mdx-loader": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.2.1.tgz", - "integrity": "sha512-Fs8tXhXKZjNkdGaOy1xSLXSwfjCMT73J3Zfrju2U16uGedRFRjgK0ojpK5tiC7TnunsL3tOFgp1BSMBRflX9gw==", - "dependencies": { - "@docusaurus/logger": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", - "@mdx-js/mdx": "^3.0.0", - "@slorber/remark-comment": "^1.0.0", - "escape-html": "^1.0.3", - "estree-util-value-to-estree": "^3.0.1", - "file-loader": "^6.2.0", - "fs-extra": "^11.1.1", - "image-size": "^1.0.2", - "mdast-util-mdx": "^3.0.0", - "mdast-util-to-string": "^4.0.0", - "rehype-raw": "^7.0.0", - "remark-directive": "^3.0.0", - "remark-emoji": "^4.0.0", - "remark-frontmatter": "^5.0.0", - "remark-gfm": "^4.0.0", - "stringify-object": "^3.3.0", - "tslib": "^2.6.0", - "unified": "^11.0.3", - "unist-util-visit": "^5.0.0", - "url-loader": "^4.1.1", - "vfile": "^6.0.1", - "webpack": "^5.88.1" - }, - "engines": { - "node": ">=18.0" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, "node_modules/@docusaurus/plugin-debug": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-3.2.1.tgz", - "integrity": "sha512-AMKq8NuUKf2sRpN1m/sIbqbRbnmk+rSA+8mNU1LNxEl9BW9F/Gng8m9HKlzeyMPrf5XidzS1jqkuTLDJ6KIrFw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-3.3.2.tgz", + "integrity": "sha512-oBIBmwtaB+YS0XlmZ3gCO+cMbsGvIYuAKkAopoCh0arVjtlyPbejzPrHuCoRHB9G7abjNZw7zoONOR8+8LM5+Q==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", "fs-extra": "^11.1.1", "react-json-view-lite": "^1.2.0", "tslib": "^2.6.0" @@ -2597,13 +2434,13 @@ } }, "node_modules/@docusaurus/plugin-google-analytics": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.2.1.tgz", - "integrity": "sha512-/rJ+9u+Px0eTCiF4TNcNtj3kHf8cp6K1HCwOTdbsSlz6Xn21syZYcy+f1VM9wF6HrvUkXUcbM5TDCvg2IRL6bQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.3.2.tgz", + "integrity": "sha512-jXhrEIhYPSClMBK6/IA8qf1/FBoxqGXZvg7EuBax9HaK9+kL3L0TJIlatd8jQJOMtds8mKw806TOCc3rtEad1A==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "tslib": "^2.6.0" }, "engines": { @@ -2615,13 +2452,13 @@ } }, "node_modules/@docusaurus/plugin-google-gtag": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.2.1.tgz", - "integrity": "sha512-XtuJnlMvYfppeVdUyKiDIJAa/gTJKCQU92z8CLZZ9ibJdgVjFOLS10s0hIC0eL5z0U2u2loJz2rZ63HOkNHbBA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.3.2.tgz", + "integrity": "sha512-vcrKOHGbIDjVnNMrfbNpRQR1x6Jvcrb48kVzpBAOsKbj9rXZm/idjVAXRaewwobHdOrJkfWS/UJoxzK8wyLRBQ==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "@types/gtag.js": "^0.0.12", "tslib": "^2.6.0" }, @@ -2634,13 +2471,13 @@ } }, "node_modules/@docusaurus/plugin-google-tag-manager": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.2.1.tgz", - "integrity": "sha512-wiS/kE0Ny5pnjTxVCs8ljRnkL1RVMj59t6jmSsgEX7piDOoaXSMIUaoIt9ogS/v132uO0xEsxHstkRUZHQyPcQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.3.2.tgz", + "integrity": "sha512-ldkR58Fdeks0vC+HQ+L+bGFSJsotQsipXD+iKXQFvkOfmPIV6QbHRd7IIcm5b6UtwOiK33PylNS++gjyLUmaGw==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "tslib": "^2.6.0" }, "engines": { @@ -2652,16 +2489,16 @@ } }, "node_modules/@docusaurus/plugin-sitemap": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.2.1.tgz", - "integrity": "sha512-uWZ7AxzdeaQSTCwD2yZtOiEm9zyKU+wqCmi/Sf25kQQqqFSBZUStXfaQ8OHP9cecnw893ZpZ811rPhB/wfujJw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.3.2.tgz", + "integrity": "sha512-/ZI1+bwZBhAgC30inBsHe3qY9LOZS+79fRGkNdTcGHRMcdAp6Vw2pCd1gzlxd/xU+HXsNP6cLmTOrggmRp3Ujg==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/logger": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-common": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "fs-extra": "^11.1.1", "sitemap": "^7.1.1", "tslib": "^2.6.0" @@ -2675,23 +2512,23 @@ } }, "node_modules/@docusaurus/preset-classic": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-3.2.1.tgz", - "integrity": "sha512-E3OHSmttpEBcSMhfPBq3EJMBxZBM01W1rnaCUTXy9EHvkmB5AwgTfW1PwGAybPAX579ntE03R+2zmXdizWfKnQ==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-3.3.2.tgz", + "integrity": "sha512-1SDS7YIUN1Pg3BmD6TOTjhB7RSBHJRpgIRKx9TpxqyDrJ92sqtZhomDc6UYoMMLQNF2wHFZZVGFjxJhw2VpL+Q==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/plugin-content-blog": "3.2.1", - "@docusaurus/plugin-content-docs": "3.2.1", - "@docusaurus/plugin-content-pages": "3.2.1", - "@docusaurus/plugin-debug": "3.2.1", - "@docusaurus/plugin-google-analytics": "3.2.1", - "@docusaurus/plugin-google-gtag": "3.2.1", - "@docusaurus/plugin-google-tag-manager": "3.2.1", - "@docusaurus/plugin-sitemap": "3.2.1", - "@docusaurus/theme-classic": "3.2.1", - "@docusaurus/theme-common": "3.2.1", - "@docusaurus/theme-search-algolia": "3.2.1", - "@docusaurus/types": "3.2.1" + "@docusaurus/core": "3.3.2", + "@docusaurus/plugin-content-blog": "3.3.2", + "@docusaurus/plugin-content-docs": "3.3.2", + "@docusaurus/plugin-content-pages": "3.3.2", + "@docusaurus/plugin-debug": "3.3.2", + "@docusaurus/plugin-google-analytics": "3.3.2", + "@docusaurus/plugin-google-gtag": "3.3.2", + "@docusaurus/plugin-google-tag-manager": "3.3.2", + "@docusaurus/plugin-sitemap": "3.3.2", + "@docusaurus/theme-classic": "3.3.2", + "@docusaurus/theme-common": "3.3.2", + "@docusaurus/theme-search-algolia": "3.3.2", + "@docusaurus/types": "3.3.2" }, "engines": { "node": ">=18.0" @@ -2701,35 +2538,23 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/react-loadable": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", - "dependencies": { - "@types/react": "*", - "prop-types": "^15.6.2" - }, - "peerDependencies": { - "react": "*" - } - }, "node_modules/@docusaurus/theme-classic": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.2.1.tgz", - "integrity": "sha512-+vSbnQyoWjc6vRZi4vJO2dBU02wqzynsai15KK+FANZudrYaBHtkbLZAQhgmxzBGVpxzi87gRohlMm+5D8f4tA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.3.2.tgz", + "integrity": "sha512-gepHFcsluIkPb4Im9ukkiO4lXrai671wzS3cKQkY9BXQgdVwsdPf/KS0Vs4Xlb0F10fTz+T3gNjkxNEgSN9M0A==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/mdx-loader": "3.2.1", - "@docusaurus/module-type-aliases": "3.2.1", - "@docusaurus/plugin-content-blog": "3.2.1", - "@docusaurus/plugin-content-docs": "3.2.1", - "@docusaurus/plugin-content-pages": "3.2.1", - "@docusaurus/theme-common": "3.2.1", - "@docusaurus/theme-translations": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-common": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/module-type-aliases": "3.3.2", + "@docusaurus/plugin-content-blog": "3.3.2", + "@docusaurus/plugin-content-docs": "3.3.2", + "@docusaurus/plugin-content-pages": "3.3.2", + "@docusaurus/theme-common": "3.3.2", + "@docusaurus/theme-translations": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "@mdx-js/react": "^3.0.0", "clsx": "^2.0.0", "copy-text-to-clipboard": "^3.2.0", @@ -2752,56 +2577,18 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/theme-classic/node_modules/@docusaurus/mdx-loader": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.2.1.tgz", - "integrity": "sha512-Fs8tXhXKZjNkdGaOy1xSLXSwfjCMT73J3Zfrju2U16uGedRFRjgK0ojpK5tiC7TnunsL3tOFgp1BSMBRflX9gw==", - "dependencies": { - "@docusaurus/logger": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", - "@mdx-js/mdx": "^3.0.0", - "@slorber/remark-comment": "^1.0.0", - "escape-html": "^1.0.3", - "estree-util-value-to-estree": "^3.0.1", - "file-loader": "^6.2.0", - "fs-extra": "^11.1.1", - "image-size": "^1.0.2", - "mdast-util-mdx": "^3.0.0", - "mdast-util-to-string": "^4.0.0", - "rehype-raw": "^7.0.0", - "remark-directive": "^3.0.0", - "remark-emoji": "^4.0.0", - "remark-frontmatter": "^5.0.0", - "remark-gfm": "^4.0.0", - "stringify-object": "^3.3.0", - "tslib": "^2.6.0", - "unified": "^11.0.3", - "unist-util-visit": "^5.0.0", - "url-loader": "^4.1.1", - "vfile": "^6.0.1", - "webpack": "^5.88.1" - }, - "engines": { - "node": ">=18.0" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, "node_modules/@docusaurus/theme-common": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.2.1.tgz", - "integrity": "sha512-d+adiD7L9xv6EvfaAwUqdKf4orsM3jqgeqAM+HAjgL/Ux0GkVVnfKr+tsoe+4ow4rHe6NUt+nkkW8/K8dKdilA==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-3.3.2.tgz", + "integrity": "sha512-kXqSaL/sQqo4uAMQ4fHnvRZrH45Xz2OdJ3ABXDS7YVGPSDTBC8cLebFrRR4YF9EowUHto1UC/EIklJZQMG/usA==", "dependencies": { - "@docusaurus/mdx-loader": "3.2.1", - "@docusaurus/module-type-aliases": "3.2.1", - "@docusaurus/plugin-content-blog": "3.2.1", - "@docusaurus/plugin-content-docs": "3.2.1", - "@docusaurus/plugin-content-pages": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-common": "3.2.1", + "@docusaurus/mdx-loader": "3.3.2", + "@docusaurus/module-type-aliases": "3.3.2", + "@docusaurus/plugin-content-blog": "3.3.2", + "@docusaurus/plugin-content-docs": "3.3.2", + "@docusaurus/plugin-content-pages": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", "@types/history": "^4.7.11", "@types/react": "*", "@types/react-router-config": "*", @@ -2819,54 +2606,16 @@ "react-dom": "^18.0.0" } }, - "node_modules/@docusaurus/theme-common/node_modules/@docusaurus/mdx-loader": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.2.1.tgz", - "integrity": "sha512-Fs8tXhXKZjNkdGaOy1xSLXSwfjCMT73J3Zfrju2U16uGedRFRjgK0ojpK5tiC7TnunsL3tOFgp1BSMBRflX9gw==", - "dependencies": { - "@docusaurus/logger": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", - "@mdx-js/mdx": "^3.0.0", - "@slorber/remark-comment": "^1.0.0", - "escape-html": "^1.0.3", - "estree-util-value-to-estree": "^3.0.1", - "file-loader": "^6.2.0", - "fs-extra": "^11.1.1", - "image-size": "^1.0.2", - "mdast-util-mdx": "^3.0.0", - "mdast-util-to-string": "^4.0.0", - "rehype-raw": "^7.0.0", - "remark-directive": "^3.0.0", - "remark-emoji": "^4.0.0", - "remark-frontmatter": "^5.0.0", - "remark-gfm": "^4.0.0", - "stringify-object": "^3.3.0", - "tslib": "^2.6.0", - "unified": "^11.0.3", - "unist-util-visit": "^5.0.0", - "url-loader": "^4.1.1", - "vfile": "^6.0.1", - "webpack": "^5.88.1" - }, - "engines": { - "node": ">=18.0" - }, - "peerDependencies": { - "react": "^18.0.0", - "react-dom": "^18.0.0" - } - }, "node_modules/@docusaurus/theme-mermaid": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-mermaid/-/theme-mermaid-3.2.1.tgz", - "integrity": "sha512-l1FzUPgDUor/25XeJDeO22dttmzB0QnmAbF2qKjDz3ENa9vlD5rd5r0NrItZIe8y7qoa+OOxkl5lLBKBxBVbLg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-mermaid/-/theme-mermaid-3.3.2.tgz", + "integrity": "sha512-JY6q7owe5S5iH2N9oTjNDkqmuPW/+4j/zrX46Xag4RYOzt+WtMkeJilbzak8QGG8I2wDJXjUvX7Lu/jWuDAwUg==", "dependencies": { - "@docusaurus/core": "3.2.1", - "@docusaurus/module-type-aliases": "3.2.1", - "@docusaurus/theme-common": "3.2.1", - "@docusaurus/types": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/module-type-aliases": "3.3.2", + "@docusaurus/theme-common": "3.3.2", + "@docusaurus/types": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "mermaid": "^10.4.0", "tslib": "^2.6.0" }, @@ -2879,18 +2628,18 @@ } }, "node_modules/@docusaurus/theme-search-algolia": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.2.1.tgz", - "integrity": "sha512-bzhCrpyXBXzeydNUH83II2akvFEGfhsNTPPWsk5N7e+odgQCQwoHhcF+2qILbQXjaoZ6B3c48hrvkyCpeyqGHw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.3.2.tgz", + "integrity": "sha512-qLkfCl29VNBnF1MWiL9IyOQaHxUvicZp69hISyq/xMsNvFKHFOaOfk9xezYod2Q9xx3xxUh9t/QPigIei2tX4w==", "dependencies": { "@docsearch/react": "^3.5.2", - "@docusaurus/core": "3.2.1", - "@docusaurus/logger": "3.2.1", - "@docusaurus/plugin-content-docs": "3.2.1", - "@docusaurus/theme-common": "3.2.1", - "@docusaurus/theme-translations": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-validation": "3.2.1", + "@docusaurus/core": "3.3.2", + "@docusaurus/logger": "3.3.2", + "@docusaurus/plugin-content-docs": "3.3.2", + "@docusaurus/theme-common": "3.3.2", + "@docusaurus/theme-translations": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-validation": "3.3.2", "algoliasearch": "^4.18.0", "algoliasearch-helper": "^3.13.3", "clsx": "^2.0.0", @@ -2909,9 +2658,9 @@ } }, "node_modules/@docusaurus/theme-translations": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.2.1.tgz", - "integrity": "sha512-jAUMkIkFfY+OAhJhv6mV8zlwY6J4AQxJPTgLdR2l+Otof9+QdJjHNh/ifVEu9q0lp3oSPlJj9l05AaP7Ref+cg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.3.2.tgz", + "integrity": "sha512-bPuiUG7Z8sNpGuTdGnmKl/oIPeTwKr0AXLGu9KaP6+UFfRZiyWbWE87ti97RrevB2ffojEdvchNujparR3jEZQ==", "dependencies": { "fs-extra": "^11.1.1", "tslib": "^2.6.0" @@ -2921,15 +2670,15 @@ } }, "node_modules/@docusaurus/tsconfig": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/tsconfig/-/tsconfig-3.2.1.tgz", - "integrity": "sha512-+biUwtsYW3oChLxYezzA+NIgS3Q9KDRl7add/YT54RXs9Q4rKInebxdHdG6JFs5BaTg45gyjDu0rvNVcGeHODg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/tsconfig/-/tsconfig-3.3.2.tgz", + "integrity": "sha512-2MQXkLoWqgOSiqFojNEq8iPtFBHGQqd1b/SQMoe+v3GgHmk/L6YTTO/hMcHhWb1hTFmbkei++IajSfD3RlZKvw==", "dev": true }, "node_modules/@docusaurus/types": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.2.1.tgz", - "integrity": "sha512-n/toxBzL2oxTtRTOFiGKsHypzn/Pm+sXyw+VSk1UbqbXQiHOwHwts55bpKwbcUgA530Is6kix3ELiFOv9GAMfw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.3.2.tgz", + "integrity": "sha512-5p201S7AZhliRxTU7uMKtSsoC8mgPA9bs9b5NQg1IRdRxJfflursXNVsgc3PcMqiUTul/v1s3k3rXXFlRE890w==", "dependencies": { "@mdx-js/mdx": "^3.0.0", "@types/history": "^4.7.11", @@ -2947,13 +2696,13 @@ } }, "node_modules/@docusaurus/utils": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.2.1.tgz", - "integrity": "sha512-DPkIS/EPc+pGAV798PUXgNzJFM3HJouoQXgr0KDZuJVz1EkWbDLOcQwLIz8Qx7liI9ddfkN/TXTRQdsTPZNakw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.3.2.tgz", + "integrity": "sha512-f4YMnBVymtkSxONv4Y8js3Gez9IgHX+Lcg6YRMOjVbq8sgCcdYK1lf6SObAuz5qB/mxiSK7tW0M9aaiIaUSUJg==", "dependencies": { - "@docusaurus/logger": "3.2.1", - "@docusaurus/utils-common": "3.2.1", - "@svgr/webpack": "^6.5.1", + "@docusaurus/logger": "3.3.2", + "@docusaurus/utils-common": "3.3.2", + "@svgr/webpack": "^8.1.0", "escape-string-regexp": "^4.0.0", "file-loader": "^6.2.0", "fs-extra": "^11.1.1", @@ -2984,9 +2733,9 @@ } }, "node_modules/@docusaurus/utils-common": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.2.1.tgz", - "integrity": "sha512-N5vadULnRLiqX2QfTjVEU3u5vo6RG2EZTdyXvJdzDOdrLCGIZAfnf/VkssinFZ922sVfaFfQ4FnStdhn5TWdVg==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.3.2.tgz", + "integrity": "sha512-QWFTLEkPYsejJsLStgtmetMFIA3pM8EPexcZ4WZ7b++gO5jGVH7zsipREnCHzk6+eDgeaXfkR6UPaTt86bp8Og==", "dependencies": { "tslib": "^2.6.0" }, @@ -3003,13 +2752,13 @@ } }, "node_modules/@docusaurus/utils-validation": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.2.1.tgz", - "integrity": "sha512-+x7IR9hNMXi62L1YAglwd0s95fR7+EtirjTxSN4kahYRWGqOi3jlQl1EV0az/yTEvKbxVvOPcdYicGu9dk4LJw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.3.2.tgz", + "integrity": "sha512-itDgFs5+cbW9REuC7NdXals4V6++KifgVMzoGOOOSIifBQw+8ULhy86u5e1lnptVL0sv8oAjq2alO7I40GR7pA==", "dependencies": { - "@docusaurus/logger": "3.2.1", - "@docusaurus/utils": "3.2.1", - "@docusaurus/utils-common": "3.2.1", + "@docusaurus/logger": "3.3.2", + "@docusaurus/utils": "3.3.2", + "@docusaurus/utils-common": "3.3.2", "joi": "^17.9.2", "js-yaml": "^4.1.0", "tslib": "^2.6.0" @@ -3018,24 +2767,6 @@ "node": ">=18.0" } }, - "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==", - "dependencies": { - "@emotion/memoize": "^0.8.1" - } - }, - "node_modules/@emotion/memoize": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz", - "integrity": "sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==" - }, - "node_modules/@emotion/unitless": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.8.0.tgz", - "integrity": "sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==" - }, "node_modules/@exodus/schemasafe": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@exodus/schemasafe/-/schemasafe-1.3.0.tgz", @@ -3076,6 +2807,57 @@ "@hapi/hoek": "^9.0.0" } }, + "node_modules/@hookform/error-message": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@hookform/error-message/-/error-message-2.0.1.tgz", + "integrity": "sha512-U410sAr92xgxT1idlu9WWOVjndxLdgPUHEB8Schr27C9eh7/xUnITWpCMF93s+lGiG++D4JnbSnrb5A21AdSNg==", + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0", + "react-hook-form": "^7.0.0" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, "node_modules/@jest/schemas": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", @@ -3104,13 +2886,13 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" @@ -3125,9 +2907,9 @@ } }, "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "engines": { "node": ">=6.0.0" } @@ -3147,14 +2929,19 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@jsdevtools/ono": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", + "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==" + }, "node_modules/@leichtgewicht/ip-codec": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", @@ -3242,6 +3029,176 @@ "node": ">= 8" } }, + "node_modules/@paloaltonetworks/openapi-to-postmanv2": { + "version": "3.1.0-hotfix.1", + "resolved": "https://registry.npmjs.org/@paloaltonetworks/openapi-to-postmanv2/-/openapi-to-postmanv2-3.1.0-hotfix.1.tgz", + "integrity": "sha512-0bdaPCEyQbnUo4xpOu7EzxXXkDx4BAXqc8QSbVBlzlVB5KoTLJiKKB4c3fa4BXbK+3u/OqfLbeNCebc2EC8ngA==", + "dependencies": { + "@paloaltonetworks/postman-collection": "^4.1.0", + "ajv": "8.1.0", + "ajv-formats": "2.1.1", + "async": "3.2.1", + "commander": "2.20.3", + "js-yaml": "3.14.1", + "json-schema-merge-allof": "0.8.1", + "lodash": "4.17.21", + "oas-resolver-browser": "2.5.2", + "path-browserify": "1.0.1", + "yaml": "1.10.2" + }, + "bin": { + "openapi2postmanv2": "bin/openapi2postmanv2.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@paloaltonetworks/openapi-to-postmanv2/node_modules/ajv": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.1.0.tgz", + "integrity": "sha512-B/Sk2Ix7A36fs/ZkuGLIR86EdjbgR6fsAcbx9lOP/QBSXujDNbVmIS/U4Itz5k8fPFDeVZl/zQ/gJW4Jrq6XjQ==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@paloaltonetworks/openapi-to-postmanv2/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@paloaltonetworks/openapi-to-postmanv2/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==" + }, + "node_modules/@paloaltonetworks/openapi-to-postmanv2/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@paloaltonetworks/postman-code-generators": { + "version": "1.1.15-patch.2", + "resolved": "https://registry.npmjs.org/@paloaltonetworks/postman-code-generators/-/postman-code-generators-1.1.15-patch.2.tgz", + "integrity": "sha512-tRnAKtV4M8wLxcVnAx6ZCjCqbrR1xiqJNQkf1A71K8UxEP3N/+EspT82N5c0555w02oYFk21ViHuzuhm4gaGLw==", + "hasInstallScript": true, + "dependencies": { + "@paloaltonetworks/postman-collection": "^4.1.0", + "async": "^3.2.4", + "path": "^0.12.7", + "shelljs": "^0.8.5" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@paloaltonetworks/postman-code-generators/node_modules/async": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", + "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==" + }, + "node_modules/@paloaltonetworks/postman-collection": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@paloaltonetworks/postman-collection/-/postman-collection-4.1.1.tgz", + "integrity": "sha512-9JHHkkD8Xb4rvdKob7TDPRfqfmdG3KU0aO5gJyyjvMFbOVysam5I0d8/9HPOuJXWkUHGo3Sn+ov2Fcm2bnJ52Q==", + "dependencies": { + "file-type": "3.9.0", + "http-reasons": "0.1.0", + "iconv-lite": "0.6.3", + "liquid-json": "0.3.1", + "lodash": "4.17.21", + "mime-format": "2.0.1", + "mime-types": "2.1.34", + "postman-url-encoder": "3.0.5", + "semver": "7.3.5", + "uuid": "8.3.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@paloaltonetworks/postman-collection/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@paloaltonetworks/postman-collection/node_modules/mime-db": { + "version": "1.51.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz", + "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@paloaltonetworks/postman-collection/node_modules/mime-types": { + "version": "2.1.34", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz", + "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==", + "dependencies": { + "mime-db": "1.51.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@paloaltonetworks/postman-collection/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@paloaltonetworks/postman-collection/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@paloaltonetworks/postman-collection/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, "node_modules/@pnpm/config.env-replace": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz", @@ -3299,48 +3256,32 @@ "url": "https://github.com/sponsors/epoberezkin" } }, - "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==", + "node_modules/@redocly/config": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@redocly/config/-/config-0.2.0.tgz", + "integrity": "sha512-r0TqTPVXrxdvhpbOntWnJofOx0rC7u+A+tfC0KFwMtw38QCNb3pwodVjeLa7MT5Uu+fcPxfO119yLBj0QHvBuQ==" + }, + "node_modules/@reduxjs/toolkit": { + "version": "1.9.7", + "resolved": "https://registry.npmjs.org/@reduxjs/toolkit/-/toolkit-1.9.7.tgz", + "integrity": "sha512-t7v8ZPxhhKgOKtU+uyJT13lu4vL7az5aFi4IdoDs/eS548edn2M8Ik9h8fxgvMjGoAUVFSt6ZC1P5cWmQ014QQ==", "dependencies": { - "@redocly/ajv": "^8.11.0", - "colorette": "^1.2.0", - "js-levenshtein": "^1.1.6", - "js-yaml": "^4.1.0", - "lodash.isequal": "^4.5.0", - "minimatch": "^5.0.1", - "node-fetch": "^2.6.1", - "pluralize": "^8.0.0", - "yaml-ast-parser": "0.0.43" + "immer": "^9.0.21", + "redux": "^4.2.1", + "redux-thunk": "^2.4.2", + "reselect": "^4.1.8" }, - "engines": { - "node": ">=14.19.0", - "npm": ">=7.0.0" - } - }, - "node_modules/@redocly/openapi-core/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@redocly/openapi-core/node_modules/colorette": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", - "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" - }, - "node_modules/@redocly/openapi-core/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", - "dependencies": { - "brace-expansion": "^2.0.1" + "peerDependencies": { + "react": "^16.9.0 || ^17.0.0 || ^18", + "react-redux": "^7.2.1 || ^8.0.2" }, - "engines": { - "node": ">=10" + "peerDependenciesMeta": { + "react": { + "optional": true + }, + "react-redux": { + "optional": true + } } }, "node_modules/@sideway/address": { @@ -3388,11 +3329,11 @@ } }, "node_modules/@svgr/babel-plugin-add-jsx-attribute": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", - "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3433,11 +3374,11 @@ } }, "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", - "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz", + "integrity": "sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3448,11 +3389,11 @@ } }, "node_modules/@svgr/babel-plugin-svg-dynamic-title": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", - "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz", + "integrity": "sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3463,11 +3404,11 @@ } }, "node_modules/@svgr/babel-plugin-svg-em-dimensions": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", - "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz", + "integrity": "sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3478,11 +3419,11 @@ } }, "node_modules/@svgr/babel-plugin-transform-react-native-svg": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", - "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz", + "integrity": "sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==", "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3493,9 +3434,9 @@ } }, "node_modules/@svgr/babel-plugin-transform-svg-component": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", - "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz", + "integrity": "sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==", "engines": { "node": ">=12" }, @@ -3508,21 +3449,21 @@ } }, "node_modules/@svgr/babel-preset": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", - "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-8.1.0.tgz", + "integrity": "sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==", "dependencies": { - "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", - "@svgr/babel-plugin-remove-jsx-attribute": "*", - "@svgr/babel-plugin-remove-jsx-empty-expression": "*", - "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", - "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", - "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", - "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", - "@svgr/babel-plugin-transform-svg-component": "^6.5.1" + "@svgr/babel-plugin-add-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-attribute": "8.0.0", + "@svgr/babel-plugin-remove-jsx-empty-expression": "8.0.0", + "@svgr/babel-plugin-replace-jsx-attribute-value": "8.0.0", + "@svgr/babel-plugin-svg-dynamic-title": "8.0.0", + "@svgr/babel-plugin-svg-em-dimensions": "8.0.0", + "@svgr/babel-plugin-transform-react-native-svg": "8.1.0", + "@svgr/babel-plugin-transform-svg-component": "8.0.0" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3533,18 +3474,18 @@ } }, "node_modules/@svgr/core": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", - "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", + "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", "dependencies": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", "camelcase": "^6.2.0", - "cosmiconfig": "^7.0.1" + "cosmiconfig": "^8.1.3", + "snake-case": "^3.0.4" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3552,15 +3493,15 @@ } }, "node_modules/@svgr/hast-util-to-babel-ast": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", - "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz", + "integrity": "sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==", "dependencies": { - "@babel/types": "^7.20.0", + "@babel/types": "^7.21.3", "entities": "^4.4.0" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3568,37 +3509,37 @@ } }, "node_modules/@svgr/plugin-jsx": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", - "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz", + "integrity": "sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==", "dependencies": { - "@babel/core": "^7.19.6", - "@svgr/babel-preset": "^6.5.1", - "@svgr/hast-util-to-babel-ast": "^6.5.1", + "@babel/core": "^7.21.3", + "@svgr/babel-preset": "8.1.0", + "@svgr/hast-util-to-babel-ast": "8.0.0", "svg-parser": "^2.0.4" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", "url": "https://github.com/sponsors/gregberge" }, "peerDependencies": { - "@svgr/core": "^6.0.0" + "@svgr/core": "*" } }, "node_modules/@svgr/plugin-svgo": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", - "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-8.1.0.tgz", + "integrity": "sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==", "dependencies": { - "cosmiconfig": "^7.0.1", - "deepmerge": "^4.2.2", - "svgo": "^2.8.0" + "cosmiconfig": "^8.1.3", + "deepmerge": "^4.3.1", + "svgo": "^3.0.2" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3609,21 +3550,21 @@ } }, "node_modules/@svgr/webpack": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", - "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-8.1.0.tgz", + "integrity": "sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==", "dependencies": { - "@babel/core": "^7.19.6", - "@babel/plugin-transform-react-constant-elements": "^7.18.12", - "@babel/preset-env": "^7.19.4", + "@babel/core": "^7.21.3", + "@babel/plugin-transform-react-constant-elements": "^7.21.3", + "@babel/preset-env": "^7.20.2", "@babel/preset-react": "^7.18.6", - "@babel/preset-typescript": "^7.18.6", - "@svgr/core": "^6.5.1", - "@svgr/plugin-jsx": "^6.5.1", - "@svgr/plugin-svgo": "^6.5.1" + "@babel/preset-typescript": "^7.21.0", + "@svgr/core": "8.1.0", + "@svgr/plugin-jsx": "8.1.0", + "@svgr/plugin-svgo": "8.1.0" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { "type": "github", @@ -3788,6 +3729,15 @@ "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" }, + "node_modules/@types/hoist-non-react-statics": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.5.tgz", + "integrity": "sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==", + "dependencies": { + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0" + } + }, "node_modules/@types/html-minifier-terser": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", @@ -3812,30 +3762,30 @@ } }, "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ==" + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==" }, "node_modules/@types/istanbul-lib-report": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.2.tgz", - "integrity": "sha512-8toY6FgdltSdONav1XtUHl4LN1yTmLza+EuDazb/fEmRNCwjyqNVIQWs2IfC74IqjHkREs/nQ2FWq5kZU9IC0w==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "dependencies": { "@types/istanbul-lib-coverage": "*" } }, "node_modules/@types/istanbul-reports": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.3.tgz", - "integrity": "sha512-1nESsePMBlf0RPRffLZi5ujYh7IH1BWL4y9pr+Bn3cJBdxz+RTP8bUFljLz9HvzhhOSWKdyBZ4DIivdL6rvgZg==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dependencies": { "@types/istanbul-lib-report": "*" } }, "node_modules/@types/json-schema": { - "version": "7.0.14", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.14.tgz", - "integrity": "sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw==" + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" }, "node_modules/@types/mdast": { "version": "4.0.2", @@ -3881,6 +3831,11 @@ "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.1.tgz", "integrity": "sha512-3YmXzzPAdOTVljVMkTMBdBEvlOLg2cDQaDhnnhT3nT9uDbnJzjWhKlzb+desT12Y7tGqaN6d+AbozcKzyL36Ng==" }, + "node_modules/@types/parse5": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", + "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==" + }, "node_modules/@types/prismjs": { "version": "1.26.2", "resolved": "https://registry.npmjs.org/@types/prismjs/-/prismjs-1.26.2.tgz", @@ -3910,6 +3865,17 @@ "csstype": "^3.0.2" } }, + "node_modules/@types/react-redux": { + "version": "7.1.33", + "resolved": "https://registry.npmjs.org/@types/react-redux/-/react-redux-7.1.33.tgz", + "integrity": "sha512-NF8m5AjWCkert+fosDsN3hAlHzpjSiXlVy9EgQEmLoBhaNXbmyeGs/aj5dQzKuF+/q+S7JQagorGDW8pJ28Hmg==", + "dependencies": { + "@types/hoist-non-react-statics": "^3.3.0", + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0", + "redux": "^4.0.0" + } + }, "node_modules/@types/react-router": { "version": "5.1.20", "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", @@ -3987,11 +3953,6 @@ "@types/node": "*" } }, - "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==" - }, "node_modules/@types/unist": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.1.tgz", @@ -4006,17 +3967,17 @@ } }, "node_modules/@types/yargs": { - "version": "17.0.29", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.29.tgz", - "integrity": "sha512-nacjqA3ee9zRF/++a3FUY1suHTFKZeHba2n8WeDw9cCVdmzmHpIxyzOJBcpHvvEmS8E9KqWlSnWHUkOrkhWcvA==", + "version": "17.0.32", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", + "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", "dependencies": { "@types/yargs-parser": "*" } }, "node_modules/@types/yargs-parser": { - "version": "21.0.2", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.2.tgz", - "integrity": "sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw==" + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==" }, "node_modules/@ungap/structured-clone": { "version": "1.2.0", @@ -4164,6 +4125,17 @@ "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -4293,31 +4265,31 @@ } }, "node_modules/algoliasearch": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.23.2.tgz", - "integrity": "sha512-8aCl055IsokLuPU8BzLjwzXjb7ty9TPcUFFOk0pYOwsE5DMVhE3kwCMFtsCFKcnoPZK7oObm+H5mbnSO/9ioxQ==", + "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.2", - "@algolia/cache-common": "4.23.2", - "@algolia/cache-in-memory": "4.23.2", - "@algolia/client-account": "4.23.2", - "@algolia/client-analytics": "4.23.2", - "@algolia/client-common": "4.23.2", - "@algolia/client-personalization": "4.23.2", - "@algolia/client-search": "4.23.2", - "@algolia/logger-common": "4.23.2", - "@algolia/logger-console": "4.23.2", - "@algolia/recommend": "4.23.2", - "@algolia/requester-browser-xhr": "4.23.2", - "@algolia/requester-common": "4.23.2", - "@algolia/requester-node-http": "4.23.2", - "@algolia/transporter": "4.23.2" + "@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" } }, "node_modules/algoliasearch-helper": { - "version": "3.17.0", - "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.17.0.tgz", - "integrity": "sha512-R5422OiQjvjlK3VdpNQ/Qk7KsTIGeM5ACm8civGifOVWdRRV/3SgXuKmeNxe94Dz6fwj/IgpVmXbHutU4mHubg==", + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.19.0.tgz", + "integrity": "sha512-AaSb5DZDMZmDQyIy6lf4aL0OZGgyIdqvLIIvSuVQOIOqfhrYSY7TvotIFI2x0Q3cP3xUpTd7lI1astUC4aXBJw==", "dependencies": { "@algolia/events": "^4.0.1" }, @@ -4384,6 +4356,11 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==" + }, "node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", @@ -4419,6 +4396,33 @@ "node": ">=8" } }, + "node_modules/asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/assert": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz", + "integrity": "sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==", + "dependencies": { + "call-bind": "^1.0.2", + "is-nan": "^1.3.2", + "object-is": "^1.1.5", + "object.assign": "^4.1.4", + "util": "^0.12.5" + } + }, "node_modules/astring": { "version": "1.8.6", "resolved": "https://registry.npmjs.org/astring/-/astring-1.8.6.tgz", @@ -4427,6 +4431,11 @@ "astring": "bin/astring" } }, + "node_modules/async": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.1.tgz", + "integrity": "sha512-XdD5lRO/87udXCMC9meWdYiR+Nq6ZjUfXidViUZGu2F1MO4T3XwZ1et0hb2++BgLfhyJwy44BGB/yx80ABx8hg==" + }, "node_modules/at-least-node": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", @@ -4471,6 +4480,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", @@ -4553,6 +4576,25 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", @@ -4574,6 +4616,11 @@ "node": ">=8" } }, + "node_modules/bn.js": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", + "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + }, "node_modules/body-parser": { "version": "1.20.2", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", @@ -4686,6 +4733,119 @@ "node": ">=8" } }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==" + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dependencies": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "node_modules/browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dependencies": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/browserify-rsa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "dependencies": { + "bn.js": "^5.0.0", + "randombytes": "^2.0.1" + } + }, + "node_modules/browserify-sign": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz", + "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==", + "dependencies": { + "bn.js": "^5.2.1", + "browserify-rsa": "^4.1.0", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.5", + "hash-base": "~3.0", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.7", + "readable-stream": "^2.3.8", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/browserify-sign/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/browserify-sign/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/browserify-sign/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dependencies": { + "pako": "~1.0.5" + } + }, "node_modules/browserslist": { "version": "4.23.0", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", @@ -4717,11 +4877,44 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, + "node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==" + }, + "node_modules/builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" + }, "node_modules/bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", @@ -4778,13 +4971,18 @@ } }, "node_modules/call-bind": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", - "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.1", - "set-function-length": "^1.1.1" + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -4823,14 +5021,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/camelize": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", - "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/caniuse-api": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", @@ -4929,6 +5119,14 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/charset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz", + "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==", + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/cheerio": { "version": "1.0.0-rc.12", "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", @@ -5013,6 +5211,15 @@ "node": ">=8" } }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, "node_modules/classnames": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", @@ -5286,6 +5493,27 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, + "node_modules/compute-gcd": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/compute-gcd/-/compute-gcd-1.2.1.tgz", + "integrity": "sha512-TwMbxBNz0l71+8Sc4czv13h4kEqnchV9igQZBi6QUaz09dnz13juGnnaWWJTRsP3brxOoxeB4SA2WELLw1hCtg==", + "dependencies": { + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, + "node_modules/compute-lcm": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/compute-lcm/-/compute-lcm-1.1.2.tgz", + "integrity": "sha512-OFNPdQAXnQhDSKioX8/XYT6sdUlXwpeMjfd6ApxMJfyZ4GxmLR1xvMERctlYhlHwIiz6CSpBc2+qYKjHGZw4TQ==", + "dependencies": { + "compute-gcd": "^1.2.1", + "validate.io-array": "^1.0.3", + "validate.io-function": "^1.0.2", + "validate.io-integer-array": "^1.0.0" + } + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -5331,6 +5559,16 @@ "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" }, + "node_modules/console-browserify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" + }, + "node_modules/constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==" + }, "node_modules/content-disposition": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", @@ -5485,18 +5723,67 @@ } }, "node_modules/cosmiconfig": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", - "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/create-ecdh": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", + "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", + "dependencies": { + "bn.js": "^4.1.0", + "elliptic": "^6.5.3" + } + }, + "node_modules/create-ecdh/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, "node_modules/cross-spawn": { @@ -5512,6 +5799,32 @@ "node": ">= 8" } }, + "node_modules/crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dependencies": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + }, + "engines": { + "node": "*" + } + }, + "node_modules/crypto-js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", + "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" + }, "node_modules/crypto-random-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-4.0.0.tgz", @@ -5537,20 +5850,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/css-color-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", - "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", - "engines": { - "node": ">=4" - } - }, "node_modules/css-declaration-sorter": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz", - "integrity": "sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz", + "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==", "engines": { - "node": "^10 || ^12 || >=14" + "node": "^14 || ^16 || >=18" }, "peerDependencies": { "postcss": "^8.0.9" @@ -5582,16 +5887,16 @@ } }, "node_modules/css-minimizer-webpack-plugin": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", - "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz", + "integrity": "sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==", "dependencies": { - "cssnano": "^5.1.8", - "jest-worker": "^29.1.2", - "postcss": "^8.4.17", - "schema-utils": "^4.0.0", - "serialize-javascript": "^6.0.0", - "source-map": "^0.6.1" + "@jridgewell/trace-mapping": "^0.3.18", + "cssnano": "^6.0.1", + "jest-worker": "^29.4.3", + "postcss": "^8.4.24", + "schema-utils": "^4.0.1", + "serialize-javascript": "^6.0.1" }, "engines": { "node": ">= 14.15.0" @@ -5624,14 +5929,6 @@ } } }, - "node_modules/css-minimizer-webpack-plugin/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/css-select": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", @@ -5647,34 +5944,16 @@ "url": "https://github.com/sponsors/fb55" } }, - "node_modules/css-to-react-native": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", - "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", - "dependencies": { - "camelize": "^1.0.0", - "css-color-keywords": "^1.0.0", - "postcss-value-parser": "^4.0.2" - } - }, "node_modules/css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", "dependencies": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" }, "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/css-tree/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" } }, "node_modules/css-what": { @@ -5700,108 +5979,128 @@ } }, "node_modules/cssnano": { - "version": "5.1.15", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", - "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.2.tgz", + "integrity": "sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==", "dependencies": { - "cssnano-preset-default": "^5.2.14", - "lilconfig": "^2.0.3", - "yaml": "^1.10.2" + "cssnano-preset-default": "^6.1.2", + "lilconfig": "^3.1.1" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/cssnano" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/cssnano-preset-advanced": { - "version": "5.3.10", - "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", - "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-6.1.2.tgz", + "integrity": "sha512-Nhao7eD8ph2DoHolEzQs5CfRpiEP0xa1HBdnFZ82kvqdmbwVBUr2r1QuQ4t1pi+D1ZpqpcO4T+wy/7RxzJ/WPQ==", "dependencies": { - "autoprefixer": "^10.4.12", - "cssnano-preset-default": "^5.2.14", - "postcss-discard-unused": "^5.1.0", - "postcss-merge-idents": "^5.1.1", - "postcss-reduce-idents": "^5.2.0", - "postcss-zindex": "^5.1.0" + "autoprefixer": "^10.4.19", + "browserslist": "^4.23.0", + "cssnano-preset-default": "^6.1.2", + "postcss-discard-unused": "^6.0.5", + "postcss-merge-idents": "^6.0.3", + "postcss-reduce-idents": "^6.0.3", + "postcss-zindex": "^6.0.2" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/cssnano-preset-default": { - "version": "5.2.14", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", - "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz", + "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==", "dependencies": { - "css-declaration-sorter": "^6.3.1", - "cssnano-utils": "^3.1.0", - "postcss-calc": "^8.2.3", - "postcss-colormin": "^5.3.1", - "postcss-convert-values": "^5.1.3", - "postcss-discard-comments": "^5.1.2", - "postcss-discard-duplicates": "^5.1.0", - "postcss-discard-empty": "^5.1.1", - "postcss-discard-overridden": "^5.1.0", - "postcss-merge-longhand": "^5.1.7", - "postcss-merge-rules": "^5.1.4", - "postcss-minify-font-values": "^5.1.0", - "postcss-minify-gradients": "^5.1.1", - "postcss-minify-params": "^5.1.4", - "postcss-minify-selectors": "^5.2.1", - "postcss-normalize-charset": "^5.1.0", - "postcss-normalize-display-values": "^5.1.0", - "postcss-normalize-positions": "^5.1.1", - "postcss-normalize-repeat-style": "^5.1.1", - "postcss-normalize-string": "^5.1.0", - "postcss-normalize-timing-functions": "^5.1.0", - "postcss-normalize-unicode": "^5.1.1", - "postcss-normalize-url": "^5.1.0", - "postcss-normalize-whitespace": "^5.1.1", - "postcss-ordered-values": "^5.1.3", - "postcss-reduce-initial": "^5.1.2", - "postcss-reduce-transforms": "^5.1.0", - "postcss-svgo": "^5.1.0", - "postcss-unique-selectors": "^5.1.1" + "browserslist": "^4.23.0", + "css-declaration-sorter": "^7.2.0", + "cssnano-utils": "^4.0.2", + "postcss-calc": "^9.0.1", + "postcss-colormin": "^6.1.0", + "postcss-convert-values": "^6.1.0", + "postcss-discard-comments": "^6.0.2", + "postcss-discard-duplicates": "^6.0.3", + "postcss-discard-empty": "^6.0.3", + "postcss-discard-overridden": "^6.0.2", + "postcss-merge-longhand": "^6.0.5", + "postcss-merge-rules": "^6.1.1", + "postcss-minify-font-values": "^6.1.0", + "postcss-minify-gradients": "^6.0.3", + "postcss-minify-params": "^6.1.0", + "postcss-minify-selectors": "^6.0.4", + "postcss-normalize-charset": "^6.0.2", + "postcss-normalize-display-values": "^6.0.2", + "postcss-normalize-positions": "^6.0.2", + "postcss-normalize-repeat-style": "^6.0.2", + "postcss-normalize-string": "^6.0.2", + "postcss-normalize-timing-functions": "^6.0.2", + "postcss-normalize-unicode": "^6.1.0", + "postcss-normalize-url": "^6.0.2", + "postcss-normalize-whitespace": "^6.0.2", + "postcss-ordered-values": "^6.0.2", + "postcss-reduce-initial": "^6.1.0", + "postcss-reduce-transforms": "^6.0.2", + "postcss-svgo": "^6.0.3", + "postcss-unique-selectors": "^6.0.4" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/cssnano-utils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", - "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", + "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", "dependencies": { - "css-tree": "^1.1.2" + "css-tree": "~2.2.0" }, "engines": { - "node": ">=8.0.0" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" } }, + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "dependencies": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==" + }, "node_modules/csstype": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", @@ -6297,10 +6596,13 @@ } } }, - "node_modules/decko": { + "node_modules/decamelize": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decko/-/decko-1.2.0.tgz", - "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "engines": { + "node": ">=0.10.0" + } }, "node_modules/decode-named-character-reference": { "version": "1.0.2", @@ -6364,16 +6666,19 @@ } }, "node_modules/define-data-property": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", - "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dependencies": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/define-lazy-prop": { @@ -6445,6 +6750,15 @@ "node": ">=6" } }, + "node_modules/des.js": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz", + "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==", + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, "node_modules/destroy": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", @@ -6521,6 +6835,21 @@ "node": ">=0.3.1" } }, + "node_modules/diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dependencies": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "node_modules/diffie-hellman/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, "node_modules/dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -6557,42 +6886,67 @@ "node": ">=6" } }, - "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==", + "node_modules/docusaurus-plugin-openapi-docs": { + "version": "3.0.0-beta.10", + "resolved": "https://registry.npmjs.org/docusaurus-plugin-openapi-docs/-/docusaurus-plugin-openapi-docs-3.0.0-beta.10.tgz", + "integrity": "sha512-BtMBH4TzCiMM0WbO2ZAMXSuL7Ge9yyASZhAycb5vX+KSUnUgp47/Ex2f6/evBfaadnr6vXYEr1UBT1fSiJYh5w==", "dependencies": { - "@redocly/openapi-core": "1.10.3", - "redoc": "2.1.3" + "@apidevtools/json-schema-ref-parser": "^11.5.4", + "@docusaurus/plugin-content-docs": "^3.0.1", + "@docusaurus/utils": "^3.0.1", + "@docusaurus/utils-validation": "^3.0.1", + "@paloaltonetworks/openapi-to-postmanv2": "3.1.0-hotfix.1", + "@paloaltonetworks/postman-collection": "^4.1.0", + "@redocly/openapi-core": "^1.10.5", + "chalk": "^4.1.2", + "clsx": "^1.1.1", + "fs-extra": "^9.0.1", + "json-pointer": "^0.6.2", + "json-schema-merge-allof": "^0.8.1", + "json5": "^2.2.3", + "lodash": "^4.17.20", + "mustache": "^4.2.0", + "slugify": "^1.6.5", + "swagger2openapi": "^7.0.8", + "xml-formatter": "^2.6.1" }, "engines": { - "node": ">=18" + "node": ">=14" }, "peerDependencies": { - "@docusaurus/utils": "^3.0.0" + "react": "^16.8.4 || ^17.0.0 || ^18.0.0" } }, - "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==", + "node_modules/docusaurus-plugin-openapi-docs/node_modules/@redocly/openapi-core": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@redocly/openapi-core/-/openapi-core-1.12.0.tgz", + "integrity": "sha512-2Jfxv3iIk1JUwLSnLyewJ8GAsoxubROVieg13Sjo79TjuWaUBuI49j8GZqC08ljENqyEIp0JHReDjhKs4Snrhg==", "dependencies": { - "@redocly/openapi-core": "1.10.3", - "clsx": "^1.2.1", - "lodash": "^4.17.21", - "mobx": "^6.0.4", - "redoc": "2.1.3", - "styled-components": "^6.0.5" + "@redocly/ajv": "^8.11.0", + "@redocly/config": "^0.2.0", + "colorette": "^1.2.0", + "js-levenshtein": "^1.1.6", + "js-yaml": "^4.1.0", + "lodash.isequal": "^4.5.0", + "minimatch": "^5.0.1", + "node-fetch": "^2.6.1", + "pluralize": "^8.0.0", + "yaml-ast-parser": "0.0.43" }, "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@docusaurus/theme-common": "^3.0.0", - "webpack": "^5.0.0" + "node": ">=14.19.0", + "npm": ">=7.0.0" } }, - "node_modules/docusaurus-theme-redoc/node_modules/clsx": { + "node_modules/docusaurus-plugin-openapi-docs/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/docusaurus-plugin-openapi-docs/node_modules/clsx": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", @@ -6600,6 +6954,432 @@ "node": ">=6" } }, + "node_modules/docusaurus-plugin-openapi-docs/node_modules/colorette": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.4.0.tgz", + "integrity": "sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==" + }, + "node_modules/docusaurus-plugin-openapi-docs/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/docusaurus-plugin-openapi-docs/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/docusaurus-plugin-openapi-docs/node_modules/slugify": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.6.tgz", + "integrity": "sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/docusaurus-plugin-sass": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/docusaurus-plugin-sass/-/docusaurus-plugin-sass-0.2.5.tgz", + "integrity": "sha512-Z+D0fLFUKcFpM+bqSUmqKIU+vO+YF1xoEQh5hoFreg2eMf722+siwXDD+sqtwU8E4MvVpuvsQfaHwODNlxJAEg==", + "dependencies": { + "sass-loader": "^10.1.1" + }, + "peerDependencies": { + "@docusaurus/core": "^2.0.0-beta || ^3.0.0-alpha", + "sass": "^1.30.0" + } + }, + "node_modules/docusaurus-plugin-sass/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/docusaurus-plugin-sass/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/docusaurus-plugin-sass/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/docusaurus-plugin-sass/node_modules/sass-loader": { + "version": "10.5.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.5.2.tgz", + "integrity": "sha512-vMUoSNOUKJILHpcNCCyD23X34gve1TS7Rjd9uXHeKqhvBG39x6XbswFDtpbTElj6XdMFezoWhkh5vtKudf2cgQ==", + "dependencies": { + "klona": "^2.0.4", + "loader-utils": "^2.0.0", + "neo-async": "^2.6.2", + "schema-utils": "^3.0.0", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "sass": "^1.3.0", + "webpack": "^4.36.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/docusaurus-plugin-sass/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/docusaurus-theme-openapi-docs": { + "version": "3.0.0-beta.10", + "resolved": "https://registry.npmjs.org/docusaurus-theme-openapi-docs/-/docusaurus-theme-openapi-docs-3.0.0-beta.10.tgz", + "integrity": "sha512-8oUMMZSrRJ9EssrjWwbM9aYuHOt1AAm6wQDzWr8k6VvefGvVAibg4Y9PK7GeZ243lJikq9s45KqUA0SMwsm+Fg==", + "dependencies": { + "@docusaurus/theme-common": "^3.0.1", + "@hookform/error-message": "^2.0.1", + "@paloaltonetworks/postman-code-generators": "1.1.15-patch.2", + "@paloaltonetworks/postman-collection": "^4.1.0", + "@reduxjs/toolkit": "^1.7.1", + "clsx": "^1.1.1", + "copy-text-to-clipboard": "^3.1.0", + "crypto-js": "^4.1.1", + "docusaurus-plugin-openapi-docs": "^3.0.0-beta.10", + "docusaurus-plugin-sass": "^0.2.3", + "file-saver": "^2.0.5", + "lodash": "^4.17.20", + "node-polyfill-webpack-plugin": "^2.0.1", + "prism-react-renderer": "^2.3.0", + "react-hook-form": "^7.43.8", + "react-live": "^4.0.0", + "react-magic-dropzone": "^1.0.1", + "react-markdown": "^8.0.1", + "react-modal": "^3.15.1", + "react-redux": "^7.2.0", + "rehype-raw": "^6.1.1", + "sass": "^1.58.1", + "sass-loader": "^13.3.2", + "webpack": "^5.61.0", + "xml-formatter": "^2.6.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.4 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/@types/hast": { + "version": "2.3.10", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.10.tgz", + "integrity": "sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==", + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/@types/unist": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" + }, + "node_modules/docusaurus-theme-openapi-docs/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/docusaurus-theme-openapi-docs/node_modules/hast-util-from-parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz", + "integrity": "sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/unist": "^2.0.0", + "hastscript": "^7.0.0", + "property-information": "^6.0.0", + "vfile": "^5.0.0", + "vfile-location": "^4.0.0", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/hast-util-parse-selector": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz", + "integrity": "sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA==", + "dependencies": { + "@types/hast": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/hast-util-raw": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-7.2.3.tgz", + "integrity": "sha512-RujVQfVsOrxzPOPSzZFiwofMArbQke6DJjnFfceiEbFh7S05CbPt0cYN+A5YeD3pso0JQk6O1aHBnx9+Pm2uqg==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/parse5": "^6.0.0", + "hast-util-from-parse5": "^7.0.0", + "hast-util-to-parse5": "^7.0.0", + "html-void-elements": "^2.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0", + "vfile": "^5.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/hast-util-to-parse5": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-7.1.0.tgz", + "integrity": "sha512-YNRgAJkH2Jky5ySkIqFXTQiaqcAtJyVE+D5lkN6CdtOqrnkLfGYYrEcKuHOJZlp+MwjSwuD3fZuawI+sic/RBw==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/hastscript": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-7.2.0.tgz", + "integrity": "sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^3.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/html-void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-2.0.1.tgz", + "integrity": "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/rehype-raw": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/rehype-raw/-/rehype-raw-6.1.1.tgz", + "integrity": "sha512-d6AKtisSRtDRX4aSPsJGTfnzrX2ZkHQLE5kiUuGOeEoLpbEulFF4hj0mLPbsa+7vmguDKOVVEQdHKDSwoaIDsQ==", + "dependencies": { + "@types/hast": "^2.0.0", + "hast-util-raw": "^7.2.0", + "unified": "^10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "dependencies": { + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/vfile-location": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-4.1.0.tgz", + "integrity": "sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw==", + "dependencies": { + "@types/unist": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/docusaurus-theme-openapi-docs/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/dom-converter": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", @@ -6621,6 +7401,17 @@ "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, + "node_modules/domain-browser": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.23.0.tgz", + "integrity": "sha512-ArzcM/II1wCCujdCNyQjXrAFwS4mrLh4C7DZWlaI8mdh7h3BfKdNd3bKXITfl2PT9FtfQqaGvhi1vPRQPimjGA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/domelementtype": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", @@ -6720,6 +7511,25 @@ "resolved": "https://registry.npmjs.org/elkjs/-/elkjs-0.8.2.tgz", "integrity": "sha512-L6uRgvZTH+4OF5NE/MBbzQx/WYpru1xCBE9respNj6qznEewGUIfhzmm7horWWxbNO2M0WckQypGctR8lH79xQ==" }, + "node_modules/elliptic": { + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.5.tgz", + "integrity": "sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, "node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", @@ -6786,6 +7596,25 @@ "is-arrayish": "^0.2.1" } }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-module-lexer": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.1.tgz", @@ -6933,16 +7762,13 @@ } }, "node_modules/estree-util-value-to-estree": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.0.1.tgz", - "integrity": "sha512-b2tdzTurEIbwRh+mKrEcaWfu1wgb8J1hVsgREg7FFiecWwK/PhO8X0kyc+0bIcKNtD4sqxIdNoRy6/p/TvECEA==", + "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==", "dependencies": { "@types/estree": "^1.0.0", "is-plain-obj": "^4.0.0" }, - "engines": { - "node": ">=16.0.0" - }, "funding": { "url": "https://github.com/sponsors/remcohaszing" } @@ -7007,6 +7833,14 @@ "node": ">= 0.8" } }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "engines": { + "node": ">=6" + } + }, "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", @@ -7020,6 +7854,15 @@ "node": ">=0.8.x" } }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, "node_modules/execa": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", @@ -7042,6 +7885,11 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, + "node_modules/exenv": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", + "integrity": "sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw==" + }, "node_modules/express": { "version": "4.19.2", "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", @@ -7285,6 +8133,19 @@ "url": "https://opencollective.com/webpack" } }, + "node_modules/file-saver": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz", + "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==" + }, + "node_modules/file-type": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz", + "integrity": "sha512-RLoqTXE8/vPmMuTI88DAzhMYC99I8BWv7zYP4A1puo5HIjEJ5EX48ighy4ZyKMG9EDXxBgW6e++cn7d1xuFghA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/filesize": { "version": "8.0.7", "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", @@ -7304,6 +8165,14 @@ "node": ">=8" } }, + "node_modules/filter-obj": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", + "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==", + "engines": { + "node": ">=8" + } + }, "node_modules/finalhandler": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", @@ -7391,11 +8260,45 @@ } } }, + "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", "integrity": "sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==" }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/fork-ts-checker-webpack-plugin": { "version": "6.5.3", "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.3.tgz", @@ -7621,15 +8524,19 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", - "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dependencies": { + "es-errors": "^1.3.0", "function-bind": "^1.1.2", "has-proto": "^1.0.1", "has-symbols": "^1.0.3", "hasown": "^2.0.0" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -7887,11 +8794,11 @@ } }, "node_modules/has-property-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", - "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dependencies": { - "get-intrinsic": "^1.2.2" + "es-define-property": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -7919,6 +8826,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", @@ -7930,6 +8851,27 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, "node_modules/hasown": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", @@ -7973,9 +8915,9 @@ } }, "node_modules/hast-util-raw": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.1.tgz", - "integrity": "sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA==", + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.2.tgz", + "integrity": "sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==", "dependencies": { "@types/hast": "^3.0.0", "@types/unist": "^3.0.0", @@ -8134,6 +9076,16 @@ "value-equal": "^1.0.1" } }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, "node_modules/hoist-non-react-statics": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", @@ -8393,6 +9345,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/http-reasons": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/http-reasons/-/http-reasons-0.1.0.tgz", + "integrity": "sha512-P6kYh0lKZ+y29T2Gqz+RlC9WBLhKe8kDmcJ+A+611jFfxdPsbMRQ5aNmFRM3lENqFkK+HTTL+tlQviAiv0AbLQ==" + }, "node_modules/http2-client": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/http2-client/-/http2-client-1.3.5.tgz", @@ -8410,6 +9367,11 @@ "node": ">=10.19.0" } }, + "node_modules/https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==" + }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -8440,6 +9402,25 @@ "postcss": "^8.1.0" } }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, "node_modules/ignore": { "version": "5.2.4", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", @@ -8471,6 +9452,11 @@ "url": "https://opencollective.com/immer" } }, + "node_modules/immutable": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.5.tgz", + "integrity": "sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==" + }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -8596,6 +9582,21 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "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-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", @@ -8612,6 +9613,39 @@ "node": ">=8" } }, + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "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", @@ -8681,6 +9715,20 @@ "node": ">=8" } }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -8716,6 +9764,21 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/is-nan": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", + "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "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", @@ -8813,6 +9876,20 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "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": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -8855,6 +9932,23 @@ "node": ">=0.10.0" } }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/jest-util": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", @@ -8972,6 +10066,27 @@ "foreach": "^2.0.4" } }, + "node_modules/json-schema-compare": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/json-schema-compare/-/json-schema-compare-0.2.2.tgz", + "integrity": "sha512-c4WYmDKyJXhs7WWvAWm3uIYnfyWFoIp+JEoX34rctVvEkMYCPGhXtvmFFXiffBbxfZsvQ0RNnV5H7GvDF5HCqQ==", + "dependencies": { + "lodash": "^4.17.4" + } + }, + "node_modules/json-schema-merge-allof": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/json-schema-merge-allof/-/json-schema-merge-allof-0.8.1.tgz", + "integrity": "sha512-CTUKmIlPJbsWfzRRnOXz+0MjIqvnleIXwFTzz+t9T86HnYX/Rozria6ZVGLktAU9e+NygNljveP+yxqtQp/Q4w==", + "dependencies": { + "compute-lcm": "^1.1.2", + "json-schema-compare": "^0.2.2", + "lodash": "^4.17.20" + }, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", @@ -9028,6 +10143,14 @@ "node": ">=6" } }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "engines": { + "node": ">= 8" + } + }, "node_modules/latest-version": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-7.0.0.tgz", @@ -9065,11 +10188,14 @@ } }, "node_modules/lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", "engines": { - "node": ">=10" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" } }, "node_modules/lines-and-columns": { @@ -9077,6 +10203,14 @@ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, + "node_modules/liquid-json": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/liquid-json/-/liquid-json-0.3.1.tgz", + "integrity": "sha512-wUayTU8MS827Dam6MxgD72Ui+KOSF+u/eIqpatOtjnvgJ0+mnDq33uC2M7J0tPK+upe/DpUAuK4JUU89iBoNKQ==", + "engines": { + "node": ">=4" + } + }, "node_modules/loader-runner": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", @@ -9214,16 +10348,6 @@ "yallist": "^3.0.2" } }, - "node_modules/lunr": { - "version": "2.3.9", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz", - "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==" - }, - "node_modules/mark.js": { - "version": "8.11.1", - "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", - "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==" - }, "node_modules/markdown-extensions": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/markdown-extensions/-/markdown-extensions-2.0.0.tgz", @@ -9244,15 +10368,80 @@ "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/marked": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/marked/-/marked-4.3.0.tgz", - "integrity": "sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==", - "bin": { - "marked": "bin/marked.js" + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/mdast-util-definitions": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz", + "integrity": "sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "unist-util-visit": "^4.0.0" }, - "engines": { - "node": ">= 12" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-definitions/node_modules/@types/mdast": { + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/mdast-util-definitions/node_modules/@types/unist": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" + }, + "node_modules/mdast-util-definitions/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-definitions/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-definitions/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, "node_modules/mdast-util-directive": { @@ -9401,9 +10590,9 @@ } }, "node_modules/mdast-util-gfm-autolink-literal/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "funding": [ { "type": "GitHub Sponsors", @@ -9634,9 +10823,9 @@ } }, "node_modules/mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==" }, "node_modules/media-typer": { "version": "0.3.0", @@ -10296,9 +11485,9 @@ } }, "node_modules/micromark-extension-directive/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "funding": [ { "type": "GitHub Sponsors", @@ -10345,9 +11534,9 @@ } }, "node_modules/micromark-extension-frontmatter/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "funding": [ { "type": "GitHub Sponsors", @@ -10413,9 +11602,9 @@ } }, "node_modules/micromark-extension-gfm-autolink-literal/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "funding": [ { "type": "GitHub Sponsors", @@ -10485,9 +11674,9 @@ } }, "node_modules/micromark-extension-gfm-footnote/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "funding": [ { "type": "GitHub Sponsors", @@ -10586,9 +11775,9 @@ } }, "node_modules/micromark-extension-gfm-table/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "funding": [ { "type": "GitHub Sponsors", @@ -10667,9 +11856,9 @@ } }, "node_modules/micromark-extension-gfm-task-list-item/node_modules/micromark-util-character": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.0.1.tgz", - "integrity": "sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "funding": [ { "type": "GitHub Sponsors", @@ -11821,6 +13010,23 @@ "node": ">=8.6" } }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, "node_modules/mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", @@ -11840,6 +13046,14 @@ "node": ">= 0.6" } }, + "node_modules/mime-format": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mime-format/-/mime-format-2.0.1.tgz", + "integrity": "sha512-XxU3ngPbEnrYnNbIX+lYSaYg0M01v6p2ntd2YaFksTu0vayaw5OJvbdRyWs07EYRlLED5qadUZ+xo+XhOvFhwg==", + "dependencies": { + "charset": "^1.0.0" + } + }, "node_modules/mime-types": { "version": "2.1.18", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", @@ -11893,6 +13107,11 @@ "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" + }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -11912,58 +13131,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/mobx": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/mobx/-/mobx-6.12.0.tgz", - "integrity": "sha512-Mn6CN6meXEnMa0a5u6a5+RKrqRedHBhZGd15AWLk9O6uFY4KYHzImdt8JI8WODo1bjTSRnwXhJox+FCUZhCKCQ==", - "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==", - "dependencies": { - "mobx-react-lite": "^3.4.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mobx" - }, - "peerDependencies": { - "mobx": "^6.1.0", - "react": "^16.8.0 || ^17 || ^18" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, - "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==", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mobx" - }, - "peerDependencies": { - "mobx": "^6.1.0", - "react": "^16.8.0 || ^17 || ^18" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } + "node_modules/minipass": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.0.tgz", + "integrity": "sha512-oGZRv2OT1lO2UF1zUcwdTb3wqUwI0kBGTgt/T7OdSj6M6N5m3o5uPf0AIW6lVxGGoiWUR7e2AwTE+xiwK8WQig==", + "engines": { + "node": ">=16 || 14 >=14.17" } }, "node_modules/mri": { @@ -11999,6 +13172,24 @@ "multicast-dns": "cli.js" } }, + "node_modules/mustache": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", + "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==", + "bin": { + "mustache": "bin/mustache" + } + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, "node_modules/nanoid": { "version": "3.3.7", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", @@ -12090,6 +13281,67 @@ "node": ">= 6.13.0" } }, + "node_modules/node-polyfill-webpack-plugin": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-2.0.1.tgz", + "integrity": "sha512-ZUMiCnZkP1LF0Th2caY6J/eKKoA0TefpoVa68m/LQU1I/mE8rGt4fNYGgNuCcK+aG8P8P43nbeJ2RqJMOL/Y1A==", + "dependencies": { + "assert": "^2.0.0", + "browserify-zlib": "^0.2.0", + "buffer": "^6.0.3", + "console-browserify": "^1.2.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.12.0", + "domain-browser": "^4.22.0", + "events": "^3.3.0", + "filter-obj": "^2.0.2", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "^1.0.1", + "process": "^0.11.10", + "punycode": "^2.1.1", + "querystring-es3": "^0.2.1", + "readable-stream": "^4.0.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "string_decoder": "^1.3.0", + "timers-browserify": "^2.0.12", + "tty-browserify": "^0.0.1", + "type-fest": "^2.14.0", + "url": "^0.11.0", + "util": "^0.12.4", + "vm-browserify": "^1.1.2" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "webpack": ">=5" + } + }, + "node_modules/node-polyfill-webpack-plugin/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/node-polyfill-webpack-plugin/node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, "node_modules/node-readfiles": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/node-readfiles/-/node-readfiles-0.2.0.tgz", @@ -12124,17 +13376,6 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-url": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", - "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", @@ -12201,6 +13442,168 @@ "url": "https://github.com/Mermade/oas-kit?sponsor=1" } }, + "node_modules/oas-resolver-browser": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/oas-resolver-browser/-/oas-resolver-browser-2.5.2.tgz", + "integrity": "sha512-L3ugWyBHOpKLT+lb+pFXCOpk3byh6usis5T9u9mfu92jH5bR6YK8MA2bebUTIjY7I4415PzDeZcmcc+i7X05MA==", + "dependencies": { + "node-fetch-h2": "^2.3.0", + "oas-kit-common": "^1.0.8", + "path-browserify": "^1.0.1", + "reftools": "^1.1.6", + "yaml": "^1.10.0", + "yargs": "^15.3.1" + }, + "bin": { + "resolve": "resolve.js" + }, + "funding": { + "url": "https://github.com/Mermade/oas-kit?sponsor=1" + } + }, + "node_modules/oas-resolver-browser/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/oas-resolver-browser/node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/oas-resolver-browser/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/oas-resolver-browser/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/oas-resolver-browser/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/oas-resolver-browser/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/oas-resolver-browser/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/oas-resolver-browser/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/oas-resolver-browser/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/oas-resolver-browser/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/oas-resolver-browser/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" + }, + "node_modules/oas-resolver-browser/node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/oas-resolver-browser/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/oas-schema-walker": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/oas-schema-walker/-/oas-schema-walker-1.1.5.tgz", @@ -12243,6 +13646,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", @@ -12330,15 +13748,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/openapi-sampler": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/openapi-sampler/-/openapi-sampler-1.4.0.tgz", - "integrity": "sha512-3FKJQCHAMG9T7RsRy9u5Ft4ERPq1QQmn77C8T3OSofYL9uur59AqychvQ0YQKijrqRwIkAbzkh+nQnAE3gjMVA==", - "dependencies": { - "@types/json-schema": "^7.0.7", - "json-pointer": "0.6.2" - } - }, "node_modules/opener": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", @@ -12347,6 +13756,11 @@ "opener": "bin/opener-bin.js" } }, + "node_modules/os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" + }, "node_modules/p-cancelable": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-3.0.0.tgz", @@ -12434,6 +13848,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, "node_modules/param-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", @@ -12454,6 +13873,22 @@ "node": ">=6" } }, + "node_modules/parse-asn1": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz", + "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==", + "dependencies": { + "asn1.js": "^4.10.1", + "browserify-aes": "^1.2.0", + "evp_bytestokey": "^1.0.3", + "hash-base": "~3.0", + "pbkdf2": "^3.1.2", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/parse-entities": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-4.0.1.tgz", @@ -12540,6 +13975,15 @@ "tslib": "^2.0.3" } }, + "node_modules/path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q==", + "dependencies": { + "process": "^0.11.1", + "util": "^0.10.3" + } + }, "node_modules/path-browserify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", @@ -12579,6 +14023,29 @@ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, + "node_modules/path-scurry": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/path-to-regexp": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", @@ -12595,10 +14062,33 @@ "node": ">=8" } }, - "node_modules/perfect-scrollbar": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/perfect-scrollbar/-/perfect-scrollbar-1.5.5.tgz", - "integrity": "sha512-dzalfutyP3e/FOpdlhVryN4AJ5XDVauVWxybSkLZmakFE2sS3y3pc4JnSprw8tGmHvkaG5Edr5T7LBTZ+WWU2g==" + "node_modules/path/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "node_modules/path/node_modules/util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } }, "node_modules/periscopic": { "version": "3.1.0", @@ -12626,6 +14116,14 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "engines": { + "node": ">= 6" + } + }, "node_modules/pkg-dir": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", @@ -12715,15 +14213,12 @@ "node": ">=4" } }, - "node_modules/polished": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/polished/-/polished-4.3.1.tgz", - "integrity": "sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==", - "dependencies": { - "@babel/runtime": "^7.17.8" - }, + "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": ">=10" + "node": ">= 0.4" } }, "node_modules/postcss": { @@ -12754,105 +14249,108 @@ } }, "node_modules/postcss-calc": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", - "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz", + "integrity": "sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==", "dependencies": { - "postcss-selector-parser": "^6.0.9", + "postcss-selector-parser": "^6.0.11", "postcss-value-parser": "^4.2.0" }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, "peerDependencies": { "postcss": "^8.2.2" } }, "node_modules/postcss-colormin": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", - "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz", + "integrity": "sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "caniuse-api": "^3.0.0", - "colord": "^2.9.1", + "colord": "^2.9.3", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-convert-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", - "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz", + "integrity": "sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-comments": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", - "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz", + "integrity": "sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-duplicates": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", - "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz", + "integrity": "sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-empty": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", - "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz", + "integrity": "sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-overridden": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", - "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz", + "integrity": "sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-discard-unused": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", - "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-6.0.5.tgz", + "integrity": "sha512-wHalBlRHkaNnNwfC8z+ppX57VhvS+HWgjW508esjdaEYr3Mx7Gnn2xA4R/CKf5+Z9S5qsqC+Uzh4ueENWwCVUA==", "dependencies": { - "postcss-selector-parser": "^6.0.5" + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-loader": { @@ -12876,136 +14374,111 @@ "webpack": "^5.0.0" } }, - "node_modules/postcss-loader/node_modules/cosmiconfig": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", - "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", - "dependencies": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/d-fischer" - }, - "peerDependencies": { - "typescript": ">=4.9.5" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/postcss-merge-idents": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", - "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-6.0.3.tgz", + "integrity": "sha512-1oIoAsODUs6IHQZkLQGO15uGEbK3EAl5wi9SS8hs45VgsxQfMnxvt+L+zIr7ifZFIH14cfAeVe2uCTa+SPRa3g==", "dependencies": { - "cssnano-utils": "^3.1.0", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-merge-longhand": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", - "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz", + "integrity": "sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==", "dependencies": { "postcss-value-parser": "^4.2.0", - "stylehacks": "^5.1.1" + "stylehacks": "^6.1.1" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-merge-rules": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", - "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz", + "integrity": "sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "caniuse-api": "^3.0.0", - "cssnano-utils": "^3.1.0", - "postcss-selector-parser": "^6.0.5" + "cssnano-utils": "^4.0.2", + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-minify-font-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", - "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz", + "integrity": "sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-minify-gradients": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", - "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz", + "integrity": "sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==", "dependencies": { - "colord": "^2.9.1", - "cssnano-utils": "^3.1.0", + "colord": "^2.9.3", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-minify-params": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", - "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz", + "integrity": "sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==", "dependencies": { - "browserslist": "^4.21.4", - "cssnano-utils": "^3.1.0", + "browserslist": "^4.23.0", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-minify-selectors": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", - "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz", + "integrity": "sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==", "dependencies": { - "postcss-selector-parser": "^6.0.5" + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-modules-extract-imports": { @@ -13064,192 +14537,191 @@ } }, "node_modules/postcss-normalize-charset": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", - "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz", + "integrity": "sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-display-values": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", - "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz", + "integrity": "sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-positions": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", - "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz", + "integrity": "sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-repeat-style": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", - "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz", + "integrity": "sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-string": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", - "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz", + "integrity": "sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-timing-functions": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", - "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz", + "integrity": "sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-unicode": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", - "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz", + "integrity": "sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", - "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz", + "integrity": "sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==", "dependencies": { - "normalize-url": "^6.0.1", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-normalize-whitespace": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", - "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz", + "integrity": "sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-ordered-values": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", - "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz", + "integrity": "sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==", "dependencies": { - "cssnano-utils": "^3.1.0", + "cssnano-utils": "^4.0.2", "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-reduce-idents": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", - "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-6.0.3.tgz", + "integrity": "sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-reduce-initial": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", - "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", + "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", "dependencies": { - "browserslist": "^4.21.4", + "browserslist": "^4.23.0", "caniuse-api": "^3.0.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-reduce-transforms": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", - "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", + "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", "dependencies": { "postcss-value-parser": "^4.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-selector-parser": { - "version": "6.0.13", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", - "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -13259,46 +14731,46 @@ } }, "node_modules/postcss-sort-media-queries": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.4.1.tgz", - "integrity": "sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-5.2.0.tgz", + "integrity": "sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA==", "dependencies": { - "sort-css-media-queries": "2.1.0" + "sort-css-media-queries": "2.2.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=14.0.0" }, "peerDependencies": { - "postcss": "^8.4.16" + "postcss": "^8.4.23" } }, "node_modules/postcss-svgo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", - "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", + "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", "dependencies": { "postcss-value-parser": "^4.2.0", - "svgo": "^2.7.0" + "svgo": "^3.2.0" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >= 18" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-unique-selectors": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", - "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz", + "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==", "dependencies": { - "postcss-selector-parser": "^6.0.5" + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/postcss-value-parser": { @@ -13307,14 +14779,33 @@ "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" }, "node_modules/postcss-zindex": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", - "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-6.0.2.tgz", + "integrity": "sha512-5BxW9l1evPB/4ZIc+2GobEBoKC+h8gPGCMi+jxsYvd2x0mjq7wazk6DrP71pStqxE9Foxh5TVnonbWpFZzXaYg==", "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" + } + }, + "node_modules/postman-url-encoder": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/postman-url-encoder/-/postman-url-encoder-3.0.5.tgz", + "integrity": "sha512-jOrdVvzUXBC7C+9gkIkpDJ3HIxOHTIqjpQ4C1EMt1ZGeMvSEpbFCKq23DEfgsj46vMnDgyQf+1ZLp2Wm+bKSsA==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/postman-url-encoder/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" } }, "node_modules/prettier": { @@ -13369,6 +14860,14 @@ "node": ">=6" } }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -13430,6 +14929,24 @@ "node": ">= 0.10" } }, + "node_modules/public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dependencies": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/public-encrypt/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, "node_modules/punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", @@ -13463,6 +14980,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", + "engines": { + "node": ">=0.4.x" + } + }, "node_modules/queue": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", @@ -13509,6 +15034,15 @@ "safe-buffer": "^5.1.0" } }, + "node_modules/randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dependencies": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, "node_modules/range-parser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", @@ -13759,15 +15293,30 @@ "react-dom": "^16.6.0 || ^17.0.0 || ^18.0.0" } }, + "node_modules/react-hook-form": { + "version": "7.51.4", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.51.4.tgz", + "integrity": "sha512-V14i8SEkh+V1gs6YtD0hdHYnoL4tp/HX/A45wWQN15CYr9bFRmmRdYStSO5L65lCCZRF+kYiSKhm9alqbcdiVA==", + "engines": { + "node": ">=12.22.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-hook-form" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17 || ^18" + } + }, "node_modules/react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "node_modules/react-json-view-lite": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/react-json-view-lite/-/react-json-view-lite-1.3.0.tgz", - "integrity": "sha512-aN1biKC5v4DQkmQBlZjuMFR09MKZGMPtIg+cut8zEeg2HXd6gl2gRy0n4HMacHf0dznQgo0SVXN7eT8zV3hEuQ==", + "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==", "engines": { "node": ">=14" }, @@ -13775,14 +15324,36 @@ "react": "^16.13.1 || ^17.0.0 || ^18.0.0" } }, + "node_modules/react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "node_modules/react-live": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/react-live/-/react-live-4.1.6.tgz", + "integrity": "sha512-2oq3MADi3rupqZcdoHMrV9p+Eg/92BDds278ZuoOz8d68qw6ct0xZxX89MRxeChrnFHy1XPr8BVknDJNJNdvVw==", + "dependencies": { + "prism-react-renderer": "^2.0.6", + "sucrase": "^3.31.0", + "use-editable": "^2.3.3" + }, + "engines": { + "node": ">= 0.12.0", + "npm": ">= 2.0.0" + }, + "peerDependencies": { + "react": ">=18.0.0", + "react-dom": ">=18.0.0" + } + }, "node_modules/react-loadable": { "name": "@docusaurus/react-loadable", - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", - "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-6.0.0.tgz", + "integrity": "sha512-YMMxTUQV/QFSnbgrP3tjDzLHRg7vsbMn8e9HAa8o/1iXoiomo48b7sk/kkmWEuWNDPJVlKSJRB6Y2fHqdJk+SQ==", "dependencies": { - "@types/react": "*", - "prop-types": "^15.6.2" + "@types/react": "*" }, "peerDependencies": { "react": "*" @@ -13803,6 +15374,683 @@ "webpack": ">=4.41.1 || 5.x" } }, + "node_modules/react-magic-dropzone": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/react-magic-dropzone/-/react-magic-dropzone-1.0.1.tgz", + "integrity": "sha512-0BIROPARmXHpk4AS3eWBOsewxoM5ndk2psYP/JmbCq8tz3uR2LIV1XiroZ9PKrmDRMctpW+TvsBCtWasuS8vFA==" + }, + "node_modules/react-markdown": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/react-markdown/-/react-markdown-8.0.7.tgz", + "integrity": "sha512-bvWbzG4MtOU62XqBx3Xx+zB2raaFFsq4mYiAzfjXJMEz2sixgeAfraA3tvzULF02ZdOMUOKTBFFaZJDDrq+BJQ==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/prop-types": "^15.0.0", + "@types/unist": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-whitespace": "^2.0.0", + "prop-types": "^15.0.0", + "property-information": "^6.0.0", + "react-is": "^18.0.0", + "remark-parse": "^10.0.0", + "remark-rehype": "^10.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.0", + "unified": "^10.0.0", + "unist-util-visit": "^4.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "@types/react": ">=16", + "react": ">=16" + } + }, + "node_modules/react-markdown/node_modules/@types/hast": { + "version": "2.3.10", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.10.tgz", + "integrity": "sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==", + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/react-markdown/node_modules/@types/mdast": { + "version": "3.0.15", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.15.tgz", + "integrity": "sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==", + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/react-markdown/node_modules/@types/unist": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz", + "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==" + }, + "node_modules/react-markdown/node_modules/hast-util-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", + "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/mdast-util-from-markdown": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz", + "integrity": "sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "decode-named-character-reference": "^1.0.0", + "mdast-util-to-string": "^3.1.0", + "micromark": "^3.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-decode-string": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "unist-util-stringify-position": "^3.0.0", + "uvu": "^0.5.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/mdast-util-to-hast": { + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz", + "integrity": "sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-definitions": "^5.0.0", + "micromark-util-sanitize-uri": "^1.1.0", + "trim-lines": "^3.0.0", + "unist-util-generated": "^2.0.0", + "unist-util-position": "^4.0.0", + "unist-util-visit": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/mdast-util-to-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz", + "integrity": "sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==", + "dependencies": { + "@types/mdast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/micromark": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-3.2.0.tgz", + "integrity": "sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "micromark-core-commonmark": "^1.0.1", + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-chunked": "^1.0.0", + "micromark-util-combine-extensions": "^1.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-sanitize-uri": "^1.0.0", + "micromark-util-subtokenize": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.1", + "uvu": "^0.5.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-core-commonmark": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz", + "integrity": "sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-factory-destination": "^1.0.0", + "micromark-factory-label": "^1.0.0", + "micromark-factory-space": "^1.0.0", + "micromark-factory-title": "^1.0.0", + "micromark-factory-whitespace": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-chunked": "^1.0.0", + "micromark-util-classify-character": "^1.0.0", + "micromark-util-html-tag-name": "^1.0.0", + "micromark-util-normalize-identifier": "^1.0.0", + "micromark-util-resolve-all": "^1.0.0", + "micromark-util-subtokenize": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.1", + "uvu": "^0.5.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-factory-destination": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz", + "integrity": "sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-factory-label": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz", + "integrity": "sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-factory-title": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz", + "integrity": "sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-factory-whitespace": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz", + "integrity": "sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-chunked": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz", + "integrity": "sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-classify-character": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz", + "integrity": "sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-combine-extensions": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz", + "integrity": "sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^1.0.0", + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-decode-numeric-character-reference": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz", + "integrity": "sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-decode-string": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz", + "integrity": "sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^1.0.0", + "micromark-util-decode-numeric-character-reference": "^1.0.0", + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz", + "integrity": "sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/react-markdown/node_modules/micromark-util-html-tag-name": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz", + "integrity": "sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/react-markdown/node_modules/micromark-util-normalize-identifier": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz", + "integrity": "sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-resolve-all": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz", + "integrity": "sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-sanitize-uri": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz", + "integrity": "sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^1.0.0", + "micromark-util-encode": "^1.0.0", + "micromark-util-symbol": "^1.0.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-subtokenize": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz", + "integrity": "sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^1.0.0", + "micromark-util-symbol": "^1.0.0", + "micromark-util-types": "^1.0.0", + "uvu": "^0.5.0" + } + }, + "node_modules/react-markdown/node_modules/micromark-util-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-1.1.0.tgz", + "integrity": "sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/react-markdown/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/react-markdown/node_modules/remark-parse": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-10.0.2.tgz", + "integrity": "sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-from-markdown": "^1.0.0", + "unified": "^10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/remark-rehype": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-10.1.0.tgz", + "integrity": "sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==", + "dependencies": { + "@types/hast": "^2.0.0", + "@types/mdast": "^3.0.0", + "mdast-util-to-hast": "^12.1.0", + "unified": "^10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "dependencies": { + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/unist-util-is": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-5.2.1.tgz", + "integrity": "sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/unist-util-position": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-4.0.4.tgz", + "integrity": "sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/unist-util-visit": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-4.1.2.tgz", + "integrity": "sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0", + "unist-util-visit-parents": "^5.1.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/unist-util-visit-parents": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz", + "integrity": "sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-markdown/node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/react-modal": { + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.16.1.tgz", + "integrity": "sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==", + "dependencies": { + "exenv": "^1.2.0", + "prop-types": "^15.7.2", + "react-lifecycles-compat": "^3.0.0", + "warning": "^4.0.3" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "react": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18", + "react-dom": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18" + } + }, + "node_modules/react-redux": { + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-7.2.9.tgz", + "integrity": "sha512-Gx4L3uM182jEEayZfRbI/G11ZpYdNAnBs70lFVMNdHJI76XYtR+7m0MN+eAs7UHBPhWXcnFPaS+9owSCJQHNpQ==", + "dependencies": { + "@babel/runtime": "^7.15.4", + "@types/react-redux": "^7.1.20", + "hoist-non-react-statics": "^3.3.2", + "loose-envify": "^1.4.0", + "prop-types": "^15.7.2", + "react-is": "^17.0.2" + }, + "peerDependencies": { + "react": "^16.8.3 || ^17 || ^18" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, + "node_modules/react-redux/node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" + }, "node_modules/react-router": { "version": "5.3.4", "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", @@ -13851,26 +16099,6 @@ "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==", - "dependencies": { - "clsx": "^1.1.0", - "prop-types": "^15.5.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.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-toggle": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/react-toggle/-/react-toggle-4.1.3.tgz", @@ -13948,64 +16176,20 @@ "node": ">=6.0.0" } }, - "node_modules/redoc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/redoc/-/redoc-2.1.3.tgz", - "integrity": "sha512-d7F9qLLxaiFW4GC03VkwlX9wuRIpx9aiIIf3o6mzMnqPfhxrn2IRKGndrkJeVdItgCfmg9jXZiFEowm60f1meQ==", + "node_modules/redux": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/redux/-/redux-4.2.1.tgz", + "integrity": "sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==", "dependencies": { - "@redocly/openapi-core": "^1.0.0-rc.2", - "classnames": "^2.3.1", - "decko": "^1.2.0", - "dompurify": "^2.2.8", - "eventemitter3": "^4.0.7", - "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", - "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", - "slugify": "~1.4.7", - "stickyfill": "^1.1.1", - "swagger2openapi": "^7.0.6", - "url-template": "^2.0.8" - }, - "engines": { - "node": ">=6.9", - "npm": ">=3.0.0" - }, - "peerDependencies": { - "core-js": "^3.1.4", - "mobx": "^6.0.4", - "react": "^16.8.4 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.4 || ^17.0.0 || ^18.0.0", - "styled-components": "^4.1.1 || ^5.1.1 || ^6.0.5" + "@babel/runtime": "^7.9.2" } }, - "node_modules/redoc/node_modules/dompurify": { - "version": "2.4.7", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.7.tgz", - "integrity": "sha512-kxxKlPEDa6Nc5WJi+qRgPbOAbgTpSULL+vI3NUXsZMlkJxTqYI9wg5ZTay2sFrdZRWHPWNi+EdAhcJf81WtoMQ==" - }, - "node_modules/redocusaurus": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/redocusaurus/-/redocusaurus-2.0.2.tgz", - "integrity": "sha512-o71XY24IkqCWVUF39UpVbklvKilbI5LfqPPeD5yhuaME87agsIHpRNdvifdPIK0oAQog4RMjDM+qMRqKUB414A==", - "dependencies": { - "docusaurus-plugin-redoc": "2.0.2", - "docusaurus-theme-redoc": "2.0.2" - }, - "engines": { - "node": ">=14" - }, + "node_modules/redux-thunk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.4.2.tgz", + "integrity": "sha512-+P3TjtnP0k/FEjcBL5FZpoovtvrTNT/UXd4/sluaSyrURlSlhLSzEdfsTBW7WsKB6yPvgd7q/iZPICFjW4o57Q==", "peerDependencies": { - "@docusaurus/theme-common": "^3.0.0", - "@docusaurus/utils": "^3.0.0" + "redux": "^4" } }, "node_modules/reftools": { @@ -14381,11 +16565,21 @@ "node": "*" } }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + }, "node_modules/requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, + "node_modules/reselect": { + "version": "4.1.8", + "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.1.8.tgz", + "integrity": "sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==" + }, "node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", @@ -14465,6 +16659,15 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, "node_modules/robust-predicates": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", @@ -14554,6 +16757,58 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, + "node_modules/sass": { + "version": "1.76.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.76.0.tgz", + "integrity": "sha512-nc3LeqvF2FNW5xGF1zxZifdW3ffIz5aBb7I7tSvOoNu7z1RQ6pFt9MBuiPtjgaI62YWrM/txjWlOCFiGtf2xpw==", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.3.3", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.3.3.tgz", + "integrity": "sha512-mt5YN2F1MOZr3d/wBRcZxeFgwgkH44wVc2zohO2YF6JiOMkiXe4BYRZpSu2sO1g71mo/j16txzUhsKZlqjVGzA==", + "dependencies": { + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, "node_modules/sax": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", @@ -14825,25 +17080,49 @@ "node": ">= 0.8.0" } }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + }, "node_modules/set-function-length": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", - "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "dependencies": { - "define-data-property": "^1.1.1", - "get-intrinsic": "^1.2.1", + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" } }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, "node_modules/shallow-clone": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", @@ -14952,13 +17231,17 @@ "integrity": "sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==" }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -15029,12 +17312,13 @@ "node": ">=8" } }, - "node_modules/slugify": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.4.7.tgz", - "integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==", - "engines": { - "node": ">=8.0.0" + "node_modules/snake-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", + "integrity": "sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" } }, "node_modules/sockjs": { @@ -15056,9 +17340,9 @@ } }, "node_modules/sort-css-media-queries": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", - "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.2.0.tgz", + "integrity": "sha512-0xtkGhWCC9MGt/EzgnvbbbKhqWjl1+/rncmhTh5qCpbYguXh6S/qwePfv/JQ8jePXXmqingylxoC49pCkSPIbA==", "engines": { "node": ">= 6.3.0" } @@ -15149,12 +17433,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility" - }, "node_modules/statuses": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", @@ -15168,10 +17446,25 @@ "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.4.3.tgz", "integrity": "sha512-f9aPhy8fYBuMN+sNfakZV18U39PbalgjXG3lLB9WkaYTxijru61wb57V9wxxNthXM5Sd88ETBWi29qLAsHO52Q==" }, - "node_modules/stickyfill": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/stickyfill/-/stickyfill-1.1.1.tgz", - "integrity": "sha512-GCp7vHAfpao+Qh/3Flh9DXEJ/qSi0KJwJw6zYlZOtRYXWUIpMM6mC2rIep/dK8RQqwW0KxGJIllmjPIBOGN8AA==" + "node_modules/stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", + "dependencies": { + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" + } + }, + "node_modules/stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "dependencies": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" + } }, "node_modules/string_decoder": { "version": "1.3.0", @@ -15197,6 +17490,25 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, "node_modules/string-width/node_modules/ansi-regex": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", @@ -15259,6 +17571,18 @@ "node": ">=8" } }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-bom-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", @@ -15294,78 +17618,19 @@ "inline-style-parser": "0.1.1" } }, - "node_modules/styled-components": { - "version": "6.1.8", - "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.1.8.tgz", - "integrity": "sha512-PQ6Dn+QxlWyEGCKDS71NGsXoVLKfE1c3vApkvDYS5KAK+V8fNWGhbSUEo9Gg2iaID2tjLXegEW3bZDUGpofRWw==", - "dependencies": { - "@emotion/is-prop-valid": "1.2.1", - "@emotion/unitless": "0.8.0", - "@types/stylis": "4.2.0", - "css-to-react-native": "3.2.0", - "csstype": "3.1.2", - "postcss": "8.4.31", - "shallowequal": "1.1.0", - "stylis": "4.3.1", - "tslib": "2.5.0" - }, - "engines": { - "node": ">= 16" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/styled-components" - }, - "peerDependencies": { - "react": ">= 16.8.0", - "react-dom": ">= 16.8.0" - } - }, - "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": "5.1.1", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", - "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz", + "integrity": "sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==", "dependencies": { - "browserslist": "^4.21.4", - "postcss-selector-parser": "^6.0.4" + "browserslist": "^4.23.0", + "postcss-selector-parser": "^6.0.16" }, "engines": { - "node": "^10 || ^12 || >=14.0" + "node": "^14 || ^16 || >=18.0" }, "peerDependencies": { - "postcss": "^8.2.15" + "postcss": "^8.4.31" } }, "node_modules/stylis": { @@ -15373,6 +17638,78 @@ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.1.tgz", "integrity": "sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==" }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/sucrase/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/sucrase/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/sucrase/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -15401,23 +17738,27 @@ "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" }, "node_modules/svgo": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", - "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz", + "integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==", "dependencies": { "@trysound/sax": "0.2.0", "commander": "^7.2.0", - "css-select": "^4.1.3", - "css-tree": "^1.1.3", - "csso": "^4.2.0", - "picocolors": "^1.0.0", - "stable": "^0.1.8" + "css-select": "^5.1.0", + "css-tree": "^2.3.1", + "css-what": "^6.1.0", + "csso": "^5.0.5", + "picocolors": "^1.0.0" }, "bin": { "svgo": "bin/svgo" }, "engines": { - "node": ">=10.13.0" + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" } }, "node_modules/svgo/node_modules/commander": { @@ -15428,69 +17769,6 @@ "node": ">= 10" } }, - "node_modules/svgo/node_modules/css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/svgo/node_modules/dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/svgo/node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/svgo/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/swagger2openapi": { "version": "7.0.8", "resolved": "https://registry.npmjs.org/swagger2openapi/-/swagger2openapi-7.0.8.tgz", @@ -15657,11 +17935,41 @@ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, "node_modules/thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" }, + "node_modules/timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "dependencies": { + "setimmediate": "^1.0.4" + }, + "engines": { + "node": ">=0.6.0" + } + }, "node_modules/tiny-invariant": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", @@ -15750,11 +18058,21 @@ "node": ">=6.10" } }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==" + }, "node_modules/tslib": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, + "node_modules/tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" + }, "node_modules/type-fest": { "version": "2.19.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", @@ -15898,6 +18216,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/unist-util-generated": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-2.0.1.tgz", + "integrity": "sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, "node_modules/unist-util-is": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", @@ -16117,6 +18444,15 @@ "node": ">=6" } }, + "node_modules/url": { + "version": "0.11.3", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.3.tgz", + "integrity": "sha512-6hxOLGfZASQK/cijlZnZJTq8OXAkt/3YGfQX45vvMYXpZoo8NdWZcY73K108Jf759lS1Bv/8wXnHDTSz17dSRw==", + "dependencies": { + "punycode": "^1.4.1", + "qs": "^6.11.2" + } + }, "node_modules/url-loader": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", @@ -16207,10 +18543,39 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/url-template": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/url-template/-/url-template-2.0.8.tgz", - "integrity": "sha512-XdVKMF4SJ0nP/O7XIPB0JwAEuT9lDIYnNsK8yGVe43y0AWoKeJNdv3ZNWh7ksJ6KqQFjOO6ox/VEitLnaVNufw==" + "node_modules/url/node_modules/qs": { + "version": "6.12.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.12.1.tgz", + "integrity": "sha512-zWmv4RSuB9r2mYQw3zxQuHWeU+42aKi1wWig/j4ele4ygELZ7PEO6MM7rim9oAQH2A5MWfsAVf/jPvTPgCbvUQ==", + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/use-editable": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/use-editable/-/use-editable-2.3.3.tgz", + "integrity": "sha512-7wVD2JbfAFJ3DK0vITvXBdpd9JAz5BcKAAolsnLBuBn6UDDwBGuCIAGvR3yA2BNKm578vAMVHFCWaOcA+BhhiA==", + "peerDependencies": { + "react": ">= 16.8.0" + } + }, + "node_modules/util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" + } }, "node_modules/util-deprecate": { "version": "1.0.2", @@ -16275,6 +18640,38 @@ "node": ">=6" } }, + "node_modules/validate.io-array": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/validate.io-array/-/validate.io-array-1.0.6.tgz", + "integrity": "sha512-DeOy7CnPEziggrOO5CZhVKJw6S3Yi7e9e65R1Nl/RTN1vTQKnzjfvks0/8kQ40FP/dsjRAOd4hxmJ7uLa6vxkg==" + }, + "node_modules/validate.io-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/validate.io-function/-/validate.io-function-1.0.2.tgz", + "integrity": "sha512-LlFybRJEriSuBnUhQyG5bwglhh50EpTL2ul23MPIuR1odjO7XaMLFV8vHGwp7AZciFxtYOeiSCT5st+XSPONiQ==" + }, + "node_modules/validate.io-integer": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/validate.io-integer/-/validate.io-integer-1.0.5.tgz", + "integrity": "sha512-22izsYSLojN/P6bppBqhgUDjCkr5RY2jd+N2a3DCAUey8ydvrZ/OkGvFPR7qfOpwR2LC5p4Ngzxz36g5Vgr/hQ==", + "dependencies": { + "validate.io-number": "^1.0.3" + } + }, + "node_modules/validate.io-integer-array": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/validate.io-integer-array/-/validate.io-integer-array-1.0.0.tgz", + "integrity": "sha512-mTrMk/1ytQHtCY0oNO3dztafHYyGU88KL+jRxWuzfOmQb+4qqnWmI+gykvGp8usKZOM0H7keJHEbRaFiYA0VrA==", + "dependencies": { + "validate.io-array": "^1.0.3", + "validate.io-integer": "^1.0.4" + } + }, + "node_modules/validate.io-number": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/validate.io-number/-/validate.io-number-1.0.3.tgz", + "integrity": "sha512-kRAyotcbNaSYoDnXvb4MHg/0a1egJdLwS6oJ38TJY7aw9n93Fl/3blIXdyYvPOp55CNxywooG/3BcrwNrBpcSg==" + }, "node_modules/value-equal": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", @@ -16328,6 +18725,19 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" + }, + "node_modules/warning": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", + "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, "node_modules/watchpack": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", @@ -16724,6 +19134,29 @@ "node": ">= 8" } }, + "node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==" + }, + "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", @@ -16759,6 +19192,41 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/wrap-ansi/node_modules/ansi-regex": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", @@ -16842,6 +19310,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/xml-formatter": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-2.6.1.tgz", + "integrity": "sha512-dOiGwoqm8y22QdTNI7A+N03tyVfBlQ0/oehAzxIZtwnFAHGeSlrfjF73YQvzSsa/Kt6+YZasKsrdu6OIpuBggw==", + "dependencies": { + "xml-parser-xo": "^3.2.0" + }, + "engines": { + "node": ">= 10" + } + }, "node_modules/xml-js": { "version": "1.6.11", "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", @@ -16853,6 +19332,22 @@ "xml-js": "bin/cli.js" } }, + "node_modules/xml-parser-xo": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-3.2.0.tgz", + "integrity": "sha512-8LRU6cq+d7mVsoDaMhnkkt3CTtAs4153p49fRo+HIB3I1FD1o5CeXRjRH29sQevIfVJIcPjKSsPU/+Ujhq09Rg==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", diff --git a/website/package.json b/website/package.json index 36b158f876..858dfbf1f1 100644 --- a/website/package.json +++ b/website/package.json @@ -5,9 +5,9 @@ "license": "MIT", "scripts": { "docusaurus": "docusaurus", - "watch": "docusaurus start", - "build": "cp ../docker-compose.yml static/docker-compose.yml && cp ../schema.yml static/schema.yaml && docusaurus build", - "build-bundled": "cp ../schema.yml static/schema.yaml && docusaurus build", + "watch": "docusaurus gen-api-docs all && docusaurus start", + "build": "cp ../docker-compose.yml static/docker-compose.yml && cp ../schema.yml static/schema.yaml && docusaurus gen-api-docs all && docusaurus build", + "build-bundled": "cp ../schema.yml static/schema.yaml && docusaurus gen-api-docs all && docusaurus build", "swizzle": "docusaurus swizzle", "deploy": "docusaurus deploy", "serve": "docusaurus serve", @@ -16,15 +16,17 @@ "test": "node --test" }, "dependencies": { - "@docusaurus/core": "^3.2.1", - "@docusaurus/plugin-client-redirects": "^3.2.1", - "@docusaurus/plugin-content-docs": "^3.2.1", - "@docusaurus/preset-classic": "^3.2.1", - "@docusaurus/theme-common": "^3.2.1", - "@docusaurus/theme-mermaid": "^3.2.1", + "@docusaurus/core": "^3.3.2", + "@docusaurus/plugin-client-redirects": "^3.3.2", + "@docusaurus/plugin-content-docs": "^3.3.2", + "@docusaurus/preset-classic": "^3.3.2", + "@docusaurus/theme-common": "^3.3.2", + "@docusaurus/theme-mermaid": "^3.3.2", "@mdx-js/react": "^3.0.1", "clsx": "^2.1.1", "disqus-react": "^1.1.5", + "docusaurus-plugin-openapi-docs": "^3.0.0-beta.10", + "docusaurus-theme-openapi-docs": "^3.0.0-beta.10", "postcss": "^8.4.38", "prism-react-renderer": "^2.3.1", "react": "^18.3.1", @@ -33,7 +35,6 @@ "react-feather": "^2.0.10", "react-toggle": "^4.1.3", "react-tooltip": "^5.26.4", - "redocusaurus": "^2.0.2", "remark-github": "^12.0.0" }, "browserslist": { @@ -49,9 +50,9 @@ ] }, "devDependencies": { - "@docusaurus/module-type-aliases": "3.2.1", - "@docusaurus/tsconfig": "3.2.1", - "@docusaurus/types": "3.2.1", + "@docusaurus/module-type-aliases": "^3.3.2", + "@docusaurus/tsconfig": "^3.3.2", + "@docusaurus/types": "^3.3.2", "@types/react": "^18.3.1", "prettier": "3.2.5", "typescript": "~5.4.5" diff --git a/website/sidebarsDev.js b/website/sidebarsDev.js index 229bbc59d6..26ccbc99d2 100644 --- a/website/sidebarsDev.js +++ b/website/sidebarsDev.js @@ -1,6 +1,7 @@ const docsSidebar = require("./sidebars.js"); const generateVersionDropdown = require("./src/utils.js").generateVersionDropdown; +const apiReference = require("./developer-docs/api/reference/sidebar"); module.exports = { docs: [ @@ -46,7 +47,11 @@ module.exports = { "api/flow-executor", "api/making-schema-changes", "api/websocket", - "api/browser", + { + type: "category", + label: "Reference", + items: apiReference, + }, "api/clients", ], }, From a60442fc2c325091545b39966756f1ca7d90dca5 Mon Sep 17 00:00:00 2001 From: Jens L Date: Sun, 5 May 2024 02:33:38 +0200 Subject: [PATCH 02/42] enterprise/audit: fix audit logging with m2m relations (#9571) --- authentik/enterprise/audit/middleware.py | 37 ++++- authentik/enterprise/audit/tests.py | 196 ++++++++++++++++++++++- authentik/events/middleware.py | 11 +- web/src/admin/events/EventListPage.ts | 2 +- web/src/components/ak-event-info.ts | 48 ++++-- 5 files changed, 278 insertions(+), 16 deletions(-) diff --git a/authentik/enterprise/audit/middleware.py b/authentik/enterprise/audit/middleware.py index 9cc55b6332..e11952e09f 100644 --- a/authentik/enterprise/audit/middleware.py +++ b/authentik/enterprise/audit/middleware.py @@ -2,11 +2,12 @@ from copy import deepcopy from functools import partial +from typing import Any from django.apps.registry import apps from django.core.files import File from django.db import connection -from django.db.models import Model +from django.db.models import ManyToManyRel, Model from django.db.models.expressions import BaseExpression, Combinable from django.db.models.signals import post_init from django.http import HttpRequest @@ -44,7 +45,7 @@ class EnterpriseAuditMiddleware(AuditMiddleware): post_init.disconnect(dispatch_uid=request.request_id) def serialize_simple(self, model: Model) -> dict: - """Serialize a model in a very simple way. No ForeginKeys or other relationships are + """Serialize a model in a very simple way. No ForeignKeys or other relationships are resolved""" data = {} deferred_fields = model.get_deferred_fields() @@ -70,6 +71,9 @@ class EnterpriseAuditMiddleware(AuditMiddleware): for key, value in before.items(): if after.get(key) != value: diff[key] = {"previous_value": value, "new_value": after.get(key)} + for key, value in after.items(): + if key not in before and key not in diff and before.get(key) != value: + diff[key] = {"previous_value": before.get(key), "new_value": value} return sanitize_item(diff) def post_init_handler(self, request: HttpRequest, sender, instance: Model, **_): @@ -98,8 +102,37 @@ class EnterpriseAuditMiddleware(AuditMiddleware): thread_kwargs = {} if hasattr(instance, "_previous_state") or created: prev_state = getattr(instance, "_previous_state", {}) + if created: + prev_state = {} # Get current state new_state = self.serialize_simple(instance) diff = self.diff(prev_state, new_state) thread_kwargs["diff"] = diff return super().post_save_handler(request, sender, instance, created, thread_kwargs, **_) + + def m2m_changed_handler( # noqa: PLR0913 + self, + request: HttpRequest, + sender, + instance: Model, + action: str, + pk_set: set[Any], + thread_kwargs: dict | None = None, + **_, + ): + thread_kwargs = {} + m2m_field = None + # For the audit log we don't care about `pre_` or `post_` so we trim that part off + _, _, action_direction = action.partition("_") + # resolve the "through" model to an actual field + for field in instance._meta.get_fields(): + if not isinstance(field, ManyToManyRel): + continue + if field.through == sender: + m2m_field = field + if m2m_field: + # If we're clearing we just set the "flag" to True + if action_direction == "clear": + pk_set = True + thread_kwargs["diff"] = {m2m_field.related_name: {action_direction: pk_set}} + return super().m2m_changed_handler(request, sender, instance, action, thread_kwargs) diff --git a/authentik/enterprise/audit/tests.py b/authentik/enterprise/audit/tests.py index bb7e761b0a..31b6556ef6 100644 --- a/authentik/enterprise/audit/tests.py +++ b/authentik/enterprise/audit/tests.py @@ -1,9 +1,22 @@ +from unittest.mock import PropertyMock, patch + from django.apps import apps from django.conf import settings -from django.test import TestCase +from django.urls import reverse +from rest_framework.test import APITestCase + +from authentik.core.models import Group, User +from authentik.core.tests.utils import create_test_admin_user +from authentik.events.models import Event, EventAction +from authentik.events.utils import sanitize_item +from authentik.lib.generators import generate_id -class TestEnterpriseAudit(TestCase): +class TestEnterpriseAudit(APITestCase): + """Test audit middleware""" + + def setUp(self) -> None: + self.user = create_test_admin_user() def test_import(self): """Ensure middleware is imported when app.ready is called""" @@ -16,3 +29,182 @@ class TestEnterpriseAudit(TestCase): self.assertIn( "authentik.enterprise.audit.middleware.EnterpriseAuditMiddleware", settings.MIDDLEWARE ) + + @patch( + "authentik.enterprise.audit.middleware.EnterpriseAuditMiddleware.enabled", + PropertyMock(return_value=True), + ) + def test_create(self): + """Test create audit log""" + self.client.force_login(self.user) + username = generate_id() + response = self.client.post( + reverse("authentik_api:user-list"), + data={"name": generate_id(), "username": username, "groups": [], "path": "foo"}, + ) + user = User.objects.get(username=username) + self.assertEqual(response.status_code, 201) + events = Event.objects.filter( + action=EventAction.MODEL_CREATED, + context__model__model_name="user", + context__model__app="authentik_core", + context__model__pk=user.pk, + ) + event = events.first() + self.assertIsNotNone(event) + self.assertIsNotNone(event.context["diff"]) + diff = event.context["diff"] + self.assertEqual( + diff, + { + "name": { + "new_value": user.name, + "previous_value": None, + }, + "path": {"new_value": "foo", "previous_value": None}, + "type": {"new_value": "internal", "previous_value": None}, + "uuid": { + "new_value": user.uuid.hex, + "previous_value": None, + }, + "email": {"new_value": "", "previous_value": None}, + "username": { + "new_value": user.username, + "previous_value": None, + }, + "is_active": {"new_value": True, "previous_value": None}, + "attributes": {"new_value": {}, "previous_value": None}, + "date_joined": { + "new_value": sanitize_item(user.date_joined), + "previous_value": None, + }, + "first_name": {"new_value": "", "previous_value": None}, + "id": {"new_value": user.pk, "previous_value": None}, + "last_name": {"new_value": "", "previous_value": None}, + "password": {"new_value": "********************", "previous_value": None}, + "password_change_date": { + "new_value": sanitize_item(user.password_change_date), + "previous_value": None, + }, + }, + ) + + @patch( + "authentik.enterprise.audit.middleware.EnterpriseAuditMiddleware.enabled", + PropertyMock(return_value=True), + ) + def test_update(self): + """Test update audit log""" + self.client.force_login(self.user) + user = create_test_admin_user() + current_name = user.name + new_name = generate_id() + response = self.client.patch( + reverse("authentik_api:user-detail", kwargs={"pk": user.id}), + data={"name": new_name}, + ) + user.refresh_from_db() + self.assertEqual(response.status_code, 200) + events = Event.objects.filter( + action=EventAction.MODEL_UPDATED, + context__model__model_name="user", + context__model__app="authentik_core", + context__model__pk=user.pk, + ) + event = events.first() + self.assertIsNotNone(event) + self.assertIsNotNone(event.context["diff"]) + diff = event.context["diff"] + self.assertEqual( + diff, + { + "name": { + "new_value": new_name, + "previous_value": current_name, + }, + }, + ) + + @patch( + "authentik.enterprise.audit.middleware.EnterpriseAuditMiddleware.enabled", + PropertyMock(return_value=True), + ) + def test_delete(self): + """Test delete audit log""" + self.client.force_login(self.user) + user = create_test_admin_user() + response = self.client.delete( + reverse("authentik_api:user-detail", kwargs={"pk": user.id}), + ) + self.assertEqual(response.status_code, 204) + events = Event.objects.filter( + action=EventAction.MODEL_DELETED, + context__model__model_name="user", + context__model__app="authentik_core", + context__model__pk=user.pk, + ) + event = events.first() + self.assertIsNotNone(event) + self.assertNotIn("diff", event.context) + + @patch( + "authentik.enterprise.audit.middleware.EnterpriseAuditMiddleware.enabled", + PropertyMock(return_value=True), + ) + def test_m2m_add(self): + """Test m2m add audit log""" + self.client.force_login(self.user) + user = create_test_admin_user() + group = Group.objects.create(name=generate_id()) + response = self.client.post( + reverse("authentik_api:group-add-user", kwargs={"pk": group.group_uuid}), + data={ + "pk": user.pk, + }, + ) + self.assertEqual(response.status_code, 204) + events = Event.objects.filter( + action=EventAction.MODEL_UPDATED, + context__model__model_name="group", + context__model__app="authentik_core", + context__model__pk=group.pk.hex, + ) + event = events.first() + self.assertIsNotNone(event) + self.assertIsNotNone(event.context["diff"]) + diff = event.context["diff"] + self.assertEqual( + diff, + {"users": {"add": [user.pk]}}, + ) + + @patch( + "authentik.enterprise.audit.middleware.EnterpriseAuditMiddleware.enabled", + PropertyMock(return_value=True), + ) + def test_m2m_remove(self): + """Test m2m remove audit log""" + self.client.force_login(self.user) + user = create_test_admin_user() + group = Group.objects.create(name=generate_id()) + response = self.client.post( + reverse("authentik_api:group-remove-user", kwargs={"pk": group.group_uuid}), + data={ + "pk": user.pk, + }, + ) + self.assertEqual(response.status_code, 204) + events = Event.objects.filter( + action=EventAction.MODEL_UPDATED, + context__model__model_name="group", + context__model__app="authentik_core", + context__model__pk=group.pk.hex, + ) + event = events.first() + self.assertIsNotNone(event) + self.assertIsNotNone(event.context["diff"]) + diff = event.context["diff"] + self.assertEqual( + diff, + {"users": {"remove": [user.pk]}}, + ) diff --git a/authentik/events/middleware.py b/authentik/events/middleware.py index 20c93761a6..a3ff3c8b70 100644 --- a/authentik/events/middleware.py +++ b/authentik/events/middleware.py @@ -214,7 +214,15 @@ class AuditMiddleware: model=model_to_dict(instance), ).run() - def m2m_changed_handler(self, request: HttpRequest, sender, instance: Model, action: str, **_): + def m2m_changed_handler( + self, + request: HttpRequest, + sender, + instance: Model, + action: str, + thread_kwargs: dict | None = None, + **_, + ): """Signal handler for all object's m2m_changed""" if action not in ["pre_add", "pre_remove", "post_clear"]: return @@ -229,4 +237,5 @@ class AuditMiddleware: request, user=user, model=model_to_dict(instance), + **thread_kwargs, ).run() diff --git a/web/src/admin/events/EventListPage.ts b/web/src/admin/events/EventListPage.ts index b69adfbfb0..e4e1c7efc4 100644 --- a/web/src/admin/events/EventListPage.ts +++ b/web/src/admin/events/EventListPage.ts @@ -97,7 +97,7 @@ export class EventListPage extends TablePage { } renderExpanded(item: Event): TemplateResult { - return html` + return html`
diff --git a/web/src/components/ak-event-info.ts b/web/src/components/ak-event-info.ts index 1de1b7339c..af1bcc3045 100644 --- a/web/src/components/ak-event-info.ts +++ b/web/src/components/ak-event-info.ts @@ -18,6 +18,7 @@ import PFDescriptionList from "@patternfly/patternfly/components/DescriptionList import PFList from "@patternfly/patternfly/components/List/list.css"; import PFTable from "@patternfly/patternfly/components/Table/table.css"; import PFFlex from "@patternfly/patternfly/layouts/Flex/flex.css"; +import PFSplit from "@patternfly/patternfly/layouts/Split/split.css"; import PFBase from "@patternfly/patternfly/patternfly-base.css"; import { EventActions, FlowsApi } from "@goauthentik/api"; @@ -81,6 +82,7 @@ export class EventInfo extends AKElement { PFCard, PFTable, PFList, + PFSplit, PFDescriptionList, css` code { @@ -246,11 +248,17 @@ export class EventInfo extends AKElement { renderModelChanged() { const diff = this.event.context.diff as unknown as { - [key: string]: { new_value: unknown; previous_value: unknown }; + [key: string]: { + new_value: unknown; + previous_value: unknown; + add?: unknown[]; + remove?: unknown[]; + clear?: boolean; + }; }; let diffBody = html``; if (diff) { - diffBody = html`
+ diffBody = html`
${msg("Changes made:")}
@@ -262,16 +270,36 @@ export class EventInfo extends AKElement { ${Object.keys(diff).map((key) => { + const value = diff[key]; + const previousCol = value.previous_value + ? JSON.stringify(value.previous_value, null, 4) + : msg("-"); + let newCol = html``; + if (value.add || value.remove) { + newCol = html`
    + ${(value.add || value.remove)?.map((item) => { + let itemLabel = ""; + if (value.add) { + itemLabel = msg(str`Added ID ${item}`); + } else if (value.remove) { + itemLabel = msg(str`Removed ID ${item}`); + } + return html`
  • ${itemLabel}
  • `; + })} +
`; + } else if (value.clear) { + newCol = html`${msg("Cleared")}`; + } else { + newCol = html`
+${JSON.stringify(value.new_value, null, 4)}
`; + } return html` - + `; })} @@ -280,8 +308,8 @@ ${JSON.stringify(diff[key].previous_value, null, 4)}`; } return html` -
-
+
+
${msg("Affected model:")}
${this.getModelInfo(this.event.context?.model as EventModel)} From 26daaeb57d9fb097dba2e4f67528d34668c0cec9 Mon Sep 17 00:00:00 2001 From: Jens L Date: Sun, 5 May 2024 16:15:21 +0200 Subject: [PATCH 03/42] core: fix source_flow_manager saving user-source connection too early (#9559) * core: fix source_flow_manager saving user-source connection too early Signed-off-by: Jens Langhammer * ci: fix branch name Signed-off-by: Jens Langhammer --------- Signed-off-by: Jens Langhammer --- .github/actions/docker-push-variables/push_vars.py | 2 +- authentik/core/sources/flow_manager.py | 3 --- authentik/core/tests/test_source_flow_manager.py | 14 ++++++++++---- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/.github/actions/docker-push-variables/push_vars.py b/.github/actions/docker-push-variables/push_vars.py index 5c30b258b2..28572b8ca4 100644 --- a/.github/actions/docker-push-variables/push_vars.py +++ b/.github/actions/docker-push-variables/push_vars.py @@ -12,7 +12,7 @@ should_build = str(os.environ.get("DOCKER_USERNAME", None) is not None).lower() branch_name = os.environ["GITHUB_REF"] if os.environ.get("GITHUB_HEAD_REF", "") != "": branch_name = os.environ["GITHUB_HEAD_REF"] -safe_branch_name = branch_name.replace("refs/heads/", "").replace("/", "-") +safe_branch_name = branch_name.replace("refs/heads/", "").replace("/", "-").replace("'", "-") image_names = os.getenv("IMAGE_NAME").split(",") image_arch = os.getenv("IMAGE_ARCH") or None diff --git a/authentik/core/sources/flow_manager.py b/authentik/core/sources/flow_manager.py index 18b126ad21..183ca1491a 100644 --- a/authentik/core/sources/flow_manager.py +++ b/authentik/core/sources/flow_manager.py @@ -100,8 +100,6 @@ class SourceFlowManager: if self.request.user.is_authenticated: new_connection.user = self.request.user new_connection = self.update_connection(new_connection, **kwargs) - - new_connection.save() return Action.LINK, new_connection existing_connections = self.connection_type.objects.filter( @@ -148,7 +146,6 @@ class SourceFlowManager: ]: new_connection.user = user new_connection = self.update_connection(new_connection, **kwargs) - new_connection.save() return Action.LINK, new_connection if self.source.user_matching_mode in [ SourceUserMatchingModes.EMAIL_DENY, diff --git a/authentik/core/tests/test_source_flow_manager.py b/authentik/core/tests/test_source_flow_manager.py index f4fa71a4be..e6614933d4 100644 --- a/authentik/core/tests/test_source_flow_manager.py +++ b/authentik/core/tests/test_source_flow_manager.py @@ -48,15 +48,21 @@ class TestSourceFlowManager(TestCase): def test_authenticated_link(self): """Test authenticated user linking""" - UserOAuthSourceConnection.objects.create( - user=get_anonymous_user(), source=self.source, identifier=self.identifier - ) user = User.objects.create(username="foo", email="foo@bar.baz") flow_manager = OAuthSourceFlowManager( self.source, get_request("/", user=user), self.identifier, {} ) - action, _ = flow_manager.get_action() + action, connection = flow_manager.get_action() self.assertEqual(action, Action.LINK) + self.assertIsNone(connection.pk) + flow_manager.get_flow() + + def test_unauthenticated_link(self): + """Test un-authenticated user linking""" + flow_manager = OAuthSourceFlowManager(self.source, get_request("/"), self.identifier, {}) + action, connection = flow_manager.get_action() + self.assertEqual(action, Action.LINK) + self.assertIsNone(connection.pk) flow_manager.get_flow() def test_unauthenticated_enroll_email(self): From 3c54e94c6e8725296c9ebe680a437732951413a9 Mon Sep 17 00:00:00 2001 From: Jens L Date: Sun, 5 May 2024 17:32:19 +0200 Subject: [PATCH 04/42] providers/scim: fix SCIM ID incorrectly used as primary key (#9557) * providers/scim: fix SCIM ID incorrectly used as primary key Signed-off-by: Jens Langhammer * fix unique together Signed-off-by: Jens Langhammer * add test Signed-off-by: Jens Langhammer * add check for empty scim ID Signed-off-by: Jens Langhammer --------- Signed-off-by: Jens Langhammer --- authentik/providers/scim/clients/group.py | 21 ++--- authentik/providers/scim/clients/user.py | 11 ++- ...group_scim_id_scimuser_scim_id_and_more.py | 76 +++++++++++++++++++ authentik/providers/scim/models.py | 12 ++- authentik/providers/scim/tests/test_user.py | 66 ++++++++++++++++ 5 files changed, 169 insertions(+), 17 deletions(-) create mode 100644 authentik/providers/scim/migrations/0007_scimgroup_scim_id_scimuser_scim_id_and_more.py diff --git a/authentik/providers/scim/clients/group.py b/authentik/providers/scim/clients/group.py index 467bd93037..93457779e6 100644 --- a/authentik/providers/scim/clients/group.py +++ b/authentik/providers/scim/clients/group.py @@ -41,7 +41,7 @@ class SCIMGroupClient(SCIMClient[Group, SCIMGroupSchema]): if not scim_group: self.logger.debug("Group does not exist in SCIM, skipping") return None - response = self._request("DELETE", f"/Groups/{scim_group.id}") + response = self._request("DELETE", f"/Groups/{scim_group.scim_id}") scim_group.delete() return response @@ -89,7 +89,7 @@ class SCIMGroupClient(SCIMClient[Group, SCIMGroupSchema]): for user in connections: members.append( GroupMember( - value=user.id, + value=user.scim_id, ) ) if members: @@ -107,16 +107,19 @@ class SCIMGroupClient(SCIMClient[Group, SCIMGroupSchema]): exclude_unset=True, ), ) - SCIMGroup.objects.create(provider=self.provider, group=group, id=response["id"]) + scim_id = response.get("id") + if not scim_id or scim_id == "": + raise StopSync("SCIM Response with missing or invalid `id`") + SCIMGroup.objects.create(provider=self.provider, group=group, scim_id=scim_id) def _update(self, group: Group, connection: SCIMGroup): """Update existing group""" scim_group = self.to_scim(group) - scim_group.id = connection.id + scim_group.id = connection.scim_id try: return self._request( "PUT", - f"/Groups/{scim_group.id}", + f"/Groups/{connection.scim_id}", json=scim_group.model_dump( mode="json", exclude_unset=True, @@ -185,13 +188,13 @@ class SCIMGroupClient(SCIMClient[Group, SCIMGroupSchema]): return user_ids = list( SCIMUser.objects.filter(user__pk__in=users_set, provider=self.provider).values_list( - "id", flat=True + "scim_id", flat=True ) ) if len(user_ids) < 1: return self._patch( - scim_group.id, + scim_group.scim_id, PatchOperation( op=PatchOp.add, path="members", @@ -211,13 +214,13 @@ class SCIMGroupClient(SCIMClient[Group, SCIMGroupSchema]): return user_ids = list( SCIMUser.objects.filter(user__pk__in=users_set, provider=self.provider).values_list( - "id", flat=True + "scim_id", flat=True ) ) if len(user_ids) < 1: return self._patch( - scim_group.id, + scim_group.scim_id, PatchOperation( op=PatchOp.remove, path="members", diff --git a/authentik/providers/scim/clients/user.py b/authentik/providers/scim/clients/user.py index 84b2df6394..da0b8df69b 100644 --- a/authentik/providers/scim/clients/user.py +++ b/authentik/providers/scim/clients/user.py @@ -34,7 +34,7 @@ class SCIMUserClient(SCIMClient[User, SCIMUserSchema]): if not scim_user: self.logger.debug("User does not exist in SCIM, skipping") return None - response = self._request("DELETE", f"/Users/{scim_user.id}") + response = self._request("DELETE", f"/Users/{scim_user.scim_id}") scim_user.delete() return response @@ -85,15 +85,18 @@ class SCIMUserClient(SCIMClient[User, SCIMUserSchema]): exclude_unset=True, ), ) - SCIMUser.objects.create(provider=self.provider, user=user, id=response["id"]) + scim_id = response.get("id") + if not scim_id or scim_id == "": + raise StopSync("SCIM Response with missing or invalid `id`") + SCIMUser.objects.create(provider=self.provider, user=user, scim_id=scim_id) def _update(self, user: User, connection: SCIMUser): """Update existing user""" scim_user = self.to_scim(user) - scim_user.id = connection.id + scim_user.id = connection.scim_id self._request( "PUT", - f"/Users/{connection.id}", + f"/Users/{connection.scim_id}", json=scim_user.model_dump( mode="json", exclude_unset=True, diff --git a/authentik/providers/scim/migrations/0007_scimgroup_scim_id_scimuser_scim_id_and_more.py b/authentik/providers/scim/migrations/0007_scimgroup_scim_id_scimuser_scim_id_and_more.py new file mode 100644 index 0000000000..61ee46c3dd --- /dev/null +++ b/authentik/providers/scim/migrations/0007_scimgroup_scim_id_scimuser_scim_id_and_more.py @@ -0,0 +1,76 @@ +# Generated by Django 5.0.4 on 2024-05-03 12:38 + +import uuid +from django.db import migrations, models +from django.apps.registry import Apps + +from django.db.backends.base.schema import BaseDatabaseSchemaEditor + +from authentik.lib.migrations import progress_bar + + +def fix_scim_user_group_pk(apps: Apps, schema_editor: BaseDatabaseSchemaEditor): + SCIMUser = apps.get_model("authentik_providers_scim", "SCIMUser") + SCIMGroup = apps.get_model("authentik_providers_scim", "SCIMGroup") + db_alias = schema_editor.connection.alias + print("\nFixing primary key for SCIM users, this might take a couple of minutes...") + for user in progress_bar(SCIMUser.objects.using(db_alias).all()): + SCIMUser.objects.using(db_alias).filter( + pk=user.pk, user=user.user_id, provider=user.provider_id + ).update(scim_id=user.pk, id=uuid.uuid4()) + + print("\nFixing primary key for SCIM groups, this might take a couple of minutes...") + for group in progress_bar(SCIMGroup.objects.using(db_alias).all()): + SCIMGroup.objects.using(db_alias).filter( + pk=group.pk, group=group.group_id, provider=group.provider_id + ).update(scim_id=group.pk, id=uuid.uuid4()) + + +class Migration(migrations.Migration): + + dependencies = [ + ( + "authentik_providers_scim", + "0001_squashed_0006_rename_parent_group_scimprovider_filter_group", + ), + ] + + operations = [ + migrations.AddField( + model_name="scimgroup", + name="scim_id", + field=models.TextField(default="temp"), + preserve_default=False, + ), + migrations.AddField( + model_name="scimuser", + name="scim_id", + field=models.TextField(default="temp"), + preserve_default=False, + ), + migrations.RunPython(fix_scim_user_group_pk), + migrations.AlterField( + model_name="scimgroup", + name="id", + field=models.UUIDField( + default=uuid.uuid4, editable=False, primary_key=True, serialize=False + ), + ), + migrations.AlterField( + model_name="scimuser", + name="id", + field=models.UUIDField( + default=uuid.uuid4, editable=False, primary_key=True, serialize=False + ), + ), + migrations.AlterField(model_name="scimuser", name="scim_id", field=models.TextField()), + migrations.AlterField(model_name="scimgroup", name="scim_id", field=models.TextField()), + migrations.AlterUniqueTogether( + name="scimgroup", + unique_together={("scim_id", "group", "provider")}, + ), + migrations.AlterUniqueTogether( + name="scimuser", + unique_together={("scim_id", "user", "provider")}, + ), + ] diff --git a/authentik/providers/scim/models.py b/authentik/providers/scim/models.py index e85d796a79..016586e681 100644 --- a/authentik/providers/scim/models.py +++ b/authentik/providers/scim/models.py @@ -1,5 +1,7 @@ """SCIM Provider models""" +from uuid import uuid4 + from django.core.cache import cache from django.db import models from django.db.models import QuerySet @@ -97,12 +99,13 @@ class SCIMMapping(PropertyMapping): class SCIMUser(models.Model): """Mapping of a user and provider to a SCIM user ID""" - id = models.TextField(primary_key=True) + id = models.UUIDField(primary_key=True, editable=False, default=uuid4) + scim_id = models.TextField() user = models.ForeignKey(User, on_delete=models.CASCADE) provider = models.ForeignKey(SCIMProvider, on_delete=models.CASCADE) class Meta: - unique_together = (("id", "user", "provider"),) + unique_together = (("scim_id", "user", "provider"),) def __str__(self) -> str: return f"SCIM User {self.user_id} to {self.provider_id}" @@ -111,12 +114,13 @@ class SCIMUser(models.Model): class SCIMGroup(models.Model): """Mapping of a group and provider to a SCIM user ID""" - id = models.TextField(primary_key=True) + id = models.UUIDField(primary_key=True, editable=False, default=uuid4) + scim_id = models.TextField() group = models.ForeignKey(Group, on_delete=models.CASCADE) provider = models.ForeignKey(SCIMProvider, on_delete=models.CASCADE) class Meta: - unique_together = (("id", "group", "provider"),) + unique_together = (("scim_id", "group", "provider"),) def __str__(self) -> str: return f"SCIM Group {self.group_id} to {self.provider_id}" diff --git a/authentik/providers/scim/tests/test_user.py b/authentik/providers/scim/tests/test_user.py index bc1b3817f0..6d0f1e1f48 100644 --- a/authentik/providers/scim/tests/test_user.py +++ b/authentik/providers/scim/tests/test_user.py @@ -88,6 +88,72 @@ class SCIMUserTests(TestCase): }, ) + @Mocker() + def test_user_create_different_provider_same_id(self, mock: Mocker): + """Test user creation with multiple providers that happen + to return the same object ID""" + # Create duplicate provider + provider: SCIMProvider = SCIMProvider.objects.create( + name=generate_id(), + url="https://localhost", + token=generate_id(), + exclude_users_service_account=True, + ) + app: Application = Application.objects.create( + name=generate_id(), + slug=generate_id(), + ) + app.backchannel_providers.add(provider) + provider.property_mappings.add( + SCIMMapping.objects.get(managed="goauthentik.io/providers/scim/user") + ) + provider.property_mappings_group.add( + SCIMMapping.objects.get(managed="goauthentik.io/providers/scim/group") + ) + + scim_id = generate_id() + mock.get( + "https://localhost/ServiceProviderConfig", + json={}, + ) + mock.post( + "https://localhost/Users", + json={ + "id": scim_id, + }, + ) + uid = generate_id() + user = User.objects.create( + username=uid, + name=f"{uid} {uid}", + email=f"{uid}@goauthentik.io", + ) + self.assertEqual(mock.call_count, 4) + self.assertEqual(mock.request_history[0].method, "GET") + self.assertEqual(mock.request_history[1].method, "POST") + self.assertJSONEqual( + mock.request_history[1].body, + { + "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], + "active": True, + "emails": [ + { + "primary": True, + "type": "other", + "value": f"{uid}@goauthentik.io", + } + ], + "externalId": user.uid, + "name": { + "familyName": uid, + "formatted": f"{uid} {uid}", + "givenName": uid, + }, + "displayName": f"{uid} {uid}", + "userName": uid, + }, + ) + @Mocker() def test_user_create_update(self, mock: Mocker): """Test user creation and update""" From 570f3a4d42dfc8998f2bc91fc6485d1161f63d4b Mon Sep 17 00:00:00 2001 From: "authentik-automation[bot]" <135050075+authentik-automation[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 02:23:06 +0200 Subject: [PATCH 05/42] core, web: update translations (#9582) Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: rissson <18313093+rissson@users.noreply.github.com> --- web/xliff/de.xlf | 9 +++++++++ web/xliff/en.xlf | 9 +++++++++ web/xliff/es.xlf | 9 +++++++++ web/xliff/fr.xlf | 9 +++++++++ web/xliff/ko.xlf | 9 +++++++++ web/xliff/nl.xlf | 9 +++++++++ web/xliff/pl.xlf | 9 +++++++++ web/xliff/pseudo-LOCALE.xlf | 9 +++++++++ web/xliff/tr.xlf | 9 +++++++++ web/xliff/zh-CN.xlf | 9 +++++++++ web/xliff/zh-Hans.xlf | 9 +++++++++ web/xliff/zh-Hant.xlf | 9 +++++++++ web/xliff/zh_TW.xlf | 9 +++++++++ 13 files changed, 117 insertions(+) diff --git a/web/xliff/de.xlf b/web/xliff/de.xlf index f1c94aa55e..c2b27e5933 100644 --- a/web/xliff/de.xlf +++ b/web/xliff/de.xlf @@ -6555,6 +6555,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/en.xlf b/web/xliff/en.xlf index e53ded3e92..9e603741f9 100644 --- a/web/xliff/en.xlf +++ b/web/xliff/en.xlf @@ -6824,6 +6824,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/es.xlf b/web/xliff/es.xlf index 90f263c5f5..592d2e87b0 100644 --- a/web/xliff/es.xlf +++ b/web/xliff/es.xlf @@ -6472,6 +6472,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/fr.xlf b/web/xliff/fr.xlf index be741e4d0e..6cef7a7aaa 100644 --- a/web/xliff/fr.xlf +++ b/web/xliff/fr.xlf @@ -8620,6 +8620,15 @@ Les liaisons avec les groupes/utilisateurs sont vérifiées par rapport à l'uti Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/ko.xlf b/web/xliff/ko.xlf index b8e1d0b8dd..1679c5af31 100644 --- a/web/xliff/ko.xlf +++ b/web/xliff/ko.xlf @@ -8410,6 +8410,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/nl.xlf b/web/xliff/nl.xlf index d1131b704d..bd84e6a168 100644 --- a/web/xliff/nl.xlf +++ b/web/xliff/nl.xlf @@ -8254,6 +8254,15 @@ Bindingen naar groepen/gebruikers worden gecontroleerd tegen de gebruiker van de Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/pl.xlf b/web/xliff/pl.xlf index f4b4a0b6ce..885fb65465 100644 --- a/web/xliff/pl.xlf +++ b/web/xliff/pl.xlf @@ -6676,6 +6676,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/pseudo-LOCALE.xlf b/web/xliff/pseudo-LOCALE.xlf index 0eb0d2808a..a598b9f8e5 100644 --- a/web/xliff/pseudo-LOCALE.xlf +++ b/web/xliff/pseudo-LOCALE.xlf @@ -8526,4 +8526,13 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + Added ID + + + Removed ID + + + Cleared + diff --git a/web/xliff/tr.xlf b/web/xliff/tr.xlf index 4061bef823..464bf11fd0 100644 --- a/web/xliff/tr.xlf +++ b/web/xliff/tr.xlf @@ -6465,6 +6465,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/zh-CN.xlf b/web/xliff/zh-CN.xlf index afc2697305..0330a1dd77 100644 --- a/web/xliff/zh-CN.xlf +++ b/web/xliff/zh-CN.xlf @@ -5383,6 +5383,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + Added ID + + + Removed ID + + + Cleared + diff --git a/web/xliff/zh-Hans.xlf b/web/xliff/zh-Hans.xlf index 32ac677f8b..56f75f9665 100644 --- a/web/xliff/zh-Hans.xlf +++ b/web/xliff/zh-Hans.xlf @@ -8625,6 +8625,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/zh-Hant.xlf b/web/xliff/zh-Hant.xlf index 2c95e0ab51..d217555251 100644 --- a/web/xliff/zh-Hant.xlf +++ b/web/xliff/zh-Hant.xlf @@ -6513,6 +6513,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared diff --git a/web/xliff/zh_TW.xlf b/web/xliff/zh_TW.xlf index 93705d3479..f426be2d3c 100644 --- a/web/xliff/zh_TW.xlf +++ b/web/xliff/zh_TW.xlf @@ -8371,6 +8371,15 @@ Bindings to groups/users are checked against the user of the event. Algorithm used to generate the private key. + + + Added ID + + + Removed ID + + + Cleared From c7670d271ade620fbc45512e815113b459c15436 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 02:23:21 +0200 Subject: [PATCH 06/42] translate: Updates for file locale/en/LC_MESSAGES/django.po in ru (#9580) Translate locale/en/LC_MESSAGES/django.po in ru 100% translated source file: 'locale/en/LC_MESSAGES/django.po' on 'ru'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- locale/ru/LC_MESSAGES/django.po | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/locale/ru/LC_MESSAGES/django.po b/locale/ru/LC_MESSAGES/django.po index 6257848a47..db90196335 100644 --- a/locale/ru/LC_MESSAGES/django.po +++ b/locale/ru/LC_MESSAGES/django.po @@ -16,7 +16,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-16 00:07+0000\n" +"POT-Creation-Date: 2024-05-03 00:08+0000\n" "PO-Revision-Date: 2022-09-26 16:47+0000\n" "Last-Translator: Anton Babenko, 2024\n" "Language-Team: Russian (https://app.transifex.com/authentik/teams/119923/ru/)\n" @@ -405,6 +405,14 @@ msgstr "Вы собираетесь войти в %(application)s." msgid "Subject-alt name" msgstr "Альтернативное имя субъекта" +#: authentik/crypto/builder.py +msgid "rsa" +msgstr "rsa" + +#: authentik/crypto/builder.py +msgid "ecdsa" +msgstr "ecdsa" + #: authentik/crypto/models.py msgid "PEM-encoded Certificate data" msgstr "Данные сертификата, закодированные в формате PEM" @@ -1721,6 +1729,22 @@ msgstr "RSA-SHA384" msgid "RSA-SHA512" msgstr "RSA-SHA512" +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA1" +msgstr "ECDSA-SHA1" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA256" +msgstr "ECDSA-SHA256" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA384" +msgstr "ECDSA-SHA384" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA512" +msgstr "ECDSA-SHA512" + #: authentik/providers/saml/models.py authentik/sources/saml/models.py msgid "DSA-SHA1" msgstr "DSA-SHA1" From 3e4fea875a54312639f8c26f06955bb16fed3435 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 02:54:38 +0200 Subject: [PATCH 07/42] translate: Updates for file web/xliff/en.xlf in zh-Hans (#9562) * Translate web/xliff/en.xlf in zh-Hans 100% translated source file: 'web/xliff/en.xlf' on 'zh-Hans'. * Removing web/xliff/en.xlf in zh-Hans 99% of minimum 100% translated source file: 'web/xliff/en.xlf' on 'zh-Hans'. --------- Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> From c45bb8e985eb80866e2a7f1c2a605e99542e0a67 Mon Sep 17 00:00:00 2001 From: Jens L Date: Mon, 6 May 2024 03:07:08 +0200 Subject: [PATCH 08/42] providers/proxy: rework redirect mechanism (#8594) * providers/proxy: rework redirect mechanism Signed-off-by: Jens Langhammer * add session id, don't tie to state in session Signed-off-by: Jens Langhammer * handle state failing to parse Signed-off-by: Jens Langhammer * fix Signed-off-by: Jens Langhammer * save session after creating state Signed-off-by: Jens Langhammer * remove debug Signed-off-by: Jens Langhammer * include task expiry in status Signed-off-by: Jens Langhammer * fix redirect URL detection Signed-off-by: Jens Langhammer * fix tests Signed-off-by: Jens Langhammer --------- Signed-off-by: Jens Langhammer --- authentik/events/api/tasks.py | 2 + go.mod | 2 +- go.sum | 4 +- .../proxyv2/application/application.go | 4 +- .../proxyv2/application/mode_forward.go | 30 +---- .../application/mode_forward_caddy_test.go | 12 +- .../application/mode_forward_envoy_test.go | 12 +- .../application/mode_forward_traefik_test.go | 12 +- internal/outpost/proxyv2/application/oauth.go | 113 ++++++++---------- .../proxyv2/application/oauth_callback.go | 39 ++++-- .../proxyv2/application/oauth_state.go | 95 +++++++++++++++ internal/outpost/proxyv2/application/test.go | 27 ++++- internal/outpost/proxyv2/application/utils.go | 66 ++-------- internal/outpost/proxyv2/hs256/hs256.go | 17 ++- schema.yml | 6 + .../admin/system-tasks/SystemTaskListPage.ts | 21 ++++ 16 files changed, 272 insertions(+), 190 deletions(-) create mode 100644 internal/outpost/proxyv2/application/oauth_state.go diff --git a/authentik/events/api/tasks.py b/authentik/events/api/tasks.py index 09cec8457e..529464ad5f 100644 --- a/authentik/events/api/tasks.py +++ b/authentik/events/api/tasks.py @@ -60,6 +60,8 @@ class SystemTaskSerializer(ModelSerializer): "duration", "status", "messages", + "expires", + "expiring", ] diff --git a/go.mod b/go.mod index 66d33856ef..ecd1b6107a 100644 --- a/go.mod +++ b/go.mod @@ -10,7 +10,7 @@ require ( github.com/go-ldap/ldap/v3 v3.4.8 github.com/go-openapi/runtime v0.28.0 github.com/go-openapi/strfmt v0.23.0 - github.com/golang-jwt/jwt v3.2.2+incompatible + github.com/golang-jwt/jwt/v5 v5.2.1 github.com/google/uuid v1.6.0 github.com/gorilla/handlers v1.5.2 github.com/gorilla/mux v1.8.1 diff --git a/go.sum b/go.sum index 461f69e6a5..f4176ff391 100644 --- a/go.sum +++ b/go.sum @@ -111,8 +111,8 @@ github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+Gr github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ= github.com/go-openapi/validate v0.24.0 h1:LdfDKwNbpB6Vn40xhTdNZAnfLECL81w+VX3BumrGD58= github.com/go-openapi/validate v0.24.0/go.mod h1:iyeX1sEufmv3nPbBdX3ieNviWnOZaJ1+zquzJEf2BAQ= -github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY= -github.com/golang-jwt/jwt v3.2.2+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I= +github.com/golang-jwt/jwt/v5 v5.2.1 h1:OuVbFODueb089Lh128TAcimifWaLhJwVflnrgM17wHk= +github.com/golang-jwt/jwt/v5 v5.2.1/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= diff --git a/internal/outpost/proxyv2/application/application.go b/internal/outpost/proxyv2/application/application.go index 3f3fcaa3b6..0a308280da 100644 --- a/internal/outpost/proxyv2/application/application.go +++ b/internal/outpost/proxyv2/application/application.go @@ -192,7 +192,9 @@ func NewApplication(p api.ProxyOutpostConfig, c *http.Client, server Server) (*A }) }) - mux.HandleFunc("/outpost.goauthentik.io/start", a.handleAuthStart) + mux.HandleFunc("/outpost.goauthentik.io/start", func(w http.ResponseWriter, r *http.Request) { + a.handleAuthStart(w, r, "") + }) mux.HandleFunc("/outpost.goauthentik.io/callback", a.handleAuthCallback) mux.HandleFunc("/outpost.goauthentik.io/sign_out", a.handleSignOut) switch *p.Mode { diff --git a/internal/outpost/proxyv2/application/mode_forward.go b/internal/outpost/proxyv2/application/mode_forward.go index 47b5dd47b1..4a2c987d9e 100644 --- a/internal/outpost/proxyv2/application/mode_forward.go +++ b/internal/outpost/proxyv2/application/mode_forward.go @@ -59,19 +59,11 @@ func (a *Application) forwardHandleTraefik(rw http.ResponseWriter, r *http.Reque a.log.Trace("path can be accessed without authentication") return } - a.handleAuthStart(rw, r) // set the redirect flag to the current URL we have, since we redirect // to a (possibly) different domain, but we want to be redirected back // to the application // X-Forwarded-Uri is only the path, so we need to build the entire URL - s, _ := a.sessions.Get(r, a.SessionName()) - if _, redirectSet := s.Values[constants.SessionRedirect]; !redirectSet { - s.Values[constants.SessionRedirect] = fwd.String() - err = s.Save(r, rw) - if err != nil { - a.log.WithError(err).Warning("failed to save session") - } - } + a.handleAuthStart(rw, r, fwd.String()) } func (a *Application) forwardHandleCaddy(rw http.ResponseWriter, r *http.Request) { @@ -110,19 +102,11 @@ func (a *Application) forwardHandleCaddy(rw http.ResponseWriter, r *http.Request a.log.Trace("path can be accessed without authentication") return } - a.handleAuthStart(rw, r) // set the redirect flag to the current URL we have, since we redirect // to a (possibly) different domain, but we want to be redirected back // to the application // X-Forwarded-Uri is only the path, so we need to build the entire URL - s, _ := a.sessions.Get(r, a.SessionName()) - if _, redirectSet := s.Values[constants.SessionRedirect]; !redirectSet { - s.Values[constants.SessionRedirect] = fwd.String() - err = s.Save(r, rw) - if err != nil { - a.log.WithError(err).Warning("failed to save session") - } - } + a.handleAuthStart(rw, r, fwd.String()) } func (a *Application) forwardHandleNginx(rw http.ResponseWriter, r *http.Request) { @@ -185,17 +169,9 @@ func (a *Application) forwardHandleEnvoy(rw http.ResponseWriter, r *http.Request a.log.Trace("path can be accessed without authentication") return } - a.handleAuthStart(rw, r) // set the redirect flag to the current URL we have, since we redirect // to a (possibly) different domain, but we want to be redirected back // to the application // X-Forwarded-Uri is only the path, so we need to build the entire URL - s, _ := a.sessions.Get(r, a.SessionName()) - if _, redirectSet := s.Values[constants.SessionRedirect]; !redirectSet { - s.Values[constants.SessionRedirect] = fwd.String() - err = s.Save(r, rw) - if err != nil { - a.log.WithError(err).Warning("failed to save session before redirect") - } - } + a.handleAuthStart(rw, r, fwd.String()) } diff --git a/internal/outpost/proxyv2/application/mode_forward_caddy_test.go b/internal/outpost/proxyv2/application/mode_forward_caddy_test.go index c2994f7dac..6e0e860e0e 100644 --- a/internal/outpost/proxyv2/application/mode_forward_caddy_test.go +++ b/internal/outpost/proxyv2/application/mode_forward_caddy_test.go @@ -47,16 +47,14 @@ func TestForwardHandleCaddy_Single_Headers(t *testing.T) { a.forwardHandleCaddy(rr, req) assert.Equal(t, http.StatusFound, rr.Code) - loc, _ := rr.Result().Location() - s, _ := a.sessions.Get(req, a.SessionName()) + loc, st := a.assertState(t, req, rr) shouldUrl := url.Values{ "client_id": []string{*a.proxyConfig.ClientId}, "redirect_uri": []string{"https://ext.t.goauthentik.io/outpost.goauthentik.io/callback?X-authentik-auth-callback=true"}, "response_type": []string{"code"}, - "state": []string{s.Values[constants.SessionOAuthState].(string)}, } assert.Equal(t, fmt.Sprintf("http://fake-auth.t.goauthentik.io/auth?%s", shouldUrl.Encode()), loc.String()) - assert.Equal(t, "http://test.goauthentik.io/app", s.Values[constants.SessionRedirect]) + assert.Equal(t, "http://test.goauthentik.io/app", st.Redirect) } func TestForwardHandleCaddy_Single_Claims(t *testing.T) { @@ -134,14 +132,12 @@ func TestForwardHandleCaddy_Domain_Header(t *testing.T) { a.forwardHandleCaddy(rr, req) assert.Equal(t, http.StatusFound, rr.Code) - loc, _ := rr.Result().Location() - s, _ := a.sessions.Get(req, a.SessionName()) + loc, st := a.assertState(t, req, rr) shouldUrl := url.Values{ "client_id": []string{*a.proxyConfig.ClientId}, "redirect_uri": []string{"https://ext.t.goauthentik.io/outpost.goauthentik.io/callback?X-authentik-auth-callback=true"}, "response_type": []string{"code"}, - "state": []string{s.Values[constants.SessionOAuthState].(string)}, } assert.Equal(t, fmt.Sprintf("http://fake-auth.t.goauthentik.io/auth?%s", shouldUrl.Encode()), loc.String()) - assert.Equal(t, "http://test.goauthentik.io/app", s.Values[constants.SessionRedirect]) + assert.Equal(t, "http://test.goauthentik.io/app", st.Redirect) } diff --git a/internal/outpost/proxyv2/application/mode_forward_envoy_test.go b/internal/outpost/proxyv2/application/mode_forward_envoy_test.go index a8b2abfa00..dbb8b5412f 100644 --- a/internal/outpost/proxyv2/application/mode_forward_envoy_test.go +++ b/internal/outpost/proxyv2/application/mode_forward_envoy_test.go @@ -32,16 +32,14 @@ func TestForwardHandleEnvoy_Single_Headers(t *testing.T) { a.forwardHandleEnvoy(rr, req) assert.Equal(t, http.StatusFound, rr.Code) - loc, _ := rr.Result().Location() - s, _ := a.sessions.Get(req, a.SessionName()) + loc, st := a.assertState(t, req, rr) shouldUrl := url.Values{ "client_id": []string{*a.proxyConfig.ClientId}, "redirect_uri": []string{"https://ext.t.goauthentik.io/outpost.goauthentik.io/callback?X-authentik-auth-callback=true"}, "response_type": []string{"code"}, - "state": []string{s.Values[constants.SessionOAuthState].(string)}, } assert.Equal(t, fmt.Sprintf("http://fake-auth.t.goauthentik.io/auth?%s", shouldUrl.Encode()), loc.String()) - assert.Equal(t, "http://ext.t.goauthentik.io/app", s.Values[constants.SessionRedirect]) + assert.Equal(t, "http://ext.t.goauthentik.io/app", st.Redirect) } func TestForwardHandleEnvoy_Single_Claims(t *testing.T) { @@ -102,15 +100,13 @@ func TestForwardHandleEnvoy_Domain_Header(t *testing.T) { a.forwardHandleEnvoy(rr, req) assert.Equal(t, http.StatusFound, rr.Code) - loc, _ := rr.Result().Location() - s, _ := a.sessions.Get(req, a.SessionName()) + loc, st := a.assertState(t, req, rr) shouldUrl := url.Values{ "client_id": []string{*a.proxyConfig.ClientId}, "redirect_uri": []string{"https://ext.t.goauthentik.io/outpost.goauthentik.io/callback?X-authentik-auth-callback=true"}, "response_type": []string{"code"}, - "state": []string{s.Values[constants.SessionOAuthState].(string)}, } assert.Equal(t, fmt.Sprintf("http://fake-auth.t.goauthentik.io/auth?%s", shouldUrl.Encode()), loc.String()) - assert.Equal(t, "http://test.goauthentik.io/app", s.Values[constants.SessionRedirect]) + assert.Equal(t, "http://test.goauthentik.io/app", st.Redirect) } diff --git a/internal/outpost/proxyv2/application/mode_forward_traefik_test.go b/internal/outpost/proxyv2/application/mode_forward_traefik_test.go index 227dc1cb52..a6b8963a83 100644 --- a/internal/outpost/proxyv2/application/mode_forward_traefik_test.go +++ b/internal/outpost/proxyv2/application/mode_forward_traefik_test.go @@ -47,16 +47,14 @@ func TestForwardHandleTraefik_Single_Headers(t *testing.T) { a.forwardHandleTraefik(rr, req) assert.Equal(t, http.StatusFound, rr.Code) - loc, _ := rr.Result().Location() - s, _ := a.sessions.Get(req, a.SessionName()) + loc, st := a.assertState(t, req, rr) shouldUrl := url.Values{ "client_id": []string{*a.proxyConfig.ClientId}, "redirect_uri": []string{"https://ext.t.goauthentik.io/outpost.goauthentik.io/callback?X-authentik-auth-callback=true"}, "response_type": []string{"code"}, - "state": []string{s.Values[constants.SessionOAuthState].(string)}, } assert.Equal(t, fmt.Sprintf("http://fake-auth.t.goauthentik.io/auth?%s", shouldUrl.Encode()), loc.String()) - assert.Equal(t, "http://test.goauthentik.io/app", s.Values[constants.SessionRedirect]) + assert.Equal(t, "http://test.goauthentik.io/app", st.Redirect) } func TestForwardHandleTraefik_Single_Claims(t *testing.T) { @@ -134,14 +132,12 @@ func TestForwardHandleTraefik_Domain_Header(t *testing.T) { a.forwardHandleTraefik(rr, req) assert.Equal(t, http.StatusFound, rr.Code) - loc, _ := rr.Result().Location() - s, _ := a.sessions.Get(req, a.SessionName()) + loc, st := a.assertState(t, req, rr) shouldUrl := url.Values{ "client_id": []string{*a.proxyConfig.ClientId}, "redirect_uri": []string{"https://ext.t.goauthentik.io/outpost.goauthentik.io/callback?X-authentik-auth-callback=true"}, "response_type": []string{"code"}, - "state": []string{s.Values[constants.SessionOAuthState].(string)}, } assert.Equal(t, fmt.Sprintf("http://fake-auth.t.goauthentik.io/auth?%s", shouldUrl.Encode()), loc.String()) - assert.Equal(t, "http://test.goauthentik.io/app", s.Values[constants.SessionRedirect]) + assert.Equal(t, "http://test.goauthentik.io/app", st.Redirect) } diff --git a/internal/outpost/proxyv2/application/oauth.go b/internal/outpost/proxyv2/application/oauth.go index 9f9c18d8f2..f2dc93319d 100644 --- a/internal/outpost/proxyv2/application/oauth.go +++ b/internal/outpost/proxyv2/application/oauth.go @@ -1,13 +1,10 @@ package application import ( - "encoding/base64" "net/http" "net/url" "strings" - "time" - "github.com/gorilla/securecookie" "goauthentik.io/api/v3" "goauthentik.io/internal/outpost/proxyv2/constants" ) @@ -48,69 +45,59 @@ func (a *Application) checkRedirectParam(r *http.Request) (string, bool) { return u.String(), true } -func (a *Application) handleAuthStart(rw http.ResponseWriter, r *http.Request) { - newState := base64.RawURLEncoding.EncodeToString(securecookie.GenerateRandomKey(32)) +func (a *Application) handleAuthStart(rw http.ResponseWriter, r *http.Request, fwd string) { + state, err := a.createState(r, fwd) + if err != nil { + a.log.WithError(err).Warning("failed to create state") + return + } s, _ := a.sessions.Get(r, a.SessionName()) - // Check if we already have a state in the session, - // and if we do we don't do anything here - currentState, ok := s.Values[constants.SessionOAuthState].(string) - if ok { - claims, err := a.checkAuth(rw, r) - if err != nil && claims != nil { - a.log.Trace("auth start request with existing authenticated session") - a.redirect(rw, r) - return - } - a.log.Trace("session already has state, sending redirect to current state") - http.Redirect(rw, r, a.oauthConfig.AuthCodeURL(currentState), http.StatusFound) - return - } - rd, ok := a.checkRedirectParam(r) - if ok { - s.Values[constants.SessionRedirect] = rd - a.log.WithField("rd", rd).Trace("Setting redirect") - } - s.Values[constants.SessionOAuthState] = newState - err := s.Save(r, rw) - if err != nil { - a.log.WithError(err).Warning("failed to save session") - } - http.Redirect(rw, r, a.oauthConfig.AuthCodeURL(newState), http.StatusFound) -} - -func (a *Application) handleAuthCallback(rw http.ResponseWriter, r *http.Request) { - s, err := a.sessions.Get(r, a.SessionName()) - if err != nil { - a.log.WithError(err).Trace("failed to get session") - } - state, ok := s.Values[constants.SessionOAuthState] - if !ok { - a.log.Warning("No state saved in session") - a.redirect(rw, r) - return - } - claims, err := a.redeemCallback(state.(string), r.URL, r.Context()) - if err != nil { - a.log.WithError(err).Warning("failed to redeem code") - rw.WriteHeader(400) - // To prevent the user from just refreshing and cause more errors, delete - // the state from the session - delete(s.Values, constants.SessionOAuthState) - err := s.Save(r, rw) - if err != nil { - a.log.WithError(err).Warning("failed to save session") - rw.WriteHeader(400) - return - } - return - } - s.Options.MaxAge = int(time.Until(time.Unix(int64(claims.Exp), 0)).Seconds()) - s.Values[constants.SessionClaims] = &claims err = s.Save(r, rw) if err != nil { a.log.WithError(err).Warning("failed to save session") - rw.WriteHeader(400) - return } - a.redirect(rw, r) + http.Redirect(rw, r, a.oauthConfig.AuthCodeURL(state), http.StatusFound) +} + +func (a *Application) redirectToStart(rw http.ResponseWriter, r *http.Request) { + s, err := a.sessions.Get(r, a.SessionName()) + if err != nil { + a.log.WithError(err).Warning("failed to decode session") + } + if r.Header.Get(constants.HeaderAuthorization) != "" && *a.proxyConfig.InterceptHeaderAuth { + rw.WriteHeader(401) + er := a.errorTemplates.Execute(rw, ErrorPageData{ + Title: "Unauthenticated", + Message: "Due to 'Receive header authentication' being set, no redirect is performed.", + ProxyPrefix: "/outpost.goauthentik.io", + }) + if er != nil { + http.Error(rw, "Internal Server Error", http.StatusInternalServerError) + } + } + + redirectUrl := urlJoin(a.proxyConfig.ExternalHost, r.URL.Path) + + if a.Mode() == api.PROXYMODE_FORWARD_DOMAIN { + dom := strings.TrimPrefix(*a.proxyConfig.CookieDomain, ".") + // In forward_domain we only check that the current URL's host + // ends with the cookie domain (remove the leading period if set) + if !strings.HasSuffix(r.URL.Hostname(), dom) { + a.log.WithField("url", r.URL.String()).WithField("cd", dom).Warning("Invalid redirect found") + redirectUrl = a.proxyConfig.ExternalHost + } + } + if _, redirectSet := s.Values[constants.SessionRedirect]; !redirectSet { + s.Values[constants.SessionRedirect] = redirectUrl + err = s.Save(r, rw) + if err != nil { + a.log.WithError(err).Warning("failed to save session before redirect") + } + } + + urlArgs := url.Values{ + redirectParam: []string{redirectUrl}, + } + authUrl := urlJoin(a.proxyConfig.ExternalHost, "/outpost.goauthentik.io/start") + http.Redirect(rw, r, authUrl+"?"+urlArgs.Encode(), http.StatusFound) } diff --git a/internal/outpost/proxyv2/application/oauth_callback.go b/internal/outpost/proxyv2/application/oauth_callback.go index 13f28e67a3..ac64626378 100644 --- a/internal/outpost/proxyv2/application/oauth_callback.go +++ b/internal/outpost/proxyv2/application/oauth_callback.go @@ -3,22 +3,43 @@ package application import ( "context" "fmt" + "net/http" "net/url" + "time" - log "github.com/sirupsen/logrus" + "goauthentik.io/internal/outpost/proxyv2/constants" "golang.org/x/oauth2" ) -func (a *Application) redeemCallback(savedState string, u *url.URL, c context.Context) (*Claims, error) { - state := u.Query().Get("state") - a.log.WithFields(log.Fields{ - "states": savedState, - "expected": state, - }).Trace("tracing states") - if savedState != state { - return nil, fmt.Errorf("invalid state") +func (a *Application) handleAuthCallback(rw http.ResponseWriter, r *http.Request) { + state := a.stateFromRequest(r) + if state == nil { + a.log.Warning("invalid state") + a.redirect(rw, r) + return } + claims, err := a.redeemCallback(r.URL, r.Context()) + if err != nil { + a.log.WithError(err).Warning("failed to redeem code") + a.redirect(rw, r) + return + } + s, err := a.sessions.Get(r, a.SessionName()) + if err != nil { + a.log.WithError(err).Trace("failed to get session") + } + s.Options.MaxAge = int(time.Until(time.Unix(int64(claims.Exp), 0)).Seconds()) + s.Values[constants.SessionClaims] = &claims + err = s.Save(r, rw) + if err != nil { + a.log.WithError(err).Warning("failed to save session") + rw.WriteHeader(400) + return + } + a.redirect(rw, r) +} +func (a *Application) redeemCallback(u *url.URL, c context.Context) (*Claims, error) { code := u.Query().Get("code") if code == "" { return nil, fmt.Errorf("blank code") diff --git a/internal/outpost/proxyv2/application/oauth_state.go b/internal/outpost/proxyv2/application/oauth_state.go new file mode 100644 index 0000000000..798e658396 --- /dev/null +++ b/internal/outpost/proxyv2/application/oauth_state.go @@ -0,0 +1,95 @@ +package application + +import ( + "encoding/base32" + "encoding/base64" + "fmt" + "net/http" + + "github.com/golang-jwt/jwt/v5" + "github.com/gorilla/securecookie" + "github.com/mitchellh/mapstructure" +) + +type OAuthState struct { + Issuer string `json:"iss" mapstructure:"iss"` + SessionID string `json:"sid" mapstructure:"sid"` + State string `json:"state" mapstructure:"state"` + Redirect string `json:"redirect" mapstructure:"redirect"` +} + +func (oas *OAuthState) GetExpirationTime() (*jwt.NumericDate, error) { return nil, nil } +func (oas *OAuthState) GetIssuedAt() (*jwt.NumericDate, error) { return nil, nil } +func (oas *OAuthState) GetNotBefore() (*jwt.NumericDate, error) { return nil, nil } +func (oas *OAuthState) GetIssuer() (string, error) { return oas.Issuer, nil } +func (oas *OAuthState) GetSubject() (string, error) { return oas.State, nil } +func (oas *OAuthState) GetAudience() (jwt.ClaimStrings, error) { return nil, nil } + +var base32RawStdEncoding = base32.StdEncoding.WithPadding(base32.NoPadding) + +func (a *Application) createState(r *http.Request, fwd string) (string, error) { + s, _ := a.sessions.Get(r, a.SessionName()) + if s.ID == "" { + // Ensure session has an ID + s.ID = base32RawStdEncoding.EncodeToString(securecookie.GenerateRandomKey(32)) + } + st := &OAuthState{ + Issuer: fmt.Sprintf("goauthentik.io/outpost/%s", a.proxyConfig.GetClientId()), + State: base64.RawURLEncoding.EncodeToString(securecookie.GenerateRandomKey(32)), + SessionID: s.ID, + Redirect: fwd, + } + if fwd == "" { + // This should only really be hit for nginx forward_auth + // as for that the auth start redirect URL is generated by the + // reverse proxy, and as such we won't have a request we just + // denied to reference for final URL + rd, ok := a.checkRedirectParam(r) + if ok { + a.log.WithField("rd", rd).Trace("Setting redirect") + st.Redirect = rd + } + } + token := jwt.NewWithClaims(jwt.SigningMethodHS256, st) + tokenString, err := token.SignedString([]byte(a.proxyConfig.GetCookieSecret())) + if err != nil { + return "", err + } + return tokenString, nil +} + +func (a *Application) stateFromRequest(r *http.Request) *OAuthState { + stateJwt := r.URL.Query().Get("state") + token, err := jwt.Parse(stateJwt, func(token *jwt.Token) (interface{}, error) { + // Don't forget to validate the alg is what you expect: + if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok { + return nil, fmt.Errorf("unexpected signing method: %v", token.Header["alg"]) + } + return []byte(a.proxyConfig.GetCookieSecret()), nil + }) + if err != nil { + a.log.WithError(err).Warning("failed to parse state jwt") + return nil + } + iss, err := token.Claims.GetIssuer() + if err != nil { + a.log.WithError(err).Warning("state jwt without issuer") + return nil + } + if iss != fmt.Sprintf("goauthentik.io/outpost/%s", a.proxyConfig.GetClientId()) { + a.log.WithField("issuer", iss).Warning("invalid state jwt issuer") + return nil + } + claims := &OAuthState{} + err = mapstructure.Decode(token.Claims, &claims) + if err != nil { + a.log.WithError(err).Warning("failed to mapdecode") + return nil + } + s, _ := a.sessions.Get(r, a.SessionName()) + if claims.SessionID != s.ID { + a.log.WithField("is", claims.SessionID).WithField("should", s.ID).Warning("mismatched session ID") + return nil + } + return claims +} diff --git a/internal/outpost/proxyv2/application/test.go b/internal/outpost/proxyv2/application/test.go index 827bf79703..f7970776c4 100644 --- a/internal/outpost/proxyv2/application/test.go +++ b/internal/outpost/proxyv2/application/test.go @@ -2,6 +2,9 @@ package application import ( "net/http" + "net/http/httptest" + "net/url" + "testing" "goauthentik.io/api/v3" "goauthentik.io/internal/outpost/ak" @@ -45,11 +48,11 @@ func newTestApplication() *Application { Name: ak.TestSecret(), ClientId: api.PtrString(ak.TestSecret()), ClientSecret: api.PtrString(ak.TestSecret()), + CookieDomain: api.PtrString(""), CookieSecret: api.PtrString(ak.TestSecret()), ExternalHost: "https://ext.t.goauthentik.io", InternalHost: api.PtrString("http://backend"), InternalHostSslValidation: api.PtrBool(true), - CookieDomain: api.PtrString(""), Mode: api.PROXYMODE_FORWARD_SINGLE.Ptr(), SkipPathRegex: api.PtrString("/skip.*"), BasicAuthEnabled: api.PtrBool(true), @@ -67,3 +70,25 @@ func newTestApplication() *Application { ts.apps = append(ts.apps, a) return a } + +func (a *Application) assertState(t *testing.T, req *http.Request, response *httptest.ResponseRecorder) (*url.URL, *OAuthState) { + loc, _ := response.Result().Location() + q := loc.Query() + state := q.Get("state") + a.log.WithField("actual", state).Warning("actual state") + // modify request to set state so we can parse it + nr := req.Clone(req.Context()) + nrq := nr.URL.Query() + nrq.Set("state", state) + nr.URL.RawQuery = nrq.Encode() + // parse state + parsed := a.stateFromRequest(nr) + if parsed == nil { + panic("Could not parse state") + } + + // Remove state from URL + q.Del("state") + loc.RawQuery = q.Encode() + return loc, parsed +} diff --git a/internal/outpost/proxyv2/application/utils.go b/internal/outpost/proxyv2/application/utils.go index f8a2d6575f..248d7ddf09 100644 --- a/internal/outpost/proxyv2/application/utils.go +++ b/internal/outpost/proxyv2/application/utils.go @@ -4,10 +4,6 @@ import ( "net/http" "net/url" "strconv" - "strings" - - "goauthentik.io/api/v3" - "goauthentik.io/internal/outpost/proxyv2/constants" ) func urlJoin(originalUrl string, newPath string) string { @@ -18,62 +14,18 @@ func urlJoin(originalUrl string, newPath string) string { return u } -func (a *Application) redirectToStart(rw http.ResponseWriter, r *http.Request) { - s, err := a.sessions.Get(r, a.SessionName()) - if err != nil { - a.log.WithError(err).Warning("failed to decode session") - } - if r.Header.Get(constants.HeaderAuthorization) != "" && *a.proxyConfig.InterceptHeaderAuth { - rw.WriteHeader(401) - er := a.errorTemplates.Execute(rw, ErrorPageData{ - Title: "Unauthenticated", - Message: "Due to 'Receive header authentication' being set, no redirect is performed.", - ProxyPrefix: "/outpost.goauthentik.io", - }) - if er != nil { - http.Error(rw, "Internal Server Error", http.StatusInternalServerError) - } - } - - redirectUrl := urlJoin(a.proxyConfig.ExternalHost, r.URL.Path) - - if a.Mode() == api.PROXYMODE_FORWARD_DOMAIN { - dom := strings.TrimPrefix(*a.proxyConfig.CookieDomain, ".") - // In forward_domain we only check that the current URL's host - // ends with the cookie domain (remove the leading period if set) - if !strings.HasSuffix(r.URL.Hostname(), dom) { - a.log.WithField("url", r.URL.String()).WithField("cd", dom).Warning("Invalid redirect found") - redirectUrl = a.proxyConfig.ExternalHost - } - } - if _, redirectSet := s.Values[constants.SessionRedirect]; !redirectSet { - s.Values[constants.SessionRedirect] = redirectUrl - err = s.Save(r, rw) - if err != nil { - a.log.WithError(err).Warning("failed to save session before redirect") - } - } - - urlArgs := url.Values{ - redirectParam: []string{redirectUrl}, - } - authUrl := urlJoin(a.proxyConfig.ExternalHost, "/outpost.goauthentik.io/start") - http.Redirect(rw, r, authUrl+"?"+urlArgs.Encode(), http.StatusFound) -} - func (a *Application) redirect(rw http.ResponseWriter, r *http.Request) { - redirect := a.proxyConfig.ExternalHost - s, _ := a.sessions.Get(r, a.SessionName()) - redirectR, ok := s.Values[constants.SessionRedirect] - if ok { - redirect = redirectR.(string) + fallbackRedirect := a.proxyConfig.ExternalHost + state := a.stateFromRequest(r) + if state == nil { + rw.WriteHeader(http.StatusBadRequest) + return } - rd, ok := a.checkRedirectParam(r) - if ok { - redirect = rd + if state.Redirect == "" { + state.Redirect = fallbackRedirect } - a.log.WithField("redirect", redirect).Trace("final redirect") - http.Redirect(rw, r, redirect, http.StatusFound) + a.log.WithField("redirect", state.Redirect).Trace("final redirect") + http.Redirect(rw, r, state.Redirect, http.StatusFound) } // toString Generic to string function, currently supports actual strings and integers diff --git a/internal/outpost/proxyv2/hs256/hs256.go b/internal/outpost/proxyv2/hs256/hs256.go index 3df8c73e82..29ace0995d 100644 --- a/internal/outpost/proxyv2/hs256/hs256.go +++ b/internal/outpost/proxyv2/hs256/hs256.go @@ -3,9 +3,10 @@ package hs256 import ( "context" "encoding/base64" + "fmt" "strings" - "github.com/golang-jwt/jwt" + "github.com/golang-jwt/jwt/v5" ) type KeySet struct { @@ -15,17 +16,23 @@ type KeySet struct { func NewKeySet(secret string) *KeySet { return &KeySet{ - m: jwt.GetSigningMethod("HS256"), + m: jwt.SigningMethodHS256, secret: secret, } } -func (ks *KeySet) VerifySignature(ctx context.Context, jwt string) ([]byte, error) { - parts := strings.Split(jwt, ".") - err := ks.m.Verify(strings.Join(parts[0:2], "."), parts[2], []byte(ks.secret)) +func (ks *KeySet) VerifySignature(ctx context.Context, rawJWT string) ([]byte, error) { + _, err := jwt.Parse(rawJWT, func(token *jwt.Token) (interface{}, error) { + // Don't forget to validate the alg is what you expect: + if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok { + return nil, fmt.Errorf("unexpected signing method: %v", token.Header["alg"]) + } + return []byte(ks.secret), nil + }) if err != nil { return nil, err } + parts := strings.Split(rawJWT, ".") payload, err := base64.RawURLEncoding.DecodeString(parts[1]) return payload, err } diff --git a/schema.yml b/schema.yml index a78de9ceed..f90d8ce4ef 100644 --- a/schema.yml +++ b/schema.yml @@ -44167,6 +44167,12 @@ components: type: array items: $ref: '#/components/schemas/LogEvent' + expires: + type: string + format: date-time + nullable: true + expiring: + type: boolean required: - description - duration diff --git a/web/src/admin/system-tasks/SystemTaskListPage.ts b/web/src/admin/system-tasks/SystemTaskListPage.ts index e05a59c249..9947bc0d7c 100644 --- a/web/src/admin/system-tasks/SystemTaskListPage.ts +++ b/web/src/admin/system-tasks/SystemTaskListPage.ts @@ -90,6 +90,27 @@ export class SystemTaskListPage extends TablePage {
+
+
+ ${msg("Expiry")} +
+
+
+ ${item.expiring + ? html` + + ${getRelativeTime(item.expires || new Date())} + + ` + : msg("-")} +
+
+
${msg("Messages")} From dcfa3dc88abf288236904a530462c7b8f353694c Mon Sep 17 00:00:00 2001 From: "authentik-automation[bot]" <135050075+authentik-automation[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 03:10:39 +0200 Subject: [PATCH 09/42] web: bump API Client version (#9585) Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: authentik-automation[bot] <135050075+authentik-automation[bot]@users.noreply.github.com> --- web/package-lock.json | 8 ++++---- web/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/web/package-lock.json b/web/package-lock.json index 4b0c237f96..1ad351b935 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -17,7 +17,7 @@ "@codemirror/theme-one-dark": "^6.1.2", "@formatjs/intl-listformat": "^7.5.5", "@fortawesome/fontawesome-free": "^6.5.2", - "@goauthentik/api": "^2024.4.1-1714655911", + "@goauthentik/api": "^2024.4.1-1714957644", "@lit-labs/task": "^3.1.0", "@lit/context": "^1.1.1", "@lit/localize": "^0.12.1", @@ -2663,9 +2663,9 @@ } }, "node_modules/@goauthentik/api": { - "version": "2024.4.1-1714655911", - "resolved": "https://registry.npmjs.org/@goauthentik/api/-/api-2024.4.1-1714655911.tgz", - "integrity": "sha512-x7ViXuDh928e7B4dbQlOJXCtFnWJGGmOQcGI4IG6eWafUcq9+jgDnFrd0qqkDGcipqjKiY52B4RSdRNRxRsucA==" + "version": "2024.4.1-1714957644", + "resolved": "https://registry.npmjs.org/@goauthentik/api/-/api-2024.4.1-1714957644.tgz", + "integrity": "sha512-jDkJgqmGjGSLYKC5iQuVyhTM88oYpe2W778xzb7SmmkoiWowbzHDNiaVJxOqjXx9kjyguBQOATeWb0QYZAyaLw==" }, "node_modules/@hcaptcha/types": { "version": "1.0.3", diff --git a/web/package.json b/web/package.json index 84898a33ef..0445af7a4c 100644 --- a/web/package.json +++ b/web/package.json @@ -38,7 +38,7 @@ "@codemirror/theme-one-dark": "^6.1.2", "@formatjs/intl-listformat": "^7.5.5", "@fortawesome/fontawesome-free": "^6.5.2", - "@goauthentik/api": "^2024.4.1-1714655911", + "@goauthentik/api": "^2024.4.1-1714957644", "@lit-labs/task": "^3.1.0", "@lit/context": "^1.1.1", "@lit/localize": "^0.12.1", From 06d1062423020a4775e8bbb301ad42215f7674e3 Mon Sep 17 00:00:00 2001 From: Jens L Date: Mon, 6 May 2024 03:16:30 +0200 Subject: [PATCH 10/42] tenants: fix scheduled tasks not running on default tenant (#9583) * tenants: fix scheduled tasks not running on default tenant Signed-off-by: Jens Langhammer * add some extra time to keep system task around Signed-off-by: Jens Langhammer * make sure we actually send it to all tenants Signed-off-by: Jens Langhammer --------- Signed-off-by: Jens Langhammer --- authentik/events/system_tasks.py | 2 +- authentik/lib/default.yml | 1 + authentik/root/settings.py | 8 +++++++- authentik/tenants/scheduler.py | 9 +++++++++ 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/authentik/events/system_tasks.py b/authentik/events/system_tasks.py index fe1696c2d7..e6aecb5c4c 100644 --- a/authentik/events/system_tasks.py +++ b/authentik/events/system_tasks.py @@ -119,7 +119,7 @@ class SystemTask(TenantTask): "task_call_kwargs": sanitize_item(kwargs), "status": self._status, "messages": sanitize_item(self._messages), - "expires": now() + timedelta(hours=self.result_timeout_hours), + "expires": now() + timedelta(hours=self.result_timeout_hours + 3), "expiring": True, }, ) diff --git a/authentik/lib/default.yml b/authentik/lib/default.yml index 61f74e78c3..c2b2a72163 100644 --- a/authentik/lib/default.yml +++ b/authentik/lib/default.yml @@ -53,6 +53,7 @@ cache: # result_backend: # url: "" +# transport_options: "" debug: false remote_debug: false diff --git a/authentik/root/settings.py b/authentik/root/settings.py index 00f959a766..b165961dee 100644 --- a/authentik/root/settings.py +++ b/authentik/root/settings.py @@ -376,7 +376,13 @@ CELERY = { "task_default_queue": "authentik", "broker_url": CONFIG.get("broker.url") or redis_url(CONFIG.get("redis.db")), "result_backend": CONFIG.get("result_backend.url") or redis_url(CONFIG.get("redis.db")), - "broker_transport_options": CONFIG.get_dict_from_b64_json("broker.transport_options"), + "broker_transport_options": CONFIG.get_dict_from_b64_json( + "broker.transport_options", {"retry_policy": {"timeout": 5.0}} + ), + "result_backend_transport_options": CONFIG.get_dict_from_b64_json( + "result_backend.transport_options", {"retry_policy": {"timeout": 5.0}} + ), + "redis_retry_on_timeout": True, } # Sentry integration diff --git a/authentik/tenants/scheduler.py b/authentik/tenants/scheduler.py index 56fb1d80ab..753831ae0b 100644 --- a/authentik/tenants/scheduler.py +++ b/authentik/tenants/scheduler.py @@ -3,6 +3,7 @@ from tenant_schemas_celery.scheduler import ( TenantAwarePersistentScheduler as BaseTenantAwarePersistentScheduler, ) +from tenant_schemas_celery.scheduler import TenantAwareScheduleEntry class TenantAwarePersistentScheduler(BaseTenantAwarePersistentScheduler): @@ -11,3 +12,11 @@ class TenantAwarePersistentScheduler(BaseTenantAwarePersistentScheduler): @classmethod def get_queryset(cls): return super().get_queryset().filter(ready=True) + + def apply_entry(self, entry: TenantAwareScheduleEntry, producer=None): + # https://github.com/maciej-gol/tenant-schemas-celery/blob/master/tenant_schemas_celery/scheduler.py#L85 + # When (as by default) no tenant schemas are set, the public schema is excluded + # so we need to explicitly include it here, otherwise the task is not executed + if entry.tenant_schemas is None: + entry.tenant_schemas = self.get_queryset().values_list("schema_name", flat=True) + return super().apply_entry(entry, producer) From 0a312821ee4177a9c97dd1ce18299f8156b53207 Mon Sep 17 00:00:00 2001 From: Jens L Date: Mon, 6 May 2024 12:30:43 +0200 Subject: [PATCH 11/42] website/docs: fix api browser references (#9577) * website/docs: fix api browser references Signed-off-by: Jens Langhammer * don't attempt to correct generated docs Signed-off-by: Jens Langhammer * fix? Signed-off-by: Jens Langhammer --------- Signed-off-by: Jens Langhammer --- Makefile | 1 + website/developer-docs/api/flow-executor.md | 2 +- website/docs/advanced/tenancy.md | 2 +- website/integrations/services/nextcloud/index.md | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index f7f4c3d785..438992e41d 100644 --- a/Makefile +++ b/Makefile @@ -19,6 +19,7 @@ pg_name := $(shell python -m authentik.lib.config postgresql.name 2>/dev/null) CODESPELL_ARGS = -D - -D .github/codespell-dictionary.txt \ -I .github/codespell-words.txt \ -S 'web/src/locales/**' \ + -S 'website/developer-docs/api/reference/**' \ authentik \ internal \ cmd \ diff --git a/website/developer-docs/api/flow-executor.md b/website/developer-docs/api/flow-executor.md index 7be271c855..9006f8e89e 100644 --- a/website/developer-docs/api/flow-executor.md +++ b/website/developer-docs/api/flow-executor.md @@ -60,7 +60,7 @@ Depending on the flow, you'll either get a 200 Response with another challenge, Depending also on the stage, a response might take longer to be returned (especially with the Duo Authenticator validation). -To see the data layout for every stage possible, see the [API Browser](https://goauthentik.io/api/#get-/api/v3/flows/executor/-flow_slug-/) +To see the data layout for every stage possible, see the [API Browser](./reference/flows-executor-get) ## Result diff --git a/website/docs/advanced/tenancy.md b/website/docs/advanced/tenancy.md index e5a57bdfeb..de8ba6deac 100644 --- a/website/docs/advanced/tenancy.md +++ b/website/docs/advanced/tenancy.md @@ -58,7 +58,7 @@ Be sure to disable the embedded outpost with `AUTHENTIK_OUTPOSTS__DISABLE_EMBEDD ### 2. Create a new tenant with authentik API endpoints -Tenants are created using the API routes associated. Search for `tenant` in the [API browser](../../developer-docs/api/) for the available endpoints. +Tenants are created using the API routes associated. Search for `tenant` in the [API browser](/developer-docs/api/reference/authentik) for the available endpoints. When creating a tenant you must specify a `name`, used for display purposes, and a `schema_name`, used to create the PostgreSQL schema associated with the tenant. diff --git a/website/integrations/services/nextcloud/index.md b/website/integrations/services/nextcloud/index.md index a3437ddf36..43ad940a1f 100644 --- a/website/integrations/services/nextcloud/index.md +++ b/website/integrations/services/nextcloud/index.md @@ -77,7 +77,7 @@ return { "quota": user.group_attributes().get("nextcloud_quota", None), # To connect an already existing user, set the "nextcloud_user_id" property in the # user's attributes to the username of the corresponding user on Nextcloud. - "user_id": user.attributes.get("nextcloud_user_id", user.uuid), + "user_id": user.attributes.get("nextcloud_user_id", str(user.uuid)), } ``` From 09c64e23546687c9372f21a390f4b6c6723f76a8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:33:13 +0200 Subject: [PATCH 12/42] core: bump ruff from 0.4.2 to 0.4.3 (#9597) Bumps [ruff](https://github.com/astral-sh/ruff) from 0.4.2 to 0.4.3. - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](https://github.com/astral-sh/ruff/compare/v0.4.2...v0.4.3) --- updated-dependencies: - dependency-name: ruff dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- poetry.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/poetry.lock b/poetry.lock index b78bec2c5b..053ef76c1d 100644 --- a/poetry.lock +++ b/poetry.lock @@ -3390,28 +3390,28 @@ pyasn1 = ">=0.1.3" [[package]] name = "ruff" -version = "0.4.2" +version = "0.4.3" description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" files = [ - {file = "ruff-0.4.2-py3-none-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:8d14dc8953f8af7e003a485ef560bbefa5f8cc1ad994eebb5b12136049bbccc5"}, - {file = "ruff-0.4.2-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:24016ed18db3dc9786af103ff49c03bdf408ea253f3cb9e3638f39ac9cf2d483"}, - {file = "ruff-0.4.2-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e2e06459042ac841ed510196c350ba35a9b24a643e23db60d79b2db92af0c2b"}, - {file = "ruff-0.4.2-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3afabaf7ba8e9c485a14ad8f4122feff6b2b93cc53cd4dad2fd24ae35112d5c5"}, - {file = "ruff-0.4.2-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:799eb468ea6bc54b95527143a4ceaf970d5aa3613050c6cff54c85fda3fde480"}, - {file = "ruff-0.4.2-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:ec4ba9436a51527fb6931a8839af4c36a5481f8c19e8f5e42c2f7ad3a49f5069"}, - {file = "ruff-0.4.2-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6a2243f8f434e487c2a010c7252150b1fdf019035130f41b77626f5655c9ca22"}, - {file = "ruff-0.4.2-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8772130a063f3eebdf7095da00c0b9898bd1774c43b336272c3e98667d4fb8fa"}, - {file = "ruff-0.4.2-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6ab165ef5d72392b4ebb85a8b0fbd321f69832a632e07a74794c0e598e7a8376"}, - {file = "ruff-0.4.2-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:1f32cadf44c2020e75e0c56c3408ed1d32c024766bd41aedef92aa3ca28eef68"}, - {file = "ruff-0.4.2-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:22e306bf15e09af45ca812bc42fa59b628646fa7c26072555f278994890bc7ac"}, - {file = "ruff-0.4.2-py3-none-musllinux_1_2_i686.whl", hash = "sha256:82986bb77ad83a1719c90b9528a9dd663c9206f7c0ab69282af8223566a0c34e"}, - {file = "ruff-0.4.2-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:652e4ba553e421a6dc2a6d4868bc3b3881311702633eb3672f9f244ded8908cd"}, - {file = "ruff-0.4.2-py3-none-win32.whl", hash = "sha256:7891ee376770ac094da3ad40c116258a381b86c7352552788377c6eb16d784fe"}, - {file = "ruff-0.4.2-py3-none-win_amd64.whl", hash = "sha256:5ec481661fb2fd88a5d6cf1f83403d388ec90f9daaa36e40e2c003de66751798"}, - {file = "ruff-0.4.2-py3-none-win_arm64.whl", hash = "sha256:cbd1e87c71bca14792948c4ccb51ee61c3296e164019d2d484f3eaa2d360dfaf"}, - {file = "ruff-0.4.2.tar.gz", hash = "sha256:33bcc160aee2520664bc0859cfeaebc84bb7323becff3f303b8f1f2d81cb4edc"}, + {file = "ruff-0.4.3-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:b70800c290f14ae6fcbb41bbe201cf62dfca024d124a1f373e76371a007454ce"}, + {file = "ruff-0.4.3-py3-none-macosx_11_0_arm64.whl", hash = "sha256:08a0d6a22918ab2552ace96adeaca308833873a4d7d1d587bb1d37bae8728eb3"}, + {file = "ruff-0.4.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eba1f14df3c758dd7de5b55fbae7e1c8af238597961e5fb628f3de446c3c40c5"}, + {file = "ruff-0.4.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:819fb06d535cc76dfddbfe8d3068ff602ddeb40e3eacbc90e0d1272bb8d97113"}, + {file = "ruff-0.4.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0bfc9e955e6dc6359eb6f82ea150c4f4e82b660e5b58d9a20a0e42ec3bb6342b"}, + {file = "ruff-0.4.3-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:510a67d232d2ebe983fddea324dbf9d69b71c4d2dfeb8a862f4a127536dd4cfb"}, + {file = "ruff-0.4.3-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc9ff11cd9a092ee7680a56d21f302bdda14327772cd870d806610a3503d001f"}, + {file = "ruff-0.4.3-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:29efff25bf9ee685c2c8390563a5b5c006a3fee5230d28ea39f4f75f9d0b6f2f"}, + {file = "ruff-0.4.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:18b00e0bcccf0fc8d7186ed21e311dffd19761cb632241a6e4fe4477cc80ef6e"}, + {file = "ruff-0.4.3-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:262f5635e2c74d80b7507fbc2fac28fe0d4fef26373bbc62039526f7722bca1b"}, + {file = "ruff-0.4.3-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:7363691198719c26459e08cc17c6a3dac6f592e9ea3d2fa772f4e561b5fe82a3"}, + {file = "ruff-0.4.3-py3-none-musllinux_1_2_i686.whl", hash = "sha256:eeb039f8428fcb6725bb63cbae92ad67b0559e68b5d80f840f11914afd8ddf7f"}, + {file = "ruff-0.4.3-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:927b11c1e4d0727ce1a729eace61cee88a334623ec424c0b1c8fe3e5f9d3c865"}, + {file = "ruff-0.4.3-py3-none-win32.whl", hash = "sha256:25cacda2155778beb0d064e0ec5a3944dcca9c12715f7c4634fd9d93ac33fd30"}, + {file = "ruff-0.4.3-py3-none-win_amd64.whl", hash = "sha256:7a1c3a450bc6539ef00da6c819fb1b76b6b065dec585f91456e7c0d6a0bbc725"}, + {file = "ruff-0.4.3-py3-none-win_arm64.whl", hash = "sha256:71ca5f8ccf1121b95a59649482470c5601c60a416bf189d553955b0338e34614"}, + {file = "ruff-0.4.3.tar.gz", hash = "sha256:ff0a3ef2e3c4b6d133fbedcf9586abfbe38d076041f2dc18ffb2c7e0485d5a07"}, ] [[package]] From 6c1687c569b45353e3ef589e81f444b4f26b4bd6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:33:26 +0200 Subject: [PATCH 13/42] core: bump cryptography from 42.0.5 to 42.0.6 (#9596) Bumps [cryptography](https://github.com/pyca/cryptography) from 42.0.5 to 42.0.6. - [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pyca/cryptography/compare/42.0.5...42.0.6) --- updated-dependencies: - dependency-name: cryptography dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- poetry.lock | 66 ++++++++++++++++++++++++++--------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/poetry.lock b/poetry.lock index 053ef76c1d..602eaf9471 100644 --- a/poetry.lock +++ b/poetry.lock @@ -984,43 +984,43 @@ toml = ["tomli"] [[package]] name = "cryptography" -version = "42.0.5" +version = "42.0.6" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false python-versions = ">=3.7" files = [ - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:a30596bae9403a342c978fb47d9b0ee277699fa53bbafad14706af51fe543d16"}, - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:b7ffe927ee6531c78f81aa17e684e2ff617daeba7f189f911065b2ea2d526dec"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2424ff4c4ac7f6b8177b53c17ed5d8fa74ae5955656867f5a8affaca36a27abb"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:329906dcc7b20ff3cad13c069a78124ed8247adcac44b10bea1130e36caae0b4"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:b03c2ae5d2f0fc05f9a2c0c997e1bc18c8229f392234e8a0194f202169ccd278"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f8837fe1d6ac4a8052a9a8ddab256bc006242696f03368a4009be7ee3075cdb7"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:0270572b8bd2c833c3981724b8ee9747b3ec96f699a9665470018594301439ee"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:b8cac287fafc4ad485b8a9b67d0ee80c66bf3574f655d3b97ef2e1082360faf1"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:16a48c23a62a2f4a285699dba2e4ff2d1cff3115b9df052cdd976a18856d8e3d"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:2bce03af1ce5a5567ab89bd90d11e7bbdff56b8af3acbbec1faded8f44cb06da"}, - {file = "cryptography-42.0.5-cp37-abi3-win32.whl", hash = "sha256:b6cd2203306b63e41acdf39aa93b86fb566049aeb6dc489b70e34bcd07adca74"}, - {file = "cryptography-42.0.5-cp37-abi3-win_amd64.whl", hash = "sha256:98d8dc6d012b82287f2c3d26ce1d2dd130ec200c8679b6213b3c73c08b2b7940"}, - {file = "cryptography-42.0.5-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:5e6275c09d2badf57aea3afa80d975444f4be8d3bc58f7f80d2a484c6f9485c8"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4985a790f921508f36f81831817cbc03b102d643b5fcb81cd33df3fa291a1a1"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cde5f38e614f55e28d831754e8a3bacf9ace5d1566235e39d91b35502d6936e"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:7367d7b2eca6513681127ebad53b2582911d1736dc2ffc19f2c3ae49997496bc"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cd2030f6650c089aeb304cf093f3244d34745ce0cfcc39f20c6fbfe030102e2a"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a2913c5375154b6ef2e91c10b5720ea6e21007412f6437504ffea2109b5a33d7"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:c41fb5e6a5fe9ebcd58ca3abfeb51dffb5d83d6775405305bfa8715b76521922"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:3eaafe47ec0d0ffcc9349e1708be2aaea4c6dd4978d76bf6eb0cb2c13636c6fc"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1b95b98b0d2af784078fa69f637135e3c317091b615cd0905f8b8a087e86fa30"}, - {file = "cryptography-42.0.5-cp39-abi3-win32.whl", hash = "sha256:1f71c10d1e88467126f0efd484bd44bca5e14c664ec2ede64c32f20875c0d413"}, - {file = "cryptography-42.0.5-cp39-abi3-win_amd64.whl", hash = "sha256:a011a644f6d7d03736214d38832e030d8268bcff4a41f728e6030325fea3e400"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:9481ffe3cf013b71b2428b905c4f7a9a4f76ec03065b05ff499bb5682a8d9ad8"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:ba334e6e4b1d92442b75ddacc615c5476d4ad55cc29b15d590cc6b86efa487e2"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:ba3e4a42397c25b7ff88cdec6e2a16c2be18720f317506ee25210f6d31925f9c"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:111a0d8553afcf8eb02a4fea6ca4f59d48ddb34497aa8706a6cf536f1a5ec576"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:cd65d75953847815962c84a4654a84850b2bb4aed3f26fadcc1c13892e1e29f6"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:e807b3188f9eb0eaa7bbb579b462c5ace579f1cedb28107ce8b48a9f7ad3679e"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f12764b8fffc7a123f641d7d049d382b73f96a34117e0b637b80643169cec8ac"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:37dd623507659e08be98eec89323469e8c7b4c1407c85112634ae3dbdb926fdd"}, - {file = "cryptography-42.0.5.tar.gz", hash = "sha256:6fe07eec95dfd477eb9530aef5bead34fec819b3aaf6c5bd6d20565da607bfe1"}, + {file = "cryptography-42.0.6-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:073104df012fc815eed976cd7d0a386c8725d0d0947cf9c37f6c36a6c20feb1b"}, + {file = "cryptography-42.0.6-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:5967e3632f42b0c0f9dc2c9da88c79eabdda317860b246d1fbbde4a8bbbc3b44"}, + {file = "cryptography-42.0.6-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b99831397fdc6e6e0aa088b060c278c6e635d25c0d4d14bdf045bf81792fda0a"}, + {file = "cryptography-42.0.6-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:089aeb297ff89615934b22c7631448598495ffd775b7d540a55cfee35a677bf4"}, + {file = "cryptography-42.0.6-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:97eeacae9aa526ddafe68b9202a535f581e21d78f16688a84c8dcc063618e121"}, + {file = "cryptography-42.0.6-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f4cece02478d73dacd52be57a521d168af64ae03d2a567c0c4eb6f189c3b9d79"}, + {file = "cryptography-42.0.6-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:aeb6f56b004e898df5530fa873e598ec78eb338ba35f6fa1449970800b1d97c2"}, + {file = "cryptography-42.0.6-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:8b90c57b3cd6128e0863b894ce77bd36fcb5f430bf2377bc3678c2f56e232316"}, + {file = "cryptography-42.0.6-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:d16a310c770cc49908c500c2ceb011f2840674101a587d39fa3ea828915b7e83"}, + {file = "cryptography-42.0.6-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:e3442601d276bd9e961d618b799761b4e5d892f938e8a4fe1efbe2752be90455"}, + {file = "cryptography-42.0.6-cp37-abi3-win32.whl", hash = "sha256:00c0faa5b021457848d031ecff041262211cc1e2bce5f6e6e6c8108018f6b44a"}, + {file = "cryptography-42.0.6-cp37-abi3-win_amd64.whl", hash = "sha256:b16b90605c62bcb3aa7755d62cf5e746828cfc3f965a65211849e00c46f8348d"}, + {file = "cryptography-42.0.6-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:eecca86813c6a923cabff284b82ff4d73d9e91241dc176250192c3a9b9902a54"}, + {file = "cryptography-42.0.6-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d93080d2b01b292e7ee4d247bf93ed802b0100f5baa3fa5fd6d374716fa480d4"}, + {file = "cryptography-42.0.6-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ff75b88a4d273c06d968ad535e6cb6a039dd32db54fe36f05ed62ac3ef64a44"}, + {file = "cryptography-42.0.6-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:c05230d8aaaa6b8ab3ab41394dc06eb3d916131df1c9dcb4c94e8f041f704b74"}, + {file = "cryptography-42.0.6-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:9184aff0856261ecb566a3eb26a05dfe13a292c85ce5c59b04e4aa09e5814187"}, + {file = "cryptography-42.0.6-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:4bdb39ecbf05626e4bfa1efd773bb10346af297af14fb3f4c7cb91a1d2f34a46"}, + {file = "cryptography-42.0.6-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:e85f433230add2aa26b66d018e21134000067d210c9c68ef7544ba65fc52e3eb"}, + {file = "cryptography-42.0.6-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:65d529c31bd65d54ce6b926a01e1b66eacf770b7e87c0622516a840e400ec732"}, + {file = "cryptography-42.0.6-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:f1e933b238978ccfa77b1fee0a297b3c04983f4cb84ae1c33b0ea4ae08266cc9"}, + {file = "cryptography-42.0.6-cp39-abi3-win32.whl", hash = "sha256:bc954251edcd8a952eeaec8ae989fec7fe48109ab343138d537b7ea5bb41071a"}, + {file = "cryptography-42.0.6-cp39-abi3-win_amd64.whl", hash = "sha256:9f1a3bc2747166b0643b00e0b56cd9b661afc9d5ff963acaac7a9c7b2b1ef638"}, + {file = "cryptography-42.0.6-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:945a43ebf036dd4b43ebfbbd6b0f2db29ad3d39df824fb77476ca5777a9dde33"}, + {file = "cryptography-42.0.6-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:f567a82b7c2b99257cca2a1c902c1b129787278ff67148f188784245c7ed5495"}, + {file = "cryptography-42.0.6-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3b750279f3e7715df6f68050707a0cee7cbe81ba2eeb2f21d081bd205885ffed"}, + {file = "cryptography-42.0.6-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:6981acac509cc9415344cb5bfea8130096ea6ebcc917e75503143a1e9e829160"}, + {file = "cryptography-42.0.6-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:076c92b08dd1ab88108bc84545187e10d3693a9299c593f98c4ea195a0b0ead7"}, + {file = "cryptography-42.0.6-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:81dbe47e28b703bc4711ac74a64ef8b758a0cf056ce81d08e39116ab4bc126fa"}, + {file = "cryptography-42.0.6-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e1f5f15c5ddadf6ee4d1d624a2ae940f14bd74536230b0056ccb28bb6248e42a"}, + {file = "cryptography-42.0.6-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:43e521f21c2458038d72e8cdfd4d4d9f1d00906a7b6636c4272e35f650d1699b"}, + {file = "cryptography-42.0.6.tar.gz", hash = "sha256:f987a244dfb0333fbd74a691c36000a2569eaf7c7cc2ac838f85f59f0588ddc9"}, ] [package.dependencies] From 6e831a42534aab94c700cd7b935abb72f3f438e5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:35:36 +0200 Subject: [PATCH 14/42] core: bump django-storages from 1.14.2 to 1.14.3 (#9595) Bumps [django-storages](https://github.com/jschneier/django-storages) from 1.14.2 to 1.14.3. - [Changelog](https://github.com/jschneier/django-storages/blob/master/CHANGELOG.rst) - [Commits](https://github.com/jschneier/django-storages/compare/1.14.2...1.14.3) --- updated-dependencies: - dependency-name: django-storages dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- poetry.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/poetry.lock b/poetry.lock index 602eaf9471..b7de161a25 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1217,13 +1217,13 @@ hiredis = ["redis[hiredis] (>=3,!=4.0.0,!=4.0.1)"] [[package]] name = "django-storages" -version = "1.14.2" +version = "1.14.3" description = "Support for many storage backends in Django" optional = false python-versions = ">=3.7" files = [ - {file = "django-storages-1.14.2.tar.gz", hash = "sha256:51b36af28cc5813b98d5f3dfe7459af638d84428c8df4a03990c7d74d1bea4e5"}, - {file = "django_storages-1.14.2-py3-none-any.whl", hash = "sha256:1db759346b52ada6c2efd9f23d8241ecf518813eb31db9e2589207174f58f6ad"}, + {file = "django-storages-1.14.3.tar.gz", hash = "sha256:95a12836cd998d4c7a4512347322331c662d9114c4344f932f5e9c0fce000608"}, + {file = "django_storages-1.14.3-py3-none-any.whl", hash = "sha256:31f263389e95ce3a1b902fb5f739a7ed32895f7d8b80179fe7453ecc0dfe102e"}, ] [package.dependencies] From f335b08ec2d92d9d28514714078abe7e4df94add Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:36:03 +0200 Subject: [PATCH 15/42] core: bump coverage from 7.5.0 to 7.5.1 (#9594) Bumps [coverage](https://github.com/nedbat/coveragepy) from 7.5.0 to 7.5.1. - [Release notes](https://github.com/nedbat/coveragepy/releases) - [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst) - [Commits](https://github.com/nedbat/coveragepy/compare/7.5.0...7.5.1) --- updated-dependencies: - dependency-name: coverage dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- poetry.lock | 106 ++++++++++++++++++++++++++-------------------------- 1 file changed, 53 insertions(+), 53 deletions(-) diff --git a/poetry.lock b/poetry.lock index b7de161a25..7a6beaa38e 100644 --- a/poetry.lock +++ b/poetry.lock @@ -920,63 +920,63 @@ files = [ [[package]] name = "coverage" -version = "7.5.0" +version = "7.5.1" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.8" files = [ - {file = "coverage-7.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:432949a32c3e3f820af808db1833d6d1631664d53dd3ce487aa25d574e18ad1c"}, - {file = "coverage-7.5.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2bd7065249703cbeb6d4ce679c734bef0ee69baa7bff9724361ada04a15b7e3b"}, - {file = "coverage-7.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bbfe6389c5522b99768a93d89aca52ef92310a96b99782973b9d11e80511f932"}, - {file = "coverage-7.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:39793731182c4be939b4be0cdecde074b833f6171313cf53481f869937129ed3"}, - {file = "coverage-7.5.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:85a5dbe1ba1bf38d6c63b6d2c42132d45cbee6d9f0c51b52c59aa4afba057517"}, - {file = "coverage-7.5.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:357754dcdfd811462a725e7501a9b4556388e8ecf66e79df6f4b988fa3d0b39a"}, - {file = "coverage-7.5.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a81eb64feded34f40c8986869a2f764f0fe2db58c0530d3a4afbcde50f314880"}, - {file = "coverage-7.5.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:51431d0abbed3a868e967f8257c5faf283d41ec882f58413cf295a389bb22e58"}, - {file = "coverage-7.5.0-cp310-cp310-win32.whl", hash = "sha256:f609ebcb0242d84b7adeee2b06c11a2ddaec5464d21888b2c8255f5fd6a98ae4"}, - {file = "coverage-7.5.0-cp310-cp310-win_amd64.whl", hash = "sha256:6782cd6216fab5a83216cc39f13ebe30adfac2fa72688c5a4d8d180cd52e8f6a"}, - {file = "coverage-7.5.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:e768d870801f68c74c2b669fc909839660180c366501d4cc4b87efd6b0eee375"}, - {file = "coverage-7.5.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:84921b10aeb2dd453247fd10de22907984eaf80901b578a5cf0bb1e279a587cb"}, - {file = "coverage-7.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:710c62b6e35a9a766b99b15cdc56d5aeda0914edae8bb467e9c355f75d14ee95"}, - {file = "coverage-7.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c379cdd3efc0658e652a14112d51a7668f6bfca7445c5a10dee7eabecabba19d"}, - {file = "coverage-7.5.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fea9d3ca80bcf17edb2c08a4704259dadac196fe5e9274067e7a20511fad1743"}, - {file = "coverage-7.5.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:41327143c5b1d715f5f98a397608f90ab9ebba606ae4e6f3389c2145410c52b1"}, - {file = "coverage-7.5.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:565b2e82d0968c977e0b0f7cbf25fd06d78d4856289abc79694c8edcce6eb2de"}, - {file = "coverage-7.5.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cf3539007202ebfe03923128fedfdd245db5860a36810136ad95a564a2fdffff"}, - {file = "coverage-7.5.0-cp311-cp311-win32.whl", hash = "sha256:bf0b4b8d9caa8d64df838e0f8dcf68fb570c5733b726d1494b87f3da85db3a2d"}, - {file = "coverage-7.5.0-cp311-cp311-win_amd64.whl", hash = "sha256:9c6384cc90e37cfb60435bbbe0488444e54b98700f727f16f64d8bfda0b84656"}, - {file = "coverage-7.5.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fed7a72d54bd52f4aeb6c6e951f363903bd7d70bc1cad64dd1f087980d309ab9"}, - {file = "coverage-7.5.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:cbe6581fcff7c8e262eb574244f81f5faaea539e712a058e6707a9d272fe5b64"}, - {file = "coverage-7.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ad97ec0da94b378e593ef532b980c15e377df9b9608c7c6da3506953182398af"}, - {file = "coverage-7.5.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bd4bacd62aa2f1a1627352fe68885d6ee694bdaebb16038b6e680f2924a9b2cc"}, - {file = "coverage-7.5.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:adf032b6c105881f9d77fa17d9eebe0ad1f9bfb2ad25777811f97c5362aa07f2"}, - {file = "coverage-7.5.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:4ba01d9ba112b55bfa4b24808ec431197bb34f09f66f7cb4fd0258ff9d3711b1"}, - {file = "coverage-7.5.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:f0bfe42523893c188e9616d853c47685e1c575fe25f737adf473d0405dcfa7eb"}, - {file = "coverage-7.5.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a9a7ef30a1b02547c1b23fa9a5564f03c9982fc71eb2ecb7f98c96d7a0db5cf2"}, - {file = "coverage-7.5.0-cp312-cp312-win32.whl", hash = "sha256:3c2b77f295edb9fcdb6a250f83e6481c679335ca7e6e4a955e4290350f2d22a4"}, - {file = "coverage-7.5.0-cp312-cp312-win_amd64.whl", hash = "sha256:427e1e627b0963ac02d7c8730ca6d935df10280d230508c0ba059505e9233475"}, - {file = "coverage-7.5.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9dd88fce54abbdbf4c42fb1fea0e498973d07816f24c0e27a1ecaf91883ce69e"}, - {file = "coverage-7.5.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:a898c11dca8f8c97b467138004a30133974aacd572818c383596f8d5b2eb04a9"}, - {file = "coverage-7.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:07dfdd492d645eea1bd70fb1d6febdcf47db178b0d99161d8e4eed18e7f62fe7"}, - {file = "coverage-7.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d3d117890b6eee85887b1eed41eefe2e598ad6e40523d9f94c4c4b213258e4a4"}, - {file = "coverage-7.5.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6afd2e84e7da40fe23ca588379f815fb6dbbb1b757c883935ed11647205111cb"}, - {file = "coverage-7.5.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:a9960dd1891b2ddf13a7fe45339cd59ecee3abb6b8326d8b932d0c5da208104f"}, - {file = "coverage-7.5.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:ced268e82af993d7801a9db2dbc1d2322e786c5dc76295d8e89473d46c6b84d4"}, - {file = "coverage-7.5.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:e7c211f25777746d468d76f11719e64acb40eed410d81c26cefac641975beb88"}, - {file = "coverage-7.5.0-cp38-cp38-win32.whl", hash = "sha256:262fffc1f6c1a26125d5d573e1ec379285a3723363f3bd9c83923c9593a2ac25"}, - {file = "coverage-7.5.0-cp38-cp38-win_amd64.whl", hash = "sha256:eed462b4541c540d63ab57b3fc69e7d8c84d5957668854ee4e408b50e92ce26a"}, - {file = "coverage-7.5.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d0194d654e360b3e6cc9b774e83235bae6b9b2cac3be09040880bb0e8a88f4a1"}, - {file = "coverage-7.5.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:33c020d3322662e74bc507fb11488773a96894aa82a622c35a5a28673c0c26f5"}, - {file = "coverage-7.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cbdf2cae14a06827bec50bd58e49249452d211d9caddd8bd80e35b53cb04631"}, - {file = "coverage-7.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3235d7c781232e525b0761730e052388a01548bd7f67d0067a253887c6e8df46"}, - {file = "coverage-7.5.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db2de4e546f0ec4b2787d625e0b16b78e99c3e21bc1722b4977c0dddf11ca84e"}, - {file = "coverage-7.5.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4d0e206259b73af35c4ec1319fd04003776e11e859936658cb6ceffdeba0f5be"}, - {file = "coverage-7.5.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:2055c4fb9a6ff624253d432aa471a37202cd8f458c033d6d989be4499aed037b"}, - {file = "coverage-7.5.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:075299460948cd12722a970c7eae43d25d37989da682997687b34ae6b87c0ef0"}, - {file = "coverage-7.5.0-cp39-cp39-win32.whl", hash = "sha256:280132aada3bc2f0fac939a5771db4fbb84f245cb35b94fae4994d4c1f80dae7"}, - {file = "coverage-7.5.0-cp39-cp39-win_amd64.whl", hash = "sha256:c58536f6892559e030e6924896a44098bc1290663ea12532c78cef71d0df8493"}, - {file = "coverage-7.5.0-pp38.pp39.pp310-none-any.whl", hash = "sha256:2b57780b51084d5223eee7b59f0d4911c31c16ee5aa12737c7a02455829ff067"}, - {file = "coverage-7.5.0.tar.gz", hash = "sha256:cf62d17310f34084c59c01e027259076479128d11e4661bb6c9acb38c5e19bb8"}, + {file = "coverage-7.5.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c0884920835a033b78d1c73b6d3bbcda8161a900f38a488829a83982925f6c2e"}, + {file = "coverage-7.5.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:39afcd3d4339329c5f58de48a52f6e4e50f6578dd6099961cf22228feb25f38f"}, + {file = "coverage-7.5.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a7b0ceee8147444347da6a66be737c9d78f3353b0681715b668b72e79203e4a"}, + {file = "coverage-7.5.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4a9ca3f2fae0088c3c71d743d85404cec8df9be818a005ea065495bedc33da35"}, + {file = "coverage-7.5.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5fd215c0c7d7aab005221608a3c2b46f58c0285a819565887ee0b718c052aa4e"}, + {file = "coverage-7.5.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:4bf0655ab60d754491004a5efd7f9cccefcc1081a74c9ef2da4735d6ee4a6223"}, + {file = "coverage-7.5.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:61c4bf1ba021817de12b813338c9be9f0ad5b1e781b9b340a6d29fc13e7c1b5e"}, + {file = "coverage-7.5.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:db66fc317a046556a96b453a58eced5024af4582a8dbdc0c23ca4dbc0d5b3146"}, + {file = "coverage-7.5.1-cp310-cp310-win32.whl", hash = "sha256:b016ea6b959d3b9556cb401c55a37547135a587db0115635a443b2ce8f1c7228"}, + {file = "coverage-7.5.1-cp310-cp310-win_amd64.whl", hash = "sha256:df4e745a81c110e7446b1cc8131bf986157770fa405fe90e15e850aaf7619bc8"}, + {file = "coverage-7.5.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:796a79f63eca8814ca3317a1ea443645c9ff0d18b188de470ed7ccd45ae79428"}, + {file = "coverage-7.5.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4fc84a37bfd98db31beae3c2748811a3fa72bf2007ff7902f68746d9757f3746"}, + {file = "coverage-7.5.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6175d1a0559986c6ee3f7fccfc4a90ecd12ba0a383dcc2da30c2b9918d67d8a3"}, + {file = "coverage-7.5.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1fc81d5878cd6274ce971e0a3a18a8803c3fe25457165314271cf78e3aae3aa2"}, + {file = "coverage-7.5.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:556cf1a7cbc8028cb60e1ff0be806be2eded2daf8129b8811c63e2b9a6c43bca"}, + {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9981706d300c18d8b220995ad22627647be11a4276721c10911e0e9fa44c83e8"}, + {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:d7fed867ee50edf1a0b4a11e8e5d0895150e572af1cd6d315d557758bfa9c057"}, + {file = "coverage-7.5.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:ef48e2707fb320c8f139424a596f5b69955a85b178f15af261bab871873bb987"}, + {file = "coverage-7.5.1-cp311-cp311-win32.whl", hash = "sha256:9314d5678dcc665330df5b69c1e726a0e49b27df0461c08ca12674bcc19ef136"}, + {file = "coverage-7.5.1-cp311-cp311-win_amd64.whl", hash = "sha256:5fa567e99765fe98f4e7d7394ce623e794d7cabb170f2ca2ac5a4174437e90dd"}, + {file = "coverage-7.5.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:b6cf3764c030e5338e7f61f95bd21147963cf6aa16e09d2f74f1fa52013c1206"}, + {file = "coverage-7.5.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2ec92012fefebee89a6b9c79bc39051a6cb3891d562b9270ab10ecfdadbc0c34"}, + {file = "coverage-7.5.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:16db7f26000a07efcf6aea00316f6ac57e7d9a96501e990a36f40c965ec7a95d"}, + {file = "coverage-7.5.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:beccf7b8a10b09c4ae543582c1319c6df47d78fd732f854ac68d518ee1fb97fa"}, + {file = "coverage-7.5.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8748731ad392d736cc9ccac03c9845b13bb07d020a33423fa5b3a36521ac6e4e"}, + {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:7352b9161b33fd0b643ccd1f21f3a3908daaddf414f1c6cb9d3a2fd618bf2572"}, + {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:7a588d39e0925f6a2bff87154752481273cdb1736270642aeb3635cb9b4cad07"}, + {file = "coverage-7.5.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:68f962d9b72ce69ea8621f57551b2fa9c70509af757ee3b8105d4f51b92b41a7"}, + {file = "coverage-7.5.1-cp312-cp312-win32.whl", hash = "sha256:f152cbf5b88aaeb836127d920dd0f5e7edff5a66f10c079157306c4343d86c19"}, + {file = "coverage-7.5.1-cp312-cp312-win_amd64.whl", hash = "sha256:5a5740d1fb60ddf268a3811bcd353de34eb56dc24e8f52a7f05ee513b2d4f596"}, + {file = "coverage-7.5.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e2213def81a50519d7cc56ed643c9e93e0247f5bbe0d1247d15fa520814a7cd7"}, + {file = "coverage-7.5.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:5037f8fcc2a95b1f0e80585bd9d1ec31068a9bcb157d9750a172836e98bc7a90"}, + {file = "coverage-7.5.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5c3721c2c9e4c4953a41a26c14f4cef64330392a6d2d675c8b1db3b645e31f0e"}, + {file = "coverage-7.5.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca498687ca46a62ae590253fba634a1fe9836bc56f626852fb2720f334c9e4e5"}, + {file = "coverage-7.5.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0cdcbc320b14c3e5877ee79e649677cb7d89ef588852e9583e6b24c2e5072661"}, + {file = "coverage-7.5.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:57e0204b5b745594e5bc14b9b50006da722827f0b8c776949f1135677e88d0b8"}, + {file = "coverage-7.5.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8fe7502616b67b234482c3ce276ff26f39ffe88adca2acf0261df4b8454668b4"}, + {file = "coverage-7.5.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:9e78295f4144f9dacfed4f92935fbe1780021247c2fabf73a819b17f0ccfff8d"}, + {file = "coverage-7.5.1-cp38-cp38-win32.whl", hash = "sha256:1434e088b41594baa71188a17533083eabf5609e8e72f16ce8c186001e6b8c41"}, + {file = "coverage-7.5.1-cp38-cp38-win_amd64.whl", hash = "sha256:0646599e9b139988b63704d704af8e8df7fa4cbc4a1f33df69d97f36cb0a38de"}, + {file = "coverage-7.5.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:4cc37def103a2725bc672f84bd939a6fe4522310503207aae4d56351644682f1"}, + {file = "coverage-7.5.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fc0b4d8bfeabd25ea75e94632f5b6e047eef8adaed0c2161ada1e922e7f7cece"}, + {file = "coverage-7.5.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d0a0f5e06881ecedfe6f3dd2f56dcb057b6dbeb3327fd32d4b12854df36bf26"}, + {file = "coverage-7.5.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9735317685ba6ec7e3754798c8871c2f49aa5e687cc794a0b1d284b2389d1bd5"}, + {file = "coverage-7.5.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d21918e9ef11edf36764b93101e2ae8cc82aa5efdc7c5a4e9c6c35a48496d601"}, + {file = "coverage-7.5.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:c3e757949f268364b96ca894b4c342b41dc6f8f8b66c37878aacef5930db61be"}, + {file = "coverage-7.5.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:79afb6197e2f7f60c4824dd4b2d4c2ec5801ceb6ba9ce5d2c3080e5660d51a4f"}, + {file = "coverage-7.5.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d1d0d98d95dd18fe29dc66808e1accf59f037d5716f86a501fc0256455219668"}, + {file = "coverage-7.5.1-cp39-cp39-win32.whl", hash = "sha256:1cc0fe9b0b3a8364093c53b0b4c0c2dd4bb23acbec4c9240b5f284095ccf7981"}, + {file = "coverage-7.5.1-cp39-cp39-win_amd64.whl", hash = "sha256:dde0070c40ea8bb3641e811c1cfbf18e265d024deff6de52c5950677a8fb1e0f"}, + {file = "coverage-7.5.1-pp38.pp39.pp310-none-any.whl", hash = "sha256:6537e7c10cc47c595828b8a8be04c72144725c383c4702703ff4e42e44577312"}, + {file = "coverage-7.5.1.tar.gz", hash = "sha256:54de9ef3a9da981f7af93eafde4ede199e0846cd819eb27c88e2b712aae9708c"}, ] [package.extras] From f165bbca5d8b5f97c5e0500343c610060705e5f6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:38:06 +0200 Subject: [PATCH 16/42] web: bump the storybook group in /web with 7 updates (#9591) Bumps the storybook group in /web with 7 updates: | Package | From | To | | --- | --- | --- | | [@storybook/addon-essentials](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials) | `8.0.9` | `8.0.10` | | [@storybook/addon-links](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/links) | `8.0.9` | `8.0.10` | | [@storybook/blocks](https://github.com/storybookjs/storybook/tree/HEAD/code/ui/blocks) | `8.0.9` | `8.0.10` | | [@storybook/manager-api](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/manager-api) | `8.0.9` | `8.0.10` | | [@storybook/web-components](https://github.com/storybookjs/storybook/tree/HEAD/code/renderers/web-components) | `8.0.9` | `8.0.10` | | [@storybook/web-components-vite](https://github.com/storybookjs/storybook/tree/HEAD/code/frameworks/web-components-vite) | `8.0.9` | `8.0.10` | | [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/cli) | `8.0.9` | `8.0.10` | Updates `@storybook/addon-essentials` from 8.0.9 to 8.0.10 - [Release notes](https://github.com/storybookjs/storybook/releases) - [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md) - [Commits](https://github.com/storybookjs/storybook/commits/v8.0.10/code/addons/essentials) Updates `@storybook/addon-links` from 8.0.9 to 8.0.10 - [Release notes](https://github.com/storybookjs/storybook/releases) - [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md) - [Commits](https://github.com/storybookjs/storybook/commits/v8.0.10/code/addons/links) Updates `@storybook/blocks` from 8.0.9 to 8.0.10 - [Release notes](https://github.com/storybookjs/storybook/releases) - [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md) - [Commits](https://github.com/storybookjs/storybook/commits/v8.0.10/code/ui/blocks) Updates `@storybook/manager-api` from 8.0.9 to 8.0.10 - [Release notes](https://github.com/storybookjs/storybook/releases) - [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md) - [Commits](https://github.com/storybookjs/storybook/commits/v8.0.10/code/lib/manager-api) Updates `@storybook/web-components` from 8.0.9 to 8.0.10 - [Release notes](https://github.com/storybookjs/storybook/releases) - [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md) - [Commits](https://github.com/storybookjs/storybook/commits/v8.0.10/code/renderers/web-components) Updates `@storybook/web-components-vite` from 8.0.9 to 8.0.10 - [Release notes](https://github.com/storybookjs/storybook/releases) - [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md) - [Commits](https://github.com/storybookjs/storybook/commits/v8.0.10/code/frameworks/web-components-vite) Updates `storybook` from 8.0.9 to 8.0.10 - [Release notes](https://github.com/storybookjs/storybook/releases) - [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md) - [Commits](https://github.com/storybookjs/storybook/commits/v8.0.10/code/lib/cli) --- updated-dependencies: - dependency-name: "@storybook/addon-essentials" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: storybook - dependency-name: "@storybook/addon-links" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: storybook - dependency-name: "@storybook/blocks" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: storybook - dependency-name: "@storybook/manager-api" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: storybook - dependency-name: "@storybook/web-components" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: storybook - dependency-name: "@storybook/web-components-vite" dependency-type: direct:development update-type: version-update:semver-patch dependency-group: storybook - dependency-name: storybook dependency-type: direct:development update-type: version-update:semver-patch dependency-group: storybook ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- web/package-lock.json | 936 +++++++++++++++++++++--------------------- web/package.json | 12 +- 2 files changed, 474 insertions(+), 474 deletions(-) diff --git a/web/package-lock.json b/web/package-lock.json index 1ad351b935..dd94518121 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -60,13 +60,13 @@ "@lit/localize-tools": "^0.7.2", "@rollup/plugin-replace": "^5.0.5", "@spotlightjs/spotlight": "^1.2.17", - "@storybook/addon-essentials": "^8.0.9", - "@storybook/addon-links": "^8.0.9", + "@storybook/addon-essentials": "^8.0.10", + "@storybook/addon-links": "^8.0.10", "@storybook/api": "^7.6.17", "@storybook/blocks": "^8.0.8", - "@storybook/manager-api": "^8.0.9", - "@storybook/web-components": "^8.0.9", - "@storybook/web-components-vite": "^8.0.9", + "@storybook/manager-api": "^8.0.10", + "@storybook/web-components": "^8.0.10", + "@storybook/web-components-vite": "^8.0.10", "@trivago/prettier-plugin-sort-imports": "^4.3.0", "@types/chart.js": "^2.9.41", "@types/codemirror": "5.60.15", @@ -96,7 +96,7 @@ "react-dom": "^18.3.1", "rollup-plugin-modify": "^3.0.0", "rollup-plugin-postcss-lit": "^2.1.0", - "storybook": "^8.0.9", + "storybook": "^8.0.10", "storybook-addon-mock": "^5.0.0", "ts-lit-plugin": "^2.0.2", "tslib": "^2.6.2", @@ -4349,12 +4349,12 @@ } }, "node_modules/@storybook/addon-actions": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.0.9.tgz", - "integrity": "sha512-+I3VTvlKdj8puHeS2tyaOVv9syDiNLneVZbTfqN+UDOK2i42NwvZr8PVwjTzMlEj9eePJdCZgiipz55xwts5bw==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.0.10.tgz", + "integrity": "sha512-IEuc30UAFl7Ws0GwaY/whjBnGaViVEVjmPc+MXUym2wwwJbnCbI+BKJxPoYi/I7QJb5aUNToAE6pl2pDda2g3Q==", "dev": true, "dependencies": { - "@storybook/core-events": "8.0.9", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "@types/uuid": "^9.0.1", "dequal": "^2.0.2", @@ -4367,9 +4367,9 @@ } }, "node_modules/@storybook/addon-actions/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -4380,9 +4380,9 @@ } }, "node_modules/@storybook/addon-backgrounds": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.0.9.tgz", - "integrity": "sha512-pCDecACrVyxPaJKEWS0sHsRb8xw+IPCSxDM1TkjaAQ6zZ468A/dcUnqW+LVK8bSXgQwWzn23wqnqPFSy5yptuQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.0.10.tgz", + "integrity": "sha512-445SUQqOH5xFJWlNeMu74FEgk26O9Zm/5aqnvmeteB0Q2JLaw7k2q9i/W6XFu97QkRxqA1EGbDxLR3+e1xCjaA==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4395,12 +4395,12 @@ } }, "node_modules/@storybook/addon-controls": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.0.9.tgz", - "integrity": "sha512-wWdmd62UP/sfPm8M7aJjEA+kEXTUIR/QsYi9PoYBhBZcXiikZ4kNan7oD7GfsnzGGKHrBVfwQhO+TqaENGYytA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.0.10.tgz", + "integrity": "sha512-MAUtIJGayNSsfn3VZ6SjQwpRkb4ky+10oVfos+xX9GQ5+7RCs+oYMuE4+aiQvvfXNdV8v0pUGPUPeUzqfJmhOA==", "dev": true, "dependencies": { - "@storybook/blocks": "8.0.9", + "@storybook/blocks": "8.0.10", "lodash": "^4.17.21", "ts-dedent": "^2.0.0" }, @@ -4410,24 +4410,24 @@ } }, "node_modules/@storybook/addon-docs": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.0.9.tgz", - "integrity": "sha512-x7hX7UuzJtClu6XwU3SfpyFhuckVcgqgD6BU6Ihxl0zs+i4xp6iKVXYSnHFMRM1sgoeT8TjPxab35Ke8w8BVRw==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.0.10.tgz", + "integrity": "sha512-y+Agoez/hXZHKUMIZHU96T5V1v0cs4ArSNfjqDg9DPYcyQ88ihJNb6ZabIgzmEaJF/NncCW+LofWeUtkTwalkw==", "dev": true, "dependencies": { "@babel/core": "^7.12.3", "@mdx-js/react": "^3.0.0", - "@storybook/blocks": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/components": "8.0.9", - "@storybook/csf-plugin": "8.0.9", - "@storybook/csf-tools": "8.0.9", + "@storybook/blocks": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/components": "8.0.10", + "@storybook/csf-plugin": "8.0.10", + "@storybook/csf-tools": "8.0.10", "@storybook/global": "^5.0.0", - "@storybook/node-logger": "8.0.9", - "@storybook/preview-api": "8.0.9", - "@storybook/react-dom-shim": "8.0.9", - "@storybook/theming": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/node-logger": "8.0.10", + "@storybook/preview-api": "8.0.10", + "@storybook/react-dom-shim": "8.0.10", + "@storybook/theming": "8.0.10", + "@storybook/types": "8.0.10", "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0", "fs-extra": "^11.1.0", "react": "^16.8.0 || ^17.0.0 || ^18.0.0", @@ -4442,13 +4442,13 @@ } }, "node_modules/@storybook/addon-docs/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -4459,9 +4459,9 @@ } }, "node_modules/@storybook/addon-docs/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -4472,18 +4472,18 @@ } }, "node_modules/@storybook/addon-docs/node_modules/@storybook/components": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.0.9.tgz", - "integrity": "sha512-JcwBGADzIJs0PSzqykrrD2KHzNG9wtexUOKuidt+FSv9szpUhe3qBAXIHpdfBRl7mOJ9TRZ5rt+mukEnfncdzA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.0.10.tgz", + "integrity": "sha512-eo+oDDcm35YBB3dtDYDfcjJypNVPmRty85VWpAOBsJXpwp/fgU8csx0DM3KmhrQ4cWLf2WzcFowJwI1w+J88Sw==", "dev": true, "dependencies": { "@radix-ui/react-slot": "^1.0.2", - "@storybook/client-logger": "8.0.9", + "@storybook/client-logger": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", "@storybook/icons": "^1.2.5", - "@storybook/theming": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/theming": "8.0.10", + "@storybook/types": "8.0.10", "memoizerific": "^1.11.3", "util-deprecate": "^1.0.2" }, @@ -4497,9 +4497,9 @@ } }, "node_modules/@storybook/addon-docs/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -4510,17 +4510,17 @@ } }, "node_modules/@storybook/addon-docs/node_modules/@storybook/preview-api": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.9.tgz", - "integrity": "sha512-zHfX34bkAMzzmE7vbDzaqFwSW6ExiBD0HiO1L/IsHF55f0f7xV7IH8uJyFRrDTvAoW3ReSxZDMvvPpeydFPKGA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.10.tgz", + "integrity": "sha512-uZ6btF7Iloz9TnDcKLQ5ydi2YK0cnulv/8FLQhBCwSrzLLLb+T2DGz0cAeuWZEvMUNWNmkWJ9PAFQFs09/8p/Q==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", - "@storybook/types": "8.0.9", + "@storybook/types": "8.0.10", "@types/qs": "^6.9.5", "dequal": "^2.0.2", "lodash": "^4.17.21", @@ -4536,13 +4536,13 @@ } }, "node_modules/@storybook/addon-docs/node_modules/@storybook/theming": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.0.9.tgz", - "integrity": "sha512-jgfDuYoiNMMirQiASN3Eg0hGDXsEtpdAcMxyShqYGwu9elxgD9yUnYC2nSckYsM74a3ZQ3JaViZ9ZFSe2FHmeQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.0.10.tgz", + "integrity": "sha512-7NHt7bMC7lPkwz9KdDpa6DkLoQZz5OV6jsx/qY91kcdLo1rpnRPAiVlJvmWesFxi1oXOpVDpHHllWzf8KDBv8A==", "dev": true, "dependencies": { "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@storybook/client-logger": "8.0.9", + "@storybook/client-logger": "8.0.10", "@storybook/global": "^5.0.0", "memoizerific": "^1.11.3" }, @@ -4564,12 +4564,12 @@ } }, "node_modules/@storybook/addon-docs/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -4593,24 +4593,24 @@ } }, "node_modules/@storybook/addon-essentials": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.0.9.tgz", - "integrity": "sha512-mwAgdfrOsTuTDcagvM7veBh+iayZIWmKOazzkhrIWbhYcrXOsweigD2UOVeHgAiAzJK49znr4FXTCKcE1hOWcw==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.0.10.tgz", + "integrity": "sha512-Uy3+vm7QX+b/9rhW/iFa3EYAAbV1T2LljY9Bj4aTPZHas9Bpvl5ZPnOm/PhybcE8UFHEoVTJ0v3uWb0dsUEigw==", "dev": true, "dependencies": { - "@storybook/addon-actions": "8.0.9", - "@storybook/addon-backgrounds": "8.0.9", - "@storybook/addon-controls": "8.0.9", - "@storybook/addon-docs": "8.0.9", - "@storybook/addon-highlight": "8.0.9", - "@storybook/addon-measure": "8.0.9", - "@storybook/addon-outline": "8.0.9", - "@storybook/addon-toolbars": "8.0.9", - "@storybook/addon-viewport": "8.0.9", - "@storybook/core-common": "8.0.9", - "@storybook/manager-api": "8.0.9", - "@storybook/node-logger": "8.0.9", - "@storybook/preview-api": "8.0.9", + "@storybook/addon-actions": "8.0.10", + "@storybook/addon-backgrounds": "8.0.10", + "@storybook/addon-controls": "8.0.10", + "@storybook/addon-docs": "8.0.10", + "@storybook/addon-highlight": "8.0.10", + "@storybook/addon-measure": "8.0.10", + "@storybook/addon-outline": "8.0.10", + "@storybook/addon-toolbars": "8.0.10", + "@storybook/addon-viewport": "8.0.10", + "@storybook/core-common": "8.0.10", + "@storybook/manager-api": "8.0.10", + "@storybook/node-logger": "8.0.10", + "@storybook/preview-api": "8.0.10", "ts-dedent": "^2.0.0" }, "funding": { @@ -4619,13 +4619,13 @@ } }, "node_modules/@storybook/addon-essentials/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -4636,9 +4636,9 @@ } }, "node_modules/@storybook/addon-essentials/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -4649,9 +4649,9 @@ } }, "node_modules/@storybook/addon-essentials/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -4662,17 +4662,17 @@ } }, "node_modules/@storybook/addon-essentials/node_modules/@storybook/preview-api": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.9.tgz", - "integrity": "sha512-zHfX34bkAMzzmE7vbDzaqFwSW6ExiBD0HiO1L/IsHF55f0f7xV7IH8uJyFRrDTvAoW3ReSxZDMvvPpeydFPKGA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.10.tgz", + "integrity": "sha512-uZ6btF7Iloz9TnDcKLQ5ydi2YK0cnulv/8FLQhBCwSrzLLLb+T2DGz0cAeuWZEvMUNWNmkWJ9PAFQFs09/8p/Q==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", - "@storybook/types": "8.0.9", + "@storybook/types": "8.0.10", "@types/qs": "^6.9.5", "dequal": "^2.0.2", "lodash": "^4.17.21", @@ -4688,12 +4688,12 @@ } }, "node_modules/@storybook/addon-essentials/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -4703,9 +4703,9 @@ } }, "node_modules/@storybook/addon-highlight": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.0.9.tgz", - "integrity": "sha512-vaRHGDbx7dpNpQECAHk5wczlZO3ntstprGlqnZt0o7ylz6xB5+pTQwTuIFty0hwKv+3TPcskzzifATUyEOEmyg==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.0.10.tgz", + "integrity": "sha512-40GB82t1e2LCCjqXcC6Z5lq1yIpA1+Yl5E2tKeggOVwg5HHAX02ESNDdBaIOlCqMkU3WKzjGPurDNOLUAbsV2g==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -4716,9 +4716,9 @@ } }, "node_modules/@storybook/addon-links": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-8.0.9.tgz", - "integrity": "sha512-FVt+AdW3JFSqbJzkKiqKsMRWqHXqEvCBqFs7lNfk3OW0w0jfv1iREtrxE0dVdJoUFQC9V/2Im/EpJ7UB3C2bNQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-8.0.10.tgz", + "integrity": "sha512-+mIyH2UcrgQfAyRM4+ARkB/D0OOY8UMwkZsD8dD23APZ8oru7W/NHX3lXl0WjPfQcOIx/QwWNWI3+DgVZJY3jw==", "dev": true, "dependencies": { "@storybook/csf": "^0.1.4", @@ -4739,9 +4739,9 @@ } }, "node_modules/@storybook/addon-measure": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.0.9.tgz", - "integrity": "sha512-91svOOGEXmGG4USglwXLE3wtlUVgtbKJVxTKX7xRI+AC5JEEaKByVzP17/X8Qn/8HilUL7AfSQ0kCoqtPSJ5cA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.0.10.tgz", + "integrity": "sha512-quXQwmZJUhOxDIlbXTH6aKYQkwkDpL0UQRkUZn1xuZ2sVKJeaee73QSWqw8HDD4Rz9huS+OrAdVoq/Cz5FoC6A==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4753,9 +4753,9 @@ } }, "node_modules/@storybook/addon-outline": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.0.9.tgz", - "integrity": "sha512-fQ+jm356TgUnz81IxsC99/aOesbLw3N5OQRJpo/A6kqbLMzlq3ybVzuXYCKC3f0ArgQRNh4NoMeJBMRFMtaWRw==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.0.10.tgz", + "integrity": "sha512-1eDO2s/vHhhSJo7W5SetqjleUBTZLI08VNP89c4j7vdRKiMZ1DYhr0dqUGIC3w7cDsawI/nQ24wancHHayAnqw==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0", @@ -4767,9 +4767,9 @@ } }, "node_modules/@storybook/addon-toolbars": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.0.9.tgz", - "integrity": "sha512-nNSBnnBOhQ+EJwkrIkK4ZBYPcozNmEH770CZ/6NK85SUJ6WEBZapE6ru33jIUokFGEvlOlNCeai0GUc++cQP8w==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.0.10.tgz", + "integrity": "sha512-67HP6mTJU/gjRju01Z5HjeqoRiJMDlrMvMvjGBg7w5+tPNtjYqdelfe2+kcfU+Hf6dfcuqaBDwaUUGSv+RYtRQ==", "dev": true, "funding": { "type": "opencollective", @@ -4777,9 +4777,9 @@ } }, "node_modules/@storybook/addon-viewport": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.0.9.tgz", - "integrity": "sha512-Ao4+D56cO7biaw+iTlMU1FBec1idX0cmdosDeCFZin06MSawcPkeBlRBeruaSQYdLes8TBMdZPFgfuqI5yIk6g==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.0.10.tgz", + "integrity": "sha512-NJ88Nd/tXreHLyLeF3VP+b8Fu2KtUuJ0L4JYpEMmcdaejGARTrJJOU+pcZBiUqEHFeXQ8rDY8DKXhUJZQFQ1Wg==", "dev": true, "dependencies": { "memoizerific": "^1.11.3" @@ -4906,23 +4906,23 @@ } }, "node_modules/@storybook/blocks": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.0.9.tgz", - "integrity": "sha512-F2zSrfSwzTFN7qW3zB80tG+EXtmfmCDC6Ird0F7tolszb6tOqJcAcBOwQbE2O0wI63sLu21qxzXgaKBMkiWvJg==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.0.10.tgz", + "integrity": "sha512-LOaxvcO2d4dT4YoWlQ0bq/c8qA3aHoqtyuvBjwbVn+359bjMtgj/91YuP9Y2+ggZZ4p+ttgvk39PcmJlNXlJsw==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/components": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/components": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", - "@storybook/docs-tools": "8.0.9", + "@storybook/docs-tools": "8.0.10", "@storybook/global": "^5.0.0", "@storybook/icons": "^1.2.5", - "@storybook/manager-api": "8.0.9", - "@storybook/preview-api": "8.0.9", - "@storybook/theming": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/manager-api": "8.0.10", + "@storybook/preview-api": "8.0.10", + "@storybook/theming": "8.0.10", + "@storybook/types": "8.0.10", "@types/lodash": "^4.14.167", "color-convert": "^2.0.1", "dequal": "^2.0.2", @@ -4954,13 +4954,13 @@ } }, "node_modules/@storybook/blocks/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -4971,9 +4971,9 @@ } }, "node_modules/@storybook/blocks/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -4984,18 +4984,18 @@ } }, "node_modules/@storybook/blocks/node_modules/@storybook/components": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.0.9.tgz", - "integrity": "sha512-JcwBGADzIJs0PSzqykrrD2KHzNG9wtexUOKuidt+FSv9szpUhe3qBAXIHpdfBRl7mOJ9TRZ5rt+mukEnfncdzA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.0.10.tgz", + "integrity": "sha512-eo+oDDcm35YBB3dtDYDfcjJypNVPmRty85VWpAOBsJXpwp/fgU8csx0DM3KmhrQ4cWLf2WzcFowJwI1w+J88Sw==", "dev": true, "dependencies": { "@radix-ui/react-slot": "^1.0.2", - "@storybook/client-logger": "8.0.9", + "@storybook/client-logger": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", "@storybook/icons": "^1.2.5", - "@storybook/theming": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/theming": "8.0.10", + "@storybook/types": "8.0.10", "memoizerific": "^1.11.3", "util-deprecate": "^1.0.2" }, @@ -5009,9 +5009,9 @@ } }, "node_modules/@storybook/blocks/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -5022,17 +5022,17 @@ } }, "node_modules/@storybook/blocks/node_modules/@storybook/preview-api": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.9.tgz", - "integrity": "sha512-zHfX34bkAMzzmE7vbDzaqFwSW6ExiBD0HiO1L/IsHF55f0f7xV7IH8uJyFRrDTvAoW3ReSxZDMvvPpeydFPKGA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.10.tgz", + "integrity": "sha512-uZ6btF7Iloz9TnDcKLQ5ydi2YK0cnulv/8FLQhBCwSrzLLLb+T2DGz0cAeuWZEvMUNWNmkWJ9PAFQFs09/8p/Q==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", - "@storybook/types": "8.0.9", + "@storybook/types": "8.0.10", "@types/qs": "^6.9.5", "dequal": "^2.0.2", "lodash": "^4.17.21", @@ -5048,13 +5048,13 @@ } }, "node_modules/@storybook/blocks/node_modules/@storybook/theming": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.0.9.tgz", - "integrity": "sha512-jgfDuYoiNMMirQiASN3Eg0hGDXsEtpdAcMxyShqYGwu9elxgD9yUnYC2nSckYsM74a3ZQ3JaViZ9ZFSe2FHmeQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.0.10.tgz", + "integrity": "sha512-7NHt7bMC7lPkwz9KdDpa6DkLoQZz5OV6jsx/qY91kcdLo1rpnRPAiVlJvmWesFxi1oXOpVDpHHllWzf8KDBv8A==", "dev": true, "dependencies": { "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@storybook/client-logger": "8.0.9", + "@storybook/client-logger": "8.0.10", "@storybook/global": "^5.0.0", "memoizerific": "^1.11.3" }, @@ -5076,12 +5076,12 @@ } }, "node_modules/@storybook/blocks/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -5091,15 +5091,15 @@ } }, "node_modules/@storybook/builder-manager": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/builder-manager/-/builder-manager-8.0.9.tgz", - "integrity": "sha512-/PxDwZIfMc/PSRZcasb6SIdGr3azIlenzx7dBF7Imt8i4jLHiAf1t00GvghlfJsvsrn4DNp95rbRbXTDyTj7tQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/builder-manager/-/builder-manager-8.0.10.tgz", + "integrity": "sha512-lo57jeeYuYCKYrmGOdLg25rMyiGYSTwJ+zYsQ3RvClVICjP6X0I1RCKAJDzkI0BixH6s1+w5ynD6X3PtDnhUuw==", "dev": true, "dependencies": { "@fal-works/esbuild-plugin-global-externals": "^2.1.2", - "@storybook/core-common": "8.0.9", - "@storybook/manager": "8.0.9", - "@storybook/node-logger": "8.0.9", + "@storybook/core-common": "8.0.10", + "@storybook/manager": "8.0.10", + "@storybook/node-logger": "8.0.10", "@types/ejs": "^3.1.1", "@yarnpkg/esbuild-plugin-pnp": "^3.0.0-rc.10", "browser-assert": "^1.2.1", @@ -5131,20 +5131,20 @@ } }, "node_modules/@storybook/builder-vite": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-8.0.9.tgz", - "integrity": "sha512-7hEQFZIIz7VvxdySDpPE96iMvZxQvRZcRdhaNGeE+8Y2pyc3DgYE4WY3sjr+LUoB0a6TYLpAIKqbXwtLz0R+PQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/builder-vite/-/builder-vite-8.0.10.tgz", + "integrity": "sha512-Rod/2jYvF4Ng1MjIMZEXe/3z0lPuxkRtetCTr3ECPgi83lHXpHJ+N0NVfJEMs+pXsVqkLP3iGt2hLn6D6yFMwA==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/core-common": "8.0.9", - "@storybook/core-events": "8.0.9", - "@storybook/csf-plugin": "8.0.9", - "@storybook/node-logger": "8.0.9", - "@storybook/preview": "8.0.9", - "@storybook/preview-api": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/core-common": "8.0.10", + "@storybook/core-events": "8.0.10", + "@storybook/csf-plugin": "8.0.10", + "@storybook/node-logger": "8.0.10", + "@storybook/preview": "8.0.10", + "@storybook/preview-api": "8.0.10", + "@storybook/types": "8.0.10", "@types/find-cache-dir": "^3.2.1", "browser-assert": "^1.2.1", "es-module-lexer": "^0.9.3", @@ -5177,13 +5177,13 @@ } }, "node_modules/@storybook/builder-vite/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -5194,9 +5194,9 @@ } }, "node_modules/@storybook/builder-vite/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -5207,9 +5207,9 @@ } }, "node_modules/@storybook/builder-vite/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -5220,17 +5220,17 @@ } }, "node_modules/@storybook/builder-vite/node_modules/@storybook/preview-api": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.9.tgz", - "integrity": "sha512-zHfX34bkAMzzmE7vbDzaqFwSW6ExiBD0HiO1L/IsHF55f0f7xV7IH8uJyFRrDTvAoW3ReSxZDMvvPpeydFPKGA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.10.tgz", + "integrity": "sha512-uZ6btF7Iloz9TnDcKLQ5ydi2YK0cnulv/8FLQhBCwSrzLLLb+T2DGz0cAeuWZEvMUNWNmkWJ9PAFQFs09/8p/Q==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", - "@storybook/types": "8.0.9", + "@storybook/types": "8.0.10", "@types/qs": "^6.9.5", "dequal": "^2.0.2", "lodash": "^4.17.21", @@ -5246,12 +5246,12 @@ } }, "node_modules/@storybook/builder-vite/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -5294,22 +5294,22 @@ } }, "node_modules/@storybook/cli": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/cli/-/cli-8.0.9.tgz", - "integrity": "sha512-lilYTKn8F5YOePijqfRYFa5v2mHVIJxPCIgTn+OXAmAFbcizZ6P8P6niU4J/NXulgx68Ln1M7hYhFtTP25hVTw==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/cli/-/cli-8.0.10.tgz", + "integrity": "sha512-KUZEO2lyvOS2sRJEFXovt6+5b65iWsh7F8e8S1cM20fCM1rZAlWtwmoxmDVXDmyEp0wTrq4FrRxKnbo9UO518w==", "dev": true, "dependencies": { "@babel/core": "^7.23.0", "@babel/types": "^7.23.0", "@ndelangen/get-tarball": "^3.0.7", - "@storybook/codemod": "8.0.9", - "@storybook/core-common": "8.0.9", - "@storybook/core-events": "8.0.9", - "@storybook/core-server": "8.0.9", - "@storybook/csf-tools": "8.0.9", - "@storybook/node-logger": "8.0.9", - "@storybook/telemetry": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/codemod": "8.0.10", + "@storybook/core-common": "8.0.10", + "@storybook/core-events": "8.0.10", + "@storybook/core-server": "8.0.10", + "@storybook/csf-tools": "8.0.10", + "@storybook/node-logger": "8.0.10", + "@storybook/telemetry": "8.0.10", + "@storybook/types": "8.0.10", "@types/semver": "^7.3.4", "@yarnpkg/fslib": "2.10.3", "@yarnpkg/libzip": "2.3.0", @@ -5346,13 +5346,13 @@ } }, "node_modules/@storybook/cli/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -5363,9 +5363,9 @@ } }, "node_modules/@storybook/cli/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -5376,9 +5376,9 @@ } }, "node_modules/@storybook/cli/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -5389,12 +5389,12 @@ } }, "node_modules/@storybook/cli/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -5526,18 +5526,18 @@ } }, "node_modules/@storybook/codemod": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/codemod/-/codemod-8.0.9.tgz", - "integrity": "sha512-VBeGpSZSQpL6iyLLqceJSNGhdCqcNwv+xC/aWdDFOkmuE1YfbmNNwpa9QYv4ZFJ2QjUsm4iTWG60qK+9NXeSKA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/codemod/-/codemod-8.0.10.tgz", + "integrity": "sha512-t45jKGs/eyR/nKVX6QgRtMZSAjJo5aXWWk3B24xVbW6ywr0jt1LC100FkHG4Af8cApIfh8uUmS9X05hMG5zGGA==", "dev": true, "dependencies": { "@babel/core": "^7.23.2", "@babel/preset-env": "^7.23.2", "@babel/types": "^7.23.0", "@storybook/csf": "^0.1.4", - "@storybook/csf-tools": "8.0.9", - "@storybook/node-logger": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/csf-tools": "8.0.10", + "@storybook/node-logger": "8.0.10", + "@storybook/types": "8.0.10", "@types/cross-spawn": "^6.0.2", "cross-spawn": "^7.0.3", "globby": "^11.0.2", @@ -5553,13 +5553,13 @@ } }, "node_modules/@storybook/codemod/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -5570,9 +5570,9 @@ } }, "node_modules/@storybook/codemod/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -5583,9 +5583,9 @@ } }, "node_modules/@storybook/codemod/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -5596,12 +5596,12 @@ } }, "node_modules/@storybook/codemod/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -5639,15 +5639,15 @@ } }, "node_modules/@storybook/core-common": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-common/-/core-common-8.0.9.tgz", - "integrity": "sha512-Jmue+sfHFb4GTYBzyWYw1MygoJiQSfISIrKmNIzAmZ+oR9EOr+jpu/i/bH+uetZ2Hqg1AGhj1VB7OtJp9HQyWw==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-common/-/core-common-8.0.10.tgz", + "integrity": "sha512-hsFlPieputaDQoxstnPa3pykTc4bUwEDgCHf8U43+/Z7qmLOQ9fpG+2CFW930rsCRghYpPreOvsmhY7lsGKWLQ==", "dev": true, "dependencies": { - "@storybook/core-events": "8.0.9", - "@storybook/csf-tools": "8.0.9", - "@storybook/node-logger": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/core-events": "8.0.10", + "@storybook/csf-tools": "8.0.10", + "@storybook/node-logger": "8.0.10", + "@storybook/types": "8.0.10", "@yarnpkg/fslib": "2.10.3", "@yarnpkg/libzip": "2.3.0", "chalk": "^4.1.0", @@ -5679,13 +5679,13 @@ } }, "node_modules/@storybook/core-common/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -5696,9 +5696,9 @@ } }, "node_modules/@storybook/core-common/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -5709,9 +5709,9 @@ } }, "node_modules/@storybook/core-common/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -5722,12 +5722,12 @@ } }, "node_modules/@storybook/core-common/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -5850,28 +5850,28 @@ } }, "node_modules/@storybook/core-server": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-server/-/core-server-8.0.9.tgz", - "integrity": "sha512-BIe1T5YUBl0GYxEjRoTQsvXD2pyuzL8rPTUD41zlzSQM0R8U6Iant9SzRms4u0+rKUm2mGxxKuODlUo5ewqaGA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-server/-/core-server-8.0.10.tgz", + "integrity": "sha512-HYDw2QFBxg1X/d6g0rUhirOB5Jq6g90HBnyrZzxKoqKWJCNsCADSgM+h9HgtUw0jA97qBpIqmNO9n3mXFPWU/Q==", "dev": true, "dependencies": { "@aw-web-design/x-default-browser": "1.4.126", "@babel/core": "^7.23.9", "@discoveryjs/json-ext": "^0.5.3", - "@storybook/builder-manager": "8.0.9", - "@storybook/channels": "8.0.9", - "@storybook/core-common": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/builder-manager": "8.0.10", + "@storybook/channels": "8.0.10", + "@storybook/core-common": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", - "@storybook/csf-tools": "8.0.9", + "@storybook/csf-tools": "8.0.10", "@storybook/docs-mdx": "3.0.0", "@storybook/global": "^5.0.0", - "@storybook/manager": "8.0.9", - "@storybook/manager-api": "8.0.9", - "@storybook/node-logger": "8.0.9", - "@storybook/preview-api": "8.0.9", - "@storybook/telemetry": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/manager": "8.0.10", + "@storybook/manager-api": "8.0.10", + "@storybook/node-logger": "8.0.10", + "@storybook/preview-api": "8.0.10", + "@storybook/telemetry": "8.0.10", + "@storybook/types": "8.0.10", "@types/detect-port": "^1.3.0", "@types/node": "^18.0.0", "@types/pretty-hrtime": "^1.0.0", @@ -5905,13 +5905,13 @@ } }, "node_modules/@storybook/core-server/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -5922,9 +5922,9 @@ } }, "node_modules/@storybook/core-server/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -5935,9 +5935,9 @@ } }, "node_modules/@storybook/core-server/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -5948,17 +5948,17 @@ } }, "node_modules/@storybook/core-server/node_modules/@storybook/preview-api": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.9.tgz", - "integrity": "sha512-zHfX34bkAMzzmE7vbDzaqFwSW6ExiBD0HiO1L/IsHF55f0f7xV7IH8uJyFRrDTvAoW3ReSxZDMvvPpeydFPKGA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.10.tgz", + "integrity": "sha512-uZ6btF7Iloz9TnDcKLQ5ydi2YK0cnulv/8FLQhBCwSrzLLLb+T2DGz0cAeuWZEvMUNWNmkWJ9PAFQFs09/8p/Q==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", - "@storybook/types": "8.0.9", + "@storybook/types": "8.0.10", "@types/qs": "^6.9.5", "dequal": "^2.0.2", "lodash": "^4.17.21", @@ -5974,12 +5974,12 @@ } }, "node_modules/@storybook/core-server/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -6106,12 +6106,12 @@ } }, "node_modules/@storybook/csf-plugin": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.0.9.tgz", - "integrity": "sha512-pXaNCNi++kxKsqSWwvx215fPx8cNqvepLVxQ7B69qXLHj80DHn0Q3DFBO3sLXNiQMJ2JK4OYcTxMfuOiyzszKw==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.0.10.tgz", + "integrity": "sha512-0EsyEx/06sCjI8sn40r7cABtBU1vUKPMPD+S5mJiZymm73BgdARj0qZOlLoK2LP+t2pcaB/Cn7KX/uyhhv7M2g==", "dev": true, "dependencies": { - "@storybook/csf-tools": "8.0.9", + "@storybook/csf-tools": "8.0.10", "unplugin": "^1.3.1" }, "funding": { @@ -6120,9 +6120,9 @@ } }, "node_modules/@storybook/csf-tools": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-8.0.9.tgz", - "integrity": "sha512-PiNMhL97giLytTdQwuhsZ92buVk4gy9H/8DtrDhUc45/1OmF95gogm6T2Yap729SIFwgpOcuq/U3aVo6d6swVQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/csf-tools/-/csf-tools-8.0.10.tgz", + "integrity": "sha512-xUc6fVIKoCujf/7JZhkYjrVXeNsTSoDrZFNmqLEmtfktJVqYdXY4LuSAtlBmAIyETi09ULTuuVexrcKFwjzuBA==", "dev": true, "dependencies": { "@babel/generator": "^7.23.0", @@ -6130,7 +6130,7 @@ "@babel/traverse": "^7.23.2", "@babel/types": "^7.23.0", "@storybook/csf": "^0.1.4", - "@storybook/types": "8.0.9", + "@storybook/types": "8.0.10", "fs-extra": "^11.1.0", "recast": "^0.23.5", "ts-dedent": "^2.0.0" @@ -6141,13 +6141,13 @@ } }, "node_modules/@storybook/csf-tools/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -6158,9 +6158,9 @@ } }, "node_modules/@storybook/csf-tools/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -6171,9 +6171,9 @@ } }, "node_modules/@storybook/csf-tools/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -6184,12 +6184,12 @@ } }, "node_modules/@storybook/csf-tools/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -6219,15 +6219,15 @@ "dev": true }, "node_modules/@storybook/docs-tools": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-8.0.9.tgz", - "integrity": "sha512-OzogAeOmeHea/MxSPKRBWtOQVNSpoq+OOpimO9YRA5h5GBRJ2TUOGT44Gny6QT4ll5AvQA8fIiq9KezKcLekAg==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/docs-tools/-/docs-tools-8.0.10.tgz", + "integrity": "sha512-rg9KS81vEh13VMr4mAgs+7L4kYqoRtG7kVfV1WHxzJxjR3wYcVR0kP9gPTWV4Xha/TA3onHu9sxKxMTWha0urQ==", "dev": true, "dependencies": { - "@storybook/core-common": "8.0.9", - "@storybook/core-events": "8.0.9", - "@storybook/preview-api": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/core-common": "8.0.10", + "@storybook/core-events": "8.0.10", + "@storybook/preview-api": "8.0.10", + "@storybook/types": "8.0.10", "@types/doctrine": "^0.0.3", "assert": "^2.1.0", "doctrine": "^3.0.0", @@ -6239,13 +6239,13 @@ } }, "node_modules/@storybook/docs-tools/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -6256,9 +6256,9 @@ } }, "node_modules/@storybook/docs-tools/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -6269,9 +6269,9 @@ } }, "node_modules/@storybook/docs-tools/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -6282,17 +6282,17 @@ } }, "node_modules/@storybook/docs-tools/node_modules/@storybook/preview-api": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.9.tgz", - "integrity": "sha512-zHfX34bkAMzzmE7vbDzaqFwSW6ExiBD0HiO1L/IsHF55f0f7xV7IH8uJyFRrDTvAoW3ReSxZDMvvPpeydFPKGA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.10.tgz", + "integrity": "sha512-uZ6btF7Iloz9TnDcKLQ5ydi2YK0cnulv/8FLQhBCwSrzLLLb+T2DGz0cAeuWZEvMUNWNmkWJ9PAFQFs09/8p/Q==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", - "@storybook/types": "8.0.9", + "@storybook/types": "8.0.10", "@types/qs": "^6.9.5", "dequal": "^2.0.2", "lodash": "^4.17.21", @@ -6308,12 +6308,12 @@ } }, "node_modules/@storybook/docs-tools/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -6343,9 +6343,9 @@ } }, "node_modules/@storybook/manager": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/manager/-/manager-8.0.9.tgz", - "integrity": "sha512-+NnRo+5JQFGNqveKrLtC0b+Z08Tae4m44iq292bPeZMpr9OkFsIkU0PBPsHTHPkrqC/zZXRNsCsTEgvu3p2OIA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/manager/-/manager-8.0.10.tgz", + "integrity": "sha512-bojGglUQNry48L4siURc2zQKswavLzMh69rqsfL3ZXx+i+USfRfB7593azTlaZh0q6HO4bUAjB24RfQCyifLLQ==", "dev": true, "funding": { "type": "opencollective", @@ -6353,20 +6353,20 @@ } }, "node_modules/@storybook/manager-api": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.0.9.tgz", - "integrity": "sha512-99b3yKArDSvfabXL7QE3nA95e4DdW/5H/ZCcr6/E2qCQJayZ6G1v/WWamKXbiaTpkndulFmcb/+ZmnDXcweIIQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.0.10.tgz", + "integrity": "sha512-LLu6YKQLWf5QB3h3RO8IevjLrSOew7aidIQPr9DIr9xC8wA7N2fQabr+qrJdE306p3cHZ0nzhYNYZxSjm4Dvdw==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", "@storybook/icons": "^1.2.5", - "@storybook/router": "8.0.9", - "@storybook/theming": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/router": "8.0.10", + "@storybook/theming": "8.0.10", + "@storybook/types": "8.0.10", "dequal": "^2.0.2", "lodash": "^4.17.21", "memoizerific": "^1.11.3", @@ -6380,13 +6380,13 @@ } }, "node_modules/@storybook/manager-api/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -6397,9 +6397,9 @@ } }, "node_modules/@storybook/manager-api/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -6410,9 +6410,9 @@ } }, "node_modules/@storybook/manager-api/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -6423,13 +6423,13 @@ } }, "node_modules/@storybook/manager-api/node_modules/@storybook/theming": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.0.9.tgz", - "integrity": "sha512-jgfDuYoiNMMirQiASN3Eg0hGDXsEtpdAcMxyShqYGwu9elxgD9yUnYC2nSckYsM74a3ZQ3JaViZ9ZFSe2FHmeQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.0.10.tgz", + "integrity": "sha512-7NHt7bMC7lPkwz9KdDpa6DkLoQZz5OV6jsx/qY91kcdLo1rpnRPAiVlJvmWesFxi1oXOpVDpHHllWzf8KDBv8A==", "dev": true, "dependencies": { "@emotion/use-insertion-effect-with-fallbacks": "^1.0.1", - "@storybook/client-logger": "8.0.9", + "@storybook/client-logger": "8.0.10", "@storybook/global": "^5.0.0", "memoizerific": "^1.11.3" }, @@ -6451,12 +6451,12 @@ } }, "node_modules/@storybook/manager-api/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -6466,9 +6466,9 @@ } }, "node_modules/@storybook/node-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-8.0.9.tgz", - "integrity": "sha512-5ajMdZFrYrjGLJOVDq7dlEQNFsgeLHymt4dCK9MulL/ciXykmXUZXE3Bye0wFy+I2qqDVvrvR8uzCvSFvm5MAQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-8.0.10.tgz", + "integrity": "sha512-UMmaUaA3VOX/mKLsSvOnbZre2/1tZ6hazA6H0eAnClKb51jRD1AJrsBYK+uHr/CAp7t710bB5U8apPov7hayDw==", "dev": true, "funding": { "type": "opencollective", @@ -6476,9 +6476,9 @@ } }, "node_modules/@storybook/preview": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/preview/-/preview-8.0.9.tgz", - "integrity": "sha512-tFsR8xc8AYBZZrZw8enklFbSQt7ZAV+rv20BoxwDhd3q7fjXyK7O4moGPqUwBZ7rukTG13nPoISxr+VXAk/HYA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/preview/-/preview-8.0.10.tgz", + "integrity": "sha512-op7gZqop8PSFyPA4tc1Zds8jG6VnskwpYUUsa44pZoEez9PKEFCf4jE+7AQwbBS3hnuCb0CKBfASN8GRyoznbw==", "dev": true, "funding": { "type": "opencollective", @@ -6514,9 +6514,9 @@ } }, "node_modules/@storybook/react-dom-shim": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.0.9.tgz", - "integrity": "sha512-8011KlRuG3obr5pZZ7bcEyYYNWF3tR596YadoMd267NPoHKvwAbKL1L/DNgb6kiYjZDUf9QfaKSCWW31k0kcRQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.0.10.tgz", + "integrity": "sha512-3x8EWEkZebpWpp1pwXEzdabGINwOQt8odM5+hsOlDRtFZBmUqmmzK0rtn7orlcGlOXO4rd6QuZj4Tc5WV28dVQ==", "dev": true, "funding": { "type": "opencollective", @@ -6528,12 +6528,12 @@ } }, "node_modules/@storybook/router": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-8.0.9.tgz", - "integrity": "sha512-aAOWxbM9J4mt+cp4o88T2PB29mgBBTOzU37/pUsTHYnKnR9XI4npXEXdN8Gv+ryqM0kj0AbBpz/llFlnR2MNNA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/router/-/router-8.0.10.tgz", + "integrity": "sha512-AZhgiet+EK0ZsPbaDgbbVTAHW2LAMCP1z/Un2uMBbdDeD0Ys29Af47AbEj/Ome5r1cqasLvzq2WXJlVXPNB0Zw==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", + "@storybook/client-logger": "8.0.10", "memoizerific": "^1.11.3", "qs": "^6.10.0" }, @@ -6543,9 +6543,9 @@ } }, "node_modules/@storybook/router/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -6556,14 +6556,14 @@ } }, "node_modules/@storybook/telemetry": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/telemetry/-/telemetry-8.0.9.tgz", - "integrity": "sha512-AGGfcup06t+wxhBIkHd0iybieOh9PDVZQJ9oPct5JGB39+ni9wvs0WOD+MYlHbsjp8id7+aGkh6mYuYOvfck+Q==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/telemetry/-/telemetry-8.0.10.tgz", + "integrity": "sha512-s4Uc+KZQkdmD2d+64Qf8wYknhQZwmjf2CxjIjv9b4KLsU/nyfDheK7Fzd1jhBKb2UQUlLW5HhZkBgs1RsZcDHA==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-common": "8.0.9", - "@storybook/csf-tools": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-common": "8.0.10", + "@storybook/csf-tools": "8.0.10", "chalk": "^4.1.0", "detect-package-manager": "^2.0.1", "fetch-retry": "^5.0.2", @@ -6576,9 +6576,9 @@ } }, "node_modules/@storybook/telemetry/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -6693,17 +6693,17 @@ } }, "node_modules/@storybook/web-components": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/web-components/-/web-components-8.0.9.tgz", - "integrity": "sha512-wQJZANzTcDfMvoNOL7sqL4SiShKVUAPV15XrdchEaf+RVFAi3edHvubgwRpKcz2H/vyeD86oumxmCNtJbWDctQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/web-components/-/web-components-8.0.10.tgz", + "integrity": "sha512-+4GxATsB6UXGl0b7AcRBrzydKJhBVQBTyY+GrUjstx1LWFU//Ik5B/koPpB857G6aBqIzehKNcWjGHPPAMixjg==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/docs-tools": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/docs-tools": "8.0.10", "@storybook/global": "^5.0.0", - "@storybook/manager-api": "8.0.9", - "@storybook/preview-api": "8.0.9", - "@storybook/types": "8.0.9", + "@storybook/manager-api": "8.0.10", + "@storybook/preview-api": "8.0.10", + "@storybook/types": "8.0.10", "tiny-invariant": "^1.3.1", "ts-dedent": "^2.0.0" }, @@ -6719,15 +6719,15 @@ } }, "node_modules/@storybook/web-components-vite": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/web-components-vite/-/web-components-vite-8.0.9.tgz", - "integrity": "sha512-6NyrFjAKeYrt2XhxbVpM+1XBQYJnkT0unYVNlml2S45D/68JRqoezLFaSZrxQOa2PGs1TT0c1bhw+GYbaOXLOw==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/web-components-vite/-/web-components-vite-8.0.10.tgz", + "integrity": "sha512-tvGWcqYtTYRLpwQ17yHlOfAuYkfxLblxfY1YRVJSsu3k3+ouV+mNE0CMF9O46fwdtdI6bq1eNNJa2brkRlgfMQ==", "dev": true, "dependencies": { - "@storybook/builder-vite": "8.0.9", - "@storybook/core-server": "8.0.9", - "@storybook/node-logger": "8.0.9", - "@storybook/web-components": "8.0.9", + "@storybook/builder-vite": "8.0.10", + "@storybook/core-server": "8.0.10", + "@storybook/node-logger": "8.0.10", + "@storybook/web-components": "8.0.10", "magic-string": "^0.30.0" }, "engines": { @@ -6739,13 +6739,13 @@ } }, "node_modules/@storybook/web-components/node_modules/@storybook/channels": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.9.tgz", - "integrity": "sha512-7Lcfyy5CsLWWGhMPO9WG4jZ/Alzp0AjepFhEreYHRPtQrfttp6qMAjE/g1aHgun0qHCYWxwqIG4NLR/hqDNrXQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", + "integrity": "sha512-3JLxfD7czlx31dAGvAYJ4J4BNE/Y2+hhj/dsV3xlQTHKVpnWknaoeYEC1a6YScyfsH6W+XmP2rzZKzH4EkLSGQ==", "dev": true, "dependencies": { - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/global": "^5.0.0", "telejson": "^7.2.0", "tiny-invariant": "^1.3.1" @@ -6756,9 +6756,9 @@ } }, "node_modules/@storybook/web-components/node_modules/@storybook/client-logger": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.9.tgz", - "integrity": "sha512-LzV/RHkbf07sRc1Jc0ff36RlapKf9Ul7/+9VMvVbI3hshH1CpmrZK4t/tsIdpX/EVOdJ1Gg5cES06PnleOAIPA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-8.0.10.tgz", + "integrity": "sha512-u38SbZNAunZzxZNHMJb9jkUwFkLyWxmvp4xtiRM3u9sMUShXoTnzbw1yKrxs+kYJjg+58UQPZ1JhEBRcHt5Oww==", "dev": true, "dependencies": { "@storybook/global": "^5.0.0" @@ -6769,9 +6769,9 @@ } }, "node_modules/@storybook/web-components/node_modules/@storybook/core-events": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.9.tgz", - "integrity": "sha512-DxSUx7wG9Qe3OFUBnv3OrYq48J8UWNo2DUR5/JecJCtp3n++L4fAEW3J0IF5FfxpQDMQSp1yTNjZ2PaWCMd2ag==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-8.0.10.tgz", + "integrity": "sha512-TuHPS6p5ZNr4vp4butLb4R98aFx0NRYCI/7VPhJEUH5rPiqNzE3PZd8DC8rnVxavsJ+jO1/y+egNKXRYkEcoPQ==", "dev": true, "dependencies": { "ts-dedent": "^2.0.0" @@ -6782,17 +6782,17 @@ } }, "node_modules/@storybook/web-components/node_modules/@storybook/preview-api": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.9.tgz", - "integrity": "sha512-zHfX34bkAMzzmE7vbDzaqFwSW6ExiBD0HiO1L/IsHF55f0f7xV7IH8uJyFRrDTvAoW3ReSxZDMvvPpeydFPKGA==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.0.10.tgz", + "integrity": "sha512-uZ6btF7Iloz9TnDcKLQ5ydi2YK0cnulv/8FLQhBCwSrzLLLb+T2DGz0cAeuWZEvMUNWNmkWJ9PAFQFs09/8p/Q==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", - "@storybook/client-logger": "8.0.9", - "@storybook/core-events": "8.0.9", + "@storybook/channels": "8.0.10", + "@storybook/client-logger": "8.0.10", + "@storybook/core-events": "8.0.10", "@storybook/csf": "^0.1.4", "@storybook/global": "^5.0.0", - "@storybook/types": "8.0.9", + "@storybook/types": "8.0.10", "@types/qs": "^6.9.5", "dequal": "^2.0.2", "lodash": "^4.17.21", @@ -6808,12 +6808,12 @@ } }, "node_modules/@storybook/web-components/node_modules/@storybook/types": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.9.tgz", - "integrity": "sha512-ew0EXzk9k4B557P1qIWYrnvUcgaE0WWA5qQS0AU8l+fRTp5nvl9O3SP/zNIB0SN1qDFO7dXr3idTNTyIikTcEQ==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/@storybook/types/-/types-8.0.10.tgz", + "integrity": "sha512-S/hKS7+SqNnYIehwxdQ4M2nnlfGDdYWAXdtPCVJCmS+YF2amgAxeuisiHbUg7eypds6VL0Oxk/j2nPEHOHk9pg==", "dev": true, "dependencies": { - "@storybook/channels": "8.0.9", + "@storybook/channels": "8.0.10", "@types/express": "^4.7.0", "file-system-cache": "2.3.0" }, @@ -10745,9 +10745,9 @@ } }, "node_modules/envinfo": { - "version": "7.12.0", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.12.0.tgz", - "integrity": "sha512-Iw9rQJBGpJRd3rwXm9ft/JiGoAZmLxxJZELYDQoPRZ4USVhkKtIcNBPw6U+/K2mBpaqM25JSV6Yl4Az9vO2wJg==", + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", + "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", "dev": true, "bin": { "envinfo": "dist/cli.js" @@ -12301,9 +12301,9 @@ "license": "ISC" }, "node_modules/flow-parser": { - "version": "0.234.0", - "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.234.0.tgz", - "integrity": "sha512-J1Wn32xDF1l8FqwshoQnTwC9K3aJ83MFuXUx9AcBQr8ttbI/rkjEgAqnjxaIJuZ6RGMfccN5ZxDJSOMM64qy9Q==", + "version": "0.235.1", + "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.235.1.tgz", + "integrity": "sha512-s04193L4JE+ntEcQXbD6jxRRlyj9QXcgEl2W6xSjH4l9x4b0eHoCHfbYHjqf9LdZFUiM5LhgpiqsvLj/AyOyYQ==", "dev": true, "engines": { "node": ">=0.4.0" @@ -13690,9 +13690,9 @@ } }, "node_modules/jake": { - "version": "10.8.7", - "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.7.tgz", - "integrity": "sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==", + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.1.tgz", + "integrity": "sha512-61btcOHNnLnsOdtLgA5efqQWjnSi/vow5HbI7HMdKKWqvrKR1bLK3BPlJn9gcSaP2ewuamUSMB5XEy76KUIS2w==", "dev": true, "dependencies": { "async": "^3.2.3", @@ -18039,12 +18039,12 @@ "license": "MIT" }, "node_modules/storybook": { - "version": "8.0.9", - "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.0.9.tgz", - "integrity": "sha512-/Mvij0Br5bUwJpCvqAUZMEDIWmdRxEyllvVj8Ukw5lIWJePxfpSsz4px5jg9+R6B9tO8sQSqjg4HJvQ/pZk8Tg==", + "version": "8.0.10", + "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.0.10.tgz", + "integrity": "sha512-9/4oxISopLyr5xz7Du27mmQgcIfB7UTLlNzkK4IklWTiSgsOgYgZpsmIwymoXNtkrvh+QsqskdcUP1C7nNiEtw==", "dev": true, "dependencies": { - "@storybook/cli": "8.0.9" + "@storybook/cli": "8.0.10" }, "bin": { "sb": "index.js", diff --git a/web/package.json b/web/package.json index 0445af7a4c..a7d31ebb34 100644 --- a/web/package.json +++ b/web/package.json @@ -81,13 +81,13 @@ "@lit/localize-tools": "^0.7.2", "@rollup/plugin-replace": "^5.0.5", "@spotlightjs/spotlight": "^1.2.17", - "@storybook/addon-essentials": "^8.0.9", - "@storybook/addon-links": "^8.0.9", + "@storybook/addon-essentials": "^8.0.10", + "@storybook/addon-links": "^8.0.10", "@storybook/api": "^7.6.17", "@storybook/blocks": "^8.0.8", - "@storybook/manager-api": "^8.0.9", - "@storybook/web-components": "^8.0.9", - "@storybook/web-components-vite": "^8.0.9", + "@storybook/manager-api": "^8.0.10", + "@storybook/web-components": "^8.0.10", + "@storybook/web-components-vite": "^8.0.10", "@trivago/prettier-plugin-sort-imports": "^4.3.0", "@types/chart.js": "^2.9.41", "@types/codemirror": "5.60.15", @@ -117,7 +117,7 @@ "react-dom": "^18.3.1", "rollup-plugin-modify": "^3.0.0", "rollup-plugin-postcss-lit": "^2.1.0", - "storybook": "^8.0.9", + "storybook": "^8.0.10", "storybook-addon-mock": "^5.0.0", "ts-lit-plugin": "^2.0.2", "tslib": "^2.6.2", From 746c933e63a28a86d5cd80e115f9148846025d03 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:38:15 +0200 Subject: [PATCH 17/42] core: bump goauthentik.io/api/v3 from 3.2024041.2 to 3.2024041.3 (#9589) Bumps [goauthentik.io/api/v3](https://github.com/goauthentik/client-go) from 3.2024041.2 to 3.2024041.3. - [Release notes](https://github.com/goauthentik/client-go/releases) - [Commits](https://github.com/goauthentik/client-go/compare/v3.2024041.2...v3.2024041.3) --- updated-dependencies: - dependency-name: goauthentik.io/api/v3 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index ecd1b6107a..1ccafa2121 100644 --- a/go.mod +++ b/go.mod @@ -28,7 +28,7 @@ require ( github.com/spf13/cobra v1.8.0 github.com/stretchr/testify v1.9.0 github.com/wwt/guac v1.3.2 - goauthentik.io/api/v3 v3.2024041.2 + goauthentik.io/api/v3 v3.2024041.3 golang.org/x/exp v0.0.0-20230210204819-062eb4c674ab golang.org/x/oauth2 v0.19.0 golang.org/x/sync v0.7.0 diff --git a/go.sum b/go.sum index f4176ff391..da6d346028 100644 --- a/go.sum +++ b/go.sum @@ -294,8 +294,8 @@ go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A= go.uber.org/goleak v1.2.1/go.mod h1:qlT2yGI9QafXHhZZLxlSuNsMw3FFLxBr+tBRlmO1xH4= -goauthentik.io/api/v3 v3.2024041.2 h1:gbquIA8RU+9jJbFdGckQTtJzOfWVp2+QdF4LuNVTAWM= -goauthentik.io/api/v3 v3.2024041.2/go.mod h1:zz+mEZg8rY/7eEjkMGWJ2DnGqk+zqxuybGCGrR2O4Kw= +goauthentik.io/api/v3 v3.2024041.3 h1:p5X3zNIm+a/gnl9pyALNCwHkeg0HYIS83B5Xh6vyhtQ= +goauthentik.io/api/v3 v3.2024041.3/go.mod h1:zz+mEZg8rY/7eEjkMGWJ2DnGqk+zqxuybGCGrR2O4Kw= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= From 59e3c85568e5fa4b359e279c917bb09e19e443b0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:38:22 +0200 Subject: [PATCH 18/42] core: bump golang.org/x/oauth2 from 0.19.0 to 0.20.0 (#9590) Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.19.0 to 0.20.0. - [Commits](https://github.com/golang/oauth2/compare/v0.19.0...v0.20.0) --- updated-dependencies: - dependency-name: golang.org/x/oauth2 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 1ccafa2121..7095d5609f 100644 --- a/go.mod +++ b/go.mod @@ -30,7 +30,7 @@ require ( github.com/wwt/guac v1.3.2 goauthentik.io/api/v3 v3.2024041.3 golang.org/x/exp v0.0.0-20230210204819-062eb4c674ab - golang.org/x/oauth2 v0.19.0 + golang.org/x/oauth2 v0.20.0 golang.org/x/sync v0.7.0 gopkg.in/yaml.v2 v2.4.0 layeh.com/radius v0.0.0-20210819152912-ad72663a72ab diff --git a/go.sum b/go.sum index da6d346028..c266c7c48b 100644 --- a/go.sum +++ b/go.sum @@ -382,8 +382,8 @@ golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4Iltr golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.19.0 h1:9+E/EZBCbTLNrbN35fHv/a/d/mOBatymz1zbtQrXpIg= -golang.org/x/oauth2 v0.19.0/go.mod h1:vYi7skDa1x015PmRRYZ7+s1cWyPgrPiSYRe4rnsexc8= +golang.org/x/oauth2 v0.20.0 h1:4mQdhULixXKP1rwYBW0vAijoXnkTG0BLCDRzfe1idMo= +golang.org/x/oauth2 v0.20.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= From 56b73e3bd59ba79237d5f2cdf2766452b88eae9a Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:39:51 +0200 Subject: [PATCH 19/42] translate: Updates for file web/xliff/en.xlf in zh_CN (#9588) Translate web/xliff/en.xlf in zh_CN 100% translated source file: 'web/xliff/en.xlf' on 'zh_CN'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- web/xliff/zh_CN.xlf | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/web/xliff/zh_CN.xlf b/web/xliff/zh_CN.xlf index 983531c021..742c52f6de 100644 --- a/web/xliff/zh_CN.xlf +++ b/web/xliff/zh_CN.xlf @@ -8610,6 +8610,38 @@ Bindings to groups/users are checked against the user of the event. Selected Roles 已选角色 + + + Internal Service accounts are created and managed by authentik and cannot be created manually. + 内部服务账户由 authentik 创建和管理,无法手动创建。 + + + Private key Algorithm + 私钥算法 + + + RSA + RSA + + + ECDSA + ECDSA + + + Algorithm used to generate the private key. + 用于生成私钥的算法。 + + + Added ID + 已添加 ID + + + Removed ID + 已删除 ID + + + Cleared + 已清除 From 74da359dd5c174634389f7ff268af7e6d20652aa Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:40:07 +0200 Subject: [PATCH 20/42] translate: Updates for file web/xliff/en.xlf in zh-Hans (#9587) Translate web/xliff/en.xlf in zh-Hans 100% translated source file: 'web/xliff/en.xlf' on 'zh-Hans'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- web/xliff/zh-Hans.xlf | 52 +++++++++++++++++++++++++------------------ 1 file changed, 30 insertions(+), 22 deletions(-) diff --git a/web/xliff/zh-Hans.xlf b/web/xliff/zh-Hans.xlf index 56f75f9665..984448f3fb 100644 --- a/web/xliff/zh-Hans.xlf +++ b/web/xliff/zh-Hans.xlf @@ -1,4 +1,4 @@ - + @@ -596,9 +596,9 @@ - The URL "" was not found. - 未找到 URL " - "。 + The URL "" was not found. + 未找到 URL " + "。 @@ -1040,8 +1040,8 @@ - To allow any redirect URI, set this value to ".*". Be aware of the possible security implications this can have. - 要允许任何重定向 URI,请将此值设置为 ".*"。请注意这可能带来的安全影响。 + To allow any redirect URI, set this value to ".*". Be aware of the possible security implications this can have. + 要允许任何重定向 URI,请将此值设置为 ".*"。请注意这可能带来的安全影响。 @@ -1782,8 +1782,8 @@ - Either input a full URL, a relative path, or use 'fa://fa-test' to use the Font Awesome icon "fa-test". - 输入完整 URL、相对路径,或者使用 'fa://fa-test' 来使用 Font Awesome 图标 "fa-test"。 + Either input a full URL, a relative path, or use 'fa://fa-test' to use the Font Awesome icon "fa-test". + 输入完整 URL、相对路径,或者使用 'fa://fa-test' 来使用 Font Awesome 图标 "fa-test"。 @@ -2961,8 +2961,8 @@ doesn't pass when either or both of the selected options are equal or above the - Field which contains members of a group. Note that if using the "memberUid" field, the value is assumed to contain a relative distinguished name. e.g. 'memberUid=some-user' instead of 'memberUid=cn=some-user,ou=groups,...' - 包含组成员的字段。请注意,如果使用 "memberUid" 字段,则假定该值包含相对可分辨名称。例如,'memberUid=some-user' 而不是 'memberUid=cn=some-user,ou=groups,...' + Field which contains members of a group. Note that if using the "memberUid" field, the value is assumed to contain a relative distinguished name. e.g. 'memberUid=some-user' instead of 'memberUid=cn=some-user,ou=groups,...' + 包含组成员的字段。请注意,如果使用 "memberUid" 字段,则假定该值包含相对可分辨名称。例如,'memberUid=some-user' 而不是 'memberUid=cn=some-user,ou=groups,...' @@ -3739,8 +3739,8 @@ doesn't pass when either or both of the selected options are equal or above the - When using an external logging solution for archiving, this can be set to "minutes=5". - 使用外部日志记录解决方案进行存档时,可以将其设置为 "minutes=5"。 + When using an external logging solution for archiving, this can be set to "minutes=5". + 使用外部日志记录解决方案进行存档时,可以将其设置为 "minutes=5"。 @@ -3916,10 +3916,10 @@ doesn't pass when either or both of the selected options are equal or above the - Are you sure you want to update ""? + Are you sure you want to update ""? 您确定要更新 - " - " 吗? + " + " 吗? @@ -4995,7 +4995,7 @@ doesn't pass when either or both of the selected options are equal or above the - A "roaming" authenticator, like a YubiKey + A "roaming" authenticator, like a YubiKey 像 YubiKey 这样的“漫游”身份验证器 @@ -5330,10 +5330,10 @@ doesn't pass when either or both of the selected options are equal or above the - ("", of type ) + ("", of type ) - (" - ",类型为 + (" + ",类型为 ) @@ -5382,7 +5382,7 @@ doesn't pass when either or both of the selected options are equal or above the - If set to a duration above 0, the user will have the option to choose to "stay signed in", which will extend their session by the time specified here. + If set to a duration above 0, the user will have the option to choose to "stay signed in", which will extend their session by the time specified here. 如果设置时长大于 0,用户可以选择“保持登录”选项,这将使用户的会话延长此处设置的时间。 @@ -7830,7 +7830,7 @@ Bindings to groups/users are checked against the user of the event. 成功创建用户并添加到组 - This user will be added to the group "". + This user will be added to the group "". 此用户将会被添加到组 &quot;&quot;。 @@ -8613,28 +8613,36 @@ Bindings to groups/users are checked against the user of the event. Internal Service accounts are created and managed by authentik and cannot be created manually. + 内部服务账户由 authentik 创建和管理,无法手动创建。 Private key Algorithm + 私钥算法 RSA + RSA ECDSA + ECDSA Algorithm used to generate the private key. + 用于生成私钥的算法。 Added ID + 已添加 ID Removed ID + 已删除 ID Cleared + 已清除 - + \ No newline at end of file From 244cbc5b6d261264116b8a5e705de3722ae27a3b Mon Sep 17 00:00:00 2001 From: Marc 'risson' Schmitt Date: Mon, 6 May 2024 14:02:03 +0200 Subject: [PATCH 21/42] core: fix task clean_expiring_models removing valid sessions with using database storage (#9598) --- authentik/core/tasks.py | 36 +++++++++++++++++++++++++++--------- 1 file changed, 27 insertions(+), 9 deletions(-) diff --git a/authentik/core/tasks.py b/authentik/core/tasks.py index 406e80c60d..1cbb428572 100644 --- a/authentik/core/tasks.py +++ b/authentik/core/tasks.py @@ -2,7 +2,9 @@ from datetime import datetime, timedelta +from django.conf import ImproperlyConfigured from django.contrib.sessions.backends.cache import KEY_PREFIX +from django.contrib.sessions.backends.db import SessionStore as DBSessionStore from django.core.cache import cache from django.utils.timezone import now from structlog.stdlib import get_logger @@ -15,6 +17,7 @@ from authentik.core.models import ( User, ) from authentik.events.system_tasks import SystemTask, TaskStatus, prefill_task +from authentik.lib.config import CONFIG from authentik.root.celery import CELERY_APP LOGGER = get_logger() @@ -39,16 +42,31 @@ def clean_expired_models(self: SystemTask): amount = 0 for session in AuthenticatedSession.objects.all(): - cache_key = f"{KEY_PREFIX}{session.session_key}" - value = None - try: - value = cache.get(cache_key) + match CONFIG.get("session_storage", "cache"): + case "cache": + cache_key = f"{KEY_PREFIX}{session.session_key}" + value = None + try: + value = cache.get(cache_key) - except Exception as exc: - LOGGER.debug("Failed to get session from cache", exc=exc) - if not value: - session.delete() - amount += 1 + except Exception as exc: + LOGGER.debug("Failed to get session from cache", exc=exc) + if not value: + session.delete() + amount += 1 + case "db": + if ( + DBSessionStore.get_model_class() + .objects.filter(session_key=session.session_key, expire_date__gt=now()) + .exists() + ): + session.delete() + amount += 1 + case _: + # Should never happen, as we check for other values in authentik/root/settings.py + raise ImproperlyConfigured( + "Invalid session_storage setting, allowed values are db and cache" + ) LOGGER.debug("Expired sessions", model=AuthenticatedSession, amount=amount) messages.append(f"Expired {amount} {AuthenticatedSession._meta.verbose_name_plural}") From b071d55b4db32dbb0e650a8a56f95264baeece1b Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:12:57 +0000 Subject: [PATCH 22/42] translate: Updates for file locale/en/LC_MESSAGES/django.po in fr (#9599) Translate locale/en/LC_MESSAGES/django.po in fr 100% translated source file: 'locale/en/LC_MESSAGES/django.po' on 'fr'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- locale/fr/LC_MESSAGES/django.po | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 6c3c388b4f..78d1bce05e 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -19,7 +19,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-16 00:07+0000\n" +"POT-Creation-Date: 2024-05-03 00:08+0000\n" "PO-Revision-Date: 2022-09-26 16:47+0000\n" "Last-Translator: Marc Schmitt, 2024\n" "Language-Team: French (https://app.transifex.com/authentik/teams/119923/fr/)\n" @@ -410,6 +410,14 @@ msgstr "Vous êtes sur le point de vous connecter à %(application)s." msgid "Subject-alt name" msgstr "Nom alternatif subject" +#: authentik/crypto/builder.py +msgid "rsa" +msgstr "rsa" + +#: authentik/crypto/builder.py +msgid "ecdsa" +msgstr "ecdsa" + #: authentik/crypto/models.py msgid "PEM-encoded Certificate data" msgstr "Données du certificat au format PEM" @@ -1740,6 +1748,22 @@ msgstr "RSA-SHA384" msgid "RSA-SHA512" msgstr "RSA-SHA512" +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA1" +msgstr "ECDSA-SHA1" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA256" +msgstr "ECDSA-SHA256" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA384" +msgstr "ECDSA-SHA384" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA512" +msgstr "ECDSA-SHA512" + #: authentik/providers/saml/models.py authentik/sources/saml/models.py msgid "DSA-SHA1" msgstr "DSA-SHA1" From 3fff0906127dc27351c490339dfd3bc4d800abcb Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 12:14:22 +0000 Subject: [PATCH 23/42] translate: Updates for file web/xliff/en.xlf in fr (#9600) Translate web/xliff/en.xlf in fr 100% translated source file: 'web/xliff/en.xlf' on 'fr'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- web/xliff/fr.xlf | 73 ++++++++++++++++++++++++++++-------------------- 1 file changed, 42 insertions(+), 31 deletions(-) diff --git a/web/xliff/fr.xlf b/web/xliff/fr.xlf index 6cef7a7aaa..213bbda704 100644 --- a/web/xliff/fr.xlf +++ b/web/xliff/fr.xlf @@ -1,4 +1,4 @@ - + @@ -596,9 +596,9 @@ - The URL "" was not found. - L'URL " - " n'a pas été trouvée. + The URL "" was not found. + L'URL " + " n'a pas été trouvée. @@ -1040,8 +1040,8 @@ - To allow any redirect URI, set this value to ".*". Be aware of the possible security implications this can have. - Pour permettre n'importe quelle URI de redirection, définissez cette valeur sur ".*". Soyez conscient des possibles implications de sécurité que cela peut avoir. + To allow any redirect URI, set this value to ".*". Be aware of the possible security implications this can have. + Pour permettre n'importe quelle URI de redirection, définissez cette valeur sur ".*". Soyez conscient des possibles implications de sécurité que cela peut avoir. @@ -1613,7 +1613,7 @@ Token to authenticate with. Currently only bearer authentication is supported. - Jeton d'authentification à utiliser. Actuellement, seule l'authentification "bearer authentication" est prise en charge. + Jeton d'authentification à utiliser. Actuellement, seule l'authentification "bearer authentication" est prise en charge. @@ -1781,8 +1781,8 @@ - Either input a full URL, a relative path, or use 'fa://fa-test' to use the Font Awesome icon "fa-test". - Entrez une URL complète, un chemin relatif ou utilisez 'fa://fa-test' pour utiliser l'icône Font Awesome "fa-test". + Either input a full URL, a relative path, or use 'fa://fa-test' to use the Font Awesome icon "fa-test". + Entrez une URL complète, un chemin relatif ou utilisez 'fa://fa-test' pour utiliser l'icône Font Awesome "fa-test". @@ -2870,7 +2870,7 @@ doesn't pass when either or both of the selected options are equal or above the To use SSL instead, use 'ldaps://' and disable this option. - Pour utiliser SSL à la base, utilisez "ldaps://" et désactviez cette option. + Pour utiliser SSL à la base, utilisez "ldaps://" et désactviez cette option. @@ -2959,8 +2959,8 @@ doesn't pass when either or both of the selected options are equal or above the - Field which contains members of a group. Note that if using the "memberUid" field, the value is assumed to contain a relative distinguished name. e.g. 'memberUid=some-user' instead of 'memberUid=cn=some-user,ou=groups,...' - Champ qui contient les membres d'un groupe. Si vous utilisez le champ "memberUid", la valeur est censée contenir un nom distinctif relatif, par exemple 'memberUid=un-utilisateur' au lieu de 'memberUid=cn=un-utilisateur,ou=groups,...' + Field which contains members of a group. Note that if using the "memberUid" field, the value is assumed to contain a relative distinguished name. e.g. 'memberUid=some-user' instead of 'memberUid=cn=some-user,ou=groups,...' + Champ qui contient les membres d'un groupe. Si vous utilisez le champ "memberUid", la valeur est censée contenir un nom distinctif relatif, par exemple 'memberUid=un-utilisateur' au lieu de 'memberUid=cn=un-utilisateur,ou=groups,...' @@ -3255,7 +3255,7 @@ doesn't pass when either or both of the selected options are equal or above the Time offset when temporary users should be deleted. This only applies if your IDP uses the NameID Format 'transient', and the user doesn't log out manually. - Moment où les utilisateurs temporaires doivent être supprimés. Cela ne s'applique que si votre IDP utilise le format NameID "transient" et que l'utilisateur ne se déconnecte pas manuellement. + Moment où les utilisateurs temporaires doivent être supprimés. Cela ne s'applique que si votre IDP utilise le format NameID "transient" et que l'utilisateur ne se déconnecte pas manuellement. @@ -3423,7 +3423,7 @@ doesn't pass when either or both of the selected options are equal or above the Optionally set the 'FriendlyName' value of the Assertion attribute. - Indiquer la valeur "FriendlyName" de l'attribut d'assertion (optionnel) + Indiquer la valeur "FriendlyName" de l'attribut d'assertion (optionnel) @@ -3737,8 +3737,8 @@ doesn't pass when either or both of the selected options are equal or above the - When using an external logging solution for archiving, this can be set to "minutes=5". - En cas d'utilisation d'une solution de journalisation externe pour l'archivage, cette valeur peut être fixée à "minutes=5". + When using an external logging solution for archiving, this can be set to "minutes=5". + En cas d'utilisation d'une solution de journalisation externe pour l'archivage, cette valeur peut être fixée à "minutes=5". @@ -3914,10 +3914,10 @@ doesn't pass when either or both of the selected options are equal or above the - Are you sure you want to update ""? + Are you sure you want to update ""? Êtes-vous sûr de vouloir mettre à jour - " - "? + " + "? @@ -4993,8 +4993,8 @@ doesn't pass when either or both of the selected options are equal or above the - A "roaming" authenticator, like a YubiKey - Un authentificateur "itinérant", comme une YubiKey + A "roaming" authenticator, like a YubiKey + Un authentificateur "itinérant", comme une YubiKey @@ -5319,7 +5319,7 @@ doesn't pass when either or both of the selected options are equal or above the Show arbitrary input fields to the user, for example during enrollment. Data is saved in the flow context under the 'prompt_data' variable. - Afficher des champs de saisie arbitraires à l'utilisateur, par exemple pendant l'inscription. Les données sont enregistrées dans le contexte du flux sous la variable "prompt_data". + Afficher des champs de saisie arbitraires à l'utilisateur, par exemple pendant l'inscription. Les données sont enregistrées dans le contexte du flux sous la variable "prompt_data". @@ -5328,10 +5328,10 @@ doesn't pass when either or both of the selected options are equal or above the - ("", of type ) + ("", of type ) - (" - ", de type + (" + ", de type ) @@ -5380,8 +5380,8 @@ doesn't pass when either or both of the selected options are equal or above the - If set to a duration above 0, the user will have the option to choose to "stay signed in", which will extend their session by the time specified here. - Si défini à une durée supérieure à 0, l'utilisateur aura la possibilité de choisir de "rester connecté", ce qui prolongera sa session jusqu'à la durée spécifiée ici. + If set to a duration above 0, the user will have the option to choose to "stay signed in", which will extend their session by the time specified here. + Si défini à une durée supérieure à 0, l'utilisateur aura la possibilité de choisir de "rester connecté", ce qui prolongera sa session jusqu'à la durée spécifiée ici. @@ -6160,7 +6160,7 @@ Les liaisons avec les groupes/utilisateurs sont vérifiées par rapport à l'uti Can be in the format of 'unix://' when connecting to a local docker daemon, using 'ssh://' to connect via SSH, or 'https://:2376' when connecting to a remote system. - Peut être au format "unix://" pour une connexion à un service docker local, "ssh://" pour une connexion via SSH, ou "https://:2376" pour une connexion à un système distant. + Peut être au format "unix://" pour une connexion à un service docker local, "ssh://" pour une connexion via SSH, ou "https://:2376" pour une connexion à un système distant. @@ -7426,7 +7426,7 @@ Les liaisons avec les groupes/utilisateurs sont vérifiées par rapport à l'uti Use this provider with nginx's auth_request or traefik's forwardAuth. Each application/domain needs its own provider. Additionally, on each domain, /outpost.goauthentik.io must be routed to the outpost (when using a managed outpost, this is done for you). - Utilisez ce fournisseur avec l'option "auth_request" de Nginx ou "forwardAuth" de Traefik. Chaque application/domaine a besoin de son propre fournisseur. De plus, sur chaque domaine, "/outpost.goauthentik.io" doit être routé vers le poste avancé (lorsque vous utilisez un poste avancé géré, cela est fait pour vous). + Utilisez ce fournisseur avec l'option "auth_request" de Nginx ou "forwardAuth" de Traefik. Chaque application/domaine a besoin de son propre fournisseur. De plus, sur chaque domaine, "/outpost.goauthentik.io" doit être routé vers le poste avancé (lorsque vous utilisez un poste avancé géré, cela est fait pour vous). Default relay state @@ -7828,7 +7828,7 @@ Les liaisons avec les groupes/utilisateurs sont vérifiées par rapport à l'uti Utilisateur créé et ajouté au groupe avec succès - This user will be added to the group "". + This user will be added to the group "". Cet utilisateur sera ajouté au groupe &quot;&quot;. @@ -8599,37 +8599,48 @@ Les liaisons avec les groupes/utilisateurs sont vérifiées par rapport à l'uti Request failed. Please try again later. + La requête a échoué. Veuillez réessayer plus tard. Available Roles + Rôles disponibles Selected Roles + Rôles sélectionnés Internal Service accounts are created and managed by authentik and cannot be created manually. + Les comptes de service internes sont créés et gérés par authentik et ne peuvent pas être créés manuellement. Private key Algorithm + Algorithme de clé privée RSA + RSA ECDSA + ECDSA Algorithm used to generate the private key. + Algorithme utilisé pour générer la clé privée. Added ID + ID ajouté Removed ID + ID supprimé Cleared + Effacé - + \ No newline at end of file From 801a28ef65b41d17597aed05207b5e893ee69b72 Mon Sep 17 00:00:00 2001 From: Marc 'risson' Schmitt Date: Mon, 6 May 2024 14:29:04 +0200 Subject: [PATCH 24/42] core: fix condition in task clean_expiring_models (#9603) --- authentik/core/tasks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/authentik/core/tasks.py b/authentik/core/tasks.py index 1cbb428572..1a565d8f7f 100644 --- a/authentik/core/tasks.py +++ b/authentik/core/tasks.py @@ -55,7 +55,7 @@ def clean_expired_models(self: SystemTask): session.delete() amount += 1 case "db": - if ( + if not ( DBSessionStore.get_model_class() .objects.filter(session_key=session.session_key, expire_date__gt=now()) .exists() From 74d29e237457404bd1f51a9b4f31e5b1fa91222c Mon Sep 17 00:00:00 2001 From: Jens L Date: Mon, 6 May 2024 14:55:10 +0200 Subject: [PATCH 25/42] sources/scim: fix duplicate groups and invalid schema (#9466) * sources/scim: fix duplicate groups Signed-off-by: Jens Langhammer * fix missing schema in response Signed-off-by: Jens Langhammer * fix members missing in returned group Signed-off-by: Jens Langhammer * optimise queries Signed-off-by: Jens Langhammer * fix Signed-off-by: Jens Langhammer --------- Signed-off-by: Jens Langhammer --- authentik/providers/scim/clients/schema.py | 11 ++++----- authentik/sources/scim/views/v2/groups.py | 27 +++++++++++----------- authentik/sources/scim/views/v2/users.py | 9 ++++---- 3 files changed, 24 insertions(+), 23 deletions(-) diff --git a/authentik/providers/scim/clients/schema.py b/authentik/providers/scim/clients/schema.py index befe784b54..f56d6b0e46 100644 --- a/authentik/providers/scim/clients/schema.py +++ b/authentik/providers/scim/clients/schema.py @@ -9,13 +9,14 @@ from pydanticscim.service_provider import ( ) from pydanticscim.user import User as BaseUser +SCIM_USER_SCHEMA = "urn:ietf:params:scim:schemas:core:2.0:User" +SCIM_GROUP_SCHEMA = "urn:ietf:params:scim:schemas:core:2.0:Group" + class User(BaseUser): """Modified User schema with added externalId field""" - schemas: list[str] = [ - "urn:ietf:params:scim:schemas:core:2.0:User", - ] + schemas: list[str] = [SCIM_USER_SCHEMA] externalId: str | None = None meta: dict | None = None @@ -23,9 +24,7 @@ class User(BaseUser): class Group(BaseGroup): """Modified Group schema with added externalId field""" - schemas: list[str] = [ - "urn:ietf:params:scim:schemas:core:2.0:Group", - ] + schemas: list[str] = [SCIM_GROUP_SCHEMA] externalId: str | None = None meta: dict | None = None diff --git a/authentik/sources/scim/views/v2/groups.py b/authentik/sources/scim/views/v2/groups.py index ef33da20d7..ff27efc162 100644 --- a/authentik/sources/scim/views/v2/groups.py +++ b/authentik/sources/scim/views/v2/groups.py @@ -13,6 +13,7 @@ from rest_framework.request import Request from rest_framework.response import Response from authentik.core.models import Group, User +from authentik.providers.scim.clients.schema import SCIM_USER_SCHEMA from authentik.providers.scim.clients.schema import Group as SCIMGroupModel from authentik.sources.scim.models import SCIMSourceGroup from authentik.sources.scim.views.v2.base import SCIMView @@ -26,9 +27,11 @@ class GroupsView(SCIMView): def group_to_scim(self, scim_group: SCIMSourceGroup) -> dict: """Convert Group to SCIM data""" payload = SCIMGroupModel( + schemas=[SCIM_USER_SCHEMA], id=str(scim_group.group.pk), externalId=scim_group.id, displayName=scim_group.group.name, + members=[], meta={ "resourceType": "Group", "location": self.request.build_absolute_uri( @@ -42,28 +45,24 @@ class GroupsView(SCIMView): ), }, ) - return payload.model_dump( - mode="json", - exclude_unset=True, - ) + for member in scim_group.group.users.order_by("pk"): + member: User + payload.members.append(GroupMember(value=str(member.uuid))) + return payload.model_dump(mode="json", exclude_unset=True) def get(self, request: Request, group_id: str | None = None, **kwargs) -> Response: """List Group handler""" + base_query = SCIMSourceGroup.objects.select_related("group").prefetch_related( + "group__users" + ) if group_id: - connection = ( - SCIMSourceGroup.objects.filter(source=self.source, group__group_uuid=group_id) - .select_related("group") - .first() - ) + connection = base_query.filter(source=self.source, group__group_uuid=group_id).first() if not connection: raise Http404 return Response(self.group_to_scim(connection)) connections = ( - SCIMSourceGroup.objects.filter(source=self.source) - .select_related("group") - .order_by("pk") + base_query.filter(source=self.source).order_by("pk").filter(self.filter_parse(request)) ) - connections = connections.filter(self.filter_parse(request)) page = self.paginate_query(connections) return Response( { @@ -79,6 +78,8 @@ class GroupsView(SCIMView): def update_group(self, connection: SCIMSourceGroup | None, data: QueryDict): """Partial update a group""" group = connection.group if connection else Group() + if _group := Group.objects.filter(name=data.get("displayName")).first(): + group = _group if "displayName" in data: group.name = data.get("displayName") if group.name == "": diff --git a/authentik/sources/scim/views/v2/users.py b/authentik/sources/scim/views/v2/users.py index e53fe5f8ca..84dd555f29 100644 --- a/authentik/sources/scim/views/v2/users.py +++ b/authentik/sources/scim/views/v2/users.py @@ -11,6 +11,7 @@ from rest_framework.request import Request from rest_framework.response import Response from authentik.core.models import User +from authentik.providers.scim.clients.schema import SCIM_USER_SCHEMA from authentik.providers.scim.clients.schema import User as SCIMUserModel from authentik.sources.scim.models import SCIMSourceUser from authentik.sources.scim.views.v2.base import SCIMView @@ -33,6 +34,7 @@ class UsersView(SCIMView): def user_to_scim(self, scim_user: SCIMSourceUser) -> dict: """Convert User to SCIM data""" payload = SCIMUserModel( + schemas=[SCIM_USER_SCHEMA], id=str(scim_user.user.uuid), externalId=scim_user.id, userName=scim_user.user.username, @@ -62,10 +64,7 @@ class UsersView(SCIMView): ), }, ) - final_payload = payload.model_dump( - mode="json", - exclude_unset=True, - ) + final_payload = payload.model_dump(mode="json", exclude_unset=True) final_payload.update(scim_user.attributes) return final_payload @@ -99,6 +98,8 @@ class UsersView(SCIMView): def update_user(self, connection: SCIMSourceUser | None, data: QueryDict): """Partial update a user""" user = connection.user if connection else User() + if _user := User.objects.filter(username=data.get("userName")).first(): + user = _user user.path = self.source.get_user_path() if "userName" in data: user.username = data.get("userName") From d8fd1ddec65c34fe026dacdc8eb42258442a1de8 Mon Sep 17 00:00:00 2001 From: tedstriker Date: Mon, 6 May 2024 15:38:48 +0200 Subject: [PATCH 26/42] website/docs: add instructions for deploying radius manually with docker compose (#9605) --- .../outposts/manual-deploy-docker-compose.md | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/website/docs/outposts/manual-deploy-docker-compose.md b/website/docs/outposts/manual-deploy-docker-compose.md index d1e8419740..0154fb2876 100644 --- a/website/docs/outposts/manual-deploy-docker-compose.md +++ b/website/docs/outposts/manual-deploy-docker-compose.md @@ -50,3 +50,23 @@ services: AUTHENTIK_INSECURE: "false" AUTHENTIK_TOKEN: token-generated-by-authentik ``` + +### RADIUS outpost + +```yaml +version: "3.5" + +services: + radius_outpost: + image: ghcr.io/goauthentik/radius + # Optionally specify which networks the container should be + # might be needed to reach the core authentik server + # networks: + # - foo + ports: + - 1812:1812/udp + environment: + AUTHENTIK_HOST: https://your-authentik.tld + AUTHENTIK_INSECURE: "false" + AUTHENTIK_TOKEN: token-generated-by-authentik +``` From 46980db582a8d05d7fdc26810a984d2faf45bde7 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 17:03:09 +0200 Subject: [PATCH 27/42] translate: Updates for file locale/en/LC_MESSAGES/django.po in ru (#9608) Translate locale/en/LC_MESSAGES/django.po in ru 100% translated source file: 'locale/en/LC_MESSAGES/django.po' on 'ru'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- locale/ru/LC_MESSAGES/django.po | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locale/ru/LC_MESSAGES/django.po b/locale/ru/LC_MESSAGES/django.po index db90196335..329494c5f6 100644 --- a/locale/ru/LC_MESSAGES/django.po +++ b/locale/ru/LC_MESSAGES/django.po @@ -2033,7 +2033,7 @@ msgstr "URL, на который перенаправляется пользов #: authentik/sources/oauth/models.py msgid "Access Token URL" -msgstr "Ссылка ключа доступа" +msgstr "Ссылка Access токена" #: authentik/sources/oauth/models.py msgid "URL used by authentik to retrieve tokens." From 9ec6f548a60baf88ea4f21791df055460eba0283 Mon Sep 17 00:00:00 2001 From: Ken Sternberg <133134217+kensternberg-authentik@users.noreply.github.com> Date: Mon, 6 May 2024 08:55:43 -0700 Subject: [PATCH 28/42] web: clean up the options rendering in PromptForm (#9564) * web: fix esbuild issue with style sheets Getting ESBuild, Lit, and Storybook to all agree on how to read and parse stylesheets is a serious pain. This fix better identifies the value types (instances) being passed from various sources in the repo to the three *different* kinds of style processors we're using (the native one, the polyfill one, and whatever the heck Storybook does internally). Falling back to using older CSS instantiating techniques one era at a time seems to do the trick. It's ugly, but in the face of the aggressive styling we use to avoid Flashes of Unstyled Content (FLoUC), it's the logic with which we're left. In standard mode, the following warning appears on the console when running a Flow: ``` Autofocus processing was blocked because a document already has a focused element. ``` In compatibility mode, the following **error** appears on the console when running a Flow: ``` crawler-inject.js:1106 Uncaught TypeError: Failed to execute 'observe' on 'MutationObserver': parameter 1 is not of type 'Node'. at initDomMutationObservers (crawler-inject.js:1106:18) at crawler-inject.js:1114:24 at Array.forEach () at initDomMutationObservers (crawler-inject.js:1114:10) at crawler-inject.js:1549:1 initDomMutationObservers @ crawler-inject.js:1106 (anonymous) @ crawler-inject.js:1114 initDomMutationObservers @ crawler-inject.js:1114 (anonymous) @ crawler-inject.js:1549 ``` Despite this error, nothing seems to be broken and flows work as anticipated. * web: clean up a bit inside the promptform Just something I did while researching Github Issue 5197. --- web/package.json | 4 +- web/src/admin/stages/prompt/PromptForm.ts | 144 +++++----------------- 2 files changed, 32 insertions(+), 116 deletions(-) diff --git a/web/package.json b/web/package.json index a7d31ebb34..48f29b05e0 100644 --- a/web/package.json +++ b/web/package.json @@ -14,8 +14,8 @@ "build": "run-s build-locales esbuild:build", "build-proxy": "run-s build-locales esbuild:build-proxy", "watch": "run-s build-locales esbuild:watch", - "lint": "cross-env NODE_OPTIONS='--max_old_space_size=16384' eslint . --max-warnings 0 --fix", - "lint:precommit": "cross-env NODE_OPTIONS='--max_old_space_size=16384' node scripts/eslint-precommit.mjs", + "lint": "cross-env NODE_OPTIONS='--max_old_space_size=65536' eslint . --max-warnings 0 --fix", + "lint:precommit": "cross-env NODE_OPTIONS='--max_old_space_size=65536' node scripts/eslint-precommit.mjs", "lint:spelling": "node scripts/check-spelling.mjs", "lit-analyse": "lit-analyzer src", "precommit": "npm-run-all --parallel tsc lit-analyse lint:spelling --sequential lint:precommit prettier", diff --git a/web/src/admin/stages/prompt/PromptForm.ts b/web/src/admin/stages/prompt/PromptForm.ts index 386ae7004f..234d0a8bb0 100644 --- a/web/src/admin/stages/prompt/PromptForm.ts +++ b/web/src/admin/stages/prompt/PromptForm.ts @@ -11,6 +11,7 @@ import { msg } from "@lit/localize"; import { CSSResult, TemplateResult, html } from "lit"; import { customElement, state } from "lit/decorators.js"; import { ifDefined } from "lit/directives/if-defined.js"; +import { map } from "lit/directives/map.js"; import PFTitle from "@patternfly/patternfly/components/Title/title.css"; import PFGrid from "@patternfly/patternfly/layouts/Grid/grid.css"; @@ -121,120 +122,35 @@ export class PromptForm extends ModelForm { } renderTypes(): TemplateResult { - return html` - - - - - - - - - - - - - - - - - - - `; + // prettier-ignore + const promptTypesWithLabels = [ + [PromptTypeEnum.Text, msg("Text: Simple Text input")], + [PromptTypeEnum.TextArea, msg("Text Area: Multiline text input")], + [PromptTypeEnum.TextReadOnly, msg("Text (read-only): Simple Text input, but cannot be edited.")], + [PromptTypeEnum.TextAreaReadOnly, msg("Text Area (read-only): Multiline text input, but cannot be edited.")], + [PromptTypeEnum.Username, msg("Username: Same as Text input, but checks for and prevents duplicate usernames.")], + [PromptTypeEnum.Email, msg("Email: Text field with Email type.")], + [PromptTypeEnum.Password, msg("Password: Masked input, multiple inputs of this type on the same prompt need to be identical.")], + [PromptTypeEnum.Number, msg("Number")], + [PromptTypeEnum.Checkbox, msg("Checkbox")], + [PromptTypeEnum.RadioButtonGroup, msg("Radio Button Group (fixed choice)")], + [PromptTypeEnum.Dropdown, msg("Dropdown (fixed choice)")], + [PromptTypeEnum.Date, msg("Date")], + [PromptTypeEnum.DateTime, msg("Date Time")], + [PromptTypeEnum.File, msg("File")], + [PromptTypeEnum.Separator, msg("Separator: Static Separator Line")], + [PromptTypeEnum.Hidden, msg("Hidden: Hidden field, can be used to insert data into form.")], + [PromptTypeEnum.Static, msg("Static: Static value, displayed as-is.")], + [PromptTypeEnum.AkLocale, msg("authentik: Locale: Displays a list of locales authentik supports.")], + ]; + const currentType = this.instance?.type; + return html` ${map( + promptTypesWithLabels, + ([promptType, label]) => + html``, + )}`; } renderForm(): TemplateResult { From a0a617055bea40bc1d0152e1be1a382caf3a20fe Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 6 May 2024 18:22:52 +0200 Subject: [PATCH 29/42] core: bump jinja2 from 3.1.3 to 3.1.4 (#9610) Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.3 to 3.1.4. - [Release notes](https://github.com/pallets/jinja/releases) - [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4) --- updated-dependencies: - dependency-name: jinja2 dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- poetry.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/poetry.lock b/poetry.lock index 7a6beaa38e..3a3798222e 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1788,13 +1788,13 @@ files = [ [[package]] name = "jinja2" -version = "3.1.3" +version = "3.1.4" description = "A very fast and expressive template engine." optional = false python-versions = ">=3.7" files = [ - {file = "Jinja2-3.1.3-py3-none-any.whl", hash = "sha256:7d6d50dd97d52cbc355597bd845fabfbac3f551e1f99619e39a35ce8c370b5fa"}, - {file = "Jinja2-3.1.3.tar.gz", hash = "sha256:ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90"}, + {file = "jinja2-3.1.4-py3-none-any.whl", hash = "sha256:bc5dd2abb727a5319567b7a813e6a2e7318c39f4f487cfe6c89c6f9c7d25197d"}, + {file = "jinja2-3.1.4.tar.gz", hash = "sha256:4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369"}, ] [package.dependencies] From b1b9c8e0e5320f78786a3a30e3538ae034ef912b Mon Sep 17 00:00:00 2001 From: Tana M Berry Date: Mon, 6 May 2024 14:59:01 -0500 Subject: [PATCH 30/42] website/docs: add procedurals to flow inspector docs (#9556) * clarify access process * add image * link to permissions and explain query parm * typos * changed image * edits --------- Co-authored-by: Tana M Berry --- website/docs/flow/flow-inspector.png | Bin 0 -> 577106 bytes website/docs/flow/inspector.md | 55 +++++++++++++----- website/docs/flow/inspector.png | Bin 67606 -> 0 bytes .../access-control/manage_permissions.md | 2 +- .../access-control/permissions.md | 4 +- 5 files changed, 45 insertions(+), 16 deletions(-) create mode 100644 website/docs/flow/flow-inspector.png delete mode 100644 website/docs/flow/inspector.png diff --git a/website/docs/flow/flow-inspector.png b/website/docs/flow/flow-inspector.png new file mode 100644 index 0000000000000000000000000000000000000000..38aa5e8e923047b17973aa6ad66043478bb04e1c GIT binary patch literal 577106 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
    Sex>v4Coj{ZO?FrH4N`C2B66 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�p#$R^cq?yKKv0xW%{gm(oI-@N&4`3GrSP~T)&kf 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
    k!Ku; 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

    pW>99^@JK|geRw+lagNy6uSW%4Lt?o#Gd|3 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

    va3Y}r<5Xf%UceNTGf2scR?c@l@ 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 dhR{Y|2=u9_pGr_^Is}^ Flows**. -This is the currently planned next stage. If you have stage bindings configured to _Evaluate when flow is planned_, then you will see the result here. If you however have them configured to re-evaluate (_Evaluate when stage is run_), then this will not show up here, since the results will vary based on your input. +2. Select the specific flow that you want to inspect by clicking its name in the list. + +3. On the Flow's detail page, on the left side under **Execute Flow**, click **with inspector**. + +4. The selected flow will launch in a new browser tab, with the flow inspector displayed to the right. + +Alternatively, a user with the correct permission can launch the inspector by adding the query parameter `?inspector` to the URL when the URL opens on a flow. + +:::info +Troubleshooting: + +- If the flow inspector does not launch and a "Bad request" error displays, this is likely either because you selected a flow that is not defined in your instance or the flow has a policy bound directly to it that prevents access, so the inspector won't open because the flow can't run results. +- If the flow inspector launches but is empty, you can refresh the browser or advance the flow to load the inspector. This can occur when a race condition happens (the inspector tries to fetch the data before the flow plan is fully planned and as such the panel just shows blank). + +::: + +### Flow Inspector Details + +The following information is shown in the inspector: + +#### Next stage + +This is the currently planned next stage. If you have stage bindings configured to `Evaluate when flow is planned`\_`, then you will see the result here. If, however, you have them configured to re-evaluate (`Evaluate when stage is run`), then this will not show up here, since the results will vary based on your input. Shown is the name and kind of the stage, as well as the unique ID. -## Plan history +#### Plan history Here you can see an overview of which stages have run, which is currently active, and which is planned to come next. Same caveats as above apply. -## Current plan context +#### Current plan context -This shows you the current context. This will contain fields depending on the same, after an identification stage for example you would see "pending_user" be set. +This shows you the current context. This will contain fields depending on the same, after an identification stage for example you would see "pending_user" defined. This data is not cleaned, so if your flow involves inputting a password, it will be shown here too. -## Session ID +#### Session ID The unique ID for the currently used session. This can be used to debug issues with flows restarting/losing state. diff --git a/website/docs/flow/inspector.png b/website/docs/flow/inspector.png deleted file mode 100644 index b7096ab7c02aed203c30cfacf68125facf244968..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67606 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

    WQ|C}bZdbps5;v;K6$kOYow@t9xE6_r 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 level: Community The integration is community maintained. @@ -16,14 +15,16 @@ Below is a list of all integrations, or applications that are known to work with - Support level: authentik The integration is regularly tested by the authentik team. -### Add a new integration +### Add a new application -To add documentation for a new integration (with support level Community or Vendor), please use the integration template [`service.md`](https://github.com/goauthentik/authentik/blob/main/website/integrations/_template/service.md) file from our GitHub repo. You can download the template file using the following command: +To add documentation for a new application (with support level Community or Vendor), please use the integration template [`service.md`](https://github.com/goauthentik/authentik/blob/main/website/integrations/_template/service.md) file from our GitHub repo. You can download the template file using the following command: ```shell wget https://raw.githubusercontent.com/goauthentik/authentik/main/website/integrations/_template/service.md ``` +Don't forget to edit the `sidebarsIntegrations.js` file to add your new integration to the lefthand navigation bar. + ## Integration categories diff --git a/website/integrations/sources-logo.png b/website/integrations/sources-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..52fa99383417040b2149c1b722ccd2494e246805 GIT binary patch literal 32875 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 literal 0 HcmV?d00001 diff --git a/website/integrations/sources/general.md b/website/integrations/sources/general.md deleted file mode 100644 index f42b60433a..0000000000 --- a/website/integrations/sources/general.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: General -slug: general ---- - -Sources allow you to connect authentik to an existing user directory. They can also be used for social logins, using external providers such as Facebook, Twitter, etc. - -### Add Sources to Default Login Page - -To have sources show on the default login screen you will need to add them. This is assuming you have not created or renamed the default stages and flows. - -1. Access the **Flows** section -2. Click on **default-authentication-flow** -3. Click the **Stage Bindings** tab -4. Chose **Edit Stage** for the _default-authentication-identification_ stage -5. Under **Sources** you should see the additional sources you have configured. Click all applicable sources to have them displayed on the Login Page diff --git a/website/netlify.toml b/website/netlify.toml index 3f0dcf2c85..bd9144cb4c 100644 --- a/website/netlify.toml +++ b/website/netlify.toml @@ -44,3 +44,9 @@ from = "/docs/core/applications" to = "/docs/applications" status = 302 + +# Moved Sources from Integrations to Docs +[[redirects]] + from = "/integrations/sources/*" + to = "/docs/sources/:splat" + status = 302 diff --git a/website/sidebars.js b/website/sidebars.js index 0ee041b681..0d49e707f5 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -32,7 +32,7 @@ const docsSidebar = { }, { type: "category", - label: "Core Concepts", + label: "Core Concepts & Tasks", collapsed: true, items: [ "core/terminology", @@ -135,6 +135,50 @@ const docsSidebar = { }, ], }, + { + type: "category", + label: "Sources", + collapsed: true, + link: { + type: "doc", + id: "sources/general", + }, + items: [ + { + type: "category", + label: "Directory synchronization", + items: [ + "sources/active-directory/index", + "sources/freeipa/index", + ], + }, + { + type: "category", + label: "Protocols", + items: [ + "sources/ldap/index", + "sources/oauth/index", + "sources/saml/index", + "sources/scim/index", + ], + }, + { + type: "category", + label: "Social Logins", + items: [ + "sources/apple/index", + "sources/azure-ad/index", + "sources/discord/index", + "sources/github/index", + "sources/google/index", + "sources/mailcow/index", + "sources/twitch/index", + "sources/plex/index", + "sources/twitter/index", + ], + }, + ], + }, { type: "category", label: "Outposts", diff --git a/website/sidebarsIntegrations.js b/website/sidebarsIntegrations.js index 9aa0354bce..a690339102 100644 --- a/website/sidebarsIntegrations.js +++ b/website/sidebarsIntegrations.js @@ -8,9 +8,14 @@ module.exports = { type: "html", value: generateVersionDropdown(docsSidebar), }, + { + type: "doc", + id: "index", + }, { type: "category", label: "Applications", + collapsed: false, link: { type: "doc", id: "services/index", @@ -156,52 +161,5 @@ module.exports = { }, ], }, - { - type: "category", - label: "Federation & Social login", - link: { - type: "generated-index", - title: "Sources", - slug: "sources", - description: - "Sources of users which can be federated with authentik", - }, - items: [ - { - type: "category", - label: "Directory synchronization", - items: [ - "sources/active-directory/index", - "sources/freeipa/index", - ], - }, - "sources/general", - { - type: "category", - label: "Protocols", - items: [ - "sources/ldap/index", - "sources/oauth/index", - "sources/saml/index", - "sources/scim/index", - ], - }, - { - type: "category", - label: "Social Logins", - items: [ - "sources/apple/index", - "sources/azure-ad/index", - "sources/discord/index", - "sources/github/index", - "sources/google/index", - "sources/mailcow/index", - "sources/twitch/index", - "sources/plex/index", - "sources/twitter/index", - ], - }, - ], - }, ], }; From 87a808a7470b938f55608e35404dd8ffbb82d6f4 Mon Sep 17 00:00:00 2001 From: "authentik-automation[bot]" <135050075+authentik-automation[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 02:11:50 +0200 Subject: [PATCH 32/42] core, web: update translations (#9613) Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: rissson <18313093+rissson@users.noreply.github.com> --- web/xliff/fr.xlf | 62 +++++++++++++++++++++---------------------- web/xliff/zh-Hans.xlf | 44 +++++++++++++++--------------- 2 files changed, 53 insertions(+), 53 deletions(-) diff --git a/web/xliff/fr.xlf b/web/xliff/fr.xlf index 213bbda704..e6ab0f6e14 100644 --- a/web/xliff/fr.xlf +++ b/web/xliff/fr.xlf @@ -1,4 +1,4 @@ - + @@ -596,9 +596,9 @@ - The URL "" was not found. - L'URL " - " n'a pas été trouvée. + The URL "" was not found. + L'URL " + " n'a pas été trouvée. @@ -1040,8 +1040,8 @@ - To allow any redirect URI, set this value to ".*". Be aware of the possible security implications this can have. - Pour permettre n'importe quelle URI de redirection, définissez cette valeur sur ".*". Soyez conscient des possibles implications de sécurité que cela peut avoir. + To allow any redirect URI, set this value to ".*". Be aware of the possible security implications this can have. + Pour permettre n'importe quelle URI de redirection, définissez cette valeur sur ".*". Soyez conscient des possibles implications de sécurité que cela peut avoir. @@ -1613,7 +1613,7 @@ Token to authenticate with. Currently only bearer authentication is supported. - Jeton d'authentification à utiliser. Actuellement, seule l'authentification "bearer authentication" est prise en charge. + Jeton d'authentification à utiliser. Actuellement, seule l'authentification "bearer authentication" est prise en charge. @@ -1781,8 +1781,8 @@ - Either input a full URL, a relative path, or use 'fa://fa-test' to use the Font Awesome icon "fa-test". - Entrez une URL complète, un chemin relatif ou utilisez 'fa://fa-test' pour utiliser l'icône Font Awesome "fa-test". + Either input a full URL, a relative path, or use 'fa://fa-test' to use the Font Awesome icon "fa-test". + Entrez une URL complète, un chemin relatif ou utilisez 'fa://fa-test' pour utiliser l'icône Font Awesome "fa-test". @@ -2870,7 +2870,7 @@ doesn't pass when either or both of the selected options are equal or above the To use SSL instead, use 'ldaps://' and disable this option. - Pour utiliser SSL à la base, utilisez "ldaps://" et désactviez cette option. + Pour utiliser SSL à la base, utilisez "ldaps://" et désactviez cette option. @@ -2959,8 +2959,8 @@ doesn't pass when either or both of the selected options are equal or above the - Field which contains members of a group. Note that if using the "memberUid" field, the value is assumed to contain a relative distinguished name. e.g. 'memberUid=some-user' instead of 'memberUid=cn=some-user,ou=groups,...' - Champ qui contient les membres d'un groupe. Si vous utilisez le champ "memberUid", la valeur est censée contenir un nom distinctif relatif, par exemple 'memberUid=un-utilisateur' au lieu de 'memberUid=cn=un-utilisateur,ou=groups,...' + Field which contains members of a group. Note that if using the "memberUid" field, the value is assumed to contain a relative distinguished name. e.g. 'memberUid=some-user' instead of 'memberUid=cn=some-user,ou=groups,...' + Champ qui contient les membres d'un groupe. Si vous utilisez le champ "memberUid", la valeur est censée contenir un nom distinctif relatif, par exemple 'memberUid=un-utilisateur' au lieu de 'memberUid=cn=un-utilisateur,ou=groups,...' @@ -3255,7 +3255,7 @@ doesn't pass when either or both of the selected options are equal or above the Time offset when temporary users should be deleted. This only applies if your IDP uses the NameID Format 'transient', and the user doesn't log out manually. - Moment où les utilisateurs temporaires doivent être supprimés. Cela ne s'applique que si votre IDP utilise le format NameID "transient" et que l'utilisateur ne se déconnecte pas manuellement. + Moment où les utilisateurs temporaires doivent être supprimés. Cela ne s'applique que si votre IDP utilise le format NameID "transient" et que l'utilisateur ne se déconnecte pas manuellement. @@ -3423,7 +3423,7 @@ doesn't pass when either or both of the selected options are equal or above the Optionally set the 'FriendlyName' value of the Assertion attribute. - Indiquer la valeur "FriendlyName" de l'attribut d'assertion (optionnel) + Indiquer la valeur "FriendlyName" de l'attribut d'assertion (optionnel) @@ -3737,8 +3737,8 @@ doesn't pass when either or both of the selected options are equal or above the - When using an external logging solution for archiving, this can be set to "minutes=5". - En cas d'utilisation d'une solution de journalisation externe pour l'archivage, cette valeur peut être fixée à "minutes=5". + When using an external logging solution for archiving, this can be set to "minutes=5". + En cas d'utilisation d'une solution de journalisation externe pour l'archivage, cette valeur peut être fixée à "minutes=5". @@ -3914,10 +3914,10 @@ doesn't pass when either or both of the selected options are equal or above the - Are you sure you want to update ""? + Are you sure you want to update ""? Êtes-vous sûr de vouloir mettre à jour - " - "? + " + "? @@ -4993,8 +4993,8 @@ doesn't pass when either or both of the selected options are equal or above the - A "roaming" authenticator, like a YubiKey - Un authentificateur "itinérant", comme une YubiKey + A "roaming" authenticator, like a YubiKey + Un authentificateur "itinérant", comme une YubiKey @@ -5319,7 +5319,7 @@ doesn't pass when either or both of the selected options are equal or above the Show arbitrary input fields to the user, for example during enrollment. Data is saved in the flow context under the 'prompt_data' variable. - Afficher des champs de saisie arbitraires à l'utilisateur, par exemple pendant l'inscription. Les données sont enregistrées dans le contexte du flux sous la variable "prompt_data". + Afficher des champs de saisie arbitraires à l'utilisateur, par exemple pendant l'inscription. Les données sont enregistrées dans le contexte du flux sous la variable "prompt_data". @@ -5328,10 +5328,10 @@ doesn't pass when either or both of the selected options are equal or above the - ("", of type ) + ("", of type ) - (" - ", de type + (" + ", de type ) @@ -5380,8 +5380,8 @@ doesn't pass when either or both of the selected options are equal or above the - If set to a duration above 0, the user will have the option to choose to "stay signed in", which will extend their session by the time specified here. - Si défini à une durée supérieure à 0, l'utilisateur aura la possibilité de choisir de "rester connecté", ce qui prolongera sa session jusqu'à la durée spécifiée ici. + If set to a duration above 0, the user will have the option to choose to "stay signed in", which will extend their session by the time specified here. + Si défini à une durée supérieure à 0, l'utilisateur aura la possibilité de choisir de "rester connecté", ce qui prolongera sa session jusqu'à la durée spécifiée ici. @@ -6160,7 +6160,7 @@ Les liaisons avec les groupes/utilisateurs sont vérifiées par rapport à l'uti Can be in the format of 'unix://' when connecting to a local docker daemon, using 'ssh://' to connect via SSH, or 'https://:2376' when connecting to a remote system. - Peut être au format "unix://" pour une connexion à un service docker local, "ssh://" pour une connexion via SSH, ou "https://:2376" pour une connexion à un système distant. + Peut être au format "unix://" pour une connexion à un service docker local, "ssh://" pour une connexion via SSH, ou "https://:2376" pour une connexion à un système distant. @@ -7426,7 +7426,7 @@ Les liaisons avec les groupes/utilisateurs sont vérifiées par rapport à l'uti Use this provider with nginx's auth_request or traefik's forwardAuth. Each application/domain needs its own provider. Additionally, on each domain, /outpost.goauthentik.io must be routed to the outpost (when using a managed outpost, this is done for you). - Utilisez ce fournisseur avec l'option "auth_request" de Nginx ou "forwardAuth" de Traefik. Chaque application/domaine a besoin de son propre fournisseur. De plus, sur chaque domaine, "/outpost.goauthentik.io" doit être routé vers le poste avancé (lorsque vous utilisez un poste avancé géré, cela est fait pour vous). + Utilisez ce fournisseur avec l'option "auth_request" de Nginx ou "forwardAuth" de Traefik. Chaque application/domaine a besoin de son propre fournisseur. De plus, sur chaque domaine, "/outpost.goauthentik.io" doit être routé vers le poste avancé (lorsque vous utilisez un poste avancé géré, cela est fait pour vous). Default relay state @@ -7828,7 +7828,7 @@ Les liaisons avec les groupes/utilisateurs sont vérifiées par rapport à l'uti Utilisateur créé et ajouté au groupe avec succès - This user will be added to the group "". + This user will be added to the group "". Cet utilisateur sera ajouté au groupe &quot;&quot;. @@ -8643,4 +8643,4 @@ Les liaisons avec les groupes/utilisateurs sont vérifiées par rapport à l'uti - \ No newline at end of file + diff --git a/web/xliff/zh-Hans.xlf b/web/xliff/zh-Hans.xlf index 984448f3fb..4ce48386e8 100644 --- a/web/xliff/zh-Hans.xlf +++ b/web/xliff/zh-Hans.xlf @@ -1,4 +1,4 @@ - + @@ -596,9 +596,9 @@ - The URL "" was not found. - 未找到 URL " - "。 + The URL "" was not found. + 未找到 URL " + "。 @@ -1040,8 +1040,8 @@ - To allow any redirect URI, set this value to ".*". Be aware of the possible security implications this can have. - 要允许任何重定向 URI,请将此值设置为 ".*"。请注意这可能带来的安全影响。 + To allow any redirect URI, set this value to ".*". Be aware of the possible security implications this can have. + 要允许任何重定向 URI,请将此值设置为 ".*"。请注意这可能带来的安全影响。 @@ -1782,8 +1782,8 @@ - Either input a full URL, a relative path, or use 'fa://fa-test' to use the Font Awesome icon "fa-test". - 输入完整 URL、相对路径,或者使用 'fa://fa-test' 来使用 Font Awesome 图标 "fa-test"。 + Either input a full URL, a relative path, or use 'fa://fa-test' to use the Font Awesome icon "fa-test". + 输入完整 URL、相对路径,或者使用 'fa://fa-test' 来使用 Font Awesome 图标 "fa-test"。 @@ -2961,8 +2961,8 @@ doesn't pass when either or both of the selected options are equal or above the - Field which contains members of a group. Note that if using the "memberUid" field, the value is assumed to contain a relative distinguished name. e.g. 'memberUid=some-user' instead of 'memberUid=cn=some-user,ou=groups,...' - 包含组成员的字段。请注意,如果使用 "memberUid" 字段,则假定该值包含相对可分辨名称。例如,'memberUid=some-user' 而不是 'memberUid=cn=some-user,ou=groups,...' + Field which contains members of a group. Note that if using the "memberUid" field, the value is assumed to contain a relative distinguished name. e.g. 'memberUid=some-user' instead of 'memberUid=cn=some-user,ou=groups,...' + 包含组成员的字段。请注意,如果使用 "memberUid" 字段,则假定该值包含相对可分辨名称。例如,'memberUid=some-user' 而不是 'memberUid=cn=some-user,ou=groups,...' @@ -3739,8 +3739,8 @@ doesn't pass when either or both of the selected options are equal or above the - When using an external logging solution for archiving, this can be set to "minutes=5". - 使用外部日志记录解决方案进行存档时,可以将其设置为 "minutes=5"。 + When using an external logging solution for archiving, this can be set to "minutes=5". + 使用外部日志记录解决方案进行存档时,可以将其设置为 "minutes=5"。 @@ -3916,10 +3916,10 @@ doesn't pass when either or both of the selected options are equal or above the - Are you sure you want to update ""? + Are you sure you want to update ""? 您确定要更新 - " - " 吗? + " + " 吗? @@ -4995,7 +4995,7 @@ doesn't pass when either or both of the selected options are equal or above the - A "roaming" authenticator, like a YubiKey + A "roaming" authenticator, like a YubiKey 像 YubiKey 这样的“漫游”身份验证器 @@ -5330,10 +5330,10 @@ doesn't pass when either or both of the selected options are equal or above the - ("", of type ) + ("", of type ) - (" - ",类型为 + (" + ",类型为 ) @@ -5382,7 +5382,7 @@ doesn't pass when either or both of the selected options are equal or above the - If set to a duration above 0, the user will have the option to choose to "stay signed in", which will extend their session by the time specified here. + If set to a duration above 0, the user will have the option to choose to "stay signed in", which will extend their session by the time specified here. 如果设置时长大于 0,用户可以选择“保持登录”选项,这将使用户的会话延长此处设置的时间。 @@ -7830,7 +7830,7 @@ Bindings to groups/users are checked against the user of the event. 成功创建用户并添加到组 - This user will be added to the group "". + This user will be added to the group "". 此用户将会被添加到组 &quot;&quot;。 @@ -8645,4 +8645,4 @@ Bindings to groups/users are checked against the user of the event. - \ No newline at end of file + From 066ec35adf6839954be5230826a33e0d4bbfe8ab Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 12:17:06 +0200 Subject: [PATCH 33/42] core: bump django from 5.0.4 to 5.0.5 (#9620) Bumps [django](https://github.com/django/django) from 5.0.4 to 5.0.5. - [Commits](https://github.com/django/django/compare/5.0.4...5.0.5) --- updated-dependencies: - dependency-name: django dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- poetry.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/poetry.lock b/poetry.lock index 3a3798222e..a1de316c63 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1123,13 +1123,13 @@ files = [ [[package]] name = "django" -version = "5.0.4" +version = "5.0.5" description = "A high-level Python web framework that encourages rapid development and clean, pragmatic design." optional = false python-versions = ">=3.10" files = [ - {file = "Django-5.0.4-py3-none-any.whl", hash = "sha256:916423499d75d62da7aa038d19aef23d23498d8df229775eb0a6309ee1013775"}, - {file = "Django-5.0.4.tar.gz", hash = "sha256:4bd01a8c830bb77a8a3b0e7d8b25b887e536ad17a81ba2dce5476135c73312bd"}, + {file = "Django-5.0.5-py3-none-any.whl", hash = "sha256:8af4f166dc9a2bb822f9374cd78e34a10c286b402597fe2c7fb97c131656ba65"}, + {file = "Django-5.0.5.tar.gz", hash = "sha256:dc95c9cb2a37ba54599d9d1c8faf81609d36f3e74cd04395ce1300573e57baf9"}, ] [package.dependencies] From 42b1cb06fbd985391d199601fa1f3a192656f281 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 12:17:26 +0200 Subject: [PATCH 34/42] core: bump sentry-sdk from 2.0.1 to 2.1.1 (#9619) Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.0.1 to 2.1.1. - [Release notes](https://github.com/getsentry/sentry-python/releases) - [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md) - [Commits](https://github.com/getsentry/sentry-python/compare/2.0.1...2.1.1) --- updated-dependencies: - dependency-name: sentry-sdk dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- poetry.lock | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/poetry.lock b/poetry.lock index a1de316c63..450e940408 100644 --- a/poetry.lock +++ b/poetry.lock @@ -3468,13 +3468,13 @@ urllib3 = {version = ">=1.26,<3", extras = ["socks"]} [[package]] name = "sentry-sdk" -version = "2.0.1" +version = "2.1.1" description = "Python client for Sentry (https://sentry.io)" optional = false python-versions = ">=3.6" files = [ - {file = "sentry_sdk-2.0.1-py2.py3-none-any.whl", hash = "sha256:b54c54a2160f509cf2757260d0cf3885b608c6192c2555a3857e3a4d0f84bdb3"}, - {file = "sentry_sdk-2.0.1.tar.gz", hash = "sha256:c278e0f523f6f0ee69dc43ad26dcdb1202dffe5ac326ae31472e012d941bee21"}, + {file = "sentry_sdk-2.1.1-py2.py3-none-any.whl", hash = "sha256:99aeb78fb76771513bd3b2829d12613130152620768d00cd3e45ac00cb17950f"}, + {file = "sentry_sdk-2.1.1.tar.gz", hash = "sha256:95d8c0bb41c8b0bc37ab202c2c4a295bb84398ee05f4cdce55051cd75b926ec1"}, ] [package.dependencies] @@ -3483,6 +3483,7 @@ urllib3 = ">=1.26.11" [package.extras] aiohttp = ["aiohttp (>=3.5)"] +anthropic = ["anthropic (>=0.16)"] arq = ["arq (>=0.23)"] asyncpg = ["asyncpg (>=0.23)"] beam = ["apache-beam (>=2.12)"] @@ -3498,6 +3499,8 @@ flask = ["blinker (>=1.1)", "flask (>=0.11)", "markupsafe"] grpcio = ["grpcio (>=1.21.1)"] httpx = ["httpx (>=0.16.0)"] huey = ["huey (>=2)"] +huggingface-hub = ["huggingface-hub (>=0.22)"] +langchain = ["langchain (>=0.0.210)"] loguru = ["loguru (>=0.5)"] openai = ["openai (>=1.0.0)", "tiktoken (>=0.3.0)"] opentelemetry = ["opentelemetry-distro (>=0.35b0)"] From 31be26ebbd7fbdcaf0ca389d950c4e1a9aa34869 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 12:17:39 +0200 Subject: [PATCH 35/42] core: bump cryptography from 42.0.6 to 42.0.7 (#9618) Bumps [cryptography](https://github.com/pyca/cryptography) from 42.0.6 to 42.0.7. - [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst) - [Commits](https://github.com/pyca/cryptography/compare/42.0.6...42.0.7) --- updated-dependencies: - dependency-name: cryptography dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- poetry.lock | 66 ++++++++++++++++++++++++++--------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/poetry.lock b/poetry.lock index 450e940408..15ba192b48 100644 --- a/poetry.lock +++ b/poetry.lock @@ -984,43 +984,43 @@ toml = ["tomli"] [[package]] name = "cryptography" -version = "42.0.6" +version = "42.0.7" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false python-versions = ">=3.7" files = [ - {file = "cryptography-42.0.6-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:073104df012fc815eed976cd7d0a386c8725d0d0947cf9c37f6c36a6c20feb1b"}, - {file = "cryptography-42.0.6-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:5967e3632f42b0c0f9dc2c9da88c79eabdda317860b246d1fbbde4a8bbbc3b44"}, - {file = "cryptography-42.0.6-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b99831397fdc6e6e0aa088b060c278c6e635d25c0d4d14bdf045bf81792fda0a"}, - {file = "cryptography-42.0.6-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:089aeb297ff89615934b22c7631448598495ffd775b7d540a55cfee35a677bf4"}, - {file = "cryptography-42.0.6-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:97eeacae9aa526ddafe68b9202a535f581e21d78f16688a84c8dcc063618e121"}, - {file = "cryptography-42.0.6-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f4cece02478d73dacd52be57a521d168af64ae03d2a567c0c4eb6f189c3b9d79"}, - {file = "cryptography-42.0.6-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:aeb6f56b004e898df5530fa873e598ec78eb338ba35f6fa1449970800b1d97c2"}, - {file = "cryptography-42.0.6-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:8b90c57b3cd6128e0863b894ce77bd36fcb5f430bf2377bc3678c2f56e232316"}, - {file = "cryptography-42.0.6-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:d16a310c770cc49908c500c2ceb011f2840674101a587d39fa3ea828915b7e83"}, - {file = "cryptography-42.0.6-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:e3442601d276bd9e961d618b799761b4e5d892f938e8a4fe1efbe2752be90455"}, - {file = "cryptography-42.0.6-cp37-abi3-win32.whl", hash = "sha256:00c0faa5b021457848d031ecff041262211cc1e2bce5f6e6e6c8108018f6b44a"}, - {file = "cryptography-42.0.6-cp37-abi3-win_amd64.whl", hash = "sha256:b16b90605c62bcb3aa7755d62cf5e746828cfc3f965a65211849e00c46f8348d"}, - {file = "cryptography-42.0.6-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:eecca86813c6a923cabff284b82ff4d73d9e91241dc176250192c3a9b9902a54"}, - {file = "cryptography-42.0.6-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d93080d2b01b292e7ee4d247bf93ed802b0100f5baa3fa5fd6d374716fa480d4"}, - {file = "cryptography-42.0.6-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ff75b88a4d273c06d968ad535e6cb6a039dd32db54fe36f05ed62ac3ef64a44"}, - {file = "cryptography-42.0.6-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:c05230d8aaaa6b8ab3ab41394dc06eb3d916131df1c9dcb4c94e8f041f704b74"}, - {file = "cryptography-42.0.6-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:9184aff0856261ecb566a3eb26a05dfe13a292c85ce5c59b04e4aa09e5814187"}, - {file = "cryptography-42.0.6-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:4bdb39ecbf05626e4bfa1efd773bb10346af297af14fb3f4c7cb91a1d2f34a46"}, - {file = "cryptography-42.0.6-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:e85f433230add2aa26b66d018e21134000067d210c9c68ef7544ba65fc52e3eb"}, - {file = "cryptography-42.0.6-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:65d529c31bd65d54ce6b926a01e1b66eacf770b7e87c0622516a840e400ec732"}, - {file = "cryptography-42.0.6-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:f1e933b238978ccfa77b1fee0a297b3c04983f4cb84ae1c33b0ea4ae08266cc9"}, - {file = "cryptography-42.0.6-cp39-abi3-win32.whl", hash = "sha256:bc954251edcd8a952eeaec8ae989fec7fe48109ab343138d537b7ea5bb41071a"}, - {file = "cryptography-42.0.6-cp39-abi3-win_amd64.whl", hash = "sha256:9f1a3bc2747166b0643b00e0b56cd9b661afc9d5ff963acaac7a9c7b2b1ef638"}, - {file = "cryptography-42.0.6-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:945a43ebf036dd4b43ebfbbd6b0f2db29ad3d39df824fb77476ca5777a9dde33"}, - {file = "cryptography-42.0.6-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:f567a82b7c2b99257cca2a1c902c1b129787278ff67148f188784245c7ed5495"}, - {file = "cryptography-42.0.6-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3b750279f3e7715df6f68050707a0cee7cbe81ba2eeb2f21d081bd205885ffed"}, - {file = "cryptography-42.0.6-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:6981acac509cc9415344cb5bfea8130096ea6ebcc917e75503143a1e9e829160"}, - {file = "cryptography-42.0.6-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:076c92b08dd1ab88108bc84545187e10d3693a9299c593f98c4ea195a0b0ead7"}, - {file = "cryptography-42.0.6-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:81dbe47e28b703bc4711ac74a64ef8b758a0cf056ce81d08e39116ab4bc126fa"}, - {file = "cryptography-42.0.6-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:e1f5f15c5ddadf6ee4d1d624a2ae940f14bd74536230b0056ccb28bb6248e42a"}, - {file = "cryptography-42.0.6-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:43e521f21c2458038d72e8cdfd4d4d9f1d00906a7b6636c4272e35f650d1699b"}, - {file = "cryptography-42.0.6.tar.gz", hash = "sha256:f987a244dfb0333fbd74a691c36000a2569eaf7c7cc2ac838f85f59f0588ddc9"}, + {file = "cryptography-42.0.7-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:a987f840718078212fdf4504d0fd4c6effe34a7e4740378e59d47696e8dfb477"}, + {file = "cryptography-42.0.7-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:bd13b5e9b543532453de08bcdc3cc7cebec6f9883e886fd20a92f26940fd3e7a"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a79165431551042cc9d1d90e6145d5d0d3ab0f2d66326c201d9b0e7f5bf43604"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a47787a5e3649008a1102d3df55424e86606c9bae6fb77ac59afe06d234605f8"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:02c0eee2d7133bdbbc5e24441258d5d2244beb31da5ed19fbb80315f4bbbff55"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:5e44507bf8d14b36b8389b226665d597bc0f18ea035d75b4e53c7b1ea84583cc"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:7f8b25fa616d8b846aef64b15c606bb0828dbc35faf90566eb139aa9cff67af2"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:93a3209f6bb2b33e725ed08ee0991b92976dfdcf4e8b38646540674fc7508e13"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:e6b8f1881dac458c34778d0a424ae5769de30544fc678eac51c1c8bb2183e9da"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:3de9a45d3b2b7d8088c3fbf1ed4395dfeff79d07842217b38df14ef09ce1d8d7"}, + {file = "cryptography-42.0.7-cp37-abi3-win32.whl", hash = "sha256:789caea816c6704f63f6241a519bfa347f72fbd67ba28d04636b7c6b7da94b0b"}, + {file = "cryptography-42.0.7-cp37-abi3-win_amd64.whl", hash = "sha256:8cb8ce7c3347fcf9446f201dc30e2d5a3c898d009126010cbd1f443f28b52678"}, + {file = "cryptography-42.0.7-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:a3a5ac8b56fe37f3125e5b72b61dcde43283e5370827f5233893d461b7360cd4"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:779245e13b9a6638df14641d029add5dc17edbef6ec915688f3acb9e720a5858"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0d563795db98b4cd57742a78a288cdbdc9daedac29f2239793071fe114f13785"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:31adb7d06fe4383226c3e963471f6837742889b3c4caa55aac20ad951bc8ffda"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:efd0bf5205240182e0f13bcaea41be4fdf5c22c5129fc7ced4a0282ac86998c9"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a9bc127cdc4ecf87a5ea22a2556cab6c7eda2923f84e4f3cc588e8470ce4e42e"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:3577d029bc3f4827dd5bf8bf7710cac13527b470bbf1820a3f394adb38ed7d5f"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:2e47577f9b18723fa294b0ea9a17d5e53a227867a0a4904a1a076d1646d45ca1"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1a58839984d9cb34c855197043eaae2c187d930ca6d644612843b4fe8513c886"}, + {file = "cryptography-42.0.7-cp39-abi3-win32.whl", hash = "sha256:e6b79d0adb01aae87e8a44c2b64bc3f3fe59515280e00fb6d57a7267a2583cda"}, + {file = "cryptography-42.0.7-cp39-abi3-win_amd64.whl", hash = "sha256:16268d46086bb8ad5bf0a2b5544d8a9ed87a0e33f5e77dd3c3301e63d941a83b"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:2954fccea107026512b15afb4aa664a5640cd0af630e2ee3962f2602693f0c82"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:362e7197754c231797ec45ee081f3088a27a47c6c01eff2ac83f60f85a50fe60"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:4f698edacf9c9e0371112792558d2f705b5645076cc0aaae02f816a0171770fd"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:5482e789294854c28237bba77c4c83be698be740e31a3ae5e879ee5444166582"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e9b2a6309f14c0497f348d08a065d52f3020656f675819fc405fb63bbcd26562"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:d8e3098721b84392ee45af2dd554c947c32cc52f862b6a3ae982dbb90f577f14"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c65f96dad14f8528a447414125e1fc8feb2ad5a272b8f68477abbcc1ea7d94b9"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:36017400817987670037fbb0324d71489b6ead6231c9604f8fc1f7d008087c68"}, + {file = "cryptography-42.0.7.tar.gz", hash = "sha256:ecbfbc00bf55888edda9868a4cf927205de8499e7fabe6c050322298382953f2"}, ] [package.dependencies] From 37e3998211fb2b838370e9545005f619a4bfc3dc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 12:18:31 +0200 Subject: [PATCH 36/42] web: bump esbuild from 0.20.2 to 0.21.0 in /web (#9617) Bumps [esbuild](https://github.com/evanw/esbuild) from 0.20.2 to 0.21.0. - [Release notes](https://github.com/evanw/esbuild/releases) - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md) - [Commits](https://github.com/evanw/esbuild/compare/v0.20.2...v0.21.0) --- updated-dependencies: - dependency-name: esbuild dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- web/package-lock.json | 1828 +++++++++++++++++++++++++++++++++-------- web/package.json | 2 +- 2 files changed, 1503 insertions(+), 327 deletions(-) diff --git a/web/package-lock.json b/web/package-lock.json index dd94518121..1c669f5efa 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -79,7 +79,7 @@ "babel-plugin-tsconfig-paths": "^1.0.3", "chokidar": "^3.6.0", "cross-env": "^7.0.3", - "esbuild": "^0.20.2", + "esbuild": "^0.21.0", "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-custom-elements": "0.0.8", @@ -2399,9 +2399,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", - "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.0.tgz", + "integrity": "sha512-kB8I77Onff4y6hAREwsjF11ifM+xi8bBIq/viMO5NFZDX2vKlF0/mevHJYb4sNfb55jIREeUztkUfIgOFtSzdw==", "cpu": [ "ppc64" ], @@ -2414,6 +2414,54 @@ "node": ">=12" } }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.0.tgz", + "integrity": "sha512-8OvDALSbmoLJ79KCs0hxoki5I3qJA7JQMhJO6aq5O8G+pi7TPnGICdQRQcgdzwZaVc4ptp5SX7Phg6jKzvSEBg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.0.tgz", + "integrity": "sha512-SDGbrIOL6P6WTIbDcCa2sbFgznp8o6ztjGWrA+js8JZ9HhBXavN3gPrEqUqB4+bV4AdsqlZG1tK2F06BOPNpZg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.0.tgz", + "integrity": "sha512-G4fkcHqDtIbiE9b3KFJP+ay+TiCOHmenT5GYVi0fuHxFbX0CJ3lpTQbFuWR5s5AlYZZ1j4yY2hbggSUkaBK0pg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@esbuild/darwin-arm64": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", @@ -2429,6 +2477,70 @@ "node": ">=12" } }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.0.tgz", + "integrity": "sha512-+dmvTVqVkAArjJyIbo4Rl2S4I4A/yRuivTPR9Igw0QMBVSJegJqixKxZvKLCh8xi6n8tePdq3EpfbFYH2KNNiw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.0.tgz", + "integrity": "sha512-g8/wBRLbsjryMBo4PGg050I1fn4qrJobkxpT1OekO6I4H2HVQfVfBAvGPhwzc9tr8CUVu0pSGSz9oDPGIjhLNw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.0.tgz", + "integrity": "sha512-uwRL7kSN9tfFBpa7o9HQjEgxPsQsSmOz2ALQ30dxMNT22xS49s8nUtFi7bJ+kM/pcTHcnhyJwJPCY7cwlbQbWQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.0.tgz", + "integrity": "sha512-8s/YeLaUV3QTaGzwDqiTpb78Nw/DdIaUdIlRZItGgWf/8UZHsYUIWj9RfsEXVJB5qvtrg835Dgz/gf+GmFGa7w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@esbuild/linux-arm64": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", @@ -2444,6 +2556,214 @@ "node": ">=12" } }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.0.tgz", + "integrity": "sha512-7pVhVYBt3/R8x0Um9p4V8eMiQcnk6/IHkOo6tkfLnDqPn+NS6lnbfWysAYeDAqFKt6INQKtVxejh6ccbVYLBwQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.0.tgz", + "integrity": "sha512-P8Lse7CXV83ARWVaq6KwV6w86ABeViyUvw6s++tYsUuqUEZgG5697Un72usafkuD7AfOyBdFX6JqZSvIQAU0yQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.0.tgz", + "integrity": "sha512-lUvMkXlUMrx5vnspMWohma6vuWh+Z/mPV6DdbXW07fNgF2Tlg6SLSqqzDXv5XYV4og5awNFYcPXpgqOVsqdx7Q==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.0.tgz", + "integrity": "sha512-wLi9VRnLDRg1Gudic24gcT5aa5LZGBwLi4aYghQ9bVb8z0qYHrZnRTNxulErFvOsSgijUWS5uNLCUaLwj+tvIQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.0.tgz", + "integrity": "sha512-MOjonqpNtns0Y32NwvMZiZXw94g8EqeqI+4BQtIHj07xX61vOyqlBsJH3UbjkWvaewie1VP9IoiX2Ja/P2XCJw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.0.tgz", + "integrity": "sha512-Gz/gafubuM3L1D29LnqaxcGg16aa2XES/uFTFdcvrwsRpMxkLiowaUvIiWJfatf/oCyyZu5CT8SrlMy37dGc7A==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.0.tgz", + "integrity": "sha512-OGorpObKLm8XlhoJlxtdwECfnESXu3kd8mU1yZ5Xk0vmh0d2xoJjEXJi7y7mjFpc3+XfGQRgHq/gqyIkbufnvA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.0.tgz", + "integrity": "sha512-AwkJoff9D5Px7+lHafSSgDK3JreyeyPtwTsOfxhlk5NZ+bMGlvSfHkA6DKv9vD0gmGrBPTMv/uIePkNaVsDq7w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.0.tgz", + "integrity": "sha512-wqv7KSmRA4qf0lFZ2Abjp2boO9tDe7YwNLZ7DNUI5rsluS0/TF78CtPUUAePukgE6b2HcXYZYuL5F2yXdQIqIg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.0.tgz", + "integrity": "sha512-3qAZFC752nZZQOI+OG4KIawvLfdD5yMFCeIFz0OhedMpYgq9AOKygW45Ojy0E5upBqns2fUaMFk1CnNSkvJaYw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.0.tgz", + "integrity": "sha512-06BY4wjQQ2bPjayuvKWXr5X3V+ZGnoTOX1+doLoQBUSyCDb9JZgX7o0N3t3rRNmEiMY/DuxXwu+EE+U32B4ErA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.0.tgz", + "integrity": "sha512-uTLz9mPOMkl3bfuGnSQumrUN7U1aPb8MCOdjQJOWPGdXTZhkK6Z2lLHxdTjX6C51jxXWWAo64tcRwiAYOkQhJw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.0.tgz", + "integrity": "sha512-XT0oCVNRjmrMTz/Xd+9L2eOI83gUQZg9Viiv3cuT/8VNlXVMn6QsxyBMDNFsYX+wmQRD31VMKNtkZaXvS3/JiA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -5116,6 +5436,380 @@ "url": "https://opencollective.com/storybook" } }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/builder-manager/node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, "node_modules/@storybook/builder-manager/node_modules/fs-extra": { "version": "11.2.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", @@ -5678,6 +6372,342 @@ "url": "https://opencollective.com/storybook" } }, + "node_modules/@storybook/core-common/node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@storybook/core-common/node_modules/@storybook/channels": { "version": "8.0.10", "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-8.0.10.tgz", @@ -5767,6 +6797,44 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/@storybook/core-common/node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, "node_modules/@storybook/core-common/node_modules/fs-extra": { "version": "11.2.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", @@ -10883,9 +11951,9 @@ } }, "node_modules/esbuild": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", - "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.0.tgz", + "integrity": "sha512-eyK64lASNug3Wo2+bQEBnYngjh9rkXUfOus403+OeVZteMon6moIhcEYbrSvcgBN6RsrRWCMoWcKDDK6UEsTOQ==", "dev": true, "hasInstallScript": true, "bin": { @@ -10895,29 +11963,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.20.2", - "@esbuild/android-arm": "0.20.2", - "@esbuild/android-arm64": "0.20.2", - "@esbuild/android-x64": "0.20.2", - "@esbuild/darwin-arm64": "0.20.2", - "@esbuild/darwin-x64": "0.20.2", - "@esbuild/freebsd-arm64": "0.20.2", - "@esbuild/freebsd-x64": "0.20.2", - "@esbuild/linux-arm": "0.20.2", - "@esbuild/linux-arm64": "0.20.2", - "@esbuild/linux-ia32": "0.20.2", - "@esbuild/linux-loong64": "0.20.2", - "@esbuild/linux-mips64el": "0.20.2", - "@esbuild/linux-ppc64": "0.20.2", - "@esbuild/linux-riscv64": "0.20.2", - "@esbuild/linux-s390x": "0.20.2", - "@esbuild/linux-x64": "0.20.2", - "@esbuild/netbsd-x64": "0.20.2", - "@esbuild/openbsd-x64": "0.20.2", - "@esbuild/sunos-x64": "0.20.2", - "@esbuild/win32-arm64": "0.20.2", - "@esbuild/win32-ia32": "0.20.2", - "@esbuild/win32-x64": "0.20.2" + "@esbuild/aix-ppc64": "0.21.0", + "@esbuild/android-arm": "0.21.0", + "@esbuild/android-arm64": "0.21.0", + "@esbuild/android-x64": "0.21.0", + "@esbuild/darwin-arm64": "0.21.0", + "@esbuild/darwin-x64": "0.21.0", + "@esbuild/freebsd-arm64": "0.21.0", + "@esbuild/freebsd-x64": "0.21.0", + "@esbuild/linux-arm": "0.21.0", + "@esbuild/linux-arm64": "0.21.0", + "@esbuild/linux-ia32": "0.21.0", + "@esbuild/linux-loong64": "0.21.0", + "@esbuild/linux-mips64el": "0.21.0", + "@esbuild/linux-ppc64": "0.21.0", + "@esbuild/linux-riscv64": "0.21.0", + "@esbuild/linux-s390x": "0.21.0", + "@esbuild/linux-x64": "0.21.0", + "@esbuild/netbsd-x64": "0.21.0", + "@esbuild/openbsd-x64": "0.21.0", + "@esbuild/sunos-x64": "0.21.0", + "@esbuild/win32-arm64": "0.21.0", + "@esbuild/win32-ia32": "0.21.0", + "@esbuild/win32-x64": "0.21.0" } }, "node_modules/esbuild-plugin-alias": { @@ -10939,63 +12007,15 @@ "esbuild": ">=0.12 <1" } }, - "node_modules/esbuild/node_modules/@esbuild/android-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", - "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/android-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", - "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "node_modules/esbuild/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.0.tgz", + "integrity": "sha512-XMcLA6siz67AoEOl8WOot2Y3TOSClT15AqJdQz/sx98Dpv3oTbcv0BoqvHAhpBPgC8iyIKM98vVj6th7lA4DFg==", "cpu": [ "arm64" ], "dev": true, "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/android-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", - "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/darwin-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", - "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, "os": [ "darwin" ], @@ -11003,47 +12023,15 @@ "node": ">=12" } }, - "node_modules/esbuild/node_modules/@esbuild/freebsd-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", - "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "node_modules/esbuild/node_modules/@esbuild/linux-arm64": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.0.tgz", + "integrity": "sha512-mgOuJBbV8Uexb3BmeVl1q2preJMu0aDiwiFxIfsQhE2+rqxVAEcIrllb7SulkH9G244O/ZN1VVILdZb2NPSvpw==", "cpu": [ "arm64" ], "dev": true, "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/freebsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", - "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", - "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, "os": [ "linux" ], @@ -11051,214 +12039,6 @@ "node": ">=12" } }, - "node_modules/esbuild/node_modules/@esbuild/linux-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", - "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-loong64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", - "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-mips64el": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", - "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", - "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-riscv64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", - "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-s390x": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", - "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", - "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/netbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", - "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/openbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", - "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/sunos-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", - "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/win32-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", - "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/win32-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", - "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/win32-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", - "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, "node_modules/escalade": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", @@ -19664,6 +20444,402 @@ } } }, + "node_modules/vite/node_modules/@esbuild/aix-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", + "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", + "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/android-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", + "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/android-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", + "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/darwin-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", + "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", + "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/freebsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", + "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-arm": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", + "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", + "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-loong64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", + "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-mips64el": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", + "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-ppc64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", + "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-riscv64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", + "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-s390x": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", + "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/linux-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", + "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/netbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", + "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/openbsd-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", + "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/sunos-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", + "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", + "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-ia32": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", + "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/@esbuild/win32-x64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", + "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite/node_modules/esbuild": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", + "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", + "dev": true, + "hasInstallScript": true, + "peer": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.20.2", + "@esbuild/android-arm": "0.20.2", + "@esbuild/android-arm64": "0.20.2", + "@esbuild/android-x64": "0.20.2", + "@esbuild/darwin-arm64": "0.20.2", + "@esbuild/darwin-x64": "0.20.2", + "@esbuild/freebsd-arm64": "0.20.2", + "@esbuild/freebsd-x64": "0.20.2", + "@esbuild/linux-arm": "0.20.2", + "@esbuild/linux-arm64": "0.20.2", + "@esbuild/linux-ia32": "0.20.2", + "@esbuild/linux-loong64": "0.20.2", + "@esbuild/linux-mips64el": "0.20.2", + "@esbuild/linux-ppc64": "0.20.2", + "@esbuild/linux-riscv64": "0.20.2", + "@esbuild/linux-s390x": "0.20.2", + "@esbuild/linux-x64": "0.20.2", + "@esbuild/netbsd-x64": "0.20.2", + "@esbuild/openbsd-x64": "0.20.2", + "@esbuild/sunos-x64": "0.20.2", + "@esbuild/win32-arm64": "0.20.2", + "@esbuild/win32-ia32": "0.20.2", + "@esbuild/win32-x64": "0.20.2" + } + }, "node_modules/vscode-css-languageservice": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/vscode-css-languageservice/-/vscode-css-languageservice-4.3.0.tgz", diff --git a/web/package.json b/web/package.json index 48f29b05e0..e4c082f20e 100644 --- a/web/package.json +++ b/web/package.json @@ -100,7 +100,7 @@ "babel-plugin-tsconfig-paths": "^1.0.3", "chokidar": "^3.6.0", "cross-env": "^7.0.3", - "esbuild": "^0.20.2", + "esbuild": "^0.21.0", "eslint": "^8.57.0", "eslint-config-google": "^0.14.0", "eslint-plugin-custom-elements": "0.0.8", From a7a62b5005d4f6160382ff0eaa6853c926843295 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 12:18:41 +0200 Subject: [PATCH 37/42] ci: bump golangci/golangci-lint-action from 5 to 6 (#9615) Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 5 to 6. - [Release notes](https://github.com/golangci/golangci-lint-action/releases) - [Commits](https://github.com/golangci/golangci-lint-action/compare/v5...v6) --- updated-dependencies: - dependency-name: golangci/golangci-lint-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci-outpost.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-outpost.yml b/.github/workflows/ci-outpost.yml index 6530c7f895..07dcef599e 100644 --- a/.github/workflows/ci-outpost.yml +++ b/.github/workflows/ci-outpost.yml @@ -29,7 +29,7 @@ jobs: - name: Generate API run: make gen-client-go - name: golangci-lint - uses: golangci/golangci-lint-action@v5 + uses: golangci/golangci-lint-action@v6 with: version: v1.54.2 args: --timeout 5000s --verbose From 315cd40e6af5536ceaecbf8dca600bb387e7c198 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 12:20:40 +0200 Subject: [PATCH 38/42] translate: Updates for file locale/en/LC_MESSAGES/django.po in zh-Hans (#9563) Translate django.po in zh-Hans 100% translated source file: 'django.po' on 'zh-Hans'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- locale/zh-Hans/LC_MESSAGES/django.po | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/locale/zh-Hans/LC_MESSAGES/django.po b/locale/zh-Hans/LC_MESSAGES/django.po index 0b6f879b16..36a9bf26ea 100644 --- a/locale/zh-Hans/LC_MESSAGES/django.po +++ b/locale/zh-Hans/LC_MESSAGES/django.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-16 00:07+0000\n" +"POT-Creation-Date: 2024-05-03 00:08+0000\n" "PO-Revision-Date: 2022-09-26 16:47+0000\n" "Last-Translator: deluxghost, 2024\n" "Language-Team: Chinese Simplified (https://app.transifex.com/authentik/teams/119923/zh-Hans/)\n" @@ -379,6 +379,14 @@ msgstr "您即将登录 %(application)s。" msgid "Subject-alt name" msgstr "替代名称" +#: authentik/crypto/builder.py +msgid "rsa" +msgstr "rsa" + +#: authentik/crypto/builder.py +msgid "ecdsa" +msgstr "ecdsa" + #: authentik/crypto/models.py msgid "PEM-encoded Certificate data" msgstr "PEM 编码的证书数据" @@ -1580,6 +1588,22 @@ msgstr "RSA-SHA384" msgid "RSA-SHA512" msgstr "RSA-SHA512" +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA1" +msgstr "ECDSA-SHA1" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA256" +msgstr "ECDSA-SHA256" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA384" +msgstr "ECDSA-SHA384" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA512" +msgstr "ECDSA-SHA512" + #: authentik/providers/saml/models.py authentik/sources/saml/models.py msgid "DSA-SHA1" msgstr "DSA-SHA1" From 6560bf18a4c9158f6a832060fd8cb3efc51a1bb5 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 12:20:51 +0200 Subject: [PATCH 39/42] translate: Updates for file locale/en/LC_MESSAGES/django.po in zh_CN (#9560) Translate locale/en/LC_MESSAGES/django.po in zh_CN 100% translated source file: 'locale/en/LC_MESSAGES/django.po' on 'zh_CN'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- locale/zh_CN/LC_MESSAGES/django.po | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/locale/zh_CN/LC_MESSAGES/django.po b/locale/zh_CN/LC_MESSAGES/django.po index 10f1ee4ac2..e1f8601e9d 100644 --- a/locale/zh_CN/LC_MESSAGES/django.po +++ b/locale/zh_CN/LC_MESSAGES/django.po @@ -14,7 +14,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-16 00:07+0000\n" +"POT-Creation-Date: 2024-05-03 00:08+0000\n" "PO-Revision-Date: 2022-09-26 16:47+0000\n" "Last-Translator: deluxghost, 2024\n" "Language-Team: Chinese (China) (https://app.transifex.com/authentik/teams/119923/zh_CN/)\n" @@ -379,6 +379,14 @@ msgstr "您即将登录 %(application)s。" msgid "Subject-alt name" msgstr "替代名称" +#: authentik/crypto/builder.py +msgid "rsa" +msgstr "rsa" + +#: authentik/crypto/builder.py +msgid "ecdsa" +msgstr "ecdsa" + #: authentik/crypto/models.py msgid "PEM-encoded Certificate data" msgstr "PEM 编码的证书数据" @@ -1580,6 +1588,22 @@ msgstr "RSA-SHA384" msgid "RSA-SHA512" msgstr "RSA-SHA512" +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA1" +msgstr "ECDSA-SHA1" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA256" +msgstr "ECDSA-SHA256" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA384" +msgstr "ECDSA-SHA384" + +#: authentik/providers/saml/models.py authentik/sources/saml/models.py +msgid "ECDSA-SHA512" +msgstr "ECDSA-SHA512" + #: authentik/providers/saml/models.py authentik/sources/saml/models.py msgid "DSA-SHA1" msgstr "DSA-SHA1" From f52dec4b7e2d9f247a136280e930900bc59bd57b Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 12:21:07 +0200 Subject: [PATCH 40/42] translate: Updates for file locale/en/LC_MESSAGES/django.po in ru (#9611) * Translate locale/en/LC_MESSAGES/django.po in ru 100% translated source file: 'locale/en/LC_MESSAGES/django.po' on 'ru'. * Translate locale/en/LC_MESSAGES/django.po in ru 100% translated source file: 'locale/en/LC_MESSAGES/django.po' on 'ru'. * Translate locale/en/LC_MESSAGES/django.po in ru 100% translated source file: 'locale/en/LC_MESSAGES/django.po' on 'ru'. * Translate locale/en/LC_MESSAGES/django.po in ru 100% translated source file: 'locale/en/LC_MESSAGES/django.po' on 'ru'. * Translate locale/en/LC_MESSAGES/django.po in ru 100% translated source file: 'locale/en/LC_MESSAGES/django.po' on 'ru'. --------- Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- locale/ru/LC_MESSAGES/django.po | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/locale/ru/LC_MESSAGES/django.po b/locale/ru/LC_MESSAGES/django.po index 329494c5f6..b079748c65 100644 --- a/locale/ru/LC_MESSAGES/django.po +++ b/locale/ru/LC_MESSAGES/django.po @@ -2029,7 +2029,8 @@ msgstr "Ссылка авторизации" #: authentik/sources/oauth/models.py msgid "URL the user is redirect to to conest the flow." -msgstr "URL, на который перенаправляется пользователь для авторизации." +msgstr "" +"URL, на который пользователь перенаправляется для согласования потока." #: authentik/sources/oauth/models.py msgid "Access Token URL" @@ -2946,7 +2947,7 @@ msgstr "Неверный пароль" #: authentik/stages/prompt/models.py msgid "Text: Simple Text input" -msgstr "Текст: простой ввод текста" +msgstr "Текст: простой текстовый ввод" #: authentik/stages/prompt/models.py msgid "Text area: Multiline Text Input." @@ -2955,14 +2956,14 @@ msgstr "Текстовая область: Многострочный текст #: authentik/stages/prompt/models.py msgid "Text (read-only): Simple Text input, but cannot be edited." msgstr "" -"Текст (только для чтения): Простой ввод текста, который нельзя " +"Текст (только для чтения): Простой текстовый ввод, который нельзя " "редактировать." #: authentik/stages/prompt/models.py msgid "Text area (read-only): Multiline Text input, but cannot be edited." msgstr "" -"Текстовая область (только для чтения): Многострочный ввод текста, но не " -"может быть отредактирован." +"Текстовая область (только для чтения): Многострочный текстовый ввод, который" +" нельзя редактировать." #: authentik/stages/prompt/models.py msgid "" @@ -3176,7 +3177,7 @@ msgstr "" #: authentik/tenants/models.py msgid "Enable the ability for users to change their username." msgstr "" -"Включить возможность изменения пользователями своего имени пользователя" +"Включение возможности изменения пользователями своего имени пользователя" #: authentik/tenants/models.py msgid "" From a8697bf1ad3ed8964e3293916e0b54c5286e3758 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 May 2024 12:27:32 +0200 Subject: [PATCH 41/42] web: bump the esbuild group in /web with 2 updates (#9616) Bumps the esbuild group in /web with 2 updates: [@esbuild/darwin-arm64](https://github.com/evanw/esbuild) and [@esbuild/linux-arm64](https://github.com/evanw/esbuild). Updates `@esbuild/darwin-arm64` from 0.20.2 to 0.21.0 - [Release notes](https://github.com/evanw/esbuild/releases) - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md) - [Commits](https://github.com/evanw/esbuild/compare/v0.20.2...v0.21.0) Updates `@esbuild/linux-arm64` from 0.20.2 to 0.21.0 - [Release notes](https://github.com/evanw/esbuild/releases) - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md) - [Commits](https://github.com/evanw/esbuild/compare/v0.20.2...v0.21.0) --- updated-dependencies: - dependency-name: "@esbuild/darwin-arm64" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: esbuild - dependency-name: "@esbuild/linux-arm64" dependency-type: direct:production update-type: version-update:semver-minor dependency-group: esbuild ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- web/package-lock.json | 147 ++++++++++++++++++++++++++++++------------ web/package.json | 4 +- 2 files changed, 109 insertions(+), 42 deletions(-) diff --git a/web/package-lock.json b/web/package-lock.json index 1c669f5efa..d738081403 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -15,6 +15,7 @@ "@codemirror/lang-xml": "^6.1.0", "@codemirror/legacy-modes": "^6.4.0", "@codemirror/theme-one-dark": "^6.1.2", + "@esbuild/linux-arm64": "^0.21.0", "@formatjs/intl-listformat": "^7.5.5", "@fortawesome/fontawesome-free": "^6.5.2", "@goauthentik/api": "^2024.4.1-1714957644", @@ -108,9 +109,9 @@ "node": ">=20" }, "optionalDependencies": { - "@esbuild/darwin-arm64": "^0.20.1", + "@esbuild/darwin-arm64": "^0.21.0", "@esbuild/linux-amd64": "^0.18.11", - "@esbuild/linux-arm64": "^0.20.1", + "@esbuild/linux-arm64": "^0.21.0", "@rollup/rollup-darwin-arm64": "4.17.2", "@rollup/rollup-linux-arm64-gnu": "4.17.2", "@rollup/rollup-linux-x64-gnu": "4.17.2" @@ -2463,9 +2464,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", - "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.0.tgz", + "integrity": "sha512-XMcLA6siz67AoEOl8WOot2Y3TOSClT15AqJdQz/sx98Dpv3oTbcv0BoqvHAhpBPgC8iyIKM98vVj6th7lA4DFg==", "cpu": [ "arm64" ], @@ -2542,9 +2543,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", - "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.0.tgz", + "integrity": "sha512-mgOuJBbV8Uexb3BmeVl1q2preJMu0aDiwiFxIfsQhE2+rqxVAEcIrllb7SulkH9G244O/ZN1VVILdZb2NPSvpw==", "cpu": [ "arm64" ], @@ -5500,6 +5501,22 @@ "node": ">=12" } }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@storybook/builder-manager/node_modules/@esbuild/darwin-x64": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", @@ -5564,6 +5581,22 @@ "node": ">=12" } }, + "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@storybook/builder-manager/node_modules/@esbuild/linux-ia32": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", @@ -6436,6 +6469,22 @@ "node": ">=12" } }, + "node_modules/@storybook/core-common/node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@storybook/core-common/node_modules/@esbuild/darwin-x64": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", @@ -6500,6 +6549,22 @@ "node": ">=12" } }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@storybook/core-common/node_modules/@esbuild/linux-ia32": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", @@ -12007,38 +12072,6 @@ "esbuild": ">=0.12 <1" } }, - "node_modules/esbuild/node_modules/@esbuild/darwin-arm64": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.0.tgz", - "integrity": "sha512-XMcLA6siz67AoEOl8WOot2Y3TOSClT15AqJdQz/sx98Dpv3oTbcv0BoqvHAhpBPgC8iyIKM98vVj6th7lA4DFg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/esbuild/node_modules/@esbuild/linux-arm64": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.0.tgz", - "integrity": "sha512-mgOuJBbV8Uexb3BmeVl1q2preJMu0aDiwiFxIfsQhE2+rqxVAEcIrllb7SulkH9G244O/ZN1VVILdZb2NPSvpw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, "node_modules/escalade": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", @@ -20512,6 +20545,23 @@ "node": ">=12" } }, + "node_modules/vite/node_modules/@esbuild/darwin-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", + "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, "node_modules/vite/node_modules/@esbuild/darwin-x64": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", @@ -20580,6 +20630,23 @@ "node": ">=12" } }, + "node_modules/vite/node_modules/@esbuild/linux-arm64": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", + "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, "node_modules/vite/node_modules/@esbuild/linux-ia32": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", diff --git a/web/package.json b/web/package.json index e4c082f20e..ff21c40a1b 100644 --- a/web/package.json +++ b/web/package.json @@ -126,9 +126,9 @@ "vite-tsconfig-paths": "^4.3.2" }, "optionalDependencies": { - "@esbuild/darwin-arm64": "^0.20.1", + "@esbuild/darwin-arm64": "^0.21.0", "@esbuild/linux-amd64": "^0.18.11", - "@esbuild/linux-arm64": "^0.20.1", + "@esbuild/linux-arm64": "^0.21.0", "@rollup/rollup-darwin-arm64": "4.17.2", "@rollup/rollup-linux-arm64-gnu": "4.17.2", "@rollup/rollup-linux-x64-gnu": "4.17.2" From 619113e810b3af609ed3c7d33b81e8a02da62020 Mon Sep 17 00:00:00 2001 From: Jens L Date: Tue, 7 May 2024 16:22:24 +0200 Subject: [PATCH 42/42] website/docs: prepare 2024.4.2 release notes (#9555) Co-authored-by: Marc 'risson' Schmitt --- website/docs/releases/2024/v2024.4.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/website/docs/releases/2024/v2024.4.md b/website/docs/releases/2024/v2024.4.md index 118f2f4d25..3139f9ba9d 100644 --- a/website/docs/releases/2024/v2024.4.md +++ b/website/docs/releases/2024/v2024.4.md @@ -216,6 +216,25 @@ helm upgrade authentik authentik/authentik -f values.yaml --version ^2024.4 - web: Add resolved and integrity fields back to package-lock.json (cherry-pick #9419) (#9421) - web: markdown: display markdown even when frontmatter is missing (cherry-pick #9404) (#9405) +## Fixed in 2024.4.2 + +- core: fix source_flow_manager saving user-source connection too early (cherry-pick #9559) (#9578) +- core: fix task clean_expiring_models removing valid sessions with using database storage (cherry-pick #9598) (#9601) +- core: only prefetch related objects when required (cherry-pick #9476) (#9510) +- enterprise/audit: fix audit logging with m2m relations (cherry-pick #9571) (#9572) +- events: ensure all models' `__str__` can be called without any further lookups (cherry-pick #9480) (#9485) +- flows: fix execute API endpoint (cherry-pick #9478) (#9481) +- lifecycle: close database connection after migrating (cherry-pick #9516) (#9531) +- providers/saml: fix ECDSA support (cherry-pick #9537) (#9544) +- providers/scim: fix SCIM ID incorrectly used as primary key (cherry-pick #9557) (#9579) +- providers/scim: fix Sync task's time_limit not set correctly (cherry-pick #9546) (#9553) +- sources/oauth: fix OAuth2 Client sending token request incorrectly (cherry-pick #9474) (#9475) +- sources/scim: fix duplicate groups and invalid schema (cherry-pick #9466) (#9606) +- tenants: fix scheduled tasks not running on default tenant (cherry-pick #9583) (#9586) +- web/flows: fix error when enrolling multiple WebAuthn devices consecutively (cherry-pick #9545) (#9547) +- web/flows: fix missing fallback for flow logo (cherry-pick #9487) (#9492) +- web: Add missing integrity hashes to package-lock.json (#9527) + ## API Changes #### What's New

    l8c6P({*xmnTLT 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 Date: Mon, 6 May 2024 17:49:17 -0500 Subject: [PATCH 31/42] website/docs: move Sources from Integrations into Docs (#9515) * moved Sources form Integrations to Docs * files moved * fixed setting options * fixed broken links and added redirects * try single-sourcing Sources docs * tweaks * fighting links * still fighting links * fightng sidebar * fighting with sidebar * add logos and tweak * image tweaks * Optimised images with calibre/image-actions * added remaining UI definitions * kens edits --------- Co-authored-by: Tana M Berry Co-authored-by: authentik-automation[bot] <135050075+authentik-automation[bot]@users.noreply.github.com> --- .../developer-docs/docs/templates/index.md | 2 +- .../docs/flow/stages/identification/index.md | 4 +- website/docs/flow/stages/source/index.md | 6 +- website/docs/index.mdx | 4 +- website/docs/releases/2022/v2022.5.md | 2 +- website/docs/releases/2024/v2024.4.md | 4 +- .../active-directory/01_user_create.png | Bin .../sources/active-directory/02_delegate.png | Bin .../active-directory/03_additional_perms.png | Bin .../sources/active-directory/10_ak_status.png | Bin .../sources/active-directory/11_ak_stage.png | Bin .../sources/active-directory/index.md | 0 .../sources/apple/app_id.png | Bin .../sources/apple/app_service_config.png | Bin .../sources/apple/index.md | 0 .../sources/apple/key.png | Bin .../sources/apple/service_id.png | Bin .../sources/azure-ad/aad_01.png | Bin .../sources/azure-ad/authentik_01.png | Bin .../sources/azure-ad/index.md | 0 .../sources/discord/discord1.png | Bin .../sources/discord/discord2.png | Bin .../sources/discord/discord3.png | Bin .../sources/discord/discord4.png | Bin .../sources/discord/index.md | 0 .../sources/freeipa/01_user_create.png | Bin .../sources/freeipa/02_user_roles.png | Bin .../sources/freeipa/03_add_user_role.png | Bin .../sources/freeipa/04_source_settings_1.png | Bin .../sources/freeipa/05_source_settings_2.png | Bin .../sources/freeipa/06_sync_source.png | Bin .../sources/freeipa/07_password_stage.png | Bin .../sources/freeipa/index.md | 0 website/docs/sources/general.md | 16 +++++ .../sources/github/github_org_membership.png | Bin .../sources/github/githubdeveloper1.png | Bin .../sources/github/githubdeveloperexample.png | Bin .../sources/github/githubexample2.png | Bin .../sources/github/index.md | 0 .../sources/google/authentiksource.png | Bin .../sources/google/googledeveloper1.png | Bin .../sources/google/googledeveloper2.png | Bin .../sources/google/googledeveloper3.png | Bin .../sources/google/googledeveloper4.png | Bin .../sources/google/googledeveloper5.png | Bin .../sources/google/googledeveloper6.png | Bin .../sources/google/index.md | 0 .../sources/ldap/index.md | 61 ++++++++++++++---- .../sources/mailcow/index.md | 0 .../sources/mailcow/mailcow1.png | Bin .../sources/mailcow/mailcow2.png | Bin .../sources/mailcow/mailcow3.png | Bin .../sources/mailcow/mailcow4.png | Bin .../sources/mailcow/mailcow5.png | Bin .../sources/oauth/index.md | 4 -- .../sources/plex/index.md | 0 .../sources/saml/index.md | 0 .../sources/scim/index.md | 0 .../sources/twitch/index.md | 0 .../sources/twitch/twitch1.png | Bin .../sources/twitch/twitch2.png | Bin .../sources/twitch/twitch3.png | Bin .../sources/twitch/twitch4.png | Bin .../sources/twitch/twitch5.png | Bin .../sources/twitter/index.md | 0 .../sources/twitter/twitter1.png | Bin .../sources/twitter/twitter2.png | Bin website/integrations/apps-logo.png | Bin 0 -> 95811 bytes website/integrations/index.mdx | 20 ++++++ website/integrations/services/index.mdx | 9 +-- website/integrations/sources-logo.png | Bin 0 -> 32875 bytes website/integrations/sources/general.md | 16 ----- website/netlify.toml | 6 ++ website/sidebars.js | 46 ++++++++++++- website/sidebarsIntegrations.js | 52 ++------------- 75 files changed, 155 insertions(+), 97 deletions(-) rename website/{integrations => docs}/sources/active-directory/01_user_create.png (100%) rename website/{integrations => docs}/sources/active-directory/02_delegate.png (100%) rename website/{integrations => docs}/sources/active-directory/03_additional_perms.png (100%) rename website/{integrations => docs}/sources/active-directory/10_ak_status.png (100%) rename website/{integrations => docs}/sources/active-directory/11_ak_stage.png (100%) rename website/{integrations => docs}/sources/active-directory/index.md (100%) rename website/{integrations => docs}/sources/apple/app_id.png (100%) rename website/{integrations => docs}/sources/apple/app_service_config.png (100%) rename website/{integrations => docs}/sources/apple/index.md (100%) rename website/{integrations => docs}/sources/apple/key.png (100%) rename website/{integrations => docs}/sources/apple/service_id.png (100%) rename website/{integrations => docs}/sources/azure-ad/aad_01.png (100%) rename website/{integrations => docs}/sources/azure-ad/authentik_01.png (100%) rename website/{integrations => docs}/sources/azure-ad/index.md (100%) rename website/{integrations => docs}/sources/discord/discord1.png (100%) rename website/{integrations => docs}/sources/discord/discord2.png (100%) rename website/{integrations => docs}/sources/discord/discord3.png (100%) rename website/{integrations => docs}/sources/discord/discord4.png (100%) rename website/{integrations => docs}/sources/discord/index.md (100%) rename website/{integrations => docs}/sources/freeipa/01_user_create.png (100%) rename website/{integrations => docs}/sources/freeipa/02_user_roles.png (100%) rename website/{integrations => docs}/sources/freeipa/03_add_user_role.png (100%) rename website/{integrations => docs}/sources/freeipa/04_source_settings_1.png (100%) rename website/{integrations => docs}/sources/freeipa/05_source_settings_2.png (100%) rename website/{integrations => docs}/sources/freeipa/06_sync_source.png (100%) rename website/{integrations => docs}/sources/freeipa/07_password_stage.png (100%) rename website/{integrations => docs}/sources/freeipa/index.md (100%) create mode 100644 website/docs/sources/general.md rename website/{integrations => docs}/sources/github/github_org_membership.png (100%) rename website/{integrations => docs}/sources/github/githubdeveloper1.png (100%) rename website/{integrations => docs}/sources/github/githubdeveloperexample.png (100%) rename website/{integrations => docs}/sources/github/githubexample2.png (100%) rename website/{integrations => docs}/sources/github/index.md (100%) rename website/{integrations => docs}/sources/google/authentiksource.png (100%) rename website/{integrations => docs}/sources/google/googledeveloper1.png (100%) rename website/{integrations => docs}/sources/google/googledeveloper2.png (100%) rename website/{integrations => docs}/sources/google/googledeveloper3.png (100%) rename website/{integrations => docs}/sources/google/googledeveloper4.png (100%) rename website/{integrations => docs}/sources/google/googledeveloper5.png (100%) rename website/{integrations => docs}/sources/google/googledeveloper6.png (100%) rename website/{integrations => docs}/sources/google/index.md (100%) rename website/{integrations => docs}/sources/ldap/index.md (50%) rename website/{integrations => docs}/sources/mailcow/index.md (100%) rename website/{integrations => docs}/sources/mailcow/mailcow1.png (100%) rename website/{integrations => docs}/sources/mailcow/mailcow2.png (100%) rename website/{integrations => docs}/sources/mailcow/mailcow3.png (100%) rename website/{integrations => docs}/sources/mailcow/mailcow4.png (100%) rename website/{integrations => docs}/sources/mailcow/mailcow5.png (100%) rename website/{integrations => docs}/sources/oauth/index.md (96%) rename website/{integrations => docs}/sources/plex/index.md (100%) rename website/{integrations => docs}/sources/saml/index.md (100%) rename website/{integrations => docs}/sources/scim/index.md (100%) rename website/{integrations => docs}/sources/twitch/index.md (100%) rename website/{integrations => docs}/sources/twitch/twitch1.png (100%) rename website/{integrations => docs}/sources/twitch/twitch2.png (100%) rename website/{integrations => docs}/sources/twitch/twitch3.png (100%) rename website/{integrations => docs}/sources/twitch/twitch4.png (100%) rename website/{integrations => docs}/sources/twitch/twitch5.png (100%) rename website/{integrations => docs}/sources/twitter/index.md (100%) rename website/{integrations => docs}/sources/twitter/twitter1.png (100%) rename website/{integrations => docs}/sources/twitter/twitter2.png (100%) create mode 100644 website/integrations/apps-logo.png create mode 100644 website/integrations/index.mdx create mode 100644 website/integrations/sources-logo.png delete mode 100644 website/integrations/sources/general.md diff --git a/website/developer-docs/docs/templates/index.md b/website/developer-docs/docs/templates/index.md index 7502095772..7f157a2840 100644 --- a/website/developer-docs/docs/templates/index.md +++ b/website/developer-docs/docs/templates/index.md @@ -16,7 +16,7 @@ The most common types are: ### Add a new integration -To add documentation for a new [integration](../../../integrations/) (with support level Community or Vendor), please use the integration template [`service.md`](https://github.com/goauthentik/authentik/blob/main/website/integrations/_template/service.md) file from our GitHub repo. You can download the template file using the following command: +To add documentation for a new integration (with support level Community or Vendor), please use the integration template [`service.md`](https://github.com/goauthentik/authentik/blob/main/website/integrations/_template/service.md) file from our GitHub repo. You can download the template file using the following command: ```shell wget https://raw.githubusercontent.com/goauthentik/authentik/main/website/integrations/_template/service.md diff --git a/website/docs/flow/stages/identification/index.md b/website/docs/flow/stages/identification/index.md index 5c0046f376..ad05f23901 100644 --- a/website/docs/flow/stages/identification/index.md +++ b/website/docs/flow/stages/identification/index.md @@ -12,7 +12,7 @@ Select which fields the user can use to identify themselves. Multiple fields can - Email - UPN - UPN will attempt to identify the user based on the `upn` attribute, which can be imported with an [LDAP Source](/integrations/sources/ldap/) + UPN will attempt to identify the user based on the `upn` attribute, which can be imported with an [LDAP Source](/docs/sources/ldap/) ## Password stage @@ -32,7 +32,7 @@ When enabled, any user identifier will be accepted as valid (as long as they mat ## Source settings -Some sources (like the [OAuth Source](../../../../integrations/sources/oauth/) and [SAML Source](../../../../integrations/sources/saml/)) require user interaction. To make these sources available to users, they can be selected in the Identification stage settings, which will show them below the selected [user field](#user-fields). +Some sources (like the [OAuth Source](../../../../docs/sources/oauth/) and [SAML Source](../../../../docs/sources/saml/)) require user interaction. To make these sources available to users, they can be selected in the Identification stage settings, which will show them below the selected [user field](#user-fields). By default, sources are only shown with their icon, which can be changed with the _Show sources' labels_ option. diff --git a/website/docs/flow/stages/source/index.md b/website/docs/flow/stages/source/index.md index 0a7bfbf21c..e9fe848abb 100644 --- a/website/docs/flow/stages/source/index.md +++ b/website/docs/flow/stages/source/index.md @@ -7,7 +7,7 @@ title: Source stage --- -The source stage injects an [OAuth](../../../../integrations/sources/oauth/) or [SAML](../../../../integrations/sources/saml/) Source into the flow execution. This allows for additional user verification, or to dynamically access different sources for different user identifiers (username, email address, etc). +The source stage injects an [OAuth](../../../../docs/sources/oauth/) or [SAML](../../../../docs/sources/saml/) Source into the flow execution. This allows for additional user verification, or to dynamically access different sources for different user identifiers (username, email address, etc). ```mermaid sequenceDiagram @@ -44,13 +44,13 @@ This stage can be used to leverage an external OAuth/SAML identity provider. For example, you can authenticate users by routing them through a custom device-health solution. -Another use case is to route users to authenticate with your legacy (Okta, etc) IdP and then use the returned identity and attributes within authentik as part of an authorization flow, for example as part of an IdP migration. For authentication/enrollment this is also possible with an [OAuth](../../../../integrations/sources/oauth/)/[SAML](../../../../integrations/sources/saml/) source by itself. +Another use case is to route users to authenticate with your legacy (Okta, etc) IdP and then use the returned identity and attributes within authentik as part of an authorization flow, for example as part of an IdP migration. For authentication/enrollment this is also possible with an [OAuth](../../../../docs/sources/oauth/)/[SAML](../../../../docs/sources/saml/) source by itself. ### Options #### Source -The source the user is redirected to. Must be a web-based source, such as [OAuth](../../../../integrations/sources/oauth/) or [SAML](../../../../integrations/sources/saml/). Sources like [LDAP](../../../../integrations/sources/ldap/) are _not_ compatible. +The source the user is redirected to. Must be a web-based source, such as [OAuth](../../../../docs/sources/oauth/) or [SAML](../../../../docs/sources/saml/). Sources like [LDAP](../../../../docs/sources/ldap/) are _not_ compatible. #### Resume timeout diff --git a/website/docs/index.mdx b/website/docs/index.mdx index f855c1806d..75539721d0 100755 --- a/website/docs/index.mdx +++ b/website/docs/index.mdx @@ -3,11 +3,11 @@ title: Welcome to authentik slug: / --- -## About authentik technical documentation +## About authentik documentation Our tech docs cover the typical topics, from installation to configuration, adding providers, defining policies and creating login flows, event monitoring, security, and attributes. [Enterprise](./enterprise/index.md) version documentation is included here, within our standard tech docs. -- For information about integrating a specific application or software into authentik, refer to our [Integrations](../integrations) section, accessible from the top menu bar. +- For information about integrating a specific application or software into authentik, refer to our Integrations section, accessible from the top menu bar. - For developer-focused documentation, such as using our APIs and blueprints, setting up your development environment, translations, or how to contribute, refer to the [Developer](../developer-docs) area, accessible from the top menu bar. diff --git a/website/docs/releases/2022/v2022.5.md b/website/docs/releases/2022/v2022.5.md index 5b7ca6c2f8..f218259fc1 100644 --- a/website/docs/releases/2022/v2022.5.md +++ b/website/docs/releases/2022/v2022.5.md @@ -7,7 +7,7 @@ slug: "/releases/2022.5" - Twitter Source has been migrated to OAuth2 - This requires some reconfiguration on both Twitter's and authentik's side. Check out the new Twitter integration docs [here](../../integrations/sources/twitter/) + This requires some reconfiguration on both Twitter's and authentik's side. Check out the new Twitter integration docs [here](../../docs/sources/twitter/) - OAuth Provider: Redirect URIs are now checked using regular expressions diff --git a/website/docs/releases/2024/v2024.4.md b/website/docs/releases/2024/v2024.4.md index ab38dab3ea..118f2f4d25 100644 --- a/website/docs/releases/2024/v2024.4.md +++ b/website/docs/releases/2024/v2024.4.md @@ -37,7 +37,7 @@ slug: /releases/2024.4 Provision users and groups in authentik using an SCIM API. - For details refer to [SCIM Source](../../../integrations/sources/scim/) + For details refer to [SCIM Source](../../../docs/sources/scim/) - **Configurable WebAuthn device restrictions** @@ -57,7 +57,7 @@ slug: /releases/2024.4 When authentik is configured to federate with an LDAP source, upon authentication, authentik hashed the password and stored it in its own database. This allows authentication to function when LDAP is unreachable. Admins can now configure this behavior for when this is not desirable. - For details refer to [LDAP Source](../../../integrations/sources/ldap/) + For details refer to [LDAP Source](../../../docs/sources/ldap/) - **Configurable app password token expiring** diff --git a/website/integrations/sources/active-directory/01_user_create.png b/website/docs/sources/active-directory/01_user_create.png similarity index 100% rename from website/integrations/sources/active-directory/01_user_create.png rename to website/docs/sources/active-directory/01_user_create.png diff --git a/website/integrations/sources/active-directory/02_delegate.png b/website/docs/sources/active-directory/02_delegate.png similarity index 100% rename from website/integrations/sources/active-directory/02_delegate.png rename to website/docs/sources/active-directory/02_delegate.png diff --git a/website/integrations/sources/active-directory/03_additional_perms.png b/website/docs/sources/active-directory/03_additional_perms.png similarity index 100% rename from website/integrations/sources/active-directory/03_additional_perms.png rename to website/docs/sources/active-directory/03_additional_perms.png diff --git a/website/integrations/sources/active-directory/10_ak_status.png b/website/docs/sources/active-directory/10_ak_status.png similarity index 100% rename from website/integrations/sources/active-directory/10_ak_status.png rename to website/docs/sources/active-directory/10_ak_status.png diff --git a/website/integrations/sources/active-directory/11_ak_stage.png b/website/docs/sources/active-directory/11_ak_stage.png similarity index 100% rename from website/integrations/sources/active-directory/11_ak_stage.png rename to website/docs/sources/active-directory/11_ak_stage.png diff --git a/website/integrations/sources/active-directory/index.md b/website/docs/sources/active-directory/index.md similarity index 100% rename from website/integrations/sources/active-directory/index.md rename to website/docs/sources/active-directory/index.md diff --git a/website/integrations/sources/apple/app_id.png b/website/docs/sources/apple/app_id.png similarity index 100% rename from website/integrations/sources/apple/app_id.png rename to website/docs/sources/apple/app_id.png diff --git a/website/integrations/sources/apple/app_service_config.png b/website/docs/sources/apple/app_service_config.png similarity index 100% rename from website/integrations/sources/apple/app_service_config.png rename to website/docs/sources/apple/app_service_config.png diff --git a/website/integrations/sources/apple/index.md b/website/docs/sources/apple/index.md similarity index 100% rename from website/integrations/sources/apple/index.md rename to website/docs/sources/apple/index.md diff --git a/website/integrations/sources/apple/key.png b/website/docs/sources/apple/key.png similarity index 100% rename from website/integrations/sources/apple/key.png rename to website/docs/sources/apple/key.png diff --git a/website/integrations/sources/apple/service_id.png b/website/docs/sources/apple/service_id.png similarity index 100% rename from website/integrations/sources/apple/service_id.png rename to website/docs/sources/apple/service_id.png diff --git a/website/integrations/sources/azure-ad/aad_01.png b/website/docs/sources/azure-ad/aad_01.png similarity index 100% rename from website/integrations/sources/azure-ad/aad_01.png rename to website/docs/sources/azure-ad/aad_01.png diff --git a/website/integrations/sources/azure-ad/authentik_01.png b/website/docs/sources/azure-ad/authentik_01.png similarity index 100% rename from website/integrations/sources/azure-ad/authentik_01.png rename to website/docs/sources/azure-ad/authentik_01.png diff --git a/website/integrations/sources/azure-ad/index.md b/website/docs/sources/azure-ad/index.md similarity index 100% rename from website/integrations/sources/azure-ad/index.md rename to website/docs/sources/azure-ad/index.md diff --git a/website/integrations/sources/discord/discord1.png b/website/docs/sources/discord/discord1.png similarity index 100% rename from website/integrations/sources/discord/discord1.png rename to website/docs/sources/discord/discord1.png diff --git a/website/integrations/sources/discord/discord2.png b/website/docs/sources/discord/discord2.png similarity index 100% rename from website/integrations/sources/discord/discord2.png rename to website/docs/sources/discord/discord2.png diff --git a/website/integrations/sources/discord/discord3.png b/website/docs/sources/discord/discord3.png similarity index 100% rename from website/integrations/sources/discord/discord3.png rename to website/docs/sources/discord/discord3.png diff --git a/website/integrations/sources/discord/discord4.png b/website/docs/sources/discord/discord4.png similarity index 100% rename from website/integrations/sources/discord/discord4.png rename to website/docs/sources/discord/discord4.png diff --git a/website/integrations/sources/discord/index.md b/website/docs/sources/discord/index.md similarity index 100% rename from website/integrations/sources/discord/index.md rename to website/docs/sources/discord/index.md diff --git a/website/integrations/sources/freeipa/01_user_create.png b/website/docs/sources/freeipa/01_user_create.png similarity index 100% rename from website/integrations/sources/freeipa/01_user_create.png rename to website/docs/sources/freeipa/01_user_create.png diff --git a/website/integrations/sources/freeipa/02_user_roles.png b/website/docs/sources/freeipa/02_user_roles.png similarity index 100% rename from website/integrations/sources/freeipa/02_user_roles.png rename to website/docs/sources/freeipa/02_user_roles.png diff --git a/website/integrations/sources/freeipa/03_add_user_role.png b/website/docs/sources/freeipa/03_add_user_role.png similarity index 100% rename from website/integrations/sources/freeipa/03_add_user_role.png rename to website/docs/sources/freeipa/03_add_user_role.png diff --git a/website/integrations/sources/freeipa/04_source_settings_1.png b/website/docs/sources/freeipa/04_source_settings_1.png similarity index 100% rename from website/integrations/sources/freeipa/04_source_settings_1.png rename to website/docs/sources/freeipa/04_source_settings_1.png diff --git a/website/integrations/sources/freeipa/05_source_settings_2.png b/website/docs/sources/freeipa/05_source_settings_2.png similarity index 100% rename from website/integrations/sources/freeipa/05_source_settings_2.png rename to website/docs/sources/freeipa/05_source_settings_2.png diff --git a/website/integrations/sources/freeipa/06_sync_source.png b/website/docs/sources/freeipa/06_sync_source.png similarity index 100% rename from website/integrations/sources/freeipa/06_sync_source.png rename to website/docs/sources/freeipa/06_sync_source.png diff --git a/website/integrations/sources/freeipa/07_password_stage.png b/website/docs/sources/freeipa/07_password_stage.png similarity index 100% rename from website/integrations/sources/freeipa/07_password_stage.png rename to website/docs/sources/freeipa/07_password_stage.png diff --git a/website/integrations/sources/freeipa/index.md b/website/docs/sources/freeipa/index.md similarity index 100% rename from website/integrations/sources/freeipa/index.md rename to website/docs/sources/freeipa/index.md diff --git a/website/docs/sources/general.md b/website/docs/sources/general.md new file mode 100644 index 0000000000..3f76be7add --- /dev/null +++ b/website/docs/sources/general.md @@ -0,0 +1,16 @@ +--- +title: Overview of sources +slug: general +--- + +Sources allow you to connect authentik to an external user directory. Sources can also be used with social login providers such as Facebook, Twitter, or GitHub. + +### Add Sources to Default Login Page + +To have sources show on the default login screen you will need to add them. The process below assumes that you have not created or renamed the default stages and flows. + +1. In the Admin interface, navigate to the **Flows** section. +2. Click on **default-authentication-flow**. +3. Click the **Stage Bindings** tab. +4. Chose **Edit Stage** for the _default-authentication-identification_ stage. +5. Under **Sources** you should see the additional sources that you have configured. Click all applicable sources to have them displayed on the Login page. diff --git a/website/integrations/sources/github/github_org_membership.png b/website/docs/sources/github/github_org_membership.png similarity index 100% rename from website/integrations/sources/github/github_org_membership.png rename to website/docs/sources/github/github_org_membership.png diff --git a/website/integrations/sources/github/githubdeveloper1.png b/website/docs/sources/github/githubdeveloper1.png similarity index 100% rename from website/integrations/sources/github/githubdeveloper1.png rename to website/docs/sources/github/githubdeveloper1.png diff --git a/website/integrations/sources/github/githubdeveloperexample.png b/website/docs/sources/github/githubdeveloperexample.png similarity index 100% rename from website/integrations/sources/github/githubdeveloperexample.png rename to website/docs/sources/github/githubdeveloperexample.png diff --git a/website/integrations/sources/github/githubexample2.png b/website/docs/sources/github/githubexample2.png similarity index 100% rename from website/integrations/sources/github/githubexample2.png rename to website/docs/sources/github/githubexample2.png diff --git a/website/integrations/sources/github/index.md b/website/docs/sources/github/index.md similarity index 100% rename from website/integrations/sources/github/index.md rename to website/docs/sources/github/index.md diff --git a/website/integrations/sources/google/authentiksource.png b/website/docs/sources/google/authentiksource.png similarity index 100% rename from website/integrations/sources/google/authentiksource.png rename to website/docs/sources/google/authentiksource.png diff --git a/website/integrations/sources/google/googledeveloper1.png b/website/docs/sources/google/googledeveloper1.png similarity index 100% rename from website/integrations/sources/google/googledeveloper1.png rename to website/docs/sources/google/googledeveloper1.png diff --git a/website/integrations/sources/google/googledeveloper2.png b/website/docs/sources/google/googledeveloper2.png similarity index 100% rename from website/integrations/sources/google/googledeveloper2.png rename to website/docs/sources/google/googledeveloper2.png diff --git a/website/integrations/sources/google/googledeveloper3.png b/website/docs/sources/google/googledeveloper3.png similarity index 100% rename from website/integrations/sources/google/googledeveloper3.png rename to website/docs/sources/google/googledeveloper3.png diff --git a/website/integrations/sources/google/googledeveloper4.png b/website/docs/sources/google/googledeveloper4.png similarity index 100% rename from website/integrations/sources/google/googledeveloper4.png rename to website/docs/sources/google/googledeveloper4.png diff --git a/website/integrations/sources/google/googledeveloper5.png b/website/docs/sources/google/googledeveloper5.png similarity index 100% rename from website/integrations/sources/google/googledeveloper5.png rename to website/docs/sources/google/googledeveloper5.png diff --git a/website/integrations/sources/google/googledeveloper6.png b/website/docs/sources/google/googledeveloper6.png similarity index 100% rename from website/integrations/sources/google/googledeveloper6.png rename to website/docs/sources/google/googledeveloper6.png diff --git a/website/integrations/sources/google/index.md b/website/docs/sources/google/index.md similarity index 100% rename from website/integrations/sources/google/index.md rename to website/docs/sources/google/index.md diff --git a/website/integrations/sources/ldap/index.md b/website/docs/sources/ldap/index.md similarity index 50% rename from website/integrations/sources/ldap/index.md rename to website/docs/sources/ldap/index.md index ed7e66afc8..1f87aae2f1 100644 --- a/website/integrations/sources/ldap/index.md +++ b/website/docs/sources/ldap/index.md @@ -2,9 +2,7 @@ title: LDAP Source --- -Sources allow you to connect authentik to an existing user directory. They can also be used for social logins, using external providers such as Facebook, Twitter, etc. - -This source allows you to import users and groups from an LDAP Server. +Sources allow you to connect authentik to an existing user directory. This source allows you to import users and groups from an LDAP Server. :::info For Active Directory, follow the [Active Directory Integration](../active-directory/) @@ -12,31 +10,66 @@ For Active Directory, follow the [Active Directory Integration](../active-direct For FreeIPA, follow the [FreeIPA Integration](../freeipa/) ::: -- **Server URI**: URI to your LDAP server/Domain Controller. +## Configuration options for LDAP sources - You can specify multiple servers by separating URIs with a comma, like `ldap://ldap1.company,ldap://ldap2.company`. +To create or edit a source in authentik, open the Admin interface and navigate to **Directory -> Ferderation and Social login**. There you can create a new LDAP source, or edit an existing one, using the following settings. - When using a DNS entry with multiple Records, authentik will select a random entry when first connecting. +- **Enabled**: Toggle this option on to allow authentik to use the defined LDAP source. + +- **Update internal password on login**: When the user logs in to authentik using the LDAP password backend, the password is stored as a hashed value in authentik. Toggle off (default setting) if you do not want to store the hashed passwords in authentik. + +- **Synch User**: Enable or disable user synchronization between authentik and the LDAP source. + +- **User password writeback**: Enable this option if you want to write password changes that are made in authentik back to LDAP. + +- **Synch groups**: Enable/disable group synchronization. Groups are synced in the background every 5 minutes. + +- **Sync parent group**: Optionally set this group as the parent group for all synced groups. An example use case of this would be to import Active Directory groups under a root `imported-from-ad` group. + +#### Connection settings + +- **Server URI**: URI to your LDAP server/Domain Controller. You can specify multiple servers by separating URIs with a comma, like `ldap://ldap1.company,ldap://ldap2.company`. When using a DNS entry with multiple Records, authentik will select a random entry when first connecting. + + - **Enable StartTLS**: Enables StartTLS functionality. To use LDAPS instead, use port `636`. + - **Use Server URI for SNI verification**: this setting is required for servers using TLS 1.3+ + +- **TLS Verification Certificate**: Specify a keypair to validate the remote certificate. + +- **TLS Client authentication**: Client certificate keypair to authenticate against the LDAP Server's Certificate. - **Bind CN**: CN of the bind user. This can also be a UPN in the format of `user@domain.tld`. + - **Bind password**: Password used during the bind process. -- **Enable StartTLS**: Enables StartTLS functionality. To use LDAPS instead, use port `636`. -- **Base DN**: Base DN used for all LDAP queries. + +- **Base DN**: Base DN (distinguished name) used for all LDAP queries. + +#### LDAP Attribute mapping + +- **User Property mappings** and **Group Property Mappings**: Define which LDAP properties map to which authentik properties. The default set of property mappings is generated for Active Directory. See also [LDAP Property Mappings](../../../docs/property-mappings/#ldap-property-mapping). + +#### Additional Settings + +- **Group**: Parent group for all the groups imported from LDAP. + +- **User path**: Path template for all new users created. + - **Addition User DN**: Prepended to the base DN for user queries. + - **Addition Group DN**: Prepended to the base DN for group queries. + - **User object filter**: Consider objects matching this filter to be users. + - **Group object filter**: Consider objects matching this filter to be groups. -- **User group membership field**: This field contains the user's group memberships. + +- **Group membership field**: This field contains the user's group memberships. + - **Object uniqueness field**: This field contains a unique identifier. -- **Sync groups**: Enable/disable group synchronization. Groups are synced in the background every 5 minutes. -- **Sync parent group**: Optionally set this group as the parent group for all synced groups. An example use case of this would be to import Active Directory groups under a root `imported-from-ad` group. -- **Property mappings** and **Group Property Mappings**: Define which LDAP properties map to which authentik properties. The default set of property mappings is generated for Active Directory. See also [LDAP Property Mappings](../../../docs/property-mappings/#ldap-property-mapping) ## Property mappings LDAP property mappings can be used to convert the raw LDAP response into an authentik user/group. -By default, authentik ships with some pre-configured mappings for the most common LDAP setups. +By default, authentik ships with [pre-configured mappings](../../property-mappings/index.md#ldap-property-mapping) for the most common LDAP setups. These mappings can be found on the LDAP Source Configuration page in the Admin interface. You can assign the value of a mapping to any user attribute, or save it as a custom attribute by prefixing the object field with `attribute.` Keep in mind though, data types from the LDAP server will be carried over. This means that with some implementations, where fields are stored as array in LDAP, they will be saved as array in authentik. To prevent this, use the built-in `list_flatten` function. @@ -56,4 +89,4 @@ Be aware of the following security considerations when turning on this functiona ## Troubleshooting -To troubleshoot LDAP sources and their synchronization, see [LDAP Troubleshooting](../../../docs/troubleshooting/ldap_source) +To troubleshoot LDAP sources and their synchronization, see [LDAP Troubleshooting](../../../docs/troubleshooting/ldap_source). diff --git a/website/integrations/sources/mailcow/index.md b/website/docs/sources/mailcow/index.md similarity index 100% rename from website/integrations/sources/mailcow/index.md rename to website/docs/sources/mailcow/index.md diff --git a/website/integrations/sources/mailcow/mailcow1.png b/website/docs/sources/mailcow/mailcow1.png similarity index 100% rename from website/integrations/sources/mailcow/mailcow1.png rename to website/docs/sources/mailcow/mailcow1.png diff --git a/website/integrations/sources/mailcow/mailcow2.png b/website/docs/sources/mailcow/mailcow2.png similarity index 100% rename from website/integrations/sources/mailcow/mailcow2.png rename to website/docs/sources/mailcow/mailcow2.png diff --git a/website/integrations/sources/mailcow/mailcow3.png b/website/docs/sources/mailcow/mailcow3.png similarity index 100% rename from website/integrations/sources/mailcow/mailcow3.png rename to website/docs/sources/mailcow/mailcow3.png diff --git a/website/integrations/sources/mailcow/mailcow4.png b/website/docs/sources/mailcow/mailcow4.png similarity index 100% rename from website/integrations/sources/mailcow/mailcow4.png rename to website/docs/sources/mailcow/mailcow4.png diff --git a/website/integrations/sources/mailcow/mailcow5.png b/website/docs/sources/mailcow/mailcow5.png similarity index 100% rename from website/integrations/sources/mailcow/mailcow5.png rename to website/docs/sources/mailcow/mailcow5.png diff --git a/website/integrations/sources/oauth/index.md b/website/docs/sources/oauth/index.md similarity index 96% rename from website/integrations/sources/oauth/index.md rename to website/docs/sources/oauth/index.md index 34c7e29ca1..12aec5bc07 100644 --- a/website/integrations/sources/oauth/index.md +++ b/website/docs/sources/oauth/index.md @@ -2,10 +2,6 @@ title: OAuth Source --- -:::note -All Integration-specific Sources are documented in the Integrations Section -::: - This source allows users to enroll themselves with an external OAuth-based Identity Provider. The generic provider expects the endpoint to return OpenID-Connect compatible information. Vendor-specific implementations have their own OAuth Source. - Policies: Allow/Forbid users from linking their accounts with this provider. diff --git a/website/integrations/sources/plex/index.md b/website/docs/sources/plex/index.md similarity index 100% rename from website/integrations/sources/plex/index.md rename to website/docs/sources/plex/index.md diff --git a/website/integrations/sources/saml/index.md b/website/docs/sources/saml/index.md similarity index 100% rename from website/integrations/sources/saml/index.md rename to website/docs/sources/saml/index.md diff --git a/website/integrations/sources/scim/index.md b/website/docs/sources/scim/index.md similarity index 100% rename from website/integrations/sources/scim/index.md rename to website/docs/sources/scim/index.md diff --git a/website/integrations/sources/twitch/index.md b/website/docs/sources/twitch/index.md similarity index 100% rename from website/integrations/sources/twitch/index.md rename to website/docs/sources/twitch/index.md diff --git a/website/integrations/sources/twitch/twitch1.png b/website/docs/sources/twitch/twitch1.png similarity index 100% rename from website/integrations/sources/twitch/twitch1.png rename to website/docs/sources/twitch/twitch1.png diff --git a/website/integrations/sources/twitch/twitch2.png b/website/docs/sources/twitch/twitch2.png similarity index 100% rename from website/integrations/sources/twitch/twitch2.png rename to website/docs/sources/twitch/twitch2.png diff --git a/website/integrations/sources/twitch/twitch3.png b/website/docs/sources/twitch/twitch3.png similarity index 100% rename from website/integrations/sources/twitch/twitch3.png rename to website/docs/sources/twitch/twitch3.png diff --git a/website/integrations/sources/twitch/twitch4.png b/website/docs/sources/twitch/twitch4.png similarity index 100% rename from website/integrations/sources/twitch/twitch4.png rename to website/docs/sources/twitch/twitch4.png diff --git a/website/integrations/sources/twitch/twitch5.png b/website/docs/sources/twitch/twitch5.png similarity index 100% rename from website/integrations/sources/twitch/twitch5.png rename to website/docs/sources/twitch/twitch5.png diff --git a/website/integrations/sources/twitter/index.md b/website/docs/sources/twitter/index.md similarity index 100% rename from website/integrations/sources/twitter/index.md rename to website/docs/sources/twitter/index.md diff --git a/website/integrations/sources/twitter/twitter1.png b/website/docs/sources/twitter/twitter1.png similarity index 100% rename from website/integrations/sources/twitter/twitter1.png rename to website/docs/sources/twitter/twitter1.png diff --git a/website/integrations/sources/twitter/twitter2.png b/website/docs/sources/twitter/twitter2.png similarity index 100% rename from website/integrations/sources/twitter/twitter2.png rename to website/docs/sources/twitter/twitter2.png diff --git a/website/integrations/apps-logo.png b/website/integrations/apps-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..cc0ba49b1372a3d01bc5a0282f931ddf60c7fca2 GIT binary patch literal 95811 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

${key}
-
-${JSON.stringify(diff[key].previous_value, null, 4)}
-
-
${JSON.stringify(diff[key].new_value, null, 4)}
+
${previousCol}
${newCol}