import {
  ChangeDetectionStrategy,
  Component,
  input,
  ViewEncapsulation,
} from '@angular/core';
import { CheckboxInputComponent } from '../checkbox-input';
import { DatepickerRangeInputComponent } from '../datepicker-range-input';
import { NumberRangeInputComponent } from '../number-range-input';
import { FilterInput } from '../../core';
import { InputType } from '../../types';

@Component({
  selector: 'filter-input-renderer',
  templateUrl: 'input-renderer.component.html',
  styleUrls: ['./input-renderer.component.scss'],
  changeDetection: ChangeDetectionStrategy.OnPush,
  encapsulation: ViewEncapsulation.None,
  standalone: true,
  imports: [
    CheckboxInputComponent,
    DatepickerRangeInputComponent,
    NumberRangeInputComponent,
  ],
  host: {
    '[class]': "['filter-input-renderer']",
  },
})
export class InputRendererComponent {
  filterInput = input.required<FilterInput>();
  InputType = InputType;
}
