import React from "react";
import { FormControl, FormControlProps } from "react-compose-form";
import { SelectField, SelectFieldProps } from "@/components/form/field/select.field";
import { SelectContent, SelectGroup, SelectItem, SelectItemProps, SelectTrigger, SelectValue } from "@/components/ui/select";

export type SelectControlProps = FormControlProps<SelectFieldProps>;

const SelectControlComponent: React.FC<SelectControlProps> = (props) => {
    return (
        <FormControl
          {...props}
          as={SelectField} />
    );
};

export const SelectControl = Object.assign(SelectControlComponent, {
    Content: SelectContent,
    Group: SelectGroup,
    Item: SelectItem,
    Trigger: SelectTrigger,
    Value: SelectValue
});

export namespace SelectControl {
    export type ItemProps = SelectItemProps;
}
