"use client"; import React from "react"; import { AutoRegisteringComponentRenderer } from "../../AutoRegisteringComponentRenderer"; import { RackStructureDefinition } from "./index"; import { RackStructureComponent } from "./RackStructureComponent"; import { GeneratedLocation } from "./types"; /** * 렉 구조 설정 렌더러 * 자동 등록 시스템을 사용하여 컴포넌트를 레지스트리에 등록 */ export class RackStructureRenderer extends AutoRegisteringComponentRenderer { static componentDefinition = RackStructureDefinition; render(): React.ReactElement { const { formData, isPreview, config } = this.props as any; return ( ); } /** * 생성된 위치 데이터 변경 핸들러 */ protected handleLocationsChange = (locations: GeneratedLocation[]) => { // 생성된 위치 데이터를 formData에 저장 this.updateComponent({ generatedLocations: locations }); }; } // 자동 등록 실행 RackStructureRenderer.registerSelf(); // Hot Reload 지원 (개발 모드) if (process.env.NODE_ENV === "development") { RackStructureRenderer.enableHotReload(); }