"use client";

import React from "react";
import { AutoRegisteringComponentRenderer } from "../../AutoRegisteringComponentRenderer";
import { InputDefinition } from "./index";
import { InputComponent } from "./InputComponent";

/**
 * Input 렌더러
 *
 * AutoRegisteringComponentRenderer 를 상속하여 import 시점에 자동으로
 * ComponentRegistry 에 등록된다. components/index.ts 에서 이 파일을 import
 * 해야 등록이 실행됨.
 */
export class InputRenderer extends AutoRegisteringComponentRenderer {
  static componentDefinition = InputDefinition;

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

// 자동 등록
InputRenderer.registerSelf();

// Hot reload (dev)
if (process.env.NODE_ENV === "development") {
  InputRenderer.enableHotReload();
}
