{"version":3,"file":"BFormInput-Dg9dbwHp.mjs","names":[],"sources":["../src/components/BFormInput/BFormInput.vue","../src/components/BFormInput/BFormInput.vue"],"sourcesContent":["<template>\n  <input\n    :id=\"computedId\"\n    ref=\"_input\"\n    :value=\"modelValue\"\n    :class=\"computedClasses\"\n    :name=\"props.name || undefined\"\n    :form=\"props.form || undefined\"\n    :type=\"props.type\"\n    :disabled=\"isDisabled\"\n    :placeholder=\"props.placeholder\"\n    :required=\"props.required || undefined\"\n    :autocomplete=\"props.autocomplete || undefined\"\n    :readonly=\"props.readonly || props.plaintext\"\n    :min=\"props.min\"\n    :max=\"props.max\"\n    :step=\"props.step\"\n    :list=\"props.type !== 'password' ? props.list : undefined\"\n    :aria-required=\"props.required || undefined\"\n    :aria-invalid=\"computedAriaInvalid\"\n    @input=\"onInput\"\n    @change=\"onChange\"\n    @blur=\"onBlur\"\n  />\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, inject, useTemplateRef} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {normalizeInput} from '../../utils/normalizeInput'\nimport type {BFormInputProps} from '../../types/ComponentProps'\nimport {useFormInput} from '../../composables/useFormInput'\nimport {inputGroupKey} from '../../utils/keys'\n\nconst _props = withDefaults(defineProps<Omit<BFormInputProps, 'modelValue'>>(), {\n  max: undefined,\n  min: undefined,\n  step: undefined,\n  type: 'text',\n  // CommonInputProps\n  ariaInvalid: undefined,\n  autocomplete: undefined,\n  autofocus: false,\n  debounce: 0,\n  debounceMaxWait: Number.NaN,\n  disabled: false,\n  form: undefined,\n  formatter: undefined,\n  id: undefined,\n  lazyFormatter: false,\n  list: undefined,\n  modelValue: '',\n  name: undefined,\n  placeholder: undefined,\n  plaintext: false,\n  readonly: false,\n  required: false,\n  size: undefined,\n  state: undefined,\n  // End CommonInputProps\n})\nconst props = useDefaults(_props, 'BFormInput')\n\nconst [modelValue, modelModifiers] = defineModel<\n  Exclude<BFormInputProps['modelValue'], undefined>,\n  'trim' | 'lazy' | 'number'\n>({\n  default: '',\n  set: (v) => normalizeInput(v, modelModifiers),\n})\n\nconst input = useTemplateRef('_input')\n\nconst inInputGroup = inject(inputGroupKey, false)\n\nconst {\n  computedId,\n  computedAriaInvalid,\n  onInput,\n  onChange,\n  onBlur,\n  stateClass,\n  focus,\n  blur,\n  isDisabled,\n} = useFormInput(props, input, modelValue, modelModifiers)\n\nconst computedClasses = computed(() => {\n  const isRange = props.type === 'range'\n  const isColor = props.type === 'color'\n  return [\n    stateClass.value,\n    {\n      'form-range': isRange,\n      'form-control': isColor || (!props.plaintext && !isRange) || (isRange && inInputGroup),\n      'form-control-color': isColor,\n      'form-control-plaintext': props.plaintext && !isRange && !isColor,\n      [`form-control-${props.size}`]: !!props.size,\n    },\n  ]\n})\n\ndefineExpose({\n  blur,\n  element: input,\n  flushDebounce: onBlur,\n  focus,\n})\n</script>\n","<template>\n  <input\n    :id=\"computedId\"\n    ref=\"_input\"\n    :value=\"modelValue\"\n    :class=\"computedClasses\"\n    :name=\"props.name || undefined\"\n    :form=\"props.form || undefined\"\n    :type=\"props.type\"\n    :disabled=\"isDisabled\"\n    :placeholder=\"props.placeholder\"\n    :required=\"props.required || undefined\"\n    :autocomplete=\"props.autocomplete || undefined\"\n    :readonly=\"props.readonly || props.plaintext\"\n    :min=\"props.min\"\n    :max=\"props.max\"\n    :step=\"props.step\"\n    :list=\"props.type !== 'password' ? props.list : undefined\"\n    :aria-required=\"props.required || undefined\"\n    :aria-invalid=\"computedAriaInvalid\"\n    @input=\"onInput\"\n    @change=\"onChange\"\n    @blur=\"onBlur\"\n  />\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, inject, useTemplateRef} from 'vue'\nimport {useDefaults} from '../../composables/useDefaults'\nimport {normalizeInput} from '../../utils/normalizeInput'\nimport type {BFormInputProps} from '../../types/ComponentProps'\nimport {useFormInput} from '../../composables/useFormInput'\nimport {inputGroupKey} from '../../utils/keys'\n\nconst _props = withDefaults(defineProps<Omit<BFormInputProps, 'modelValue'>>(), {\n  max: undefined,\n  min: undefined,\n  step: undefined,\n  type: 'text',\n  // CommonInputProps\n  ariaInvalid: undefined,\n  autocomplete: undefined,\n  autofocus: false,\n  debounce: 0,\n  debounceMaxWait: Number.NaN,\n  disabled: false,\n  form: undefined,\n  formatter: undefined,\n  id: undefined,\n  lazyFormatter: false,\n  list: undefined,\n  modelValue: '',\n  name: undefined,\n  placeholder: undefined,\n  plaintext: false,\n  readonly: false,\n  required: false,\n  size: undefined,\n  state: undefined,\n  // End CommonInputProps\n})\nconst props = useDefaults(_props, 'BFormInput')\n\nconst [modelValue, modelModifiers] = defineModel<\n  Exclude<BFormInputProps['modelValue'], undefined>,\n  'trim' | 'lazy' | 'number'\n>({\n  default: '',\n  set: (v) => normalizeInput(v, modelModifiers),\n})\n\nconst input = useTemplateRef('_input')\n\nconst inInputGroup = inject(inputGroupKey, false)\n\nconst {\n  computedId,\n  computedAriaInvalid,\n  onInput,\n  onChange,\n  onBlur,\n  stateClass,\n  focus,\n  blur,\n  isDisabled,\n} = useFormInput(props, input, modelValue, modelModifiers)\n\nconst computedClasses = computed(() => {\n  const isRange = props.type === 'range'\n  const isColor = props.type === 'color'\n  return [\n    stateClass.value,\n    {\n      'form-range': isRange,\n      'form-control': isColor || (!props.plaintext && !isRange) || (isRange && inInputGroup),\n      'form-control-color': isColor,\n      'form-control-plaintext': props.plaintext && !isRange && !isColor,\n      [`form-control-${props.size}`]: !!props.size,\n    },\n  ]\n})\n\ndefineExpose({\n  blur,\n  element: input,\n  flushDebounce: onBlur,\n  focus,\n})\n</script>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6DA,MAAM,QAAQ,YA3BC,SA2BmB,aAAY;EAE9C,MAAM,CAAC,YAAY,kBAAkB,SAGpC,SAAA,cAAC,EAEA,MAAM,MAAM,eAAe,GAAG,eAAe,EAC9C,CAAA;EAED,MAAM,QAAQ,eAAe,SAAQ;EAErC,MAAM,eAAe,OAAO,eAAe,MAAK;EAEhD,MAAM,EACJ,YACA,qBACA,SACA,UACA,QACA,YACA,OACA,MACA,eACE,aAAa,OAAO,OAAO,YAAY,eAAc;EAEzD,MAAM,kBAAkB,eAAe;GACrC,MAAM,UAAU,MAAM,SAAS;GAC/B,MAAM,UAAU,MAAM,SAAS;AAC/B,UAAO,CACL,WAAW,OACX;IACE,cAAc;IACd,gBAAgB,WAAY,CAAC,MAAM,aAAa,CAAC,WAAa,WAAW;IACzE,sBAAsB;IACtB,0BAA0B,MAAM,aAAa,CAAC,WAAW,CAAC;KACzD,gBAAgB,MAAM,SAAS,CAAC,CAAC,MAAM;IACzC,CACH;IACD;AAED,WAAa;GACX;GACA,SAAS;GACT,eAAe;GACf;GACD,CAAA;;uBA1GC,mBAsBE,SAAA;IArBC,IAAI,MAAA,WAAU;IACf,KAAI;IACH,OAAO,MAAA,WAAU;IACjB,OAAK,eAAE,gBAAA,MAAe;IACtB,MAAM,MAAA,MAAK,CAAC,QAAQ,KAAA;IACpB,MAAM,MAAA,MAAK,CAAC,QAAQ,KAAA;IACpB,MAAM,MAAA,MAAK,CAAC;IACZ,UAAU,MAAA,WAAU;IACpB,aAAa,MAAA,MAAK,CAAC;IACnB,UAAU,MAAA,MAAK,CAAC,YAAY,KAAA;IAC5B,cAAc,MAAA,MAAK,CAAC,gBAAgB,KAAA;IACpC,UAAU,MAAA,MAAK,CAAC,YAAY,MAAA,MAAK,CAAC;IAClC,KAAK,MAAA,MAAK,CAAC;IACX,KAAK,MAAA,MAAK,CAAC;IACX,MAAM,MAAA,MAAK,CAAC;IACZ,MAAM,MAAA,MAAK,CAAC,SAAI,aAAkB,MAAA,MAAK,CAAC,OAAO,KAAA;IAC/C,iBAAe,MAAA,MAAK,CAAC,YAAY,KAAA;IACjC,gBAAc,MAAA,oBAAmB;IACjC,SAAK,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,MAAA,QAAA,IAAA,MAAA,QAAA,CAAA,GAAA,KAAO;IACd,UAAM,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,MAAA,SAAA,IAAA,MAAA,SAAA,CAAA,GAAA,KAAQ;IAChB,QAAI,OAAA,OAAA,OAAA,MAAA,GAAA,SAAE,MAAA,OAAA,IAAA,MAAA,OAAA,CAAA,GAAA,KAAM"}