/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0 */ import React, { useEffect, useRef } from "react"; // @ts-ignore import comboBox from "uswds/src/js/components/combo-box"; import "./Combobox.scss"; import { useTranslation } from "react-i18next"; interface Props { id: string; name: string; label: string; options: Array<{ value: string; content: React.ReactNode; }>; register?: Function; required?: boolean; defaultValue?: string; error?: string; onChange?: Function; labelClassName?: string; } function Combobox(props: Props) { const { t } = useTranslation(); const formGroupRef = useRef(null); useEffect(() => { // initialize if (formGroupRef.current) { comboBox.init(formGroupRef.current); } }, [formGroupRef]); let formGroupClassName = "usa-form-group"; if (props.error) { formGroupClassName += " usa-form-group--error"; } const handleChange = (event: React.FormEvent) => { if (props.onChange) { props.onChange(event); } }; return (
{props.error && ( {props.error} )}
); } export default Combobox;