primevue-mirror/components/lib/knob/BaseKnob.vue

83 lines
1.7 KiB
Vue

<script>
import BaseComponent from 'primevue/basecomponent';
import KnobStyle from 'primevue/knob/style';
import { $dt } from 'primevue/themes';
export default {
name: 'BaseKnob',
extends: BaseComponent,
props: {
modelValue: {
type: Number,
default: null
},
size: {
type: Number,
default: 100
},
disabled: {
type: Boolean,
default: false
},
readonly: {
type: Boolean,
default: false
},
step: {
type: Number,
default: 1
},
min: {
type: Number,
default: 0
},
max: {
type: Number,
default: 100
},
valueColor: {
type: String,
default: $dt('primary.color', 'Black')
},
rangeColor: {
type: String,
default: $dt('surface.border', 'LightGray')
},
textColor: {
type: String,
default: $dt('text.color.secondary', 'Black')
},
strokeWidth: {
type: Number,
default: 14
},
showValue: {
type: Boolean,
default: true
},
valueTemplate: {
type: String,
default: '{value}'
},
tabindex: {
type: Number,
default: 0
},
ariaLabelledby: {
type: String,
default: null
},
ariaLabel: {
type: String,
default: null
}
},
style: KnobStyle,
provide() {
return {
$parentInstance: this
};
}
};
</script>