feat: Ref 호환 Tiptap 편집 기능 확장

국가 방침과 임관 권유 편집기에 글꼴, 크기, 색상, 정렬, 구분선과 sam-image 업로드를 추가한다. Ref Chromium 비교와 HTML 정화, 업로드 경계를 회귀 테스트로 고정한다.
This commit is contained in:
2026-08-19 16:53:11 +00:00
parent 9d45c8dd4c
commit 45ac97c839
7 changed files with 535 additions and 37 deletions
@@ -218,7 +218,7 @@ onMounted(() => void loadStratFinan());
</div>
<div class="notice-title">국가 방침 &amp; 임관 권유 메시지</div>
<section id="notice-form" class="message-form">
<section id="notice-form" class="message-form" :class="{ 'message-form--editing': editingNationMsg }">
<header class="green-header">
<span>국가 방침</span>
<span>
@@ -249,9 +249,18 @@ onMounted(() => void loadStratFinan());
</span>
</header>
<div v-if="!editingNationMsg" class="message-preview" v-html="nationMsg || '내용 없음'" />
<LegacyHtmlEditor v-else v-model="nationMsgDraft" :max-length="16384" />
<LegacyHtmlEditor
v-else
v-model="nationMsgDraft"
:max-length="16384"
aria-label="국가 방침"
/>
</section>
<section id="scout-message-form" class="message-form">
<section
id="scout-message-form"
class="message-form"
:class="{ 'message-form--editing': editingScoutMsg }"
>
<header class="green-header">
<span>임관 권유</span>
<span>
@@ -283,7 +292,12 @@ onMounted(() => void loadStratFinan());
</header>
<div class="scout-limit">870px x 200px를 넘어서는 내용은 표시되지 않습니다.</div>
<div v-if="!editingScoutMsg" class="message-preview scout-preview" v-html="scoutMsg || '내용 없음'" />
<LegacyHtmlEditor v-else v-model="scoutMsgDraft" :max-length="1000" />
<LegacyHtmlEditor
v-else
v-model="scoutMsgDraft"
:max-length="1000"
aria-label="임관 권유"
/>
</section>
<div class="finance-title">예산&amp;정책</div>
@@ -712,6 +726,11 @@ textarea {
height: 61.5px;
overflow: hidden;
}
#notice-form.message-form--editing,
#scout-message-form.message-form--editing {
height: auto;
overflow: visible;
}
.finance-grid {
height: 218.63px;
margin-bottom: 15.25px;