@knowcode/doc-builder 1.9.21 → 1.9.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/doc-builder.config.js +1 -1
- package/doc-builder.config.js.backup.1754568137859 +126 -0
- package/doc-builder.config.js.backup.1754569388252 +126 -0
- package/html/README.html +5 -3
- package/html/about-doc-builder.html +5 -3
- package/html/documentation-index.html +5 -3
- package/html/guides/authentication-default-change.html +5 -3
- package/html/guides/authentication-guide.html +5 -3
- package/html/guides/claude-workflow-guide.html +5 -3
- package/html/guides/configuration-guide.html +5 -3
- package/html/guides/documentation-standards.html +5 -3
- package/html/guides/html-embedding-guide.html +5 -3
- package/html/guides/image-modal-guide.html +5 -3
- package/html/guides/phosphor-icons-guide.html +5 -3
- package/html/guides/private-directory-authentication-troubleshooting.html +5 -3
- package/html/guides/private-directory-authentication.html +5 -3
- package/html/guides/public-site-deployment.html +5 -3
- package/html/guides/search-engine-verification-guide.html +5 -3
- package/html/guides/seo-guide.html +5 -3
- package/html/guides/seo-optimization-guide.html +5 -3
- package/html/guides/supabase-authentication-complete-guide.html +5 -3
- package/html/guides/troubleshooting-guide.html +5 -3
- package/html/guides/windows-setup-guide.html +5 -3
- package/html/image-modal-test.html +5 -3
- package/html/index.html +5 -3
- package/html/private/cache-control-anti-pattern.html +5 -3
- package/html/private/launch/README.html +5 -3
- package/html/private/launch/auth-cleanup-summary.html +5 -3
- package/html/private/launch/bubble-plugin-specification.html +5 -3
- package/html/private/launch/go-to-market-strategy.html +5 -3
- package/html/private/launch/launch-announcements.html +5 -3
- package/html/private/launch/vercel-deployment-auth-setup.html +5 -3
- package/html/private/next-steps-walkthrough.html +5 -3
- package/html/private/supabase-auth-implementation-completed.html +5 -3
- package/html/private/supabase-auth-implementation-plan.html +5 -3
- package/html/private/supabase-auth-integration-plan.html +5 -3
- package/html/private/supabase-auth-setup-guide.html +5 -3
- package/html/private/test-private-doc.html +5 -3
- package/html/private/user-management-tooling.html +5 -3
- package/html/prompts/beautiful-documentation-design.html +5 -3
- package/html/prompts/markdown-document-standards.html +5 -3
- package/html/prompts/project-rename-strategy-sasha-publish.html +5 -3
- package/html/sitemap.xml +59 -59
- package/html/test-questions/how-does-it-work%3F.html +5 -3
- package/html/test-questions/step-1%3A%20getting-started.html +5 -3
- package/html/test-questions/what-is-the-purpose.html +5 -3
- package/html/vercel-cli-setup-guide.html +5 -3
- package/html/vercel-first-time-setup-guide.html +5 -3
- package/html-static/README.html +136 -35
- package/html-static/about-doc-builder.html +136 -35
- package/html-static/documentation-index.html +136 -35
- package/html-static/guides/authentication-default-change.html +136 -35
- package/html-static/guides/authentication-guide.html +136 -35
- package/html-static/guides/claude-workflow-guide.html +136 -35
- package/html-static/guides/configuration-guide.html +136 -35
- package/html-static/guides/documentation-standards.html +136 -35
- package/html-static/guides/html-embedding-guide.html +136 -35
- package/html-static/guides/image-modal-guide.html +136 -35
- package/html-static/guides/phosphor-icons-guide.html +136 -35
- package/html-static/guides/private-directory-authentication-troubleshooting.html +136 -35
- package/html-static/guides/private-directory-authentication.html +136 -35
- package/html-static/guides/public-site-deployment.html +136 -35
- package/html-static/guides/search-engine-verification-guide.html +136 -35
- package/html-static/guides/seo-guide.html +136 -35
- package/html-static/guides/seo-optimization-guide.html +136 -35
- package/html-static/guides/supabase-authentication-complete-guide.html +136 -35
- package/html-static/guides/troubleshooting-guide.html +136 -35
- package/html-static/guides/windows-setup-guide.html +136 -35
- package/html-static/image-modal-test.html +136 -35
- package/html-static/index.html +136 -35
- package/html-static/prompts/Screenshot 2025-08-02 at 08.49.55.png +0 -0
- package/html-static/prompts/beautiful-documentation-design.html +136 -35
- package/html-static/prompts/markdown-document-standards.html +136 -35
- package/html-static/prompts/project-rename-strategy-sasha-publish.html +136 -35
- package/html-static/sitemap.xml +37 -31
- package/html-static/test-questions/how-does-it-work%3F.html +136 -35
- package/html-static/test-questions/step-1%3A%20getting-started.html +136 -35
- package/html-static/test-questions/what-is-the-purpose.html +136 -35
- package/html-static/vercel-cli-setup-guide.html +136 -35
- package/html-static/vercel-first-time-setup-guide.html +136 -35
- package/lib/core-builder.js +134 -14
- package/package.json +1 -1
|
@@ -44,7 +44,108 @@
|
|
|
44
44
|
<script src="https://cdn.jsdelivr.net/npm/mermaid@10.6.1/dist/mermaid.min.js"></script>
|
|
45
45
|
|
|
46
46
|
<!-- Styles -->
|
|
47
|
-
<link rel="stylesheet" href="
|
|
47
|
+
<link rel="stylesheet" href="css/notion-style.css">
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
<!-- Blue theme overrides for static output -->
|
|
51
|
+
<style>
|
|
52
|
+
/* Override green colors with blue */
|
|
53
|
+
:root {
|
|
54
|
+
--primary: #2563eb;
|
|
55
|
+
--primary-dark: #1d4ed8;
|
|
56
|
+
--primary-light: #dbeafe;
|
|
57
|
+
--accent: #3b82f6;
|
|
58
|
+
--color-accent-green: #2563eb;
|
|
59
|
+
--color-accent-emerald: #3b82f6;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/* Override green status colors with blue variants */
|
|
63
|
+
.nav-item.active {
|
|
64
|
+
background-color: #dbeafe !important;
|
|
65
|
+
color: #1d4ed8 !important;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.nav-item:hover {
|
|
69
|
+
background-color: #eff6ff !important;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/* Override complete/success icons to blue */
|
|
73
|
+
.ph-check-circle[style*="color: #059669"] {
|
|
74
|
+
color: #2563eb !important;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/* Override README/home icon color */
|
|
78
|
+
.ph-house[style*="color: #059669"] {
|
|
79
|
+
color: #2563eb !important;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/* Override links */
|
|
83
|
+
a {
|
|
84
|
+
color: #2563eb;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
a:hover {
|
|
88
|
+
color: #1d4ed8;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
/* Override buttons and interactive elements */
|
|
92
|
+
.theme-toggle:hover,
|
|
93
|
+
.menu-toggle:hover {
|
|
94
|
+
background-color: #dbeafe;
|
|
95
|
+
color: #1d4ed8;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/* Override nav title hover */
|
|
99
|
+
.nav-title:hover {
|
|
100
|
+
background-color: #eff6ff;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/* Override breadcrumbs */
|
|
104
|
+
.breadcrumbs a {
|
|
105
|
+
color: #2563eb;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.breadcrumbs a:hover {
|
|
109
|
+
color: #1d4ed8;
|
|
110
|
+
background-color: #dbeafe;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/* Override filter icon */
|
|
114
|
+
.filter-icon {
|
|
115
|
+
color: #2563eb;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/* Override deployment info on hover */
|
|
119
|
+
.deployment-date:hover {
|
|
120
|
+
color: #2563eb;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/* Dark mode adjustments */
|
|
124
|
+
body.dark-mode {
|
|
125
|
+
--primary: #3b82f6;
|
|
126
|
+
--primary-dark: #2563eb;
|
|
127
|
+
--primary-light: #1e3a8a;
|
|
128
|
+
--accent: #60a5fa;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
body.dark-mode .nav-item.active {
|
|
132
|
+
background-color: rgba(59, 130, 246, 0.1) !important;
|
|
133
|
+
color: #60a5fa !important;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
body.dark-mode .nav-item:hover {
|
|
137
|
+
background-color: rgba(59, 130, 246, 0.05) !important;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
body.dark-mode a {
|
|
141
|
+
color: #60a5fa;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
body.dark-mode a:hover {
|
|
145
|
+
color: #93bbfc;
|
|
146
|
+
}
|
|
147
|
+
</style>
|
|
148
|
+
|
|
48
149
|
|
|
49
150
|
|
|
50
151
|
|
|
@@ -66,8 +167,8 @@
|
|
|
66
167
|
"name": "Knowcode Ltd",
|
|
67
168
|
"url": "https://knowcode.tech"
|
|
68
169
|
},
|
|
69
|
-
"datePublished": "2025-08-
|
|
70
|
-
"dateModified": "2025-08-
|
|
170
|
+
"datePublished": "2025-08-07T12:23:08.765Z",
|
|
171
|
+
"dateModified": "2025-08-07T12:23:08.765Z",
|
|
71
172
|
"mainEntityOfPage": {
|
|
72
173
|
"@type": "WebPage",
|
|
73
174
|
"@id": "https://doc-builder-delta.vercel.app/vercel-first-time-setup-guide.html"
|
|
@@ -96,11 +197,11 @@
|
|
|
96
197
|
<!-- Header -->
|
|
97
198
|
<header class="header">
|
|
98
199
|
<div class="header-content">
|
|
99
|
-
<a href="
|
|
200
|
+
<a href="index.html" class="logo">@knowcode/doc-builder</a>
|
|
100
201
|
|
|
101
202
|
<div class="header-actions">
|
|
102
203
|
<div class="deployment-info">
|
|
103
|
-
<span class="deployment-date" title="Built with doc-builder v1.9.
|
|
204
|
+
<span class="deployment-date" title="Built with doc-builder v1.9.22">Last updated: Aug 7, 2025, 12:23 PM UTC</span>
|
|
104
205
|
</div>
|
|
105
206
|
|
|
106
207
|
|
|
@@ -140,50 +241,50 @@
|
|
|
140
241
|
<i class="ph ph-caret-down" id="toggle-all-icon"></i> Documentation
|
|
141
242
|
</a>
|
|
142
243
|
<div class="nav-content">
|
|
143
|
-
<a href="
|
|
144
|
-
<a href="
|
|
145
|
-
<a href="
|
|
146
|
-
<a href="
|
|
147
|
-
<a href="
|
|
148
|
-
<a href="
|
|
244
|
+
<a href="README.html" class="nav-item" data-tooltip="@knowcode/doc-builder."><i class="ph ph-file-text"></i> Overview</a>
|
|
245
|
+
<a href="about-doc-builder.html" class="nav-item" data-tooltip="About @knowcode/doc-builder."><i class="ph ph-check-circle" style="color: #2563eb;"></i> About Doc Builder</a>
|
|
246
|
+
<a href="documentation-index.html" class="nav-item" data-tooltip="This directory contains additional documentation for the @knowcode/doc-builder project, organized by topic and purpose."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Documentation Index</a>
|
|
247
|
+
<a href="image-modal-test.html" class="nav-item" data-tooltip="This document tests the new image modal functionality in doc-builder."><i class="ph ph-file-text"></i> Image Modal Test</a>
|
|
248
|
+
<a href="vercel-cli-setup-guide.html" class="nav-item" data-tooltip="This guide provides comprehensive instructions for installing the Vercel CLI across different operating systems."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Vercel Cli Setup Guide</a>
|
|
249
|
+
<a href="vercel-first-time-setup-guide.html" class="nav-item active" data-tooltip="This guide walks you through the Vercel deployment process when using ."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Vercel First Time Setup Guide</a></div></div>
|
|
149
250
|
<div class="nav-section" data-level="1">
|
|
150
251
|
<a class="nav-title collapsible" href="#" data-target="nav-guides-1" >
|
|
151
252
|
<i class="ph ph-caret-right collapse-icon"></i><i class="ph ph-book"></i> Guides
|
|
152
253
|
</a>
|
|
153
254
|
<div class="nav-content collapsed" id="nav-guides-1">
|
|
154
|
-
<a href="
|
|
155
|
-
<a href="
|
|
156
|
-
<a href="
|
|
157
|
-
<a href="
|
|
158
|
-
<a href="
|
|
159
|
-
<a href="
|
|
160
|
-
<a href="
|
|
161
|
-
<a href="
|
|
162
|
-
<a href="
|
|
163
|
-
<a href="
|
|
164
|
-
<a href="
|
|
165
|
-
<a href="
|
|
166
|
-
<a href="
|
|
167
|
-
<a href="
|
|
168
|
-
<a href="
|
|
169
|
-
<a href="
|
|
170
|
-
<a href="
|
|
255
|
+
<a href="guides/authentication-default-change.html" class="nav-item" data-tooltip="Starting from version 1.7.4, @knowcode/doc-builder now defaults to no authentication for all documentation sites."><i class="ph ph-file-text"></i> Authentication Default Change</a>
|
|
256
|
+
<a href="guides/authentication-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder supports enterprise-grade authentication through Supabase - a secure, scalable authentication platform."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Authentication Guide</a>
|
|
257
|
+
<a href="guides/claude-workflow-guide.html" class="nav-item" data-tooltip="This guide demonstrates an efficient workflow for using Claude Code with a refined CLAUDE.md file to create high-quality documentation and deploy it..."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Claude Workflow Guide</a>
|
|
258
|
+
<a href="guides/configuration-guide.html" class="nav-item" data-tooltip="This guide explains how @knowcode/doc-builder handles configuration files and settings."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Configuration Guide</a>
|
|
259
|
+
<a href="guides/documentation-standards.html" class="nav-item" data-tooltip="This document defines the documentation standards and conventions for the @knowcode/doc-builder project."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Documentation Standards</a>
|
|
260
|
+
<a href="guides/html-embedding-guide.html" class="nav-item" data-tooltip="Starting from version 1.9.2, doc-builder treats HTML files ( and ) as attachments that are automatically copied to your output directory during the..."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Html Embedding Guide</a>
|
|
261
|
+
<a href="guides/image-modal-guide.html" class="nav-item" data-tooltip="When users click on any image in your generated documentation, it opens in a professional modal overlay with: Full-screen viewing experience Smooth..."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Image Modal Guide</a>
|
|
262
|
+
<a href="guides/phosphor-icons-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder automatically converts Unicode emojis in your markdown files to beautiful Phosphor icons in the generated HTML."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Phosphor Icons Guide</a>
|
|
263
|
+
<a href="guides/private-directory-authentication.html" class="nav-item" data-tooltip="The @knowcode/doc-builder provides flexible authentication options to protect your documentation."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Private Directory Authentication</a>
|
|
264
|
+
<a href="guides/private-directory-authentication-troubleshooting.html" class="nav-item" data-tooltip="Private Directory Authentication Troubleshooting."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Private Directory Authentication Troubleshooting</a>
|
|
265
|
+
<a href="guides/public-site-deployment.html" class="nav-item" data-tooltip="The @knowcode/doc-builder now supports deploying public documentation sites without authentication."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Public Site Deployment</a>
|
|
266
|
+
<a href="guides/search-engine-verification-guide.html" class="nav-item" data-tooltip="Search engine verification provides access to powerful webmaster tools:."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Search Engine Verification Guide</a>
|
|
267
|
+
<a href="guides/seo-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder includes comprehensive SEO (Search Engine Optimization) features to help your documentation rank better in search results and..."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Seo Guide</a>
|
|
268
|
+
<a href="guides/seo-optimization-guide.html" class="nav-item" data-tooltip="Comprehensive guide to optimizing documentation for search engines. Learn SEO best practices, use built-in features, and improve your rankings."><i class="ph ph-check-circle" style="color: #2563eb;"></i> SEO Optimization Guide for @knowcode/doc-builder</a>
|
|
269
|
+
<a href="guides/supabase-authentication-complete-guide.html" class="nav-item" data-tooltip="@knowcode/doc-builder includes built-in Supabase authentication that provides enterprise-grade security with zero configuration."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Supabase Authentication Complete Guide</a>
|
|
270
|
+
<a href="guides/troubleshooting-guide.html" class="nav-item" data-tooltip="This guide helps you resolve common issues when using @knowcode/doc-builder."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Troubleshooting Guide</a>
|
|
271
|
+
<a href="guides/windows-setup-guide.html" class="nav-item" data-tooltip="This guide helps Windows users set up the complete AI-powered documentation workflow using Claude Code, @knowcode/doc-builder, and Vercel."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Windows Setup Guide</a></div></div>
|
|
171
272
|
<div class="nav-section" data-level="1">
|
|
172
273
|
<a class="nav-title collapsible" href="#" data-target="nav-prompts-1" >
|
|
173
274
|
<i class="ph ph-caret-right collapse-icon"></i><i class="ph ph-chat-circle-dots"></i> Prompts
|
|
174
275
|
</a>
|
|
175
276
|
<div class="nav-content collapsed" id="nav-prompts-1">
|
|
176
|
-
<a href="
|
|
177
|
-
<a href="
|
|
178
|
-
<a href="
|
|
277
|
+
<a href="prompts/beautiful-documentation-design.html" class="nav-item" data-tooltip="🎨 Beautiful Documentation Design Guide."><i class="ph ph-check-circle" style="color: #2563eb;"></i> Beautiful Documentation Design</a>
|
|
278
|
+
<a href="prompts/markdown-document-standards.html" class="nav-item" data-tooltip="Detailed introduction to the topic..."><i class="ph ph-pencil-simple" style="color: #d97706;"></i> Markdown Document Standards</a>
|
|
279
|
+
<a href="prompts/project-rename-strategy-sasha-publish.html" class="nav-item" data-tooltip="This document outlines the comprehensive strategy for renaming the @knowcode/doc-builder project to "sasha-publish", including all package references,..."><i class="ph ph-x-circle" style="color: #dc2626;"></i> Project Rename Strategy Sasha Publish</a></div></div>
|
|
179
280
|
<div class="nav-section" data-level="1">
|
|
180
281
|
<a class="nav-title collapsible" href="#" data-target="nav-test-questions-1" >
|
|
181
282
|
<i class="ph ph-caret-right collapse-icon"></i><i class="ph ph-folder"></i> Test Questions
|
|
182
283
|
</a>
|
|
183
284
|
<div class="nav-content collapsed" id="nav-test-questions-1">
|
|
184
|
-
<a href="
|
|
185
|
-
<a href="
|
|
186
|
-
<a href="
|
|
285
|
+
<a href="test-questions/how-does-it-work%3F.html" class="nav-item" data-tooltip="This is a test file to verify that question marks work properly in filenames."><i class="ph ph-file-text"></i> How Does It Work?</a>
|
|
286
|
+
<a href="test-questions/step-1%3A%20getting-started.html" class="nav-item" data-tooltip="Step 1: Getting Started."><i class="ph ph-file-text"></i> Step 1: Getting Started</a>
|
|
287
|
+
<a href="test-questions/what-is-the-purpose.html" class="nav-item" data-tooltip="Understanding the purpose of our documentation system"><i class="ph ph-file-text"></i> What Is The Purpose?</a></div></div>
|
|
187
288
|
</nav>
|
|
188
289
|
<div class="resize-handle"></div>
|
|
189
290
|
</aside>
|
|
@@ -382,7 +483,7 @@
|
|
|
382
483
|
}
|
|
383
484
|
};
|
|
384
485
|
</script>
|
|
385
|
-
<script src="
|
|
486
|
+
<script src="js/main.js"></script>
|
|
386
487
|
|
|
387
488
|
</body>
|
|
388
489
|
</html>
|
package/lib/core-builder.js
CHANGED
|
@@ -146,7 +146,7 @@ function getIconForStatus(status, isFolder = false, config = {}) {
|
|
|
146
146
|
},
|
|
147
147
|
'complete': {
|
|
148
148
|
icon: 'ph ph-check-circle',
|
|
149
|
-
color: subtleColors ? '#059669' : undefined //
|
|
149
|
+
color: subtleColors ? (config.isStaticOutput ? '#2563eb' : '#059669') : undefined // Blue for static, green for normal
|
|
150
150
|
},
|
|
151
151
|
'warning': {
|
|
152
152
|
icon: 'ph ph-warning',
|
|
@@ -361,16 +361,18 @@ function generateFaviconTag(favicon) {
|
|
|
361
361
|
return `<link rel="icon" href="${favicon}">`;
|
|
362
362
|
}
|
|
363
363
|
|
|
364
|
-
// Generate static HTML (without authentication)
|
|
364
|
+
// Generate static HTML (without authentication and with relative paths)
|
|
365
365
|
function generateStaticHTML(title, content, navigation, currentPath = '', config = {}, originalContent = '', frontMatter = {}) {
|
|
366
|
-
// Use regular generateHTML but force disable auth features
|
|
366
|
+
// Use regular generateHTML but force disable auth features and use relative paths
|
|
367
367
|
const staticConfig = {
|
|
368
368
|
...config,
|
|
369
369
|
features: {
|
|
370
370
|
...config.features,
|
|
371
371
|
authentication: false,
|
|
372
372
|
privateDirectoryAuth: false
|
|
373
|
-
}
|
|
373
|
+
},
|
|
374
|
+
// Special flag to indicate this is static output (for relative paths)
|
|
375
|
+
isStaticOutput: true
|
|
374
376
|
};
|
|
375
377
|
|
|
376
378
|
return generateHTML(title, content, navigation, currentPath, staticConfig, originalContent, frontMatter);
|
|
@@ -378,8 +380,19 @@ function generateStaticHTML(title, content, navigation, currentPath = '', config
|
|
|
378
380
|
|
|
379
381
|
// Generate HTML from template
|
|
380
382
|
function generateHTML(title, content, navigation, currentPath = '', config = {}, originalContent = '', frontMatter = {}) {
|
|
381
|
-
|
|
382
|
-
const
|
|
383
|
+
// For normal output, use standard depth calculation
|
|
384
|
+
const pathParts = currentPath.split('/').filter(p => p);
|
|
385
|
+
let depth = pathParts.length;
|
|
386
|
+
let relativePath = depth > 0 ? '../'.repeat(depth) : '';
|
|
387
|
+
|
|
388
|
+
// For static output, calculate depth differently (exclude the filename)
|
|
389
|
+
if (config.isStaticOutput) {
|
|
390
|
+
depth = pathParts.length > 1 ? pathParts.length - 1 : 0;
|
|
391
|
+
relativePath = depth > 0 ? '../'.repeat(depth) : '';
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
// For static output, use relative paths; for normal output, use absolute paths
|
|
395
|
+
const resourcePath = config.isStaticOutput ? relativePath : '/';
|
|
383
396
|
|
|
384
397
|
const siteName = config.siteName || 'Documentation';
|
|
385
398
|
const siteDescription = config.siteDescription || 'Documentation site';
|
|
@@ -486,7 +499,108 @@ ${seoTags}
|
|
|
486
499
|
<script src="https://cdn.jsdelivr.net/npm/mermaid@10.6.1/dist/mermaid.min.js"></script>
|
|
487
500
|
|
|
488
501
|
<!-- Styles -->
|
|
489
|
-
<link rel="stylesheet" href="
|
|
502
|
+
<link rel="stylesheet" href="${resourcePath}css/notion-style.css">
|
|
503
|
+
|
|
504
|
+
${config.isStaticOutput ? `
|
|
505
|
+
<!-- Blue theme overrides for static output -->
|
|
506
|
+
<style>
|
|
507
|
+
/* Override green colors with blue */
|
|
508
|
+
:root {
|
|
509
|
+
--primary: #2563eb;
|
|
510
|
+
--primary-dark: #1d4ed8;
|
|
511
|
+
--primary-light: #dbeafe;
|
|
512
|
+
--accent: #3b82f6;
|
|
513
|
+
--color-accent-green: #2563eb;
|
|
514
|
+
--color-accent-emerald: #3b82f6;
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
/* Override green status colors with blue variants */
|
|
518
|
+
.nav-item.active {
|
|
519
|
+
background-color: #dbeafe !important;
|
|
520
|
+
color: #1d4ed8 !important;
|
|
521
|
+
}
|
|
522
|
+
|
|
523
|
+
.nav-item:hover {
|
|
524
|
+
background-color: #eff6ff !important;
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
/* Override complete/success icons to blue */
|
|
528
|
+
.ph-check-circle[style*="color: #059669"] {
|
|
529
|
+
color: #2563eb !important;
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
/* Override README/home icon color */
|
|
533
|
+
.ph-house[style*="color: #059669"] {
|
|
534
|
+
color: #2563eb !important;
|
|
535
|
+
}
|
|
536
|
+
|
|
537
|
+
/* Override links */
|
|
538
|
+
a {
|
|
539
|
+
color: #2563eb;
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
a:hover {
|
|
543
|
+
color: #1d4ed8;
|
|
544
|
+
}
|
|
545
|
+
|
|
546
|
+
/* Override buttons and interactive elements */
|
|
547
|
+
.theme-toggle:hover,
|
|
548
|
+
.menu-toggle:hover {
|
|
549
|
+
background-color: #dbeafe;
|
|
550
|
+
color: #1d4ed8;
|
|
551
|
+
}
|
|
552
|
+
|
|
553
|
+
/* Override nav title hover */
|
|
554
|
+
.nav-title:hover {
|
|
555
|
+
background-color: #eff6ff;
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
/* Override breadcrumbs */
|
|
559
|
+
.breadcrumbs a {
|
|
560
|
+
color: #2563eb;
|
|
561
|
+
}
|
|
562
|
+
|
|
563
|
+
.breadcrumbs a:hover {
|
|
564
|
+
color: #1d4ed8;
|
|
565
|
+
background-color: #dbeafe;
|
|
566
|
+
}
|
|
567
|
+
|
|
568
|
+
/* Override filter icon */
|
|
569
|
+
.filter-icon {
|
|
570
|
+
color: #2563eb;
|
|
571
|
+
}
|
|
572
|
+
|
|
573
|
+
/* Override deployment info on hover */
|
|
574
|
+
.deployment-date:hover {
|
|
575
|
+
color: #2563eb;
|
|
576
|
+
}
|
|
577
|
+
|
|
578
|
+
/* Dark mode adjustments */
|
|
579
|
+
body.dark-mode {
|
|
580
|
+
--primary: #3b82f6;
|
|
581
|
+
--primary-dark: #2563eb;
|
|
582
|
+
--primary-light: #1e3a8a;
|
|
583
|
+
--accent: #60a5fa;
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
body.dark-mode .nav-item.active {
|
|
587
|
+
background-color: rgba(59, 130, 246, 0.1) !important;
|
|
588
|
+
color: #60a5fa !important;
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
body.dark-mode .nav-item:hover {
|
|
592
|
+
background-color: rgba(59, 130, 246, 0.05) !important;
|
|
593
|
+
}
|
|
594
|
+
|
|
595
|
+
body.dark-mode a {
|
|
596
|
+
color: #60a5fa;
|
|
597
|
+
}
|
|
598
|
+
|
|
599
|
+
body.dark-mode a:hover {
|
|
600
|
+
color: #93bbfc;
|
|
601
|
+
}
|
|
602
|
+
</style>
|
|
603
|
+
` : ''}
|
|
490
604
|
|
|
491
605
|
${(config.features?.authentication === 'supabase' || config.features?.privateDirectoryAuth === true) ? `
|
|
492
606
|
<!-- Hide content until auth check -->
|
|
@@ -532,7 +646,7 @@ ${seoTags}
|
|
|
532
646
|
<!-- Header -->
|
|
533
647
|
<header class="header">
|
|
534
648
|
<div class="header-content">
|
|
535
|
-
<a href="/index.html" class="logo">${siteName}</a>
|
|
649
|
+
<a href="${config.isStaticOutput ? relativePath + 'index.html' : '/index.html'}" class="logo">${siteName}</a>
|
|
536
650
|
|
|
537
651
|
<div class="header-actions">
|
|
538
652
|
<div class="deployment-info">
|
|
@@ -618,9 +732,9 @@ ${seoTags}
|
|
|
618
732
|
}
|
|
619
733
|
};
|
|
620
734
|
</script>
|
|
621
|
-
<script src="
|
|
735
|
+
<script src="${resourcePath}js/main.js"></script>
|
|
622
736
|
${(config.features?.authentication === 'supabase' || config.features?.privateDirectoryAuth === true) ? `<script src="https://unpkg.com/@supabase/supabase-js@2"></script>
|
|
623
|
-
<script src="
|
|
737
|
+
<script src="${resourcePath}js/auth.js"></script>` : ''}
|
|
624
738
|
</body>
|
|
625
739
|
</html>`;
|
|
626
740
|
}
|
|
@@ -748,7 +862,9 @@ function buildNavigationStructure(files, currentFile, config = {}) {
|
|
|
748
862
|
|
|
749
863
|
// Check if this folder has a README.md file to link to
|
|
750
864
|
const readmeFile = folderData.files.find(f => f.displayName === 'README');
|
|
751
|
-
const folderLink = readmeFile ?
|
|
865
|
+
const folderLink = readmeFile ?
|
|
866
|
+
`href="${config.isStaticOutput ? readmeFile.urlPath : '/' + readmeFile.urlPath}"` :
|
|
867
|
+
'href="#"';
|
|
752
868
|
|
|
753
869
|
// Get folder description for tooltip
|
|
754
870
|
const folderDescription = folderDescriptions[folderName] || '';
|
|
@@ -804,7 +920,8 @@ function buildNavigationStructure(files, currentFile, config = {}) {
|
|
|
804
920
|
isActive = ' active';
|
|
805
921
|
}
|
|
806
922
|
|
|
807
|
-
|
|
923
|
+
// Use relative paths for static output
|
|
924
|
+
const linkPath = config.isStaticOutput ? file.urlPath : '/' + file.urlPath;
|
|
808
925
|
const tooltip = file.summary ? ` data-tooltip="${escapeHtml(file.summary)}"` : '';
|
|
809
926
|
const icon = getIconForStatus(file.status || 'default', false, config);
|
|
810
927
|
|
|
@@ -869,7 +986,8 @@ function buildNavigationStructure(files, currentFile, config = {}) {
|
|
|
869
986
|
if (currentFile === file.urlPath) {
|
|
870
987
|
isActive = ' active';
|
|
871
988
|
}
|
|
872
|
-
|
|
989
|
+
// Use relative paths for static output
|
|
990
|
+
const linkPath = config.isStaticOutput ? file.urlPath : '/' + file.urlPath;
|
|
873
991
|
const tooltip = file.summary ? ` data-tooltip="${escapeHtml(file.summary)}"` : '';
|
|
874
992
|
const icon = getIconForStatus(file.status || 'default', false, config);
|
|
875
993
|
additionalFiles += `
|
|
@@ -918,7 +1036,9 @@ async function processMarkdownFile(filePath, outputPath, allFiles, config, useSt
|
|
|
918
1036
|
const htmlContent = processMarkdownContent(content, config);
|
|
919
1037
|
|
|
920
1038
|
// Build navigation - pass config to handle private file filtering
|
|
921
|
-
|
|
1039
|
+
// For static HTML, we need to build navigation with relative paths
|
|
1040
|
+
const navConfig = useStaticHTML ? { ...config, isStaticOutput: true } : config;
|
|
1041
|
+
const navigation = buildNavigationStructure(allFiles, urlPath, navConfig);
|
|
922
1042
|
|
|
923
1043
|
// Generate full HTML (pass original content and front matter for SEO)
|
|
924
1044
|
const html = useStaticHTML
|