Commit Graph

1685 Commits

Author SHA1 Message Date
saberzero1
6b0364e2e4
Migrate emitters to external plugins (alias-redirects, cname, favicon, content-index, og-image) 2026-02-14 00:06:26 +01:00
saberzero1
70ef4f9fd5
Migrate filters to external plugins (remove-draft, explicit-publish)
Delete internal RemoveDrafts and ExplicitPublish filter implementations,
install them as community plugins, and update quartz.config.ts to use
ExternalPlugin.RemoveDrafts().
2026-02-13 23:30:14 +01:00
saberzero1
074951afea
feat: extract transformers to community plugins and fix type compatibility
- Delete 12 internal transformer files (keep FrontMatter as internal)
- Switch quartz.config.ts to use ExternalPlugin.* for all transformers
- Align branded types with @quartz-community/types (_brand, FullSlug etc.)
- Add vfile DataMap augmentations for fields from extracted transformers
- Update all 29 plugins to @quartz-community/types v0.2.1
2026-02-13 23:07:27 +01:00
saberzero1
737c06d6d2
chore: update explorer plugin to fix SPA folder navigation 2026-02-13 21:09:57 +01:00
saberzero1
856b5d24ed
chore: updated plugins 2026-02-13 20:14:28 +01:00
saberzero1
0310d0e0cd
chore: update lockfile to fixed folder-page commit 2026-02-13 20:10:25 +01:00
saberzero1
93bd7c5caf
fix: populate ctx.trie in PageTypeDispatcher before rendering
Components like FolderContent depend on ctx.trie for folder hierarchy.
The dispatcher now lazily initializes it via trieFromAllFiles in emit
and force-rebuilds it in partialEmit to reflect file changes.
2026-02-13 20:10:06 +01:00
saberzero1
a844133e89
chore: updated plugins 2026-02-13 19:56:14 +01:00
saberzero1
007af0de34
fix: update lockfile to fixed folder-page and tag-page commits
Points to commits that remove duplicate PageList/SortFn re-exports,
fixing TS2300 duplicate identifier errors in generated plugin index.
2026-02-13 19:52:32 +01:00
saberzero1
5c6dc75934
refactor: remove migrated page body components
Delete Content, FolderContent, TagContent page components now provided
by community PageType plugins. Update components barrel export.
2026-02-13 19:35:22 +01:00
saberzero1
ce19b13808
refactor: delete old page-rendering emitters
Remove ContentPage, FolderPage, TagPage, and NotFoundPage emitters
now replaced by community PageType plugins and the PageTypeDispatcher.
2026-02-13 19:35:15 +01:00
saberzero1
4d47086cab
feat: integrate community PageType plugins (Phase D Step 6)
Replace old page-rendering emitters with PageTypeDispatcher emitter
and pageTypes array. Restructure quartz.layout.ts from three separate
exports to unified layout object with defaults and byPageType record.
Install content-page, folder-page, tag-page community plugins.
2026-02-13 19:35:10 +01:00
saberzero1
17b5c61834
refactor: update dispatcher to cast PageTypePluginEntry at boundary
Add getPageTypes() helper that casts config's PageTypePluginEntry[]
to QuartzPageTypePluginInstance[] in one place. Cast VirtualPage.slug
to FullSlug at emitPage/defaultProcessedContent call sites.
2026-02-13 19:35:03 +01:00
saberzero1
fd36066fdf
feat: add PageTypePluginEntry for cross-boundary type compatibility
Introduce PageTypePluginEntry with never[] parameter types to accept
both internal and community PageType plugins in config arrays without
casts, working around branded FullSlug contravariance mismatch.
2026-02-13 19:34:56 +01:00
saberzero1
68f3c3fadd
feat: add PageType plugin infrastructure (Phase D Step 4) 2026-02-13 19:12:19 +01:00
saberzero1
f8a682ab45
refactor: unify QuartzComponent type to structural interface (Phase C)
- Changed QuartzComponent from ComponentType<QuartzComponentProps> to callable type ((props: QuartzComponentProps) => any)
- Added optional displayName property for better debugging
- Removed ComponentType import from preact
- Removed all 13 'as QuartzComponent' type casts from quartz.layout.ts
- Community plugin components now directly assignable without casts
2026-02-13 18:26:19 +01:00
saberzero1
e6d3695657
refactor: delete 6 internal component duplicates (Phase A)
Remove Backlinks, Breadcrumbs, RecentNotes, Search, TableOfContents,
Comments, and OverflowList — all replaced by community plugins.
Delete associated styles (6) and scripts (3). Switch layout to use
Plugin.Breadcrumbs() instead of Component.Breadcrumbs().
2026-02-13 18:13:52 +01:00
saberzero1
4c2b48ba5c
chore: updated plugins 2026-02-13 18:03:46 +01:00
saberzero1
264bb7cfca
feat: migrate 7 feature components to community plugins (Phase B)
Migrate ArticleTitle, TagList, PageTitle, Darkmode, ReaderMode,
ContentMeta, and Footer from internal components to community
plugins. Update layout to use Plugin.X() pattern, remove internal
component files and their styles/scripts.

Add MIGRATION_TASKS.md documenting the full migration roadmap.
2026-02-13 17:17:51 +01:00
saberzero1
0f96097745
chore: updated plugins 2026-02-13 16:37:52 +01:00
saberzero1
eb37109909
chore: updated plugins 2026-02-13 13:36:21 +01:00
saberzero1
89a7d2a84b
fix: create plugin components once to prevent duplicate script registration 2026-02-10 02:04:58 +01:00
saberzero1
b20ccf6ae3
fix: update explorer plugin - ensure toggle buttons always work 2026-02-10 01:59:38 +01:00
saberzero1
76d52792e3
fix: update explorer plugin with toggle fix 2026-02-10 01:51:09 +01:00
saberzero1
553810d76c
chore: update graph plugin with navigation fix 2026-02-10 01:15:26 +01:00
saberzero1
7f15e08d42
docs: Quartz v5 2026-02-10 01:05:43 +01:00
saberzero1
de106de3cf
chore: update explorer plugin with duplication fix 2026-02-10 00:59:10 +01:00
saberzero1
43ece24243
chore: updated plugins 2026-02-10 00:31:04 +01:00
saberzero1
30625a9135
chore: updated plugins 2026-02-10 00:19:54 +01:00
saberzero1
dbb3aac1c0
feat: build installed plugins 2026-02-10 00:03:43 +01:00
saberzero1
34bbee4089
chore: tsconfig 2026-02-09 23:49:44 +01:00
saberzero1
c48b1ad08e
chore: updated plugins 2026-02-09 23:46:47 +01:00
saberzero1
e1dac146b8
chore: updated plugins 2026-02-09 22:52:46 +01:00
saberzero1
8f7d97c469
chore: updated plugins 2026-02-09 21:45:41 +01:00
saberzero1
4ff5b7a1f1
chore: updated plugins 2026-02-09 21:30:56 +01:00
saberzero1
748b62a49c
chore: updated plugins 2026-02-09 21:24:28 +01:00
saberzero1
888c0bbb7b
chore: updated plugins 2026-02-09 21:13:00 +01:00
saberzero1
26db91308d
chore: updated plugins 2026-02-09 20:57:33 +01:00
saberzero1
7c87965c4f
chore: updated plugins 2026-02-09 20:38:15 +01:00
saberzero1
335df98ed4
chore: updated plugins 2026-02-09 20:25:18 +01:00
saberzero1
7a37044109
chore: updated dependencies 2026-02-09 13:14:17 +01:00
saberzero1
8998994c85
chore: updated plugins 2026-02-09 13:09:43 +01:00
saberzero1
ce6fddc64b
chore: updated plugins 2026-02-09 13:03:26 +01:00
saberzero1
0f85a0b447
docs: add plugin migration analysis document
Comprehensive analysis of which Quartz v4 components and plugins
can be migrated to separate repositories, including:
- Component analysis (25 components)
- Plugin analysis (transformers, emitters, filters)
- Migration strategies for different plugin types
- Lessons learned from Explorer/Graph/Search migrations
- Recommended migration order
2026-02-09 12:47:17 +01:00
saberzero1
7394dad9cf
fix(docker): install command 2026-02-08 18:51:08 +01:00
saberzero1
0ee4a20ad6
Update quartz.lock.json with fixed plugin versions 2026-02-08 13:45:11 +01:00
saberzero1
d37f605bbc
Update GitHub Actions workflows for v5 branch and Git-based plugins
- Change branch references from v4 to v5

- Add plugin caching to speed up builds

- Use 'npx quartz plugin install' instead of 'restore'

- Update Docker workflow branch trigger
2026-02-08 13:19:56 +01:00
saberzero1
f99d54ea42
Update Dockerfile and add CI/CD documentation
- Add plugin install step to Dockerfile

- Create docs/ci-cd.md with pipeline configuration guide
2026-02-08 13:11:24 +01:00
saberzero1
1b7160b930
docs: updated plugin-specific docs 2026-02-08 12:48:14 +01:00
saberzero1
dfcaf18469
fix(types): install types from github 2026-02-08 12:44:09 +01:00