1
0
Fork 0
mirror of https://gitlab.com/bramw/baserow.git synced 2025-04-12 16:28:06 +00:00
bramw_baserow/web-frontend/modules/database/components/row/RowEditFieldDuration.vue
2023-12-18 21:40:02 +00:00

47 lines
1.2 KiB
Vue

<template>
<div class="control__elements">
<input
ref="input"
v-model="formattedValue"
:placeholder="field.duration_format"
type="text"
class="input field-duration"
:class="{
'input--error': touched && !valid,
}"
:disabled="readOnly"
@keypress="onKeyPress(field, $event)"
@keyup.enter="$refs.input.blur()"
@keyup="updateCopy(field, $event.target.value)"
@focus="select()"
@blur="unselect()"
/>
<div v-show="touched && !valid" class="error">
{{ error }}
</div>
</div>
</template>
<script>
import rowEditField from '@baserow/modules/database/mixins/rowEditField'
import rowEditFieldInput from '@baserow/modules/database/mixins/rowEditFieldInput'
import durationField from '@baserow/modules/database/mixins/durationField'
export default {
mixins: [rowEditField, rowEditFieldInput, durationField],
watch: {
'field.duration_format': {
handler() {
this.updateCopy(this.field, this.value)
this.updateFormattedValue(this.field, this.copy)
},
},
value: {
handler(newValue) {
this.updateCopy(this.field, newValue)
this.updateFormattedValue(this.field, this.copy)
},
},
},
}
</script>