{"version":3,"sources":["../src/plugins/dependencies.js","../src/plugins/dependencies/dependenciesChecker.factory.js","../src/plugins/dependencies/dependenciesEvents.factory.js","../src/plugins/dependencies/dependenciesManager.factory.js","../src/plugins/dependencies/dependency.factory.js","../src/plugins/dependencies/taskMouseHandler.factory.js","../.tmp/generated/plugins/dependencies/html2js.js"],"names":[],"mappings":"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","file":"angular-gantt-dependencies-plugin.js","sourcesContent":["(function() {\n 'use strict';\n angular.module('gantt.dependencies', ['gantt', 'gantt.dependencies.templates']).directive('ganttDependencies',\n ['$timeout', '$document', 'ganttDebounce', 'GanttDependenciesManager', 'GanttDependenciesChecker',\n function($timeout, $document, debounce, DependenciesManager, DependenciesChecker) {\n return {\n restrict: 'E',\n require: '^gantt',\n scope: {\n enabled: '=?',\n readOnly: '=?',\n jsPlumbDefaults: '=?',\n endpoints: '=?',\n fallbackEndpoints: '=?',\n conflictChecker: '=?'\n },\n link: function(scope, element, attrs, ganttCtrl) {\n var api = ganttCtrl.gantt.api;\n\n // Load options from global options attribute.\n if (scope.options && typeof(scope.options.dependencies) === 'object') {\n for (var option in scope.options.dependencies) {\n scope[option] = scope.options.dependencies[option];\n }\n }\n\n if (scope.enabled === undefined) {\n scope.enabled = true;\n }\n\n if (scope.readOnly === undefined) {\n scope.readOnly = false;\n }\n\n if (scope.jsPlumbDefaults === undefined) {\n // https://jsplumbtoolkit.com/community/doc/defaults.html\n scope.jsPlumbDefaults = {\n Endpoint: ['Dot', {radius: 4}],\n EndpointStyle: {fillStyle: '#456', strokeStyle: '#456', lineWidth: 1},\n PaintStyle: {\n strokeWidth: 3,\n stroke: 'rgb(68, 85, 102)'\n },\n Connector: 'Flowchart',\n ConnectionOverlays: [['Arrow', {location: 1, length: 12, width: 12}]]\n };\n }\n\n function createLeftOverlay() {\n return angular.element('');\n }\n\n function createRightOverlay() {\n return angular.element('');\n }\n\n function createLeftFallbackOverlay() {\n return angular.element('');\n }\n\n function createRightFallbackOverlay() {\n return angular.element('');\n }\n\n if (scope.endpoints === undefined) {\n scope.endpoints = [\n {\n anchor: 'Left',\n isSource: false,\n isTarget: true,\n maxConnections: -1,\n cssClass: 'gantt-endpoint start-endpoint target-endpoint',\n overlays: [\n ['Custom', {create: createLeftOverlay}]\n ]\n\n },\n {\n anchor: 'Right',\n isSource: true,\n isTarget: false,\n maxConnections: -1,\n cssClass: 'gantt-endpoint end-endpoint source-endpoint',\n overlays: [\n ['Custom', {create: createRightOverlay}]\n ]\n }\n ];\n }\n\n if (scope.fallbackEndpoints === undefined) {\n scope.fallbackEndpoints = [\n {\n endpoint: 'Blank',\n anchor: 'Left',\n isSource: false,\n isTarget: true,\n maxConnections: 0,\n cssClass: 'gantt-endpoint start-endpoint fallback-endpoint',\n overlays: [\n ['Custom', {create: createLeftFallbackOverlay}]\n ]\n },\n {\n endpoint: 'Blank',\n anchor: 'Right',\n isSource: true,\n isTarget: false,\n maxConnections: 0,\n cssClass: 'gantt-endpoint end-endpoint fallback-endpoint',\n overlays: [\n ['Custom', {create: createRightFallbackOverlay}]\n ]\n }\n ];\n }\n\n if (scope.conflictChecker === undefined) {\n scope.conflictChecker = false;\n }\n\n var manager = new DependenciesManager(ganttCtrl.gantt, scope, api);\n var checker = new DependenciesChecker(manager, scope, api);\n\n scope.$watchGroup(['conflictChecker', 'enabled'], function(newValue, oldValue) {\n if (newValue !== oldValue) {\n var rows = ganttCtrl.gantt.rowsManager.rows;\n var allTasks = [];\n for (var i = 0; i < rows.length; i++) {\n allTasks.push.apply(allTasks, rows[i].tasks);\n }\n if (scope.conflictChecker && scope.enabled) {\n checker.refresh(allTasks);\n } else {\n checker.clear(allTasks);\n }\n\n }\n });\n\n api.directives.on.new(scope, function(directiveName, directiveScope, directiveElement) {\n if (directiveName === 'ganttBody') {\n manager.plumb.setContainer(directiveElement);\n }\n });\n\n api.tasks.on.add(scope, function(task) {\n manager.addDependenciesFromTask(task, true);\n });\n\n api.tasks.on.remove(scope, function(task) {\n manager.removeDependenciesFromTask(task);\n });\n\n api.tasks.on.displayed(scope, debounce(function(tasks) {\n manager.setTasks(tasks);\n manager.refresh();\n if (scope.conflictChecker && scope.enabled) {\n checker.refresh(tasks);\n }\n }));\n\n api.rows.on.displayed(scope, function() {\n manager.refresh();\n });\n\n api.tasks.on.viewChange(scope, function(task) {\n if (task.$element) {\n manager.plumb.revalidate(task.$element[0]);\n }\n if (scope.conflictChecker && scope.enabled) {\n checker.refresh([task]);\n }\n });\n\n api.tasks.on.viewRowChange(scope, function(task) {\n manager.setTask(task);\n if (scope.conflictChecker && scope.enabled) {\n checker.refresh([task]);\n }\n });\n\n api.dependencies.on.add(scope, function(dependency) {\n if (scope.conflictChecker && scope.enabled) {\n checker.refresh([dependency.getFromTask(), dependency.getToTask()]);\n }\n });\n\n api.dependencies.on.change(scope, function(dependency) {\n if (scope.conflictChecker && scope.enabled) {\n checker.refresh([dependency.getFromTask(), dependency.getToTask()]);\n }\n });\n\n api.dependencies.on.remove(scope, function(dependency) {\n if (scope.conflictChecker && scope.enabled) {\n var fromTask = dependency.getFromTask();\n var toTask = dependency.getToTask();\n\n if (fromTask && toTask) {\n checker.refresh([fromTask, toTask]);\n } else {\n\n if (fromTask) {\n checker.removeConflictClass(fromTask);\n } else {\n checker.removeConflictClass(toTask);\n }\n\n }\n\n }\n });\n\n\n }\n };\n }]);\n}());\n\n","(function() {\n 'use strict';\n\n angular.module('gantt.dependencies').factory('GanttDependenciesChecker', [function() {\n /**\n * Creates a new DependenciesChecker object.\n *\n * @constructor\n */\n var GanttDependenciesChecker = function(manager) {\n function handleTaskConflict(conflictsList, task) {\n if (!(task.model.id in conflictsList) && task.$element) {\n task.$element.addClass('gantt-task-conflict');\n conflictsList[task.model.id] = task;\n }\n }\n\n function handleTaskNonConflict(conflictsList, allTasks) {\n for (var i = 0, l = allTasks.length; i < l; i++) {\n var task = allTasks[i];\n if (!(task.model.id in conflictsList) && task.$element) {\n task.$element.removeClass('gantt-task-conflict');\n }\n }\n }\n\n /**\n * Refresh the conflict status of given tasks.\n *\n * @param tasks\n */\n this.refresh = function(tasks) {\n var allTasks = tasks.slice(0);\n var conflictsList = [];\n\n for (var i = 0; i < tasks.length; i++) {\n var taskDependencies = manager.getTaskDependencies(tasks[i]);\n\n for (var j = 0; j < taskDependencies.length; j++) {\n var dependency = taskDependencies[j];\n\n var fromTask = dependency.getFromTask();\n var toTask = dependency.getToTask();\n\n if (!(fromTask in allTasks)) {\n allTasks.push(fromTask);\n }\n\n if (!(toTask in allTasks)) {\n allTasks.push(toTask);\n }\n\n if (fromTask.model.to > toTask.model.from) {\n handleTaskConflict(conflictsList, fromTask);\n handleTaskConflict(conflictsList, toTask);\n }\n }\n }\n\n handleTaskNonConflict(conflictsList, allTasks);\n };\n\n this.removeConflictClass = function(task) {\n task.$element.removeClass('gantt-task-conflict');\n };\n\n /**\n * Remove the conflict status of given tasks.\n *\n * @param tasks\n */\n this.clear = function(tasks) {\n var allTasks = tasks.slice(0);\n handleTaskNonConflict([], allTasks);\n };\n\n };\n return GanttDependenciesChecker;\n }]);\n}());\n","(function() {\n 'use strict';\n\n angular.module('gantt.dependencies').factory('GanttDependenciesEvents', [function() {\n /**\n * Creates a new DependenciesEvents object.\n *\n * @param manager DependenciesManager object\n * @constructor\n */\n var DependenciesEvents = function(manager) {\n var self = this;\n\n this.manager = manager;\n\n // Deny the start of a drag when in readonly\n var denyDragWhenReadOnly = function () {\n return !self.manager.pluginScope.readOnly;\n };\n\n this.manager.plumb.bind('beforeDrag', denyDragWhenReadOnly);\n this.manager.plumb.bind('beforeStartDetach', denyDragWhenReadOnly);\n\n // Deny drop on the same task.\n var denyDropOnSameTask = function(params) {\n return params.sourceId !== params.targetId;\n };\n\n this.manager.plumb.bind('beforeDrop', denyDropOnSameTask);\n\n\n // Notify the manager that a connection is being created.\n this.manager.plumb.bind('connectionDrag', function(connection) {\n self.manager.setDraggingConnection(connection);\n });\n\n this.manager.plumb.bind('connectionDragStop', function() {\n self.manager.setDraggingConnection(undefined);\n });\n\n this.manager.plumb.bind('beforeDrop', function() {\n self.manager.setDraggingConnection(undefined);\n return true;\n });\n\n var createConnection = function(info, mouseEvent) {\n if (mouseEvent) {\n var oldDependency;\n if (info.connection.$dependency) {\n oldDependency = info.connection.$dependency;\n }\n\n var sourceEndpoint = info.sourceEndpoint;\n var targetEndpoint = info.targetEndpoint;\n\n var sourceModel = sourceEndpoint.$task.model;\n\n var dependenciesModel = sourceModel.dependencies;\n if (dependenciesModel === undefined) {\n dependenciesModel = [];\n sourceModel.dependencies = dependenciesModel;\n }\n\n var connectionModel = {to: targetEndpoint.$task.model.id};\n dependenciesModel.push(connectionModel);\n\n if (oldDependency) {\n oldDependency.removeFromTaskModel();\n self.manager.removeDependency(oldDependency, true); // Connection will be disconnected later by jsPlumb.\n }\n\n var dependency = self.manager.addDependency(sourceEndpoint.$task, connectionModel);\n info.connection.$dependency = dependency;\n dependency.connection = info.connection;\n dependency.connection.setParameter('from', sourceEndpoint.$task);\n dependency.connection.setParameter('to', targetEndpoint.$task);\n dependency.connection.canvas.setAttribute('data-fromId', sourceEndpoint.$task.model.id);\n dependency.connection.canvas.setAttribute('data-toId', targetEndpoint.$task.model.id);\n\n self.manager.api.dependencies.raise.add(dependency);\n\n }\n };\n\n var updateConnection = function(info, mouseEvent) {\n if (mouseEvent) {\n var oldDependency;\n if (info.connection.$dependency) {\n oldDependency = info.connection.$dependency;\n }\n\n var sourceEndpoint = info.newSourceEndpoint;\n var targetEndpoint = info.newTargetEndpoint;\n\n var sourceModel = sourceEndpoint.$task.model;\n\n var dependenciesModel = sourceModel.dependencies;\n if (dependenciesModel === undefined) {\n dependenciesModel = [];\n sourceModel.dependencies = dependenciesModel;\n }\n\n var connectionModel = {to: targetEndpoint.$task.model.id};\n dependenciesModel.push(connectionModel);\n\n if (oldDependency) {\n oldDependency.removeFromTaskModel();\n self.manager.removeDependency(oldDependency, true); // Connection will be disconnected later by jsPlumb.\n }\n\n var dependency = self.manager.addDependency(sourceEndpoint.$task, connectionModel);\n info.connection.$dependency = dependency;\n dependency.connection = info.connection;\n dependency.connection.setParameter('from', sourceEndpoint.$task);\n dependency.connection.setParameter('to', targetEndpoint.$task);\n dependency.connection.canvas.setAttribute('data-fromId', sourceEndpoint.$task.model.id);\n dependency.connection.canvas.setAttribute('data-toId', targetEndpoint.$task.model.id);\n\n self.manager.api.dependencies.raise.change(dependency, oldDependency);\n }\n };\n\n var deleteConnection = function(info, mouseEvent) {\n if (mouseEvent) {\n var dependency = info.connection.$dependency;\n\n dependency.removeFromTaskModel();\n self.manager.removeDependency(dependency, true); // Connection will be disconnected later by jsPlumb.\n self.manager.api.dependencies.raise.remove(dependency);\n }\n };\n\n this.manager.plumb.bind('connectionMoved', updateConnection);\n this.manager.plumb.bind('connection', createConnection);\n this.manager.plumb.bind('connectionDetached', deleteConnection);\n\n };\n return DependenciesEvents;\n }]);\n}());\n","/* globals jsPlumb */\n(function() {\n 'use strict';\n\n angular.module('gantt.dependencies').factory('GanttDependenciesManager', ['GanttDependency', 'GanttDependenciesEvents', 'GanttDependencyTaskMouseHandler', function(Dependency, DependenciesEvents, TaskMouseHandler) {\n var DependenciesManager = function(gantt, pluginScope, api) {\n var self = this;\n\n this.gantt = gantt;\n this.pluginScope = pluginScope;\n this.api = api;\n\n this.api.registerEvent('dependencies', 'add');\n this.api.registerEvent('dependencies', 'change');\n this.api.registerEvent('dependencies', 'remove');\n\n this.plumb = jsPlumb.getInstance();\n this.plumb.importDefaults(this.pluginScope.jsPlumbDefaults);\n\n this.dependenciesFrom = {};\n this.dependenciesTo = {};\n\n this.tasksList = [];\n this.tasks = {};\n\n this.events = new DependenciesEvents(this);\n\n this.pluginScope.$watch('enabled', function(newValue, oldValue) {\n if (newValue !== oldValue) {\n self.refresh();\n }\n });\n\n this.pluginScope.$watch('readOnly', function(newValue, oldValue) {\n if (newValue !== oldValue) {\n self.setTasks(self.tasksList);\n self.refresh();\n }\n });\n\n this.pluginScope.$watch('jsPlumbDefaults', function(newValue, oldValue) {\n if (newValue !== oldValue) {\n self.plumb.importDefaults(newValue);\n self.refresh();\n }\n }, true);\n\n /**\n * Add all dependencies defined from a task. Dependencies will be added only if plugin is enabled.\n *\n * @param task\n * @param allowPartial if true, dependency linking to a missing task will still be added.\n */\n this.addDependenciesFromTask = function(task, allowPartial) {\n if (this.pluginScope.enabled) {\n var taskDependencies = task.model.dependencies;\n\n if (taskDependencies !== undefined && taskDependencies) {\n if (!angular.isArray(taskDependencies)) {\n taskDependencies = [taskDependencies];\n task.model.dependencies = taskDependencies;\n }\n\n for (var i = 0, l = taskDependencies.length; i < l; i++) {\n var dependency = self.addDependency(task, taskDependencies[i], allowPartial);\n if (dependency) {\n dependency.connect();\n }\n }\n }\n }\n };\n\n /**\n * Remove all dependencies defined for a task.\n *\n * @param task\n * @param keepConnection if true, dependency will not be disconnected.\n */\n this.removeDependenciesFromTask = function(task, keepConnection) {\n var dependencies = this.getTaskDependencies(task);\n\n if (dependencies) {\n for (var i = 0; i < dependencies.length; i++) {\n if (!keepConnection) {\n dependencies[i].disconnect();\n }\n self.removeDependency(dependencies[i]);\n }\n }\n };\n\n /**\n * Add definition of a dependency.\n *\n * @param task Task defining the dependency.\n * @param model Model object for the dependency.\n * @param allowPartial if true, dependency linking to a missing task will still be added.\n */\n this.addDependency = function(task, model, allowPartial) {\n var dependency = new Dependency(this, task, model);\n var fromTaskId = dependency.getFromTaskId();\n var fromTask = dependency.getFromTask();\n var toTaskId = dependency.getToTaskId();\n var toTask = dependency.getToTask();\n var manager = dependency.manager;\n\n if (!(fromTaskId in this.dependenciesFrom)) {\n this.dependenciesFrom[fromTaskId] = [];\n }\n if (!(toTaskId in this.dependenciesTo)) {\n this.dependenciesTo[toTaskId] = [];\n }\n\n if (!allowPartial && (!toTask || !fromTask)) {\n // Partial dependency is not allowed, remove it.\n this.removeDependency(dependency, true);\n\n manager.api.dependencies.raise.remove(dependency);\n\n return null;\n } else {\n if (fromTaskId) {\n this.dependenciesFrom[fromTaskId].push(dependency);\n }\n\n if (toTaskId) {\n this.dependenciesTo[toTaskId].push(dependency);\n }\n }\n\n\n return dependency;\n };\n\n /**\n * Remove definition of a dependency\n *\n * @param dependency Dependency object\n * @param keepConnection if true, dependency will not be disconnected.\n */\n this.removeDependency = function(dependency, keepConnection) {\n var fromDependencies = this.dependenciesFrom[dependency.getFromTaskId()];\n var fromRemove = [];\n var i;\n\n if (fromDependencies) {\n for (i = 0; i < fromDependencies.length; i++) {\n if (dependency === fromDependencies[i]) {\n fromRemove.push(dependency);\n }\n }\n }\n\n var toDependencies = this.dependenciesTo[dependency.getToTaskId()];\n var toRemove = [];\n\n if (toDependencies) {\n for (i = 0; i < toDependencies.length; i++) {\n if (dependency === toDependencies[i]) {\n toRemove.push(dependency);\n }\n }\n }\n\n for (i = 0; i < fromRemove.length; i++) {\n if (!keepConnection) {\n fromRemove[i].disconnect();\n }\n fromDependencies.splice(fromDependencies.indexOf(dependency), 1);\n }\n\n for (i = 0; i < toRemove.length; i++) {\n if (!keepConnection) {\n toRemove[i].disconnect();\n }\n toDependencies.splice(toDependencies.indexOf(dependency), 1);\n }\n\n if (this.dependenciesFrom[dependency.getFromTaskId()] &&\n this.dependenciesFrom[dependency.getFromTaskId()].length === 0) {\n delete this.dependenciesFrom[dependency.getFromTaskId()];\n }\n\n if (this.dependenciesTo[dependency.getToTaskId()] &&\n this.dependenciesTo[dependency.getToTaskId()].length === 0) {\n delete this.dependenciesTo[dependency.getToTaskId()];\n }\n };\n\n this.getTaskDependencies = function(task) {\n var dependencies = [];\n\n var fromDependencies = self.dependenciesFrom[task.model.id];\n if (fromDependencies) {\n dependencies = dependencies.concat(fromDependencies);\n }\n\n var toDependencies = self.dependenciesTo[task.model.id];\n if (toDependencies) {\n dependencies = dependencies.concat(toDependencies);\n }\n\n return dependencies;\n };\n\n this.setDraggingConnection = function(connection) {\n if (connection) {\n self.draggingConnection = connection;\n angular.forEach(self.tasks, function(task) {\n task.dependencies.mouseHandler.release();\n });\n } else {\n self.draggingConnection = undefined;\n angular.forEach(self.tasks, function(task) {\n task.dependencies.mouseHandler.install();\n });\n }\n };\n\n var isTaskEnabled = function(task) {\n var rowDependencies = task.row.model.dependencies;\n if (rowDependencies !== undefined) {\n return rowDependencies !== false;\n }\n var taskDependencies = task.model.dependencies;\n if (taskDependencies !== undefined) {\n return taskDependencies !== false;\n }\n return true;\n };\n\n var addTaskEndpoints = function(task) {\n if (!task.dependencies) {\n task.dependencies = {};\n }\n\n task.dependencies.endpoints = [];\n\n if (self.pluginScope.endpoints && task.$element) {\n for (var i = 0; i < self.pluginScope.endpoints.length; i++) {\n var endpointObject = self.plumb.addEndpoint(task.$element, self.pluginScope.endpoints[i]);\n endpointObject.setVisible(false, true, true); // hide endpoint\n endpointObject.$task = task;\n task.dependencies.endpoints.push(endpointObject);\n }\n }\n\n };\n\n var removeTaskEndpoint = function(task) {\n if (task.dependencies.endpoints) {\n for (var i = 0; i < task.dependencies.endpoints.length; i++) {\n var endpointObject = task.dependencies.endpoints[i];\n self.plumb.deleteEndpoint(endpointObject);\n endpointObject.$task = undefined;\n }\n\n task.dependencies.endpoints = undefined;\n }\n };\n\n var addTaskMouseHandler = function(task) {\n if (!task.dependencies) {\n task.dependencies = {};\n }\n\n if (!self.pluginScope.readOnly) {\n task.dependencies.mouseHandler = new TaskMouseHandler(self, task);\n task.dependencies.mouseHandler.install();\n }\n };\n\n var removeTaskMouseHandler = function(task) {\n if (task.dependencies.mouseHandler) {\n task.dependencies.mouseHandler.release();\n task.dependencies.mouseHandler = undefined;\n }\n };\n\n /**\n * Set tasks objects that can be used to display dependencies.\n *\n * @param tasks\n */\n this.setTasks = function(tasks) {\n angular.forEach(self.tasks, function(task) {\n removeTaskMouseHandler(task);\n removeTaskEndpoint(task);\n });\n\n var newTasks = {};\n var tasksList = [];\n for (var i = 0; i < tasks.length; i++) {\n var task = tasks[i];\n if (isTaskEnabled(task)) {\n newTasks[task.model.id] = task;\n tasksList.push(task);\n addTaskEndpoints(task);\n addTaskMouseHandler(task);\n }\n }\n self.tasks = newTasks;\n self.tasksList = tasks;\n };\n\n var disconnectTaskDependencies = function(task) {\n var dependencies = self.getTaskDependencies(task);\n if (dependencies) {\n for (var i = 0; i < dependencies.length; i++) {\n dependencies[i].disconnect();\n }\n }\n return dependencies;\n };\n\n var connectTaskDependencies = function(task) {\n var dependencies = self.getTaskDependencies(task);\n if (dependencies) {\n for (var i = 0; i < dependencies.length; i++) {\n dependencies[i].connect();\n }\n }\n return dependencies;\n };\n\n /**\n * Set task object in replacement of an existing with the same id.\n *\n * @param task\n */\n this.setTask = function(task) {\n self.plumb.setSuspendDrawing(true);\n try {\n var oldTask = self.tasks[task.model.id];\n if (oldTask !== undefined) {\n disconnectTaskDependencies(oldTask);\n removeTaskMouseHandler(oldTask);\n removeTaskEndpoint(oldTask);\n }\n if (isTaskEnabled(task)) {\n self.tasks[task.model.id] = task;\n addTaskEndpoints(task);\n addTaskMouseHandler(task);\n connectTaskDependencies(task);\n }\n } finally {\n self.plumb.setSuspendDrawing(false, true);\n }\n };\n\n /**\n * Retrieve the task from it's id.\n *\n * @param taskId id of the task element to retrieve.\n * @returns {*}\n */\n this.getTask = function(taskId) {\n return self.tasks[taskId];\n };\n\n var getSourceEndpoints = function(task) {\n return task.dependencies.endpoints.filter(function(endpoint) {\n return endpoint.isSource;\n });\n };\n\n var getTargetEndpoints = function(task) {\n return task.dependencies.endpoints.filter(function(endpoint) {\n return endpoint.isTarget;\n });\n };\n\n /**\n * Connects two tasks together using source endpoint from fromTask and target endpoint from toTask.\n *\n * @param fromTask\n * @param toTask\n * @param model\n * @returns connection object\n */\n this.connect = function(fromTask, toTask, model) {\n var sourceEndpoints = getSourceEndpoints(fromTask);\n var targetEndpoints = getTargetEndpoints(toTask);\n if (sourceEndpoints && targetEndpoints) {\n var sourceEndpoint;\n var targetEndpoint;\n\n if (model.connectParameters && model.connectParameters.sourceEndpointIndex) {\n sourceEndpoint = sourceEndpoints[model.connectParameters.sourceEndpointIndex];\n } else {\n sourceEndpoint = sourceEndpoints[0];\n }\n\n if (model.connectParameters && model.connectParameters.targetEndpointIndex) {\n targetEndpoint = targetEndpoints[model.connectParameters.targetEndpointIndex];\n } else {\n targetEndpoint = targetEndpoints[0];\n }\n\n var connection = self.plumb.connect({\n source: sourceEndpoint,\n target: targetEndpoint,\n parameters: {\n from: fromTask,\n to: toTask\n }\n //cssClass: 'gantt-endpoint start-endpoint target-endpoint connect-' + fromTask.model.id + '-' + toTask.model.id,\n }, model.connectParameters);\n connection.canvas.setAttribute('data-fromId', fromTask.model.id);\n connection.canvas.setAttribute('data-toId', toTask.model.id);\n return connection;\n }\n };\n\n /**\n * Get all defined dependencies.\n *\n * @returns {Array}\n */\n this.getDependencies = function() {\n var allDependencies = [];\n\n angular.forEach(this.dependenciesFrom, function(dependencies) {\n for (var i = 0; i < dependencies.length; i++) {\n if (!(dependencies[i] in allDependencies)) {\n allDependencies.push(dependencies[i]);\n }\n }\n });\n\n return allDependencies;\n };\n\n /**\n * Refresh jsplumb status based on tasks dependencies models.\n */\n this.refresh = function(tasks) {\n self.plumb.setSuspendDrawing(true);\n\n try {\n var tasksDependencies;\n var i;\n if (tasks && !angular.isArray(tasks)) {\n tasks = [tasks];\n }\n\n if (tasks === undefined) {\n tasks = this.tasks;\n tasksDependencies = this.getDependencies();\n } else {\n tasksDependencies = [];\n angular.forEach(tasks, function(task) {\n var taskDependencies = self.getTaskDependencies(task);\n angular.forEach(taskDependencies, function(taskDependency) {\n if (!(taskDependency in tasksDependencies)) {\n tasksDependencies.push(taskDependency);\n }\n });\n });\n }\n\n for (i = 0; i < tasksDependencies.length; i++) {\n self.removeDependency(tasksDependencies[i]);\n }\n\n angular.forEach(tasks, function(task) {\n self.addDependenciesFromTask(task);\n });\n } finally {\n self.plumb.setSuspendDrawing(false, true);\n }\n };\n\n this.api.registerMethod('dependencies', 'refresh', this.refresh, this);\n };\n return DependenciesManager;\n }]);\n}());\n","(function() {\n 'use strict';\n\n angular.module('gantt.dependencies').factory('GanttDependency', ['ganttUtils', 'ganttDom', function(utils, dom) {\n /**\n * Constructor of Dependency object.\n * \n * @param manager Dependency manager used by this dependency\n * @param task Task declaring the dependency\n * @param model model of the dependency\n *\n * @constructor\n *\n * @see https://jsplumbtoolkit.com/community/apidocs/classes/jsPlumb.html#method_connect\n */\n var Dependency = function(manager, task, model) {\n var self = this;\n\n this.manager = manager;\n this.task = task;\n this.model = model;\n this.connection = undefined;\n this.fallbackEndpoints = [];\n\n /**\n * Check if this dependency is connected.\n *\n * @returns {boolean}\n */\n this.isConnected = function() {\n if (this.connection) {\n return true;\n }\n return false;\n };\n\n /**\n * Disconnect this dependency.\n */\n this.disconnect = function() {\n if (this.connection) {\n if (this.connection.endpoints) {\n this.manager.plumb.detach(this.connection);\n }\n this.connection.$dependency = undefined;\n this.connection = undefined;\n }\n\n this.deleteFallbackEndpoints();\n };\n\n this.deleteFallbackEndpoints = function() {\n if (this.fallbackEndpoints) {\n for (var i=0; i= 0) {\n this.task.model.dependencies.splice(modelIndex, 1);\n }\n return modelIndex;\n };\n\n var isTaskVisible = function(task) {\n if (task === undefined || task.$element === undefined) {\n return false;\n }\n var element = task.$element[0];\n return dom.isElementVisible(element);\n };\n\n /**\n * Connect this dependency if both elements are available.\n *\n * @returns {boolean}\n */\n this.connect = function() {\n var fromTask = this.getFromTask();\n var toTask = this.getToTask();\n\n if (!isTaskVisible(fromTask)) {\n fromTask = undefined;\n }\n\n if (!isTaskVisible(toTask)) {\n toTask = undefined;\n }\n\n if (fromTask && toTask) {\n var connection = this.manager.connect(fromTask, toTask, this.model);\n if (connection) {\n connection.$dependency = this;\n this.connection = connection;\n return true;\n }\n }\n\n this.deleteFallbackEndpoints();\n if (fromTask !== undefined) {\n var toFallbackEndpoint = this.manager.pluginScope.fallbackEndpoints[1];\n this.fallbackEndpoints.push(this.manager.plumb.addEndpoint(fromTask.$element, toFallbackEndpoint));\n }\n if (toTask !== undefined) {\n var fromFallbackEndpoint = this.manager.pluginScope.fallbackEndpoints[0];\n this.fallbackEndpoints.push(this.manager.plumb.addEndpoint(toTask.$element, fromFallbackEndpoint));\n }\n return false;\n };\n };\n return Dependency;\n }]);\n}());\n","(function() {\n 'use strict';\n\n angular.module('gantt.dependencies').factory('GanttDependencyTaskMouseHandler', ['$timeout', function($timeout) {\n var TaskMouseHandler = function(manager, task) {\n var self = this;\n\n this.manager = manager;\n this.task = task;\n this.installed = false;\n this.elementHandlers = [];\n\n this.display = true;\n this.hideEndpointsPromise = undefined;\n\n /**\n * Handler for a single DOM element.\n *\n * @param element\n * @constructor\n */\n var ElementHandler = function(element) {\n this.element = element;\n\n this.mouseExitHandler = function() {\n $timeout.cancel(self.hideEndpointsPromise);\n self.hideEndpointsPromise = $timeout(self.hideEndpoints, 1000, false);\n };\n\n this.mouseEnterHandler = function() {\n $timeout.cancel(self.hideEndpointsPromise);\n self.displayEndpoints();\n };\n\n this.install = function() {\n this.element.bind('mouseenter', this.mouseEnterHandler);\n this.element.bind('mouseleave', this.mouseExitHandler);\n };\n\n this.release = function() {\n this.element.unbind('mouseenter', this.mouseEnterHandler);\n this.element.unbind('mouseleave', this.mouseExitHandler);\n $timeout.cancel(self.hideEndpointsPromise);\n };\n\n };\n\n\n\n /**\n * Install mouse handler for this task, and hide all endpoints.\n */\n this.install = function() {\n if (!self.installed) {\n self.hideEndpoints();\n\n if (self.task.getContentElement()) {\n self.elementHandlers.push(new ElementHandler(self.task.getContentElement()));\n angular.forEach(self.task.dependencies.endpoints, function(endpoint) {\n self.elementHandlers.push(new ElementHandler(angular.element(endpoint.canvas)));\n });\n\n angular.forEach(self.elementHandlers, function(elementHandler) {\n elementHandler.install();\n });\n\n self.installed = true;\n }\n }\n };\n\n /**\n * Release mouse handler for this task, and display all endpoints.\n */\n this.release = function() {\n if (self.installed) {\n angular.forEach(self.elementHandlers, function(elementHandler) {\n elementHandler.release();\n });\n\n self.elementHandlers = [];\n\n self.displayEndpoints();\n self.installed = false;\n }\n };\n\n /**\n * Display all endpoints for this task.\n */\n this.displayEndpoints = function() {\n self.display = true;\n angular.forEach(self.task.dependencies.endpoints, function(endpoint) {\n endpoint.setVisible(true, true, true);\n });\n };\n\n /**\n * Hide all endpoints for this task.\n */\n this.hideEndpoints = function() {\n angular.forEach(self.task.dependencies.endpoints, function(endpoint) {\n endpoint.setVisible(false, true, true);\n });\n self.display = false;\n };\n };\n return TaskMouseHandler;\n }]);\n}());\n","angular.module('gantt.dependencies.templates', []).run(['$templateCache', function ($templateCache) {\n\n}]);\n"]}