"use client"; import React from "react"; import { AutoRegisteringComponentRenderer } from "../../AutoRegisteringComponentRenderer"; import { V2TimelineSchedulerDefinition } from "./index"; import { TimelineSchedulerComponent } from "./TimelineSchedulerComponent"; /** * TimelineScheduler 렌더러 * 자동 등록 시스템을 사용하여 컴포넌트를 레지스트리에 등록 */ export class TimelineSchedulerRenderer extends AutoRegisteringComponentRenderer { static componentDefinition = V2TimelineSchedulerDefinition; render(): React.ReactElement { return ( ); } // 설정 변경 핸들러 protected handleConfigChange = (config: any) => { console.log("📥 TimelineSchedulerRenderer에서 설정 변경 받음:", config); // 상위 컴포넌트의 onConfigChange 호출 (화면 설계자에게 알림) if (this.props.onConfigChange) { this.props.onConfigChange(config); } this.updateComponent({ config }); }; // 값 변경 처리 protected handleValueChange = (value: any) => { this.updateComponent({ value }); }; } // 자동 등록 실행 TimelineSchedulerRenderer.registerSelf(); // 강제 등록 (디버깅용) if (typeof window !== "undefined") { setTimeout(() => { try { TimelineSchedulerRenderer.registerSelf(); } catch (error) { console.error("❌ TimelineScheduler 강제 등록 실패:", error); } }, 1000); }