<script setup>
defineProps({
  modelValue: { type: null, required: false },
  error: { type: [Boolean, null], required: false, skipCheck: true },
  errorMessage: { type: null, required: false },
  noErrorIcon: { type: Boolean, required: false, skipCheck: true },
  rules: { type: null, required: false },
  reactiveRules: { type: Boolean, required: false, skipCheck: true },
  lazyRules: { type: [Boolean, String], required: false, skipCheck: true },
  label: { type: null, required: false },
  stackLabel: { type: Boolean, required: false, skipCheck: true, default: void 0 },
  hint: { type: null, required: false },
  hideHint: { type: Boolean, required: false, skipCheck: true },
  prefix: { type: null, required: false },
  suffix: { type: null, required: false },
  labelColor: { type: null, required: false },
  color: { type: null, required: false },
  bgColor: { type: null, required: false },
  dark: { type: [Boolean, null], required: false, skipCheck: true, default: void 0 },
  loading: { type: Boolean, required: false, skipCheck: true },
  clearable: { type: Boolean, required: false, skipCheck: true },
  clearIcon: { type: null, required: false },
  filled: { type: Boolean, required: false, skipCheck: true, default: void 0 },
  outlined: { type: Boolean, required: false, skipCheck: true, default: void 0 },
  borderless: { type: Boolean, required: false, skipCheck: true },
  standout: { type: [Boolean, String], required: false, skipCheck: true, default: void 0 },
  labelSlot: { type: Boolean, required: false, skipCheck: true },
  bottomSlots: { type: Boolean, required: false, skipCheck: true },
  hideBottomSpace: { type: Boolean, required: false, skipCheck: true, default: true },
  counter: { type: Boolean, required: false, skipCheck: true },
  rounded: { type: Boolean, required: false, skipCheck: true, default: void 0 },
  square: { type: Boolean, required: false, skipCheck: true, default: void 0 },
  dense: { type: Boolean, required: false, skipCheck: true, default: void 0 },
  itemAligned: { type: Boolean, required: false, skipCheck: true },
  disable: { type: Boolean, required: false, skipCheck: true },
  readonly: { type: Boolean, required: false, skipCheck: true },
  autofocus: { type: Boolean, required: false, skipCheck: true },
  for: { type: null, required: false },
  maxlength: { type: null, required: false },
  tag: { type: null, required: false },
  "onUpdate:modelValue": { type: Function, required: false },
  onFocus: { type: Function, required: false },
  onBlur: { type: Function, required: false },
  onClear: { type: Function, required: false }
});
</script>

<template>
    <q-field v-bind="$light.getInputProps($props)">
        <slot></slot>
    </q-field>
</template>
