36 lines
1014 B
TypeScript
36 lines
1014 B
TypeScript
"use client";
|
|
|
|
import React from "react";
|
|
import { AutoRegisteringComponentRenderer } from "../../AutoRegisteringComponentRenderer";
|
|
import { UniversalFormModalDefinition } from "./index";
|
|
import { UniversalFormModalComponent } from "./UniversalFormModalComponent";
|
|
|
|
/**
|
|
* 범용 폼 모달 렌더러
|
|
* 자동 등록 시스템을 사용하여 컴포넌트를 레지스트리에 등록
|
|
*/
|
|
export class UniversalFormModalRenderer extends AutoRegisteringComponentRenderer {
|
|
static componentDefinition = UniversalFormModalDefinition;
|
|
|
|
render(): React.ReactElement {
|
|
return <UniversalFormModalComponent {...this.props} />;
|
|
}
|
|
|
|
/**
|
|
* 폼 데이터 변경 핸들러
|
|
*/
|
|
protected handleFormDataChange = (data: any) => {
|
|
this.updateComponent({ formData: data });
|
|
};
|
|
|
|
/**
|
|
* 저장 완료 핸들러
|
|
*/
|
|
protected handleSave = (data: any) => {
|
|
console.log("[UniversalFormModalRenderer] 저장 완료:", data);
|
|
};
|
|
}
|
|
|
|
// 자동 등록 실행
|
|
UniversalFormModalRenderer.registerSelf();
|