このコミットが含まれているのは:
2026-07-04 19:03:50 +09:00
コミット 6a57dc53bf
22個のファイルの変更1099行の追加114行の削除
+24
ファイルの表示
@@ -9,6 +9,7 @@ import { useLocation, useNavigate } from 'react-router-dom'
import FieldError from '@/components/common/FieldError'
import FormField from '@/components/common/FormField'
import MainArea from '@/components/layout/MainArea'
import { useUserSettings } from '@/components/users/UserSettingsProvider'
import { toast } from '@/components/ui/use-toast'
import { SITE_TITLE } from '@/config'
import { apiPost } from '@/lib/api'
@@ -23,6 +24,27 @@ import type { User, WikiPage } from '@/types'
const mdParser = new MarkdownIt
type EditorView = {
menu: boolean
md: boolean
html: boolean }
const editorView = (
mode: 'split' | 'write' | 'preview',
): EditorView => {
switch (mode)
{
case 'write':
return { menu: true, md: true, html: false }
case 'preview':
return { menu: true, md: false, html: true }
default:
return { menu: true, md: true, html: true }
}
}
type Props = { user: User | null }
type WikiFormField = 'title' | 'body'
@@ -30,6 +52,7 @@ type WikiFormField = 'title' | 'body'
const WikiNewPage: FC<Props> = ({ user }) => {
const editable = canEditContent (user)
const { settings } = useUserSettings ()
const location = useLocation ()
const navigate = useNavigate ()
@@ -92,6 +115,7 @@ const WikiNewPage: FC<Props> = ({ user }) => {
{() => (
<MdEditor value={body}
style={{ height: '500px' }}
config={{ view: editorView (settings.wikiEditorMode) }}
renderHTML={text => mdParser.render (text)}
onChange={({ text }) => setBody (text)}/>)}
</FormField>