From bcd462d6e60871b86008e072f4b914138fc5c328 Mon Sep 17 00:00:00 2001 From: joonhoekim <26rote@gmail.com> Date: Mon, 11 Aug 2025 09:34:40 +0000 Subject: (김준회) 리치텍스트에디터 (결재템플릿을 위한 공통컴포넌트), command-menu 에러 수정, 결재 템플릿 관리, 결재선 관리, ECC RFQ+PR Item 수신시 비즈니스테이블(ProcurementRFQ) 데이터 적재, WSDL 오류 수정 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/rich-text-editor/TextAlignMenu.tsx | 46 +++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 components/rich-text-editor/TextAlignMenu.tsx (limited to 'components/rich-text-editor/TextAlignMenu.tsx') diff --git a/components/rich-text-editor/TextAlignMenu.tsx b/components/rich-text-editor/TextAlignMenu.tsx new file mode 100644 index 00000000..98cc0d4c --- /dev/null +++ b/components/rich-text-editor/TextAlignMenu.tsx @@ -0,0 +1,46 @@ +'use client' + +import React from 'react' +import type { Editor } from '@tiptap/react' +import { Button } from '@/components/ui/button' +import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from '@/components/ui/dropdown-menu' +import { AlignCenter, AlignJustify, AlignLeft, AlignRight } from 'lucide-react' + +interface TextAlignMenuProps { + editor: Editor + disabled?: boolean + currentAlign?: 'left' | 'center' | 'right' | 'justify' + executeCommand: (command: () => void) => void +} + +export function TextAlignMenu({ editor, disabled, executeCommand }: TextAlignMenuProps) { + return ( + + e.preventDefault()}> + + + + executeCommand(() => editor.chain().focus().setTextAlign('left').run())} className="flex items-center"> + + 왼쪽 정렬 + + executeCommand(() => editor.chain().focus().setTextAlign('center').run())} className="flex items-center"> + + 가운데 정렬 + + executeCommand(() => editor.chain().focus().setTextAlign('right').run())} className="flex items-center"> + + 오른쪽 정렬 + + executeCommand(() => editor.chain().focus().setTextAlign('justify').run())} className="flex items-center"> + + 양쪽 정렬 + + + + ) +} + + -- cgit v1.2.3