"use client";

import React from "react";
import { AutoRegisteringComponentRenderer } from "../../AutoRegisteringComponentRenderer";
import { SplitPanelLayout2Definition } from "./index";
import { SplitPanelLayout2Component } from "./SplitPanelLayout2Component";

/**
 * SplitPanelLayout2 렌더러
 * 자동 등록 시스템을 사용하여 컴포넌트를 레지스트리에 등록
 */
export class SplitPanelLayout2Renderer extends AutoRegisteringComponentRenderer {
  static componentDefinition = SplitPanelLayout2Definition;

  render(): React.ReactElement {
    return <SplitPanelLayout2Component {...this.props} renderer={this} />;
  }

  /**
   * 컴포넌트별 특화 메서드들
   */

  // 좌측 패널 데이터 새로고침
  public refreshLeftPanel() {
    // 컴포넌트 내부에서 처리
  }

  // 우측 패널 데이터 새로고침
  public refreshRightPanel() {
    // 컴포넌트 내부에서 처리
  }

  // 선택된 좌측 항목 가져오기
  public getSelectedLeftItem(): any {
    // 컴포넌트 내부 상태에서 가져옴
    return null;
  }
}

// 자동 등록 실행
SplitPanelLayout2Renderer.registerSelf();

