From a86e80f03c99d518f3a9fb3b9a88ea30154ea15c Mon Sep 17 00:00:00 2001
From: Sebastian Silva <44152511+OneComputerGuy@users.noreply.github.com>
Date: Tue, 16 Dec 2025 11:35:37 -0500
Subject: [PATCH] :bug: Fixed NotFound redirect of old slugs
---
.gitignore | 7 +++++++
docs/partners/become-a-partner.md | 2 +-
package-lock.json | 24 ++++++++++++------------
page-redirects.js | 6 ++----
src/theme/NotFound.js | 28 ----------------------------
src/theme/NotFound/Content/index.js | 25 +++++++++++++++++++++++++
6 files changed, 47 insertions(+), 45 deletions(-)
create mode 100644 .gitignore
delete mode 100644 src/theme/NotFound.js
create mode 100644 src/theme/NotFound/Content/index.js
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000..92c7adb54
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,7 @@
+node_modules
+.docusaurus
+.build
+build
+/dist
+/.cache
+/.parcel-cache
\ No newline at end of file
diff --git a/docs/partners/become-a-partner.md b/docs/partners/become-a-partner.md
index 674fd4e2f..6d6efab66 100644
--- a/docs/partners/become-a-partner.md
+++ b/docs/partners/become-a-partner.md
@@ -8,7 +8,7 @@ author: Mark Kauffman
sidebar_position: 1
---
-Our Community partnership level is FREE to developers and provides access to the Learn AMI (Amazon Machine Images) for developers to build REST and LTI applications\*, API limits apply and Behind the Blackboard support is not included. [Community support is available](https://community.blackboard.com).
+Our Community partnership level is FREE to developers and provides access to the Learn AMI (Amazon Machine Images) for developers to build REST and LTI applications\*, API limits apply and Behind the Blackboard support is not included. [Community support is available](https://community.anthology.com).
Consider investing in one of our other partnership levels to receive added benefits that help partners deepen integrations, promote solutions, and connect with Blackboard clients. The Blackboard Developers Network (BbDN) is Blackboard’s standard partnership and is available for $3,000 annually. BbDN Partnerships include the following benefits:
diff --git a/package-lock.json b/package-lock.json
index be0f80f0c..4962fca24 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9708,9 +9708,9 @@
}
},
"node_modules/gray-matter/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==",
+ "version": "3.14.2",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz",
+ "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==",
"license": "MIT",
"dependencies": {
"argparse": "^1.0.7",
@@ -11317,9 +11317,9 @@
"license": "MIT"
},
"node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
"license": "MIT",
"dependencies": {
"argparse": "^2.0.1"
@@ -12026,9 +12026,9 @@
}
},
"node_modules/mdast-util-to-hast": {
- "version": "13.2.0",
- "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz",
- "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==",
+ "version": "13.2.1",
+ "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz",
+ "integrity": "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==",
"license": "MIT",
"dependencies": {
"@types/hast": "^3.0.0",
@@ -14157,9 +14157,9 @@
}
},
"node_modules/node-forge": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz",
- "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==",
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.3.tgz",
+ "integrity": "sha512-rLvcdSyRCyouf6jcOIPe/BgwG/d7hKjzMKOas33/pHEr6gbq18IK9zV7DiPvzsz0oBJPme6qr6H6kGZuI9/DZg==",
"license": "(BSD-3-Clause OR GPL-2.0)",
"engines": {
"node": ">= 6.13.0"
diff --git a/page-redirects.js b/page-redirects.js
index 33bb852b5..d7439c45f 100644
--- a/page-redirects.js
+++ b/page-redirects.js
@@ -1,9 +1,7 @@
const customRedirects = {
"old-slug": "new-slug",
- "/docs/developer-amiaasd": "/docs/developer-ami",
- "/docs/developer-ami": "/docs/blackboard/sandbox-envs/developer-ami",
- "/docs/developer-amifromvmdk":
- "/docs/blackboard/sandbox-envs/convert-the-vmdk-file",
+ "/docs/developer-ami": "/docs/blackboard/sandbox-envs/welcome",
+ "/docs/developer-amifromvmdk": "/docs/blackboard/sandbox-envs/welcome",
};
module.exports = customRedirects;
diff --git a/src/theme/NotFound.js b/src/theme/NotFound.js
deleted file mode 100644
index 6d455ab47..000000000
--- a/src/theme/NotFound.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import React, { useEffect } from "react";
-
-import { useHistory } from "react-router-dom";
-import NotFound from "@theme-original/NotFound";
-import customRedirects from "../../page-redirects";
-
-export default function NotFoundWrapper(props) {
- const history = useHistory();
-
- useEffect(() => {
- const currentUrl = window.location.pathname;
- console.log("🚀 ~ useEffect ~ currentUrl:", currentUrl);
- const targetLocation = customRedirects[currentUrl];
-
- if (targetLocation) {
- window.history.replaceState({}, "", targetLocation);
- history.push(targetLocation);
- }
- }, [history]);
-
- return (
- <>
-
- >
- );
-}
-
-/// Taken from: https://stackoverflow.com/questions/76000415/in-docusaurus-v2-is-there-a-way-to-handle-redirects-to-some-url-path-default and tweaked for specific routes
diff --git a/src/theme/NotFound/Content/index.js b/src/theme/NotFound/Content/index.js
new file mode 100644
index 000000000..da94b6560
--- /dev/null
+++ b/src/theme/NotFound/Content/index.js
@@ -0,0 +1,25 @@
+import { useEffect } from "react";
+import { useHistory } from "react-router-dom";
+import Content from "@theme-original/NotFound/Content";
+
+import customRedirects from "../../../../page-redirects";
+
+export default function ContentWrapper(props) {
+ const history = useHistory();
+
+ useEffect(() => {
+ const currentUrl = window.location.pathname;
+ const targetLocation = customRedirects[currentUrl];
+
+ if (targetLocation) {
+ window.history.replaceState({}, "", targetLocation);
+ history.push(targetLocation);
+ }
+ }, [history]);
+
+ return (
+ <>
+
+ >
+ );
+}