/* eslint-disable no-console */ import React from 'react'; import classNames from 'classnames'; import { InputText } from '@teambit/design.inputs.input-text'; import { TextArea } from '@teambit/design.inputs.text-area'; import { Dropdown } from '@teambit/design.inputs.dropdown'; import { MenuItem } from '@teambit/design.inputs.selectors.menu-item'; import { ColorPicker, ColorsBox } from '@teambit/design.ui.input.color-picker'; import { DatePicker } from '@teambit/design.inputs.date-picker'; import { Toggle } from '@teambit/design.inputs.toggle-switch'; import type { SelectOption } from '@teambit/compositions.ui.composition-live-controls'; import { useOverlay, BitPortal } from './use-overlay'; import styles from './live-control-input.module.scss'; import overlayStyles from './overlay.module.scss'; type InputComponentProps = { id: string; value: any; onChange: (value: any) => void; meta?: any; }; type InputComponent = React.FC; function ShortTextInput({ value, onChange, id }: InputComponentProps) { const [inputValue, setInputValue] = React.useState(value || ''); React.useEffect(() => { setInputValue(value || ''); }, [value]); const handleChange = (e: React.ChangeEvent) => { const newValue = e.target.value; onChange(newValue || ''); setInputValue(newValue || ''); }; return (
); } function LongTextInput({ value, onChange, id }: InputComponentProps) { const [inputValue, setInputValue] = React.useState(value || ''); React.useEffect(() => { setInputValue(value || ''); }, [value]); const handleChange = (e: React.ChangeEvent) => { const newValue = e.target.value; onChange(newValue || ''); setInputValue(newValue || ''); }; return (