From 3dd30d7f76aeb37c3c695d58f054114446406378 Mon Sep 17 00:00:00 2001 From: zenn Date: Thu, 2 Jul 2026 15:15:33 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B4=80=EB=A6=AC=EC=9E=90=20=EB=AF=B8?= =?UTF-8?q?=EB=94=94=EC=96=B4=20=ED=8E=98=EC=9D=B4=EC=A7=80=EB=84=A4?= =?UTF-8?q?=EC=9D=B4=EC=85=98=EA=B3=BC=20=EB=9D=BC=EC=9D=B4=EB=B8=8C=20?= =?UTF-8?q?=EB=A0=8C=EB=8D=94=EB=A7=81=20=EA=B0=9C=EC=84=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../content/ContentMarkdownEditableInline.vue | 11 +- .../content/ContentMarkdownRenderer.vue | 1 - .../content/ContentMarkdownToggleEditor.vue | 2 +- docs/changelog.md | 7 + docs/deploy.md | 2 +- docs/history.md | 6 + docs/map.md | 8 +- docs/spec.md | 12 +- docs/update.md | 7 + package-lock.json | 4 +- package.json | 2 +- pages/admin/media/index.vue | 205 +++++++++++++++++- 12 files changed, 242 insertions(+), 25 deletions(-) diff --git a/components/content/ContentMarkdownEditableInline.vue b/components/content/ContentMarkdownEditableInline.vue index edd23b5..8d1c24e 100644 --- a/components/content/ContentMarkdownEditableInline.vue +++ b/components/content/ContentMarkdownEditableInline.vue @@ -2,6 +2,7 @@ import { getEditableCaretOffset, markdownInlineToHtml, + markdownMultilineInlineToHtml, readEditableTextFromElement, setEditableCaretOffset } from '../../lib/markdown-inline.js' @@ -160,6 +161,12 @@ const resolvedEnterMode = computed(() => { */ const toEditorHtml = () => markdownInlineToHtml(props.modelValue.replace(/\n/g, ' ')) +/** + * modelValue를 멀티라인 편집용 HTML로 변환한다. + * @returns {string} HTML + */ +const toMultilineEditorHtml = () => markdownMultilineInlineToHtml(props.modelValue) + /** * plainText 모드용 편집 텍스트를 만든다. * @param {string} value - 본문 @@ -189,7 +196,9 @@ const syncEditorHtml = (options = {}) => { return } - rootRef.value.innerHTML = toEditorHtml() + rootRef.value.innerHTML = resolvedEnterMode.value === 'multiline' + ? toMultilineEditorHtml() + : toEditorHtml() } onMounted(() => { diff --git a/components/content/ContentMarkdownRenderer.vue b/components/content/ContentMarkdownRenderer.vue index e61c5d8..662b889 100644 --- a/components/content/ContentMarkdownRenderer.vue +++ b/components/content/ContentMarkdownRenderer.vue @@ -3193,7 +3193,6 @@ onBeforeUnmount(() => { block-class="content-markdown-renderer__quote-line" :model-value="block.text" enter-mode="multiline" - plain-text arrow-exit-creates-line preserve-empty-line-on-full-delete empty-markdown-line="> " diff --git a/components/content/ContentMarkdownToggleEditor.vue b/components/content/ContentMarkdownToggleEditor.vue index 7fc13a9..06cb6eb 100644 --- a/components/content/ContentMarkdownToggleEditor.vue +++ b/components/content/ContentMarkdownToggleEditor.vue @@ -110,7 +110,7 @@ const onExitBelow = (payload) => { class="content-markdown-toggle-editor" data-editable-scope :title="titleDraft" - :default-open="true" + :default-open="defaultOpen" animated >