primevue-mirror/components/lib/inputtext/InputText.vue

35 lines
950 B
Vue
Raw Normal View History

2022-09-06 12:03:37 +00:00
<template>
2024-03-15 14:20:17 +00:00
<input type="text" :class="cx('root')" :value="modelValue" :aria-invalid="invalid || undefined" @input="onInput" v-bind="getPTOptions('root')" />
2022-09-06 12:03:37 +00:00
</template>
<script>
2023-05-24 11:23:36 +00:00
import BaseInputText from './BaseInputText.vue';
2023-05-05 12:53:35 +00:00
2022-09-06 12:03:37 +00:00
export default {
name: 'InputText',
2023-05-24 11:23:36 +00:00
extends: BaseInputText,
2024-02-11 23:47:53 +00:00
inheritAttrs: false,
2022-09-06 12:03:37 +00:00
emits: ['update:modelValue'],
methods: {
getPTOptions(key) {
2024-02-11 23:47:53 +00:00
const _ptm = key === 'root' ? this.ptmi : this.ptm;
return _ptm(key, {
2023-07-04 02:24:37 +00:00
context: {
filled: this.filled,
disabled: this.$attrs.disabled || this.$attrs.disabled === ''
2023-07-04 02:24:37 +00:00
}
});
2023-12-05 12:36:59 +00:00
},
onInput(event) {
this.$emit('update:modelValue', event.target.value);
}
},
computed: {
filled() {
return this.modelValue != null && this.modelValue.toString().length > 0;
2022-09-06 12:03:37 +00:00
}
}
2022-09-14 11:26:01 +00:00
};
2022-09-06 12:03:37 +00:00
</script>