43 lines
1.1 KiB
TypeScript
43 lines
1.1 KiB
TypeScript
|
|
'use client';
|
|||
|
|
|
|||
|
|
import React from 'react';
|
|||
|
|
|
|||
|
|
interface DashboardToolbarProps {
|
|||
|
|
onClearCanvas: () => void;
|
|||
|
|
onSaveLayout: () => void;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 대시보드 툴바 컴포넌트
|
|||
|
|
* - 전체 삭제, 레이아웃 저장 등 주요 액션 버튼
|
|||
|
|
*/
|
|||
|
|
export function DashboardToolbar({ onClearCanvas, onSaveLayout }: DashboardToolbarProps) {
|
|||
|
|
return (
|
|||
|
|
<div className="absolute top-5 left-5 bg-white p-3 rounded-lg shadow-lg z-50 flex gap-3">
|
|||
|
|
<button
|
|||
|
|
onClick={onClearCanvas}
|
|||
|
|
className="
|
|||
|
|
px-4 py-2 border border-gray-300 bg-white rounded-md
|
|||
|
|
text-sm font-medium text-gray-700
|
|||
|
|
hover:bg-gray-50 hover:border-gray-400
|
|||
|
|
transition-colors duration-200
|
|||
|
|
"
|
|||
|
|
>
|
|||
|
|
🗑️ 전체 삭제
|
|||
|
|
</button>
|
|||
|
|
|
|||
|
|
<button
|
|||
|
|
onClick={onSaveLayout}
|
|||
|
|
className="
|
|||
|
|
px-4 py-2 border border-gray-300 bg-white rounded-md
|
|||
|
|
text-sm font-medium text-gray-700
|
|||
|
|
hover:bg-gray-50 hover:border-gray-400
|
|||
|
|
transition-colors duration-200
|
|||
|
|
"
|
|||
|
|
>
|
|||
|
|
💾 레이아웃 저장
|
|||
|
|
</button>
|
|||
|
|
</div>
|
|||
|
|
);
|
|||
|
|
}
|