{"version":3,"sources":["jsdelivr-header.js","/npm/vue-ganttastic@0.9.34/dist/index.js"],"names":[],"mappings":"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","file":"/npm/vue-ganttastic@0.9.34/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/vue-ganttastic@0.9.34/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/*!\n * vue-ganttastic v0.9.33\n * (c) Marko Zunic\n * Released under the MIT License.\n */\n'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar moment = _interopDefault(require('moment'));\n\nfunction _slicedToArray(arr, i) {\n  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _toConsumableArray(arr) {\n  return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n  if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _arrayWithHoles(arr) {\n  if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArray(iter) {\n  if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n  if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n  var _arr = [];\n  var _n = true;\n  var _d = false;\n  var _e = undefined;\n\n  try {\n    for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n      _arr.push(_s.value);\n\n      if (i && _arr.length === i) break;\n    }\n  } catch (err) {\n    _d = true;\n    _e = err;\n  } finally {\n    try {\n      if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n    } finally {\n      if (_d) throw _e;\n    }\n  }\n\n  return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n  if (!o) return;\n  if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n  var n = Object.prototype.toString.call(o).slice(8, -1);\n  if (n === \"Object\" && o.constructor) n = o.constructor.name;\n  if (n === \"Map\" || n === \"Set\") return Array.from(o);\n  if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n  if (len == null || len > arr.length) len = arr.length;\n\n  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n  return arr2;\n}\n\nfunction _nonIterableSpread() {\n  throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _nonIterableRest() {\n  throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar GanttasticThemeColors = {\n  \"default\": {\n    primary: \"#eeeeee\",\n    secondary: \"#E0E0E0\",\n    ternary: \"#F5F5F5\",\n    hoverHighlight: \"rgba(204, 216, 219, 0.5)\",\n    text: \"#404040\",\n    background: \"white\"\n  },\n  \"creamy\": {\n    primary: \"#ffe8d9\",\n    secondary: \"#fcdcc5\",\n    ternary: \"#fff6f0\",\n    hoverHighlight: \"rgba(230, 221, 202, 0.5)\",\n    text: \"#542d05\",\n    background: \"white\"\n  },\n  \"crimson\": {\n    primary: \"#a82039\",\n    secondary: \"#c41238\",\n    ternary: \"#db4f56\",\n    hoverHighlight: \"rgba(196, 141, 141, 0.5)\",\n    text: \"white\",\n    background: \"white\"\n  },\n  \"dark\": {\n    primary: \"#404040\",\n    secondary: \"#303030\",\n    ternary: \"#353535\",\n    hoverHighlight: \"rgba(159, 160, 161, 0.5)\",\n    text: \"white\",\n    background: \"#525252\",\n    toast: \"#1f1f1f\"\n  },\n  \"flare\": {\n    primary: \"#e08a38\",\n    secondary: \"#e67912\",\n    ternary: \"#5e5145\",\n    hoverHighlight: \"rgba(196, 141, 141, 0.5)\",\n    text: \"white\",\n    background: \"white\"\n  },\n  \"fuchsia\": {\n    primary: \"#de1d5a\",\n    secondary: \"#b50b41\",\n    ternary: \"#ff7da6\",\n    hoverHighlight: \"rgba(196, 141, 141, 0.5)\",\n    text: \"white\",\n    background: \"white\"\n  },\n  \"grove\": {\n    primary: \"#3d9960\",\n    secondary: \"#288542\",\n    ternary: \"#72b585\",\n    hoverHighlight: \"rgba(160, 219, 171, 0.5)\",\n    text: \"white\",\n    background: \"white\"\n  },\n  \"material-blue\": {\n    primary: \"#0D47A1\",\n    secondary: \"#1565C0\",\n    ternary: \"#42a5f5\",\n    hoverHighlight: \"rgba(110, 165, 196, 0.5)\",\n    text: \"white\",\n    background: \"white\"\n  },\n  \"sky\": {\n    primary: \"#b5e3ff\",\n    secondary: \"#a1d6f7\",\n    ternary: \"#d6f7ff\",\n    hoverHighlight: \"rgba(193, 202, 214, 0.5)\",\n    text: \"#022c47\",\n    background: \"white\"\n  },\n  \"slumber\": {\n    primary: \"#2c2e36\",\n    secondary: \"#2f3447\",\n    ternary: \"#35394d\",\n    hoverHighlight: \"rgba(179, 162, 127, 0.5)\",\n    text: \"#ffe0b3\",\n    background: \"#38383b\",\n    toast: \"#1f1f1f\"\n  },\n  \"vue\": {\n    primary: \"#258a5d\",\n    secondary: \"#41B883\",\n    ternary: \"#35495E\",\n    hoverHighlight: \"rgba(160, 219, 171, 0.5)\",\n    text: \"white\",\n    background: \"white\"\n  }\n};\n\n//\nvar script = {\n  name: \"GGanttTimeaxis\",\n  props: {\n    chartStart: String,\n    chartEnd: String,\n    rowLabelWidth: String,\n    timemarkerOffset: {\n      type: Number,\n      \"default\": 0\n    },\n    locale: String,\n    themeColors: Object\n  },\n  data: function data() {\n    return {\n      axisDays: [],\n      hourCount: null,\n      timemarker: null,\n      hourFontSize: \"11px\",\n      dayFormat: \"dddd, DD. MMMM\"\n    };\n  },\n  mounted: function mounted() {\n    var _this = this;\n\n    this.timemarker = document.querySelector(\"#g-timeaxis-marker\");\n    this.initAxisDaysAndHours();\n    this.onWindowResize();\n    window.addEventListener('resize', this.onWindowResize);\n    window.addEventListener(\"mousemove\", function (event) {\n      return _this.moveTimemarker(event);\n    });\n    window.addEventListener(\"dragover\", function (event) {\n      return _this.moveTimemarker(event);\n    });\n  },\n  methods: {\n    initAxisDaysAndHours: function initAxisDaysAndHours() {\n      this.axisDays = [];\n      var start = moment(this.chartStart);\n      var end = moment(this.chartEnd);\n      this.hourCount = Math.floor(end.diff(start, \"hour\", true));\n\n      while (start.isBefore(end)) {\n        var hourCountOfDay = start.format(\"DD.MM.YYYY\") == end.format(\"DD.MM.YYYY\") ? end.hour() : 24 - start.hour();\n        var widthPercentage = hourCountOfDay / this.hourCount * 100;\n        var endHour = start.day() === end.day() ? end.hour() - 1 : 23; // -1 because the last hour is not included e.g if chartEnd=04:00 the last interval we display is between 03 and 04\n\n        this.axisDays.push(this.getAxisDayObject(start, widthPercentage, endHour));\n        start.add(1, \"day\").hour(0);\n      }\n    },\n    getAxisDayObject: function getAxisDayObject(datetime, widthPercentage, endHour) {\n      var datetimeMoment = moment(datetime);\n      var axisDayObject = {\n        widthPercentage: widthPercentage,\n        value: datetime.format(\"YYYY-MM-DD\"),\n        ganttHours: []\n      };\n      var startHour = datetimeMoment.hour();\n\n      for (var i = 0; i <= endHour - startHour; i++) {\n        var hour = {\n          text: datetimeMoment.format(\"HH\"),\n          fullDatetime: datetimeMoment.format(\"DD.MM.YYYY HH:mm\")\n        };\n        axisDayObject.ganttHours.push(hour);\n        datetimeMoment.add(1, \"hour\");\n      }\n\n      return axisDayObject;\n    },\n    moveTimemarker: function moveTimemarker(event) {\n      this.timemarker.style.left = event.clientX - this.timemarkerOffset - this.horizontalAxisContainer.left + \"px\";\n    },\n    onWindowResize: function onWindowResize() {\n      this.horizontalAxisContainer = document.querySelector(\"#g-timeaxis\").getBoundingClientRect();\n      this.hourFontSize = Math.min(9.5, 0.75 * (this.horizontalAxisContainer.width / this.hourCount)) + \"px\";\n    },\n    dayFormatted: function dayFormatted(day) {\n      // do not display day text if the day is smaller than 12%\n      return day.widthPercentage >= 12 ? moment(day.value).locale(this.locale).format(this.dayFormat) : \"\";\n    }\n  },\n  watch: {\n    chartStart: function chartStart() {\n      this.initAxisDaysAndHours();\n    },\n    chartEnd: function chartEnd() {\n      this.initAxisDaysAndHours();\n    }\n  }\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n    if (typeof shadowMode !== 'boolean') {\r\n        createInjectorSSR = createInjector;\r\n        createInjector = shadowMode;\r\n        shadowMode = false;\r\n    }\r\n    // Vue.extend constructor export interop.\r\n    const options = typeof script === 'function' ? script.options : script;\r\n    // render functions\r\n    if (template && template.render) {\r\n        options.render = template.render;\r\n        options.staticRenderFns = template.staticRenderFns;\r\n        options._compiled = true;\r\n        // functional template\r\n        if (isFunctionalTemplate) {\r\n            options.functional = true;\r\n        }\r\n    }\r\n    // scopedId\r\n    if (scopeId) {\r\n        options._scopeId = scopeId;\r\n    }\r\n    let hook;\r\n    if (moduleIdentifier) {\r\n        // server build\r\n        hook = function (context) {\r\n            // 2.3 injection\r\n            context =\r\n                context || // cached call\r\n                    (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n                    (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n            // 2.2 with runInNewContext: true\r\n            if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n                context = __VUE_SSR_CONTEXT__;\r\n            }\r\n            // inject component styles\r\n            if (style) {\r\n                style.call(this, createInjectorSSR(context));\r\n            }\r\n            // register component module identifier for async chunk inference\r\n            if (context && context._registeredComponents) {\r\n                context._registeredComponents.add(moduleIdentifier);\r\n            }\r\n        };\r\n        // used by ssr in case component is cached and beforeCreate\r\n        // never gets called\r\n        options._ssrRegister = hook;\r\n    }\r\n    else if (style) {\r\n        hook = shadowMode\r\n            ? function (context) {\r\n                style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n            }\r\n            : function (context) {\r\n                style.call(this, createInjector(context));\r\n            };\r\n    }\r\n    if (hook) {\r\n        if (options.functional) {\r\n            // register for functional component in vue file\r\n            const originalRender = options.render;\r\n            options.render = function renderWithStyleInjection(h, context) {\r\n                hook.call(context);\r\n                return originalRender(h, context);\r\n            };\r\n        }\r\n        else {\r\n            // inject component registration as beforeCreate hook\r\n            const existing = options.beforeCreate;\r\n            options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n        }\r\n    }\r\n    return script;\r\n}\n\nconst isOldIE = typeof navigator !== 'undefined' &&\r\n    /msie [6-9]\\\\b/.test(navigator.userAgent.toLowerCase());\r\nfunction createInjector(context) {\r\n    return (id, style) => addStyle(id, style);\r\n}\r\nlet HEAD;\r\nconst styles = {};\r\nfunction addStyle(id, css) {\r\n    const group = isOldIE ? css.media || 'default' : id;\r\n    const style = styles[group] || (styles[group] = { ids: new Set(), styles: [] });\r\n    if (!style.ids.has(id)) {\r\n        style.ids.add(id);\r\n        let code = css.source;\r\n        if (css.map) {\r\n            // https://developer.chrome.com/devtools/docs/javascript-debugging\r\n            // this makes source maps inside style tags work properly in Chrome\r\n            code += '\\n/*# sourceURL=' + css.map.sources[0] + ' */';\r\n            // http://stackoverflow.com/a/26603875\r\n            code +=\r\n                '\\n/*# sourceMappingURL=data:application/json;base64,' +\r\n                    btoa(unescape(encodeURIComponent(JSON.stringify(css.map)))) +\r\n                    ' */';\r\n        }\r\n        if (!style.element) {\r\n            style.element = document.createElement('style');\r\n            style.element.type = 'text/css';\r\n            if (css.media)\r\n                style.element.setAttribute('media', css.media);\r\n            if (HEAD === undefined) {\r\n                HEAD = document.head || document.getElementsByTagName('head')[0];\r\n            }\r\n            HEAD.appendChild(style.element);\r\n        }\r\n        if ('styleSheet' in style.element) {\r\n            style.styles.push(code);\r\n            style.element.styleSheet.cssText = style.styles\r\n                .filter(Boolean)\r\n                .join('\\n');\r\n        }\r\n        else {\r\n            const index = style.ids.size - 1;\r\n            const textNode = document.createTextNode(code);\r\n            const nodes = style.element.childNodes;\r\n            if (nodes[index])\r\n                style.element.removeChild(nodes[index]);\r\n            if (nodes.length)\r\n                style.element.insertBefore(textNode, nodes[index]);\r\n            else\r\n                style.element.appendChild(textNode);\r\n        }\r\n    }\r\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n  var _vm = this;\n\n  var _h = _vm.$createElement;\n\n  var _c = _vm._self._c || _h;\n\n  return _c('div', {\n    attrs: {\n      \"id\": \"g-timeaxis\"\n    }\n  }, [_c('div', {\n    staticClass: \"g-timeaxis-empty-space\",\n    style: {\n      width: _vm.rowLabelWidth,\n      background: _vm.themeColors.secondary\n    }\n  }), _vm._v(\" \"), _c('div', {\n    staticClass: \"g-timeaxis-days\",\n    style: {\n      width: 100 - _vm.rowLabelWidth.replace('%', '') + \"%\"\n    }\n  }, _vm._l(_vm.axisDays, function (day, index) {\n    return _c('div', {\n      key: day.text,\n      staticClass: \"g-timeaxis-day\",\n      style: {\n        width: day.widthPercentage + '%',\n        background: index % 2 === 0 ? _vm.themeColors.primary : _vm.themeColors.secondary,\n        color: _vm.themeColors.text\n      }\n    }, [_c('div', [_vm._v(\" \" + _vm._s(_vm.dayFormatted(day)) + \" \")]), _vm._v(\" \"), _c('div', {\n      style: {\n        background: _vm.themeColors.ternary,\n        color: _vm.themeColors.text\n      }\n    }, _vm._l(day.ganttHours, function (hour) {\n      return _c('div', {\n        key: hour.fullDatetime,\n        staticClass: \"g-timeaxis-hour\"\n      }, [_c('span', {\n        style: {\n          fontSize: _vm.hourFontSize\n        }\n      }, [_vm._v(_vm._s(hour.text))]), _vm._v(\" \"), _c('div', {\n        staticClass: \"g-timeaxis-hour-pin\",\n        style: {\n          background: _vm.themeColors.text\n        }\n      })]);\n    }), 0)]);\n  }), 0), _vm._v(\" \"), _c('div', {\n    attrs: {\n      \"id\": \"g-timeaxis-marker\"\n    }\n  })]);\n};\n\nvar __vue_staticRenderFns__ = [];\n/* style */\n\nvar __vue_inject_styles__ = function __vue_inject_styles__(inject) {\n  if (!inject) return;\n  inject(\"data-v-4cda9c60_0\", {\n    source: \"#g-timeaxis[data-v-4cda9c60],.g-timeaxis-day[data-v-4cda9c60],.g-timeaxis-day>div[data-v-4cda9c60],.g-timeaxis-days[data-v-4cda9c60]{display:flex;overflow:hidden}#g-timeaxis[data-v-4cda9c60]{position:sticky;top:0;width:100%;height:8%;min-height:75px;background:#fff;z-index:4;box-shadow:0 1px 3px 2px rgba(50,50,50,.5)}#g-timeaxis>.g-timeaxis-empty-space[data-v-4cda9c60]{width:20%;height:100%;background:#f5f5f5}#g-timeaxis>.g-timeaxis-days[data-v-4cda9c60]{position:relative;width:80%;height:100%,}.g-timeaxis-day[data-v-4cda9c60]{height:100%;flex-direction:column;background:#e0e0e0}.g-timeaxis-day[data-v-4cda9c60]:nth-child(odd){background:#e8e8e8}.g-timeaxis-day>div[data-v-4cda9c60]:nth-child(1){height:50%;justify-content:space-around;font-weight:700;align-items:center}.g-timeaxis-day>div[data-v-4cda9c60]:nth-child(2){align-items:flex-end;height:50%;justify-content:space-between;background:#f5f5f5;padding-top:2px;color:#212121}.g-timeaxis-hour[data-v-4cda9c60]{display:flex;justify-content:space-between;align-items:flex-start;flex-direction:column;opacity:.5;width:100%}.g-timeaxis-hour-pin[data-v-4cda9c60]{width:1px;height:8px}#g-timeaxis-marker[data-v-4cda9c60]{position:absolute;top:0;left:0;height:100%;width:3px;background:#000}\",\n    map: undefined,\n    media: undefined\n  });\n};\n/* scoped */\n\n\nvar __vue_scope_id__ = \"data-v-4cda9c60\";\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = /*#__PURE__*/normalizeComponent({\n  render: __vue_render__,\n  staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, createInjector, undefined, undefined);\n\n//\nvar script$1 = {\n  name: \"GGanttGrid\",\n  props: {\n    chartStart: {\n      type: String\n    },\n    chartEnd: {\n      type: String\n    },\n    rowLabelWidth: String,\n    highlightedHours: {\n      type: Array,\n      \"default\": function _default() {\n        return [];\n      }\n    }\n  },\n  computed: {\n    allHours: function allHours() {\n      var momentChartStart = moment(this.chartStart);\n      var momentChartEnd = moment(this.chartEnd);\n      var res = [];\n\n      while (momentChartStart.isSameOrBefore(momentChartEnd)) {\n        res.push(momentChartStart.hour());\n        momentChartStart.add(1, \"hour\");\n      }\n\n      return res;\n    }\n  }\n};\n\n/* script */\nvar __vue_script__$1 = script$1;\n/* template */\n\nvar __vue_render__$1 = function __vue_render__() {\n  var _vm = this;\n\n  var _h = _vm.$createElement;\n\n  var _c = _vm._self._c || _h;\n\n  return _c('div', {\n    staticClass: \"g-grid-container\",\n    style: {\n      left: _vm.rowLabelWidth,\n      width: 100 - this.rowLabelWidth.replace('%', '') + \"%\"\n    }\n  }, _vm._l(_vm.allHours, function (hour, index) {\n    return _c('div', {\n      key: index,\n      \"class\": {\n        'g-grid-line': true,\n        'g-grid-line-highlighted': _vm.highlightedHours.includes(hour)\n      }\n    });\n  }), 0);\n};\n\nvar __vue_staticRenderFns__$1 = [];\n/* style */\n\nvar __vue_inject_styles__$1 = function __vue_inject_styles__(inject) {\n  if (!inject) return;\n  inject(\"data-v-c44fb5a6_0\", {\n    source: \".g-grid-container[data-v-c44fb5a6]{position:absolute;top:0;left:30%;width:70%;height:calc(100% - 23px);display:flex;justify-content:space-between}.g-grid-line[data-v-c44fb5a6]{width:1px;height:100%;background:#eaeaea}.g-grid-line-highlighted[data-v-c44fb5a6]{background:#90caf9;box-shadow:0 0 0 1px #90caf9}\",\n    map: undefined,\n    media: undefined\n  });\n};\n/* scoped */\n\n\nvar __vue_scope_id__$1 = \"data-v-c44fb5a6\";\n/* module identifier */\n\nvar __vue_module_identifier__$1 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$1 = false;\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__$1 = /*#__PURE__*/normalizeComponent({\n  render: __vue_render__$1,\n  staticRenderFns: __vue_staticRenderFns__$1\n}, __vue_inject_styles__$1, __vue_script__$1, __vue_scope_id__$1, __vue_is_functional_template__$1, __vue_module_identifier__$1, false, createInjector, undefined, undefined);\n\n//\nvar script$2 = {\n  name: \"GGanttBar\",\n  props: {\n    bar: {\n      type: Object\n    },\n    barStart: {\n      type: String\n    },\n    // property name of the bar objects that represents the start datetime\n    barEnd: {\n      type: String\n    },\n    // property name of the bar objects that represents the end datetime,\n    barContainer: [Object, DOMRect],\n    allBarsInRow: {\n      type: Array\n    }\n  },\n  inject: [\"getHourCount\", \"ganttChartProps\", \"initDragOfBarsFromBundle\", \"moveBarsFromBundleOfPushedBar\", \"setDragLimitsOfGanttBar\", \"onBarEvent\", \"onDragendBar\", \"getMinGapBetweenBars\"],\n  data: function data() {\n    return {\n      showTooltip: false,\n      tooltipTimeout: null,\n      dragLimitLeft: null,\n      dragLimitRight: null,\n      isDragging: false,\n      isMainBarOfDrag: false,\n      // is this the bar that was clicked on when starting to drag\n      // or is it dragged along some other bar from the same bundle\n      cursorOffsetX: 0,\n      mousemoveCallback: null,\n      // gets initialized when starting to drag\n      // possible values: drag, dragByHandleLeft, dragByHandleRight,\n      barStartBeforeDrag: null,\n      barEndBeforeDrag: null\n    };\n  },\n  computed: {\n    // use these computed moment objects to work with the bar's start/end dates:\n    // instead of directly mutating them:\n    barStartMoment: {\n      get: function get() {\n        return moment(this.bar[this.barStart]);\n      },\n      set: function set(value) {\n        this.bar[this.barStart] = moment(value).format(\"YYYY-MM-DD HH:mm:ss\");\n      }\n    },\n    barEndMoment: {\n      get: function get() {\n        return moment(this.bar[this.barEnd]);\n      },\n      set: function set(value) {\n        this.bar[this.barEnd] = moment(value).format(\"YYYY-MM-DD HH:mm:ss\");\n      }\n    },\n    barConfig: function barConfig() {\n      if (this.bar.ganttBarConfig) {\n        return Object.assign(Object.assign({}, this.bar.ganttBarConfig), {}, {\n          background: this.bar.ganttBarConfig.isShadow ? \"grey\" : this.bar.ganttBarConfig.background || this.bar.ganttBarConfig.backgroundColor,\n          opacity: this.bar.ganttBarConfig.isShadow ? \"0.3\" : this.bar.ganttBarConfig.opacity\n        });\n      }\n\n      return {};\n    },\n    barStyle: function barStyle() {\n      var xStart = this.mapTimeToPosition(this.barStartMoment);\n      var xEnd = this.mapTimeToPosition(this.barEndMoment);\n      return Object.assign(Object.assign({}, this.barConfig || {}), {}, {\n        left: \"\".concat(xStart, \"px\"),\n        width: \"\".concat(xEnd - xStart, \"px\"),\n        height: \"\".concat(this.ganttChartProps.rowHeight - 6, \"px\"),\n        zIndex: this.barConfig.zIndex || (this.isDragging ? 2 : 1)\n      });\n    },\n    tooltipStyle: function tooltipStyle() {\n      return {\n        left: this.barStyle.left,\n        top: \"\".concat(this.ganttChartProps.rowHeight, \"px\")\n      };\n    },\n    chartStartMoment: function chartStartMoment() {\n      return moment(this.ganttChartProps.chartStart);\n    },\n    chartEndMoment: function chartEndMoment() {\n      return moment(this.ganttChartProps.chartEnd);\n    }\n  },\n  methods: {\n    onMouseenter: function onMouseenter(e) {\n      var _this = this;\n\n      if (this.tooltipTimeout) {\n        clearTimeout(this.tooltipTimeout);\n      }\n\n      this.tooltipTimeout = setTimeout(function () {\n        return _this.showTooltip = true;\n      }, 800);\n      this.onBarEvent({\n        event: e,\n        type: e.type\n      }, this);\n    },\n    onMouseleave: function onMouseleave(e) {\n      clearTimeout(this.tooltipTimeout);\n      this.showTooltip = false;\n      this.onBarEvent({\n        event: e,\n        type: e.type\n      }, this);\n    },\n    onContextmenu: function onContextmenu(e) {\n      var time = this.mapPositionToTime(e.clientX - this.barContainer.left).format(\"YYYY-MM-DD HH:mm:ss\");\n      this.onBarEvent({\n        event: e,\n        type: e.type,\n        time: time\n      }, this);\n    },\n    onClick: function onClick(e) {\n      var time = this.mapPositionToTime(e.clientX - this.barContainer.left).format(\"YYYY-MM-DD HH:mm:ss\");\n      this.onBarEvent({\n        event: e,\n        type: e.type,\n        time: time\n      }, this);\n    },\n    onDblclick: function onDblclick(e) {\n      var time = this.mapPositionToTime(e.clientX - this.barContainer.left).format(\"YYYY-MM-DD HH:mm:ss\");\n      this.onBarEvent({\n        event: e,\n        type: e.type,\n        time: time\n      }, this);\n    },\n    onMousedown: function onMousedown(e) {\n      var _this2 = this;\n\n      e.preventDefault();\n\n      if (e.button === 2) {\n        return;\n      }\n\n      if (!this.barConfig.immobile && !this.barConfig.isShadow) {\n        this.setDragLimitsOfGanttBar(this); // initialize the dragging on next mousemove event:\n\n        window.addEventListener(\"mousemove\", this.onFirstMousemove, {\n          once: true\n        }); // if next mousemove happens after mouse up (if user just presses mouse button down, then up, without moving):\n\n        window.addEventListener(\"mouseup\", function () {\n          return window.removeEventListener(\"mousemove\", _this2.onFirstMousemove);\n        }, {\n          once: true\n        });\n      }\n\n      var time = this.mapPositionToTime(e.clientX - this.barContainer.left).format(\"YYYY-MM-DD HH:mm:ss\");\n      this.onBarEvent({\n        event: e,\n        type: e.type,\n        time: time\n      }, this);\n    },\n    onFirstMousemove: function onFirstMousemove(e) {\n      this.isMainBarOfDrag = true; // this method is injected here by GGanttChart.vue, and calls initDrag()\n      // for all GGanttBars that belong to the same bundle as this bar:\n\n      this.initDragOfBarsFromBundle(this, e);\n    },\n\n    /* --------------------------------------------------------- */\n\n    /* ------------- METHODS FOR DRAGGING THE BAR -------------- */\n\n    /* --------------------------------------------------------- */\n    initDrag: function initDrag(e) {\n      // \"e\" must be the mousedown event\n      this.isDragging = true;\n      this.barStartBeforeDrag = this.bar[this.barStart];\n      this.barEndBeforeDrag = this.bar[this.barEnd];\n      var barX = this.$refs[\"g-gantt-bar\"].getBoundingClientRect().left;\n      this.cursorOffsetX = e.clientX - barX;\n      var mousedownType = e.target.className;\n\n      switch (mousedownType) {\n        case \"g-gantt-bar-handle-left\":\n          document.body.style.cursor = \"w-resize\";\n          this.mousemoveCallback = this.dragByHandleLeft;\n          break;\n\n        case \"g-gantt-bar-handle-right\":\n          document.body.style.cursor = \"w-resize\";\n          this.mousemoveCallback = this.dragByHandleRight;\n          break;\n\n        default:\n          this.mousemoveCallback = this.drag;\n      }\n\n      window.addEventListener(\"mousemove\", this.mousemoveCallback);\n      window.addEventListener(\"mouseup\", this.endDrag);\n    },\n    drag: function drag(e) {\n      var barWidth = this.$refs[\"g-gantt-bar\"].getBoundingClientRect().width;\n      var newXStart = e.clientX - this.barContainer.left - this.cursorOffsetX;\n      var newXEnd = newXStart + barWidth;\n\n      if (this.isPosOutOfDragRange(newXStart, newXEnd)) {\n        return;\n      }\n\n      this.barStartMoment = this.mapPositionToTime(newXStart);\n      this.barEndMoment = this.mapPositionToTime(newXEnd);\n      this.manageOverlapping();\n      this.onBarEvent({\n        event: e,\n        type: \"drag\"\n      }, this);\n    },\n    dragByHandleLeft: function dragByHandleLeft(e) {\n      var newXStart = e.clientX - this.barContainer.left;\n      var newStartMoment = this.mapPositionToTime(newXStart);\n\n      if (newStartMoment.isSameOrAfter(this.barEndMoment) || this.isPosOutOfDragRange(newXStart, null)) {\n        return;\n      }\n\n      this.barStartMoment = newStartMoment;\n      this.manageOverlapping();\n    },\n    dragByHandleRight: function dragByHandleRight(e) {\n      var newXEnd = e.clientX - this.barContainer.left;\n      var newEndMoment = this.mapPositionToTime(newXEnd);\n\n      if (newEndMoment.isSameOrBefore(this.barStartMoment) || this.isPosOutOfDragRange(null, newXEnd)) {\n        return;\n      }\n\n      this.barEndMoment = newEndMoment;\n      this.manageOverlapping();\n    },\n    isPosOutOfDragRange: function isPosOutOfDragRange(xStart, xEnd) {\n      if (!this.ganttChartProps.pushOnOverlap) {\n        return false;\n      }\n\n      if (xStart && this.dragLimitLeft !== null && xStart < this.dragLimitLeft + this.getMinGapBetweenBars()) {\n        return true;\n      }\n\n      if (xEnd && this.dragLimitRight !== null && xEnd > this.dragLimitRight - this.getMinGapBetweenBars()) {\n        return true;\n      }\n\n      return false;\n    },\n    endDrag: function endDrag(e) {\n      this.isDragging = false;\n      this.dragLimitLeft = null;\n      this.dragLimitRight = null;\n      document.body.style.cursor = \"auto\";\n      window.removeEventListener(\"mousemove\", this.mousemoveCallback);\n      window.removeEventListener(\"mouseup\", this.endDrag);\n\n      if (this.isMainBarOfDrag) {\n        this.onDragendBar(e, this);\n        this.isMainBarOfDrag = false;\n      }\n    },\n    snapBack: function snapBack() {\n      this.barStartMoment = this.barStartBeforeDrag;\n      this.barEndMoment = this.barEndBeforeDrag;\n    },\n    manageOverlapping: function manageOverlapping() {\n      if (!this.ganttChartProps.pushOnOverlap || this.barConfig.pushOnOverlap === false) {\n        return;\n      }\n\n      var currentBar = this.bar;\n\n      var _this$getOverlapBarAn = this.getOverlapBarAndType(currentBar),\n          overlapBar = _this$getOverlapBarAn.overlapBar,\n          overlapType = _this$getOverlapBarAn.overlapType;\n\n      while (overlapBar) {\n        var minuteDiff = void 0;\n        var currentStartMoment = moment(currentBar[this.barStart]);\n        var currentEndMoment = moment(currentBar[this.barEnd]);\n        var overlapStartMoment = moment(overlapBar[this.barStart]);\n        var overlapEndMoment = moment(overlapBar[this.barEnd]);\n\n        switch (overlapType) {\n          case \"left\":\n            minuteDiff = overlapEndMoment.diff(currentStartMoment, \"minutes\", true) + this.getMinGapBetweenBars();\n            overlapBar[this.barEnd] = currentStartMoment.subtract(this.getMinGapBetweenBars(), \"minutes\", true).format(\"YYYY-MM-DD HH:mm:ss\");\n            overlapBar[this.barStart] = overlapStartMoment.subtract(minuteDiff, \"minutes\", true).format(\"YYYY-MM-DD HH:mm:ss\");\n            break;\n\n          case \"right\":\n            minuteDiff = currentEndMoment.diff(overlapStartMoment, \"minutes\", true) + this.getMinGapBetweenBars();\n            overlapBar[this.barStart] = currentEndMoment.add(this.getMinGapBetweenBars(), \"minutes\", true).format(\"YYYY-MM-DD HH:mm:ss\");\n            overlapBar[this.barEnd] = overlapEndMoment.add(minuteDiff, \"minutes\", true).format(\"YYYY-MM-DD HH:mm:ss\");\n            break;\n\n          default:\n            // eslint-disable-next-line\n            console.warn(\"One bar is inside of the other one! This should never occur while push-on-overlap is active!\");\n            return;\n        }\n\n        this.moveBarsFromBundleOfPushedBar(overlapBar, minuteDiff, overlapType);\n        currentBar = overlapBar;\n\n        var _this$getOverlapBarAn2 = this.getOverlapBarAndType(overlapBar);\n\n        overlapBar = _this$getOverlapBarAn2.overlapBar;\n        overlapType = _this$getOverlapBarAn2.overlapType;\n      }\n    },\n    getOverlapBarAndType: function getOverlapBarAndType(bar) {\n      var _this3 = this;\n\n      var barStartMoment = moment(bar[this.barStart]);\n      var barEndMoment = moment(bar[this.barEnd]);\n      var overlapLeft, overlapRight, overlapInBetween;\n      var overlapBar = this.allBarsInRow.find(function (otherBar) {\n        if (otherBar === bar || otherBar.ganttBarConfig.pushOnOverlap === false) {\n          return false;\n        }\n\n        var otherBarStart = moment(otherBar[_this3.barStart]);\n        var otherBarEnd = moment(otherBar[_this3.barEnd]);\n        overlapLeft = barStartMoment.isBetween(otherBarStart, otherBarEnd);\n        overlapRight = barEndMoment.isBetween(otherBarStart, otherBarEnd);\n        overlapInBetween = otherBarStart.isBetween(barStartMoment, barEndMoment) || otherBarEnd.isBetween(barStartMoment, barEndMoment);\n        return overlapLeft || overlapRight || overlapInBetween;\n      });\n      var overlapType = overlapLeft ? \"left\" : overlapRight ? \"right\" : overlapInBetween ? \"between\" : null;\n      return {\n        overlapBar: overlapBar,\n        overlapType: overlapType\n      };\n    },\n    // this is used in GGanttChart, when a bar from a bundle is pushed\n    // so that bars from its bundle also get pushed\n    moveBarByMinutesAndPush: function moveBarByMinutesAndPush(minuteCount, direction) {\n      switch (direction) {\n        case \"left\":\n          this.barStartMoment = moment(this.barStartMoment).subtract(minuteCount, \"minutes\", true);\n          this.barEndMoment = moment(this.barEndMoment).subtract(minuteCount, \"minutes\", true);\n          break;\n\n        case \"right\":\n          this.barStartMoment = moment(this.barStartMoment).add(minuteCount, \"minutes\", true);\n          this.barEndMoment = moment(this.barEndMoment).add(minuteCount, \"minutes\", true);\n          break;\n\n        default:\n          // eslint-disable-next-line\n          console.warn(\"wrong direction in moveBarByMinutesAndPush\");\n          return;\n      }\n\n      this.manageOverlapping();\n    },\n\n    /* --------------------------------------------------------- */\n\n    /* ------- MAPPING POSITION TO TIME (AND VICE VERSA) ------- */\n\n    /* --------------------------------------------------------- */\n    mapTimeToPosition: function mapTimeToPosition(time) {\n      var hourDiffFromStart = moment(time).diff(this.chartStartMoment, \"hour\", true);\n      return hourDiffFromStart / this.getHourCount() * this.barContainer.width;\n    },\n    mapPositionToTime: function mapPositionToTime(xPos) {\n      var hourDiffFromStart = xPos / this.barContainer.width * this.getHourCount();\n      return this.chartStartMoment.clone().add(hourDiffFromStart, \"hours\");\n    }\n  },\n  filters: {\n    TimeFilter: function TimeFilter(value) {\n      return moment(value).format(\"HH:mm\");\n    }\n  }\n};\n\n/* script */\nvar __vue_script__$2 = script$2;\n/* template */\n\nvar __vue_render__$2 = function __vue_render__() {\n  var _vm = this;\n\n  var _h = _vm.$createElement;\n\n  var _c = _vm._self._c || _h;\n\n  return _c('div', [_c('div', {\n    ref: \"g-gantt-bar\",\n    staticClass: \"g-gantt-bar\",\n    style: _vm.barStyle,\n    on: {\n      \"mouseenter\": function mouseenter($event) {\n        $event.stopPropagation();\n        return _vm.onMouseenter($event);\n      },\n      \"mouseleave\": function mouseleave($event) {\n        $event.stopPropagation();\n        return _vm.onMouseleave($event);\n      },\n      \"mousedown\": function mousedown($event) {\n        $event.stopPropagation();\n        return _vm.onMousedown($event);\n      },\n      \"click\": function click($event) {\n        $event.stopPropagation();\n        return _vm.onClick($event);\n      },\n      \"dblclick\": function dblclick($event) {\n        return _vm.onDblclick($event);\n      },\n      \"contextmenu\": function contextmenu($event) {\n        return _vm.onContextmenu($event);\n      }\n    }\n  }, [_c('div', {\n    staticClass: \"g-gantt-bar-label\"\n  }, [_vm._t(\"bar-label\", [_vm._v(\"\\n        \" + _vm._s(_vm.barConfig.label || \"\") + \"\\n      \")], {\n    \"bar\": _vm.bar\n  })], 2), _vm._v(\" \"), _vm.barConfig.handles ? [_c('div', {\n    staticClass: \"g-gantt-bar-handle-left\"\n  }), _vm._v(\" \"), _c('div', {\n    staticClass: \"g-gantt-bar-handle-right\"\n  })] : _vm._e()], 2), _vm._v(\" \"), _c('transition', {\n    attrs: {\n      \"name\": \"fade\",\n      \"mode\": \"out-in\"\n    }\n  }, [!_vm.barConfig.noTooltip && (_vm.showTooltip || _vm.isDragging) ? _c('div', {\n    staticClass: \"g-gantt-tooltip\",\n    style: _vm.tooltipStyle\n  }, [_c('div', {\n    staticClass: \"color-indicator\",\n    style: {\n      background: this.barStyle.background || this.barStyle.backgroundColor\n    }\n  }), _vm._v(\"\\n      \" + _vm._s(_vm._f(\"TimeFilter\")(_vm.bar[_vm.barStart])) + \"\\n      - \\n      \" + _vm._s(_vm._f(\"TimeFilter\")(_vm.bar[_vm.barEnd])) + \"\\n    \")]) : _vm._e()])], 1);\n};\n\nvar __vue_staticRenderFns__$2 = [];\n/* style */\n\nvar __vue_inject_styles__$2 = function __vue_inject_styles__(inject) {\n  if (!inject) return;\n  inject(\"data-v-20272636_0\", {\n    source: \".g-gantt-bar[data-v-20272636]{position:absolute;top:2px;left:30px;display:flex;justify-content:space-between;align-items:center;color:#fff;width:300px;height:34px;border-radius:15px;background:#79869c;overflow:hidden}.g-gantt-bar-label[data-v-20272636]{width:100%;height:100%;box-sizing:border-box;padding:0 14px 0 14px;display:flex;justify-content:center;align-items:center}.g-gantt-bar-label>*[data-v-20272636]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.g-gantt-bar>.g-gantt-bar-handle-left[data-v-20272636],.g-gantt-bar>.g-gantt-bar-handle-right[data-v-20272636]{position:absolute;width:10px;height:100%;background:#fff;opacity:.7;border-radius:40px;cursor:w-resize}.g-gantt-bar-handle-left[data-v-20272636]{left:0}.g-gantt-bar-handle-right[data-v-20272636]{right:0}.g-gantt-bar-label img[data-v-20272636]{pointer-events:none}.g-gantt-tooltip[data-v-20272636]{position:absolute;background:#000;color:#fff;z-index:3;font-size:.7em;padding:3px;border-radius:3px;transition:opacity .2s;display:flex;align-items:center}.g-gantt-tooltip[data-v-20272636]:before{content:'';position:absolute;top:0;left:10%;width:0;height:0;border:10px solid transparent;border-bottom-color:#000;border-top:0;margin-left:-5px;margin-top:-5px}.g-gantt-tooltip>.color-indicator[data-v-20272636]{width:8px;height:8px;border-radius:100%;margin-right:4px}.fade-enter-active[data-v-20272636]{animation:fade-in-data-v-20272636 .3s}.fade-leave-active[data-v-20272636]{animation:fade-in-data-v-20272636 .3s reverse}@keyframes fade-in-data-v-20272636{from{opacity:0}to{opacity:1}}\",\n    map: undefined,\n    media: undefined\n  });\n};\n/* scoped */\n\n\nvar __vue_scope_id__$2 = \"data-v-20272636\";\n/* module identifier */\n\nvar __vue_module_identifier__$2 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$2 = false;\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__$2 = /*#__PURE__*/normalizeComponent({\n  render: __vue_render__$2,\n  staticRenderFns: __vue_staticRenderFns__$2\n}, __vue_inject_styles__$2, __vue_script__$2, __vue_scope_id__$2, __vue_is_functional_template__$2, __vue_module_identifier__$2, false, createInjector, undefined, undefined);\n\n//\nvar script$3 = {\n  name: \"GGanttRow\",\n  components: {\n    GGanttBar: __vue_component__$2\n  },\n  props: {\n    label: {\n      type: String,\n      \"default\": \"Row\"\n    },\n    bars: {\n      type: Array,\n      \"default\": function _default() {\n        return [];\n      }\n    },\n    barStart: {\n      type: String,\n      required: true\n    },\n    // property name of the bar objects that represents the start datetime\n    barEnd: {\n      type: String,\n      required: true\n    },\n    // property name of the bar objects that represents the end datetime,\n    highlightOnHover: Boolean\n  },\n  inject: [\"ganttChartProps\", \"getThemeColors\", \"getHourCount\", \"getChartStart\", \"getChartEnd\"],\n  data: function data() {\n    return {\n      barContainer: {}\n    };\n  },\n  computed: {\n    rowLabelStyle: function rowLabelStyle() {\n      return {\n        width: this.ganttChartProps.rowLabelWidth,\n        height: this.ganttChartProps.rowHeight,\n        background: this.$parent.themeColors.ternary,\n        color: this.$parent.themeColors.text\n      };\n    },\n    barsContainerStyle: function barsContainerStyle() {\n      return {\n        width: \"\".concat(100 - this.ganttChartProps.rowLabelWidth.replace('%', ''), \"%\")\n      };\n    }\n  },\n  mounted: function mounted() {\n    this.barContainer = this.$refs.barContainer.getBoundingClientRect();\n    window.addEventListener(\"resize\", this.onWindowResize);\n  },\n  methods: {\n    onDragover: function onDragover(e) {\n      e.preventDefault(); // enables dropping content on row\n\n      if (this.highlightOnHover) {\n        this.$refs[\"g-gantt-row\"].style.backgroundColor = this.getThemeColors().hoverHighlight;\n      }\n    },\n    onDragleave: function onDragleave() {\n      this.$refs[\"g-gantt-row\"].style.backgroundColor = null;\n    },\n    onDrop: function onDrop(e) {\n      var _this = this;\n\n      var barContainer = this.$refs.barContainer.getBoundingClientRect();\n      var xPos = e.clientX - barContainer.left;\n      var hourDiffFromStart = xPos / barContainer.width * this.getHourCount();\n      var time = moment(this.getChartStart()).add(hourDiffFromStart, \"hours\");\n      var bar = this.bars.find(function (bar) {\n        return time.isBetween(bar[_this.barStart], bar[_this.barEnd]);\n      });\n      this.$emit(\"drop\", {\n        event: e,\n        bar: bar,\n        time: time.format(\"YYYY-MM-DD HH:mm:ss\")\n      });\n    },\n    onMouseover: function onMouseover() {\n      if (this.highlightOnHover) {\n        this.$refs[\"g-gantt-row\"].style.backgroundColor = this.getThemeColors().hoverHighlight;\n      }\n    },\n    onMouseleave: function onMouseleave() {\n      this.$refs[\"g-gantt-row\"].style.backgroundColor = null;\n    },\n    onWindowResize: function onWindowResize() {\n      // re-initialize the barContainer DOMRect variable, which will trigger re-rendering in the gantt bars\n      this.barContainer = this.$refs.barContainer.getBoundingClientRect();\n    }\n  },\n  watch: {\n    'ganttChartProps.rowLabelWidth': function ganttChartPropsRowLabelWidth() {\n      this.barContainer = this.$refs.barContainer.getBoundingClientRect();\n    }\n  }\n};\n\n/* script */\nvar __vue_script__$3 = script$3;\n/* template */\n\nvar __vue_render__$3 = function __vue_render__() {\n  var _vm = this;\n\n  var _h = _vm.$createElement;\n\n  var _c = _vm._self._c || _h;\n\n  return _c('div', _vm._g({\n    ref: \"g-gantt-row\",\n    staticClass: \"g-gantt-row\",\n    style: {\n      height: _vm.$parent.rowHeight + \"px\"\n    }\n  }, _vm.$listeners), [_c('div', {\n    staticClass: \"g-gantt-row-label\",\n    style: _vm.rowLabelStyle\n  }, [_vm._t(\"label\", [_vm._v(\"\\n      \" + _vm._s(_vm.label) + \"\\n    \")])], 2), _vm._v(\" \"), _c('div', {\n    ref: \"barContainer\",\n    staticClass: \"g-gantt-row-bars-container\",\n    style: _vm.barsContainerStyle,\n    on: {\n      \"dragover\": function dragover($event) {\n        return _vm.onDragover($event);\n      },\n      \"dragleave\": function dragleave($event) {\n        return _vm.onDragleave($event);\n      },\n      \"drop\": function drop($event) {\n        return _vm.onDrop($event);\n      },\n      \"mouseover\": function mouseover($event) {\n        return _vm.onMouseover();\n      },\n      \"mouseleave\": function mouseleave($event) {\n        return _vm.onMouseleave();\n      }\n    }\n  }, _vm._l(_vm.bars, function (bar, index) {\n    return _c('g-gantt-bar', {\n      key: \"ganttastic_bar_\" + index,\n      ref: \"ganttBar\",\n      refInFor: true,\n      attrs: {\n        \"bar\": bar,\n        \"bar-start\": _vm.barStart,\n        \"bar-end\": _vm.barEnd,\n        \"bar-container\": _vm.barContainer,\n        \"all-bars-in-row\": _vm.bars\n      },\n      scopedSlots: _vm._u([{\n        key: \"bar-label\",\n        fn: function fn(ref) {\n          var bar = ref.bar;\n          return [_vm._t(\"bar-label\", null, {\n            \"bar\": bar\n          })];\n        }\n      }], null, true)\n    });\n  }), 1)]);\n};\n\nvar __vue_staticRenderFns__$3 = [];\n/* style */\n\nvar __vue_inject_styles__$3 = function __vue_inject_styles__(inject) {\n  if (!inject) return;\n  inject(\"data-v-419c73a4_0\", {\n    source: \".g-gantt-row[data-v-419c73a4]{display:flex;width:100%;height:40px;transition:background-color .2s}.g-gantt-row>.g-gantt-row-label[data-v-419c73a4]{display:flex;justify-content:center;align-items:center;width:20%;background:#e8e8e8;color:#424242;font-size:.9em;z-index:3;overflow:hidden;font-weight:700}.g-gantt-row>.g-gantt-row-bars-container[data-v-419c73a4]{position:relative;border-top:1px solid #eaeaea;width:70%;border-bottom:1px solid #eaeaea}\",\n    map: undefined,\n    media: undefined\n  });\n};\n/* scoped */\n\n\nvar __vue_scope_id__$3 = \"data-v-419c73a4\";\n/* module identifier */\n\nvar __vue_module_identifier__$3 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$3 = false;\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__$3 = /*#__PURE__*/normalizeComponent({\n  render: __vue_render__$3,\n  staticRenderFns: __vue_staticRenderFns__$3\n}, __vue_inject_styles__$3, __vue_script__$3, __vue_scope_id__$3, __vue_is_functional_template__$3, __vue_module_identifier__$3, false, createInjector, undefined, undefined);\n\nvar script$4 = {\n  name: \"GGanttChart\",\n  components: {\n    GGanttTimeaxis: __vue_component__,\n    GGanttGrid: __vue_component__$1\n  },\n  props: {\n    chartStart: {\n      type: String,\n      \"default\": moment().startOf(\"day\").format(\"YYYY-MM-DD HH:mm:ss\")\n    },\n    chartEnd: {\n      type: String,\n      \"default\": moment().startOf(\"day\").add(12, \"hours\").format(\"YYYY-MM-DD HH:mm:ss\")\n    },\n    hideTimeaxis: Boolean,\n    rowLabelWidth: {\n      type: String,\n      \"default\": \"10%\"\n    },\n    rowHeight: {\n      type: Number,\n      \"default\": 40\n    },\n    locale: {\n      type: String,\n      \"default\": \"en\"\n    },\n    theme: {\n      type: String\n    },\n    grid: {\n      type: Boolean\n    },\n    highlightedHours: {\n      type: Array,\n      \"default\": function _default() {\n        return [];\n      }\n    },\n    width: {\n      type: String,\n      \"default\": \"100%\"\n    },\n    // the total width of the entire ganttastic component in %\n    pushOnOverlap: {\n      type: Boolean\n    },\n    snapBackOnOverlap: {\n      type: Boolean\n    },\n    minGapBetweenBars: {\n      type: Number,\n      \"default\": 0\n    }\n  },\n  data: function data() {\n    return {\n      timemarkerOffset: 0,\n      movedBarsInDrag: new Set()\n    };\n  },\n  computed: {\n    hourCount: function hourCount() {\n      var momentChartStart = moment(this.chartStart);\n      var momentChartEnd = moment(this.chartEnd);\n      return Math.floor(momentChartEnd.diff(momentChartStart, \"hour\", true));\n    },\n    themeColors: function themeColors() {\n      return GanttasticThemeColors[this.theme] || GanttasticThemeColors[\"default\"];\n    }\n  },\n  methods: {\n    getGanttBarChildrenList: function getGanttBarChildrenList() {\n      var ganttBarChildren = [];\n      var ganttRowChildrenList = this.$children.filter(function (childComp) {\n        return childComp.$options.name === __vue_component__$3.name;\n      });\n      ganttRowChildrenList.forEach(function (row) {\n        var ganttBarChildrenOfRow = row.$children.filter(function (childComp) {\n          return childComp.$options.name === __vue_component__$2.name;\n        });\n        ganttBarChildren.push.apply(ganttBarChildren, _toConsumableArray(ganttBarChildrenOfRow));\n      });\n      return ganttBarChildren;\n    },\n    getBarsFromBundle: function getBarsFromBundle(bundleId) {\n      if (bundleId === undefined || bundleId === null) {\n        return [];\n      }\n\n      return this.getGanttBarChildrenList().filter(function (ganttBarChild) {\n        return ganttBarChild.barConfig.bundle === bundleId;\n      });\n    },\n    initDragOfBarsFromBundle: function initDragOfBarsFromBundle(gGanttBar, e) {\n      var _this = this;\n\n      gGanttBar.initDrag(e);\n      this.movedBarsInDrag.add(gGanttBar.bar);\n\n      if (gGanttBar.barConfig.bundle !== null && gGanttBar.barConfig.bundle !== undefined) {\n        this.getGanttBarChildrenList().forEach(function (ganttBarChild) {\n          if (ganttBarChild.barConfig.bundle === gGanttBar.barConfig.bundle && ganttBarChild !== gGanttBar) {\n            ganttBarChild.initDrag(e);\n\n            _this.movedBarsInDrag.add(ganttBarChild.bar);\n          }\n        });\n      }\n    },\n    moveBarsFromBundleOfPushedBar: function moveBarsFromBundleOfPushedBar(pushedBar, minuteDiff, overlapType) {\n      var _this2 = this;\n\n      this.movedBarsInDrag.add(pushedBar);\n      var bundleId = pushedBar.ganttBarConfig.bundle;\n\n      if (bundleId === undefined || bundleId === null) {\n        return;\n      }\n\n      this.getGanttBarChildrenList().forEach(function (ganttBarChild) {\n        if (ganttBarChild.barConfig.bundle === bundleId && ganttBarChild.bar !== pushedBar) {\n          ganttBarChild.moveBarByMinutesAndPush(minuteDiff, overlapType);\n\n          _this2.movedBarsInDrag.add(ganttBarChild.bar);\n        }\n      });\n    },\n    shouldSnapBackBar: function shouldSnapBackBar(ganttBar) {\n      if (this.snapBackOnOverlap && ganttBar.barConfig.pushOnOverlap !== false) {\n        var _ganttBar$getOverlapB = ganttBar.getOverlapBarAndType(ganttBar.bar),\n            overlapBar = _ganttBar$getOverlapB.overlapBar;\n\n        return !!overlapBar;\n      }\n\n      return false;\n    },\n    snapBackBundleIfNeeded: function snapBackBundleIfNeeded(ganttBar) {\n      var _this3 = this;\n\n      var barsFromBundle = this.getBarsFromBundle(ganttBar.barConfig.bundle);\n\n      if (this.shouldSnapBackBar(ganttBar) || barsFromBundle.some(function (gBar) {\n        return _this3.shouldSnapBackBar(gBar);\n      })) {\n        ganttBar.snapBack();\n        barsFromBundle.forEach(function (gBar) {\n          return gBar.snapBack();\n        });\n        return true;\n      }\n\n      return false;\n    },\n    onBarEvent: function onBarEvent(_ref, ganttBar) {\n      var event = _ref.event,\n          type = _ref.type,\n          time = _ref.time;\n      this.$emit(\"\".concat(type, \"-bar\"), {\n        event: event,\n        bar: ganttBar.bar,\n        time: time\n      });\n    },\n    onDragendBar: function onDragendBar(e, ganttBar) {\n      var didSnapBack = this.snapBackBundleIfNeeded(ganttBar);\n      var movedBars = didSnapBack ? new Set() : this.movedBarsInDrag;\n      this.movedBarsInDrag = new Set();\n      this.$emit(\"dragend-bar\", {\n        event: e,\n        bar: ganttBar.bar,\n        movedBars: movedBars\n      });\n    },\n    // ------------------------------------------------------------------------\n    // --------  METHODS FOR SETTING THE DRAG LIMIT OF A BAR   ----------------\n    // ------------------------------------------------------------------------\n    // how far you can drag a bar depends on the position of the closest immobile bar\n    // note that if a bar from the same row belongs to a bundle\n    // other rows might need to be taken into consideration, too\n    setDragLimitsOfGanttBar: function setDragLimitsOfGanttBar(bar) {\n      var _this4 = this;\n\n      if (!this.pushOnOverlap || bar.barConfig.pushOnOverlap === false) {\n        return;\n      }\n\n      var _loop = function _loop() {\n        var side = _arr[_i];\n\n        var _this4$countGapDistan = _this4.countGapDistanceToNextImmobileBar(bar, null, side, false),\n            _this4$countGapDistan2 = _slicedToArray(_this4$countGapDistan, 2),\n            totalGapDistance = _this4$countGapDistan2[0],\n            bundleBarsOnPath = _this4$countGapDistan2[1];\n\n        var _loop2 = function _loop2(i) {\n          var barFromBundle = bundleBarsOnPath[i].bar;\n          var gapDist = bundleBarsOnPath[i].gapDistance;\n\n          var otherBarsFromBundle = _this4.getBarsFromBundle(barFromBundle.barConfig.bundle).filter(function (otherBar) {\n            return otherBar !== barFromBundle;\n          });\n\n          otherBarsFromBundle.forEach(function (otherBar) {\n            var _this4$countGapDistan3 = _this4.countGapDistanceToNextImmobileBar(otherBar, gapDist, side),\n                _this4$countGapDistan4 = _slicedToArray(_this4$countGapDistan3, 2),\n                newGapDistance = _this4$countGapDistan4[0],\n                newBundleBars = _this4$countGapDistan4[1];\n\n            if (newGapDistance !== null && (newGapDistance < totalGapDistance || !totalGapDistance)) {\n              totalGapDistance = newGapDistance;\n            }\n\n            newBundleBars.forEach(function (newBundleBar) {\n              if (!bundleBarsOnPath.find(function (barAndGap) {\n                return barAndGap.bar === newBundleBar.bar;\n              })) {\n                bundleBarsOnPath.push(newBundleBar);\n              }\n            });\n          });\n        };\n\n        for (var i = 0; i < bundleBarsOnPath.length; i++) {\n          _loop2(i);\n        }\n\n        if (totalGapDistance != null && side === \"left\") {\n          bar.dragLimitLeft = bar.$refs['g-gantt-bar'].offsetLeft - totalGapDistance;\n        } else if (totalGapDistance != null && side === \"right\") {\n          bar.dragLimitRight = bar.$refs['g-gantt-bar'].offsetLeft + bar.$refs['g-gantt-bar'].offsetWidth + totalGapDistance;\n        }\n      };\n\n      for (var _i = 0, _arr = [\"left\", \"right\"]; _i < _arr.length; _i++) {\n        _loop();\n      } // all bars from the bundle of the clicked bar need to have the same drag limit:\n\n\n      var barsFromBundleOfClickedBar = this.getBarsFromBundle(bar.barConfig.bundle);\n      barsFromBundleOfClickedBar.forEach(function (barFromBundle) {\n        barFromBundle.dragLimitLeft = bar.dragLimitLeft;\n        barFromBundle.dragLimitRight = bar.dragLimitRight;\n      });\n    },\n    // returns the gap distance to the next immobile bar\n    // in the row where the given bar (parameter) is (added to gapDistanceSoFar)\n    // and a list of all bars on that path that belong to a bundle\n    countGapDistanceToNextImmobileBar: function countGapDistanceToNextImmobileBar(bar, gapDistanceSoFar) {\n      var side = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"left\";\n      var ignoreShadows = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n      var bundleBarsAndGapDist = bar.barConfig.bundle ? [{\n        bar: bar,\n        gapDistance: gapDistanceSoFar\n      }] : [];\n      var currentBar = bar;\n      var nextBar = this.getNextGanttBar(currentBar, side); // left side:\n\n      if (side === \"left\") {\n        while (nextBar) {\n          var nextBarOffsetRight = nextBar.$refs['g-gantt-bar'].offsetLeft + nextBar.$refs['g-gantt-bar'].offsetWidth;\n          gapDistanceSoFar += currentBar.$refs['g-gantt-bar'].offsetLeft - nextBarOffsetRight;\n\n          if (nextBar.barConfig.immobile || nextBar.barConfig.isShadow && !ignoreShadows) {\n            return [gapDistanceSoFar, bundleBarsAndGapDist];\n          } else if (nextBar.barConfig.bundle) {\n            bundleBarsAndGapDist.push({\n              bar: nextBar,\n              gapDistance: gapDistanceSoFar\n            });\n          }\n\n          currentBar = nextBar;\n          nextBar = this.getNextGanttBar(nextBar, \"left\");\n        }\n      }\n\n      if (side === \"right\") {\n        while (nextBar) {\n          var currentBarOffsetRight = currentBar.$refs['g-gantt-bar'].offsetLeft + currentBar.$refs['g-gantt-bar'].offsetWidth;\n          gapDistanceSoFar += nextBar.$refs['g-gantt-bar'].offsetLeft - currentBarOffsetRight;\n\n          if (nextBar.barConfig.immobile || nextBar.barConfig.isShadow && !ignoreShadows) {\n            return [gapDistanceSoFar, bundleBarsAndGapDist];\n          } else if (nextBar.barConfig.bundle) {\n            bundleBarsAndGapDist.push({\n              bar: nextBar,\n              gapDistance: gapDistanceSoFar\n            });\n          }\n\n          currentBar = nextBar;\n          nextBar = this.getNextGanttBar(nextBar, \"right\");\n        }\n      }\n\n      return [null, bundleBarsAndGapDist];\n    },\n    getNextGanttBar: function getNextGanttBar(bar) {\n      var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"left\";\n      var allBarsLeftOrRight = [];\n\n      if (side === \"left\") {\n        allBarsLeftOrRight = bar.$parent.$children.filter(function (gBar) {\n          return gBar.$options.name === __vue_component__$2.name && gBar.$parent === bar.$parent && gBar.$refs['g-gantt-bar'] && gBar.$refs['g-gantt-bar'].offsetLeft < bar.$refs['g-gantt-bar'].offsetLeft && gBar.barConfig.pushOnOverlap !== false;\n        });\n      } else {\n        allBarsLeftOrRight = bar.$parent.$children.filter(function (gBar) {\n          return gBar.$options.name === __vue_component__$2.name && gBar.$parent === bar.$parent && gBar.$refs['g-gantt-bar'] && gBar.$refs['g-gantt-bar'].offsetLeft > bar.$refs['g-gantt-bar'].offsetLeft && gBar.barConfig.pushOnOverlap !== false;\n        });\n      }\n\n      if (allBarsLeftOrRight.length > 0) {\n        return allBarsLeftOrRight.reduce(function (bar1, bar2) {\n          var bar1Dist = Math.abs(bar1.$refs['g-gantt-bar'].offsetLeft - bar.$refs['g-gantt-bar'].offsetLeft);\n          var bar2Dist = Math.abs(bar2.$refs['g-gantt-bar'].offsetLeft - bar.$refs['g-gantt-bar'].offsetLeft);\n          return bar1Dist < bar2Dist ? bar1 : bar2;\n        }, allBarsLeftOrRight[0]);\n      } else {\n        return null;\n      }\n    } // ------------------------------------------------------------------------\n    // ------------------------------------------------------------------------\n    // ------------------------------------------------------------------------\n\n  },\n  // all child components of GGanttChart may have access to\n  // the following values by using Vue's \"inject\" option:\n  provide: function provide() {\n    var _this5 = this;\n\n    return {\n      getChartStart: function getChartStart() {\n        return _this5.chartStart;\n      },\n      getChartEnd: function getChartEnd() {\n        return _this5.chartEnd;\n      },\n      getHourCount: function getHourCount() {\n        return _this5.hourCount;\n      },\n      ganttChartProps: this.$props,\n      getThemeColors: function getThemeColors() {\n        return _this5.themeColors;\n      },\n      initDragOfBarsFromBundle: function initDragOfBarsFromBundle(bundleId, e) {\n        return _this5.initDragOfBarsFromBundle(bundleId, e);\n      },\n      moveBarsFromBundleOfPushedBar: function moveBarsFromBundleOfPushedBar(bar, minuteDiff, overlapType) {\n        return _this5.moveBarsFromBundleOfPushedBar(bar, minuteDiff, overlapType);\n      },\n      setDragLimitsOfGanttBar: function setDragLimitsOfGanttBar(ganttBar) {\n        return _this5.setDragLimitsOfGanttBar(ganttBar);\n      },\n      onBarEvent: function onBarEvent(e, ganttBar) {\n        return _this5.onBarEvent(e, ganttBar);\n      },\n      onDragendBar: function onDragendBar(e, ganttBar) {\n        return _this5.onDragendBar(e, ganttBar);\n      },\n      shouldSnapBackOnOverlap: function shouldSnapBackOnOverlap() {\n        return _this5.snapBackOnOverlap;\n      },\n      snapBackBundle: function snapBackBundle(ganttBar) {\n        return _this5.snapBackBundle(ganttBar);\n      },\n      getMinGapBetweenBars: function getMinGapBetweenBars() {\n        return _this5.minGapBetweenBars;\n      }\n    };\n  }\n};\n\n/* script */\nvar __vue_script__$4 = script$4;\n/* template */\n\nvar __vue_render__$4 = function __vue_render__() {\n  var _vm = this;\n\n  var _h = _vm.$createElement;\n\n  var _c = _vm._self._c || _h;\n\n  return _c('div', {\n    style: {\n      width: _vm.width,\n      background: _vm.themeColors.background\n    },\n    attrs: {\n      \"id\": \"g-gantt-chart\"\n    }\n  }, [!_vm.hideTimeaxis ? _c('g-gantt-timeaxis', {\n    attrs: {\n      \"chart-start\": _vm.chartStart,\n      \"chart-end\": _vm.chartEnd,\n      \"row-label-width\": _vm.rowLabelWidth,\n      \"timemarker-offset\": _vm.timemarkerOffset,\n      \"theme-colors\": _vm.themeColors,\n      \"locale\": _vm.locale\n    }\n  }) : _vm._e(), _vm._v(\" \"), _vm.grid ? _c('g-gantt-grid', {\n    attrs: {\n      \"chart-start\": _vm.chartStart,\n      \"chart-end\": _vm.chartEnd,\n      \"row-label-width\": _vm.rowLabelWidth,\n      \"highlighted-hours\": _vm.highlightedHours\n    }\n  }) : _vm._e(), _vm._v(\" \"), _c('div', {\n    attrs: {\n      \"id\": \"g-gantt-rows-container\"\n    }\n  }, [_vm._t(\"default\")], 2)], 1);\n};\n\nvar __vue_staticRenderFns__$4 = [];\n/* style */\n\nvar __vue_inject_styles__$4 = function __vue_inject_styles__(inject) {\n  if (!inject) return;\n  inject(\"data-v-57d4915b_0\", {\n    source: \"#g-gantt-chart[data-v-57d4915b]{position:relative;display:flex;flex-direction:column;overflow-x:hidden;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding-bottom:23px}#g-gantt-chart[data-v-57d4915b] *{font-family:Roboto,Verdana}#g-gantt-rows-container[data-v-57d4915b]{position:relative}\",\n    map: undefined,\n    media: undefined\n  });\n};\n/* scoped */\n\n\nvar __vue_scope_id__$4 = \"data-v-57d4915b\";\n/* module identifier */\n\nvar __vue_module_identifier__$4 = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__$4 = false;\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__$4 = /*#__PURE__*/normalizeComponent({\n  render: __vue_render__$4,\n  staticRenderFns: __vue_staticRenderFns__$4\n}, __vue_inject_styles__$4, __vue_script__$4, __vue_scope_id__$4, __vue_is_functional_template__$4, __vue_module_identifier__$4, false, createInjector, undefined, undefined);\n\nexports.GGanttChart = __vue_component__$4;\nexports.GGanttRow = __vue_component__$3;\n"]}