import React from "react";
import { MultiSelectTreeProps } from "./MultiSelectTreeProps";
import { MultiSelectTree as KendoMultiSelectTree } from "@progress/kendo-react-dropdowns";

const MultiSelectTree: React.FC<MultiSelectTreeProps> = ({
  dataTestId,
  accessKey,
  adaptive,
  adaptiveTitle,
  ariaDescribedBy,
  ariaLabelledBy,
  checkField,
  checkIndeterminateField,
  className,
  data,
  dataItemKey,
  dir,
  disabled,
  expandField,
  fillMode,
  filter,
  filterable,
  id,
  item,
  label,
  listNoData,
  loading,
  name,
  opened,
  placeholder,
  popupSettings,
  required,
  rounded,
  size,
  style,
  subItemsField,
  tabIndex,
  tag,
  tags,
  textField,
  valid,
  validationMessage,
  validityStyles,
  value,
  onBlur,
  onCancel,
  onChange,
  onClose,
  onExpandChange,
  onFilterChange,
  onFocus,
  onOpen,
}) => (
  <div data-test-id={dataTestId}>
    <KendoMultiSelectTree
      accessKey={accessKey}
      adaptive={adaptive}
      adaptiveTitle={adaptiveTitle}
      ariaDescribedBy={ariaDescribedBy}
      ariaLabelledBy={ariaLabelledBy}
      checkField={checkField}
      checkIndeterminateField={checkIndeterminateField}
      className={className}
      data={data}
      dataItemKey={dataItemKey}
      dir={dir}
      disabled={disabled}
      expandField={expandField}
      fillMode={fillMode}
      filter={filter}
      filterable={filterable}
      id={id}
      item={item}
      label={label}
      listNoData={listNoData}
      loading={loading}
      name={name}
      opened={opened}
      placeholder={placeholder}
      popupSettings={popupSettings}
      required={required}
      rounded={rounded}
      size={size}
      style={style}
      subItemsField={subItemsField}
      tabIndex={tabIndex}
      tag={tag}
      tags={tags}
      textField={textField}
      valid={valid}
      validationMessage={validationMessage}
      validityStyles={validityStyles}
      value={value}
      onBlur={onBlur}
      onCancel={onCancel}
      onChange={onChange}
      onClose={onClose}
      onExpandChange={onExpandChange}
      onFilterChange={onFilterChange}
      onFocus={onFocus}
      onOpen={onOpen}
    />
  </div>
);

export default MultiSelectTree;
