import * as Uebersicht from "uebersicht"; import * as Utils from "../../utils"; const { React } = Uebersicht; /** * Item component to render different types of settings inputs. * @param {Object} props - Component properties. * @param {string} props.code - Unique code for the setting. * @param {React.Component} props.Component - Custom component for the setting. * @param {any} props.defaultValue - Default value of the setting. * @param {string} props.label - Label for the setting. * @param {string} props.type - Type of the setting input. * @param {Array} [props.options] - Options for select or radio inputs. * @param {string} [props.placeholder] - Placeholder for text inputs. * @param {number} [props.minHeight] - Minimum height for textarea inputs. * @param {Function} props.onChange - Change handler for the setting input. */ export default function SettingsItem({ code, Component, defaultValue, label, type, options, placeholder, minHeight, onChange, }) { const onClick = (e) => Utils.clickEffect(e); if (type === "component") { return ; } if (type === "select") { return ( ); } if (type === "radio") { return options.map((option) => (
)); } if (type === "text" || type === "color") { return (