This commit is contained in:
Korbs 2024-10-24 22:05:52 -04:00
parent 07efc68286
commit 01f64c14cc
16 changed files with 105 additions and 37 deletions

View file

@ -6,13 +6,13 @@ import {ArrowDownCircle} from "@iconoir/vue"
<div class="mobile-docs-dropdown"> <div class="mobile-docs-dropdown">
<span onclick="ToggleMDD()">{Project} <ArrowDownCircle/></span> <span onclick="ToggleMDD()">{Project} <ArrowDownCircle/></span>
<div class="mdd-expandable"> <div class="mdd-expandable">
<slot name="sidebar-items"/> <slot/>
</div> </div>
</div> </div>
<div class="sidebar"> <div class="sidebar">
<div class="sb-docs"> <div class="sb-docs">
<slot name="sidebar-items"/> <slot/>
</div> </div>
</div> </div>

8
src/content/config.ts Normal file
View file

@ -0,0 +1,8 @@
import { defineCollection, z } from 'astro:content';
const docs = defineCollection({
type: 'content',
schema: z.object({title: z.string()}),
});
export const Documents = { docs }

View file

@ -9,53 +9,22 @@ import Default from "@layouts/Default.astro";
// Components // Components
import Sidebar from "@components/docs/sidebar.astro"; import Sidebar from "@components/docs/sidebar.astro";
// Hightlight Active Project
if (ProjectCollection === 'minpluto') {
var Hightlight_MinPluto = true
}
if (ProjectCollection === 'zorn') {
var Hightlight_Zorn = true
}
if (ProjectCollection === 'penpot-desktop') {
var Hightlight_Penpot = true
}
--- ---
<Default MobileTitle="SudoVanilla Documentation"> <Default MobileTitle="SudoVanilla Documentation">
<Fragment slot="sub-header"> <Fragment slot="sub-header">
<div> <div>
<p class="header-sub-service"><span id="show-w-scroll">SudoVanilla</span> Documentations</p> <p class="header-sub-service"><span id="show-w-scroll">SudoVanilla</span> Documentations</p>
<!-- {EnableSearch ? <a href="#" onclick="ToggleSearchOnclick()"><Search/> Search</a> : null} -->
</div> </div>
<div> <div>
{Hightlight_MinPluto ? <!-- <a href="/docs/minpluto/introduction/">MinPluto</a>
<a style="color: white;" href="/docs/minpluto/introduction/">MinPluto</a> <a href="/docs/zorn/introduction/">Zorn Player</a>
: <a href="/docs/penpot-desktop/introduction/">Penpot Desktop</a> -->
<a href="/docs/minpluto/introduction/">MinPluto</a>
}
{Hightlight_Zorn ?
<a style="color: white;" href="/docs/zorn/introduction/">Zorn Player</a>
:
<a href="/docs/zorn/introduction/">Zorn Player</a>
}
{Hightlight_Penpot ?
<a style="color: white;" href="/docs/penpot-desktop/introduction/">Penpot Desktop</a>
:
<a href="/docs/penpot-desktop/introduction/">Penpot Desktop</a>
}
</div> </div>
</Fragment> </Fragment>
<Fragment slot="body"> <Fragment slot="body">
<div class="document-layout"> <div class="document-layout">
<!-- {EnableSearch ?
<SearchModal/>
:
null
} -->
<Sidebar>
<slot slot="sidebar-items"/>
</Sidebar>
<div class="doc-content"> <div class="doc-content">
<slot slot="content"/>
</div> </div>
</div> </div>
</Fragment> </Fragment>

View file

@ -0,0 +1,91 @@
---
// Icons
import {ServerConnection,PeaceHand, SlashSquare, ClipboardCheck} from "@iconoir/vue";
import {ServerConnection,PeaceHand, QuestionMark, WifiOff, DownloadCircle, ShieldAlert, ChatBubble} from "@iconoir/vue";
// Get Colletion and Slug
import { getCollection, getEntry } from "astro:content";
import Document from "@layouts/Document.astro"
const { slug } = Astro.params;
if (!slug) throw new Error("Slug not found");
const post = await getEntry("docs", slug);
if (!post) throw new Error("No post found for this slug");
const { Content } = await post.render();
/// Generate static pages
export async function getStaticPaths() {
const posts = await getCollection("docs");
return posts.map((post) => ({ params: { slug: post.slug } }));
}
export const prerender = true;
// Components
import Sidebar from "@components/docs/sidebar.astro";
---
<Document>
<div class="document-layout">
<Sidebar>
<h2>Zorn</h2>
<a href="/docs/zorn/introduction/">
<PeaceHand/>
<p>Introduction </p>
</a>
<h2>MinPluto</h2>
<a href="/docs/minpluto/introduction/">
<PeaceHand/>
<p>Introduction </p>
</a>
<a href="/docs/minpluto/compatibility/">
<ClipboardCheck />
<p>Compatibility</p>
</a>
<a href="/docs/minpluto/requirements/">
<ClipboardCheck />
<p>Requirements</p>
</a>
<a href="/docs/minpluto/self-hosting/">
<ServerConnection />
<p>Self-Hosting</p>
</a>
<a href="/docs/minpluto/api/">
<SlashSquare />
<p>API</p>
</a>
<h2>Penpot Desktop</h2>
<a href="/docs/penpot-desktop/introduction/">
<PeaceHand/>
<p>Introduction </p>
</a>
<a href="/docs/penpot-desktop/faq/">
<QuestionMark />
<p>FAQ</p>
</a>
<a href="/docs/penpot-desktop/offline-use/">
<WifiOff />
<p>Offline Use</p>
</a>
<a href="/docs/penpot-desktop/instance/">
<ServerConnection />
<p>Instance</p>
</a>
<a href="/docs/penpot-desktop/progress/">
<DownloadCircle />
<p>Installation</p>
</a>
<a href="/docs/penpot-desktop/progress/">
<ShieldAlert />
<p>Security Policy</p>
</a>
<a href="/docs/penpot-desktop/progress/">
<ChatBubble />
<p>Support</p>
</a>
</Sidebar>
<div class="doc-content">
<Content/>
</div>
</div>
</Document>