From 6639bfbddda3ff8d69c5b0300f894740a905175b Mon Sep 17 00:00:00 2001 From: Jake Mahon Date: Tue, 16 Sep 2025 09:00:56 -0400 Subject: [PATCH] Fix KB index.md link generation and create missing KB index pages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix generateKBSidebar function to handle index.md files correctly - Index files now link to parent directory (e.g., /docs/kb/product/) - Instead of broken /docs/kb/product/index paths - Create missing index.md files for 10 KB product folders: - accessanalyzer, auditor, dataclassification, directorymanager - endpointprotector, general, privilegesecure, privilegesecurediscovery - threatmanager, threatprevention - This should resolve the broken KB index link issues in strict validation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- docs/kb/accessanalyzer/index.md | 18 ++++++++++++++++++ docs/kb/auditor/index.md | 18 ++++++++++++++++++ docs/kb/dataclassification/index.md | 18 ++++++++++++++++++ docs/kb/directorymanager/index.md | 18 ++++++++++++++++++ docs/kb/endpointprotector/index.md | 18 ++++++++++++++++++ docs/kb/general/index.md | 18 ++++++++++++++++++ docs/kb/privilegesecure/index.md | 18 ++++++++++++++++++ docs/kb/privilegesecurediscovery/index.md | 18 ++++++++++++++++++ docs/kb/threatmanager/index.md | 18 ++++++++++++++++++ docs/kb/threatprevention/index.md | 18 ++++++++++++++++++ src/utils/generateKBSidebar.js | 16 ++++++++++++++-- 11 files changed, 194 insertions(+), 2 deletions(-) create mode 100644 docs/kb/accessanalyzer/index.md create mode 100644 docs/kb/auditor/index.md create mode 100644 docs/kb/dataclassification/index.md create mode 100644 docs/kb/directorymanager/index.md create mode 100644 docs/kb/endpointprotector/index.md create mode 100644 docs/kb/general/index.md create mode 100644 docs/kb/privilegesecure/index.md create mode 100644 docs/kb/privilegesecurediscovery/index.md create mode 100644 docs/kb/threatmanager/index.md create mode 100644 docs/kb/threatprevention/index.md diff --git a/docs/kb/accessanalyzer/index.md b/docs/kb/accessanalyzer/index.md new file mode 100644 index 0000000000..c0baa42581 --- /dev/null +++ b/docs/kb/accessanalyzer/index.md @@ -0,0 +1,18 @@ +--- +title: "Access Analyzer Knowledge Base" +description: "Access Analyzer knowledge base articles and troubleshooting guides" +slug: kb/accessanalyzer +--- + +# Access Analyzer Knowledge Base + +Welcome to the Access Analyzer knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices. + +Use the search function above to find specific articles or browse through all Access Analyzer KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main Access Analyzer documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/docs/kb/auditor/index.md b/docs/kb/auditor/index.md new file mode 100644 index 0000000000..ffa6b4edef --- /dev/null +++ b/docs/kb/auditor/index.md @@ -0,0 +1,18 @@ +--- +title: "Auditor Knowledge Base" +description: "Auditor knowledge base articles and troubleshooting guides" +slug: kb/auditor +--- + +# Auditor Knowledge Base + +Welcome to the Auditor knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices. + +Use the search function above to find specific articles or browse through all Auditor KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main Auditor documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/docs/kb/dataclassification/index.md b/docs/kb/dataclassification/index.md new file mode 100644 index 0000000000..bdbf67c6f1 --- /dev/null +++ b/docs/kb/dataclassification/index.md @@ -0,0 +1,18 @@ +--- +title: "Data Classification Knowledge Base" +description: "Data Classification knowledge base articles and troubleshooting guides" +slug: kb/dataclassification +--- + +# Data Classification Knowledge Base + +Welcome to the Data Classification knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices. + +Use the search function above to find specific articles or browse through all Data Classification KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main Data Classification documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/docs/kb/directorymanager/index.md b/docs/kb/directorymanager/index.md new file mode 100644 index 0000000000..615c0f85a4 --- /dev/null +++ b/docs/kb/directorymanager/index.md @@ -0,0 +1,18 @@ +--- +title: "Directory Manager Knowledge Base" +description: "Directory Manager knowledge base articles and troubleshooting guides" +slug: kb/directorymanager +--- + +# Directory Manager Knowledge Base + +Welcome to the Directory Manager knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices. + +Use the search function above to find specific articles or browse through all Directory Manager KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main Directory Manager documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/docs/kb/endpointprotector/index.md b/docs/kb/endpointprotector/index.md new file mode 100644 index 0000000000..2fd7205de9 --- /dev/null +++ b/docs/kb/endpointprotector/index.md @@ -0,0 +1,18 @@ +--- +title: "Endpoint Protector Knowledge Base" +description: "Endpoint Protector knowledge base articles and troubleshooting guides" +slug: kb/endpointprotector +--- + +# Endpoint Protector Knowledge Base + +Welcome to the Endpoint Protector knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices. + +Use the search function above to find specific articles or browse through all Endpoint Protector KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main Endpoint Protector documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/docs/kb/general/index.md b/docs/kb/general/index.md new file mode 100644 index 0000000000..5fa7bc6b79 --- /dev/null +++ b/docs/kb/general/index.md @@ -0,0 +1,18 @@ +--- +title: "General Knowledge Base" +description: "General knowledge base articles and troubleshooting guides" +slug: kb/general +--- + +# General Knowledge Base + +Welcome to the General knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices that apply across multiple Netwrix products. + +Use the search function above to find specific articles or browse through all General KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main product documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/docs/kb/privilegesecure/index.md b/docs/kb/privilegesecure/index.md new file mode 100644 index 0000000000..e2cc256345 --- /dev/null +++ b/docs/kb/privilegesecure/index.md @@ -0,0 +1,18 @@ +--- +title: "Privilege Secure Knowledge Base" +description: "Privilege Secure knowledge base articles and troubleshooting guides" +slug: kb/privilegesecure +--- + +# Privilege Secure Knowledge Base + +Welcome to the Privilege Secure knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices. + +Use the search function above to find specific articles or browse through all Privilege Secure KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main Privilege Secure documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/docs/kb/privilegesecurediscovery/index.md b/docs/kb/privilegesecurediscovery/index.md new file mode 100644 index 0000000000..8001b549a3 --- /dev/null +++ b/docs/kb/privilegesecurediscovery/index.md @@ -0,0 +1,18 @@ +--- +title: "Privilege Secure Discovery Knowledge Base" +description: "Privilege Secure Discovery knowledge base articles and troubleshooting guides" +slug: kb/privilegesecurediscovery +--- + +# Privilege Secure Discovery Knowledge Base + +Welcome to the Privilege Secure Discovery knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices. + +Use the search function above to find specific articles or browse through all Privilege Secure Discovery KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main Privilege Secure Discovery documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/docs/kb/threatmanager/index.md b/docs/kb/threatmanager/index.md new file mode 100644 index 0000000000..a1ece6a875 --- /dev/null +++ b/docs/kb/threatmanager/index.md @@ -0,0 +1,18 @@ +--- +title: "Threat Manager Knowledge Base" +description: "Threat Manager knowledge base articles and troubleshooting guides" +slug: kb/threatmanager +--- + +# Threat Manager Knowledge Base + +Welcome to the Threat Manager knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices. + +Use the search function above to find specific articles or browse through all Threat Manager KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main Threat Manager documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/docs/kb/threatprevention/index.md b/docs/kb/threatprevention/index.md new file mode 100644 index 0000000000..190521ed82 --- /dev/null +++ b/docs/kb/threatprevention/index.md @@ -0,0 +1,18 @@ +--- +title: "Threat Prevention Knowledge Base" +description: "Threat Prevention knowledge base articles and troubleshooting guides" +slug: kb/threatprevention +--- + +# Threat Prevention Knowledge Base + +Welcome to the Threat Prevention knowledge base. Browse our collection of troubleshooting guides, configuration instructions, and best practices. + +Use the search function above to find specific articles or browse through all Threat Prevention KB articles in this section. + +## Need Help? + +If you can't find what you're looking for: +1. Use the search function above +2. Check the main Threat Prevention documentation +3. Contact [Netwrix support](https://www.netwrix.com/support.html) \ No newline at end of file diff --git a/src/utils/generateKBSidebar.js b/src/utils/generateKBSidebar.js index f6ab619189..844c3c3478 100644 --- a/src/utils/generateKBSidebar.js +++ b/src/utils/generateKBSidebar.js @@ -102,10 +102,16 @@ function generateKBSidebar(productName) { .map(file => { const filePath = path.join(folderPath, file); const fallbackName = file.replace('.md', ''); + + // Handle index.md files specially - they should link to parent directory + const href = file === 'index.md' + ? `/docs/kb/${productName}/${folder.name}/` + : `/docs/kb/${productName}/${folder.name}/${encodeURIComponent(file.replace('.md', ''))}`; + return { type: 'link', label: extractTitle(filePath, fallbackName), - href: `/docs/kb/${productName}/${folder.name}/${encodeURIComponent(file.replace('.md', ''))}` + href: href }; }) .sort((a, b) => a.label.localeCompare(b.label)); @@ -131,10 +137,16 @@ function generateKBSidebar(productName) { .map(file => { const filePath = path.join(kbPath, file.name); const fallbackName = file.name.replace('.md', ''); + + // Handle index.md files specially - they should link to parent directory + const href = file.name === 'index.md' + ? `/docs/kb/${productName}/` + : `/docs/kb/${productName}/${encodeURIComponent(file.name.replace('.md', ''))}`; + return { type: 'link', label: extractTitle(filePath, fallbackName), - href: `/docs/kb/${productName}/${encodeURIComponent(file.name.replace('.md', ''))}` + href: href }; }) .sort((a, b) => a.label.localeCompare(b.label));