website: Docusaurus 3.9.2 (#18506)

This commit is contained in:
Teffen Ellis
2025-12-02 20:17:52 +01:00
committed by GitHub
parent 324a6de47c
commit 1474c65e11
17 changed files with 1258 additions and 1404 deletions

View File

@@ -1,4 +1,4 @@
FROM --platform=${BUILDPLATFORM} docker.io/library/node:24-trixie-slim@sha256:45babd1b4ce0349fb12c4e24bf017b90b96d52806db32e001e3013f341bef0fe AS docs-builder FROM --platform=${BUILDPLATFORM} docker.io/library/node:25.2.1-trixie@sha256:7942b337b20b67cd846828242f4e033cc29a83dde0f179b373636f3cbf072ae5 AS docs-builder
ENV NODE_ENV=production ENV NODE_ENV=production
@@ -6,6 +6,7 @@ WORKDIR /work/website
RUN --mount=type=bind,target=/work/website/package.json,src=./website/package.json \ RUN --mount=type=bind,target=/work/website/package.json,src=./website/package.json \
--mount=type=bind,target=/work/website/package-lock.json,src=./website/package-lock.json \ --mount=type=bind,target=/work/website/package-lock.json,src=./website/package-lock.json \
--mount=type=bind,target=/work/website/vendored/detect-package-manager,src=./website/vendored/detect-package-manager \
--mount=type=bind,target=/work/website/docusaurus-theme/package.json,src=./website/docusaurus-theme/package.json \ --mount=type=bind,target=/work/website/docusaurus-theme/package.json,src=./website/docusaurus-theme/package.json \
--mount=type=bind,target=/work/website/api/package.json,src=./website/api/package.json \ --mount=type=bind,target=/work/website/api/package.json,src=./website/api/package.json \
--mount=type=bind,target=/work/website/integrations/package.json,src=./website/integrations/package.json \ --mount=type=bind,target=/work/website/integrations/package.json,src=./website/integrations/package.json \

View File

@@ -0,0 +1,14 @@
import { createESLintPackageConfig, DefaultIgnorePatterns } from "@goauthentik/eslint-config";
export default createESLintPackageConfig({
parserOptions: {
tsconfigRootDir: import.meta.dirname,
},
ignorePatterns: [
// ---
...DefaultIgnorePatterns,
"**/.docusaurus/",
"**/build",
"**/reference",
],
});

View File

@@ -20,15 +20,15 @@
"#reference/sidebar": "./reference/sidebar.ts" "#reference/sidebar": "./reference/sidebar.ts"
}, },
"dependencies": { "dependencies": {
"@docusaurus/core": "^3.8.1", "@docusaurus/core": "^3.9.2",
"@docusaurus/faster": "^3.8.1", "@docusaurus/faster": "^3.9.2",
"@docusaurus/module-type-aliases": "^3.8.1", "@docusaurus/module-type-aliases": "^3.9.2",
"@docusaurus/plugin-client-redirects": "^3.8.1", "@docusaurus/plugin-client-redirects": "^3.9.2",
"@docusaurus/plugin-content-docs": "^3.8.1", "@docusaurus/plugin-content-docs": "^3.9.2",
"@docusaurus/preset-classic": "^3.8.1", "@docusaurus/preset-classic": "^3.9.2",
"@docusaurus/theme-common": "^3.8.1", "@docusaurus/theme-common": "^3.9.2",
"@docusaurus/tsconfig": "^3.8.1", "@docusaurus/tsconfig": "^3.9.2",
"@docusaurus/types": "^3.8.1", "@docusaurus/types": "^3.9.2",
"@goauthentik/docusaurus-config": "^2.2.2", "@goauthentik/docusaurus-config": "^2.2.2",
"@goauthentik/docusaurus-theme": "*", "@goauthentik/docusaurus-theme": "*",
"@goauthentik/tsconfig": "^1.0.5", "@goauthentik/tsconfig": "^1.0.5",
@@ -39,15 +39,18 @@
"docusaurus-plugin-openapi-docs": "^4.5.1", "docusaurus-plugin-openapi-docs": "^4.5.1",
"docusaurus-theme-openapi-docs": "^4.5.1", "docusaurus-theme-openapi-docs": "^4.5.1",
"npm-run-all": "^4.1.5", "npm-run-all": "^4.1.5",
"openapi-to-postmanv2": "^5.0.0",
"postman-code-generators": "^2.1.0",
"postman-collection": "^5.0.2",
"prism-react-renderer": "^2.4.1", "prism-react-renderer": "^2.4.1",
"react": "^19.1.1", "react": "^19.2.0",
"react-dom": "^19.2.0", "react-dom": "^19.2.0",
"typescript": "^5.9.3" "typescript": "^5.9.3"
}, },
"optionalDependencies": { "optionalDependencies": {
"@rspack/binding-darwin-arm64": "1.6.5", "@rspack/binding-darwin-arm64": "1.6.6",
"@rspack/binding-linux-arm64-gnu": "1.6.5", "@rspack/binding-linux-arm64-gnu": "1.6.6",
"@rspack/binding-linux-x64-gnu": "1.6.5", "@rspack/binding-linux-x64-gnu": "1.6.6",
"@swc/core-darwin-arm64": "1.15.3", "@swc/core-darwin-arm64": "1.15.3",
"@swc/core-linux-arm64-gnu": "1.15.3", "@swc/core-linux-arm64-gnu": "1.15.3",
"@swc/core-linux-x64-gnu": "1.15.3", "@swc/core-linux-x64-gnu": "1.15.3",
@@ -69,10 +72,5 @@
"last 1 firefox version", "last 1 firefox version",
"last 1 safari version" "last 1 safari version"
] ]
},
"overrides": {
"format-imports": {
"eslint": "^9.30.1"
}
} }
} }

View File

@@ -6,7 +6,7 @@ The Remote Access Control (RAC) provider is a highly flexible feature for access
For overview information, see the [RAC provider](./index.md) documentation. You can also view our video on YouTube for setting up RAC. For overview information, see the [RAC provider](./index.md) documentation. You can also view our video on YouTube for setting up RAC.
<iframe width="560" height="315" src="https://www.youtube.com/embed/9wahIBRV6Ts;start=22" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> <iframe width="560" height="315" src="https://www.youtube.com/embed/9wahIBRV6Ts;start=22" title="YouTube video player" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowFullScreen></iframe>
## Overview workflow to create an RAC provider ## Overview workflow to create an RAC provider

View File

@@ -0,0 +1,13 @@
import { createESLintPackageConfig, DefaultIgnorePatterns } from "@goauthentik/eslint-config";
export default createESLintPackageConfig({
parserOptions: {
tsconfigRootDir: import.meta.dirname,
},
ignorePatterns: [
// ---
...DefaultIgnorePatterns,
"**/.docusaurus/",
"**/build",
],
});

View File

@@ -14,21 +14,22 @@
"start": "docusaurus start" "start": "docusaurus start"
}, },
"dependencies": { "dependencies": {
"@docusaurus/core": "^3.8.1", "@docusaurus/core": "^3.9.2",
"@docusaurus/module-type-aliases": "^3.8.1", "@docusaurus/module-type-aliases": "^3.9.2",
"@docusaurus/preset-classic": "^3.8.1", "@docusaurus/preset-classic": "^3.9.2",
"@docusaurus/theme-mermaid": "^3.8.1", "@docusaurus/theme-mermaid": "^3.9.2",
"@docusaurus/tsconfig": "^3.8.1", "@docusaurus/tsconfig": "^3.9.2",
"@docusaurus/types": "^3.8.1", "@docusaurus/types": "^3.9.2",
"@goauthentik/docusaurus-config": "^2.2.2", "@goauthentik/docusaurus-config": "^2.2.2",
"@goauthentik/docusaurus-theme": "*", "@goauthentik/docusaurus-theme": "*",
"@mdx-js/react": "^3.1.1", "@mdx-js/react": "^3.1.1",
"@types/react": "^19.2.7", "@types/react": "^19.2.7",
"@types/react-dom": "^19.2.3", "@types/react-dom": "^19.2.3",
"prism-react-renderer": "^2.3.0", "prism-react-renderer": "^2.4.1",
"react": "^19.1.1", "react": "^19.2.0",
"react-before-after-slider-component": "^1.1.8", "react-before-after-slider-component": "^1.1.8",
"react-dom": "^19.2.0", "react-dom": "^19.2.0",
"typescript": "^5.9.3",
"unist-util-visit": "^5.0.0" "unist-util-visit": "^5.0.0"
}, },
"engines": { "engines": {

View File

@@ -0,0 +1,12 @@
import { createESLintPackageConfig, DefaultIgnorePatterns } from "@goauthentik/eslint-config";
export default createESLintPackageConfig({
parserOptions: {
tsconfigRootDir: import.meta.dirname,
},
ignorePatterns: [
// ---
...DefaultIgnorePatterns,
"**/.docusaurus/",
],
});

View File

@@ -26,7 +26,7 @@
"#theme/*": "./theme/*" "#theme/*": "./theme/*"
}, },
"dependencies": { "dependencies": {
"@docusaurus/preset-classic": "^3.8.1", "@docusaurus/preset-classic": "^3.9.2",
"@goauthentik/docusaurus-config": "^2.2.2", "@goauthentik/docusaurus-config": "^2.2.2",
"@types/semver": "^7.7.1", "@types/semver": "^7.7.1",
"clsx": "^2.1.1", "clsx": "^2.1.1",

View File

@@ -49,8 +49,6 @@ async function akReleasesPlugin(loadContext, options) {
env: environment, env: environment,
}; };
content.publicPath;
return content; return content;
}, },

View File

@@ -49,12 +49,12 @@ const RedirectFound: React.FC<RedirectFoundProps> = ({ nextURL, className }) =>
const usingRouter = nextURL.startsWith("/"); const usingRouter = nextURL.startsWith("/");
useEffect(() => { useEffect(() => {
console.log("Redirecting...", { nextURL, usingRouter }); console.debug("Redirecting...", { nextURL, usingRouter });
if (usingRouter) return; if (usingRouter) return;
window.location.assign(nextURL); window.location.assign(nextURL);
}, []); }, [nextURL, usingRouter]);
return ( return (
<main <main
@@ -112,15 +112,16 @@ const NotFoundContentRouter: React.FC<Props> = (props) => {
// Is there somewhere to redirect to that isn't the current pathname? // Is there somewhere to redirect to that isn't the current pathname?
if (!destination || destination === pathname) { if (!destination || destination === pathname) {
console.log("No redirect found", { pathname, suffix, destination }); console.debug("No redirect found", { pathname, suffix, destination });
return <NotFound {...props} />; return <NotFound {...props} />;
} }
const nextURL = destination + suffix; const nextURL = destination + suffix;
console.log("Redirect found", { pathname, suffix, destination, nextURL }); console.debug("Redirect found", { pathname, suffix, destination, nextURL });
// eslint-disable-next-line react-hooks/immutability
document.documentElement.dataset.redirect = "pending"; document.documentElement.dataset.redirect = "pending";
return <RedirectFound nextURL={nextURL} {...props} />; return <RedirectFound nextURL={nextURL} {...props} />;

View File

@@ -1,6 +1,9 @@
import { createESLintPackageConfig, DefaultIgnorePatterns } from "@goauthentik/eslint-config"; import { createESLintPackageConfig, DefaultIgnorePatterns } from "@goauthentik/eslint-config";
export default createESLintPackageConfig({ export default createESLintPackageConfig({
parserOptions: {
tsconfigRootDir: import.meta.dirname,
},
ignorePatterns: [ ignorePatterns: [
// --- // ---
...DefaultIgnorePatterns, ...DefaultIgnorePatterns,

View File

@@ -0,0 +1,13 @@
import { createESLintPackageConfig, DefaultIgnorePatterns } from "@goauthentik/eslint-config";
export default createESLintPackageConfig({
parserOptions: {
tsconfigRootDir: import.meta.dirname,
},
ignorePatterns: [
// ---
...DefaultIgnorePatterns,
"**/.docusaurus/",
"**/build",
],
});

View File

@@ -12,21 +12,22 @@
"start": "docusaurus start" "start": "docusaurus start"
}, },
"dependencies": { "dependencies": {
"@docusaurus/core": "^3.8.1", "@docusaurus/core": "^3.9.2",
"@docusaurus/module-type-aliases": "^3.8.1", "@docusaurus/module-type-aliases": "^3.9.2",
"@docusaurus/plugin-client-redirects": "^3.8.1", "@docusaurus/plugin-client-redirects": "^3.9.2",
"@docusaurus/preset-classic": "^3.8.1", "@docusaurus/preset-classic": "^3.9.2",
"@docusaurus/theme-mermaid": "^3.8.1", "@docusaurus/theme-mermaid": "^3.9.2",
"@docusaurus/tsconfig": "^3.8.1", "@docusaurus/tsconfig": "^3.9.2",
"@docusaurus/types": "^3.8.1", "@docusaurus/types": "^3.9.2",
"@goauthentik/docusaurus-config": "^2.2.2", "@goauthentik/docusaurus-config": "^2.2.2",
"@goauthentik/docusaurus-theme": "*", "@goauthentik/docusaurus-theme": "*",
"@mdx-js/react": "^3.1.1", "@mdx-js/react": "^3.1.1",
"@types/react": "^19.2.7", "@types/react": "^19.2.7",
"@types/react-dom": "^19.2.3", "@types/react-dom": "^19.2.3",
"prism-react-renderer": "^2.3.0", "prism-react-renderer": "^2.4.1",
"react": "^19.1.1", "react": "^19.2.0",
"react-dom": "^19.2.0" "react-dom": "^19.2.0",
"typescript": "^5.9.3"
}, },
"engines": { "engines": {
"node": ">=24", "node": ">=24",

2432
website/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -30,14 +30,15 @@
"netlify-plugin-cache": "^1.0.3", "netlify-plugin-cache": "^1.0.3",
"netlify-redirect-parser": "^14.4.0", "netlify-redirect-parser": "^14.4.0",
"npm-run-all": "^4.1.5", "npm-run-all": "^4.1.5",
"prettier": "^3.6.2", "postman-code-generators": "2.1.0",
"prettier": "^3.7.3",
"prettier-plugin-packagejson": "^2.5.20", "prettier-plugin-packagejson": "^2.5.20",
"typescript-eslint": "^8.48.0" "typescript-eslint": "^8.48.0"
}, },
"optionalDependencies": { "optionalDependencies": {
"@rspack/binding-darwin-arm64": "1.6.5", "@rspack/binding-darwin-arm64": "1.6.6",
"@rspack/binding-linux-arm64-gnu": "1.6.5", "@rspack/binding-linux-arm64-gnu": "1.6.6",
"@rspack/binding-linux-x64-gnu": "1.6.5", "@rspack/binding-linux-x64-gnu": "1.6.6",
"@swc/core-darwin-arm64": "1.15.3", "@swc/core-darwin-arm64": "1.15.3",
"@swc/core-linux-arm64-gnu": "1.15.3", "@swc/core-linux-arm64-gnu": "1.15.3",
"@swc/core-linux-x64-gnu": "1.15.3", "@swc/core-linux-x64-gnu": "1.15.3",
@@ -53,6 +54,7 @@
"npm": ">=11.6.2" "npm": ">=11.6.2"
}, },
"workspaces": [ "workspaces": [
"vendored/*",
"docusaurus-theme", "docusaurus-theme",
"api", "api",
"integrations", "integrations",
@@ -60,8 +62,45 @@
], ],
"prettier": "@goauthentik/prettier-config", "prettier": "@goauthentik/prettier-config",
"overrides": { "overrides": {
"@goauthentik/api-docs": {
"openapi-to-postmanv2": "^5.0.0",
"postman-collection": "^5.0.2",
"postman-code-generators": {
"detect-package-manager": "file:./vendored/detect-package-manager",
"shelljs": "0.10.0"
},
"docusaurus-theme-openapi-docs": {
"postman-code-generators": {
".": "^2.1.0",
"detect-package-manager": "file:./vendored/detect-package-manager"
}
}
},
"docusaurus-theme-openapi-docs": {
"postman-code-generators": {
".": "^1.10.1",
"detect-package-manager": "file:./vendored/detect-package-manager",
"shelljs": "0.10.0"
}
},
"format-imports": { "format-imports": {
"eslint": "^9.31.0" "eslint": "$eslint"
},
"postman-code-generators": {
"detect-package-manager": "file:./vendored/detect-package-manager",
"shelljs": "0.10.0"
}
},
"devEngines": {
"runtime": {
"name": "node",
"onFail": "error",
"version": ">=24"
},
"packageManager": {
"name": "npm",
"onFail": "error",
"version": ">=11.6.2"
} }
} }
} }

View File

@@ -0,0 +1,27 @@
/**
* @file Vendored detect-package-manager
*/
import { exec } from "node:child_process";
import { promisify } from "node:util";
const execPromise = promisify(exec);
/**
* @returns {Promise<string>} The detected npm version.
*/
export async function getNpmVersion() {
try {
const { stdout } = await execPromise("npm --version");
return stdout.trim();
} catch (error) {
throw new Error("Failed to get npm version", { cause: error });
}
}
/**
* @returns {string} The detected package manager.
*/
export function detect() {
return Promise.resolve("npm");
}

View File

@@ -0,0 +1,9 @@
{
"name": "detect-package-manager",
"version": "2025.12.0",
"description": "Vendored package to detect package manager",
"license": "MIT",
"private": true,
"type": "module",
"exports": "./index.mjs"
}