34 lines
963 B
TypeScript
34 lines
963 B
TypeScript
"use client";
|
|
|
|
import React from "react";
|
|
import { AutoRegisteringComponentRenderer } from "../../AutoRegisteringComponentRenderer";
|
|
import { NumberingRuleDefinition } from "./index";
|
|
import { NumberingRuleComponent } from "./NumberingRuleComponent";
|
|
|
|
/**
|
|
* 채번 규칙 렌더러
|
|
* 자동 등록 시스템을 사용하여 컴포넌트를 레지스트리에 등록
|
|
*/
|
|
export class NumberingRuleRenderer extends AutoRegisteringComponentRenderer {
|
|
static componentDefinition = NumberingRuleDefinition;
|
|
|
|
render(): React.ReactElement {
|
|
return <NumberingRuleComponent {...this.props} renderer={this} />;
|
|
}
|
|
|
|
/**
|
|
* 채번 규칙 컴포넌트 특화 메서드
|
|
*/
|
|
protected handleValueChange = (value: any) => {
|
|
this.updateComponent({ value });
|
|
};
|
|
}
|
|
|
|
// 자동 등록 실행
|
|
NumberingRuleRenderer.registerSelf();
|
|
|
|
// Hot Reload 지원 (개발 모드)
|
|
if (process.env.NODE_ENV === "development") {
|
|
NumberingRuleRenderer.enableHotReload();
|
|
}
|