Final phase of the wiki upgrade (see WIKI_UPGRADE.md). Schema (additive): wiki_revisions table (per-save content snapshots). The FULLTEXT index on wiki_pages(title, body) shipped in Phase 1. Search: - MATCH ... AGAINST natural-language search over title + body, ordered by relevance - public: GET /public/wiki?q= (published only); admin: GET /admin/wiki?q= (all statuses) - public wiki index gains a search box; admin list gains a search field Revision history: - every create/update snapshots the page into wiki_revisions - admin endpoints: list revisions, get one, and restore (restore overwrites the page, rebuilds links, and appends a new revision — history stays append-only); logged as wiki.revision.restore - editor gains a History modal: revision list + word-level diff (jsdiff) of a chosen revision against the current page, with one-click restore Verified end-to-end: search matches body and title; two edits produce three revisions; diff renders added/removed words; restore reverts and records a new revision. No console errors. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
27 lines
594 B
JSON
27 lines
594 B
JSON
{
|
|
"name": "uomysticmoon-client",
|
|
"private": true,
|
|
"version": "1.0.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "vite build",
|
|
"preview": "vite preview"
|
|
},
|
|
"dependencies": {
|
|
"@tiptap/extension-image": "^2.27.2",
|
|
"@tiptap/extension-link": "^2.27.2",
|
|
"@tiptap/react": "^2.27.2",
|
|
"@tiptap/starter-kit": "^2.27.2",
|
|
"diff": "^5.2.2",
|
|
"dompurify": "^3.4.11",
|
|
"react": "^18.3.1",
|
|
"react-dom": "^18.3.1",
|
|
"react-router-dom": "^6.26.2"
|
|
},
|
|
"devDependencies": {
|
|
"@vitejs/plugin-react": "^4.3.2",
|
|
"vite": "^5.4.8"
|
|
}
|
|
}
|