gantt-elastic-style
Version:
Gantt chart. Elastic javascript gantt chart. Vue gantt. Project manager responsive gantt. jquery gantt.
53 lines (49 loc) • 1.17 kB
JavaScript
/**
* @fileoverview Task mixin
* @license MIT
* @author Rafal Pospiech <neuronet.io@gmail.com>
* @package GanttElastic
*/
export default {
computed: {
/**
* Get view box
*
* @returns {string}
*/
getViewBox() {
const task = this.task;
return `0 0 ${task.width} ${task.height}`;
},
/**
* Get group transform
*
* @returns {string}
*/
getGroupTransform() {
return `translate(${this.task.x} ${this.task.y})`;
},
/**
* Should we display expander?
*
* @returns {boolean}
*/
displayExpander() {
const expander = this.root.state.options.chart.expander;
return expander.display || (expander.displayIfTaskListHidden && !this.root.state.options.taskList.display);
}
},
methods: {
/**
* Emit event
*
* @param {string} eventName
* @param {Event} event
*/
emitEvent(eventName, event) {
if (!this.root.state.options.scroll.scrolling) {
this.root.$emit(`chart-${this.task.type}-${eventName}`, { event, data: this.task });
}
}
}
};