Files
myprojplanet_vite/src/components/CProgress/CProgress.ts
2021-09-16 21:08:02 +02:00

73 lines
1.4 KiB
TypeScript
Executable File

import { tools } from '@src/store/Modules/tools'
import { defineComponent, ref, watch } from 'vue'
import { useI18n } from '@src/boot/i18n'
import { useQuasar } from 'quasar'
export default defineComponent({
name: 'CProgress',
props: {
progressval: {
type: Number,
required: true,
},
descr: {
type: String,
required: false,
default: '',
},
slider: {
type: Boolean,
required: false,
default: false,
},
readonly: {
type: Boolean,
required: false,
default: false,
},
},
setup(props, { emit }) {
const cpr_colProgress = ref('blue')
const cpr_percProgress = ref('cpr-percProgress')
const progressvalinternal = ref(0)
watch(() => props.progressval, (newval, oldval) => {
updateclasses()
})
function updateclasses() {
cpr_colProgress.value = tools.getProgressColor(progressvalinternal.value)
}
function setchange(value: any) {
progressvalinternal.value = value
console.log('setchange', progressvalinternal.value)
emit('input', progressvalinternal.value)
}
function getdescr()
{
if (!!props.descr) {
return props.descr + ': '
}
}
function create() {
updateclasses()
}
create()
return {
getdescr,
setchange,
updateclasses,
cpr_percProgress,
cpr_colProgress,
}
}
})