mirror of
https://github.com/alrayyes/wiki.git
synced 2025-05-06 00:45:05 +00:00
local and global graph
This commit is contained in:
parent
8bfee04c8c
commit
c4cf0dcb02
23 changed files with 1288 additions and 110 deletions
quartz/plugins/emitters
|
@ -14,19 +14,20 @@ const defaultOptions: Options = {
|
|||
indexExternalLinks: false,
|
||||
}
|
||||
|
||||
type ContentIndex = Map<string, {
|
||||
export type ContentIndex = Map<string, ContentDetails>
|
||||
export type ContentDetails = {
|
||||
title: string,
|
||||
links?: string[],
|
||||
tags?: string[],
|
||||
content: string,
|
||||
}>
|
||||
}
|
||||
|
||||
export const ContentIndex: QuartzEmitterPlugin<Options> = (userOpts) => {
|
||||
const opts = { ...userOpts, ...defaultOptions }
|
||||
return {
|
||||
name: "ContentIndex",
|
||||
async emit(_contentDir, _cfg, content, _resources, emit) {
|
||||
const fp = "contentIndex"
|
||||
const fp = path.join("static", "contentIndex")
|
||||
const linkIndex: ContentIndex = new Map()
|
||||
for (const [tree, file] of content) {
|
||||
let slug = trimPathSuffix(file.data.slug!)
|
||||
|
|
|
@ -2,7 +2,7 @@ import { JSResourceToScriptElement, StaticResources } from "../../resources"
|
|||
import { QuartzEmitterPlugin } from "../types"
|
||||
import { render } from "preact-render-to-string"
|
||||
import { QuartzComponent } from "../../components/types"
|
||||
import { resolveToRoot } from "../../path"
|
||||
import { resolveToRoot, trimPathSuffix } from "../../path"
|
||||
import HeaderConstructor from "../../components/Header"
|
||||
import { QuartzComponentProps } from "../../components/types"
|
||||
import BodyConstructor from "../../components/Body"
|
||||
|
@ -56,7 +56,7 @@ export const ContentPage: QuartzEmitterPlugin<Options> = (opts) => {
|
|||
const Content = opts.content
|
||||
const doc = <html>
|
||||
<Head {...componentData} />
|
||||
<body data-slug={file.data.slug}>
|
||||
<body data-slug={trimPathSuffix(file.data.slug ?? "")}>
|
||||
<div id="quartz-root" class="page">
|
||||
<Header {...componentData} >
|
||||
{header.map(HeaderComponent => <HeaderComponent {...componentData} />)}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue