/* @license dhtmlxGantt v.6.0.2 Professional This software is covered by DHTMLX Commercial License. Usage without proper license is prohibited. (c) Dinamenta, UAB. */!function(t){var e={};function n(a){if(e[a])return e[a].exports;var r=e[a]={i:a,l:!1,exports:{}};return t[a].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=t,n.c=e,n.d=function(t,e,a){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:a})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)n.d(a,r,function(e){return t[e]}.bind(null,r));return a},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="/codebase/",n(n.s=219)}({18:function(t,e,n){var a=n(3);t.exports=function(){return{getVertices:function(t){for(var e,n={},a=0,r=t.length;a1&&e.push(t)}),e}}}},19:function(t,e){t.exports=function(t){t._get_linked_task=function(e,n){var a=null,r=n?e.target:e.source;return t.isTaskExists(r)&&(a=t.getTask(r)),a},t._get_link_target=function(e){return t._get_linked_task(e,!0)},t._get_link_source=function(e){return t._get_linked_task(e,!1)};var e=!1,n={},a={},r={},i={};t._isLinksCacheEnabled=function(){return e},t._startLinksCache=function(){n={},a={},r={},i={},e=!0},t._endLinksCache=function(){n={},a={},r={},i={},e=!1},t._formatLink=function(a){if(e&&n[a.id])return n[a.id];var r=[],i=this._get_link_target(a),s=this._get_link_source(a);if(!s||!i)return r;if(t.isSummaryTask(i)&&t.isChildOf(s.id,i.id)||t.isSummaryTask(s)&&t.isChildOf(i.id,s.id))return r;for(var c=this._getImplicitLinks(a,s,function(t){return 0},!0),o=t.config.auto_scheduling_move_projects,u=this.isSummaryTask(i)?this.getSubtaskDates(i.id):{start_date:i.start_date,end_date:i.end_date},l=this._getImplicitLinks(a,i,function(e){return o?e.$target.length||t.getState().drag_id==e.id?0:t.calculateDuration({start_date:u.start_date,end_date:e.start_date,task:s}):0}),d=0,h=c.length;d+e.end_date?1:-1})).length?e[e.length-1].end_date:null},t._isProjectEnd=function(t){return!this._hasDuration({start_date:t.end_date,end_date:this._getProjectEnd(),task:t})},{_needRecalc:!0,_cache:null,reset:function(){this._needRecalc=!0,this._cache=null},_isRecalcNeeded:function(){return this._needRecalc},_getLinks:function(){var t=a.getLinkedTasks();return r.groupAdjacentEdges(t)},_calculateBranch:function(e,n,a,r){if(n[e.id]=!0,void 0===a[e.id])for(var i=[e];i.length;)if(a[(e=i.pop()).id]||t._isProjectEnd(e))for(a[e.id]=!0;i.length;){a[(e=i.pop()).id]=!0}else{a[e.id]=!1;for(var s=r[e.id]||[],c=0;c1:var a=this._getTargetWithMinimalSlack(this._linkedTasksById[e.id].linked);return this._chainSlackCount(t.getTask(a.target),t.getFreeSlack(e))+n}},_getTargetWithMinimalSlack:function(t){var e;return r.forEach(t,function(t){(void 0===e||t.slack(e=this._calculateLinkSlack(a[r]))||0===r)&&(n=e);return n},_calculateLinkSlack:function(e){var n=t.getLink(e),a=0;return t.isTaskExists(n.source)&&t.isTaskExists(n.target)&&(a=t.getSlack(t.getTask(n.source),t.getTask(n.target))),a},_calculateHierarchySlack:function(e){var n,a=t.getSubtaskDates().end_date;return n=t.isTaskExists(e.parent)&&t.getSubtaskDates(e.id).end_date||e.end_date,Math.max(t.calculateDuration(n,a),0)},_resetTotalSlackCache:function(){this._slackNeedCalculate=!0},_shouldCalculateTotalSlack:function(){return this._slackNeedCalculate},getFreeSlack:function(e){return t.isTaskExists(e.id)?(this._freeSlack[e.id]||(t.isSummaryTask(e)?this._freeSlack[e.id]=void 0:this._freeSlack[e.id]=this._calculateTaskSlack(e)),this._freeSlack[e.id]):0},getTotalSlack:function(t){return this._shouldCalculateTotalSlack()&&this._calculateTotalSlack(),void 0===t?this._totalSlack:void 0!==t.id?this._totalSlack[t.id]:this._totalSlack[t]||0},dropCachedFreeSlack:function(){this._linkedTasksById={},this._freeSlack={},this._resetTotalSlackCache()},init:function(){function n(){e.dropCachedFreeSlack()}t.attachEvent("onAfterLinkAdd",n),t.attachEvent("onAfterLinkUpdate",n),t.attachEvent("onAfterLinkDelete",n),t.attachEvent("onAfterTaskAdd",n),t.attachEvent("onAfterTaskUpdate",n),t.attachEvent("onAfterTaskDelete",n),t.attachEvent("onRowDragEnd",n),t.attachEvent("onAfterTaskMove",n)}};return e}},219:function(t,e,n){n(19)(gantt);var a=n(218)(gantt);a.init(),gantt.getFreeSlack=function(t){return a.getFreeSlack(t)},gantt.getTotalSlack=function(t){return a.getTotalSlack(t)};var r=n(217)(gantt);gantt.config.highlight_critical_path=!1,r.init(),gantt.isCriticalTask=function(t){return gantt.assert(!(!t||void 0===t.id),"Invalid argument for gantt.isCriticalTask"),r.isCriticalTask(t)},gantt.isCriticalLink=function(t){return this.isCriticalTask(gantt.getTask(t.source))},gantt.getSlack=function(t,e){for(var n=0,a=[],r={},i=0;ic||0===i)&&(n=c)}return n},gantt._getSlack=function(t,e,n){var a=this.config.types,r=null;r=this.getTaskType(t.type)==a.milestone?t.start_date:t.end_date;var i=e.start_date,s=0;s=+r>+i?-this.calculateDuration({start_date:i,end_date:r,task:t}):this.calculateDuration({start_date:r,end_date:i,task:t});var c=n.lag;return c&&1*c==c&&(s-=c),s}},3:function(t,e){var n={second:1,minute:60,hour:3600,day:86400,week:604800,month:2592e3,quarter:7776e3,year:31536e3};function a(t,e){var n=[];if(t.filter)return t.filter(e);for(var a=0;a