mirror of
https://gitlab.com/MisterBiggs/brain-quartz.git
synced 2026-06-04 05:20:35 +00:00
a1a9b5233d
Add complete category system that integrates with Obsidian's wiki-linked category frontmatter. Categories appear as pills on pages and link directly to category notes (not aggregation pages). Features: - Parse [[Page Name]] syntax from category frontmatter - Display category pills styled like tags - Link directly to category notes - Integrate with graph view connections - Enable bidirectional backlinks - Preserve case in category slugs Implementation: - Added extractWikiLinks() to frontmatter transformer - Created CategoryList component for pill rendering - Modified links transformer to include categories in links array - Updated contentIndex to export category metadata - Added i18n strings for category UI elements - Set includeEmptyFiles: true to show empty category pages in graph Files modified: - quartz/plugins/transformers/frontmatter.ts - quartz/plugins/transformers/links.ts - quartz/plugins/emitters/contentIndex.tsx - quartz/components/CategoryList.tsx (new) - quartz/components/pages/CategoryContent.tsx (new) - quartz/plugins/emitters/categoryPage.tsx (new) - quartz/i18n/locales/en-US.ts - quartz/i18n/locales/definition.ts - quartz/components/index.ts - quartz.layout.ts - quartz.config.ts - README.md (updated with Quartz updater documentation) Security: Comprehensive privacy review confirms NO information leaks from private folder. All ignore patterns working correctly. Docs: Added CUSTOMIZATIONS.md with complete feature documentation, implementation details, and privacy audit results. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
96 lines
2.0 KiB
TypeScript
96 lines
2.0 KiB
TypeScript
import { FullSlug } from "../../util/path"
|
|
|
|
export interface CalloutTranslation {
|
|
note: string
|
|
abstract: string
|
|
info: string
|
|
todo: string
|
|
tip: string
|
|
success: string
|
|
question: string
|
|
warning: string
|
|
failure: string
|
|
danger: string
|
|
bug: string
|
|
example: string
|
|
quote: string
|
|
}
|
|
|
|
export interface Translation {
|
|
propertyDefaults: {
|
|
title: string
|
|
description: string
|
|
}
|
|
direction?: "ltr" | "rtl"
|
|
components: {
|
|
callout: CalloutTranslation
|
|
backlinks: {
|
|
title: string
|
|
noBacklinksFound: string
|
|
}
|
|
themeToggle: {
|
|
lightMode: string
|
|
darkMode: string
|
|
}
|
|
readerMode: {
|
|
title: string
|
|
}
|
|
explorer: {
|
|
title: string
|
|
}
|
|
footer: {
|
|
createdWith: string
|
|
}
|
|
graph: {
|
|
title: string
|
|
}
|
|
recentNotes: {
|
|
title: string
|
|
seeRemainingMore: (variables: { remaining: number }) => string
|
|
}
|
|
transcludes: {
|
|
transcludeOf: (variables: { targetSlug: FullSlug }) => string
|
|
linkToOriginal: string
|
|
}
|
|
search: {
|
|
title: string
|
|
searchBarPlaceholder: string
|
|
}
|
|
tableOfContents: {
|
|
title: string
|
|
}
|
|
contentMeta: {
|
|
readingTime: (variables: { minutes: number }) => string
|
|
}
|
|
}
|
|
pages: {
|
|
rss: {
|
|
recentNotes: string
|
|
lastFewNotes: (variables: { count: number }) => string
|
|
}
|
|
error: {
|
|
title: string
|
|
notFound: string
|
|
home: string
|
|
}
|
|
folderContent: {
|
|
folder: string
|
|
itemsUnderFolder: (variables: { count: number }) => string
|
|
}
|
|
tagContent: {
|
|
tag: string
|
|
tagIndex: string
|
|
itemsUnderTag: (variables: { count: number }) => string
|
|
showingFirst: (variables: { count: number }) => string
|
|
totalTags: (variables: { count: number }) => string
|
|
}
|
|
categoryContent: {
|
|
category: string
|
|
categoryIndex: string
|
|
itemsUnderCategory: (variables: { count: number }) => string
|
|
showingFirst: (variables: { count: number }) => string
|
|
totalCategories: (variables: { count: number }) => string
|
|
}
|
|
}
|
|
}
|