41 lines
1.3 KiB
TypeScript
41 lines
1.3 KiB
TypeScript
"use client";
|
|
|
|
import React from "react";
|
|
import { createComponentDefinition } from "../../utils/createComponentDefinition";
|
|
import { ComponentCategory } from "@/types/component";
|
|
import type { WebType } from "@/types/screen";
|
|
import { ImageWidget } from "@/components/screen/widgets/types/ImageWidget";
|
|
import { ImageWidgetConfigPanel } from "./ImageWidgetConfigPanel";
|
|
|
|
/**
|
|
* ImageWidget 컴포넌트 정의
|
|
* image-widget 컴포넌트입니다
|
|
*/
|
|
export const ImageWidgetDefinition = createComponentDefinition({
|
|
id: "image-widget",
|
|
name: "이미지 위젯",
|
|
nameEng: "Image Widget",
|
|
description: "이미지 표시 및 업로드",
|
|
category: ComponentCategory.INPUT,
|
|
webType: "image",
|
|
component: ImageWidget,
|
|
defaultConfig: {
|
|
type: "image-widget",
|
|
webType: "image",
|
|
maxSize: 5 * 1024 * 1024, // 5MB
|
|
acceptedFormats: ["image/jpeg", "image/png", "image/gif", "image/webp"],
|
|
},
|
|
defaultSize: { width: 200, height: 200 },
|
|
configPanel: ImageWidgetConfigPanel,
|
|
icon: "Image",
|
|
tags: ["image", "upload", "media", "picture", "photo"],
|
|
version: "1.0.0",
|
|
author: "개발팀",
|
|
documentation: "https://docs.example.com/components/image-widget",
|
|
});
|
|
|
|
// 컴포넌트 내보내기
|
|
export { ImageWidget } from "@/components/screen/widgets/types/ImageWidget";
|
|
export { ImageWidgetRenderer } from "./ImageWidgetRenderer";
|
|
|