vuetify
Version:
Vue.js 2 Semantic Component Framework
89 lines (80 loc) • 2.53 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
require('../../../src/stylus/components/_date-picker-title.styl');
var _VIcon = require('../VIcon');
var _VIcon2 = _interopRequireDefault(_VIcon);
var _pickerButton = require('../../mixins/picker-button');
var _pickerButton2 = _interopRequireDefault(_pickerButton);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* @vue/component */
// Components
exports.default = {
name: 'v-date-picker-title',
mixins: [_pickerButton2.default],
props: {
date: {
type: String,
default: ''
},
selectingYear: Boolean,
year: {
type: [Number, String],
default: ''
},
yearIcon: {
type: String
},
value: {
type: String
}
},
data: function data() {
return {
isReversing: false
};
},
computed: {
computedTransition: function computedTransition() {
return this.isReversing ? 'picker-reverse-transition' : 'picker-transition';
}
},
watch: {
value: function value(val, prev) {
this.isReversing = val < prev;
}
},
methods: {
genYearIcon: function genYearIcon() {
return this.$createElement(_VIcon2.default, {
props: {
dark: true
}
}, this.yearIcon);
},
getYearBtn: function getYearBtn() {
return this.genPickerButton('selectingYear', true, [this.year, this.yearIcon ? this.genYearIcon() : null], false, 'v-date-picker-title__year');
},
genTitleText: function genTitleText() {
return this.$createElement('transition', {
props: {
name: this.computedTransition
}
}, [this.$createElement('div', {
domProps: { innerHTML: this.date || ' ' },
key: this.value
})]);
},
genTitleDate: function genTitleDate(title) {
return this.genPickerButton('selectingYear', false, this.genTitleText(title), false, 'v-date-picker-title__date');
}
},
render: function render(h) {
return h('div', {
staticClass: 'v-date-picker-title'
}, [this.getYearBtn(), this.genTitleDate()]);
}
};
// Mixins
//# sourceMappingURL=VDatePickerTitle.js.map