docs: Better support for module name collisions

In /docs/modules/, show both modules if module IDs are not globally unique.
Show both modules' docs on same page in expandable containers.

In /docs/json/, both modules appear in lists in the doc, but disambiguating them isn't implemented yet.
This commit is contained in:
Matthew Holt 2021-06-02 15:16:15 -06:00
parent 5c3a67692e
commit e132c5c454
No known key found for this signature in database
GPG key ID: 2A349DD577D586A5
13 changed files with 265 additions and 126 deletions

View file

@ -18,9 +18,9 @@
<div class="article-container">
<div class="paper" id="paper1"></div>
<div class="paper" id="paper2"></div>
<article class="paper paper3">
{{markdown $markdownFile.Body}}
</article>
<div class="paper paper3">
<article>{{markdown $markdownFile.Body}}</article>
</div>
</div>
<div class="sidebar"></div>
</main>

View file

@ -15,13 +15,15 @@
<div class="article-container">
<div class="paper" id="paper1"></div>
<div class="paper" id="paper2"></div>
<article class="paper paper3">
<div class="breadcrumbs">
<!--Populated by JS-->
</div>
{{include "/includes/docs-renderbox.html"}}
{{include "/includes/docs-details.html"}}
</article>
<div class="paper paper3">
<article id="json-docs-container">
<div class="breadcrumbs">
<!--Populated by JS-->
</div>
{{include "/includes/docs-renderbox.html"}}
{{include "/includes/docs-details.html"}}
</article>
</div>
</div>
<div class="sidebar"></div>
</main>

View file

@ -15,27 +15,38 @@
<div class="article-container">
<div class="paper" id="paper1"></div>
<div class="paper" id="paper2"></div>
<article id="module-list-container" class="paper paper3">
<h1>All Modules</h1>
<p>
This page lists all registered Caddy modules.
</p>
<p>
We recommend using your browser's "Find in page" feature for quick lookups.
</p>
<table id="module-list">
<tr>
<th>Module ID</th>
<th>Description</th>
</tr>
<!--Populated by JS-->
</table>
</article>
<article id="module-docs-container" class="paper paper3">
<h1 id="module-name"><!--Populated by JS--></h1>
{{include "/includes/docs-renderbox.html"}}
{{include "/includes/docs-details.html"}}
</article>
<div class="paper paper3">
<article id="module-list-container">
<h1>All Modules</h1>
<p>
This page lists all registered Caddy modules. Modules are plugins which extend Caddy's <a href="/docs/json/">JSON configuration structure</a>.
</p>
<p>
We recommend using your browser's "Find in page" feature for quick lookups.
</p>
<table id="module-list">
<tr>
<th></th>
<th>Module ID</th>
<th>Description</th>
</tr>
<!--Populated by JS-->
</table>
</article>
<div id="module-docs-container">
<div class="pad"><h1 class="module-name"><!--Populated by JS--></h1></div>
<div id="module-multiple-repos">
There is more than one module named <b class="module-name"><!--Populated by JS--></b>. Choose one by its repository.
</div>
<div id="module-template" class="module-repo-container">
<div class="module-repo-selector"></div>
<article>
{{include "/includes/docs-renderbox.html"}}
{{include "/includes/docs-details.html"}}
</article>
</div>
</div>
</div>
</div>
<div class="sidebar"></div>
</main>