diff --git a/dist/vis.map b/dist/vis.map index 49475331..6ab22fca 100644 --- a/dist/vis.map +++ b/dist/vis.map @@ -1 +1 @@ -{"version":3,"file":"vis.map","sources":["./dist/vis.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","util","DOMutil","DataSet","DataView","Queue","Graph3d","graph3d","Camera","Filter","Point2d","Point3d","Slider","StepNumber","Timeline","Graph2d","timeline","DateUtil","DataStep","Range","stack","TimeStep","components","items","Item","BackgroundItem","BoxItem","PointItem","RangeItem","Component","CurrentTime","CustomTime","DataAxis","GraphGroup","Group","BackgroundGroup","ItemSet","Legend","LineGraph","TimeAxis","Network","network","Edge","Groups","Images","Node","Popup","dotparser","gephiParser","Graph","Error","moment","hammer","isNumber","object","Number","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","isDataTable","google","visualization","DataTable","randomUUID","S4","Math","floor","random","toString","extend","a","i","len","arguments","length","other","prop","hasOwnProperty","selectiveExtend","props","Array","isArray","selectiveDeepExtend","b","TypeError","constructor","Object","undefined","deepExtend","selectiveNotDeepExtend","indexOf","equalArray","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","value","getAbsoluteLeft","elem","getBoundingClientRect","left","window","pageXOffset","getAbsoluteTop","top","pageYOffset","addClassName","className","classes","split","push","join","removeClassName","index","splice","forEach","callback","toArray","array","updateProperty","key","addEventListener","element","action","listener","useCapture","navigator","userAgent","attachEvent","removeEventListener","detachEvent","preventDefault","event","returnValue","getTarget","target","srcElement","nodeType","parentNode","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","GiveDec","Hex","Value","eval","GiveHex","Dec","parseColor","color","isValidRGB","rgb","substr","RGBToHex","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","min","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","hexToRGB","hex","replace","toUpperCase","substring","d","e","f","r","g","red","green","blue","RGBToHSV","minRGB","maxRGB","max","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","map","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","q","t","isOk","test","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","mergeOptions","mergeTarget","options","enabled","binarySearchCustom","orderedItems","searchFunction","field","field2","maxIterations","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easeInOutQuad","start","end","duration","change","easingFunctions","linear","easeInQuad","easeOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","prepareElements","JSONcontainer","elementType","redundant","used","cleanupElements","removeChild","getSVGElement","svgContainer","shift","document","createElementNS","appendChild","getDOMElement","DOMContainer","insertBefore","createElement","drawPoint","x","y","group","point","drawPoints","setAttributeNS","size","drawBar","width","height","rect","data","_options","_data","_fieldId","fieldId","_type","_subscribers","add","setOptions","prototype","queue","_queue","destroy","on","subscribers","subscribe","off","filter","unsubscribe","_trigger","params","senderId","concat","subscriber","addedIds","me","_addItem","columns","_getColumnNames","row","rows","getNumberOfRows","col","cols","getValue","update","updatedIds","updatedData","addOrUpdate","_updateItem","get","ids","firstType","returnType","allowedValues","itemId","_getItem","order","_sort","_filterFields","_appendRow","result","getIds","getDataSet","mappedItems","filteredItem","name","sort","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","values","fieldType","count","exists","types","raw","converted","JSON","stringify","dataTable","getNumberOfColumns","getColumnId","getColumnLabel","addRow","setValue","_ids","_onEvent","apply","setData","viewOptions","getArguments","defaultFilter","dataSet","added","updated","removed","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","args","fn","context","entry","clearTimeout","setTimeout","container","SyntaxError","containerElement","margin","defaultXCenter","defaultYCenter","xLabel","yLabel","zLabel","passValueFn","xValueLabel","yValueLabel","zValueLabel","filterLabel","legendLabel","STYLE","DOT","showPerspective","showGrid","keepAspectRatio","showShadow","showGrayBottom","showTooltip","verticalRatio","animationInterval","animationPreload","camera","eye","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","colorAxis","colorGrid","colorDot","colorDotBorder","getMouseX","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","scale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","fill","stroke","strokeWidth","borderColor","borderWidth","borderStyle","BAR","BARCOLOR","BARSIZE","DOTLINE","DOTCOLOR","DOTSIZE","GRID","LINE","SURFACE","_getStyleNumber","styleName","_determineColumnIndexes","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","redraw","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","obj","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","bottom","pointRight","pointTop","pointCross","hasChildNodes","firstChild","position","overflow","noCanvas","fontWeight","padding","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","charAt","parseFloat","setCameraPosition","pos","horizontal","vertical","setArmRotation","distance","setArmLength","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","tooltip","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","ctx","getContext","clearRect","widthMin","widthMax","dotSize","right","lineWidth","font","ymin","ymax","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","gridLineLen","step","getCurrent","next","textAlign","textBaseline","fillText","label","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","from","to","prettyStep","text","xText","yText","zText","offset","xOffset","yOffset","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","abs","parseInt","cross","topSideVisible","zAvg","transBottom","dist","sortDepth","aDiff","subtract","bDiff","crossproduct","crossProduct","radius","arc","PI","j","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","diff","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","round","parameters","emit","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","delta","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","sign","as","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","content","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","dataView","progress","sub","sum","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","pow","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","orientation","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","snap","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis","currentTime","customTime","itemSet","itemsData","groupsData","setGroups","setItems","Core","newDataSet","initialLoad","dataRange","_getDataRange","setWindow","animate","fit","setSelection","focus","getSelection","itemData","getItemRange","dataset","minItem","maxStartItem","maxEndItem","linegraph","getLegend","groupId","isGroupVisible","visibility","convertHiddenOptions","repeat","dateItem","updateHiddenDates","centerContainer","totalRange","pixelTime","startDate","endDate","_d","runUntil","clone","day","dayOfYear","year","dayOffset","date","month","console","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","startToFront","endToFront","_applyRange","safeDates","printDates","dates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","newValue","switchedYear","switchedMonth","switchedDay","time","conversion","getHiddenDurationBetween","correctTimeForHidden","hiddenDuration","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","getHiddenDurationBefore","timeOffset","requiredDuration","previousPoint","snapAwayFromHidden","direction","correctionEnabled","minimumStep","containerHeight","customRange","alignZeros","autoScale","stepIndex","marginStart","marginEnd","deadSpace","majorSteps","minorSteps","setMinimumStep","setFirst","safeSize","minimumStepValue","orderOfMagnitude","minorStepIdx","magnitudefactor","solutionFound","stepSize","niceStart","niceEnd","roundToMinor","marginRange","rounded","hasNext","previous","decimals","slice","exp","cnt","isMajor","now","hours","minutes","seconds","milliseconds","deltaDifference","scaleOffset","moveable","zoomable","zoomMin","zoomMax","touch","animateTimer","_onDragStart","_onDrag","_onDragEnd","_onHold","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","pageX","pageY","hammerUtil","_cancelAnimation","initStart","initEnd","initTime","anyChanged","dragging","done","changed","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","gesture","deltaX","deltaY","diffRange","safeStart","safeEnd","fakeGesture","pointer","pointerDate","_pointerToDate","zoom","touches","centerDate","hiddenDurationBefore","hiddenDurationAfter","move","EPSILON","orderByStart","orderByEnd","aTime","bTime","force","iMax","axis","collidingItem","jj","collision","nostack","subgroups","newTop","subgroup","format","FORMAT","minorLabels","millisecond","second","minute","hour","weekday","majorLabels","setFormat","defaultFormat","first","setFullYear","getFullYear","setMonth","setDate","setHours","setMinutes","setSeconds","setMilliseconds","getMilliseconds","getSeconds","getMinutes","getHours","getDate","getMonth","setScale","newScale","newStep","setAutoScale","enable","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","getLabelMinor","getLabelMajor","_isResized","resized","_previousWidth","_previousHeight","showCurrentTime","locales","locale","parent","backgroundVertical","title","currentTimeTimer","setCurrentTime","getCurrentTime","showCustomTime","eventParams","Hammer","drag","prevent_default","setCustomTime","getCustomTime","stopPropagation","svg","linegraphOptions","showMinorLabels","showMajorLabels","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","linegraphSVG","DOMelements","lines","labels","conversionFactor","minWidth","stepPixels","stepPixelsForced","zeroCrossing","lineOffset","master","svgElements","iconsRemoved","amountOfGroups","lineContainer","scrollTop","addGroup","graphOptions","updateGroup","removeGroup","hide","show","display","_redrawGroupIcons","iconHeight","iconOffset","drawIcon","_cleanupIcons","backgroundHorizontal","changeCalled","activeGroups","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineWidth","minorLineHeight","majorLineWidth","majorLineHeight","_redrawLabels","_redrawTitle","amountOfSteps","stepDifference","zeroStepDifference","valueAtZero","marginStartPos","maxLabelSize","_redrawLabel","_redrawLine","titleWidth","titleCharHeight","convertValue","invertedValue","convertedValue","characterHeight","largestWidth","majorCharWidth","minorCharWidth","textMinor","createTextNode","measureCharMinor","textMajor","measureCharMajor","textTitle","measureCharTitle","titleCharWidth","groupsUsingDefaultStyles","usingDefaultStyle","zeroPosition","Line","Bar","Points","setZeroPosition","catmullRom","parametrization","alpha","SVGcontainer","path","fillPath","fillHeight","outline","shaded","barWidth","bar1Height","bar2Height","icon","yAxisOrientation","getYRange","groupData","draw","framework","subgroupIndex","subgroupOrderer","subgroupOrder","visibleItems","byStart","byEnd","checkRangedItems","inner","foreground","marker","Element","getLabelWidth","restack","_updateVisibleItems","markerHeight","lastMarkerHeight","dirty","displayed","_calculateHeight","offsetTop","offsetLeft","ii","repositionY","resetSubgroups","labelSet","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","removeFromDataSet","removeItem","startArray","endArray","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","repositionX","initialPos","breakCondition","isVisible","align","groupOrder","selectable","editable","updateTime","onAdd","onUpdate","onMove","onRemove","onMoving","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","selection","stackDirty","touchParams","UNGROUPED","BACKGROUND","box","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","addCallback","Function","markDirty","unselect","select","getVisibleItems","rawVisibleItems","_deselect","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","lastWidth","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","_getType","_removeItem","groupOptions","oldGroupId","oldGroup","_constructByEndArray","itemFromTarget","selected","dragLeftItem","dragRightItem","initialX","itemProps","newProps","initial","groupFromTarget","_updateItemProps","_moveToGroup","changes","ctrlKey","srcEvent","shiftKey","oldSelection","newSelection","xAbs","newItem","_getItemRange","_item","itemSetFromTarget","side","iconSize","iconSpacing","textArea","scrollableHeight","drawLegendIcons","getComputedStyle","paddingTop","defaultGroup","sampling","graphHeight","barChart","handleOverlap","dataAxis","legend","abortedGraphUpdate","autoSizeSVG","lastStart","COUNTER","BarGraphFunctions","yAxisLeft","yAxisRight","legendLeft","legendRight","_updateAllGroupData","_updateGroup","groupsContent","ungroupedCounter","forceGraphUpdate","_updateGraph","rangePerPixelInv","preprocessedGroupData","processedGroupData","groupRanges","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","MAX_CYCLES","_convertYcoordinates","dataContainer","guess","increment","amountOfPoints","xDistance","pointsPerPixel","ceil","sampledData","barCombinedDataLeft","barCombinedDataRight","getStackedBarYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","axisUsed","datapoints","xValue","yValue","extractedData","svgHeight","majorLines","majorTexts","minorLines","minorTexts","lineTop","lang","parentChanged","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","xFirstMajorLabel","cur","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","leftTime","leftText","widthText","arr","pop","childNodes","nodeValue","_repaintDeleteButton","anchor","deleteButton","_updateContents","template","_updateTitle","removeAttribute","_updateDataAttributes","dataAttributes","attributes","setAttribute","_updateStyle","emptyContent","baseClassName","onTop","itemSubgroup","itemSetHeight","marginLeft","maxWidth","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","dragLeft","dragRight","_initializeMixinLoaders","renderRefreshRate","renderTimestep","renderTime","maxPhysicsTicksPerRender","physicsDiscreteStepsize","initializing","triggerFunctions","edit","editEdge","connect","del","nodes","mass","radiusMin","radiusMax","shape","image","fontColor","fontSize","fontFace","fontFill","level","highlightColor","borderWidthSelected","edges","widthSelectionMultiplier","hoverWidth","arrowScaleFactor","dash","gap","altLength","inheritColor","configurePhysics","physics","barnesHut","theta","gravitationalConstant","centralGravity","springLength","springConstant","damping","repulsion","nodeDistance","hierarchicalRepulsion","clustering","initialMaxNodes","clusterThreshold","reduceToNodes","chainThreshold","clusterEdgeThreshold","sectorThreshold","screenSizeThreshold","fontSizeMultiplier","maxFontSize","forceAmplification","distanceAmplification","edgeGrowth","nodeScaling","maxNodeSizeIncrements","activeAreaBoxSize","clusterLevelDifference","navigation","keyboard","speed","dataManipulation","initiallyVisible","hierarchicalLayout","levelSeparation","nodeSpacing","layout","freezeForStabilization","smoothCurves","dynamic","roundness","maxVelocity","minVelocity","stabilize","stabilizationIterations","dragNetwork","dragNodes","hideEdgesOnDrag","hideNodesOnDrag","constants","pixelRatio","hoverObj","controlNodesActive","navigationHammers","existing","_new","animationSpeed","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","images","setOnloadCallback","_redraw","xIncrement","yIncrement","zoomIncrement","_loadPhysicsSystem","_loadSectorSystem","_loadClusterSystem","_loadSelectionSystem","_loadHierarchySystem","_setTranslation","freezeSimulation","cachedFunctions","startedStabilization","stabilized","draggingNodes","calculationNodes","calculationNodeIndices","nodeIndices","canvasTopLeft","canvasBottomRight","pointerPosition","areaCenter","previousScale","nodesData","edgesData","nodesListeners","_addNodes","_updateNodes","_removeNodes","edgesListeners","_addEdges","_updateEdges","_removeEdges","moving","timer","_setupHierarchicalLayout","zoomExtent","startWithClustering","keycharm","MixinLoader","Activator","_getScriptPath","scripts","getElementsByTagName","src","_getRange","node","minY","maxY","minX","maxX","nodeId","_findCenter","animationOptions","initialZoom","disableStart","zoomLevel","numberOfNodes","factor","yDistance","xZoomLevel","yZoomLevel","animation","_updateNodeIndexList","_clearNodeIndexList","idx","dotData","DOTToGraph","gephi","gephiData","parseGephi","_setNodes","_setEdges","_putDataInSector","_resetLevels","_stabilize","onEdit","onEditEdge","onConnect","onDelete","editMode","newColorObj","groupname","clickToUse","activator","_createKeyBinds","_loadNavigationControls","_loadManipulationSystem","_configureSmoothCurves","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","pinch","_onTap","_onDoubleTap","_onMouseMoveTitle","hammerFrame","_onRelease","reset","isActive","_moveUp","_yStopMoving","_moveDown","_moveLeft","_xStopMoving","_moveRight","_zoomIn","_stopZoom","_zoomOut","_createManipulatorBar","_deleteSelected","_getPointer","pinched","_getScale","_handleTouch","_handleDragStart","_getNodeAt","_getTranslation","isSelected","_selectObject","nodeIds","objectId","selectionObj","xFixed","yFixed","_handleOnDrag","releaseNode","_XconvertDOMtoCanvas","_XconvertCanvasToDOM","_YconvertDOMtoCanvas","_YconvertCanvasToDOM","_handleDragEnd","_handleTap","_handleDoubleTap","_handleOnHold","_handleOnRelease","_zoom","scaleOld","preScaleDragPointer","DOMtoCanvas","scaleFrac","tx","ty","updateClustersDefault","postScaleDragPointer","canvasToDOM","popupObj","_checkHidePopup","checkShow","_checkShowPopup","popupTimer","edgeId","_getEdgeAt","_hoverObject","_blurObject","lastPopupNode","getTitle","isOverlappingWith","edge","connected","popup","setPosition","setText","emitEvent","oldWidth","oldHeight","oldNodesData","_updateSelection","angle","_updateCalculationNodes","_reconnectEdges","_updateValueRange","updateLabels","changedData","setProperties","properties","oldEdgesData","oldEdge","disconnect","showInternalIds","_createBezierNodes","via","sectors","dynamicEdges","setValueRange","w","save","translate","_doInAllSectors","restore","offsetX","offsetY","_drawNodes","alwaysShow","setScaleAndPos","inArea","sMax","_drawEdges","_drawControlNodes","_freezeDefinedNodes","_physicsTick","_restoreFrozenNodes","fixedData","_isMoving","vmin","isMoving","_discreteStepNodes","nodesPresent","discreteStepLimited","discreteStep","vminCorrected","mainMovingStatus","supportMovingStatus","_doInAllActiveSectors","mainMoving","_doInSupportSector","_animationStep","_handleNavigation","calculationTime","maxSteps","timeRequired","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","ua","toLowerCase","requiresTimeout","iterations","toggleFreeze","parentEdgeId","internalMultiplier","positionBezierNode","mixin","storePosition","storePositions","dataArray","allowedToMoveX","allowedToMoveY","getPositions","focusOnNode","nodePosition","lockedOnNode","easingFunction","animateView","locked","_transitionRedraw","viewCenter","distanceFromCenter","_classicRedraw","_lockedRedraw","active","getScale","getCenterCoordinates","networkConstants","fromId","toId","widthSelected","labelDimensions","yLine","dirtyLabel","fromBackup","toBackup","originalFromId","originalToId","widthFixed","lengthFixed","controlNodesEnabled","controlNodes","positions","connectedNode","_drawLine","_drawArrow","_drawArrowCenter","_drawDashLine","attachEdge","detachEdge","xFrom","yFrom","xTo","yTo","xObj","yObj","_getDistanceToEdge","_getColor","colorObj","_getLineWidth","_line","midpointX","midpointY","_pointOnLine","_label","resize","_circle","_pointOnCircle","networkScaleInv","_getViaCoordinates","xVia","yVia","quadraticCurveTo","lineCount","measureText","fillRect","mozDash","setLineDash","pattern","lineDashOffset","mozDashOffset","lineCap","dashedLine","percentage","atan2","arrow","edgeSegmentLength","fromBorderDist","distanceToBorder","fromBorderPoint","toBorderDist","toBorderPoint","x1","y1","x2","y2","x3","y3","lastX","lastY","minDistance","_getDistanceToLine","px","py","something","u","nodeIdFrom","nodeIdTo","getControlNodePositions","_enableControlNodes","_disableControlNodes","_getSelectedControlNode","fromDistance","toDistance","_restoreControlNodes","defaultIndex","DEFAULT","load","url","brokenUrl","img","Image","onload","onerror","imagelist","grouplist","reroutedEdges","fontDrawThreshold","horizontalAlignLeft","verticalAlignTop","baseRadiusValue","radiusFixed","preassignedLevel","hierarchyEnumerated","fx","fy","vx","vy","resetCluster","dynamicEdgesLength","clusterSession","clusterSizeWidthFactor","clusterSizeHeightFactor","clusterSizeRadiusFactor","growthIndicator","networkScale","formationScale","clusterSize","containedNodes","containedEdges","clusterSessions","originalLabel","triggerFunction","groupObj","imageObj","brokenImage","_drawDatabase","_resizeDatabase","_drawBox","_resizeBox","_drawCircle","_resizeCircle","_drawEllipse","_resizeEllipse","_drawImage","_resizeImage","_drawText","_resizeText","_drawDot","_resizeShape","_drawSquare","_drawTriangle","_drawTriangleDown","_drawStar","_reset","clearSizeCache","_setForce","_addForce","isFixed","velocity","getDistance","globalAlpha","drawImage","textSize","getTextSize","clusterLineWidth","selectionLineWidth","roundRect","database","diameter","circle","defaultSize","ellipse","_drawShape","radiusMultiplier","baseline","labelUnderNode","inView","clearVelocity","updateVelocity","massBeforeClustering","energyBefore","styleAttr","fontFamily","WebkitBorderRadius","whiteSpace","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","merge","o","addNode","graphs","attr","addEdge","createEdge","getToken","tokenType","TOKENTYPE","NULL","token","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","strict","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","message","maxLength","forEach2","array1","array2","elem1","elem2","graphData","dotNode","graphNode","convertEdge","dotEdge","graphEdge","subEdge","{","}","[","]",";","=",",","->","--","gephiJSON","allowedToMove","gEdges","gNodes","gEdge","source","gNode","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","_redrawTimer","listeners","events","scrollTopMin","redrawCount","_initAutoResize","component","_stopAutoResize","what","getWindow","borderRootHeight","borderRootWidth","autoHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","MAX_REDRAWS","repaint","_startAutoResize","_onResize","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","eventType","getTouchList","collectEventData","custom","back","editNode","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","n","r2d","kappa","ox","oy","xe","ye","xm","ym","bezierCurveTo","wEllipse","hEllipse","ymb","yeb","xt","yt","xi","yi","xl","yl","xr","yr","dashArray","dashLength","dashCount","slope","distRemaining","dashIndex","_catmullRom","_linear","dFill","_catmullRomUniform","p0","p1","p2","p3","bp1","bp2","normalization","d1","d2","d3","A","N","M","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","Bargraph","barCombinedData","coreDistance","drawData","combinedData","intersections","barPoints","_getDataIntersections","heightOffset","_getSafeDrawData","nextKey","amount","resolved","prevKey","accumulated","groupLabel","_getStackedBarYRange","xpos","PhysicsMixin","ClusterMixin","SectorsMixin","SelectionMixin","ManipulationMixin","NavigationMixin","HierarchicalLayoutMixin","_loadMixin","sourceVariable","mixinFunction","_clearMixin","_loadSelectedForceSolver","_loadPhysicsConfiguration","hubThreshold","activeSector","drawingNode","blockConnectingEdgeSelection","forceAppendSelection","manipulationDiv","editModeDiv","closeDiv","_cleanNavigation","_loadNavigationElements","overlay","_onTapOverlay","windowHammer","_hasParent","deactivate","escListener","activate","unbind","_callbacks","once","self","removeListener","removeAllListeners","callbacks","cb","hasListeners","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","code","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","global","dfl","hasOwnProp","defaultParsingFlags","empty","unusedTokens","unusedInput","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","printMsg","msg","suppressDeprecationWarnings","warn","deprecate","firstTime","deprecateSimple","deprecations","padToken","func","leftZeroFill","ordinalizeToken","period","localeData","ordinal","Locale","Moment","config","skipOverflow","checkOverflow","copyConfig","Duration","normalizedInput","normalizeObjectUnits","years","quarters","quarter","months","weeks","week","days","_milliseconds","_days","_months","_locale","_bubble","val","_isAMomentObject","_i","_f","_l","_strict","_tzm","_isUTC","_offset","_pf","momentProperties","absRound","number","targetLength","forceSign","output","positiveMomentsDifference","base","res","isAfter","momentsDifference","makeAs","isBefore","createAdder","dur","tmp","addOrSubtractDurationFromMoment","mom","isAdding","updateOffset","setTime","rawSetter","rawGetter","rawMonthSetter","input","compareArrays","dontConvert","lengthDiff","diffs","toInt","normalizeUnits","units","lowered","unitAliases","camelFunctions","inputObject","normalizedProp","makeList","setter","getter","results","utc","set","argumentForCoercion","coercedNumber","isFinite","daysInMonth","UTC","getUTCDate","weeksInYear","dow","doy","weekOfYear","daysInYear","isLeapYear","_a","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","isValid","_isValid","getTime","bigHour","normalizeLocale","chooseLocale","names","loadLocale","oldLocale","hasModule","model","local","removeFormattingTokens","makeFormatFunction","formattingTokens","formatTokenFunctions","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","getParseRegexForToken","parseTokenOneDigit","parseTokenThreeDigits","parseTokenFourDigits","parseTokenOneToFourDigits","parseTokenSignedNumber","parseTokenSixDigits","parseTokenOneToSixDigits","parseTokenTwoDigits","parseTokenOneToThreeDigits","parseTokenWord","_meridiemParse","parseTokenOffsetMs","parseTokenTimestampMs","parseTokenTimezone","parseTokenT","parseTokenDigits","parseTokenOneOrTwoDigits","_ordinalParse","_ordinalParseLenient","RegExp","regexpEscape","unescapeFormat","timezoneMinutesFromString","string","possibleTzMatches","tzChunk","parseTimezoneChunker","addTimeToArrayFromToken","datePartArray","monthsParse","_dayOfYear","parseTwoDigitYear","_isPm","isPM","_useUTC","weekdaysParse","_w","invalidWeekday","dayOfYearFromWeekInfo","weekYear","temp","GG","W","E","_week","gg","dayOfYearFromWeeks","dateFromConfig","currentDate","yearToUse","currentDateArray","makeUTCDate","getUTCMonth","_nextDay","makeDate","setUTCMinutes","getUTCMinutes","dateFromObject","getUTCFullYear","makeDateFromStringAndFormat","ISO_8601","parseISO","parsedInput","tokens","skipped","stringLength","totalParsedInputLength","matched","p4","makeDateFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","NaN","score","l","isoRegex","isoDates","isoTimes","makeDateFromString","createFromInputFallback","makeDateFromInput","aspNetJsonRegex","ms","setUTCFullYear","parseWeekday","substituteTimeAgo","withoutSuffix","isFuture","relativeTime","posNegDuration","relativeTimeThresholds","firstDayOfWeek","firstDayOfWeekOfYear","adjustedMoment","daysToDayOfWeek","daysToAdd","getUTCDay","makeMoment","invalid","preparse","pickBy","moments","dayOfMonth","unit","makeAccessor","keepTime","daysToYears","yearsToDays","makeDurationGetter","makeGlobal","shouldDeprecate","ender","oldGlobalMoment","globalScope","VERSION","aspNetTimeSpanJsonRegex","isoDurationRegex","isoFormat","unitMillisecondFactors","Milliseconds","Seconds","Minutes","Hours","Days","Months","Years","D","Q","DDD","dayofyear","isoweekday","isoweek","weekyear","isoweekyear","ordinalizeTokens","paddedTokens","MMM","monthsShort","MMMM","dd","weekdaysMin","ddd","weekdaysShort","dddd","weekdays","isoWeek","YY","YYYY","YYYYY","YYYYYY","gggg","ggggg","isoWeekYear","GGGG","GGGGG","isoWeekday","meridiem","SS","SSS","SSSS","Z","zone","ZZ","zoneAbbr","zz","zoneName","unix","lists","DDDD","_monthsShort","monthName","regex","_monthsParse","_longMonthsParse","_shortMonthsParse","_weekdays","_weekdaysShort","_weekdaysMin","weekdayName","_weekdaysParse","_longDateFormat","LTS","LT","L","LL","LLL","LLLL","isLower","_calendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","calendar","_relativeTime","future","past","mm","hh","MM","yy","pastFuture","_ordinal","postformat","_invalidDate","ret","parseIso","diffRes","isDuration","inp","version","relativeTimeThreshold","threshold","limit","defineLocale","_abbr","abbr","langData","flags","parseZone","isDSTShifted","parsingFlags","invalidAt","keepLocalTime","_dateTzOffset","inputString","asFloat","daysAdjust","that","zoneDiff","startOf","humanize","fromNow","sod","isDST","getDay","endOf","inputMs","isSame","localAdjust","_changeInProgress","hasAlignedHourOffset","isoWeeksInYear","weekInfo","newLocaleData","getTimezoneOffset","isoWeeks","toJSON","withSuffix","toIsoString","asSeconds","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","ordinalParse","require","noGlobal","setup","READY","Event","determineEventTypes","Utils","each","gestures","Detection","register","onTouch","DOCUMENT","EVENT_MOVE","detect","EVENT_END","Instance","defaults","behavior","userSelect","touchAction","touchCallout","contentZooming","userDrag","tapHighlightColor","HAS_POINTEREVENTS","pointerEnabled","msPointerEnabled","HAS_TOUCHEVENTS","IS_MOBILE","NO_MOUSEEVENTS","CALCULATE_INTERVAL","EVENT_TYPES","DIRECTION_DOWN","DIRECTION_LEFT","DIRECTION_UP","DIRECTION_RIGHT","POINTER_MOUSE","POINTER_TOUCH","POINTER_PEN","EVENT_START","EVENT_RELEASE","EVENT_TOUCH","plugins","utils","dest","handler","iterator","inStr","find","inArray","hasParent","getCenter","getVelocity","deltaTime","getAngle","touch1","touch2","getDirection","getRotation","isVertical","setPrefixedCss","toggle","prefixes","toCamelCase","toggleBehavior","falseFn","onselectstart","ondragstart","str","preventMouseEvents","started","shouldDetect","hook","onTouchHandler","ev","triggerType","srcType","isPointer","isMouse","buttons","PointerEvent","matchType","updatePointer","doDetect","touchList","touchListLength","triggerChange","trigger","changedLength","changedTouches","evData","identifiers","identifier","pointerType","timeStamp","preventManipulation","stopDetect","pointers","touchlist","pointerEvent","pointerId","pt","MSPOINTER_TYPE_MOUSE","MSPOINTER_TYPE_TOUCH","MSPOINTER_TYPE_PEN","detection","stopped","startDetect","inst","eventData","startEvent","lastEvent","lastCalcEvent","futureCalcEvent","lastCalcData","extendEventData","instOptions","getCalculatedData","recalc","calcEv","calcData","velocityX","velocityY","interimAngle","interimDirection","startEv","lastEv","rotation","eventStartHandler","eventHandlers","createEvent","initEvent","dispatchEvent","state","dispose","eh","dragGesture","dragMaxTouches","triggered","dragMinDistance","startCenter","dragDistanceCorrection","dragLockToAxis","dragLockMinDistance","lastDirection","dragBlockVertical","dragBlockHorizontal","Drag","Gesture","holdGesture","holdTimeout","holdThreshold","Hold","Release","Swipe","swipeMinTouches","swipeMaxTouches","swipeVelocityX","swipeVelocityY","tapGesture","sincePrev","didDoubleTap","hasMoved","tapMaxDistance","tapMaxTime","doubleTapInterval","doubleTapDistance","tapAlways","Tap","Touch","preventMouse","transformGesture","scaleThreshold","rotationThreshold","transformMinScale","transformMinRotation","Transform","clusterToFit","maxNumberOfNodes","reposition","maxLevels","forceAggregateHubs","normalizeClusterLevels","increaseClusterLevel","repositionNodes","openCluster","isMovingBeforeClustering","_nodeInActiveArea","_sector","_addSector","decreaseClusterLevel","_expandClusterNode","_updateDynamicEdges","updateClusters","zoomDirection","recursive","doNotStart","amountOfNodes","_collapseSector","_formClusters","_openClusters","_openClustersBySize","_aggregateHubs","handleChains","chainPercentage","_getChainFraction","_reduceAmountOfChains","_getHubSize","_formClustersByHub","openAll","containedNodeId","childNode","_expelChildFromParent","_unselectAll","_releaseContainedEdges","_connectEdgeBackToChild","_validateEdges","othersPresent","childNodeId","_repositionBezierNodes","_formClustersByZoom","_forceClustersByZoom","minLength","_addToCluster","_clusterToSmallestNeighbour","smallestNeighbour","smallestNeighbourNode","neighbour","onlyEqual","_formClusterFromHub","hubNode","absorptionSizeOffset","allowCluster","edgesIdarray","amountOfInitialEdges","_addToContainedEdges","_connectEdgeToCluster","_containCircularEdgesFromNode","massBefore","correction","edgeToId","edgeFromId","k","_addToReroutedEdges","maxLevel","minLevel","clusterLevel","targetLevel","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","fraction","reduceAmount","chains","total","_switchToSector","sectorId","sectorType","_switchToActiveSector","_switchToFrozenSector","_switchToSupportSector","_loadLatestSector","_previousSector","_setActiveSector","newId","_forgetLastSector","_createNewSector","_deleteActiveSector","_deleteFrozenSector","_freezeSector","_activateSector","_mergeThisWithFrozen","_collapseThisToSingleCluster","sector","unqiueIdentifier","previousSector","runFunction","argument","returnValues","_doInAllFrozenSectors","_drawSectorNodes","_drawAllSectorNodes","_getNodesOverlappingWith","overlappingNodes","_getAllNodesOverlappingWith","_pointerToPositionObject","positionObject","_getEdgesOverlappingWith","overlappingEdges","_getAllEdgesOverlappingWith","_addToSelection","_addToHover","_removeFromSelection","doNotTrigger","_unselectClusters","_getSelectedNodeCount","_getSelectedNode","_getSelectedEdge","_getSelectedEdgeCount","_getSelectedObjectCount","_selectionIsEmpty","_clusterInSelection","_selectConnectedEdges","_hoverConnectedEdges","_unselectConnectedEdges","append","highlightEdges","overrideSelectable","DOM","_manipulationReleaseOverload","_navigationReleaseOverload","getSelectedNodes","edgeIds","getSelectedEdges","idArray","selectNodes","RangeError","selectEdges","_clearManipulatorBar","manipulationDOM","_restoreOverloadedFunctions","functionName","_toggleEditMode","toolbar","boundFunction","edgeBeingEdited","selectedControlNode","_createAddNodeToolbar","_createAddEdgeToolbar","_editNode","_createEditEdgeToolbar","_addNode","_handleConnect","_finishConnect","_selectControlNode","_controlNodeDrag","_releaseControlNode","newNode","_editEdge","alert","supportNodes","targetNode","connectionEdge","connectFromId","_createEdge","defaultData","finalizedData","sourceNodeId","targetNodeId","selectedNodes","selectedEdges","navigationDivs","navigationDivActions","_stopMovement","_zoomExtent","hubsize","definedLevel","undefinedLevel","_changeConstants","_determineLevels","_determineLevelsDirected","distribution","_getDistribution","_placeNodesByHierarchy","minPos","_placeBranchNodes","maxCount","_setLevel","_setLevelDirected","parentId","parentLevel","nodeMoved","_restoreNodes","graphToggleSmoothCurves","graph_toggleSmooth","getElementById","graphRepositionNodes","showValueOfRange","graphGenerateOptions","optionsSpecific","radioButton1","radioButton2","checked","backupConstants","optionsDiv","switchConfigurations","radioButton","querySelector","tableId","table","constantsVariableName","valueId","rangeValue","_overWriteGraphConstants","RepulsionMixin","HierarchialRepulsionMixin","BarnesHutMixin","_toggleBarnesHut","barnesHutTree","_initializeForceCalculation","_calculateForces","_calculateGravitationalForces","_calculateNodeForces","_calculateSpringForcesWithSupport","_calculateHierarchicalSpringForces","_calculateSpringForces","supportNodeId","gravity","gravityForce","edgeLength","springForce","combinedClusterSize","node1","node2","node3","_calculateSpringForce","physicsConfiguration","hierarchicalLayoutDirections","parentElement","rangeElement","radioButton3","graph_repositionNodes","graph_generateOptions","dynamicSmoothCurves","nameArray","webpackContext","req","resolve","repulsingForce","a_base","minimumDistance","steepness","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","nodeCount","_formBarnesHutTree","_getForceContribution","children","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","MAX_VALUE","sizeDiff","minimumTreeSize","rootSize","halfRootSize","centerX","centerY","_splitBranch","_placeInTree","_updateBranchMass","totalMass","totalMassInv","biggestSize","skipMassUpdate","_placeInRegion","region","containedNode","_insertRegion","childSize","_drawTree","_drawBranch","branch","webpackPolyfill","paths"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"vis.map","sources":["./dist/vis.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","util","DOMutil","DataSet","DataView","Queue","Graph3d","graph3d","Camera","Filter","Point2d","Point3d","Slider","StepNumber","Timeline","Graph2d","timeline","DateUtil","DataStep","Range","stack","TimeStep","components","items","Item","BackgroundItem","BoxItem","PointItem","RangeItem","Component","CurrentTime","CustomTime","DataAxis","GraphGroup","Group","BackgroundGroup","ItemSet","Legend","LineGraph","TimeAxis","Network","network","Edge","Groups","Images","Node","Popup","dotparser","gephiParser","Graph","Error","moment","hammer","isNumber","object","Number","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","isDataTable","google","visualization","DataTable","randomUUID","S4","Math","floor","random","toString","extend","a","i","len","arguments","length","other","prop","hasOwnProperty","selectiveExtend","props","Array","isArray","selectiveDeepExtend","b","TypeError","constructor","Object","undefined","deepExtend","selectiveNotDeepExtend","indexOf","equalArray","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","value","getAbsoluteLeft","elem","getBoundingClientRect","left","window","pageXOffset","getAbsoluteTop","top","pageYOffset","addClassName","className","classes","split","push","join","removeClassName","index","splice","forEach","callback","toArray","array","updateProperty","key","addEventListener","element","action","listener","useCapture","navigator","userAgent","attachEvent","removeEventListener","detachEvent","preventDefault","event","returnValue","getTarget","target","srcElement","nodeType","parentNode","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","GiveDec","Hex","Value","eval","GiveHex","Dec","parseColor","color","isValidRGB","rgb","substr","RGBToHex","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","min","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","hexToRGB","hex","replace","toUpperCase","substring","d","e","f","r","g","red","green","blue","RGBToHSV","minRGB","maxRGB","max","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","map","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","q","t","isOk","test","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","mergeOptions","mergeTarget","options","enabled","binarySearchCustom","orderedItems","searchFunction","field","field2","maxIterations","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easeInOutQuad","start","end","duration","change","easingFunctions","linear","easeInQuad","easeOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","prepareElements","JSONcontainer","elementType","redundant","used","cleanupElements","removeChild","getSVGElement","svgContainer","shift","document","createElementNS","appendChild","getDOMElement","DOMContainer","insertBefore","createElement","drawPoint","x","y","group","point","drawPoints","setAttributeNS","size","drawBar","width","height","rect","data","_options","_data","_fieldId","fieldId","_type","_subscribers","add","setOptions","prototype","queue","_queue","destroy","on","subscribers","subscribe","off","filter","unsubscribe","_trigger","params","senderId","concat","subscriber","addedIds","me","_addItem","columns","_getColumnNames","row","rows","getNumberOfRows","col","cols","getValue","update","updatedIds","updatedData","addOrUpdate","_updateItem","get","ids","firstType","returnType","allowedValues","itemId","_getItem","order","_sort","_filterFields","_appendRow","result","getIds","getDataSet","mappedItems","filteredItem","name","sort","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","values","fieldType","count","exists","types","raw","converted","JSON","stringify","dataTable","getNumberOfColumns","getColumnId","getColumnLabel","addRow","setValue","_ids","_onEvent","apply","setData","viewOptions","getArguments","defaultFilter","dataSet","added","updated","removed","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","args","fn","context","entry","clearTimeout","setTimeout","container","SyntaxError","containerElement","margin","defaultXCenter","defaultYCenter","xLabel","yLabel","zLabel","passValueFn","xValueLabel","yValueLabel","zValueLabel","filterLabel","legendLabel","STYLE","DOT","showPerspective","showGrid","keepAspectRatio","showShadow","showGrayBottom","showTooltip","verticalRatio","animationInterval","animationPreload","camera","eye","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","colorAxis","colorGrid","colorDot","colorDotBorder","getMouseX","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","scale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","fill","stroke","strokeWidth","borderColor","borderWidth","borderStyle","BAR","BARCOLOR","BARSIZE","DOTLINE","DOTCOLOR","DOTSIZE","GRID","LINE","SURFACE","_getStyleNumber","styleName","_determineColumnIndexes","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","redraw","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","obj","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","bottom","pointRight","pointTop","pointCross","hasChildNodes","firstChild","position","overflow","noCanvas","fontWeight","padding","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","charAt","parseFloat","setCameraPosition","pos","horizontal","vertical","setArmRotation","distance","setArmLength","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","tooltip","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","ctx","getContext","clearRect","widthMin","widthMax","dotSize","right","lineWidth","font","ymin","ymax","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","gridLineLen","step","getCurrent","next","textAlign","textBaseline","fillText","label","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","from","to","prettyStep","text","xText","yText","zText","offset","xOffset","yOffset","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","abs","parseInt","cross","topSideVisible","zAvg","transBottom","dist","sortDepth","aDiff","subtract","bDiff","crossproduct","crossProduct","radius","arc","PI","j","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","diff","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","round","parameters","emit","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","delta","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","sign","as","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","content","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","dataView","progress","sub","sum","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","pow","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","orientation","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","snap","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis","currentTime","customTime","itemSet","itemsData","groupsData","setGroups","setItems","Core","newDataSet","initialLoad","dataRange","_getDataRange","setWindow","animate","fit","setSelection","focus","getSelection","itemData","getItemRange","dataset","minItem","maxStartItem","maxEndItem","linegraph","getLegend","groupId","isGroupVisible","visibility","convertHiddenOptions","repeat","dateItem","updateHiddenDates","centerContainer","totalRange","pixelTime","startDate","endDate","_d","runUntil","clone","day","dayOfYear","year","dayOffset","date","month","console","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","startToFront","endToFront","_applyRange","safeDates","printDates","dates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","newValue","switchedYear","switchedMonth","switchedDay","time","conversion","getHiddenDurationBetween","correctTimeForHidden","hiddenDuration","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","getHiddenDurationBefore","timeOffset","requiredDuration","previousPoint","snapAwayFromHidden","direction","correctionEnabled","minimumStep","containerHeight","customRange","alignZeros","autoScale","stepIndex","marginStart","marginEnd","deadSpace","majorSteps","minorSteps","setMinimumStep","setFirst","safeSize","minimumStepValue","orderOfMagnitude","minorStepIdx","magnitudefactor","solutionFound","stepSize","niceStart","niceEnd","roundToMinor","marginRange","rounded","hasNext","previous","decimals","slice","exp","cnt","isMajor","now","hours","minutes","seconds","milliseconds","deltaDifference","scaleOffset","moveable","zoomable","zoomMin","zoomMax","touch","animateTimer","_onDragStart","_onDrag","_onDragEnd","_onHold","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","pageX","pageY","hammerUtil","_cancelAnimation","initStart","initEnd","initTime","anyChanged","dragging","done","changed","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","gesture","deltaX","deltaY","diffRange","safeStart","safeEnd","fakeGesture","pointer","pointerDate","_pointerToDate","zoom","touches","centerDate","hiddenDurationBefore","hiddenDurationAfter","move","EPSILON","orderByStart","orderByEnd","aTime","bTime","force","iMax","axis","collidingItem","jj","collision","nostack","subgroups","newTop","subgroup","format","FORMAT","minorLabels","millisecond","second","minute","hour","weekday","majorLabels","setFormat","defaultFormat","first","setFullYear","getFullYear","setMonth","setDate","setHours","setMinutes","setSeconds","setMilliseconds","getMilliseconds","getSeconds","getMinutes","getHours","getDate","getMonth","setScale","newScale","newStep","setAutoScale","enable","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","getLabelMinor","getLabelMajor","_isResized","resized","_previousWidth","_previousHeight","showCurrentTime","locales","locale","parent","backgroundVertical","title","currentTimeTimer","setCurrentTime","getCurrentTime","showCustomTime","eventParams","Hammer","drag","prevent_default","setCustomTime","getCustomTime","stopPropagation","svg","linegraphOptions","showMinorLabels","showMajorLabels","showMinorLines","showMajorLines","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","linegraphSVG","DOMelements","lines","labels","conversionFactor","minWidth","stepPixels","stepPixelsForced","zeroCrossing","lineOffset","master","svgElements","iconsRemoved","amountOfGroups","lineContainer","scrollTop","addGroup","graphOptions","updateGroup","removeGroup","hide","show","display","_redrawGroupIcons","iconHeight","iconOffset","drawIcon","_cleanupIcons","backgroundHorizontal","changeCalled","activeGroups","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineWidth","minorLineHeight","majorLineWidth","majorLineHeight","_redrawLabels","_redrawTitle","amountOfSteps","stepDifference","zeroStepDifference","valueAtZero","marginStartPos","maxLabelSize","_redrawLabel","_redrawLine","titleWidth","titleCharHeight","convertValue","invertedValue","convertedValue","characterHeight","largestWidth","majorCharWidth","minorCharWidth","textMinor","createTextNode","measureCharMinor","textMajor","measureCharMajor","textTitle","measureCharTitle","titleCharWidth","groupsUsingDefaultStyles","usingDefaultStyle","zeroPosition","Line","Bar","Points","setZeroPosition","catmullRom","parametrization","alpha","SVGcontainer","path","fillPath","fillHeight","outline","shaded","barWidth","bar1Height","bar2Height","icon","yAxisOrientation","getYRange","groupData","draw","framework","subgroupIndex","subgroupOrderer","subgroupOrder","visibleItems","byStart","byEnd","checkRangedItems","inner","foreground","marker","Element","getLabelWidth","restack","_updateVisibleItems","markerHeight","lastMarkerHeight","dirty","displayed","_calculateHeight","offsetTop","offsetLeft","ii","repositionY","resetSubgroups","labelSet","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","removeFromDataSet","removeItem","startArray","endArray","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","repositionX","initialPos","breakCondition","isVisible","align","groupOrder","selectable","editable","updateTime","onAdd","onUpdate","onMove","onRemove","onMoving","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","selection","stackDirty","touchParams","UNGROUPED","BACKGROUND","box","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","addCallback","Function","markDirty","unselect","select","getVisibleItems","rawVisibleItems","_deselect","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","lastWidth","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","_getType","_removeItem","groupOptions","oldGroupId","oldGroup","_constructByEndArray","itemFromTarget","selected","dragLeftItem","dragRightItem","initialX","itemProps","newProps","initial","groupFromTarget","_updateItemProps","_moveToGroup","changes","ctrlKey","srcEvent","shiftKey","oldSelection","newSelection","xAbs","newItem","_getItemRange","_item","itemSetFromTarget","side","iconSize","iconSpacing","textArea","scrollableHeight","drawLegendIcons","getComputedStyle","paddingTop","defaultGroup","sampling","graphHeight","barChart","handleOverlap","dataAxis","legend","abortedGraphUpdate","autoSizeSVG","lastStart","COUNTER","BarGraphFunctions","yAxisLeft","yAxisRight","legendLeft","legendRight","_updateAllGroupData","_updateGroup","groupsContent","ungroupedCounter","forceGraphUpdate","_updateGraph","rangePerPixelInv","preprocessedGroupData","processedGroupData","groupRanges","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","MAX_CYCLES","_convertYcoordinates","dataContainer","guess","increment","amountOfPoints","xDistance","pointsPerPixel","ceil","sampledData","barCombinedDataLeft","barCombinedDataRight","getStackedBarYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","axisUsed","datapoints","xValue","yValue","extractedData","svgHeight","majorLines","majorTexts","minorLines","minorTexts","lineTop","lang","parentChanged","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","xFirstMajorLabel","cur","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","leftTime","leftText","widthText","arr","pop","childNodes","nodeValue","_repaintDeleteButton","anchor","deleteButton","_updateContents","template","_updateTitle","removeAttribute","_updateDataAttributes","dataAttributes","attributes","setAttribute","_updateStyle","emptyContent","baseClassName","onTop","itemSubgroup","itemSetHeight","marginLeft","maxWidth","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","dragLeft","dragRight","_initializeMixinLoaders","renderRefreshRate","renderTimestep","renderTime","maxPhysicsTicksPerRender","physicsDiscreteStepsize","initializing","triggerFunctions","edit","editEdge","connect","del","nodes","mass","radiusMin","radiusMax","shape","image","fontColor","fontSize","fontFace","fontFill","level","highlightColor","borderWidthSelected","edges","widthSelectionMultiplier","hoverWidth","arrowScaleFactor","dash","gap","altLength","inheritColor","configurePhysics","physics","barnesHut","thetaInverted","gravitationalConstant","centralGravity","springLength","springConstant","damping","repulsion","nodeDistance","hierarchicalRepulsion","clustering","initialMaxNodes","clusterThreshold","reduceToNodes","chainThreshold","clusterEdgeThreshold","sectorThreshold","screenSizeThreshold","fontSizeMultiplier","maxFontSize","forceAmplification","distanceAmplification","edgeGrowth","nodeScaling","maxNodeSizeIncrements","activeAreaBoxSize","clusterLevelDifference","navigation","keyboard","speed","dataManipulation","initiallyVisible","hierarchicalLayout","levelSeparation","nodeSpacing","layout","freezeForStabilization","smoothCurves","dynamic","roundness","maxVelocity","minVelocity","stabilize","stabilizationIterations","zoomExtentOnStabilize","dragNetwork","dragNodes","hideEdgesOnDrag","hideNodesOnDrag","constants","pixelRatio","hoverObj","controlNodesActive","navigationHammers","existing","_new","animationSpeed","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","images","setOnloadCallback","_redraw","xIncrement","yIncrement","zoomIncrement","_loadPhysicsSystem","_loadSectorSystem","_loadClusterSystem","_loadSelectionSystem","_loadHierarchySystem","_setTranslation","freezeSimulation","cachedFunctions","startedStabilization","stabilized","draggingNodes","calculationNodes","calculationNodeIndices","nodeIndices","canvasTopLeft","canvasBottomRight","pointerPosition","areaCenter","previousScale","nodesData","edgesData","nodesListeners","_addNodes","_updateNodes","_removeNodes","edgesListeners","_addEdges","_updateEdges","_removeEdges","moving","timer","_setupHierarchicalLayout","zoomExtent","startWithClustering","keycharm","MixinLoader","Activator","_getScriptPath","scripts","getElementsByTagName","src","_getRange","node","minY","maxY","minX","maxX","nodeId","boundingBox","_findCenter","animationOptions","initialZoom","disableStart","zoomLevel","numberOfNodes","factor","yDistance","xZoomLevel","yZoomLevel","animation","_updateNodeIndexList","_clearNodeIndexList","idx","dotData","DOTToGraph","gephi","gephiData","parseGephi","_setNodes","_setEdges","_putDataInSector","_resetLevels","_stabilize","onEdit","onEditEdge","onConnect","onDelete","editMode","newColorObj","groupname","clickToUse","activator","_createKeyBinds","_loadNavigationControls","_loadManipulationSystem","_configureSmoothCurves","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","pinch","_onTap","_onDoubleTap","_onMouseMoveTitle","hammerFrame","_onRelease","reset","isActive","_moveUp","_yStopMoving","_moveDown","_moveLeft","_xStopMoving","_moveRight","_zoomIn","_stopZoom","_zoomOut","_createManipulatorBar","_deleteSelected","_cleanupPhysicsConfiguration","dispose","_getPointer","pinched","_getScale","_handleTouch","_handleDragStart","_getNodeAt","_getTranslation","isSelected","_selectObject","nodeIds","objectId","selectionObj","xFixed","yFixed","_handleOnDrag","releaseNode","_XconvertDOMtoCanvas","_XconvertCanvasToDOM","_YconvertDOMtoCanvas","_YconvertCanvasToDOM","_handleDragEnd","_handleTap","_handleDoubleTap","_handleOnHold","_handleOnRelease","_zoom","scaleOld","preScaleDragPointer","DOMtoCanvas","scaleFrac","tx","ty","updateClustersDefault","postScaleDragPointer","canvasToDOM","popupObj","_checkHidePopup","checkShow","_checkShowPopup","popupTimer","edgeId","_getEdgeAt","_hoverObject","_blurObject","lastPopupNode","getTitle","isOverlappingWith","edge","connected","popup","setPosition","setText","emitEvent","oldWidth","oldHeight","oldNodesData","_updateSelection","angle","_updateCalculationNodes","_reconnectEdges","_updateValueRange","updateLabels","changedData","setProperties","properties","oldEdgesData","oldEdge","disconnect","showInternalIds","_createBezierNodes","via","sectors","dynamicEdges","setValueRange","w","save","translate","_doInAllSectors","restore","offsetX","offsetY","_drawNodes","alwaysShow","setScaleAndPos","inArea","sMax","_drawEdges","_drawControlNodes","_freezeDefinedNodes","_physicsTick","_restoreFrozenNodes","fixedData","_isMoving","vmin","isMoving","_discreteStepNodes","nodesPresent","discreteStepLimited","discreteStep","vminCorrected","mainMovingStatus","supportMovingStatus","_doInAllActiveSectors","mainMoving","_doInSupportSector","_animationStep","_handleNavigation","calculationTime","maxSteps","timeRequired","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","ua","toLowerCase","requiresTimeout","iterations","toggleFreeze","parentEdgeId","internalMultiplier","positionBezierNode","mixin","storePosition","storePositions","dataArray","allowedToMoveX","allowedToMoveY","getPositions","focusOnNode","nodePosition","lockedOnNode","easingFunction","animateView","locked","_transitionRedraw","viewCenter","distanceFromCenter","_classicRedraw","_lockedRedraw","active","getScale","getCenterCoordinates","networkConstants","fromId","toId","widthSelected","labelDimensions","yLine","dirtyLabel","fromBackup","toBackup","originalFromId","originalToId","widthFixed","lengthFixed","controlNodesEnabled","controlNodes","positions","connectedNode","_drawLine","_drawArrow","_drawArrowCenter","_drawDashLine","attachEdge","detachEdge","xFrom","yFrom","xTo","yTo","xObj","yObj","_getDistanceToEdge","_getColor","colorObj","_getLineWidth","_line","midpointX","midpointY","_pointOnLine","_label","resize","_circle","_pointOnCircle","networkScaleInv","_getViaCoordinates","xVia","yVia","quadraticCurveTo","lineCount","measureText","fillRect","mozDash","setLineDash","pattern","lineDashOffset","mozDashOffset","lineCap","dashedLine","percentage","atan2","arrow","edgeSegmentLength","fromBorderDist","distanceToBorder","fromBorderPoint","toBorderDist","toBorderPoint","x1","y1","x2","y2","x3","y3","lastX","lastY","minDistance","_getDistanceToLine","px","py","something","u","nodeIdFrom","nodeIdTo","getControlNodePositions","_enableControlNodes","_disableControlNodes","_getSelectedControlNode","fromDistance","toDistance","_restoreControlNodes","defaultIndex","DEFAULT","load","url","brokenUrl","img","Image","onload","onerror","imagelist","grouplist","reroutedEdges","fontDrawThreshold","horizontalAlignLeft","verticalAlignTop","baseRadiusValue","radiusFixed","preassignedLevel","hierarchyEnumerated","fx","fy","vx","vy","resetCluster","dynamicEdgesLength","clusterSession","clusterSizeWidthFactor","clusterSizeHeightFactor","clusterSizeRadiusFactor","growthIndicator","networkScale","formationScale","clusterSize","containedNodes","containedEdges","clusterSessions","originalLabel","triggerFunction","groupObj","imageObj","brokenImage","_drawDatabase","_resizeDatabase","_drawBox","_resizeBox","_drawCircle","_resizeCircle","_drawEllipse","_resizeEllipse","_drawImage","_resizeImage","_drawText","_resizeText","_drawDot","_resizeShape","_drawSquare","_drawTriangle","_drawTriangleDown","_drawStar","_reset","clearSizeCache","_setForce","_addForce","isFixed","velocity","getDistance","globalAlpha","drawImage","textSize","getTextSize","clusterLineWidth","selectionLineWidth","roundRect","database","diameter","circle","defaultSize","ellipse","_drawShape","radiusMultiplier","baseline","labelUnderNode","inView","clearVelocity","updateVelocity","massBeforeClustering","energyBefore","styleAttr","fontFamily","WebkitBorderRadius","whiteSpace","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","merge","o","addNode","graphs","attr","addEdge","createEdge","getToken","tokenType","TOKENTYPE","NULL","token","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","strict","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","message","maxLength","forEach2","array1","array2","elem1","elem2","graphData","dotNode","graphNode","convertEdge","dotEdge","graphEdge","subEdge","{","}","[","]",";","=",",","->","--","gephiJSON","allowedToMove","gEdges","gNodes","gEdge","source","gNode","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","_redrawTimer","listeners","events","scrollTopMin","redrawCount","_initAutoResize","component","_stopAutoResize","what","getWindow","borderRootHeight","borderRootWidth","autoHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","MAX_REDRAWS","repaint","_startAutoResize","_onResize","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","eventType","getTouchList","collectEventData","custom","back","editNode","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","n","r2d","kappa","ox","oy","xe","ye","xm","ym","bezierCurveTo","wEllipse","hEllipse","ymb","yeb","xt","yt","xi","yi","xl","yl","xr","yr","dashArray","dashLength","dashCount","slope","distRemaining","dashIndex","_catmullRom","_linear","dFill","_catmullRomUniform","p0","p1","p2","p3","bp1","bp2","normalization","d1","d2","d3","A","N","M","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","Bargraph","barCombinedData","coreDistance","drawData","combinedData","intersections","barPoints","_getDataIntersections","heightOffset","_getSafeDrawData","nextKey","amount","resolved","prevKey","accumulated","groupLabel","_getStackedBarYRange","xpos","PhysicsMixin","ClusterMixin","SectorsMixin","SelectionMixin","ManipulationMixin","NavigationMixin","HierarchicalLayoutMixin","_loadMixin","sourceVariable","mixinFunction","_clearMixin","_loadSelectedForceSolver","_loadPhysicsConfiguration","hubThreshold","activeSector","drawingNode","blockConnectingEdgeSelection","forceAppendSelection","manipulationDiv","editModeDiv","closeDiv","_cleanNavigation","_loadNavigationElements","overlay","_onTapOverlay","windowHammer","_hasParent","deactivate","escListener","activate","unbind","_callbacks","once","self","removeListener","removeAllListeners","callbacks","cb","hasListeners","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","code","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","global","dfl","hasOwnProp","defaultParsingFlags","empty","unusedTokens","unusedInput","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","printMsg","msg","suppressDeprecationWarnings","warn","deprecate","firstTime","deprecateSimple","deprecations","padToken","func","leftZeroFill","ordinalizeToken","period","localeData","ordinal","Locale","Moment","config","skipOverflow","checkOverflow","copyConfig","Duration","normalizedInput","normalizeObjectUnits","years","quarters","quarter","months","weeks","week","days","_milliseconds","_days","_months","_locale","_bubble","val","_isAMomentObject","_i","_f","_l","_strict","_tzm","_isUTC","_offset","_pf","momentProperties","absRound","number","targetLength","forceSign","output","positiveMomentsDifference","base","res","isAfter","momentsDifference","makeAs","isBefore","createAdder","dur","tmp","addOrSubtractDurationFromMoment","mom","isAdding","updateOffset","setTime","rawSetter","rawGetter","rawMonthSetter","input","compareArrays","dontConvert","lengthDiff","diffs","toInt","normalizeUnits","units","lowered","unitAliases","camelFunctions","inputObject","normalizedProp","makeList","setter","getter","results","utc","set","argumentForCoercion","coercedNumber","isFinite","daysInMonth","UTC","getUTCDate","weeksInYear","dow","doy","weekOfYear","daysInYear","isLeapYear","_a","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","isValid","_isValid","getTime","bigHour","normalizeLocale","chooseLocale","names","loadLocale","oldLocale","hasModule","model","local","removeFormattingTokens","makeFormatFunction","formattingTokens","formatTokenFunctions","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","getParseRegexForToken","parseTokenOneDigit","parseTokenThreeDigits","parseTokenFourDigits","parseTokenOneToFourDigits","parseTokenSignedNumber","parseTokenSixDigits","parseTokenOneToSixDigits","parseTokenTwoDigits","parseTokenOneToThreeDigits","parseTokenWord","_meridiemParse","parseTokenOffsetMs","parseTokenTimestampMs","parseTokenTimezone","parseTokenT","parseTokenDigits","parseTokenOneOrTwoDigits","_ordinalParse","_ordinalParseLenient","RegExp","regexpEscape","unescapeFormat","timezoneMinutesFromString","string","possibleTzMatches","tzChunk","parseTimezoneChunker","addTimeToArrayFromToken","datePartArray","monthsParse","_dayOfYear","parseTwoDigitYear","_isPm","isPM","_useUTC","weekdaysParse","_w","invalidWeekday","dayOfYearFromWeekInfo","weekYear","temp","GG","W","E","_week","gg","dayOfYearFromWeeks","dateFromConfig","currentDate","yearToUse","currentDateArray","makeUTCDate","getUTCMonth","_nextDay","makeDate","setUTCMinutes","getUTCMinutes","dateFromObject","getUTCFullYear","makeDateFromStringAndFormat","ISO_8601","parseISO","parsedInput","tokens","skipped","stringLength","totalParsedInputLength","matched","p4","makeDateFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","NaN","score","l","isoRegex","isoDates","isoTimes","makeDateFromString","createFromInputFallback","makeDateFromInput","aspNetJsonRegex","ms","setUTCFullYear","parseWeekday","substituteTimeAgo","withoutSuffix","isFuture","relativeTime","posNegDuration","relativeTimeThresholds","firstDayOfWeek","firstDayOfWeekOfYear","adjustedMoment","daysToDayOfWeek","daysToAdd","getUTCDay","makeMoment","invalid","preparse","pickBy","moments","dayOfMonth","unit","makeAccessor","keepTime","daysToYears","yearsToDays","makeDurationGetter","makeGlobal","shouldDeprecate","ender","oldGlobalMoment","globalScope","VERSION","aspNetTimeSpanJsonRegex","isoDurationRegex","isoFormat","unitMillisecondFactors","Milliseconds","Seconds","Minutes","Hours","Days","Months","Years","D","Q","DDD","dayofyear","isoweekday","isoweek","weekyear","isoweekyear","ordinalizeTokens","paddedTokens","MMM","monthsShort","MMMM","dd","weekdaysMin","ddd","weekdaysShort","dddd","weekdays","isoWeek","YY","YYYY","YYYYY","YYYYYY","gggg","ggggg","isoWeekYear","GGGG","GGGGG","isoWeekday","meridiem","SS","SSS","SSSS","Z","zone","ZZ","zoneAbbr","zz","zoneName","unix","lists","DDDD","_monthsShort","monthName","regex","_monthsParse","_longMonthsParse","_shortMonthsParse","_weekdays","_weekdaysShort","_weekdaysMin","weekdayName","_weekdaysParse","_longDateFormat","LTS","LT","L","LL","LLL","LLLL","isLower","_calendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","calendar","_relativeTime","future","past","mm","hh","MM","yy","pastFuture","_ordinal","postformat","_invalidDate","ret","parseIso","diffRes","isDuration","inp","version","relativeTimeThreshold","threshold","limit","defineLocale","_abbr","abbr","langData","flags","parseZone","isDSTShifted","parsingFlags","invalidAt","keepLocalTime","_dateTzOffset","inputString","asFloat","daysAdjust","that","zoneDiff","startOf","humanize","fromNow","sod","isDST","getDay","endOf","inputMs","isSame","localAdjust","_changeInProgress","hasAlignedHourOffset","isoWeeksInYear","weekInfo","newLocaleData","getTimezoneOffset","isoWeeks","toJSON","withSuffix","toIsoString","asSeconds","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","ordinalParse","require","noGlobal","setup","READY","Event","determineEventTypes","Utils","each","gestures","Detection","register","onTouch","DOCUMENT","EVENT_MOVE","detect","EVENT_END","Instance","defaults","behavior","userSelect","touchAction","touchCallout","contentZooming","userDrag","tapHighlightColor","HAS_POINTEREVENTS","pointerEnabled","msPointerEnabled","HAS_TOUCHEVENTS","IS_MOBILE","NO_MOUSEEVENTS","CALCULATE_INTERVAL","EVENT_TYPES","DIRECTION_DOWN","DIRECTION_LEFT","DIRECTION_UP","DIRECTION_RIGHT","POINTER_MOUSE","POINTER_TOUCH","POINTER_PEN","EVENT_START","EVENT_RELEASE","EVENT_TOUCH","plugins","utils","dest","handler","iterator","inStr","find","inArray","hasParent","getCenter","getVelocity","deltaTime","getAngle","touch1","touch2","getDirection","getRotation","isVertical","setPrefixedCss","toggle","prefixes","toCamelCase","toggleBehavior","falseFn","onselectstart","ondragstart","str","preventMouseEvents","started","shouldDetect","hook","onTouchHandler","ev","triggerType","srcType","isPointer","isMouse","buttons","PointerEvent","matchType","updatePointer","doDetect","touchList","touchListLength","triggerChange","trigger","changedLength","changedTouches","evData","identifiers","identifier","pointerType","timeStamp","preventManipulation","stopDetect","pointers","touchlist","pointerEvent","pointerId","pt","MSPOINTER_TYPE_MOUSE","MSPOINTER_TYPE_TOUCH","MSPOINTER_TYPE_PEN","detection","stopped","startDetect","inst","eventData","startEvent","lastEvent","lastCalcEvent","futureCalcEvent","lastCalcData","extendEventData","instOptions","getCalculatedData","recalc","calcEv","calcData","velocityX","velocityY","interimAngle","interimDirection","startEv","lastEv","rotation","eventStartHandler","eventHandlers","createEvent","initEvent","dispatchEvent","state","eh","dragGesture","dragMaxTouches","triggered","dragMinDistance","startCenter","dragDistanceCorrection","dragLockToAxis","dragLockMinDistance","lastDirection","dragBlockVertical","dragBlockHorizontal","Drag","Gesture","holdGesture","holdTimeout","holdThreshold","Hold","Release","Swipe","swipeMinTouches","swipeMaxTouches","swipeVelocityX","swipeVelocityY","tapGesture","sincePrev","didDoubleTap","hasMoved","tapMaxDistance","tapMaxTime","doubleTapInterval","doubleTapDistance","tapAlways","Tap","Touch","preventMouse","transformGesture","scaleThreshold","rotationThreshold","transformMinScale","transformMinRotation","Transform","clusterToFit","maxNumberOfNodes","reposition","maxLevels","forceAggregateHubs","normalizeClusterLevels","increaseClusterLevel","repositionNodes","openCluster","isMovingBeforeClustering","_nodeInActiveArea","_sector","_addSector","decreaseClusterLevel","_expandClusterNode","_updateDynamicEdges","updateClusters","zoomDirection","recursive","doNotStart","amountOfNodes","_collapseSector","_formClusters","_openClusters","_openClustersBySize","_aggregateHubs","handleChains","chainPercentage","_getChainFraction","_reduceAmountOfChains","_getHubSize","_formClustersByHub","openAll","containedNodeId","childNode","_expelChildFromParent","_unselectAll","_releaseContainedEdges","_connectEdgeBackToChild","_validateEdges","othersPresent","childNodeId","_repositionBezierNodes","_formClustersByZoom","_forceClustersByZoom","minLength","_addToCluster","_clusterToSmallestNeighbour","smallestNeighbour","smallestNeighbourNode","neighbour","onlyEqual","_formClusterFromHub","hubNode","absorptionSizeOffset","allowCluster","edgesIdarray","amountOfInitialEdges","_addToContainedEdges","_connectEdgeToCluster","_containCircularEdgesFromNode","massBefore","correction","edgeToId","edgeFromId","k","_addToReroutedEdges","maxLevel","minLevel","clusterLevel","targetLevel","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","fraction","reduceAmount","chains","total","_switchToSector","sectorId","sectorType","_switchToActiveSector","_switchToFrozenSector","_switchToSupportSector","_loadLatestSector","_previousSector","_setActiveSector","newId","_forgetLastSector","_createNewSector","_deleteActiveSector","_deleteFrozenSector","_freezeSector","_activateSector","_mergeThisWithFrozen","_collapseThisToSingleCluster","sector","unqiueIdentifier","previousSector","runFunction","argument","returnValues","_doInAllFrozenSectors","_drawSectorNodes","_drawAllSectorNodes","_getNodesOverlappingWith","overlappingNodes","_getAllNodesOverlappingWith","_pointerToPositionObject","positionObject","_getEdgesOverlappingWith","overlappingEdges","_getAllEdgesOverlappingWith","_addToSelection","_addToHover","_removeFromSelection","doNotTrigger","_unselectClusters","_getSelectedNodeCount","_getSelectedNode","_getSelectedEdge","_getSelectedEdgeCount","_getSelectedObjectCount","_selectionIsEmpty","_clusterInSelection","_selectConnectedEdges","_hoverConnectedEdges","_unselectConnectedEdges","append","highlightEdges","overrideSelectable","DOM","_manipulationReleaseOverload","_navigationReleaseOverload","getSelectedNodes","edgeIds","getSelectedEdges","idArray","selectNodes","RangeError","selectEdges","_clearManipulatorBar","manipulationDOM","_restoreOverloadedFunctions","functionName","_toggleEditMode","toolbar","boundFunction","edgeBeingEdited","selectedControlNode","_createAddNodeToolbar","_createAddEdgeToolbar","_editNode","_createEditEdgeToolbar","_addNode","_handleConnect","_finishConnect","_selectControlNode","_controlNodeDrag","_releaseControlNode","newNode","_editEdge","alert","supportNodes","targetNode","connectionEdge","connectFromId","_createEdge","defaultData","finalizedData","sourceNodeId","targetNodeId","selectedNodes","selectedEdges","navigationDivs","navigationDivActions","_stopMovement","_zoomExtent","hubsize","definedLevel","undefinedLevel","_changeConstants","_determineLevels","_determineLevelsDirected","distribution","_getDistribution","_placeNodesByHierarchy","minPos","_placeBranchNodes","maxCount","_setLevel","_setLevelDirected","parentId","parentLevel","nodeMoved","_restoreNodes","graphToggleSmoothCurves","graph_toggleSmooth","getElementById","graphRepositionNodes","showValueOfRange","graphGenerateOptions","optionsSpecific","radioButton1","radioButton2","checked","backupConstants","optionsDiv","switchConfigurations","radioButton","querySelector","tableId","table","constantsVariableName","valueId","rangeValue","_overWriteGraphConstants","RepulsionMixin","HierarchialRepulsionMixin","BarnesHutMixin","_toggleBarnesHut","barnesHutTree","_initializeForceCalculation","_calculateForces","_calculateGravitationalForces","_calculateNodeForces","_calculateSpringForcesWithSupport","_calculateHierarchicalSpringForces","_calculateSpringForces","supportNodeId","gravity","gravityForce","edgeLength","springForce","combinedClusterSize","node1","node2","node3","_calculateSpringForce","physicsConfiguration","hierarchicalLayoutDirections","parentElement","rangeElement","radioButton3","graph_repositionNodes","graph_generateOptions","dynamicSmoothCurves","nameArray","webpackContext","req","resolve","repulsingForce","a_base","minimumDistance","steepness","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","nodeCount","_formBarnesHutTree","_getForceContribution","children","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","MAX_VALUE","sizeDiff","minimumTreeSize","rootSize","halfRootSize","centerX","centerY","_splitBranch","_placeInTree","_updateBranchMass","totalMass","totalMassInv","biggestSize","skipMassUpdate","_placeInRegion","region","containedNode","_insertRegion","childSize","_drawTree","_drawBranch","branch","webpackPolyfill","paths"],"mappings":"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"} \ No newline at end of file diff --git a/dist/vis.min.js b/dist/vis.min.js index 09b437b2..c26c0a0c 100644 --- a/dist/vis.min.js +++ b/dist/vis.min.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 3.7.2-SNAPSHOT - * @date 2014-12-19 + * @date 2015-01-06 * * @license * Copyright (C) 2011-2014 Almende B.V, http://almende.com @@ -23,17 +23,17 @@ * Vis.js may be distributed under either license. */ "use strict";!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):"object"==typeof exports?exports.vis=e():t.vis=e()}(this,function(){return function(t){function e(s){if(i[s])return i[s].exports;var o=i[s]={exports:{},id:s,loaded:!1};return t[s].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var i={};return e.m=t,e.c=i,e.p="",e(0)}([function(t,e,i){e.util=i(1),e.DOMutil=i(2),e.DataSet=i(3),e.DataView=i(4),e.Queue=i(5),e.Graph3d=i(6),e.graph3d={Camera:i(7),Filter:i(8),Point2d:i(9),Point3d:i(10),Slider:i(11),StepNumber:i(12)},e.Timeline=i(13),e.Graph2d=i(14),e.timeline={DateUtil:i(15),DataStep:i(16),Range:i(17),stack:i(18),TimeStep:i(19),components:{items:{Item:i(31),BackgroundItem:i(32),BoxItem:i(33),PointItem:i(34),RangeItem:i(35)},Component:i(20),CurrentTime:i(21),CustomTime:i(22),DataAxis:i(23),GraphGroup:i(24),Group:i(25),BackgroundGroup:i(26),ItemSet:i(27),Legend:i(28),LineGraph:i(29),TimeAxis:i(30)}},e.Network=i(36),e.network={Edge:i(37),Groups:i(38),Images:i(39),Node:i(40),Popup:i(41),dotparser:i(42),gephiParser:i(43)},e.Graph=function(){throw new Error("Graph is renamed to Network. Please create a graph as new vis.Network(...)")},e.moment=i(44),e.hammer=i(45)},function(module,exports,__webpack_require__){var moment=__webpack_require__(44);exports.isNumber=function(t){return t instanceof Number||"number"==typeof t},exports.isString=function(t){return t instanceof String||"string"==typeof t},exports.isDate=function(t){if(t instanceof Date)return!0;if(exports.isString(t)){var e=ASPDateRegex.exec(t);if(e)return!0;if(!isNaN(Date.parse(t)))return!0}return!1},exports.isDataTable=function(t){return"undefined"!=typeof google&&google.visualization&&google.visualization.DataTable&&t instanceof google.visualization.DataTable},exports.randomUUID=function(){var t=function(){return Math.floor(65536*Math.random()).toString(16)};return t()+t()+"-"+t()+"-"+t()+"-"+t()+"-"+t()+t()+t()},exports.extend=function(t){for(var e=1,i=arguments.length;i>e;e++){var s=arguments[e];for(var o in s)s.hasOwnProperty(o)&&(t[o]=s[o])}return t},exports.selectiveExtend=function(t,e){if(!Array.isArray(t))throw new Error("Array with property names expected as first argument");for(var i=2;ii;i++)if(t[i]!=e[i])return!1;return!0},exports.convert=function(t,e){var i;if(void 0===t)return void 0;if(null===t)return null;if(!e)return t;if("string"!=typeof e&&!(e instanceof String))throw new Error("Type must be a string");switch(e){case"boolean":case"Boolean":return Boolean(t);case"number":case"Number":return Number(t.valueOf());case"string":case"String":return String(t);case"Date":if(exports.isNumber(t))return new Date(t);if(t instanceof Date)return new Date(t.valueOf());if(moment.isMoment(t))return new Date(t.valueOf());if(exports.isString(t))return i=ASPDateRegex.exec(t),i?new Date(Number(i[1])):moment(t).toDate();throw new Error("Cannot convert object of type "+exports.getType(t)+" to type Date");case"Moment":if(exports.isNumber(t))return moment(t);if(t instanceof Date)return moment(t.valueOf());if(moment.isMoment(t))return moment(t);if(exports.isString(t))return i=ASPDateRegex.exec(t),moment(i?Number(i[1]):t);throw new Error("Cannot convert object of type "+exports.getType(t)+" to type Date");case"ISODate":if(exports.isNumber(t))return new Date(t);if(t instanceof Date)return t.toISOString();if(moment.isMoment(t))return t.toDate().toISOString();if(exports.isString(t))return i=ASPDateRegex.exec(t),i?new Date(Number(i[1])).toISOString():new Date(t).toISOString();throw new Error("Cannot convert object of type "+exports.getType(t)+" to type ISODate");case"ASPDate":if(exports.isNumber(t))return"/Date("+t+")/";if(t instanceof Date)return"/Date("+t.valueOf()+")/";if(exports.isString(t)){i=ASPDateRegex.exec(t);var s;return s=i?new Date(Number(i[1])).valueOf():new Date(t).valueOf(),"/Date("+s+")/"}throw new Error("Cannot convert object of type "+exports.getType(t)+" to type ASPDate");default:throw new Error('Unknown type "'+e+'"')}};var ASPDateRegex=/^\/?Date\((\-?\d+)/i;exports.getType=function(t){var e=typeof t;return"object"==e?null==t?"null":t instanceof Boolean?"Boolean":t instanceof Number?"Number":t instanceof String?"String":Array.isArray(t)?"Array":t instanceof Date?"Date":"Object":"number"==e?"Number":"boolean"==e?"Boolean":"string"==e?"String":e},exports.getAbsoluteLeft=function(t){return t.getBoundingClientRect().left+window.pageXOffset},exports.getAbsoluteTop=function(t){return t.getBoundingClientRect().top+window.pageYOffset},exports.addClassName=function(t,e){var i=t.className.split(" ");-1==i.indexOf(e)&&(i.push(e),t.className=i.join(" "))},exports.removeClassName=function(t,e){var i=t.className.split(" "),s=i.indexOf(e);-1!=s&&(i.splice(s,1),t.className=i.join(" "))},exports.forEach=function(t,e){var i,s;if(Array.isArray(t))for(i=0,s=t.length;s>i;i++)e(t[i],i,t);else for(i in t)t.hasOwnProperty(i)&&e(t[i],i,t)},exports.toArray=function(t){var e=[];for(var i in t)t.hasOwnProperty(i)&&e.push(t[i]);return e},exports.updateProperty=function(t,e,i){return t[e]!==i?(t[e]=i,!0):!1},exports.addEventListener=function(t,e,i,s){t.addEventListener?(void 0===s&&(s=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.addEventListener(e,i,s)):t.attachEvent("on"+e,i)},exports.removeEventListener=function(t,e,i,s){t.removeEventListener?(void 0===s&&(s=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.removeEventListener(e,i,s)):t.detachEvent("on"+e,i)},exports.preventDefault=function(t){t||(t=window.event),t.preventDefault?t.preventDefault():t.returnValue=!1},exports.getTarget=function(t){t||(t=window.event);var e;return t.target?e=t.target:t.srcElement&&(e=t.srcElement),void 0!=e.nodeType&&3==e.nodeType&&(e=e.parentNode),e},exports.option={},exports.option.asBoolean=function(t,e){return"function"==typeof t&&(t=t()),null!=t?0!=t:e||null},exports.option.asNumber=function(t,e){return"function"==typeof t&&(t=t()),null!=t?Number(t)||e||null:e||null},exports.option.asString=function(t,e){return"function"==typeof t&&(t=t()),null!=t?String(t):e||null},exports.option.asSize=function(t,e){return"function"==typeof t&&(t=t()),exports.isString(t)?t:exports.isNumber(t)?t+"px":e||null},exports.option.asElement=function(t,e){return"function"==typeof t&&(t=t()),t||e||null},exports.GiveDec=function(Hex){var Value;return Value="A"==Hex?10:"B"==Hex?11:"C"==Hex?12:"D"==Hex?13:"E"==Hex?14:"F"==Hex?15:eval(Hex)},exports.GiveHex=function(t){var e;return e=10==t?"A":11==t?"B":12==t?"C":13==t?"D":14==t?"E":15==t?"F":""+t},exports.parseColor=function(t){var e;if(exports.isString(t)){if(exports.isValidRGB(t)){var i=t.substr(4).substr(0,t.length-5).split(",");t=exports.RGBToHex(i[0],i[1],i[2])}if(exports.isValidHex(t)){var s=exports.hexToHSV(t),o={h:s.h,s:.45*s.s,v:Math.min(1,1.05*s.v)},n={h:s.h,s:Math.min(1,1.25*s.v),v:.6*s.v},r=exports.HSVToHex(n.h,n.h,n.v),a=exports.HSVToHex(o.h,o.s,o.v);e={background:t,border:r,highlight:{background:a,border:r},hover:{background:a,border:r}}}else e={background:t,border:t,highlight:{background:t,border:t},hover:{background:t,border:t}}}else e={},e.background=t.background||"white",e.border=t.border||e.background,exports.isString(t.highlight)?e.highlight={border:t.highlight,background:t.highlight}:(e.highlight={},e.highlight.background=t.highlight&&t.highlight.background||e.background,e.highlight.border=t.highlight&&t.highlight.border||e.border),exports.isString(t.hover)?e.hover={border:t.hover,background:t.hover}:(e.hover={},e.hover.background=t.hover&&t.hover.background||e.background,e.hover.border=t.hover&&t.hover.border||e.border);return e},exports.hexToRGB=function(t){t=t.replace("#","").toUpperCase();var e=exports.GiveDec(t.substring(0,1)),i=exports.GiveDec(t.substring(1,2)),s=exports.GiveDec(t.substring(2,3)),o=exports.GiveDec(t.substring(3,4)),n=exports.GiveDec(t.substring(4,5)),r=exports.GiveDec(t.substring(5,6)),a=16*e+i,h=16*s+o,i=16*n+r;return{r:a,g:h,b:i}},exports.RGBToHex=function(t,e,i){var s=exports.GiveHex(Math.floor(t/16)),o=exports.GiveHex(t%16),n=exports.GiveHex(Math.floor(e/16)),r=exports.GiveHex(e%16),a=exports.GiveHex(Math.floor(i/16)),h=exports.GiveHex(i%16),d=s+o+n+r+a+h;return"#"+d},exports.RGBToHSV=function(t,e,i){t/=255,e/=255,i/=255;var s=Math.min(t,Math.min(e,i)),o=Math.max(t,Math.max(e,i));if(s==o)return{h:0,s:0,v:s};var n=t==s?e-i:i==s?t-e:i-t,r=t==s?3:i==s?1:5,a=60*(r-n/(o-s))/360,h=(o-s)/o,d=o;return{h:a,s:h,v:d}};var cssUtil={split:function(t){var e={};return t.split(";").forEach(function(t){if(""!=t.trim()){var i=t.split(":"),s=i[0].trim(),o=i[1].trim();e[s]=o}}),e},join:function(t){return Object.keys(t).map(function(e){return e+": "+t[e]}).join("; ")}};exports.addCssText=function(t,e){var i=cssUtil.split(t.style.cssText),s=cssUtil.split(e),o=exports.extend(i,s);t.style.cssText=cssUtil.join(o)},exports.removeCssText=function(t,e){var i=cssUtil.split(t.style.cssText),s=cssUtil.split(e);for(var o in s)s.hasOwnProperty(o)&&delete i[o];t.style.cssText=cssUtil.join(i)},exports.HSVToRGB=function(t,e,i){var s,o,n,r=Math.floor(6*t),a=6*t-r,h=i*(1-e),d=i*(1-a*e),l=i*(1-(1-a)*e);switch(r%6){case 0:s=i,o=l,n=h;break;case 1:s=d,o=i,n=h;break;case 2:s=h,o=i,n=l;break;case 3:s=h,o=d,n=i;break;case 4:s=l,o=h,n=i;break;case 5:s=i,o=h,n=d}return{r:Math.floor(255*s),g:Math.floor(255*o),b:Math.floor(255*n)}},exports.HSVToHex=function(t,e,i){var s=exports.HSVToRGB(t,e,i);return exports.RGBToHex(s.r,s.g,s.b)},exports.hexToHSV=function(t){var e=exports.hexToRGB(t);return exports.RGBToHSV(e.r,e.g,e.b)},exports.isValidHex=function(t){var e=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t);return e},exports.isValidRGB=function(t){t=t.replace(" ","");var e=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/i.test(t);return e},exports.selectiveBridgeObject=function(t,e){if("object"==typeof e){for(var i=Object.create(e),s=0;s=r&&o>n;){var h=Math.floor((r+a)/2),d=t[h],l=void 0===s?d[i]:d[i][s],c=e(l);if(0==c)return h;-1==c?r=h+1:a=h-1,n++}return-1},exports.binarySearchValue=function(t,e,i,s){for(var o,n,r,a,h=1e4,d=0,l=0,c=t.length-1;c>=l&&h>d;){if(a=Math.floor(.5*(c+l)),o=t[Math.max(0,a-1)][i],n=t[a][i],r=t[Math.min(t.length-1,a+1)][i],n==e)return a;if(e>o&&n>e)return"before"==s?Math.max(0,a-1):a;if(e>n&&r>e)return"before"==s?a:Math.min(t.length-1,a+1);e>n?l=a+1:c=a-1,d++}return-1},exports.easeInOutQuad=function(t,e,i,s){var o=i-e;return t/=s/2,1>t?o/2*t*t+e:(t--,-o/2*(t*(t-2)-1)+e)},exports.easingFunctions={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return t*(2-t)},easeInOutQuad:function(t){return.5>t?2*t*t:-1+(4-2*t)*t},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return--t*t*t+1},easeInOutCubic:function(t){return.5>t?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return 1- --t*t*t*t},easeInOutQuart:function(t){return.5>t?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return 1+--t*t*t*t*t},easeInOutQuint:function(t){return.5>t?16*t*t*t*t*t:1+16*--t*t*t*t*t}}},function(t,e){e.prepareElements=function(t){for(var e in t)t.hasOwnProperty(e)&&(t[e].redundant=t[e].used,t[e].used=[])},e.cleanupElements=function(t){for(var e in t)if(t.hasOwnProperty(e)&&t[e].redundant){for(var i=0;i0?(s=e[t].redundant[0],e[t].redundant.shift()):(s=document.createElementNS("http://www.w3.org/2000/svg",t),i.appendChild(s)):(s=document.createElementNS("http://www.w3.org/2000/svg",t),e[t]={used:[],redundant:[]},i.appendChild(s)),e[t].used.push(s),s},e.getDOMElement=function(t,e,i,s){var o;return e.hasOwnProperty(t)?e[t].redundant.length>0?(o=e[t].redundant[0],e[t].redundant.shift()):(o=document.createElement(t),void 0!==s?i.insertBefore(o,s):i.appendChild(o)):(o=document.createElement(t),e[t]={used:[],redundant:[]},void 0!==s?i.insertBefore(o,s):i.appendChild(o)),e[t].used.push(o),o},e.drawPoint=function(t,i,s,o,n){var r;return"circle"==s.options.drawPoints.style?(r=e.getSVGElement("circle",o,n),r.setAttributeNS(null,"cx",t),r.setAttributeNS(null,"cy",i),r.setAttributeNS(null,"r",.5*s.options.drawPoints.size)):(r=e.getSVGElement("rect",o,n),r.setAttributeNS(null,"x",t-.5*s.options.drawPoints.size),r.setAttributeNS(null,"y",i-.5*s.options.drawPoints.size),r.setAttributeNS(null,"width",s.options.drawPoints.size),r.setAttributeNS(null,"height",s.options.drawPoints.size)),void 0!==s.options.drawPoints.styles&&r.setAttributeNS(null,"style",s.group.options.drawPoints.styles),r.setAttributeNS(null,"class",s.className+" point"),r},e.drawBar=function(t,i,s,o,n,r,a){if(0!=o){0>o&&(o*=-1,i-=o);var h=e.getSVGElement("rect",r,a);h.setAttributeNS(null,"x",t-.5*s),h.setAttributeNS(null,"y",i),h.setAttributeNS(null,"width",s),h.setAttributeNS(null,"height",o),h.setAttributeNS(null,"class",n)}}},function(t,e,i){function s(t,e){if(!t||Array.isArray(t)||o.isDataTable(t)||(e=t,t=null),this._options=e||{},this._data={},this._fieldId=this._options.fieldId||"id",this._type={},this._options.type)for(var i in this._options.type)if(this._options.type.hasOwnProperty(i)){var s=this._options.type[i];this._type[i]="Date"==s||"ISODate"==s||"ASPDate"==s?"Date":s}if(this._options.convert)throw new Error('Option "convert" is deprecated. Use "type" instead.');this._subscribers={},t&&this.add(t),this.setOptions(e)}var o=i(1),n=i(5);s.prototype.setOptions=function(t){t&&void 0!==t.queue&&(t.queue===!1?this._queue&&(this._queue.destroy(),delete this._queue):(this._queue||(this._queue=n.extend(this,{replace:["add","update","remove"]})),"object"==typeof t.queue&&this._queue.setOptions(t.queue)))},s.prototype.on=function(t,e){var i=this._subscribers[t];i||(i=[],this._subscribers[t]=i),i.push({callback:e})},s.prototype.subscribe=s.prototype.on,s.prototype.off=function(t,e){var i=this._subscribers[t];i&&(this._subscribers[t]=i.filter(function(t){return t.callback!=e}))},s.prototype.unsubscribe=s.prototype.off,s.prototype._trigger=function(t,e,i){if("*"==t)throw new Error("Cannot trigger event *");var s=[];t in this._subscribers&&(s=s.concat(this._subscribers[t])),"*"in this._subscribers&&(s=s.concat(this._subscribers["*"]));for(var o=0;or;r++)i=n._addItem(t[r]),s.push(i);else if(o.isDataTable(t))for(var h=this._getColumnNames(t),d=0,l=t.getNumberOfRows();l>d;d++){for(var c={},p=0,u=h.length;u>p;p++){var m=h[p];c[m]=t.getValue(d,p)}i=n._addItem(c),s.push(i)}else{if(!(t instanceof Object))throw new Error("Unknown dataType");i=n._addItem(t),s.push(i)}return s.length&&this._trigger("add",{items:s},e),s},s.prototype.update=function(t,e){var i=[],s=[],n=[],r=this,a=r._fieldId,h=function(t){var e=t[a];r._data[e]?(e=r._updateItem(t),s.push(e),n.push(t)):(e=r._addItem(t),i.push(e))};if(Array.isArray(t))for(var d=0,l=t.length;l>d;d++)h(t[d]);else if(o.isDataTable(t))for(var c=this._getColumnNames(t),p=0,u=t.getNumberOfRows();u>p;p++){for(var m={},f=0,g=c.length;g>f;f++){var v=c[f];m[v]=t.getValue(p,f)}h(m)}else{if(!(t instanceof Object))throw new Error("Unknown dataType");h(t)}return i.length&&this._trigger("add",{items:i},e),s.length&&this._trigger("update",{items:s,data:n},e),i.concat(s)},s.prototype.get=function(){var t,e,i,s,n=this,r=o.getType(arguments[0]);"String"==r||"Number"==r?(t=arguments[0],i=arguments[1],s=arguments[2]):"Array"==r?(e=arguments[0],i=arguments[1],s=arguments[2]):(i=arguments[0],s=arguments[1]);var a;if(i&&i.returnType){var h=["DataTable","Array","Object"];if(a=-1==h.indexOf(i.returnType)?"Array":i.returnType,s&&a!=o.getType(s))throw new Error('Type of parameter "data" ('+o.getType(s)+") does not correspond with specified options.type ("+i.type+")");if("DataTable"==a&&!o.isDataTable(s))throw new Error('Parameter "data" must be a DataTable when options.type is "DataTable"')}else a=s&&"DataTable"==o.getType(s)?"DataTable":"Array";var d,l,c,p,u=i&&i.type||this._options.type,m=i&&i.filter,f=[];if(void 0!=t)d=n._getItem(t,u),m&&!m(d)&&(d=null);else if(void 0!=e)for(c=0,p=e.length;p>c;c++)d=n._getItem(e[c],u),(!m||m(d))&&f.push(d);else for(l in this._data)this._data.hasOwnProperty(l)&&(d=n._getItem(l,u),(!m||m(d))&&f.push(d));if(i&&i.order&&void 0==t&&this._sort(f,i.order),i&&i.fields){var g=i.fields;if(void 0!=t)d=this._filterFields(d,g);else for(c=0,p=f.length;p>c;c++)f[c]=this._filterFields(f[c],g)}if("DataTable"==a){var v=this._getColumnNames(s);if(void 0!=t)n._appendRow(s,v,d);else for(c=0;cc;c++)s.push(f[c]);return s}return f},s.prototype.getIds=function(t){var e,i,s,o,n,r=this._data,a=t&&t.filter,h=t&&t.order,d=t&&t.type||this._options.type,l=[];if(a)if(h){n=[];for(s in r)r.hasOwnProperty(s)&&(o=this._getItem(s,d),a(o)&&n.push(o));for(this._sort(n,h),e=0,i=n.length;i>e;e++)l[e]=n[e][this._fieldId]}else for(s in r)r.hasOwnProperty(s)&&(o=this._getItem(s,d),a(o)&&l.push(o[this._fieldId]));else if(h){n=[];for(s in r)r.hasOwnProperty(s)&&n.push(r[s]);for(this._sort(n,h),e=0,i=n.length;i>e;e++)l[e]=n[e][this._fieldId]}else for(s in r)r.hasOwnProperty(s)&&(o=r[s],l.push(o[this._fieldId]));return l},s.prototype.getDataSet=function(){return this},s.prototype.forEach=function(t,e){var i,s,o=e&&e.filter,n=e&&e.type||this._options.type,r=this._data;if(e&&e.order)for(var a=this.get(e),h=0,d=a.length;d>h;h++)i=a[h],s=i[this._fieldId],t(i,s);else for(s in r)r.hasOwnProperty(s)&&(i=this._getItem(s,n),(!o||o(i))&&t(i,s))},s.prototype.map=function(t,e){var i,s=e&&e.filter,o=e&&e.type||this._options.type,n=[],r=this._data;for(var a in r)r.hasOwnProperty(a)&&(i=this._getItem(a,o),(!s||s(i))&&n.push(t(i,a)));return e&&e.order&&this._sort(n,e.order),n},s.prototype._filterFields=function(t,e){var i={};for(var s in t)t.hasOwnProperty(s)&&-1!=e.indexOf(s)&&(i[s]=t[s]);return i},s.prototype._sort=function(t,e){if(o.isString(e)){var i=e;t.sort(function(t,e){var s=t[i],o=e[i];return s>o?1:o>s?-1:0})}else{if("function"!=typeof e)throw new TypeError("Order must be a function or a string");t.sort(e)}},s.prototype.remove=function(t,e){var i,s,o,n=[];if(Array.isArray(t))for(i=0,s=t.length;s>i;i++)o=this._remove(t[i]),null!=o&&n.push(o);else o=this._remove(t),null!=o&&n.push(o);return n.length&&this._trigger("remove",{items:n},e),n},s.prototype._remove=function(t){if(o.isNumber(t)||o.isString(t)){if(this._data[t])return delete this._data[t],t}else if(t instanceof Object){var e=t[this._fieldId];if(e&&this._data[e])return delete this._data[e],e}return null},s.prototype.clear=function(t){var e=Object.keys(this._data);return this._data={},this._trigger("remove",{items:e},t),e},s.prototype.max=function(t){var e=this._data,i=null,s=null;for(var o in e)if(e.hasOwnProperty(o)){var n=e[o],r=n[t];null!=r&&(!i||r>s)&&(i=n,s=r)}return i},s.prototype.min=function(t){var e=this._data,i=null,s=null;for(var o in e)if(e.hasOwnProperty(o)){var n=e[o],r=n[t];null!=r&&(!i||s>r)&&(i=n,s=r)}return i},s.prototype.distinct=function(t){var e,i=this._data,s=[],n=this._options.type&&this._options.type[t]||null,r=0;for(var a in i)if(i.hasOwnProperty(a)){var h=i[a],d=h[t],l=!1;for(e=0;r>e;e++)if(s[e]==d){l=!0;break}l||void 0===d||(s[r]=d,r++)}if(n)for(e=0;ei;i++)e[i]=t.getColumnId(i)||t.getColumnLabel(i);return e},s.prototype._appendRow=function(t,e,i){for(var s=t.addRow(),o=0,n=e.length;n>o;o++){var r=e[o];t.setValue(s,o,i[r])}},t.exports=s},function(t,e,i){function s(t,e){this._data=null,this._ids={},this._options=e||{},this._fieldId="id",this._subscribers={};var i=this;this.listener=function(){i._onEvent.apply(i,arguments)},this.setData(t)}var o=i(1),n=i(3);s.prototype.setData=function(t){var e,i,s;if(this._data){this._data.unsubscribe&&this._data.unsubscribe("*",this.listener),e=[];for(var o in this._ids)this._ids.hasOwnProperty(o)&&e.push(o);this._ids={},this._trigger("remove",{items:e})}if(this._data=t,this._data){for(this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||"id",e=this._data.getIds({filter:this._options&&this._options.filter}),i=0,s=e.length;s>i;i++)o=e[i],this._ids[o]=!0;this._trigger("add",{items:e}),this._data.on&&this._data.on("*",this.listener)}},s.prototype.get=function(){var t,e,i,s=this,n=o.getType(arguments[0]);"String"==n||"Number"==n||"Array"==n?(t=arguments[0],e=arguments[1],i=arguments[2]):(e=arguments[0],i=arguments[1]);var r=o.extend({},this._options,e);this._options.filter&&e&&e.filter&&(r.filter=function(t){return s._options.filter(t)&&e.filter(t)});var a=[];return void 0!=t&&a.push(t),a.push(r),a.push(i),this._data&&this._data.get.apply(this._data,a)},s.prototype.getIds=function(t){var e;if(this._data){var i,s=this._options.filter;i=t&&t.filter?s?function(e){return s(e)&&t.filter(e)}:t.filter:s,e=this._data.getIds({filter:i,order:t&&t.order})}else e=[];return e},s.prototype.getDataSet=function(){for(var t=this;t instanceof s;)t=t._data;return t||null},s.prototype._onEvent=function(t,e,i){var s,o,n,r,a=e&&e.items,h=this._data,d=[],l=[],c=[];if(a&&h){switch(t){case"add":for(s=0,o=a.length;o>s;s++)n=a[s],r=this.get(n),r&&(this._ids[n]=!0,d.push(n));break;case"update":for(s=0,o=a.length;o>s;s++)n=a[s],r=this.get(n),r?this._ids[n]?l.push(n):(this._ids[n]=!0,d.push(n)):this._ids[n]&&(delete this._ids[n],c.push(n));break;case"remove":for(s=0,o=a.length;o>s;s++)n=a[s],this._ids[n]&&(delete this._ids[n],c.push(n))}d.length&&this._trigger("add",{items:d},i),l.length&&this._trigger("update",{items:l},i),c.length&&this._trigger("remove",{items:c},i)}},s.prototype.on=n.prototype.on,s.prototype.off=n.prototype.off,s.prototype._trigger=n.prototype._trigger,s.prototype.subscribe=s.prototype.on,s.prototype.unsubscribe=s.prototype.off,t.exports=s},function(t){function e(t){this.delay=null,this.max=1/0,this._queue=[],this._timeout=null,this._extended=null,this.setOptions(t)}e.prototype.setOptions=function(t){t&&"undefined"!=typeof t.delay&&(this.delay=t.delay),t&&"undefined"!=typeof t.max&&(this.max=t.max),this._flushIfNeeded()},e.extend=function(t,i){var s=new e(i);if(void 0!==t.flush)throw new Error("Target object already has a property flush");t.flush=function(){s.flush()};var o=[{name:"flush",original:void 0}];if(i&&i.replace)for(var n=0;nthis.max&&this.flush(),clearTimeout(this._timeout),this.queue.length>0&&"number"==typeof this.delay){var t=this;this._timeout=setTimeout(function(){t.flush()},this.delay)}},e.prototype.flush=function(){for(;this._queue.length>0;){var t=this._queue.shift();t.fn.apply(t.context||t.fn,t.args||[])}},t.exports=e},function(t,e,i){function s(t,e,i){if(!(this instanceof s))throw new SyntaxError("Constructor must be called with the new operator");this.containerElement=t,this.width="400px",this.height="400px",this.margin=10,this.defaultXCenter="55%",this.defaultYCenter="50%",this.xLabel="x",this.yLabel="y",this.zLabel="z";var o=function(t){return t};this.xValueLabel=o,this.yValueLabel=o,this.zValueLabel=o,this.filterLabel="time",this.legendLabel="value",this.style=s.STYLE.DOT,this.showPerspective=!0,this.showGrid=!0,this.keepAspectRatio=!0,this.showShadow=!1,this.showGrayBottom=!1,this.showTooltip=!1,this.verticalRatio=.5,this.animationInterval=1e3,this.animationPreload=!1,this.camera=new p,this.eye=new l(0,0,-1),this.dataTable=null,this.dataPoints=null,this.colX=void 0,this.colY=void 0,this.colZ=void 0,this.colValue=void 0,this.colFilter=void 0,this.xMin=0,this.xStep=void 0,this.xMax=1,this.yMin=0,this.yStep=void 0,this.yMax=1,this.zMin=0,this.zStep=void 0,this.zMax=1,this.valueMin=0,this.valueMax=1,this.xBarWidth=1,this.yBarWidth=1,this.colorAxis="#4D4D4D",this.colorGrid="#D3D3D3",this.colorDot="#7DC1FF",this.colorDotBorder="#3267D2",this.create(),this.setOptions(i),e&&this.setData(e)}function o(t){return"clientX"in t?t.clientX:t.targetTouches[0]&&t.targetTouches[0].clientX||0}function n(t){return"clientY"in t?t.clientY:t.targetTouches[0]&&t.targetTouches[0].clientY||0}var r=i(56),a=i(3),h=i(4),d=i(1),l=i(10),c=i(9),p=i(7),u=i(8),m=i(11),f=i(12);r(s.prototype),s.prototype._setScale=function(){this.scale=new l(1/(this.xMax-this.xMin),1/(this.yMax-this.yMin),1/(this.zMax-this.zMin)),this.keepAspectRatio&&(this.scale.x3&&(this.colFilter=3);else{if(this.style!==s.STYLE.DOTCOLOR&&this.style!==s.STYLE.DOTSIZE&&this.style!==s.STYLE.BARCOLOR&&this.style!==s.STYLE.BARSIZE)throw'Unknown style "'+this.style+'"';this.colX=0,this.colY=1,this.colZ=2,this.colValue=3,t.getNumberOfColumns()>4&&(this.colFilter=4)}},s.prototype.getNumberOfRows=function(t){return t.length},s.prototype.getNumberOfColumns=function(t){var e=0;for(var i in t[0])t[0].hasOwnProperty(i)&&e++;return e},s.prototype.getDistinctValues=function(t,e){for(var i=[],s=0;st[s][e]&&(i.min=t[s][e]),i.maxt;t++){var m=(t-p)/(u-p),g=240*m,v=this._hsv2rgb(g,1,1);c.strokeStyle=v,c.beginPath(),c.moveTo(h,r+t),c.lineTo(a,r+t),c.stroke()}c.strokeStyle=this.colorAxis,c.strokeRect(h,r,i,n)}if(this.style===s.STYLE.DOTSIZE&&(c.strokeStyle=this.colorAxis,c.fillStyle=this.colorDot,c.beginPath(),c.moveTo(h,r),c.lineTo(a,r),c.lineTo(a-i+e,d),c.lineTo(h,d),c.closePath(),c.fill(),c.stroke()),this.style===s.STYLE.DOTCOLOR||this.style===s.STYLE.DOTSIZE){var y=5,b=new f(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,o=this._convert3Dto2D(new l(x,r,this.zMin)),Math.cos(2*_)>0?(g.textAlign="center",g.textBaseline="top",o.y+=b):Math.sin(2*_)<0?(g.textAlign="right",g.textBaseline="middle"):(g.textAlign="left",g.textBaseline="middle"),g.fillStyle=this.colorAxis,g.fillText(" "+this.xValueLabel(i.getCurrent())+" ",o.x,o.y),i.next()}for(g.lineWidth=1,s=void 0===this.defaultYStep,i=new f(this.yMin,this.yMax,this.yStep,s),i.start(),i.getCurrent()0?this.xMin:this.xMax,o=this._convert3Dto2D(new l(n,i.getCurrent(),this.zMin)),Math.cos(2*_)<0?(g.textAlign="center",g.textBaseline="top",o.y+=b):Math.sin(2*_)>0?(g.textAlign="right",g.textBaseline="middle"):(g.textAlign="left",g.textBaseline="middle"),g.fillStyle=this.colorAxis,g.fillText(" "+this.yValueLabel(i.getCurrent())+" ",o.x,o.y),i.next();for(g.lineWidth=1,s=void 0===this.defaultZStep,i=new f(this.zMin,this.zMax,this.zStep,s),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new l(n,r,i.getCurrent())),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(t.x,t.y),g.lineTo(t.x-b,t.y),g.stroke(),g.textAlign="right",g.textBaseline="middle",g.fillStyle=this.colorAxis,g.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();g.lineWidth=1,t=this._convert3Dto2D(new l(n,r,this.zMin)),e=this._convert3Dto2D(new l(n,r,this.zMax)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(t.x,t.y),g.lineTo(e.x,e.y),g.stroke(),g.lineWidth=1,p=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),u=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(p.x,p.y),g.lineTo(u.x,u.y),g.stroke(),p=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),u=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(p.x,p.y),g.lineTo(u.x,u.y),g.stroke(),g.lineWidth=1,t=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(t.x,t.y),g.lineTo(e.x,e.y),g.stroke(),t=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(t.x,t.y),g.lineTo(e.x,e.y),g.stroke();var w=this.xLabel;w.length>0&&(c=.1/this.scale.y,n=(this.xMin+this.xMax)/2,r=Math.cos(_)>0?this.yMin-c:this.yMax+c,o=this._convert3Dto2D(new l(n,r,this.zMin)),Math.cos(2*_)>0?(g.textAlign="center",g.textBaseline="top"):Math.sin(2*_)<0?(g.textAlign="right",g.textBaseline="middle"):(g.textAlign="left",g.textBaseline="middle"),g.fillStyle=this.colorAxis,g.fillText(w,o.x,o.y));var D=this.yLabel;D.length>0&&(d=.1/this.scale.x,n=Math.sin(_)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,o=this._convert3Dto2D(new l(n,r,this.zMin)),Math.cos(2*_)<0?(g.textAlign="center",g.textBaseline="top"):Math.sin(2*_)>0?(g.textAlign="right",g.textBaseline="middle"):(g.textAlign="left",g.textBaseline="middle"),g.fillStyle=this.colorAxis,g.fillText(D,o.x,o.y));var M=this.zLabel;M.length>0&&(h=30,n=Math.cos(_)>0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,o=this._convert3Dto2D(new l(n,r,a)),g.textAlign="right",g.textBaseline="middle",g.fillStyle=this.colorAxis,g.fillText(M,o.x-h,o.y))},s.prototype._hsv2rgb=function(t,e,i){var s,o,n,r,a,h;switch(r=i*e,a=Math.floor(t/60),h=r*(1-Math.abs(t/60%2-1)),a){case 0:s=r,o=h,n=0;break;case 1:s=h,o=r,n=0;break;case 2:s=0,o=r,n=h;break;case 3:s=0,o=h,n=r;break;case 4:s=h,o=0,n=r;break;case 5:s=r,o=0,n=h;break;default:s=0,o=0,n=0}return"RGB("+parseInt(255*s)+","+parseInt(255*o)+","+parseInt(255*n)+")"},s.prototype._redrawDataGrid=function(){var t,e,i,o,n,r,a,h,d,c,p,u,m,f=this.frame.canvas,g=f.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(n=0;n0}else r=!0;r?(m=(t.point.z+e.point.z+i.point.z+o.point.z)/4,c=240*(1-(m-this.zMin)*this.scale.z/this.verticalRatio),p=1,this.showShadow?(u=Math.min(1+D.x/M/2,1),a=this._hsv2rgb(c,p,u),h=a):(u=1,a=this._hsv2rgb(c,p,u),h=this.colorAxis)):(a="gray",h=this.colorAxis),d=.5,g.lineWidth=d,g.fillStyle=a,g.strokeStyle=h,g.beginPath(),g.moveTo(t.screen.x,t.screen.y),g.lineTo(e.screen.x,e.screen.y),g.lineTo(o.screen.x,o.screen.y),g.lineTo(i.screen.x,i.screen.y),g.closePath(),g.fill(),g.stroke()}}else for(n=0;np&&(p=0);var u,m,f;this.style===s.STYLE.DOTCOLOR?(u=240*(1-(d.point.value-this.valueMin)*this.scale.value),m=this._hsv2rgb(u,1,1),f=this._hsv2rgb(u,1,.8)):this.style===s.STYLE.DOTSIZE?(m=this.colorDot,f=this.colorDotBorder):(u=240*(1-(d.point.z-this.zMin)*this.scale.z/this.verticalRatio),m=this._hsv2rgb(u,1,1),f=this._hsv2rgb(u,1,.8)),i.lineWidth=1,i.strokeStyle=f,i.fillStyle=m,i.beginPath(),i.arc(d.screen.x,d.screen.y,p,0,2*Math.PI,!0),i.fill(),i.stroke()}}},s.prototype._redrawDataBar=function(){var t,e,i,o,n=this.frame.canvas,r=n.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(t=0;t0&&(t=this.dataPoints[0],s.lineWidth=1,s.strokeStyle="blue",s.beginPath(),s.moveTo(t.screen.x,t.screen.y)),e=1;e0&&s.stroke()}},s.prototype._onMouseDown=function(t){if(t=t||window.event,this.leftButtonDown&&this._onMouseUp(t),this.leftButtonDown=t.which?1===t.which:1===t.button,this.leftButtonDown||this.touchDown){this.startMouseX=o(t),this.startMouseY=n(t),this.startStart=new Date(this.start),this.startEnd=new Date(this.end),this.startArmRotation=this.camera.getArmRotation(),this.frame.style.cursor="move";var e=this;this.onmousemove=function(t){e._onMouseMove(t)},this.onmouseup=function(t){e._onMouseUp(t)},d.addEventListener(document,"mousemove",e.onmousemove),d.addEventListener(document,"mouseup",e.onmouseup),d.preventDefault(t)}},s.prototype._onMouseMove=function(t){t=t||window.event;var e=parseFloat(o(t))-this.startMouseX,i=parseFloat(n(t))-this.startMouseY,s=this.startArmRotation.horizontal+e/200,r=this.startArmRotation.vertical+i/200,a=4,h=Math.sin(a/360*2*Math.PI);Math.abs(Math.sin(s))0?1:0>t?-1:0}var s=e[0],o=e[1],n=e[2],r=i((o.x-s.x)*(t.y-s.y)-(o.y-s.y)*(t.x-s.x)),a=i((n.x-o.x)*(t.y-o.y)-(n.y-o.y)*(t.x-o.x)),h=i((s.x-n.x)*(t.y-n.y)-(s.y-n.y)*(t.x-n.x));return!(0!=r&&0!=a&&r!=a||0!=a&&0!=h&&a!=h||0!=r&&0!=h&&r!=h)},s.prototype._dataPointFromXY=function(t,e){var i,o=100,n=null,r=null,a=null,h=new c(t,e);if(this.style===s.STYLE.BAR||this.style===s.STYLE.BARCOLOR||this.style===s.STYLE.BARSIZE)for(i=this.dataPoints.length-1;i>=0;i--){n=this.dataPoints[i];var d=n.surfaces;if(d)for(var l=d.length-1;l>=0;l--){var p=d[l],u=p.corners,m=[u[0].screen,u[1].screen,u[2].screen],f=[u[2].screen,u[3].screen,u[0].screen];if(this._insideTriangle(h,m)||this._insideTriangle(h,f))return n}}else for(i=0;ib)&&o>b&&(a=b,r=n)}}return r},s.prototype._showTooltip=function(t){var e,i,s;this.tooltip?(e=this.tooltip.dom.content,i=this.tooltip.dom.line,s=this.tooltip.dom.dot):(e=document.createElement("div"),e.style.position="absolute",e.style.padding="10px",e.style.border="1px solid #4d4d4d",e.style.color="#1a1a1a",e.style.background="rgba(255,255,255,0.7)",e.style.borderRadius="2px",e.style.boxShadow="5px 5px 10px rgba(128,128,128,0.5)",i=document.createElement("div"),i.style.position="absolute",i.style.height="40px",i.style.width="0",i.style.borderLeft="1px solid #4d4d4d",s=document.createElement("div"),s.style.position="absolute",s.style.height="0",s.style.width="0",s.style.border="5px solid #4d4d4d",s.style.borderRadius="5px",this.tooltip={dataPoint:null,dom:{content:e,line:i,dot:s}}),this._hideTooltip(),this.tooltip.dataPoint=t,e.innerHTML="function"==typeof this.showTooltip?this.showTooltip(t.point):"
x:"+t.point.x+"
y:"+t.point.y+"
z:"+t.point.z+"
",e.style.left="0",e.style.top="0",this.frame.appendChild(e),this.frame.appendChild(i),this.frame.appendChild(s);var o=e.offsetWidth,n=e.offsetHeight,r=i.offsetHeight,a=s.offsetWidth,h=s.offsetHeight,d=t.screen.x-o/2;d=Math.min(Math.max(d,10),this.frame.clientWidth-10-o),i.style.left=t.screen.x+"px",i.style.top=t.screen.y-r+"px",e.style.left=d+"px",e.style.top=t.screen.y-r-n+"px",s.style.left=t.screen.x-a/2+"px",s.style.top=t.screen.y-h/2+"px"},s.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var t in this.tooltip.dom)if(this.tooltip.dom.hasOwnProperty(t)){var e=this.tooltip.dom[t];e&&e.parentNode&&e.parentNode.removeChild(e)}}},t.exports=s},function(t,e,i){function s(){this.armLocation=new o,this.armRotation={},this.armRotation.horizontal=0,this.armRotation.vertical=0,this.armLength=1.7,this.cameraLocation=new o,this.cameraRotation=new o(.5*Math.PI,0,0),this.calculateCameraOrientation()}var o=i(10);s.prototype.setArmLocation=function(t,e,i){this.armLocation.x=t,this.armLocation.y=e,this.armLocation.z=i,this.calculateCameraOrientation()},s.prototype.setArmRotation=function(t,e){void 0!==t&&(this.armRotation.horizontal=t),void 0!==e&&(this.armRotation.vertical=e,this.armRotation.vertical<0&&(this.armRotation.vertical=0),this.armRotation.vertical>.5*Math.PI&&(this.armRotation.vertical=.5*Math.PI)),(void 0!==t||void 0!==e)&&this.calculateCameraOrientation()},s.prototype.getArmRotation=function(){var t={};return t.horizontal=this.armRotation.horizontal,t.vertical=this.armRotation.vertical,t},s.prototype.setArmLength=function(t){void 0!==t&&(this.armLength=t,this.armLength<.71&&(this.armLength=.71),this.armLength>5&&(this.armLength=5),this.calculateCameraOrientation())},s.prototype.getArmLength=function(){return this.armLength},s.prototype.getCameraLocation=function(){return this.cameraLocation},s.prototype.getCameraRotation=function(){return this.cameraRotation},s.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical),this.cameraRotation.x=Math.PI/2-this.armRotation.vertical,this.cameraRotation.y=0,this.cameraRotation.z=-this.armRotation.horizontal},t.exports=s},function(t,e,i){function s(t,e,i){this.data=t,this.column=e,this.graph=i,this.index=void 0,this.value=void 0,this.values=i.getDistinctValues(t.get(),this.column),this.values.sort(function(t,e){return t>e?1:e>t?-1:0}),this.values.length>0&&this.selectValue(0),this.dataPoints=[],this.loaded=!1,this.onLoadCallback=void 0,i.animationPreload?(this.loaded=!1,this.loadInBackground()):this.loaded=!0}var o=i(4);s.prototype.isLoaded=function(){return this.loaded},s.prototype.getLoadedProgress=function(){for(var t=this.values.length,e=0;this.dataPoints[e];)e++;return Math.round(e/t*100)},s.prototype.getLabel=function(){return this.graph.filterLabel},s.prototype.getColumn=function(){return this.column},s.prototype.getSelectedValue=function(){return void 0===this.index?void 0:this.values[this.index]},s.prototype.getValues=function(){return this.values},s.prototype.getValue=function(t){if(t>=this.values.length)throw"Error: index out of range";return this.values[t] -},s.prototype._getDataPoints=function(t){if(void 0===t&&(t=this.index),void 0===t)return[];var e;if(this.dataPoints[t])e=this.dataPoints[t];else{var i={};i.column=this.column,i.value=this.values[t];var s=new o(this.data,{filter:function(t){return t[i.column]==i.value}}).get();e=this.graph._getDataPoints(s),this.dataPoints[t]=e}return e},s.prototype.setOnLoadCallback=function(t){this.onLoadCallback=t},s.prototype.selectValue=function(t){if(t>=this.values.length)throw"Error: index out of range";this.index=t,this.value=this.values[t]},s.prototype.loadInBackground=function(t){void 0===t&&(t=0);var e=this.graph.frame;if(t0&&(t--,this.setIndex(t))},s.prototype.next=function(){var t=this.getIndex();t0?this.setIndex(0):this.index=void 0},s.prototype.setIndex=function(t){if(!(ts&&(s=0),s>this.values.length-1&&(s=this.values.length-1),s},s.prototype.indexToLeft=function(t){var e=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10,i=t/(this.values.length-1)*e,s=i+3;return s},s.prototype._onMouseMove=function(t){var e=t.clientX-this.startClientX,i=this.startSlideX+e,s=this.leftToIndex(i);this.setIndex(s),o.preventDefault()},s.prototype._onMouseUp=function(){this.frame.style.cursor="auto",o.removeEventListener(document,"mousemove",this.onmousemove),o.removeEventListener(document,"mouseup",this.onmouseup),o.preventDefault()},t.exports=s},function(t){function e(t,e,i,s){this._start=0,this._end=0,this._step=1,this.prettyStep=!0,this.precision=5,this._current=0,this.setRange(t,e,i,s)}e.prototype.setRange=function(t,e,i,s){this._start=t?t:0,this._end=e?e:0,this.setStep(i,s)},e.prototype.setStep=function(t,i){void 0===t||0>=t||(void 0!==i&&(this.prettyStep=i),this._step=this.prettyStep===!0?e.calculatePrettyStep(t):t)},e.calculatePrettyStep=function(t){var e=function(t){return Math.log(t)/Math.LN10},i=Math.pow(10,Math.round(e(t))),s=2*Math.pow(10,Math.round(e(t/2))),o=5*Math.pow(10,Math.round(e(t/5))),n=i;return Math.abs(s-t)<=Math.abs(n-t)&&(n=s),Math.abs(o-t)<=Math.abs(n-t)&&(n=o),0>=n&&(n=1),n},e.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},e.prototype.getStep=function(){return this._step},e.prototype.start=function(){this._current=this._start-this._start%this._step},e.prototype.next=function(){this._current+=this._step},e.prototype.end=function(){return this._current>this._end},t.exports=e},function(t,e,i){function s(t,e,i,r){if(!(this instanceof s))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof n)&&i instanceof Object){var h=r;r=i,i=h}var u=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:"bottom",width:null,height:null,maxHeight:null,minHeight:null},this.options=o.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{snap:null,toScreen:u._toScreen.bind(u),toGlobalScreen:u._toGlobalScreen.bind(u),toTime:u._toTime.bind(u),toGlobalTime:u._toGlobalTime.bind(u)}},this.range=new a(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new d(this.body),this.components.push(this.timeAxis),this.body.util.snap=this.timeAxis.snap.bind(this.timeAxis),this.currentTime=new l(this.body),this.components.push(this.currentTime),this.customTime=new c(this.body),this.components.push(this.customTime),this.itemSet=new p(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,r&&this.setOptions(r),i&&this.setGroups(i),e?this.setItems(e):this.redraw()}var o=(i(56),i(45),i(1)),n=i(3),r=i(4),a=i(17),h=i(46),d=i(30),l=i(21),c=i(22),p=i(27);s.prototype=new h,s.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof n||t instanceof r?t:new n(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){if(void 0==this.options.start||void 0==this.options.end)var s=this._getDataRange();var o=void 0!=this.options.start?this.options.start:s.start,a=void 0!=this.options.end?this.options.end:s.end;this.setWindow(o,a,{animate:!1})}else this.fit({animate:!1})},s.prototype.setGroups=function(t){var e;e=t?t instanceof n||t instanceof r?t:new n(t):null,this.groupsData=e,this.itemSet.setGroups(e)},s.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},s.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},s.prototype.focus=function(t,e){if(this.itemsData&&void 0!=t){var i=Array.isArray(t)?t:[t],s=this.itemsData.getDataSet().get(i,{type:{start:"Date",end:"Date"}}),o=null,n=null;if(s.forEach(function(t){var e=t.start.valueOf(),i="end"in t?t.end.valueOf():t.start.valueOf();(null===o||o>e)&&(o=e),(null===n||i>n)&&(n=i)}),null!==o&&null!==n){var r=(o+n)/2,a=Math.max(this.range.end-this.range.start,1.1*(n-o)),h=e&&void 0!==e.animate?e.animate:!0;this.range.setRange(r-a/2,r+a/2,h)}}},s.prototype.getItemRange=function(){var t=this.itemsData.getDataSet(),e=null,i=null;if(t){var s=t.min("start");e=s?o.convert(s.start,"Date").valueOf():null;var n=t.max("start");n&&(i=o.convert(n.start,"Date").valueOf());var r=t.max("end");r&&(i=null==i?o.convert(r.end,"Date").valueOf():Math.max(i,o.convert(r.end,"Date").valueOf()))}return{min:null!=e?new Date(e):null,max:null!=i?new Date(i):null}},t.exports=s},function(t,e,i){function s(t,e,i,s){if(!(Array.isArray(i)||i instanceof n)&&i instanceof Object){var r=s;s=i,i=r}var h=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:"bottom",width:null,height:null,maxHeight:null,minHeight:null},this.options=o.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{snap:null,toScreen:h._toScreen.bind(h),toGlobalScreen:h._toGlobalScreen.bind(h),toTime:h._toTime.bind(h),toGlobalTime:h._toGlobalTime.bind(h)}},this.range=new a(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new d(this.body),this.components.push(this.timeAxis),this.body.util.snap=this.timeAxis.snap.bind(this.timeAxis),this.currentTime=new l(this.body),this.components.push(this.currentTime),this.customTime=new c(this.body),this.components.push(this.customTime),this.linegraph=new p(this.body),this.components.push(this.linegraph),this.itemsData=null,this.groupsData=null,s&&this.setOptions(s),i&&this.setGroups(i),e?this.setItems(e):this.redraw()}var o=(i(56),i(45),i(1)),n=i(3),r=i(4),a=i(17),h=i(46),d=i(30),l=i(21),c=i(22),p=i(29);s.prototype=new h,s.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof n||t instanceof r?t:new n(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.linegraph&&this.linegraph.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){var s=void 0!=this.options.start?this.options.start:null,o=void 0!=this.options.end?this.options.end:null;this.setWindow(s,o,{animate:!1})}else this.fit({animate:!1})},s.prototype.setGroups=function(t){var e;e=t?t instanceof n||t instanceof r?t:new n(t):null,this.groupsData=e,this.linegraph.setGroups(e)},s.prototype.getLegend=function(t,e,i){return void 0===e&&(e=15),void 0===i&&(i=15),void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].getLegend(e,i):"cannot find group:"+t},s.prototype.isGroupVisible=function(t){return void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].visible&&(void 0===this.linegraph.options.groups.visibility[t]||1==this.linegraph.options.groups.visibility[t]):!1},s.prototype.getItemRange=function(){var t=null,e=null;for(var i in this.linegraph.groups)if(this.linegraph.groups.hasOwnProperty(i)&&1==this.linegraph.groups[i].visible)for(var s=0;sr?r:t,e=null==e?r:r>e?r:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},t.exports=s},function(t,e,i){var s=i(44);e.convertHiddenOptions=function(t,e){if(t.hiddenDates=[],e&&1==Array.isArray(e)){for(var i=0;i=4*a){var p=0,u=n.clone();switch(i[h].repeat){case"daily":d.day()!=l.day()&&(p=1),d.dayOfYear(o.dayOfYear()),d.year(o.year()),d.subtract(7,"days"),l.dayOfYear(o.dayOfYear()),l.year(o.year()),l.subtract(7-p,"days"),u.add(1,"weeks");break;case"weekly":var m=l.diff(d,"days"),f=d.day();d.date(o.date()),d.month(o.month()),d.year(o.year()),l=d.clone(),d.day(f),l.day(f),l.add(m,"days"),d.subtract(1,"weeks"),l.subtract(1,"weeks"),u.add(1,"weeks");break;case"monthly":d.month()!=l.month()&&(p=1),d.month(o.month()),d.year(o.year()),d.subtract(1,"months"),l.month(o.month()),l.year(o.year()),l.subtract(1,"months"),l.add(p,"months"),u.add(1,"months");break;case"yearly":d.year()!=l.year()&&(p=1),d.year(o.year()),d.subtract(1,"years"),l.year(o.year()),l.subtract(1,"years"),l.add(p,"years"),u.add(1,"years");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",i[h].repeat)}for(;u>d;)switch(t.hiddenDates.push({start:d.valueOf(),end:l.valueOf()}),i[h].repeat){case"daily":d.add(1,"days"),l.add(1,"days");break;case"weekly":d.add(1,"weeks"),l.add(1,"weeks");break;case"monthly":d.add(1,"months"),l.add(1,"months");break;case"yearly":d.add(1,"y"),l.add(1,"y");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",i[h].repeat)}t.hiddenDates.push({start:d.valueOf(),end:l.valueOf()})}}e.removeDuplicates(t);var g=e.isHidden(t.range.start,t.hiddenDates),v=e.isHidden(t.range.end,t.hiddenDates),y=t.range.start,b=t.range.end;1==g.hidden&&(y=1==t.range.startToFront?g.startDate-1:g.endDate+1),1==v.hidden&&(b=1==t.range.endToFront?v.startDate-1:v.endDate+1),(1==g.hidden||1==v.hidden)&&t.range._applyRange(y,b)}},e.removeDuplicates=function(t){for(var e=t.hiddenDates,i=[],s=0;s=e[s].start&&e[o].end<=e[s].end?e[o].remove=!0:e[o].start>=e[s].start&&e[o].start<=e[s].end?(e[s].end=e[o].end,e[o].remove=!0):e[o].end>=e[s].start&&e[o].end<=e[s].end&&(e[s].start=e[o].start,e[o].remove=!0));for(var s=0;s=r&&a>o){i=!0;break}}if(1==i&&o=e&&i>r&&(s+=r-n)}return s},e.correctTimeForHidden=function(t,i,o){return o=s(o).toDate().valueOf(),o-=e.getHiddenDurationBefore(t,i,o)},e.getHiddenDurationBefore=function(t,e,i){var o=0;i=s(i).toDate().valueOf();for(var n=0;n=e.start&&a=a&&(o+=a-r)}return o},e.getAccumulatedHiddenDuration=function(t,e,i){for(var s=0,o=0,n=e.start,r=0;r=e.start&&h=i)break;s+=h-a}}return s},e.snapAwayFromHidden=function(t,i,s,o){var n=e.isHidden(i,t);return 1==n.hidden?0>s?1==o?n.startDate-(n.endDate-i)-1:n.startDate-1:1==o?n.endDate+(i-n.startDate)+1:n.endDate+1:i},e.isHidden=function(t,e){for(var i=0;i=s&&o>t)return{hidden:!0,startDate:s,endDate:o}}return{hidden:!1,startDate:s,endDate:o}}},function(t){function e(t,e,i,s,o,n){this.current=0,this.autoScale=!0,this.stepIndex=0,this.step=1,this.scale=1,this.marginStart,this.marginEnd,this.deadSpace=0,this.majorSteps=[1,2,5,10],this.minorSteps=[.25,.5,1,2],this.alignZeros=n,this.setRange(t,e,i,s,o)}e.prototype.setRange=function(t,e,i,s,o){this._start=void 0===o.min?t:o.min,this._end=void 0===o.max?e:o.max,this._start==this._end&&(this._start-=.75,this._end+=1),1==this.autoScale&&this.setMinimumStep(i,s),this.setFirst(o)},e.prototype.setMinimumStep=function(t,e){var i=this._end-this._start,s=1.2*i,o=t*(s/e),n=Math.round(Math.log(s)/Math.LN10),r=-1,a=Math.pow(10,n),h=0;0>n&&(h=n);for(var d=!1,l=h;Math.abs(l)<=Math.abs(n);l++){a=Math.pow(10,l);for(var c=0;c=o){d=!0,r=c;break}}if(1==d)break}this.stepIndex=r,this.scale=a,this.step=a*this.minorSteps[r]},e.prototype.setFirst=function(t){void 0===t&&(t={});var e=void 0===t.min?this._start-2*this.scale*this.minorSteps[this.stepIndex]:t.min,i=void 0===t.max?this._end+this.scale*this.minorSteps[this.stepIndex]:t.max;this.marginEnd=void 0===t.max?this.roundToMinor(i):t.max,this.marginStart=void 0===t.min?this.roundToMinor(e):t.min,1==this.alignZeros&&(this.marginEnd-this.marginStart)%this.step!=0&&(this.marginEnd+=this.marginEnd%this.step),this.deadSpace=this.roundToMinor(i)-i+this.roundToMinor(e)-e,this.marginRange=this.marginEnd-this.marginStart,this.current=this.marginEnd},e.prototype.roundToMinor=function(t){var e=t-t%(this.scale*this.minorSteps[this.stepIndex]);return t%(this.scale*this.minorSteps[this.stepIndex])>.5*this.scale*this.minorSteps[this.stepIndex]?e+this.scale*this.minorSteps[this.stepIndex]:e},e.prototype.hasNext=function(){return this.current>=this.marginStart},e.prototype.next=function(){var t=this.current;this.current-=this.step,this.current==t&&(this.current=this._end)},e.prototype.previous=function(){this.current+=this.step,this.marginEnd+=this.step,this.marginRange=this.marginEnd-this.marginStart},e.prototype.getCurrent=function(t){var e=Math.abs(this.current)0;s--){if("0"!=i[s]){if("."==i[s]||","==i[s]){i=i.slice(0,s);break}break}i=i.slice(0,s)}}else{var o="",n=i.indexOf("e");if(-1!=n&&(o=i.slice(n),i=i.slice(0,n)),n=Math.max(i.indexOf(","),i.indexOf(".")),-1===n?(0!==t&&(i+="."),n=i.length+t):0!==t&&(n+=t+1),n>i.length)for(var r=n-i.length;r>0;r--)i+="0";else i=i.slice(0,n);i+=o}return i},e.prototype.snap=function(){},e.prototype.isMajor=function(){return this.current%(this.scale*this.majorSteps[this.stepIndex])==0},t.exports=e},function(t,e,i){function s(t,e){var i=h().hours(0).minutes(0).seconds(0).milliseconds(0);this.start=i.clone().add(-3,"days").valueOf(),this.end=i.clone().add(4,"days").valueOf(),this.body=t,this.deltaDifference=0,this.scaleOffset=0,this.startToFront=!1,this.endToFront=!0,this.defaultOptions={start:null,end:null,direction:"horizontal",moveable:!0,zoomable:!0,min:null,max:null,zoomMin:10,zoomMax:31536e10},this.options=r.extend({},this.defaultOptions),this.props={touch:{}},this.animateTimer=null,this.body.emitter.on("dragstart",this._onDragStart.bind(this)),this.body.emitter.on("drag",this._onDrag.bind(this)),this.body.emitter.on("dragend",this._onDragEnd.bind(this)),this.body.emitter.on("hold",this._onHold.bind(this)),this.body.emitter.on("mousewheel",this._onMouseWheel.bind(this)),this.body.emitter.on("DOMMouseScroll",this._onMouseWheel.bind(this)),this.body.emitter.on("touch",this._onTouch.bind(this)),this.body.emitter.on("pinch",this._onPinch.bind(this)),this.setOptions(e)}function o(t){if("horizontal"!=t&&"vertical"!=t)throw new TypeError('Unknown direction "'+t+'". Choose "horizontal" or "vertical".')}function n(t,e){return{x:t.pageX-r.getAbsoluteLeft(e),y:t.pageY-r.getAbsoluteTop(e)}}var r=i(1),a=i(47),h=i(44),d=i(20),l=i(15);s.prototype=new d,s.prototype.setOptions=function(t){if(t){var e=["direction","min","max","zoomMin","zoomMax","moveable","zoomable","activate","hiddenDates"];r.selectiveExtend(e,this.options,t),("start"in t||"end"in t)&&this.setRange(t.start,t.end)}},s.prototype.setRange=function(t,e,i){var s=void 0!=t?r.convert(t,"Date").valueOf():null,o=void 0!=e?r.convert(e,"Date").valueOf():null;if(this._cancelAnimation(),i){var n=this,a=this.start,h=this.end,d="number"==typeof i?i:500,c=(new Date).valueOf(),p=!1,u=function(){if(!n.props.touch.dragging){var t=(new Date).valueOf(),e=t-c,i=e>d,f=i||null===s?s:r.easeInOutQuad(e,a,s,d),g=i||null===o?o:r.easeInOutQuad(e,h,o,d);m=n._applyRange(f,g),l.updateHiddenDates(n.body,n.options.hiddenDates),p=p||m,m&&n.body.emitter.emit("rangechange",{start:new Date(n.start),end:new Date(n.end)}),i?p&&n.body.emitter.emit("rangechanged",{start:new Date(n.start),end:new Date(n.end)}):n.animateTimer=setTimeout(u,20)}};return u()}var m=this._applyRange(s,o);if(l.updateHiddenDates(this.body,this.options.hiddenDates),m){var f={start:new Date(this.start),end:new Date(this.end)};this.body.emitter.emit("rangechange",f),this.body.emitter.emit("rangechanged",f)}},s.prototype._cancelAnimation=function(){this.animateTimer&&(clearTimeout(this.animateTimer),this.animateTimer=null)},s.prototype._applyRange=function(t,e){var i,s=null!=t?r.convert(t,"Date").valueOf():this.start,o=null!=e?r.convert(e,"Date").valueOf():this.end,n=null!=this.options.max?r.convert(this.options.max,"Date").valueOf():null,a=null!=this.options.min?r.convert(this.options.min,"Date").valueOf():null;if(isNaN(s)||null===s)throw new Error('Invalid start "'+t+'"');if(isNaN(o)||null===o)throw new Error('Invalid end "'+e+'"');if(s>o&&(o=s),null!==a&&a>s&&(i=a-s,s+=i,o+=i,null!=n&&o>n&&(o=n)),null!==n&&o>n&&(i=o-n,s-=i,o-=i,null!=a&&a>s&&(s=a)),null!==this.options.zoomMin){var h=parseFloat(this.options.zoomMin);0>h&&(h=0),h>o-s&&(this.end-this.start===h?(s=this.start,o=this.end):(i=h-(o-s),s-=i/2,o+=i/2))}if(null!==this.options.zoomMax){var d=parseFloat(this.options.zoomMax);0>d&&(d=0),o-s>d&&(this.end-this.start===d?(s=this.start,o=this.end):(i=o-s-d,s+=i/2,o-=i/2))}var l=this.start!=s||this.end!=o;return s>=this.start&&s<=this.end||o>=this.start&&o<=this.end||this.start>=s&&this.start<=o||this.end>=s&&this.end<=o||this.body.emitter.emit("checkRangedItems"),this.start=s,this.end=o,l},s.prototype.getRange=function(){return{start:this.start,end:this.end}},s.prototype.conversion=function(t,e){return s.conversion(this.start,this.end,t,e)},s.conversion=function(t,e,i,s){return void 0===s&&(s=0),0!=i&&e-t!=0?{offset:t,scale:i/(e-t-s)}:{offset:0,scale:1}},s.prototype._onDragStart=function(){this.deltaDifference=0,this.previousDelta=0,this.options.moveable&&this.props.touch.allowDragging&&(this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.dragging=!0,this.body.dom.root&&(this.body.dom.root.style.cursor="move"))},s.prototype._onDrag=function(t){if(this.options.moveable&&this.props.touch.allowDragging){var e=this.options.direction;o(e);var i="horizontal"==e?t.gesture.deltaX:t.gesture.deltaY;i-=this.deltaDifference;var s=this.props.touch.end-this.props.touch.start,n=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);s-=n;var r="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,a=-i/r*s,h=this.props.touch.start+a,d=this.props.touch.end+a,c=l.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),p=l.snapAwayFromHidden(this.body.hiddenDates,d,this.previousDelta-i,!0);if(c!=h||p!=d)return this.deltaDifference+=i,this.props.touch.start=c,this.props.touch.end=p,void this._onDrag(t);this.previousDelta=i,this._applyRange(h,d),this.body.emitter.emit("rangechange",{start:new Date(this.start),end:new Date(this.end)})}},s.prototype._onDragEnd=function(){this.options.moveable&&this.props.touch.allowDragging&&(this.props.touch.dragging=!1,this.body.dom.root&&(this.body.dom.root.style.cursor="auto"),this.body.emitter.emit("rangechanged",{start:new Date(this.start),end:new Date(this.end)}))},s.prototype._onMouseWheel=function(t){if(this.options.zoomable&&this.options.moveable){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i;i=0>e?1-e/5:1/(1+e/5);var s=a.fakeGesture(this,t),o=n(s.center,this.body.dom.center),r=this._pointerToDate(o);this.zoom(i,r,e)}t.preventDefault()}},s.prototype._onTouch=function(){this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.allowDragging=!0,this.props.touch.center=null,this.scaleOffset=0,this.deltaDifference=0},s.prototype._onHold=function(){this.props.touch.allowDragging=!1},s.prototype._onPinch=function(t){if(this.options.zoomable&&this.options.moveable&&(this.props.touch.allowDragging=!1,t.gesture.touches.length>1)){this.props.touch.center||(this.props.touch.center=n(t.gesture.center,this.body.dom.center));var e=1/(t.gesture.scale+this.scaleOffset),i=this._pointerToDate(this.props.touch.center),s=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),o=l.getHiddenDurationBefore(this.body.hiddenDates,this,i),r=s-o,a=i-o+(this.props.touch.start-(i-o))*e,h=i+r+(this.props.touch.end-(i+r))*e;this.startToFront=1-e>0?!1:!0,this.endToFront=e-1>0?!1:!0;var d=l.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),c=l.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);(d!=a||c!=h)&&(this.props.touch.start=d,this.props.touch.end=c,this.scaleOffset=1-t.gesture.scale,a=d,h=c),this.setRange(a,h),this.startToFront=!1,this.endToFront=!0}},s.prototype._pointerToDate=function(t){var e,i=this.options.direction;if(o(i),"horizontal"==i)return this.body.util.toTime(t.x).valueOf();var s=this.body.domProps.center.height;return e=this.conversion(s),t.y/e.scale+e.offset},s.prototype.zoom=function(t,e,i){null==e&&(e=(this.start+this.end)/2);var s=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),o=l.getHiddenDurationBefore(this.body.hiddenDates,this,e),n=s-o,r=e-o+(this.start-(e-o))*t,a=e+n+(this.end-(e+n))*t;this.startToFront=i>0?!1:!0,this.endToFront=-i>0?!1:!0;var h=l.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),d=l.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);(h!=r||d!=a)&&(r=h,a=d),this.setRange(r,a),this.startToFront=!1,this.endToFront=!0},s.prototype.move=function(t){var e=this.end-this.start,i=this.start+e*t,s=this.end+e*t;this.start=i,this.end=s},s.prototype.moveTo=function(t){var e=(this.start+this.end)/2,i=e-t,s=this.start-i,o=this.end-i;this.setRange(s,o)},t.exports=s},function(t,e){var i=.001;e.orderByStart=function(t){t.sort(function(t,e){return t.data.start-e.data.start})},e.orderByEnd=function(t){t.sort(function(t,e){var i="end"in t.data?t.data.end:t.data.start,s="end"in e.data?e.data.end:e.data.start;return i-s})},e.stack=function(t,i,s){var o,n;if(s)for(o=0,n=t.length;n>o;o++)t[o].top=null;for(o=0,n=t.length;n>o;o++){var r=t[o];if(r.stack&&null===r.top){r.top=i.axis;do{for(var a=null,h=0,d=t.length;d>h;h++){var l=t[h];if(null!==l.top&&l!==r&&l.stack&&e.collision(r,l,i.item)){a=l;break}}null!=a&&(r.top=a.top+a.height+i.item.vertical)}while(a)}}},e.nostack=function(t,e,i){var s,o,n;for(s=0,o=t.length;o>s;s++)if(void 0!==t[s].data.subgroup){n=e.axis;for(var r in i)i.hasOwnProperty(r)&&1==i[r].visible&&i[r].indexe.left&&t.top-s.vertical+ie.top}},function(t,e,i){function s(t,e,i,o){this.current=new Date,this._start=new Date,this._end=new Date,this.autoScale=!0,this.scale="day",this.step=1,this.setRange(t,e,i),this.switchedDay=!1,this.switchedMonth=!1,this.switchedYear=!1,this.hiddenDates=o,void 0===o&&(this.hiddenDates=[]),this.format=s.FORMAT}var o=i(44),n=i(15),r=i(1);s.FORMAT={minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},s.prototype.setFormat=function(t){var e=r.deepExtend({},s.FORMAT);this.format=r.deepExtend(e,t)},s.prototype.setRange=function(t,e,i){if(!(t instanceof Date&&e instanceof Date))throw"No legal start or end date in method setRange";this._start=void 0!=t?new Date(t.valueOf()):new Date,this._end=void 0!=e?new Date(e.valueOf()):new Date,this.autoScale&&this.setMinimumStep(i)},s.prototype.first=function(){this.current=new Date(this._start.valueOf()),this.roundToMinor()},s.prototype.roundToMinor=function(){switch(this.scale){case"year":this.current.setFullYear(this.step*Math.floor(this.current.getFullYear()/this.step)),this.current.setMonth(0);case"month":this.current.setDate(1);case"day":case"weekday":this.current.setHours(0);case"hour":this.current.setMinutes(0);case"minute":this.current.setSeconds(0);case"second":this.current.setMilliseconds(0)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.setMilliseconds(this.current.getMilliseconds()-this.current.getMilliseconds()%this.step);break;case"second":this.current.setSeconds(this.current.getSeconds()-this.current.getSeconds()%this.step);break;case"minute":this.current.setMinutes(this.current.getMinutes()-this.current.getMinutes()%this.step); -break;case"hour":this.current.setHours(this.current.getHours()-this.current.getHours()%this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()-1-(this.current.getDate()-1)%this.step+1);break;case"month":this.current.setMonth(this.current.getMonth()-this.current.getMonth()%this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()-this.current.getFullYear()%this.step)}},s.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()},s.prototype.next=function(){var t=this.current.valueOf();if(this.current.getMonth()<6)switch(this.scale){case"millisecond":this.current=new Date(this.current.valueOf()+this.step);break;case"second":this.current=new Date(this.current.valueOf()+1e3*this.step);break;case"minute":this.current=new Date(this.current.valueOf()+1e3*this.step*60);break;case"hour":this.current=new Date(this.current.valueOf()+1e3*this.step*60*60);var e=this.current.getHours();this.current.setHours(e-e%this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()+this.step);break;case"month":this.current.setMonth(this.current.getMonth()+this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()+this.step)}else switch(this.scale){case"millisecond":this.current=new Date(this.current.valueOf()+this.step);break;case"second":this.current.setSeconds(this.current.getSeconds()+this.step);break;case"minute":this.current.setMinutes(this.current.getMinutes()+this.step);break;case"hour":this.current.setHours(this.current.getHours()+this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()+this.step);break;case"month":this.current.setMonth(this.current.getMonth()+this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()+this.step)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.getMilliseconds()0&&(this.step=e),this.autoScale=!1},s.prototype.setAutoScale=function(t){this.autoScale=t},s.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,s=864e5,o=36e5,n=6e4,r=1e3,a=1;1e3*e>t&&(this.scale="year",this.step=1e3),500*e>t&&(this.scale="year",this.step=500),100*e>t&&(this.scale="year",this.step=100),50*e>t&&(this.scale="year",this.step=50),10*e>t&&(this.scale="year",this.step=10),5*e>t&&(this.scale="year",this.step=5),e>t&&(this.scale="year",this.step=1),3*i>t&&(this.scale="month",this.step=3),i>t&&(this.scale="month",this.step=1),5*s>t&&(this.scale="day",this.step=5),2*s>t&&(this.scale="day",this.step=2),s>t&&(this.scale="day",this.step=1),s/2>t&&(this.scale="weekday",this.step=1),4*o>t&&(this.scale="hour",this.step=4),o>t&&(this.scale="hour",this.step=1),15*n>t&&(this.scale="minute",this.step=15),10*n>t&&(this.scale="minute",this.step=10),5*n>t&&(this.scale="minute",this.step=5),n>t&&(this.scale="minute",this.step=1),15*r>t&&(this.scale="second",this.step=15),10*r>t&&(this.scale="second",this.step=10),5*r>t&&(this.scale="second",this.step=5),r>t&&(this.scale="second",this.step=1),200*a>t&&(this.scale="millisecond",this.step=200),100*a>t&&(this.scale="millisecond",this.step=100),50*a>t&&(this.scale="millisecond",this.step=50),10*a>t&&(this.scale="millisecond",this.step=10),5*a>t&&(this.scale="millisecond",this.step=5),a>t&&(this.scale="millisecond",this.step=1)}},s.prototype.snap=function(t){var e=new Date(t.valueOf());if("year"==this.scale){var i=e.getFullYear()+Math.round(e.getMonth()/12);e.setFullYear(Math.round(i/this.step)*this.step),e.setMonth(0),e.setDate(0),e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0)}else if("month"==this.scale)e.getDate()>15?(e.setDate(1),e.setMonth(e.getMonth()+1)):e.setDate(1),e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0);else if("day"==this.scale){switch(this.step){case 5:case 2:e.setHours(24*Math.round(e.getHours()/24));break;default:e.setHours(12*Math.round(e.getHours()/12))}e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0)}else if("weekday"==this.scale){switch(this.step){case 5:case 2:e.setHours(12*Math.round(e.getHours()/12));break;default:e.setHours(6*Math.round(e.getHours()/6))}e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0)}else if("hour"==this.scale){switch(this.step){case 4:e.setMinutes(60*Math.round(e.getMinutes()/60));break;default:e.setMinutes(30*Math.round(e.getMinutes()/30))}e.setSeconds(0),e.setMilliseconds(0)}else if("minute"==this.scale){switch(this.step){case 15:case 10:e.setMinutes(5*Math.round(e.getMinutes()/5)),e.setSeconds(0);break;case 5:e.setSeconds(60*Math.round(e.getSeconds()/60));break;default:e.setSeconds(30*Math.round(e.getSeconds()/30))}e.setMilliseconds(0)}else if("second"==this.scale)switch(this.step){case 15:case 10:e.setSeconds(5*Math.round(e.getSeconds()/5)),e.setMilliseconds(0);break;case 5:e.setMilliseconds(1e3*Math.round(e.getMilliseconds()/1e3));break;default:e.setMilliseconds(500*Math.round(e.getMilliseconds()/500))}else if("millisecond"==this.scale){var s=this.step>5?this.step/2:1;e.setMilliseconds(Math.round(e.getMilliseconds()/s)*s)}return e},s.prototype.isMajor=function(){if(1==this.switchedYear)switch(this.switchedYear=!1,this.scale){case"year":case"month":case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedMonth)switch(this.switchedMonth=!1,this.scale){case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedDay)switch(this.switchedDay=!1,this.scale){case"millisecond":case"second":case"minute":case"hour":return!0;default:return!1}switch(this.scale){case"millisecond":return 0==this.current.getMilliseconds();case"second":return 0==this.current.getSeconds();case"minute":return 0==this.current.getHours()&&0==this.current.getMinutes();case"hour":return 0==this.current.getHours();case"weekday":case"day":return 1==this.current.getDate();case"month":return 0==this.current.getMonth();case"year":return!1;default:return!1}},s.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?o(t).format(e):""},s.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?o(t).format(e):""},t.exports=s},function(t){function e(){this.options=null,this.props=null}e.prototype.setOptions=function(t){t&&util.extend(this.options,t)},e.prototype.redraw=function(){return!1},e.prototype.destroy=function(){},e.prototype._isResized=function(){var t=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;return this.props._previousWidth=this.props.width,this.props._previousHeight=this.props.height,t},t.exports=e},function(t,e,i){function s(t,e){this.body=t,this.defaultOptions={showCurrentTime:!0,locales:a,locale:"en"},this.options=o.extend({},this.defaultOptions),this.offset=0,this._create(),this.setOptions(e)}var o=i(1),n=i(20),r=i(44),a=i(48);s.prototype=new n,s.prototype._create=function(){var t=document.createElement("div");t.className="currenttime",t.style.position="absolute",t.style.top="0px",t.style.height="100%",this.bar=t},s.prototype.destroy=function(){this.options.showCurrentTime=!1,this.redraw(),this.body=null},s.prototype.setOptions=function(t){t&&o.selectiveExtend(["showCurrentTime","locale","locales"],this.options,t)},s.prototype.redraw=function(){if(this.options.showCurrentTime){var t=this.body.dom.backgroundVertical;this.bar.parentNode!=t&&(this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),t.appendChild(this.bar),this.start());var e=new Date((new Date).valueOf()+this.offset),i=this.body.util.toScreen(e),s=this.options.locales[this.options.locale],o=s.current+" "+s.time+": "+r(e).format("dddd, MMMM Do YYYY, H:mm:ss");o=o.charAt(0).toUpperCase()+o.substring(1),this.bar.style.left=i+"px",this.bar.title=o}else this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),this.stop();return!1},s.prototype.start=function(){function t(){e.stop();var i=e.body.range.conversion(e.body.domProps.center.width).scale,s=1/i/10;30>s&&(s=30),s>1e3&&(s=1e3),e.redraw(),e.currentTimeTimer=setTimeout(t,s)}var e=this;t()},s.prototype.stop=function(){void 0!==this.currentTimeTimer&&(clearTimeout(this.currentTimeTimer),delete this.currentTimeTimer)},s.prototype.setCurrentTime=function(t){var e=o.convert(t,"Date").valueOf(),i=(new Date).valueOf();this.offset=e-i,this.redraw()},s.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)},t.exports=s},function(t,e,i){function s(t,e){this.body=t,this.defaultOptions={showCustomTime:!1,locales:h,locale:"en"},this.options=n.extend({},this.defaultOptions),this.customTime=new Date,this.eventParams={},this._create(),this.setOptions(e)}var o=i(45),n=i(1),r=i(20),a=i(44),h=i(48);s.prototype=new r,s.prototype.setOptions=function(t){t&&n.selectiveExtend(["showCustomTime","locale","locales"],this.options,t)},s.prototype._create=function(){var t=document.createElement("div");t.className="customtime",t.style.position="absolute",t.style.top="0px",t.style.height="100%",this.bar=t;var e=document.createElement("div");e.style.position="relative",e.style.top="0px",e.style.left="-10px",e.style.height="100%",e.style.width="20px",t.appendChild(e),this.hammer=o(t,{prevent_default:!0}),this.hammer.on("dragstart",this._onDragStart.bind(this)),this.hammer.on("drag",this._onDrag.bind(this)),this.hammer.on("dragend",this._onDragEnd.bind(this))},s.prototype.destroy=function(){this.options.showCustomTime=!1,this.redraw(),this.hammer.enable(!1),this.hammer=null,this.body=null},s.prototype.redraw=function(){if(this.options.showCustomTime){var t=this.body.dom.backgroundVertical;this.bar.parentNode!=t&&(this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),t.appendChild(this.bar));var e=this.body.util.toScreen(this.customTime),i=this.options.locales[this.options.locale],s=i.time+": "+a(this.customTime).format("dddd, MMMM Do YYYY, H:mm:ss");s=s.charAt(0).toUpperCase()+s.substring(1),this.bar.style.left=e+"px",this.bar.title=s}else this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar);return!1},s.prototype.setCustomTime=function(t){this.customTime=n.convert(t,"Date"),this.redraw()},s.prototype.getCustomTime=function(){return new Date(this.customTime.valueOf())},s.prototype._onDragStart=function(t){this.eventParams.dragging=!0,this.eventParams.customTime=this.customTime,t.stopPropagation(),t.preventDefault()},s.prototype._onDrag=function(t){if(this.eventParams.dragging){var e=t.gesture.deltaX,i=this.body.util.toScreen(this.eventParams.customTime)+e,s=this.body.util.toTime(i);this.setCustomTime(s),this.body.emitter.emit("timechange",{time:new Date(this.customTime.valueOf())}),t.stopPropagation(),t.preventDefault()}},s.prototype._onDragEnd=function(t){this.eventParams.dragging&&(this.body.emitter.emit("timechanged",{time:new Date(this.customTime.valueOf())}),t.stopPropagation(),t.preventDefault())},t.exports=s},function(t,e,i){function s(t,e,i,s){this.id=o.randomUUID(),this.body=t,this.defaultOptions={orientation:"left",showMinorLabels:!0,showMajorLabels:!0,icons:!0,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:"40px",visible:!0,alignZeros:!0,customRange:{left:{min:void 0,max:void 0},right:{min:void 0,max:void 0}},title:{left:{text:void 0},right:{text:void 0}},format:{left:{decimals:void 0},right:{decimals:void 0}}},this.linegraphOptions=s,this.linegraphSVG=i,this.props={},this.DOMelements={lines:{},labels:{},title:{}},this.dom={},this.range={start:0,end:0},this.options=o.extend({},this.defaultOptions),this.conversionFactor=1,this.setOptions(e),this.width=Number((""+this.options.width).replace("px","")),this.minWidth=this.width,this.height=this.linegraphSVG.offsetHeight,this.hidden=!1,this.stepPixels=25,this.stepPixelsForced=25,this.zeroCrossing=-1,this.lineOffset=0,this.master=!0,this.svgElements={},this.iconsRemoved=!1,this.groups={},this.amountOfGroups=0,this._create();var n=this;this.body.emitter.on("verticalDrag",function(){n.dom.lineContainer.style.top=n.body.domProps.scrollTop+"px"})}var o=i(1),n=i(2),r=i(20),a=i(16);s.prototype=new r,s.prototype.addGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.groups[t]=e),this.amountOfGroups+=1},s.prototype.updateGroup=function(t,e){this.groups[t]=e},s.prototype.removeGroup=function(t){this.groups.hasOwnProperty(t)&&(delete this.groups[t],this.amountOfGroups-=1)},s.prototype.setOptions=function(t){if(t){var e=!1;this.options.orientation!=t.orientation&&void 0!==t.orientation&&(e=!0);var i=["orientation","showMinorLabels","showMajorLabels","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","width","visible","customRange","title","format","alignZeros"];o.selectiveExtend(i,this.options,t),this.minWidth=Number((""+this.options.width).replace("px","")),1==e&&this.dom.frame&&(this.hide(),this.show())}},s.prototype._create=function(){this.dom.frame=document.createElement("div"),this.dom.frame.style.width=this.options.width,this.dom.frame.style.height=this.height,this.dom.lineContainer=document.createElement("div"),this.dom.lineContainer.style.width="100%",this.dom.lineContainer.style.height=this.height,this.dom.lineContainer.style.position="relative",this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="absolute",this.svg.style.top="0px",this.svg.style.height="100%",this.svg.style.width="100%",this.svg.style.display="block",this.dom.frame.appendChild(this.svg)},s.prototype._redrawGroupIcons=function(){n.prepareElements(this.svgElements);var t,e=this.options.iconWidth,i=15,s=4,o=s+.5*i;t="left"==this.options.orientation?s:this.width-e-s;for(var r in this.groups)this.groups.hasOwnProperty(r)&&(1!=this.groups[r].visible||void 0!==this.linegraphOptions.visibility[r]&&1!=this.linegraphOptions.visibility[r]||(this.groups[r].drawIcon(t,o,this.svgElements,this.svg,e,i),o+=i+s));n.cleanupElements(this.svgElements),this.iconsRemoved=!1},s.prototype._cleanupIcons=function(){0==this.iconsRemoved&&(n.prepareElements(this.svgElements),n.cleanupElements(this.svgElements),this.iconsRemoved=!0)},s.prototype.show=function(){this.hidden=!1,this.dom.frame.parentNode||("left"==this.options.orientation?this.body.dom.left.appendChild(this.dom.frame):this.body.dom.right.appendChild(this.dom.frame)),this.dom.lineContainer.parentNode||this.body.dom.backgroundHorizontal.appendChild(this.dom.lineContainer)},s.prototype.hide=function(){this.hidden=!0,this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom.lineContainer.parentNode&&this.dom.lineContainer.parentNode.removeChild(this.dom.lineContainer)},s.prototype.setRange=function(t,e){0==this.master&&1==this.options.alignZeros&&-1!=this.zeroCrossing&&t>0&&(t=0),this.range.start=t,this.range.end=e},s.prototype.redraw=function(){var t=!1,e=0;this.dom.lineContainer.style.top=this.body.domProps.scrollTop+"px";for(var i in this.groups)this.groups.hasOwnProperty(i)&&(1!=this.groups[i].visible||void 0!==this.linegraphOptions.visibility[i]&&1!=this.linegraphOptions.visibility[i]||e++);if(0==this.amountOfGroups||0==e)this.hide();else{this.show(),this.height=Number(this.linegraphSVG.style.height.replace("px","")),this.dom.lineContainer.style.height=this.height+"px",this.width=1==this.options.visible?Number((""+this.options.width).replace("px","")):0;var s=this.props,o=this.dom.frame;o.className="dataaxis",this._calculateCharSize();var n=this.options.orientation,r=this.options.showMinorLabels,a=this.options.showMajorLabels;s.minorLabelHeight=r?s.minorCharHeight:0,s.majorLabelHeight=a?s.majorCharHeight:0,s.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset,s.minorLineHeight=1,s.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset,s.majorLineHeight=1,"left"==n?(o.style.top="0",o.style.left="0",o.style.bottom="",o.style.width=this.width+"px",o.style.height=this.height+"px"):(o.style.top="",o.style.bottom="0",o.style.left="0",o.style.width=this.width+"px",o.style.height=this.height+"px"),t=this._redrawLabels(),1==this.options.icons?this._redrawGroupIcons():this._cleanupIcons(),this._redrawTitle(n)}return t},s.prototype._redrawLabels=function(){n.prepareElements(this.DOMelements.lines),n.prepareElements(this.DOMelements.labels);var t=this.options.orientation,e=this.master?this.props.majorCharHeight||10:this.stepPixelsForced,i=new a(this.range.start,this.range.end,e,this.dom.frame.offsetHeight,this.options.customRange[this.options.orientation],0==this.master&&this.options.alignZeros);this.step=i;var s=(this.dom.frame.offsetHeight-i.deadSpace*(this.dom.frame.offsetHeight/i.marginRange))/((i.marginRange-i.deadSpace)/i.step);this.stepPixels=s;var o=this.height/s,r=0;if(0==this.master){s=this.stepPixelsForced,r=Math.round(this.dom.frame.offsetHeight/s-o);for(var h=0;.5*r>h;h++)i.previous();if(o=this.height/s,-1!=this.zeroCrossing&&1==this.options.alignZeros){var d=i.marginEnd/i.step-this.zeroCrossing;if(d>0)for(var h=0;d>h;h++)i.next();else if(0>d)for(var h=0;-d>h;h++)i.previous()}}else o+=.25;this.valueAtZero=i.marginEnd;var l,c=0,p=1;void 0!==this.options.format[t]&&(l=this.options.format[t].decimals),this.maxLabelSize=0;for(var u=0;p=0&&this._redrawLabel(u-2,i.getCurrent(l),t,"yAxis major",this.props.majorCharHeight),this._redrawLine(u,t,"grid horizontal major",this.options.majorLinesOffset,this.props.majorLineWidth)):this._redrawLine(u,t,"grid horizontal minor",this.options.minorLinesOffset,this.props.minorLineWidth),1==this.master&&0==i.current&&(this.zeroCrossing=p),p++}this.conversionFactor=0==this.master?u/(this.valueAtZero-i.current):this.dom.frame.offsetHeight/i.marginRange;var f=0;void 0!==this.options.title[t]&&void 0!==this.options.title[t].text&&(f=this.props.titleCharHeight);var g=1==this.options.icons?Math.max(this.options.iconWidth,f)+this.options.labelOffsetX+15:f+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-g&&1==this.options.visible?(this.width=this.maxLabelSize+g,this.options.width=this.width+"px",n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),this.redraw(),!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+g),this.options.width=this.width+"px",n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),this.redraw(),!0):(n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),!1)},s.prototype.convertValue=function(t){var e=this.valueAtZero-t,i=e*this.conversionFactor;return i},s.prototype._redrawLabel=function(t,e,i,s,o){var r=n.getDOMElement("div",this.DOMelements.labels,this.dom.frame);r.className=s,r.innerHTML=e,"left"==i?(r.style.left="-"+this.options.labelOffsetX+"px",r.style.textAlign="right"):(r.style.right="-"+this.options.labelOffsetX+"px",r.style.textAlign="left"),r.style.top=t-.5*o+this.options.labelOffsetY+"px",e+="";var a=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);this.maxLabelSized;d++){var c=this.visibleItems[d];c.repositionY(e)}return s},s.prototype._calculateHeight=function(t){var e,i=this.visibleItems;this.resetSubgroups();var s=this;if(i.length){var n=i[0].top,r=i[0].top+i[0].height;if(o.forEach(i,function(t){n=Math.min(n,t.top),r=Math.max(r,t.top+t.height),void 0!==t.data.subgroup&&(s.subgroups[t.data.subgroup].height=Math.max(s.subgroups[t.data.subgroup].height,t.height),s.subgroups[t.data.subgroup].visible=!0)}),n>t.axis){var a=n-t.axis;r-=a,o.forEach(i,function(t){t.top-=a})}e=r+t.item.vertical/2}else e=t.axis+t.item.vertical;return e=Math.max(e,this.props.label.height)},s.prototype.show=function(){this.dom.label.parentNode||this.itemSet.dom.labelSet.appendChild(this.dom.label),this.dom.foreground.parentNode||this.itemSet.dom.foreground.appendChild(this.dom.foreground),this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background),this.dom.axis.parentNode||this.itemSet.dom.axis.appendChild(this.dom.axis)},s.prototype.hide=function(){var t=this.dom.label;t.parentNode&&t.parentNode.removeChild(t);var e=this.dom.foreground;e.parentNode&&e.parentNode.removeChild(e);var i=this.dom.background;i.parentNode&&i.parentNode.removeChild(i);var s=this.dom.axis;s.parentNode&&s.parentNode.removeChild(s)},s.prototype.add=function(t){if(this.items[t.id]=t,t.setParent(this),void 0!==t.data.subgroup&&(void 0===this.subgroups[t.data.subgroup]&&(this.subgroups[t.data.subgroup]={height:0,visible:!1,index:this.subgroupIndex,items:[]},this.subgroupIndex++),this.subgroups[t.data.subgroup].items.push(t)),this.orderSubgroups(),-1==this.visibleItems.indexOf(t)){var e=this.itemSet.body.range;this._checkIfVisible(t,this.visibleItems,e)}},s.prototype.orderSubgroups=function(){if(void 0!==this.subgroupOrderer){var t=[];if("string"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push({subgroup:e,sortField:this.subgroups[e].items[0].data[this.subgroupOrderer]});t.sort(function(t,e){return t.sortField-e.sortField})}else if("function"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push(this.subgroups[e].items[0].data);t.sort(this.subgroupOrderer)}if(t.length>0)for(var i=0;it?-1:l>=t?0:1};if(e.length>0)for(n=0;nl}),1==this.checkRangedItems)for(this.checkRangedItems=!1,n=0;nl})}for(n=0;n=0&&(n=e[r],!o(n));r--)void 0===s[n.id]&&(s[n.id]=!0,i.push(n));for(r=t+1;rs;s++){var n=this.visibleItems[s];n.repositionY(e)}return i},s.prototype.show=function(){this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background)},t.exports=s},function(t,e,i){function s(t,e){this.body=t,this.defaultOptions={type:null,orientation:"bottom",align:"auto",stack:!0,groupOrder:null,selectable:!0,editable:{updateTime:!1,updateGroup:!1,add:!1,remove:!1},onAdd:function(t,e){e(t)},onUpdate:function(t,e){e(t)},onMove:function(t,e){e(t)},onRemove:function(t,e){e(t)},onMoving:function(t,e){e(t)},margin:{item:{horizontal:10,vertical:10},axis:20},padding:5},this.options=n.extend({},this.defaultOptions),this.itemOptions={type:{start:"Date",end:"Date"}},this.conversion={toScreen:t.util.toScreen,toTime:t.util.toTime},this.dom={},this.props={},this.hammer=null;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e){i._onAdd(e.items)},update:function(t,e){i._onUpdate(e.items)},remove:function(t,e){i._onRemove(e.items)}},this.groupListeners={add:function(t,e){i._onAddGroups(e.items)},update:function(t,e){i._onUpdateGroups(e.items)},remove:function(t,e){i._onRemoveGroups(e.items)}},this.items={},this.groups={},this.groupIds=[],this.selection=[],this.stackDirty=!0,this.touchParams={},this._create(),this.setOptions(e)}var o=i(45),n=i(1),r=i(3),a=i(4),h=i(20),d=i(25),l=i(26),c=i(33),p=i(34),u=i(35),m=i(32),f="__ungrouped__",g="__background__";s.prototype=new h,s.types={background:m,box:c,range:u,point:p},s.prototype._create=function(){var t=document.createElement("div");t.className="itemset",t["timeline-itemset"]=this,this.dom.frame=t;var e=document.createElement("div");e.className="background",t.appendChild(e),this.dom.background=e;var i=document.createElement("div");i.className="foreground",t.appendChild(i),this.dom.foreground=i;var s=document.createElement("div");s.className="axis",this.dom.axis=s;var n=document.createElement("div");n.className="labelset",this.dom.labelSet=n,this._updateUngrouped();var r=new l(g,null,this);r.show(),this.groups[g]=r,this.hammer=o(this.body.dom.centerContainer,{preventDefault:!0}),this.hammer.on("touch",this._onTouch.bind(this)),this.hammer.on("dragstart",this._onDragStart.bind(this)),this.hammer.on("drag",this._onDrag.bind(this)),this.hammer.on("dragend",this._onDragEnd.bind(this)),this.hammer.on("tap",this._onSelectItem.bind(this)),this.hammer.on("hold",this._onMultiSelectItem.bind(this)),this.hammer.on("doubletap",this._onAddItem.bind(this)),this.show()},s.prototype.setOptions=function(t){if(t){var e=["type","align","orientation","padding","stack","selectable","groupOrder","dataAttributes","template","hide"];n.selectiveExtend(e,this.options,t),"margin"in t&&("number"==typeof t.margin?(this.options.margin.axis=t.margin,this.options.margin.item.horizontal=t.margin,this.options.margin.item.vertical=t.margin):"object"==typeof t.margin&&(n.selectiveExtend(["axis"],this.options.margin,t.margin),"item"in t.margin&&("number"==typeof t.margin.item?(this.options.margin.item.horizontal=t.margin.item,this.options.margin.item.vertical=t.margin.item):"object"==typeof t.margin.item&&n.selectiveExtend(["horizontal","vertical"],this.options.margin.item,t.margin.item)))),"editable"in t&&("boolean"==typeof t.editable?(this.options.editable.updateTime=t.editable,this.options.editable.updateGroup=t.editable,this.options.editable.add=t.editable,this.options.editable.remove=t.editable):"object"==typeof t.editable&&n.selectiveExtend(["updateTime","updateGroup","add","remove"],this.options.editable,t.editable));var i=function(e){var i=t[e];if(i){if(!(i instanceof Function))throw new Error("option "+e+" must be a function "+e+"(item, callback)");this.options[e]=i}}.bind(this);["onAdd","onUpdate","onRemove","onMove","onMoving"].forEach(i),this.markDirty()}},s.prototype.markDirty=function(){this.groupIds=[],this.stackDirty=!0},s.prototype.destroy=function(){this.hide(),this.setItems(null),this.setGroups(null),this.hammer=null,this.body=null,this.conversion=null},s.prototype.hide=function(){this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom.axis.parentNode&&this.dom.axis.parentNode.removeChild(this.dom.axis),this.dom.labelSet.parentNode&&this.dom.labelSet.parentNode.removeChild(this.dom.labelSet)},s.prototype.show=function(){this.dom.frame.parentNode||this.body.dom.center.appendChild(this.dom.frame),this.dom.axis.parentNode||this.body.dom.backgroundVertical.appendChild(this.dom.axis),this.dom.labelSet.parentNode||this.body.dom.left.appendChild(this.dom.labelSet)},s.prototype.setSelection=function(t){var e,i,s,o;for(void 0==t&&(t=[]),Array.isArray(t)||(t=[t]),e=0,i=this.selection.length;i>e;e++)s=this.selection[e],o=this.items[s],o&&o.unselect();for(this.selection=[],e=0,i=t.length;i>e;e++)s=t[e],o=this.items[s],o&&(this.selection.push(s),o.select())},s.prototype.getSelection=function(){return this.selection.concat([])},s.prototype.getVisibleItems=function(){var t=this.body.range.getRange(),e=this.body.util.toScreen(t.start),i=this.body.util.toScreen(t.end),s=[];for(var o in this.groups)if(this.groups.hasOwnProperty(o))for(var n=this.groups[o],r=n.visibleItems,a=0;ae&&s.push(h.id)}return s},s.prototype._deselect=function(t){for(var e=this.selection,i=0,s=e.length;s>i;i++)if(e[i]==t){e.splice(i,1);break}},s.prototype.redraw=function(){var t=this.options.margin,e=this.body.range,i=n.option.asSize,s=this.options,o=s.orientation,r=!1,a=this.dom.frame,h=s.editable.updateTime||s.editable.updateGroup;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top,this.props.left=this.body.domProps.left.width+this.body.domProps.border.left,a.className="itemset"+(h?" editable":""),r=this._orderGroups()||r;var d=e.end-e.start,l=d!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;l&&(this.stackDirty=!0),this.lastVisibleInterval=d,this.props.lastWidth=this.props.width;var c=this.stackDirty,p=this._firstGroup(),u={item:t.item,axis:t.axis},m={item:t.item,axis:t.item.vertical/2},f=0,v=t.axis+t.item.vertical;return this.groups[g].redraw(e,m,c),n.forEach(this.groups,function(t){var i=t==p?u:m,s=t.redraw(e,i,c);r=s||r,f+=t.height}),f=Math.max(f,v),this.stackDirty=!1,a.style.height=i(f),this.props.width=a.offsetWidth,this.props.height=f,this.dom.axis.style.top=i("top"==o?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height),this.dom.axis.style.left="0",r=this._isResized()||r},s.prototype._firstGroup=function(){var t="top"==this.options.orientation?0:this.groupIds.length-1,e=this.groupIds[t],i=this.groups[e]||this.groups[f];return i||null},s.prototype._updateUngrouped=function(){{var t,e,i=this.groups[f];this.groups[g]}if(this.groupsData){if(i){i.hide(),delete this.groups[f];for(e in this.items)if(this.items.hasOwnProperty(e)){t=this.items[e],t.parent&&t.parent.remove(t);var s=this._getGroupId(t.data),o=this.groups[s];o&&o.add(t)||t.hide()}}}else if(!i){var n=null,r=null;i=new d(n,r,this),this.groups[f]=i;for(e in this.items)this.items.hasOwnProperty(e)&&(t=this.items[e],i.add(t));i.show()}},s.prototype.getLabelSet=function(){return this.dom.labelSet},s.prototype.setItems=function(t){var e,i=this,s=this.itemsData;if(t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.itemsData=t}else this.itemsData=null;if(s&&(n.forEach(this.itemListeners,function(t,e){s.off(e,t)}),e=s.getIds(),this._onRemove(e)),this.itemsData){var o=this.id;n.forEach(this.itemListeners,function(t,e){i.itemsData.on(e,t,o)}),e=this.itemsData.getIds(),this._onAdd(e),this._updateUngrouped()}},s.prototype.getItems=function(){return this.itemsData},s.prototype.setGroups=function(t){var e,i=this;if(this.groupsData&&(n.forEach(this.groupListeners,function(t,e){i.groupsData.unsubscribe(e,t)}),e=this.groupsData.getIds(),this.groupsData=null,this._onRemoveGroups(e)),t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.groupsData=t}else this.groupsData=null;if(this.groupsData){var s=this.id;n.forEach(this.groupListeners,function(t,e){i.groupsData.on(e,t,s)}),e=this.groupsData.getIds(),this._onAddGroups(e)}this._updateUngrouped(),this._order(),this.body.emitter.emit("change",{queue:!0})},s.prototype.getGroups=function(){return this.groupsData},s.prototype.removeItem=function(t){var e=this.itemsData.get(t),i=this.itemsData.getDataSet();e&&this.options.onRemove(e,function(e){e&&i.remove(t)})},s.prototype._getType=function(t){return t.type||this.options.type||(t.end?"range":"box")},s.prototype._getGroupId=function(t){var e=this._getType(t);return"background"==e&&void 0==t.group?g:this.groupsData?t.group:f},s.prototype._onUpdate=function(t){var e=this;t.forEach(function(t){var i=e.itemsData.get(t,e.itemOptions),o=e.items[t],n=e._getType(i),r=s.types[n];if(o&&(r&&o instanceof r?e._updateItem(o,i):(e._removeItem(o),o=null)),!o){if(!r)throw new TypeError("rangeoverflow"==n?'Item type "rangeoverflow" is deprecated. Use css styling instead: .vis.timeline .item.range .content {overflow: visible;}':'Unknown item type "'+n+'"');o=new r(i,e.conversion,e.options),o.id=t,e._addItem(o)}}),this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0})},s.prototype._onAdd=s.prototype._onUpdate,s.prototype._onRemove=function(t){var e=0,i=this;t.forEach(function(t){var s=i.items[t];s&&(e++,i._removeItem(s))}),e&&(this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0}))},s.prototype._order=function(){n.forEach(this.groups,function(t){t.order()})},s.prototype._onUpdateGroups=function(t){this._onAddGroups(t)},s.prototype._onAddGroups=function(t){var e=this;t.forEach(function(t){var i=e.groupsData.get(t),s=e.groups[t];if(s)s.setData(i);else{if(t==f||t==g)throw new Error("Illegal group id. "+t+" is a reserved id.");var o=Object.create(e.options);n.extend(o,{height:null}),s=new d(t,i,e),e.groups[t]=s;for(var r in e.items)if(e.items.hasOwnProperty(r)){var a=e.items[r];a.data.group==t&&s.add(a)}s.order(),s.show()}}),this.body.emitter.emit("change",{queue:!0})},s.prototype._onRemoveGroups=function(t){var e=this.groups;t.forEach(function(t){var i=e[t];i&&(i.hide(),delete e[t])}),this.markDirty(),this.body.emitter.emit("change",{queue:!0})},s.prototype._orderGroups=function(){if(this.groupsData){var t=this.groupsData.getIds({order:this.options.groupOrder}),e=!n.equalArray(t,this.groupIds);if(e){var i=this.groups;t.forEach(function(t){i[t].hide()}),t.forEach(function(t){i[t].show()}),this.groupIds=t}return e}return!1},s.prototype._addItem=function(t){this.items[t.id]=t;var e=this._getGroupId(t.data),i=this.groups[e];i&&i.add(t)},s.prototype._updateItem=function(t,e){var i=t.data.group;if(t.setData(e),i!=t.data.group){var s=this.groups[i];s&&s.remove(t);var o=this._getGroupId(t.data),n=this.groups[o];n&&n.add(t)}},s.prototype._removeItem=function(t){t.hide(),delete this.items[t.id];var e=this.selection.indexOf(t.id);-1!=e&&this.selection.splice(e,1),t.parent&&t.parent.remove(t)},s.prototype._constructByEndArray=function(t){for(var e=[],i=0;i0||o.length>0)&&this.body.emitter.emit("select",{items:a})}},s.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.body.util.snap||null,o=s.itemFromTarget(t);if(o){var r=e.itemsData.get(o.id);this.options.onUpdate(r,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var a=n.getAbsoluteLeft(this.dom.frame),h=t.gesture.center.pageX-a,d=this.body.util.toTime(h),l={start:i?i(d):d,content:"new item"};if("range"===this.options.type){var c=this.body.util.toTime(h+this.props.width/5);l.end=i?i(c):c}l[this.itemsData._fieldId]=n.randomUUID();var p=s.groupFromTarget(t);p&&(l.group=p.groupId),this.options.onAdd(l,function(t){t&&e.itemsData.getDataSet().add(t)})}}},s.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e,i=s.itemFromTarget(t);if(i){e=this.getSelection();var o=t.gesture.touches[0]&&t.gesture.touches[0].shiftKey||!1;if(o){e.push(i.id);var n=s._getItemRange(this.itemsData.get(e,this.itemOptions));e=[];for(var r in this.items)if(this.items.hasOwnProperty(r)){var a=this.items[r],h=a.data.start,d=void 0!==a.data.end?a.data.end:h;h>=n.min&&d<=n.max&&e.push(a.id)}}else{var l=e.indexOf(i.id);-1==l?e.push(i.id):e.splice(l,1)}this.setSelection(e),this.body.emitter.emit("select",{items:this.getSelection()})}}},s._getItemRange=function(t){var e=null,i=null;return t.forEach(function(t){(null==i||t.starte)&&(e=t.end):(null==e||t.start>e)&&(e=t.start)}),{min:i,max:e}},s.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},s.groupFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-group"))return e["timeline-group"];e=e.parentNode}return null},s.itemSetFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-itemset"))return e["timeline-itemset"];e=e.parentNode}return null},t.exports=s},function(t,e,i){function s(t,e,i,s){this.body=t,this.defaultOptions={enabled:!0,icons:!0,iconSize:20,iconSpacing:6,left:{visible:!0,position:"top-left"},right:{visible:!0,position:"top-left"}},this.side=i,this.options=o.extend({},this.defaultOptions),this.linegraphOptions=s,this.svgElements={},this.dom={},this.groups={},this.amountOfGroups=0,this._create(),this.setOptions(e)}var o=i(1),n=i(2),r=i(20);s.prototype=new r,s.prototype.clear=function(){this.groups={},this.amountOfGroups=0},s.prototype.addGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.groups[t]=e),this.amountOfGroups+=1},s.prototype.updateGroup=function(t,e){this.groups[t]=e},s.prototype.removeGroup=function(t){this.groups.hasOwnProperty(t)&&(delete this.groups[t],this.amountOfGroups-=1)},s.prototype._create=function(){this.dom.frame=document.createElement("div"),this.dom.frame.className="legend",this.dom.frame.style.position="absolute",this.dom.frame.style.top="10px",this.dom.frame.style.display="block",this.dom.textArea=document.createElement("div"),this.dom.textArea.className="legendText",this.dom.textArea.style.position="relative",this.dom.textArea.style.top="0px",this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="absolute",this.svg.style.top="0px",this.svg.style.width=this.options.iconSize+5+"px",this.svg.style.height="100%",this.dom.frame.appendChild(this.svg),this.dom.frame.appendChild(this.dom.textArea)},s.prototype.hide=function(){this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame)},s.prototype.show=function(){this.dom.frame.parentNode||this.body.dom.center.appendChild(this.dom.frame)},s.prototype.setOptions=function(t){var e=["enabled","orientation","icons","left","right"];o.selectiveDeepExtend(e,this.options,t)},s.prototype.redraw=function(){var t=0;for(var e in this.groups)this.groups.hasOwnProperty(e)&&(1!=this.groups[e].visible||void 0!==this.linegraphOptions.visibility[e]&&1!=this.linegraphOptions.visibility[e]||t++);if(0==this.options[this.side].visible||0==this.amountOfGroups||0==this.options.enabled||0==t)this.hide();else{if(this.show(),"top-left"==this.options[this.side].position||"bottom-left"==this.options[this.side].position?(this.dom.frame.style.left="4px",this.dom.frame.style.textAlign="left",this.dom.textArea.style.textAlign="left",this.dom.textArea.style.left=this.options.iconSize+15+"px",this.dom.textArea.style.right="",this.svg.style.left="0px",this.svg.style.right=""):(this.dom.frame.style.right="4px",this.dom.frame.style.textAlign="right",this.dom.textArea.style.textAlign="right",this.dom.textArea.style.right=this.options.iconSize+15+"px",this.dom.textArea.style.left="",this.svg.style.right="0px",this.svg.style.left=""),"top-left"==this.options[this.side].position||"top-right"==this.options[this.side].position)this.dom.frame.style.top=4-Number(this.body.dom.center.style.top.replace("px",""))+"px",this.dom.frame.style.bottom="";else{var i=this.body.domProps.center.height-this.body.domProps.centerContainer.height;this.dom.frame.style.bottom=4+i+Number(this.body.dom.center.style.top.replace("px",""))+"px",this.dom.frame.style.top=""}0==this.options.icons?(this.dom.frame.style.width=this.dom.textArea.offsetWidth+10+"px",this.dom.textArea.style.right="",this.dom.textArea.style.left="",this.svg.style.width="0px"):(this.dom.frame.style.width=this.options.iconSize+15+this.dom.textArea.offsetWidth+10+"px",this.drawLegendIcons());var s="";for(var e in this.groups)this.groups.hasOwnProperty(e)&&(1!=this.groups[e].visible||void 0!==this.linegraphOptions.visibility[e]&&1!=this.linegraphOptions.visibility[e]||(s+=this.groups[e].content+"
"));this.dom.textArea.innerHTML=s,this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+"px"}},s.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){n.prepareElements(this.svgElements);var t=window.getComputedStyle(this.dom.frame).paddingTop,e=Number(t.replace("px","")),i=e,s=this.options.iconSize,o=.75*this.options.iconSize,r=e+.5*o+3;this.svg.style.width=s+5+e+"px";for(var a in this.groups)this.groups.hasOwnProperty(a)&&(1!=this.groups[a].visible||void 0!==this.linegraphOptions.visibility[a]&&1!=this.linegraphOptions.visibility[a]||(this.groups[a].drawIcon(i,r,this.svgElements,this.svg,s,o),r+=o+this.options.iconSpacing));n.cleanupElements(this.svgElements)}},t.exports=s},function(t,e,i){function s(t,e){this.id=o.randomUUID(),this.body=t,this.defaultOptions={yAxisOrientation:"left",defaultGroup:"default",sort:!0,sampling:!0,graphHeight:"400px",shaded:{enabled:!1,orientation:"bottom"},style:"line",barChart:{width:50,handleOverlap:"overlap",align:"center"},catmullRom:{enabled:!0,parametrization:"centripetal",alpha:.5},drawPoints:{enabled:!0,size:6,style:"square"},dataAxis:{showMinorLabels:!0,showMajorLabels:!0,icons:!1,width:"40px",visible:!0,alignZeros:!0,customRange:{left:{min:void 0,max:void 0},right:{min:void 0,max:void 0}}},legend:{enabled:!1,icons:!0,left:{visible:!0,position:"top-left"},right:{visible:!0,position:"top-right"}},groups:{visibility:{}}},this.options=o.extend({},this.defaultOptions),this.dom={},this.props={},this.hammer=null,this.groups={},this.abortedGraphUpdate=!1,this.autoSizeSVG=!1;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e){i._onAdd(e.items)},update:function(t,e){i._onUpdate(e.items)},remove:function(t,e){i._onRemove(e.items)}},this.groupListeners={add:function(t,e){i._onAddGroups(e.items)},update:function(t,e){i._onUpdateGroups(e.items)},remove:function(t,e){i._onRemoveGroups(e.items)}},this.items={},this.selection=[],this.lastStart=this.body.range.start,this.touchParams={},this.svgElements={},this.setOptions(e),this.groupsUsingDefaultStyles=[0],this.COUNTER=0,this.body.emitter.on("rangechanged",function(){i.lastStart=i.body.range.start,i.svg.style.left=o.option.asSize(-i.width),i.redraw.call(i,!0)}),this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups},this.body.emitter.emit("change")}var o=i(1),n=i(2),r=i(3),a=i(4),h=i(20),d=i(23),l=i(24),c=i(28),p=i(52),u="__ungrouped__";s.prototype=new h,s.prototype._create=function(){var t=document.createElement("div");t.className="LineGraph",this.dom.frame=t,this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="relative",this.svg.style.height=(""+this.options.graphHeight).replace("px","")+"px",this.svg.style.display="block",t.appendChild(this.svg),this.options.dataAxis.orientation="left",this.yAxisLeft=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),delete this.options.dataAxis.orientation,this.legendLeft=new c(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new c(this.body,this.options.legend,"right",this.options.groups),this.show()},s.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","graphHeight","yAxisOrientation","style","barChart","dataAxis","sort","groups"];void 0===t.graphHeight&&void 0!==t.height&&void 0!==this.body.domProps.centerContainer.height?this.autoSizeSVG=!0:void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))0){var d=this.body.util.toGlobalTime(-this.body.domProps.root.width),l=this.body.util.toGlobalTime(2*this.body.domProps.root.width),c={};for(this._getRelevantData(a,c,d,l),this._applySampling(a,c),e=0;eu&&console.log("WARNING: there may be an infinite loop in the _updateGraph emitter cycle."),this.COUNTER=0,this.abortedGraphUpdate=!1,e=0;e0)for(r=0;rs){d.push(h);break}d.push(h)}}else for(a=0;ai&&h.x0)for(var s=0;s0){var n=1,r=o.length,a=this.body.util.toGlobalScreen(o[o.length-1].x)-this.body.util.toGlobalScreen(o[0].x),h=r/a;n=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=[],l=0;r>l;l+=n)d.push(o[l]);e[t[s]]=d}}},s.prototype._getYRanges=function(t,e,i){var s,o,n,r,a=[],h=[];if(t.length>0){for(n=0;n0&&(o=this.groups[t[n]],"stack"==r.barChart.handleOverlap&&"bar"==r.style?"left"==r.yAxisOrientation?a=a.concat(o.getYRange(s)):h=h.concat(o.getYRange(s)):i[t[n]]=o.getYRange(s,t[n]));p.getStackedBarYRange(a,i,t,"__barchartLeft","left"),p.getStackedBarYRange(h,i,t,"__barchartRight","right")}},s.prototype._updateYAxis=function(t,e){var i,s,o=!1,n=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var c=0;ci?i:a,d=s>d?s:d):(r=!0,h=h>i?i:h,l=s>l?s:l));1==n&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}return o=this._toggleAxisVisiblity(n,this.yAxisLeft)||o,o=this._toggleAxisVisiblity(r,this.yAxisRight)||o,1==r&&1==n?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!n,0==this.yAxisRight.master?(this.yAxisLeft.lineOffset=1==r?this.yAxisRight.width:0,o=this.yAxisLeft.redraw()||o,this.yAxisRight.stepPixelsForced=this.yAxisLeft.stepPixels,this.yAxisRight.zeroCrossing=this.yAxisLeft.zeroCrossing,o=this.yAxisRight.redraw()||o):o=this.yAxisRight.redraw()||o,-1!=t.indexOf("__barchartLeft")&&t.splice(t.indexOf("__barchartLeft"),1),-1!=t.indexOf("__barchartRight")&&t.splice(t.indexOf("__barchartRight"),1),o},s.prototype._toggleAxisVisiblity=function(t,e){var i=!1;return 0==t?e.dom.frame.parentNode&&0==e.hidden&&(e.hide(),i=!0):e.dom.frame.parentNode||1!=e.hidden||(e.show(),i=!0),i},s.prototype._convertXcoordinates=function(t){for(var e,i,s=[],o=this.body.util.toScreen,n=0;nc;){c++;var p=h.getCurrent(),u=this.body.util.toScreen(p),m=h.isMajor();this.options.showMinorLabels&&this._repaintMinorText(u,h.getLabelMinor(),t),m&&this.options.showMajorLabels?(u>0&&(void 0==l&&(l=u),this._repaintMajorText(u,h.getLabelMajor(),t)),this._repaintMajorLine(u,t)):this._repaintMinorLine(u,t),h.next()}if(this.options.showMajorLabels){var f=this.body.util.toTime(0),g=h.getLabelMajor(f),v=g.length*(this.props.majorCharWidth||10)+10;(void 0==l||l>v)&&this._repaintMajorText(0,g,t)}o.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},s.prototype._repaintMinorText=function(t,e,i){var s=this.dom.redundant.minorTexts.shift();if(!s){var o=document.createTextNode("");s=document.createElement("div"),s.appendChild(o),s.className="text minor",this.dom.foreground.appendChild(s)}this.dom.minorTexts.push(s),s.childNodes[0].nodeValue=e,s.style.top="top"==i?this.props.majorLabelHeight+"px":"0",s.style.left=t+"px"},s.prototype._repaintMajorText=function(t,e,i){var s=this.dom.redundant.majorTexts.shift();if(!s){var o=document.createTextNode(e);s=document.createElement("div"),s.className="text major",s.appendChild(o),this.dom.foreground.appendChild(s)}this.dom.majorTexts.push(s),s.childNodes[0].nodeValue=e,s.style.top="top"==i?"0":this.props.minorLabelHeight+"px",s.style.left=t+"px"},s.prototype._repaintMinorLine=function(t,e){var i=this.dom.redundant.minorLines.shift();i||(i=document.createElement("div"),i.className="grid vertical minor",this.dom.background.appendChild(i)),this.dom.minorLines.push(i);var s=this.props;i.style.top="top"==e?s.majorLabelHeight+"px":this.body.domProps.top.height+"px",i.style.height=s.minorLineHeight+"px",i.style.left=t-s.minorLineWidth/2+"px"},s.prototype._repaintMajorLine=function(t,e){var i=this.dom.redundant.majorLines.shift();i||(i=document.createElement("DIV"),i.className="grid vertical major",this.dom.background.appendChild(i)),this.dom.majorLines.push(i);var s=this.props;i.style.top="top"==e?"0":this.body.domProps.top.height+"px",i.style.left=t-s.majorLineWidth/2+"px",i.style.height=s.majorLineHeight+"px"},s.prototype._calculateCharSize=function(){this.dom.measureCharMinor||(this.dom.measureCharMinor=document.createElement("DIV"),this.dom.measureCharMinor.className="text minor measure",this.dom.measureCharMinor.style.position="absolute",this.dom.measureCharMinor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMinor)),this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight,this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth,this.dom.measureCharMajor||(this.dom.measureCharMajor=document.createElement("DIV"),this.dom.measureCharMajor.className="text major measure",this.dom.measureCharMajor.style.position="absolute",this.dom.measureCharMajor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMajor)),this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight,this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth},s.prototype.snap=function(t){return this.step.snap(t)},t.exports=s},function(t,e,i){function s(t,e,i){this.id=null,this.parent=null,this.data=t,this.dom=null,this.conversion=e||{},this.options=i||{},this.selected=!1,this.displayed=!1,this.dirty=!0,this.top=null,this.left=null,this.width=null,this.height=null}var o=i(45),n=i(1);s.prototype.stack=!0,s.prototype.select=function(){this.selected=!0,this.dirty=!0,this.displayed&&this.redraw()},s.prototype.unselect=function(){this.selected=!1,this.dirty=!0,this.displayed&&this.redraw()},s.prototype.setData=function(t){this.data=t,this.dirty=!0,this.displayed&&this.redraw()},s.prototype.setParent=function(t){this.displayed?(this.hide(),this.parent=t,this.parent&&this.show()):this.parent=t},s.prototype.isVisible=function(){return!1},s.prototype.show=function(){return!1},s.prototype.hide=function(){return!1},s.prototype.redraw=function(){},s.prototype.repositionX=function(){},s.prototype.repositionY=function(){},s.prototype._repaintDeleteButton=function(t){if(this.selected&&this.options.editable.remove&&!this.dom.deleteButton){var e=this,i=document.createElement("div");i.className="delete",i.title="Delete this item",o(i,{preventDefault:!0}).on("tap",function(t){e.parent.removeFromDataSet(e),t.stopPropagation()}),t.appendChild(i),this.dom.deleteButton=i}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},s.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;if(e!==this.content){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},s.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("title")},s.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;it.start},s.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.content=document.createElement("div"),t.content.className="content",t.box.appendChild(t.content),this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.background;if(!e)throw new Error("Cannot redraw item: parent has no background container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.content),this._updateDataAttributes(this.dom.content),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.props.content.width=this.dom.content.offsetWidth,this.height=0,this.dirty=!1}},s.prototype.show=r.prototype.show,s.prototype.hide=r.prototype.hide,s.prototype.repositionX=r.prototype.repositionX,s.prototype.repositionY=function(t){var e="top"===this.options.orientation;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var s=this.data.subgroup,o=this.parent.subgroups,r=o[s].index;if(1==e){i=this.parent.subgroups[s].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in o)o.hasOwnProperty(h)&&1==o[h].visible&&o[h].indexr&&(a+=o[h].height+t.item.vertical);i=this.parent.subgroups[s].height+t.item.vertical,this.dom.box.style.top=a+"px",this.dom.box.style.bottom=""}}else this.parent instanceof n?(i=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height),this.dom.box.style.top=e?"0":"",this.dom.box.style.bottom=e?"":"0"):(i=this.parent.height,this.dom.box.style.top=this.parent.top+"px",this.dom.box.style.bottom="");this.dom.box.style.height=i+"px"},t.exports=s},function(t,e,i){function s(t,e,i){if(this.props={dot:{width:0,height:0},line:{width:0,height:0}},t&&void 0==t.start)throw new Error('Property "start" missing in item '+t);o.call(this,t,e,i)}{var o=i(31);i(1)}s.prototype=new o(null,null,null),s.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start-e&&this.data.startt.start},s.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.content=document.createElement("div"),t.content.className="content",t.box.appendChild(t.content),t.box["timeline-item"]=this,this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.foreground;if(!e)throw new Error("Cannot redraw item: parent has no foreground container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.box),this._updateDataAttributes(this.dom.box),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.dom.content.style.maxWidth="none",this.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,this.dom.content.style.maxWidth="",this.dirty=!1}this._repaintDeleteButton(t.box),this._repaintDragLeft(),this._repaintDragRight()},s.prototype.show=function(){this.displayed||this.redraw()},s.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.top=null,this.left=null,this.displayed=!1}},s.prototype.repositionX=function(){var t,e,i=this.parent.width,s=this.conversion.toScreen(this.data.start),o=this.conversion.toScreen(this.data.end);-i>s&&(s=-i),o>2*i&&(o=2*i);var n=Math.max(o-s,1);switch(this.overflow?(this.left=s,this.width=n+this.props.content.width,e=this.props.content.width):(this.left=s,this.width=n,e=Math.min(o-s-2*this.options.padding,this.props.content.width)),this.dom.box.style.left=this.left+"px",this.dom.box.style.width=n+"px",this.options.align){case"left":this.dom.content.style.left="0";break;case"right":this.dom.content.style.left=Math.max(n-e-2*this.options.padding,0)+"px";break;case"center":this.dom.content.style.left=Math.max((n-e-2*this.options.padding)/2,0)+"px";break;default:t=this.overflow?o>0?Math.max(-s,0):-e:0>s?Math.min(-s,o-s-e-2*this.options.padding):0,this.dom.content.style.left=t+"px"}},s.prototype.repositionY=function(){var t=this.options.orientation,e=this.dom.box;e.style.top="top"==t?this.top+"px":this.parent.height-this.top-this.height+"px"},s.prototype._repaintDragLeft=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragLeft){var t=document.createElement("div");t.className="drag-left",t.dragLeftItem=this,o(t,{preventDefault:!0}).on("drag",function(){}),this.dom.box.appendChild(t),this.dom.dragLeft=t}else!this.selected&&this.dom.dragLeft&&(this.dom.dragLeft.parentNode&&this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft),this.dom.dragLeft=null)},s.prototype._repaintDragRight=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragRight){var t=document.createElement("div");t.className="drag-right",t.dragRightItem=this,o(t,{preventDefault:!0}).on("drag",function(){}),this.dom.box.appendChild(t),this.dom.dragRight=t}else!this.selected&&this.dom.dragRight&&(this.dom.dragRight.parentNode&&this.dom.dragRight.parentNode.removeChild(this.dom.dragRight),this.dom.dragRight=null)},t.exports=s},function(t,e,i){function s(t,e,i){if(!(this instanceof s))throw new SyntaxError("Constructor must be called with the new operator");this._initializeMixinLoaders(),this.containerElement=t,this.renderRefreshRate=60,this.renderTimestep=1e3/this.renderRefreshRate,this.renderTime=.5*this.renderTimestep,this.maxPhysicsTicksPerRender=3,this.physicsDiscreteStepsize=.5,this.initializing=!0,this.triggerFunctions={add:null,edit:null,editEdge:null,connect:null,del:null},this.defaultOptions={nodes:{mass:1,radiusMin:10,radiusMax:30,radius:10,shape:"ellipse",image:void 0,widthMin:16,widthMax:64,fontColor:"black",fontSize:14,fontFace:"verdana",fontFill:void 0,level:-1,color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},borderColor:"#2B7CE9",backgroundColor:"#97C2FC",highlightColor:"#D2E5FF",group:void 0,borderWidth:1,borderWidthSelected:void 0},edges:{widthMin:1,widthMax:15,width:1,widthSelectionMultiplier:2,hoverWidth:1.5,style:"line",color:{color:"#848484",highlight:"#848484",hover:"#848484"},fontColor:"#343434",fontSize:14,fontFace:"arial",fontFill:"white",arrowScaleFactor:1,dash:{length:10,gap:5,altLength:void 0},inheritColor:"from"},configurePhysics:!1,physics:{barnesHut:{enabled:!0,theta:1/.6,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09},repulsion:{centralGravity:0,springLength:200,springConstant:.05,nodeDistance:100,damping:.09},hierarchicalRepulsion:{enabled:!1,centralGravity:0,springLength:100,springConstant:.01,nodeDistance:150,damping:.09},damping:null,centralGravity:null,springLength:null,springConstant:null},clustering:{enabled:!1,initialMaxNodes:100,clusterThreshold:500,reduceToNodes:300,chainThreshold:.4,clusterEdgeThreshold:20,sectorThreshold:100,screenSizeThreshold:.2,fontSizeMultiplier:4,maxFontSize:1e3,forceAmplification:.1,distanceAmplification:.1,edgeGrowth:20,nodeScaling:{width:1,height:1,radius:1},maxNodeSizeIncrements:600,activeAreaBoxSize:80,clusterLevelDifference:2},navigation:{enabled:!1},keyboard:{enabled:!1,speed:{x:10,y:10,zoom:.02}},dataManipulation:{enabled:!1,initiallyVisible:!1},hierarchicalLayout:{enabled:!1,levelSeparation:150,nodeSpacing:100,direction:"UD",layout:"hubsize"},freezeForStabilization:!1,smoothCurves:{enabled:!0,dynamic:!0,type:"continuous",roundness:.5},maxVelocity:30,minVelocity:.1,stabilize:!0,stabilizationIterations:1e3,locale:"en",locales:_,tooltip:{delay:300,fontColor:"black",fontSize:14,fontFace:"verdana",color:{border:"#666",background:"#FFFFC6"}},dragNetwork:!0,dragNodes:!0,zoomable:!0,hover:!1,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,width:"100%",height:"100%",selectable:!0},this.constants=a.extend({},this.defaultOptions),this.pixelRatio=1,this.hoverObj={nodes:{},edges:{}},this.controlNodesActive=!1,this.navigationHammers={existing:[],_new:[]},this.animationSpeed=1/this.renderRefreshRate,this.animationEasingFunction="easeInOutQuint",this.easingTime=0,this.sourceScale=0,this.targetScale=0,this.sourceTranslation=0,this.targetTranslation=0,this.lockedOnNodeId=null,this.lockedOnNodeOffset=null,this.touchTime=0;var o=this;this.groups=new u,this.images=new m,this.images.setOnloadCallback(function(){o._redraw()}),this.xIncrement=0,this.yIncrement=0,this.zoomIncrement=0,this._loadPhysicsSystem(),this._create(),this._loadSectorSystem(),this._loadClusterSystem(),this._loadSelectionSystem(),this._loadHierarchySystem(),this._setTranslation(this.frame.clientWidth/2,this.frame.clientHeight/2),this._setScale(1),this.setOptions(i),this.freezeSimulation=!1,this.cachedFunctions={},this.startedStabilization=!1,this.stabilized=!1,this.stabilizationIterations=null,this.draggingNodes=!1,this.calculationNodes={},this.calculationNodeIndices=[],this.nodeIndices=[],this.nodes={},this.edges={},this.canvasTopLeft={x:0,y:0},this.canvasBottomRight={x:0,y:0},this.pointerPosition={x:0,y:0},this.areaCenter={},this.scale=1,this.previousScale=this.scale,this.nodesData=null,this.edgesData=null,this.nodesListeners={add:function(t,e){o._addNodes(e.items),o.start()},update:function(t,e){o._updateNodes(e.items,e.data),o.start()},remove:function(t,e){o._removeNodes(e.items),o.start()}},this.edgesListeners={add:function(t,e){o._addEdges(e.items),o.start()},update:function(t,e){o._updateEdges(e.items),o.start()},remove:function(t,e){o._removeEdges(e.items),o.start()}},this.moving=!0,this.timer=void 0,this.setData(e,this.constants.clustering.enabled||this.constants.hierarchicalLayout.enabled),this.initializing=!1,1==this.constants.hierarchicalLayout.enabled?this._setupHierarchicalLayout():0==this.constants.stabilize&&this.zoomExtent(void 0,!0,this.constants.clustering.enabled),this.constants.clustering.enabled&&this.startWithClustering()}var o=i(56),n=i(45),r=i(57),a=i(1),h=i(47),d=i(3),l=i(4),c=i(42),p=i(43),u=i(38),m=i(39),f=i(40),g=i(37),v=i(41),y=i(54),b=i(55),_=i(49);i(50),o(s.prototype),s.prototype._getScriptPath=function(){for(var t=document.getElementsByTagName("script"),e=0;et.x&&(s=t.x),ot.y&&(e=t.y),i=this.constants.clustering.initialMaxNodes?49.07548/(n+142.05338)+91444e-8:12.662/(n+7.4147)+.0964822:1==this.constants.clustering.enabled&&n>=this.constants.clustering.initialMaxNodes?77.5271985/(n+187.266146)+476710517e-13:30.5062972/(n+19.93597763)+.08413486;var r=Math.min(this.frame.canvas.clientWidth/600,this.frame.canvas.clientHeight/600);s*=r}else{var a=1.1*Math.abs(o.maxX-o.minX),h=1.1*Math.abs(o.maxY-o.minY),d=this.frame.canvas.clientWidth/a,l=this.frame.canvas.clientHeight/h;s=l>=d?d:l}s>1&&(s=1);var c=this._findCenter(o);if(0==i){var p={position:c,scale:s,animation:t};this.moveTo(p),this.moving=!0,this.start()}else c.x*=s,c.y*=s,c.x-=.5*this.frame.canvas.clientWidth,c.y-=.5*this.frame.canvas.clientHeight,this._setScale(s),this._setTranslation(-c.x,-c.y)},s.prototype._updateNodeIndexList=function(){this._clearNodeIndexList();for(var t in this.nodes)this.nodes.hasOwnProperty(t)&&this.nodeIndices.push(t)},s.prototype.setData=function(t,e){if(void 0===e&&(e=!1),this.initializing=!0,t&&t.dot&&(t.nodes||t.edges))throw new SyntaxError('Data must contain either parameter "dot" or parameter pair "nodes" and "edges", but not both.');if(this.setOptions(t&&t.options),t&&t.dot){if(t&&t.dot){var i=c.DOTToGraph(t.dot);return void this.setData(i)}}else if(t&&t.gephi){if(t&&t.gephi){var s=p.parseGephi(t.gephi);return void this.setData(s)}}else this._setNodes(t&&t.nodes),this._setEdges(t&&t.edges);this._putDataInSector(),0==e&&(1==this.constants.hierarchicalLayout.enabled?(this._resetLevels(),this._setupHierarchicalLayout()):this.constants.stabilize&&this._stabilize(),this.start()),this.initializing=!1},s.prototype.setOptions=function(t){if(t){var e,i=["nodes","edges","smoothCurves","hierarchicalLayout","clustering","navigation","keyboard","dataManipulation","onAdd","onEdit","onEditEdge","onConnect","onDelete","clickToUse"];if(a.selectiveNotDeepExtend(i,this.constants,t),a.selectiveNotDeepExtend(["color"],this.constants.nodes,t.nodes),a.selectiveNotDeepExtend(["color","length"],this.constants.edges,t.edges),t.physics&&(a.mergeOptions(this.constants.physics,t.physics,"barnesHut"),a.mergeOptions(this.constants.physics,t.physics,"repulsion"),t.physics.hierarchicalRepulsion)){this.constants.hierarchicalLayout.enabled=!0,this.constants.physics.hierarchicalRepulsion.enabled=!0,this.constants.physics.barnesHut.enabled=!1;for(e in t.physics.hierarchicalRepulsion)t.physics.hierarchicalRepulsion.hasOwnProperty(e)&&(this.constants.physics.hierarchicalRepulsion[e]=t.physics.hierarchicalRepulsion[e])}if(t.onAdd&&(this.triggerFunctions.add=t.onAdd),t.onEdit&&(this.triggerFunctions.edit=t.onEdit),t.onEditEdge&&(this.triggerFunctions.editEdge=t.onEditEdge),t.onConnect&&(this.triggerFunctions.connect=t.onConnect),t.onDelete&&(this.triggerFunctions.del=t.onDelete),a.mergeOptions(this.constants,t,"smoothCurves"),a.mergeOptions(this.constants,t,"hierarchicalLayout"),a.mergeOptions(this.constants,t,"clustering"),a.mergeOptions(this.constants,t,"navigation"),a.mergeOptions(this.constants,t,"keyboard"),a.mergeOptions(this.constants,t,"dataManipulation"),t.dataManipulation&&(this.editMode=this.constants.dataManipulation.initiallyVisible),t.edges&&(void 0!==t.edges.color&&(a.isString(t.edges.color)?(this.constants.edges.color={},this.constants.edges.color.color=t.edges.color,this.constants.edges.color.highlight=t.edges.color,this.constants.edges.color.hover=t.edges.color):(void 0!==t.edges.color.color&&(this.constants.edges.color.color=t.edges.color.color),void 0!==t.edges.color.highlight&&(this.constants.edges.color.highlight=t.edges.color.highlight),void 0!==t.edges.color.hover&&(this.constants.edges.color.hover=t.edges.color.hover))),t.edges.fontColor||void 0!==t.edges.color&&(a.isString(t.edges.color)?this.constants.edges.fontColor=t.edges.color:void 0!==t.edges.color.color&&(this.constants.edges.fontColor=t.edges.color.color))),t.nodes&&t.nodes.color){var s=a.parseColor(t.nodes.color); -this.constants.nodes.color.background=s.background,this.constants.nodes.color.border=s.border,this.constants.nodes.color.highlight.background=s.highlight.background,this.constants.nodes.color.highlight.border=s.highlight.border,this.constants.nodes.color.hover.background=s.hover.background,this.constants.nodes.color.hover.border=s.hover.border}if(t.groups)for(var o in t.groups)if(t.groups.hasOwnProperty(o)){var n=t.groups[o];this.groups.add(o,n)}if(t.tooltip){for(e in t.tooltip)t.tooltip.hasOwnProperty(e)&&(this.constants.tooltip[e]=t.tooltip[e]);t.tooltip.color&&(this.constants.tooltip.color=a.parseColor(t.tooltip.color))}if("clickToUse"in t&&(t.clickToUse?(this.activator=new b(this.frame),this.activator.on("change",this._createKeyBinds.bind(this))):this.activator&&(this.activator.destroy(),delete this.activator)),t.labels)throw new Error('Option "labels" is deprecated. Use options "locale" and "locales" instead.')}this._loadPhysicsSystem(),this._loadNavigationControls(),this._loadManipulationSystem(),this._configureSmoothCurves(),this._createKeyBinds(),this.setSize(this.constants.width,this.constants.height),this.moving=!0,this.start()},s.prototype._create=function(){for(;this.containerElement.hasChildNodes();)this.containerElement.removeChild(this.containerElement.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis network-frame",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}var i=this;this.drag={},this.pinch={},this.hammer=n(this.frame.canvas,{prevent_default:!0}),this.hammer.on("tap",i._onTap.bind(i)),this.hammer.on("doubletap",i._onDoubleTap.bind(i)),this.hammer.on("hold",i._onHold.bind(i)),this.hammer.on("pinch",i._onPinch.bind(i)),this.hammer.on("touch",i._onTouch.bind(i)),this.hammer.on("dragstart",i._onDragStart.bind(i)),this.hammer.on("drag",i._onDrag.bind(i)),this.hammer.on("dragend",i._onDragEnd.bind(i)),this.hammer.on("mousewheel",i._onMouseWheel.bind(i)),this.hammer.on("DOMMouseScroll",i._onMouseWheel.bind(i)),this.hammer.on("mousemove",i._onMouseMoveTitle.bind(i)),this.hammerFrame=n(this.frame,{prevent_default:!0}),this.hammerFrame.on("release",i._onRelease.bind(i)),this.containerElement.appendChild(this.frame)},s.prototype._createKeyBinds=function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=r(),this.keycharm.reset(),this.constants.keyboard.enabled&&this.isActive()&&(this.keycharm.bind("up",this._moveUp.bind(t),"keydown"),this.keycharm.bind("up",this._yStopMoving.bind(t),"keyup"),this.keycharm.bind("down",this._moveDown.bind(t),"keydown"),this.keycharm.bind("down",this._yStopMoving.bind(t),"keyup"),this.keycharm.bind("left",this._moveLeft.bind(t),"keydown"),this.keycharm.bind("left",this._xStopMoving.bind(t),"keyup"),this.keycharm.bind("right",this._moveRight.bind(t),"keydown"),this.keycharm.bind("right",this._xStopMoving.bind(t),"keyup"),this.keycharm.bind("=",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("=",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("num+",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("num+",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("num-",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("num-",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("-",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("-",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("[",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("[",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("]",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("]",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("pageup",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("pageup",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("pagedown",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("pagedown",this._stopZoom.bind(t),"keyup")),1==this.constants.dataManipulation.enabled&&(this.keycharm.bind("esc",this._createManipulatorBar.bind(t)),this.keycharm.bind("delete",this._deleteSelected.bind(t)))},s.prototype._getPointer=function(t){return{x:t.pageX-a.getAbsoluteLeft(this.frame.canvas),y:t.pageY-a.getAbsoluteTop(this.frame.canvas)}},s.prototype._onTouch=function(t){(new Date).valueOf()-this.touchTime>100&&(this.drag.pointer=this._getPointer(t.gesture.center),this.drag.pinched=!1,this.pinch.scale=this._getScale(),this.touchTime=(new Date).valueOf(),this._handleTouch(this.drag.pointer))},s.prototype._onDragStart=function(){this._handleDragStart()},s.prototype._handleDragStart=function(){var t=this.drag,e=this._getNodeAt(t.pointer);if(t.dragging=!0,t.selection=[],t.translation=this._getTranslation(),t.nodeId=null,this.draggingNodes=!1,null!=e&&1==this.constants.dragNodes){this.draggingNodes=!0,t.nodeId=e.id,e.isSelected()||this._selectObject(e,!1),this.emit("dragStart",{nodeIds:this.getSelection().nodes});for(var i in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(i)){var s=this.selectionObj.nodes[i],o={id:s.id,node:s,x:s.x,y:s.y,xFixed:s.xFixed,yFixed:s.yFixed};s.xFixed=!0,s.yFixed=!0,t.selection.push(o)}}},s.prototype._onDrag=function(t){this._handleOnDrag(t)},s.prototype._handleOnDrag=function(t){if(!this.drag.pinched){this.releaseNode();var e=this._getPointer(t.gesture.center),i=this,s=this.drag,o=s.selection;if(o&&o.length&&1==this.constants.dragNodes){var n=e.x-s.pointer.x,r=e.y-s.pointer.y;o.forEach(function(t){var e=t.node;t.xFixed||(e.x=i._XconvertDOMtoCanvas(i._XconvertCanvasToDOM(t.x)+n)),t.yFixed||(e.y=i._YconvertDOMtoCanvas(i._YconvertCanvasToDOM(t.y)+r))}),this.moving||(this.moving=!0,this.start())}else if(1==this.constants.dragNetwork){var a=e.x-this.drag.pointer.x,h=e.y-this.drag.pointer.y;this._setTranslation(this.drag.translation.x+a,this.drag.translation.y+h),this._redraw()}}},s.prototype._onDragEnd=function(t){this._handleDragEnd(t)},s.prototype._handleDragEnd=function(){this.drag.dragging=!1;var t=this.drag.selection;t&&t.length?(t.forEach(function(t){t.node.xFixed=t.xFixed,t.node.yFixed=t.yFixed}),this.moving=!0,this.start()):this._redraw(),0==this.draggingNodes?this.emit("dragEnd",{nodeIds:[]}):this.emit("dragEnd",{nodeIds:this.getSelection().nodes})},s.prototype._onTap=function(t){var e=this._getPointer(t.gesture.center);this.pointerPosition=e,this._handleTap(e)},s.prototype._onDoubleTap=function(t){var e=this._getPointer(t.gesture.center);this._handleDoubleTap(e)},s.prototype._onHold=function(t){var e=this._getPointer(t.gesture.center);this.pointerPosition=e,this._handleOnHold(e)},s.prototype._onRelease=function(t){var e=this._getPointer(t.gesture.center);this._handleOnRelease(e)},s.prototype._onPinch=function(t){var e=this._getPointer(t.gesture.center);this.drag.pinched=!0,"scale"in this.pinch||(this.pinch.scale=1);var i=this.pinch.scale*t.gesture.scale;this._zoom(i,e)},s.prototype._zoom=function(t,e){if(1==this.constants.zoomable){var i=this._getScale();1e-5>t&&(t=1e-5),t>10&&(t=10);var s=null;void 0!==this.drag&&1==this.drag.dragging&&(s=this.DOMtoCanvas(this.drag.pointer));var o=this._getTranslation(),n=t/i,r=(1-n)*e.x+o.x*n,a=(1-n)*e.y+o.y*n;if(this.areaCenter={x:this._XconvertDOMtoCanvas(e.x),y:this._YconvertDOMtoCanvas(e.y)},this._setScale(t),this._setTranslation(r,a),this.updateClustersDefault(),null!=s){var h=this.canvasToDOM(s);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}return this._redraw(),t>i?this.emit("zoom",{direction:"+"}):this.emit("zoom",{direction:"-"}),t}},s.prototype._onMouseWheel=function(t){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i=this._getScale(),s=e/10;0>e&&(s/=1-s),i*=1+s;var o=h.fakeGesture(this,t),n=this._getPointer(o.center);this._zoom(i,n)}t.preventDefault()},s.prototype._onMouseMoveTitle=function(t){var e=h.fakeGesture(this,t),i=this._getPointer(e.center);this.popupObj&&this._checkHidePopup(i);var s=this,o=function(){s._checkShowPopup(i)};if(this.popupTimer&&clearInterval(this.popupTimer),this.drag.dragging||(this.popupTimer=setTimeout(o,this.constants.tooltip.delay)),1==this.constants.hover){for(var n in this.hoverObj.edges)this.hoverObj.edges.hasOwnProperty(n)&&(this.hoverObj.edges[n].hover=!1,delete this.hoverObj.edges[n]);var r=this._getNodeAt(i);null==r&&(r=this._getEdgeAt(i)),null!=r&&this._hoverObject(r);for(var a in this.hoverObj.nodes)this.hoverObj.nodes.hasOwnProperty(a)&&(r instanceof f&&r.id!=a||r instanceof g||null==r)&&(this._blurObject(this.hoverObj.nodes[a]),delete this.hoverObj.nodes[a]);this.redraw()}},s.prototype._checkShowPopup=function(t){var e,i={left:this._XconvertDOMtoCanvas(t.x),top:this._YconvertDOMtoCanvas(t.y),right:this._XconvertDOMtoCanvas(t.x),bottom:this._YconvertDOMtoCanvas(t.y)},s=this.popupObj;if(void 0==this.popupObj){var o=this.nodes;for(e in o)if(o.hasOwnProperty(e)){var n=o[e];if(void 0!==n.getTitle()&&n.isOverlappingWith(i)){this.popupObj=n;break}}}if(void 0===this.popupObj){var r=this.edges;for(e in r)if(r.hasOwnProperty(e)){var a=r[e];if(a.connected&&void 0!==a.getTitle()&&a.isOverlappingWith(i)){this.popupObj=a;break}}}if(this.popupObj){if(this.popupObj!=s){var h=this;h.popup||(h.popup=new v(h.frame,h.constants.tooltip)),h.popup.setPosition(t.x-3,t.y-3),h.popup.setText(h.popupObj.getTitle()),h.popup.show()}}else this.popup&&this.popup.hide()},s.prototype._checkHidePopup=function(t){this.popupObj&&this._getNodeAt(t)||(this.popupObj=void 0,this.popup&&this.popup.hide())},s.prototype.setSize=function(t,e){var i=!1,s=this.frame.canvas.width,o=this.frame.canvas.height;t!=this.constants.width||e!=this.constants.height||this.frame.style.width!=t||this.frame.style.height!=e?(this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=this.frame.canvas.clientWidth*this.pixelRatio,this.frame.canvas.height=this.frame.canvas.clientHeight*this.pixelRatio,this.constants.width=t,this.constants.height=e,i=!0):(this.frame.canvas.width!=this.frame.canvas.clientWidth*this.pixelRatio&&(this.frame.canvas.width=this.frame.canvas.clientWidth*this.pixelRatio,i=!0),this.frame.canvas.height!=this.frame.canvas.clientHeight*this.pixelRatio&&(this.frame.canvas.height=this.frame.canvas.clientHeight*this.pixelRatio,i=!0)),1==i&&this.emit("resize",{width:this.frame.canvas.width*this.pixelRatio,height:this.frame.canvas.height*this.pixelRatio,oldWidth:s*this.pixelRatio,oldHeight:o*this.pixelRatio})},s.prototype._setNodes=function(t){var e=this.nodesData;if(t instanceof d||t instanceof l)this.nodesData=t;else if(Array.isArray(t))this.nodesData=new d,this.nodesData.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.nodesData=new d}if(e&&a.forEach(this.nodesListeners,function(t,i){e.off(i,t)}),this.nodes={},this.nodesData){var i=this;a.forEach(this.nodesListeners,function(t,e){i.nodesData.on(e,t)});var s=this.nodesData.getIds();this._addNodes(s)}this._updateSelection()},s.prototype._addNodes=function(t){for(var e,i=0,s=t.length;s>i;i++){e=t[i];var o=this.nodesData.get(e),n=new f(o,this.images,this.groups,this.constants);if(this.nodes[e]=n,!(0!=n.xFixed&&0!=n.yFixed||null!==n.x&&null!==n.y)){var r=1*t.length+10,a=2*Math.PI*Math.random();0==n.xFixed&&(n.x=r*Math.cos(a)),0==n.yFixed&&(n.y=r*Math.sin(a))}this.moving=!0}this._updateNodeIndexList(),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this._updateCalculationNodes(),this._reconnectEdges(),this._updateValueRange(this.nodes),this.updateLabels()},s.prototype._updateNodes=function(t,e){for(var i=this.nodes,s=0,o=t.length;o>s;s++){var n=t[s],r=i[n],a=e[s];r?r.setProperties(a,this.constants):(r=new f(properties,this.images,this.groups,this.constants),i[n]=r)}this.moving=!0,1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this._updateNodeIndexList(),this._updateValueRange(i)},s.prototype._removeNodes=function(t){for(var e=this.nodes,i=0,s=t.length;s>i;i++){var o=t[i];delete e[o]}this._updateNodeIndexList(),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this._updateCalculationNodes(),this._reconnectEdges(),this._updateSelection(),this._updateValueRange(e)},s.prototype._setEdges=function(t){var e=this.edgesData;if(t instanceof d||t instanceof l)this.edgesData=t;else if(Array.isArray(t))this.edgesData=new d,this.edgesData.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.edgesData=new d}if(e&&a.forEach(this.edgesListeners,function(t,i){e.off(i,t)}),this.edges={},this.edgesData){var i=this;a.forEach(this.edgesListeners,function(t,e){i.edgesData.on(e,t)});var s=this.edgesData.getIds();this._addEdges(s)}this._reconnectEdges()},s.prototype._addEdges=function(t){for(var e=this.edges,i=this.edgesData,s=0,o=t.length;o>s;s++){var n=t[s],r=e[n];r&&r.disconnect();var a=i.get(n,{showInternalIds:!0});e[n]=new g(a,this,this.constants)}this.moving=!0,this._updateValueRange(e),this._createBezierNodes(),this._updateCalculationNodes(),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout())},s.prototype._updateEdges=function(t){for(var e=this.edges,i=this.edgesData,s=0,o=t.length;o>s;s++){var n=t[s],r=i.get(n),a=e[n];a?(a.disconnect(),a.setProperties(r,this.constants),a.connect()):(a=new g(r,this,this.constants),this.edges[n]=a)}this._createBezierNodes(),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this.moving=!0,this._updateValueRange(e)},s.prototype._removeEdges=function(t){for(var e=this.edges,i=0,s=t.length;s>i;i++){var o=t[i],n=e[o];n&&(null!=n.via&&delete this.sectors.support.nodes[n.via.id],n.disconnect(),delete e[o])}this.moving=!0,this._updateValueRange(e),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this._updateCalculationNodes()},s.prototype._reconnectEdges=function(){var t,e=this.nodes,i=this.edges;for(t in e)e.hasOwnProperty(t)&&(e[t].edges=[],e[t].dynamicEdges=[]);for(t in i)if(i.hasOwnProperty(t)){var s=i[t];s.from=null,s.to=null,s.connect()}},s.prototype._updateValueRange=function(t){var e,i=void 0,s=void 0;for(e in t)if(t.hasOwnProperty(e)){var o=t[e].getValue();void 0!==o&&(i=void 0===i?o:Math.min(o,i),s=void 0===s?o:Math.max(o,s))}if(void 0!==i&&void 0!==s)for(e in t)t.hasOwnProperty(e)&&t[e].setValueRange(i,s)},s.prototype.redraw=function(){this.setSize(this.constants.width,this.constants.height),this._redraw()},s.prototype._redraw=function(){var t=this.frame.canvas.getContext("2d");t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var e=this.frame.canvas.width*this.pixelRatio,i=this.frame.canvas.height*this.pixelRatio;t.clearRect(0,0,e,i),t.save(),t.translate(this.translation.x,this.translation.y),t.scale(this.scale,this.scale),this.canvasTopLeft={x:this._XconvertDOMtoCanvas(0),y:this._YconvertDOMtoCanvas(0)},this.canvasBottomRight={x:this._XconvertDOMtoCanvas(this.frame.canvas.clientWidth*this.pixelRatio),y:this._YconvertDOMtoCanvas(this.frame.canvas.clientHeight*this.pixelRatio)},this._doInAllSectors("_drawAllSectorNodes",t),(0==this.drag.dragging||void 0===this.drag.dragging||0==this.constants.hideEdgesOnDrag)&&this._doInAllSectors("_drawEdges",t),(0==this.drag.dragging||void 0===this.drag.dragging||0==this.constants.hideNodesOnDrag)&&this._doInAllSectors("_drawNodes",t,!1),1==this.controlNodesActive&&this._doInAllSectors("_drawControlNodes",t),t.restore()},s.prototype._setTranslation=function(t,e){void 0===this.translation&&(this.translation={x:0,y:0}),void 0!==t&&(this.translation.x=t),void 0!==e&&(this.translation.y=e),this.emit("viewChanged")},s.prototype._getTranslation=function(){return{x:this.translation.x,y:this.translation.y}},s.prototype._setScale=function(t){this.scale=t},s.prototype._getScale=function(){return this.scale},s.prototype._XconvertDOMtoCanvas=function(t){return(t-this.translation.x)/this.scale},s.prototype._XconvertCanvasToDOM=function(t){return t*this.scale+this.translation.x},s.prototype._YconvertDOMtoCanvas=function(t){return(t-this.translation.y)/this.scale},s.prototype._YconvertCanvasToDOM=function(t){return t*this.scale+this.translation.y},s.prototype.canvasToDOM=function(t){return{x:this._XconvertCanvasToDOM(t.x),y:this._YconvertCanvasToDOM(t.y)}},s.prototype.DOMtoCanvas=function(t){return{x:this._XconvertDOMtoCanvas(t.x),y:this._YconvertDOMtoCanvas(t.y)}},s.prototype._drawNodes=function(t,e){void 0===e&&(e=!1);var i=this.nodes,s=[];for(var o in i)i.hasOwnProperty(o)&&(i[o].setScaleAndPos(this.scale,this.canvasTopLeft,this.canvasBottomRight),i[o].isSelected()?s.push(o):(i[o].inArea()||e)&&i[o].draw(t));for(var n=0,r=s.length;r>n;n++)(i[s[n]].inArea()||e)&&i[s[n]].draw(t)},s.prototype._drawEdges=function(t){var e=this.edges;for(var i in e)if(e.hasOwnProperty(i)){var s=e[i];s.setScale(this.scale),s.connected&&e[i].draw(t)}},s.prototype._drawControlNodes=function(t){var e=this.edges;for(var i in e)e.hasOwnProperty(i)&&e[i]._drawControlNodes(t)},s.prototype._stabilize=function(){1==this.constants.freezeForStabilization&&this._freezeDefinedNodes();for(var t=0;this.moving&&t0)for(t in i)i.hasOwnProperty(t)&&(i[t].discreteStepLimited(e,this.constants.maxVelocity),s=!0);else for(t in i)i.hasOwnProperty(t)&&(i[t].discreteStep(e),s=!0);if(1==s){var o=this.constants.minVelocity/Math.max(this.scale,.05);return o>.5*this.constants.maxVelocity?!0:this._isMoving(o)}return!1},s.prototype._physicsTick=function(){if(!this.freezeSimulation&&1==this.moving){var t=!1,e=!1;this._doInAllActiveSectors("_initializeForceCalculation");var i=this._doInAllActiveSectors("_discreteStepNodes");1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic&&(e=this._doInSupportSector("_discreteStepNodes"));for(var s=0;s0){var i=this,s={iterations:i.stabilizationIterations};i.stabilizationIterations=0,i.startedStabilization=!1,setTimeout(function(){i.emit("stabilized",s)},0)}},s.prototype._handleNavigation=function(){if(0!=this.xIncrement||0!=this.yIncrement){var t=this._getTranslation();this._setTranslation(t.x+this.xIncrement,t.y+this.yIncrement)}if(0!=this.zoomIncrement){var e={x:this.frame.canvas.clientWidth/2,y:this.frame.canvas.clientHeight/2};this._zoom(this.scale*(1+this.zoomIncrement),e)}},s.prototype.toggleFreeze=function(){0==this.freezeSimulation?this.freezeSimulation=!0:(this.freezeSimulation=!1,this.start())},s.prototype._configureSmoothCurves=function(t){if(void 0===t&&(t=!0),1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic){this._createBezierNodes();for(var e in this.sectors.support.nodes)this.sectors.support.nodes.hasOwnProperty(e)&&void 0===this.edges[this.sectors.support.nodes[e].parentEdgeId]&&delete this.sectors.support.nodes[e]}else{this.sectors.support.nodes={};for(var i in this.edges)this.edges.hasOwnProperty(i)&&(this.edges[i].via=null)}this._updateCalculationNodes(),t||(this.moving=!0,this.start())},s.prototype._createBezierNodes=function(){if(1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic)for(var t in this.edges)if(this.edges.hasOwnProperty(t)){var e=this.edges[t];if(null==e.via){var i="edgeId:".concat(e.id);this.sectors.support.nodes[i]=new f({id:i,mass:1,shape:"circle",image:"",internalMultiplier:1},{},{},this.constants),e.via=this.sectors.support.nodes[i],e.via.parentEdgeId=e.id,e.positionBezierNode()}}},s.prototype._initializeMixinLoaders=function(){for(var t in y)y.hasOwnProperty(t)&&(s.prototype[t]=y[t])},s.prototype.storePosition=function(){console.log("storePosition is depricated: use .storePositions() from now on."),this.storePositions()},s.prototype.storePositions=function(){var t=[];for(var e in this.nodes)if(this.nodes.hasOwnProperty(e)){var i=this.nodes[e],s=!this.nodes.xFixed,o=!this.nodes.yFixed;(this.nodesData._data[e].x!=Math.round(i.x)||this.nodesData._data[e].y!=Math.round(i.y))&&t.push({id:e,x:Math.round(i.x),y:Math.round(i.y),allowedToMoveX:s,allowedToMoveY:o})}this.nodesData.update(t)},s.prototype.getPositions=function(t){var e={};if(void 0!==t){if(1==Array.isArray(t)){for(var i=0;i=1&&(this.easingTime=0,this._redraw=null!=this.lockedOnNodeId?this._lockedRedraw:this._classicRedraw,this.emit("animationFinished"))},s.prototype._classicRedraw=function(){},s.prototype.isActive=function(){return!this.activator||this.activator.active},s.prototype.setScale=function(){return this._setScale()},s.prototype.getScale=function(){return this._getScale()},s.prototype.getCenterCoordinates=function(){return this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight})},t.exports=s},function(t,e,i){function s(t,e,i){if(!e)throw"No network provided";var s=["edges","physics"],n=o.selectiveBridgeObject(s,i);this.options=n.edges,this.physics=n.physics,this.options.smoothCurves=i.smoothCurves,this.network=e,this.id=void 0,this.fromId=void 0,this.toId=void 0,this.title=void 0,this.widthSelected=this.options.width*this.options.widthSelectionMultiplier,this.value=void 0,this.selected=!1,this.hover=!1,this.labelDimensions={top:0,left:0,width:0,height:0,yLine:0},this.dirtyLabel=!0,this.from=null,this.to=null,this.via=null,this.fromBackup=null,this.toBackup=null,this.originalFromId=[],this.originalToId=[],this.connected=!1,this.widthFixed=!1,this.lengthFixed=!1,this.setProperties(t),this.controlNodesEnabled=!1,this.controlNodes={from:null,to:null,positions:{}},this.connectedNode=null}var o=i(1),n=i(40);s.prototype.setProperties=function(t){if(t){var e=["style","fontSize","fontFace","fontColor","fontFill","width","widthSelectionMultiplier","hoverWidth","arrowScaleFactor","dash","inheritColor"];switch(o.selectiveDeepExtend(e,this.options,t),void 0!==t.from&&(this.fromId=t.from),void 0!==t.to&&(this.toId=t.to),void 0!==t.id&&(this.id=t.id),void 0!==t.label&&(this.label=t.label,this.dirtyLabel=!0),void 0!==t.title&&(this.title=t.title),void 0!==t.value&&(this.value=t.value),void 0!==t.length&&(this.physics.springLength=t.length),void 0!==t.color&&(this.options.inheritColor=!1,o.isString(t.color)?(this.options.color.color=t.color,this.options.color.highlight=t.color):(void 0!==t.color.color&&(this.options.color.color=t.color.color),void 0!==t.color.highlight&&(this.options.color.highlight=t.color.highlight),void 0!==t.color.hover&&(this.options.color.hover=t.color.hover))),this.connect(),this.widthFixed=this.widthFixed||void 0!==t.width,this.lengthFixed=this.lengthFixed||void 0!==t.length,this.widthSelected=this.options.width*this.options.widthSelectionMultiplier,this.options.style){case"line":this.draw=this._drawLine;break;case"arrow":this.draw=this._drawArrow;break;case"arrow-center":this.draw=this._drawArrowCenter;break;case"dash-line":this.draw=this._drawDashLine;break;default:this.draw=this._drawLine}}},s.prototype.connect=function(){this.disconnect(),this.from=this.network.nodes[this.fromId]||null,this.to=this.network.nodes[this.toId]||null,this.connected=this.from&&this.to,this.connected?(this.from.attachEdge(this),this.to.attachEdge(this)):(this.from&&this.from.detachEdge(this),this.to&&this.to.detachEdge(this))},s.prototype.disconnect=function(){this.from&&(this.from.detachEdge(this),this.from=null),this.to&&(this.to.detachEdge(this),this.to=null),this.connected=!1},s.prototype.getTitle=function(){return"function"==typeof this.title?this.title():this.title},s.prototype.getValue=function(){return this.value},s.prototype.setValueRange=function(t,e){if(!this.widthFixed&&void 0!==this.value){var i=(this.options.widthMax-this.options.widthMin)/(e-t);this.options.width=(this.value-t)*i+this.options.widthMin,this.widthSelected=this.options.width*this.options.widthSelectionMultiplier}},s.prototype.draw=function(){throw"Method draw not initialized in edge"},s.prototype.isOverlappingWith=function(t){if(this.connected){var e=10,i=this.from.x,s=this.from.y,o=this.to.x,n=this.to.y,r=t.left,a=t.top,h=this._getDistanceToEdge(i,s,o,n,r,a);return e>h}return!1},s.prototype._getColor=function(){var t=this.options.color;return"to"==this.options.inheritColor?t={highlight:this.to.options.color.highlight.border,hover:this.to.options.color.hover.border,color:this.to.options.color.border}:("from"==this.options.inheritColor||1==this.options.inheritColor)&&(t={highlight:this.from.options.color.highlight.border,hover:this.from.options.color.hover.border,color:this.from.options.color.border}),1==this.selected?t.highlight:1==this.hover?t.hover:t.color},s.prototype._drawLine=function(t){if(t.strokeStyle=this._getColor(),t.lineWidth=this._getLineWidth(),this.from!=this.to){var e,i=this._line(t);if(this.label){if(1==this.options.smoothCurves.enabled&&null!=i){var s=.5*(.5*(this.from.x+i.x)+.5*(this.to.x+i.x)),o=.5*(.5*(this.from.y+i.y)+.5*(this.to.y+i.y));e={x:s,y:o}}else e=this._pointOnLine(.5);this._label(t,this.label,e.x,e.y)}}else{var n,r,a=this.physics.springLength/4,h=this.from;h.width||h.resize(t),h.width>h.height?(n=h.x+h.width/2,r=h.y-a):(n=h.x+a,r=h.y-h.height/2),this._circle(t,n,r,a),e=this._pointOnCircle(n,r,a,.5),this._label(t,this.label,e.x,e.y)}},s.prototype._getLineWidth=function(){return 1==this.selected?Math.max(Math.min(this.widthSelected,this.options.widthMax),.3*this.networkScaleInv):1==this.hover?Math.max(Math.min(this.options.hoverWidth,this.options.widthMax),.3*this.networkScaleInv):Math.max(this.options.width,.3*this.networkScaleInv)},s.prototype._getViaCoordinates=function(){var t=null,e=null,i=this.options.smoothCurves.roundness,s=this.options.smoothCurves.type,o=Math.abs(this.from.x-this.to.x),n=Math.abs(this.from.y-this.to.y);return"discrete"==s||"diagonalCross"==s?Math.abs(this.from.x-this.to.x)this.to.y?this.from.xthis.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"==s&&(t=i*n>o?this.from.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>this.to.y?this.from.xthis.to.x&&(t=this.from.x-i*o,e=this.from.y-i*o):this.from.ythis.to.x&&(t=this.from.x-i*o,e=this.from.y+i*o)),"discrete"==s&&(e=i*o>n?this.from.y:e)):"straightCross"==s?Math.abs(this.from.x-this.to.x)Math.abs(this.from.y-this.to.y)&&(t=this.from.xthis.to.y?this.from.xthis.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>this.to.y?this.from.xe?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*o,e=this.from.y-i*o,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*o,e=this.from.y+i*o,e=this.to.yd;d++){var l=t.measureText(n[d]).width;h=l>h?l:h}var c=this.options.fontSize*r,p=i-h/2,u=s-c/2;this.labelDimensions={top:u,left:p,width:h,height:c,yLine:o}}void 0!==this.options.fontFill&&null!==this.options.fontFill&&"none"!==this.options.fontFill&&(t.fillStyle=this.options.fontFill,t.fillRect(this.labelDimensions.left,this.labelDimensions.top,this.labelDimensions.width,this.labelDimensions.height)),t.fillStyle=this.options.fontColor||"black",t.textAlign="center",t.textBaseline="middle",o=this.labelDimensions.yLine;for(var d=0;r>d;d++)t.fillText(n[d],i,o),o+=a}},s.prototype._drawDashLine=function(t){t.strokeStyle=this._getColor(),t.lineWidth=this._getLineWidth();var e=null;if(void 0!==t.mozDash||void 0!==t.setLineDash){var i=[0];i=void 0!==this.options.dash.length&&void 0!==this.options.dash.gap?[this.options.dash.length,this.options.dash.gap]:[5,5],"undefined"!=typeof t.setLineDash?(t.setLineDash(i),t.lineDashOffset=0):(t.mozDash=i,t.mozDashOffset=0),e=this._line(t),"undefined"!=typeof t.setLineDash?(t.setLineDash([0]),t.lineDashOffset=0):(t.mozDash=[0],t.mozDashOffset=0)}else t.beginPath(),t.lineCap="round",void 0!==this.options.dash.altLength?t.dashedLine(this.from.x,this.from.y,this.to.x,this.to.y,[this.options.dash.length,this.options.dash.gap,this.options.dash.altLength,this.options.dash.gap]):void 0!==this.options.dash.length&&void 0!==this.options.dash.gap?t.dashedLine(this.from.x,this.from.y,this.to.x,this.to.y,[this.options.dash.length,this.options.dash.gap]):(t.moveTo(this.from.x,this.from.y),t.lineTo(this.to.x,this.to.y)),t.stroke();if(this.label){var s;if(1==this.options.smoothCurves.enabled&&null!=e){var o=.5*(.5*(this.from.x+e.x)+.5*(this.to.x+e.x)),n=.5*(.5*(this.from.y+e.y)+.5*(this.to.y+e.y));s={x:o,y:n}}else s=this._pointOnLine(.5);this._label(t,this.label,s.x,s.y)}},s.prototype._pointOnLine=function(t){return{x:(1-t)*this.from.x+t*this.to.x,y:(1-t)*this.from.y+t*this.to.y}},s.prototype._pointOnCircle=function(t,e,i,s){var o=2*(s-3/8)*Math.PI;return{x:t+i*Math.cos(o),y:e-i*Math.sin(o)}},s.prototype._drawArrowCenter=function(t){var e;if(t.strokeStyle=this._getColor(),t.fillStyle=t.strokeStyle,t.lineWidth=this._getLineWidth(),this.from!=this.to){var i=this._line(t),s=Math.atan2(this.to.y-this.from.y,this.to.x-this.from.x),o=(10+5*this.options.width)*this.options.arrowScaleFactor;if(1==this.options.smoothCurves.enabled&&null!=i){var n=.5*(.5*(this.from.x+i.x)+.5*(this.to.x+i.x)),r=.5*(.5*(this.from.y+i.y)+.5*(this.to.y+i.y));e={x:n,y:r}}else e=this._pointOnLine(.5);t.arrow(e.x,e.y,s,o),t.fill(),t.stroke(),this.label&&this._label(t,this.label,e.x,e.y)}else{var a,h,d=.25*Math.max(100,this.physics.springLength),l=this.from;l.width||l.resize(t),l.width>l.height?(a=l.x+.5*l.width,h=l.y-d):(a=l.x+d,h=l.y-.5*l.height),this._circle(t,a,h,d);var s=.2*Math.PI,o=(10+5*this.options.width)*this.options.arrowScaleFactor;e=this._pointOnCircle(a,h,d,.5),t.arrow(e.x,e.y,s,o),t.fill(),t.stroke(),this.label&&(e=this._pointOnCircle(a,h,d,.5),this._label(t,this.label,e.x,e.y))}},s.prototype._drawArrow=function(t){t.strokeStyle=this._getColor(),t.fillStyle=t.strokeStyle,t.lineWidth=this._getLineWidth();var e,i;if(this.from!=this.to){e=Math.atan2(this.to.y-this.from.y,this.to.x-this.from.x);var s,o=this.to.x-this.from.x,n=this.to.y-this.from.y,r=Math.sqrt(o*o+n*n),a=this.from.distanceToBorder(t,e+Math.PI),h=(r-a)/r,d=h*this.from.x+(1-h)*this.to.x,l=h*this.from.y+(1-h)*this.to.y;1==this.options.smoothCurves.dynamic&&1==this.options.smoothCurves.enabled?s=this.via:1==this.options.smoothCurves.enabled&&(s=this._getViaCoordinates()),1==this.options.smoothCurves.enabled&&null!=s.x&&(e=Math.atan2(this.to.y-s.y,this.to.x-s.x),o=this.to.x-s.x,n=this.to.y-s.y,r=Math.sqrt(o*o+n*n));var c,p,u=this.to.distanceToBorder(t,e),m=(r-u)/r;if(1==this.options.smoothCurves.enabled&&null!=s.x?(c=(1-m)*s.x+m*this.to.x,p=(1-m)*s.y+m*this.to.y):(c=(1-m)*this.from.x+m*this.to.x,p=(1-m)*this.from.y+m*this.to.y),t.beginPath(),t.moveTo(d,l),1==this.options.smoothCurves.enabled&&null!=s.x?t.quadraticCurveTo(s.x,s.y,c,p):t.lineTo(c,p),t.stroke(),i=(10+5*this.options.width)*this.options.arrowScaleFactor,t.arrow(c,p,e,i),t.fill(),t.stroke(),this.label){var f;if(1==this.options.smoothCurves.enabled&&null!=s){var g=.5*(.5*(this.from.x+s.x)+.5*(this.to.x+s.x)),v=.5*(.5*(this.from.y+s.y)+.5*(this.to.y+s.y));f={x:g,y:v}}else f=this._pointOnLine(.5);this._label(t,this.label,f.x,f.y)}}else{var y,b,_,x=this.from,w=.25*Math.max(100,this.physics.springLength);x.width||x.resize(t),x.width>x.height?(y=x.x+.5*x.width,b=x.y-w,_={x:y,y:x.y,angle:.9*Math.PI}):(y=x.x+w,b=x.y-.5*x.height,_={x:x.x,y:b,angle:.6*Math.PI}),t.beginPath(),t.arc(y,b,w,0,2*Math.PI,!1),t.stroke();var i=(10+5*this.options.width)*this.options.arrowScaleFactor;t.arrow(_.x,_.y,_.angle,i),t.fill(),t.stroke(),this.label&&(f=this._pointOnCircle(y,b,w,.5),this._label(t,this.label,f.x,f.y))}},s.prototype._getDistanceToEdge=function(t,e,i,s,o,n){var r=0;if(this.from!=this.to)if(1==this.options.smoothCurves.enabled){var a,h;if(1==this.options.smoothCurves.enabled&&1==this.options.smoothCurves.dynamic)a=this.via.x,h=this.via.y;else{var d=this._getViaCoordinates();a=d.x,h=d.y}var l,c,p,u,m,f,g,v=1e9;for(c=0;10>c;c++)p=.1*c,u=Math.pow(1-p,2)*t+2*p*(1-p)*a+Math.pow(p,2)*i,m=Math.pow(1-p,2)*e+2*p*(1-p)*h+Math.pow(p,2)*s,c>0&&(l=this._getDistanceToLine(f,g,u,m,o,n),v=v>l?l:v),f=u,g=m;r=v}else r=this._getDistanceToLine(t,e,i,s,o,n);else{var u,m,y,b,_=.25*this.physics.springLength,x=this.from;x.width>x.height?(u=x.x+.5*x.width,m=x.y-_):(u=x.x+_,m=x.y-.5*x.height),y=u-o,b=m-n,r=Math.abs(Math.sqrt(y*y+b*b)-_)}return this.labelDimensions.lefto&&this.labelDimensions.topn?0:r},s.prototype._getDistanceToLine=function(t,e,i,s,o,n){var r=i-t,a=s-e,h=r*r+a*a,d=((o-t)*r+(n-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,c=e+d*a,p=l-o,u=c-n;return Math.sqrt(p*p+u*u)},s.prototype.setScale=function(t){this.networkScaleInv=1/t},s.prototype.select=function(){this.selected=!0},s.prototype.unselect=function(){this.selected=!1},s.prototype.positionBezierNode=function(){null!==this.via&&null!==this.from&&null!==this.to&&(this.via.x=.5*(this.from.x+this.to.x),this.via.y=.5*(this.from.y+this.to.y))},s.prototype._drawControlNodes=function(t){if(1==this.controlNodesEnabled){if(null===this.controlNodes.from&&null===this.controlNodes.to){var e="edgeIdFrom:".concat(this.id),i="edgeIdTo:".concat(this.id),s={nodes:{group:"",radius:8},physics:{damping:0},clustering:{maxNodeSizeIncrements:0,nodeScaling:{width:0,height:0,radius:0}}};this.controlNodes.from=new n({id:e,shape:"dot",color:{background:"#ff4e00",border:"#3c3c3c",highlight:{background:"#07f968"}}},{},{},s),this.controlNodes.to=new n({id:i,shape:"dot",color:{background:"#ff4e00",border:"#3c3c3c",highlight:{background:"#07f968"}}},{},{},s)}0==this.controlNodes.from.selected&&0==this.controlNodes.to.selected&&(this.controlNodes.positions=this.getControlNodePositions(t),this.controlNodes.from.x=this.controlNodes.positions.from.x,this.controlNodes.from.y=this.controlNodes.positions.from.y,this.controlNodes.to.x=this.controlNodes.positions.to.x,this.controlNodes.to.y=this.controlNodes.positions.to.y),this.controlNodes.from.draw(t),this.controlNodes.to.draw(t)}else this.controlNodes={from:null,to:null,positions:{}}},s.prototype._enableControlNodes=function(){this.fromBackup=this.from,this.toBackup=this.to,this.controlNodesEnabled=!0},s.prototype._disableControlNodes=function(){this.fromId=this.from.id,this.toId=this.to.id,this.fromId!=this.fromBackup.id?this.fromBackup.detachEdge(this):this.toId!=this.toBackup.id&&this.toBackup.detachEdge(this),this.fromBackup=null,this.toBackup=null,this.controlNodesEnabled=!1},s.prototype._getSelectedControlNode=function(t,e){var i=this.controlNodes.positions,s=Math.sqrt(Math.pow(t-i.from.x,2)+Math.pow(e-i.from.y,2)),o=Math.sqrt(Math.pow(t-i.to.x,2)+Math.pow(e-i.to.y,2));return 15>s?(this.connectedNode=this.from,this.from=this.controlNodes.from,this.controlNodes.from):15>o?(this.connectedNode=this.to,this.to=this.controlNodes.to,this.controlNodes.to):null},s.prototype._restoreControlNodes=function(){1==this.controlNodes.from.selected?(this.from=this.connectedNode,this.connectedNode=null,this.controlNodes.from.unselect()):1==this.controlNodes.to.selected&&(this.to=this.connectedNode,this.connectedNode=null,this.controlNodes.to.unselect())},s.prototype.getControlNodePositions=function(t){var e,i=Math.atan2(this.to.y-this.from.y,this.to.x-this.from.x),s=this.to.x-this.from.x,o=this.to.y-this.from.y,n=Math.sqrt(s*s+o*o),r=this.from.distanceToBorder(t,i+Math.PI),a=(n-r)/n,h=a*this.from.x+(1-a)*this.to.x,d=a*this.from.y+(1-a)*this.to.y;1==this.options.smoothCurves.dynamic&&1==this.options.smoothCurves.enabled?e=this.via:1==this.options.smoothCurves.enabled&&(e=this._getViaCoordinates()),1==this.options.smoothCurves.enabled&&null!=e.x&&(i=Math.atan2(this.to.y-e.y,this.to.x-e.x),s=this.to.x-e.x,o=this.to.y-e.y,n=Math.sqrt(s*s+o*o));var l,c,p=this.to.distanceToBorder(t,i),u=(n-p)/n;return 1==this.options.smoothCurves.enabled&&null!=e.x?(l=(1-u)*e.x+u*this.to.x,c=(1-u)*e.y+u*this.to.y):(l=(1-u)*this.from.x+u*this.to.x,c=(1-u)*this.from.y+u*this.to.y),{from:{x:h,y:d},to:{x:l,y:c}}},t.exports=s},function(t,e,i){function s(){this.clear(),this.defaultIndex=0}var o=i(1);s.DEFAULT=[{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},{border:"#FFA500",background:"#FFFF00",highlight:{border:"#FFA500",background:"#FFFFA3"},hover:{border:"#FFA500",background:"#FFFFA3"}},{border:"#FA0A10",background:"#FB7E81",highlight:{border:"#FA0A10",background:"#FFAFB1"},hover:{border:"#FA0A10",background:"#FFAFB1"}},{border:"#41A906",background:"#7BE141",highlight:{border:"#41A906",background:"#A1EC76"},hover:{border:"#41A906",background:"#A1EC76"}},{border:"#E129F0",background:"#EB7DF4",highlight:{border:"#E129F0",background:"#F0B3F5"},hover:{border:"#E129F0",background:"#F0B3F5"}},{border:"#7C29F0",background:"#AD85E4",highlight:{border:"#7C29F0",background:"#D3BDF0"},hover:{border:"#7C29F0",background:"#D3BDF0"}},{border:"#C37F00",background:"#FFA807",highlight:{border:"#C37F00",background:"#FFCA66"},hover:{border:"#C37F00",background:"#FFCA66"}},{border:"#4220FB",background:"#6E6EFD",highlight:{border:"#4220FB",background:"#9B9BFD"},hover:{border:"#4220FB",background:"#9B9BFD"}},{border:"#FD5A77",background:"#FFC0CB",highlight:{border:"#FD5A77",background:"#FFD1D9"},hover:{border:"#FD5A77",background:"#FFD1D9"}},{border:"#4AD63A",background:"#C2FABC",highlight:{border:"#4AD63A",background:"#E6FFE3"},hover:{border:"#4AD63A",background:"#E6FFE3"}}],s.prototype.clear=function(){this.groups={},this.groups.length=function(){var t=0;for(var e in this)this.hasOwnProperty(e)&&t++;return t}},s.prototype.get=function(t){var e=this.groups[t];if(void 0==e){var i=this.defaultIndex%s.DEFAULT.length;this.defaultIndex++,e={},e.color=s.DEFAULT[i],this.groups[t]=e}return e},s.prototype.add=function(t,e){return this.groups[t]=e,e.color&&(e.color=o.parseColor(e.color)),e},t.exports=s},function(t){function e(){this.images={},this.callback=void 0}e.prototype.setOnloadCallback=function(t){this.callback=t},e.prototype.load=function(t,e){var i=this.images[t];if(void 0==i){var s=this;i=new Image,this.images[t]=i,i.onload=function(){s.callback&&s.callback(this)},i.onerror=function(){this.src=e,s.callback&&s.callback(this)},i.src=t}return i},t.exports=e},function(t,e,i){function s(t,e,i,s){var n=o.selectiveBridgeObject(["nodes"],s);this.options=n.nodes,this.selected=!1,this.hover=!1,this.edges=[],this.dynamicEdges=[],this.reroutedEdges={},this.fontDrawThreshold=3,this.id=void 0,this.x=null,this.y=null,this.allowedToMoveX=!1,this.allowedToMoveY=!1,this.xFixed=!1,this.yFixed=!1,this.horizontalAlignLeft=!0,this.verticalAlignTop=!0,this.baseRadiusValue=s.nodes.radius,this.radiusFixed=!1,this.level=-1,this.preassignedLevel=!1,this.hierarchyEnumerated=!1,this.labelDimensions={top:0,left:0,width:0,height:0,yLine:0},this.imagelist=e,this.grouplist=i,this.fx=0,this.fy=0,this.vx=0,this.vy=0,this.damping=s.physics.damping,this.fixedData={x:null,y:null},this.setProperties(t,n),this.resetCluster(),this.dynamicEdgesLength=0,this.clusterSession=0,this.clusterSizeWidthFactor=s.clustering.nodeScaling.width,this.clusterSizeHeightFactor=s.clustering.nodeScaling.height,this.clusterSizeRadiusFactor=s.clustering.nodeScaling.radius,this.maxNodeSizeIncrements=s.clustering.maxNodeSizeIncrements,this.growthIndicator=0,this.networkScaleInv=1,this.networkScale=1,this.canvasTopLeft={x:-300,y:-300},this.canvasBottomRight={x:300,y:300},this.parentEdgeId=null}var o=i(1);s.prototype.resetCluster=function(){this.formationScale=void 0,this.clusterSize=1,this.containedNodes={},this.containedEdges={},this.clusterSessions=[]},s.prototype.attachEdge=function(t){-1==this.edges.indexOf(t)&&this.edges.push(t),-1==this.dynamicEdges.indexOf(t)&&this.dynamicEdges.push(t),this.dynamicEdgesLength=this.dynamicEdges.length},s.prototype.detachEdge=function(t){var e=this.edges.indexOf(t);-1!=e&&this.edges.splice(e,1),e=this.dynamicEdges.indexOf(t),-1!=e&&this.dynamicEdges.splice(e,1),this.dynamicEdgesLength=this.dynamicEdges.length},s.prototype.setProperties=function(t,e){if(t){var i=["borderWidth","borderWidthSelected","shape","image","brokenImage","radius","fontColor","fontSize","fontFace","fontFill","group","mass"];if(o.selectiveDeepExtend(i,this.options,t),void 0!==t.id&&(this.id=t.id),void 0!==t.label&&(this.label=t.label,this.originalLabel=t.label),void 0!==t.title&&(this.title=t.title),void 0!==t.x&&(this.x=t.x),void 0!==t.y&&(this.y=t.y),void 0!==t.value&&(this.value=t.value),void 0!==t.level&&(this.level=t.level,this.preassignedLevel=!0),void 0!==t.horizontalAlignLeft&&(this.horizontalAlignLeft=t.horizontalAlignLeft),void 0!==t.verticalAlignTop&&(this.verticalAlignTop=t.verticalAlignTop),void 0!==t.triggerFunction&&(this.triggerFunction=t.triggerFunction),void 0===this.id)throw"Node must have an id";if("number"==typeof this.options.group||"string"==typeof this.options.group&&""!=this.options.group){var s=this.grouplist.get(this.options.group);for(var n in s)s.hasOwnProperty(n)&&(this.options[n]=s[n])}if(void 0!==t.radius&&(this.baseRadiusValue=this.options.radius),void 0!==t.color&&(this.options.color=o.parseColor(t.color)),void 0!==this.options.image&&""!=this.options.image){if(!this.imagelist)throw"No imagelist provided";this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage)}switch(void 0!==t.allowedToMoveX?(this.xFixed=!t.allowedToMoveX,this.allowedToMoveX=t.allowedToMoveX):void 0!==t.x&&0==this.allowedToMoveX&&(this.xFixed=!0),void 0!==t.allowedToMoveY?(this.yFixed=!t.allowedToMoveY,this.allowedToMoveY=t.allowedToMoveY):void 0!==t.y&&0==this.allowedToMoveY&&(this.yFixed=!0),this.radiusFixed=this.radiusFixed||void 0!==t.radius,"image"==this.options.shape&&(this.options.radiusMin=e.nodes.widthMin,this.options.radiusMax=e.nodes.widthMax),this.options.shape){case"database":this.draw=this._drawDatabase,this.resize=this._resizeDatabase;break;case"box":this.draw=this._drawBox,this.resize=this._resizeBox;break;case"circle":this.draw=this._drawCircle,this.resize=this._resizeCircle;break;case"ellipse":this.draw=this._drawEllipse,this.resize=this._resizeEllipse;break;case"image":this.draw=this._drawImage,this.resize=this._resizeImage;break;case"text":this.draw=this._drawText,this.resize=this._resizeText;break;case"dot":this.draw=this._drawDot,this.resize=this._resizeShape;break;case"square":this.draw=this._drawSquare,this.resize=this._resizeShape;break;case"triangle":this.draw=this._drawTriangle,this.resize=this._resizeShape;break;case"triangleDown":this.draw=this._drawTriangleDown,this.resize=this._resizeShape;break;case"star":this.draw=this._drawStar,this.resize=this._resizeShape;break;default:this.draw=this._drawEllipse,this.resize=this._resizeEllipse}this._reset()}},s.prototype.select=function(){this.selected=!0,this._reset()},s.prototype.unselect=function(){this.selected=!1,this._reset()},s.prototype.clearSizeCache=function(){this._reset()},s.prototype._reset=function(){this.width=void 0,this.height=void 0},s.prototype.getTitle=function(){return"function"==typeof this.title?this.title():this.title},s.prototype.distanceToBorder=function(t,e){var i=1;switch(this.width||this.resize(t),this.options.shape){case"circle":case"dot":return this.options.radius+i;case"ellipse":var s=this.width/2,o=this.height/2,n=Math.sin(e)*s,r=Math.cos(e)*o;return s*o/Math.sqrt(n*n+r*r);case"box":case"image":case"text":default:return this.width?Math.min(Math.abs(this.width/2/Math.cos(e)),Math.abs(this.height/2/Math.sin(e)))+i:0}},s.prototype._setForce=function(t,e){this.fx=t,this.fy=e},s.prototype._addForce=function(t,e){this.fx+=t,this.fy+=e},s.prototype.discreteStep=function(t){if(this.xFixed)this.fx=0,this.vx=0;else{var e=this.damping*this.vx,i=(this.fx-e)/this.options.mass;this.vx+=i*t,this.x+=this.vx*t}if(this.yFixed)this.fy=0,this.vy=0;else{var s=this.damping*this.vy,o=(this.fy-s)/this.options.mass;this.vy+=o*t,this.y+=this.vy*t}},s.prototype.discreteStepLimited=function(t,e){if(this.xFixed)this.fx=0,this.vx=0;else{var i=this.damping*this.vx,s=(this.fx-i)/this.options.mass;this.vx+=s*t,this.vx=Math.abs(this.vx)>e?this.vx>0?e:-e:this.vx,this.x+=this.vx*t}if(this.yFixed)this.fy=0,this.vy=0;else{var o=this.damping*this.vy,n=(this.fy-o)/this.options.mass;this.vy+=n*t,this.vy=Math.abs(this.vy)>e?this.vy>0?e:-e:this.vy,this.y+=this.vy*t}},s.prototype.isFixed=function(){return this.xFixed&&this.yFixed},s.prototype.isMoving=function(t){var e=Math.sqrt(Math.pow(this.vx,2)+Math.pow(this.vy,2));return e>t},s.prototype.isSelected=function(){return this.selected},s.prototype.getValue=function(){return this.value},s.prototype.getDistance=function(t,e){var i=this.x-t,s=this.y-e;return Math.sqrt(i*i+s*s)},s.prototype.setValueRange=function(t,e){if(!this.radiusFixed&&void 0!==this.value)if(e==t)this.options.radius=(this.options.radiusMin+this.options.radiusMax)/2;else{var i=(this.options.radiusMax-this.options.radiusMin)/(e-t);this.options.radius=(this.value-t)*i+this.options.radiusMin}this.baseRadiusValue=this.options.radius},s.prototype.draw=function(){throw"Draw method not initialized for node"},s.prototype.resize=function(){throw"Resize method not initialized for node"},s.prototype.isOverlappingWith=function(t){return this.leftt.left&&this.topt.top},s.prototype._resizeImage=function(){if(!this.width||!this.height){var t,e;if(this.value){this.options.radius=this.baseRadiusValue;var i=this.imageObj.height/this.imageObj.width;void 0!==i?(t=this.options.radius||this.imageObj.width,e=this.options.radius*i||this.imageObj.height):(t=0,e=0)}else t=this.imageObj.width,e=this.imageObj.height;this.width=t,this.height=e,this.growthIndicator=0,this.width>0&&this.height>0&&(this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-t)}},s.prototype._drawImage=function(t){this._resizeImage(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e;if(0!=this.imageObj.width){if(this.clusterSize>1){var i=this.clusterSize>1?10:0;i*=this.networkScaleInv,i=Math.min(.2*this.width,i),t.globalAlpha=.5,t.drawImage(this.imageObj,this.left-i,this.top-i,this.width+2*i,this.height+2*i)}t.globalAlpha=1,t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),e=this.y+this.height/2}else e=this.y;this._label(t,this.label,this.x,e,void 0,"top")},s.prototype._resizeBox=function(t){if(!this.width){var e=5,i=this.getTextSize(t);this.width=i.width+2*e,this.height=i.height+2*e,this.width+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.growthIndicator=this.width-(i.width+2*e)}},s.prototype._drawBox=function(t){this._resizeBox(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.roundRect(this.left-2*t.lineWidth,this.top-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth,this.options.radius),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.options.color.background,t.roundRect(this.left,this.top,this.width,this.height,this.options.radius),t.fill(),t.stroke(),this._label(t,this.label,this.x,this.y)},s.prototype._resizeDatabase=function(t){if(!this.width){var e=5,i=this.getTextSize(t),s=i.width+2*e;this.width=s,this.height=s,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-s}},s.prototype._drawDatabase=function(t){this._resizeDatabase(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.database(this.x-this.width/2-2*t.lineWidth,this.y-.5*this.height-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.database(this.x-this.width/2,this.y-.5*this.height,this.width,this.height),t.fill(),t.stroke(),this._label(t,this.label,this.x,this.y)},s.prototype._resizeCircle=function(t){if(!this.width){var e=5,i=this.getTextSize(t),s=Math.max(i.width,i.height)+2*e;this.options.radius=s/2,this.width=s,this.height=s,this.options.radius+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.options.radius-.5*s}},s.prototype._drawCircle=function(t){this._resizeCircle(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.circle(this.x,this.y,this.options.radius+2*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.circle(this.x,this.y,this.options.radius),t.fill(),t.stroke(),this._label(t,this.label,this.x,this.y)},s.prototype._resizeEllipse=function(t){if(!this.width){var e=this.getTextSize(t);this.width=1.5*e.width,this.height=2*e.height,this.width1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.ellipse(this.left-2*t.lineWidth,this.top-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.ellipse(this.left,this.top,this.width,this.height),t.fill(),t.stroke(),this._label(t,this.label,this.x,this.y)},s.prototype._drawDot=function(t){this._drawShape(t,"circle")},s.prototype._drawTriangle=function(t){this._drawShape(t,"triangle")},s.prototype._drawTriangleDown=function(t){this._drawShape(t,"triangleDown")},s.prototype._drawSquare=function(t){this._drawShape(t,"square")},s.prototype._drawStar=function(t){this._drawShape(t,"star")},s.prototype._resizeShape=function(){if(!this.width){this.options.radius=this.baseRadiusValue;var t=2*this.options.radius;this.width=t,this.height=t,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-t}},s.prototype._drawShape=function(t,e){this._resizeShape(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var i=2.5,s=this.options.borderWidth,o=this.options.borderWidthSelected||2*this.options.borderWidth,n=2;switch(e){case"dot":n=2;break;case"square":n=2;break;case"triangle":n=3;break;case"triangleDown":n=3;break;case"star":n=4}t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?o:s)+(this.clusterSize>1?i:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t[e](this.x,this.y,this.options.radius+n*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?o:s)+(this.clusterSize>1?i:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t[e](this.x,this.y,this.options.radius),t.fill(),t.stroke(),this.label&&this._label(t,this.label,this.x,this.y+this.height/2,void 0,"top",!0)},s.prototype._resizeText=function(t){if(!this.width){var e=5,i=this.getTextSize(t);this.width=i.width+2*e,this.height=i.height+2*e,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-(i.width+2*e)}},s.prototype._drawText=function(t){this._resizeText(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._label(t,this.label,this.x,this.y)},s.prototype._label=function(t,e,i,s,o,n,r){if(e&&Number(this.options.fontSize)*this.networkScale>this.fontDrawThreshold){t.font=(this.selected?"bold ":"")+this.options.fontSize+"px "+this.options.fontFace;var a=e.split("\n"),h=a.length,d=Number(this.options.fontSize)+4,l=s+(1-h)/2*d;1==r&&(l=s+(1-h)/(2*d));for(var c=t.measureText(a[0]).width,p=1;h>p;p++){var u=t.measureText(a[p]).width;c=u>c?u:c}var m=this.options.fontSize*h,f=i-c/2,g=s-m/2;"top"==n&&(g+=.5*d),this.labelDimensions={top:g,left:f,width:c,height:m,yLine:l},void 0!==this.options.fontFill&&null!==this.options.fontFill&&"none"!==this.options.fontFill&&(t.fillStyle=this.options.fontFill,t.fillRect(f,g,c,m)),t.fillStyle=this.options.fontColor||"black",t.textAlign=o||"center",t.textBaseline=n||"middle";for(var p=0;h>p;p++)t.fillText(a[p],i,l),l+=d}},s.prototype.getTextSize=function(t){if(void 0!==this.label){t.font=(this.selected?"bold ":"")+this.options.fontSize+"px "+this.options.fontFace;for(var e=this.label.split("\n"),i=(Number(this.options.fontSize)+4)*e.length,s=0,o=0,n=e.length;n>o;o++)s=Math.max(s,t.measureText(e[o]).width);return{width:s,height:i}}return{width:0,height:0}},s.prototype.inArea=function(){return void 0!==this.width?this.x+this.width*this.networkScaleInv>=this.canvasTopLeft.x&&this.x-this.width*this.networkScaleInv=this.canvasTopLeft.y&&this.y-this.height*this.networkScaleInv=this.canvasTopLeft.x&&this.x=this.canvasTopLeft.y&&this.ys&&(n=s-e-this.padding),no&&(r=o-i-this.padding),ri;i++)if(e.id===r.nodes[i].id){o=r.nodes[i];break}for(o||(o={id:e.id},t.node&&(o.attr=a(o.attr,t.node))),i=n.length-1;i>=0;i--){var h=n[i];h.nodes||(h.nodes=[]),-1==h.nodes.indexOf(o)&&h.nodes.push(o)}e.attr&&(o.attr=a(o.attr,e.attr))}function l(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=a({},t.edge);e.attr=a(i,e.attr)}}function c(t,e,i,s,o){var n={from:e,to:i,type:s};return t.edge&&(n.attr=a({},t.edge)),n.attr=a(n.attr||{},o),n}function p(){for(L=S.NULL,k="";" "==E||" "==E||"\n"==E||"\r"==E;)o();do{var t=!1;if("#"==E){for(var e=O-1;" "==T.charAt(e)||" "==T.charAt(e);)e--;if("\n"==T.charAt(e)||""==T.charAt(e)){for(;""!=E&&"\n"!=E;)o();t=!0}}if("/"==E&&"/"==n()){for(;""!=E&&"\n"!=E;)o();t=!0}if("/"==E&&"*"==n()){for(;""!=E;){if("*"==E&&"/"==n()){o(),o();break}o()}t=!0}for(;" "==E||" "==E||"\n"==E||"\r"==E;)o()}while(t);if(""==E)return void(L=S.DELIMITER);var i=E+n();if(C[i])return L=S.DELIMITER,k=i,o(),void o();if(C[E])return L=S.DELIMITER,k=E,void o();if(r(E)||"-"==E){for(k+=E,o();r(E);)k+=E,o();return"false"==k?k=!1:"true"==k?k=!0:isNaN(Number(k))||(k=Number(k)),void(L=S.IDENTIFIER)}if('"'==E){for(o();""!=E&&('"'!=E||'"'==E&&'"'==n());)k+=E,'"'==E&&o(),o();if('"'!=E)throw x('End of string " expected');return o(),void(L=S.IDENTIFIER)}for(L=S.UNKNOWN;""!=E;)k+=E,o();throw new SyntaxError('Syntax error in part "'+w(k,30)+'"')}function u(){var t={};if(s(),p(),"strict"==k&&(t.strict=!0,p()),("graph"==k||"digraph"==k)&&(t.type=k,p()),L==S.IDENTIFIER&&(t.id=k,p()),"{"!=k)throw x("Angle bracket { expected");if(p(),m(t),"}"!=k)throw x("Angle bracket } expected");if(p(),""!==k)throw x("End of file expected");return p(),delete t.node,delete t.edge,delete t.graph,t}function m(t){for(;""!==k&&"}"!=k;)f(t),";"==k&&p()}function f(t){var e=g(t);if(e)return void b(t,e);var i=v(t);if(!i){if(L!=S.IDENTIFIER)throw x("Identifier expected");var s=k;if(p(),"="==k){if(p(),L!=S.IDENTIFIER)throw x("Identifier expected");t[s]=k,p()}else y(t,s)}}function g(t){var e=null;if("subgraph"==k&&(e={},e.type="subgraph",p(),L==S.IDENTIFIER&&(e.id=k,p())),"{"==k){if(p(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,m(e),"}"!=k)throw x("Angle bracket } expected");p(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function v(t){return"node"==k?(p(),t.node=_(),"node"):"edge"==k?(p(),t.edge=_(),"edge"):"graph"==k?(p(),t.graph=_(),"graph"):null}function y(t,e){var i={id:e},s=_();s&&(i.attr=s),d(t,i),b(t,e)}function b(t,e){for(;"->"==k||"--"==k;){var i,s=k;p();var o=g(t);if(o)i=o;else{if(L!=S.IDENTIFIER)throw x("Identifier or subgraph expected");i=k,d(t,{id:i}),p()}var n=_(),r=c(t,e,i,s,n);l(t,r),e=i}}function _(){for(var t=null;"["==k;){for(p(),t={};""!==k&&"]"!=k;){if(L!=S.IDENTIFIER)throw x("Attribute name expected");var e=k;if(p(),"="!=k)throw x("Equal sign = expected");if(p(),L!=S.IDENTIFIER)throw x("Attribute value expected");var i=k;h(t,e,i),p(),","==k&&p()}if("]"!=k)throw x("Bracket ] expected");p()}return t}function x(t){return new SyntaxError(t+', got "'+w(k,30)+'" (char '+O+")")}function w(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function D(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function M(t){var e=i(t),s={nodes:[],edges:[],options:{}};if(e.nodes&&e.nodes.forEach(function(t){var e={id:t.id,label:String(t.label||t.id)};a(e,t.attr),e.image&&(e.shape="image"),s.nodes.push(e)}),e.edges){var o=function(t){var e={from:t.from,to:t.to};return a(e,t.attr),e.style="->"==t.type?"arrow":"line",e};e.edges.forEach(function(t){var e,i;e=t.from instanceof Object?t.from.nodes:{id:t.from},i=t.to instanceof Object?t.to.nodes:{id:t.to},t.from instanceof Object&&t.from.edges&&t.from.edges.forEach(function(t){var e=o(t);s.edges.push(e)}),D(e,i,function(e,i){var n=c(s,e.id,i.id,t.type,t.attr),r=o(n);s.edges.push(r)}),t.to instanceof Object&&t.to.edges&&t.to.edges.forEach(function(t){var e=o(t);s.edges.push(e)})})}return e.attr&&(s.options=e.attr),s}var S={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},C={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},T="",O=0,E="",k="",L=S.NULL,N=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=M},function(t,e){function i(t,e){var i=[],s=[];this.options={edges:{inheritColor:!0},nodes:{allowedToMove:!1,parseColor:!1}},void 0!==e&&(this.options.nodes.allowedToMove=e.allowedToMove|!1,this.options.nodes.parseColor=e.parseColor|!1,this.options.edges.inheritColor=e.inheritColor|!0);for(var o=t.edges,n=t.nodes,r=0;r=s&&(s=864e5),e=new Date(e.valueOf()-.05*s),i=new Date(i.valueOf()+.05*s)}return{start:e,end:i}},s.prototype.setWindow=function(t,e,i){var s=i&&void 0!==i.animate?i.animate:!0;if(1==arguments.length){var o=arguments[0];this.range.setRange(o.start,o.end,s)}else this.range.setRange(t,e,s)},s.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,s=r.convert(t,"Date").valueOf(),o=s-i/2,n=s+i/2,a=e&&void 0!==e.animate?e.animate:!0;this.range.setRange(o,n,a)},s.prototype.getWindow=function(){var t=this.range.getRange();return{start:new Date(t.start),end:new Date(t.end)}},s.prototype.redraw=function(){var t=!1,e=this.options,i=this.props,s=this.dom;if(s){h.updateHiddenDates(this.body,this.options.hiddenDates),"top"==e.orientation?(r.addClassName(s.root,"top"),r.removeClassName(s.root,"bottom")):(r.removeClassName(s.root,"top"),r.addClassName(s.root,"bottom")),s.root.style.maxHeight=r.option.asSize(e.maxHeight,""),s.root.style.minHeight=r.option.asSize(e.minHeight,""),s.root.style.width=r.option.asSize(e.width,""),i.border.left=(s.centerContainer.offsetWidth-s.centerContainer.clientWidth)/2,i.border.right=i.border.left,i.border.top=(s.centerContainer.offsetHeight-s.centerContainer.clientHeight)/2,i.border.bottom=i.border.top;var o=s.root.offsetHeight-s.root.clientHeight,n=s.root.offsetWidth-s.root.clientWidth;0===s.centerContainer.clientHeight&&(i.border.left=i.border.top,i.border.right=i.border.left),0===s.root.clientHeight&&(n=o),i.center.height=s.center.offsetHeight,i.left.height=s.left.offsetHeight,i.right.height=s.right.offsetHeight,i.top.height=s.top.clientHeight||-i.border.top,i.bottom.height=s.bottom.clientHeight||-i.border.bottom;var a=Math.max(i.left.height,i.center.height,i.right.height),d=i.top.height+a+i.bottom.height+o+i.border.top+i.border.bottom;s.root.style.height=r.option.asSize(e.height,d+"px"),i.root.height=s.root.offsetHeight,i.background.height=i.root.height-o;var l=i.root.height-i.top.height-i.bottom.height-o;i.centerContainer.height=l,i.leftContainer.height=l,i.rightContainer.height=i.leftContainer.height,i.root.width=s.root.offsetWidth,i.background.width=i.root.width-n,i.left.width=s.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=s.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var c=i.root.width-i.left.width-i.right.width-n;i.center.width=c,i.centerContainer.width=c,i.top.width=c,i.bottom.width=c,s.background.style.height=i.background.height+"px",s.backgroundVertical.style.height=i.background.height+"px",s.backgroundHorizontal.style.height=i.centerContainer.height+"px",s.centerContainer.style.height=i.centerContainer.height+"px",s.leftContainer.style.height=i.leftContainer.height+"px",s.rightContainer.style.height=i.rightContainer.height+"px",s.background.style.width=i.background.width+"px",s.backgroundVertical.style.width=i.centerContainer.width+"px",s.backgroundHorizontal.style.width=i.background.width+"px",s.centerContainer.style.width=i.center.width+"px",s.top.style.width=i.top.width+"px",s.bottom.style.width=i.bottom.width+"px",s.background.style.left="0",s.background.style.top="0",s.backgroundVertical.style.left=i.left.width+i.border.left+"px",s.backgroundVertical.style.top="0",s.backgroundHorizontal.style.left="0",s.backgroundHorizontal.style.top=i.top.height+"px",s.centerContainer.style.left=i.left.width+"px",s.centerContainer.style.top=i.top.height+"px",s.leftContainer.style.left="0",s.leftContainer.style.top=i.top.height+"px",s.rightContainer.style.left=i.left.width+i.center.width+"px",s.rightContainer.style.top=i.top.height+"px",s.top.style.left=i.left.width+"px",s.top.style.top="0",s.bottom.style.left=i.left.width+"px",s.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var p=this.props.scrollTop;"bottom"==e.orientation&&(p+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),s.center.style.left="0",s.center.style.top=p+"px",s.left.style.left="0",s.left.style.top=p+"px",s.right.style.left="0",s.right.style.top=p+"px";var u=0==this.props.scrollTop?"hidden":"",m=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";if(s.shadowTop.style.visibility=u,s.shadowBottom.style.visibility=m,s.shadowTopLeft.style.visibility=u,s.shadowBottomLeft.style.visibility=m,s.shadowTopRight.style.visibility=u,s.shadowBottomRight.style.visibility=m,this.components.forEach(function(e){t=e.redraw()||t}),t){var f=3;this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTops;s++){var o=s%2===0?1.3*i:.5*i;this.lineTo(t+o*Math.sin(2*s*Math.PI/10),e-o*Math.cos(2*s*Math.PI/10))}this.closePath()},CanvasRenderingContext2D.prototype.roundRect=function(t,e,i,s,o){var n=Math.PI/180;0>i-2*o&&(o=i/2),0>s-2*o&&(o=s/2),this.beginPath(),this.moveTo(t+o,e),this.lineTo(t+i-o,e),this.arc(t+i-o,e+o,o,270*n,360*n,!1),this.lineTo(t+i,e+s-o),this.arc(t+i-o,e+s-o,o,0,90*n,!1),this.lineTo(t+o,e+s),this.arc(t+o,e+s-o,o,90*n,180*n,!1),this.lineTo(t,e+o),this.arc(t+o,e+o,o,180*n,270*n,!1)},CanvasRenderingContext2D.prototype.ellipse=function(t,e,i,s){var o=.5522848,n=i/2*o,r=s/2*o,a=t+i,h=e+s,d=t+i/2,l=e+s/2;this.beginPath(),this.moveTo(t,l),this.bezierCurveTo(t,l-r,d-n,e,d,e),this.bezierCurveTo(d+n,e,a,l-r,a,l),this.bezierCurveTo(a,l+r,d+n,h,d,h),this.bezierCurveTo(d-n,h,t,l+r,t,l)},CanvasRenderingContext2D.prototype.database=function(t,e,i,s){var o=1/3,n=i,r=s*o,a=.5522848,h=n/2*a,d=r/2*a,l=t+n,c=e+r,p=t+n/2,u=e+r/2,m=e+(s-r/2),f=e+s;this.beginPath(),this.moveTo(l,u),this.bezierCurveTo(l,u+d,p+h,c,p,c),this.bezierCurveTo(p-h,c,t,u+d,t,u),this.bezierCurveTo(t,u-d,p-h,e,p,e),this.bezierCurveTo(p+h,e,l,u-d,l,u),this.lineTo(l,m),this.bezierCurveTo(l,m+d,p+h,f,p,f),this.bezierCurveTo(p-h,f,t,m+d,t,m),this.lineTo(t,u)},CanvasRenderingContext2D.prototype.arrow=function(t,e,i,s){var o=t-s*Math.cos(i),n=e-s*Math.sin(i),r=t-.9*s*Math.cos(i),a=e-.9*s*Math.sin(i),h=o+s/3*Math.cos(i+.5*Math.PI),d=n+s/3*Math.sin(i+.5*Math.PI),l=o+s/3*Math.cos(i-.5*Math.PI),c=n+s/3*Math.sin(i-.5*Math.PI);this.beginPath(),this.moveTo(t,e),this.lineTo(h,d),this.lineTo(r,a),this.lineTo(l,c),this.closePath()},CanvasRenderingContext2D.prototype.dashedLine=function(t,e,i,s,o){o||(o=[10,5]),0==p&&(p=.001);var n=o.length;this.moveTo(t,e);for(var r=i-t,a=s-e,h=a/r,d=Math.sqrt(r*r+a*a),l=0,c=!0;d>=.1;){var p=o[l++%n];p>d&&(p=d);var u=Math.sqrt(p*p/(1+h*h));0>r&&(u=-u),t+=u,e+=h*u,this[c?"lineTo":"moveTo"](t,e),d-=p,c=!c}})},function(t,e,i){function s(t,e){this.groupId=t,this.options=e}var o=i(2),n=i(53);s.prototype.getYRange=function(t){for(var e=t[0].y,i=t[0].y,s=0;st[s].y?t[s].y:e,i=i0){var r,a,h=Number(i.svg.style.height.replace("px",""));if(r=o.getSVGElement("path",i.svgElements,i.svg),r.setAttributeNS(null,"class",e.className),void 0!==e.style&&r.setAttributeNS(null,"style",e.style),a=1==e.options.catmullRom.enabled?s._catmullRom(t,e):s._linear(t),1==e.options.shaded.enabled){var d,l=o.getSVGElement("path",i.svgElements,i.svg);d="top"==e.options.shaded.orientation?"M"+t[0].x+",0 "+a+"L"+t[t.length-1].x+",0":"M"+t[0].x+","+h+" "+a+"L"+t[t.length-1].x+","+h,l.setAttributeNS(null,"class",e.className+" fill"),void 0!==e.options.shaded.style&&l.setAttributeNS(null,"style",e.options.shaded.style),l.setAttributeNS(null,"d",d)}r.setAttributeNS(null,"d","M"+a),1==e.options.drawPoints.enabled&&n.draw(t,e,i)}},s._catmullRomUniform=function(t){for(var e,i,s,o,n,r,a=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",h=1/6,d=t.length,l=0;d-1>l;l++)e=0==l?t[0]:t[l-1],i=t[l],s=t[l+1],o=d>l+2?t[l+2]:s,n={x:(-e.x+6*i.x+s.x)*h,y:(-e.y+6*i.y+s.y)*h},r={x:(i.x+6*s.x-o.x)*h,y:(i.y+6*s.y-o.y)*h},a+="C"+n.x+","+n.y+" "+r.x+","+r.y+" "+s.x+","+s.y+" ";return a},s._catmullRom=function(t,e){var i=e.options.catmullRom.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);for(var s,o,n,r,a,h,d,l,c,p,u,m,f,g,v,y,b,_,x,w=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",D=t.length,M=0;D-1>M;M++)s=0==M?t[0]:t[M-1],o=t[M],n=t[M+1],r=D>M+2?t[M+2]:n,d=Math.sqrt(Math.pow(s.x-o.x,2)+Math.pow(s.y-o.y,2)),l=Math.sqrt(Math.pow(o.x-n.x,2)+Math.pow(o.y-n.y,2)),c=Math.sqrt(Math.pow(n.x-r.x,2)+Math.pow(n.y-r.y,2)),g=Math.pow(c,i),y=Math.pow(c,2*i),v=Math.pow(l,i),b=Math.pow(l,2*i),x=Math.pow(d,i),_=Math.pow(d,2*i),p=2*_+3*x*v+b,u=2*y+3*g*v+b,m=3*x*(x+v),m>0&&(m=1/m),f=3*g*(g+v),f>0&&(f=1/f),a={x:(-b*s.x+p*o.x+_*n.x)*m,y:(-b*s.y+p*o.y+_*n.y)*m},h={x:(y*o.x+u*n.x-b*r.x)*f,y:(y*o.y+u*n.y-b*r.y)*f},0==a.x&&0==a.y&&(a=o),0==h.x&&0==h.y&&(h=n),w+="C"+a.x+","+a.y+" "+h.x+","+h.y+" "+n.x+","+n.y+" ";return w},s._linear=function(t){for(var e="",i=0;it[s].y?t[s].y:e,i=i0&&(n=Math.min(n,Math.abs(c[d-1].x-r))),a=s._getSafeDrawData(n,h,m);else{var g=d+(p[r].amount-p[r].resolved),v=d-(p[r].resolved+1);g0&&(n=Math.min(n,Math.abs(c[v].x-r))),a=s._getSafeDrawData(n,h,m),p[r].resolved+=1,"stack"==h.options.barChart.handleOverlap?(f=p[r].accumulated,p[r].accumulated+=h.zeroPosition-c[d].y):"sideBySide"==h.options.barChart.handleOverlap&&(a.width=a.width/p[r].amount,a.offset+=p[r].resolved*a.width-.5*a.width*(p[r].amount+1),"left"==h.options.barChart.align?a.offset-=.5*a.width:"right"==h.options.barChart.align&&(a.offset+=.5*a.width))}o.drawBar(c[d].x+a.offset,c[d].y-f,a.width,h.zeroPosition-c[d].y,h.className+" bar",i.svgElements,i.svg),1==h.options.drawPoints.enabled&&o.drawPoint(c[d].x+a.offset,c[d].y,h,i.svgElements,i.svg)}},s._getDataIntersections=function(t,e){for(var i,s=0;s0&&(i=Math.min(i,Math.abs(e[s-1].x-e[s].x))),0==i&&(void 0===t[e[s].x]&&(t[e[s].x]={amount:0,resolved:0,accumulated:0}),t[e[s].x].amount+=1)},s._getSafeDrawData=function(t,e,i){var s,o;return t0?(s=i>t?i:t,o=0,"left"==e.options.barChart.align?o-=.5*t:"right"==e.options.barChart.align&&(o+=.5*t)):(s=e.options.barChart.width,o=0,"left"==e.options.barChart.align?o-=.5*e.options.barChart.width:"right"==e.options.barChart.align&&(o+=.5*e.options.barChart.width)),{width:s,offset:o}},s.getStackedBarYRange=function(t,e,i,o,n){if(t.length>0){t.sort(function(t,e){return t.x==e.x?t.groupId-e.groupId:t.x-e.x});var r={};s._getDataIntersections(r,t),e[o]=s._getStackedBarYRange(r,t),e[o].yAxisOrientation=n,i.push(o)}},s._getStackedBarYRange=function(t,e){for(var i,s=e[0].y,o=e[0].y,n=0;ne[n].y?e[n].y:s,o=ot[r].accumulated?t[r].accumulated:s,o=ot[s].y?t[s].y:e,i=is;++s)i[s].apply(this,e)}return this},e.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},e.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e){var i,s,o;!function(n,r){s=[],i=r,o="function"==typeof i?i.apply(e,s):i,!(void 0!==o&&(t.exports=o))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,s={},o={keydown:{},keyup:{}},n={};for(e=97;122>=e;e++)n[String.fromCharCode(e)]={code:65+(e-97),shift:!1};for(e=65;90>=e;e++)n[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;9>=e;e++)n[""+e]={code:48+e,shift:!1};for(e=1;12>=e;e++)n["F"+e]={code:111+e,shift:!1};for(e=0;9>=e;e++)n["num"+e]={code:96+e,shift:!1};n["num*"]={code:106,shift:!1},n["num+"]={code:107,shift:!1},n["num-"]={code:109,shift:!1},n["num/"]={code:111,shift:!1},n["num."]={code:110,shift:!1},n.left={code:37,shift:!1},n.up={code:38,shift:!1},n.right={code:39,shift:!1},n.down={code:40,shift:!1},n.space={code:32,shift:!1},n.enter={code:13,shift:!1},n.shift={code:16,shift:void 0},n.esc={code:27,shift:!1},n.backspace={code:8,shift:!1},n.tab={code:9,shift:!1},n.ctrl={code:17,shift:!1},n.alt={code:18,shift:!1},n["delete"]={code:46,shift:!1},n.pageup={code:33,shift:!1},n.pagedown={code:34,shift:!1},n["="]={code:187,shift:!1},n["-"]={code:189,shift:!1},n["]"]={code:221,shift:!1},n["["]={code:219,shift:!1};var r=function(t){h(t,"keydown")},a=function(t){h(t,"keyup")},h=function(t,e){if(void 0!==o[e][t.keyCode]){for(var s=o[e][t.keyCode],n=0;n0)for(i in He)s=He[i],o=e[s],"undefined"!=typeof o&&(t[s]=o);return t}function b(t){return 0>t?Math.ceil(t):Math.floor(t)}function _(t,e,i){for(var s=""+Math.abs(t),o=t>=0;s.lengths;s++)(i&&t[s]!==e[s]||!i&&L(t[s])!==L(e[s]))&&r++;return r+n}function O(t){if(t){var e=t.toLowerCase().replace(/(.)s$/,"$1");t=mi[t]||fi[e]||e}return t}function E(t){var e,i,s={};for(i in t)a(t,i)&&(e=O(i),e&&(s[e]=t[i]));return s}function k(t){var e,i;if(0===t.indexOf("week"))e=7,i="day";else{if(0!==t.indexOf("month"))return;e=12,i="month"}Me[t]=function(s,o){var r,a,h=Me._locale[t],d=[];if("number"==typeof s&&(o=s,s=n),a=function(t){var e=Me().utc().set(i,t);return h.call(Me._locale,e,s||"")},null!=o)return a(o);for(r=0;e>r;r++)d.push(a(r));return d}}function L(t){var e=+t,i=0;return 0!==e&&isFinite(e)&&(i=e>=0?Math.floor(e):Math.ceil(e)),i}function N(t,e){return new Date(Date.UTC(t,e+1,0)).getUTCDate()}function I(t,e,i){return pe(Me([t,11,31+e-i]),e,i).week}function z(t){return P(t)?366:365}function P(t){return t%4===0&&t%100!==0||t%400===0}function A(t){var e;t._a&&-2===t._pf.overflow&&(e=t._a[Ne]<0||t._a[Ne]>11?Ne:t._a[Ie]<1||t._a[Ie]>N(t._a[Le],t._a[Ne])?Ie:t._a[ze]<0||t._a[ze]>24||24===t._a[ze]&&(0!==t._a[Pe]||0!==t._a[Ae]||0!==t._a[Re])?ze:t._a[Pe]<0||t._a[Pe]>59?Pe:t._a[Ae]<0||t._a[Ae]>59?Ae:t._a[Re]<0||t._a[Re]>999?Re:-1,t._pf._overflowDayOfYear&&(Le>e||e>Ie)&&(e=Ie),t._pf.overflow=e)}function R(t){return null==t._isValid&&(t._isValid=!isNaN(t._d.getTime())&&t._pf.overflow<0&&!t._pf.empty&&!t._pf.invalidMonth&&!t._pf.nullInput&&!t._pf.invalidFormat&&!t._pf.userInvalidated,t._strict&&(t._isValid=t._isValid&&0===t._pf.charsLeftOver&&0===t._pf.unusedTokens.length&&t._pf.bigHour===n)),t._isValid}function F(t){return t?t.toLowerCase().replace("_","-"):t}function H(t){for(var e,i,s,o,n=0;n0;){if(s=Y(o.slice(0,e).join("-")))return s;if(i&&i.length>=e&&T(o,i,!0)>=e-1)break;e--}n++}return null}function Y(t){var e=null;if(!Fe[t]&&Ye)try{e=Me.locale(),!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),Me.locale(e)}catch(i){}return Fe[t]}function B(t,e){var i,s;return e._isUTC?(i=e.clone(),s=(Me.isMoment(t)||C(t)?+t:+Me(t))-+i,i._d.setTime(+i._d+s),Me.updateOffset(i,!1),i):Me(t).local()}function W(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function G(t){var e,i,s=t.match(je);for(e=0,i=s.length;i>e;e++)s[e]=_i[s[e]]?_i[s[e]]:W(s[e]);return function(o){var n="";for(e=0;i>e;e++)n+=s[e]instanceof Function?s[e].call(o,t):s[e];return n}}function j(t,e){return t.isValid()?(e=V(e,t.localeData()),gi[e]||(gi[e]=G(e)),gi[e](t)):t.localeData().invalidDate()}function V(t,e){function i(t){return e.longDateFormat(t)||t}var s=5;for(Ve.lastIndex=0;s>=0&&Ve.test(t);)t=t.replace(Ve,i),Ve.lastIndex=0,s-=1;return t}function U(t,e){var i,s=e._strict;switch(t){case"Q":return ii;case"DDDD":return oi;case"YYYY":case"GGGG":case"gggg":return s?ni:qe;case"Y":case"G":case"g":return ai;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return s?ri:Ze;case"S":if(s)return ii;case"SS":if(s)return si;case"SSS":if(s)return oi;case"DDD":return Xe;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return Ke;case"a":case"A":return e._locale._meridiemParse;case"x":return ti;case"X":return ei;case"Z":case"ZZ":return $e;case"T":return Je;case"SSSS":return Qe;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return s?si:Ue;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return Ue;case"Do":return s?e._locale._ordinalParse:e._locale._ordinalParseLenient;default:return i=new RegExp(ee(te(t.replace("\\","")),"i"))}}function X(t){t=t||"";var e=t.match($e)||[],i=e[e.length-1]||[],s=(i+"").match(pi)||["-",0,0],o=+(60*s[1])+L(s[2]);return"+"===s[0]?-o:o}function q(t,e,i){var s,o=i._a;switch(t){case"Q":null!=e&&(o[Ne]=3*(L(e)-1));break;case"M":case"MM":null!=e&&(o[Ne]=L(e)-1);break;case"MMM":case"MMMM":s=i._locale.monthsParse(e,t,i._strict),null!=s?o[Ne]=s:i._pf.invalidMonth=e;break;case"D":case"DD":null!=e&&(o[Ie]=L(e));break;case"Do":null!=e&&(o[Ie]=L(parseInt(e.match(/\d{1,2}/)[0],10)));break;case"DDD":case"DDDD":null!=e&&(i._dayOfYear=L(e));break;case"YY":o[Le]=Me.parseTwoDigitYear(e);break;case"YYYY":case"YYYYY":case"YYYYYY":o[Le]=L(e);break;case"a":case"A":i._isPm=i._locale.isPM(e);break;case"h":case"hh":i._pf.bigHour=!0;case"H":case"HH":o[ze]=L(e);break;case"m":case"mm":o[Pe]=L(e);break;case"s":case"ss":o[Ae]=L(e);break;case"S":case"SS":case"SSS":case"SSSS":o[Re]=L(1e3*("0."+e));break;case"x":i._d=new Date(L(e));break;case"X":i._d=new Date(1e3*parseFloat(e));break;case"Z":case"ZZ":i._useUTC=!0,i._tzm=X(e);break;case"dd":case"ddd":case"dddd":s=i._locale.weekdaysParse(e),null!=s?(i._w=i._w||{},i._w.d=s):i._pf.invalidWeekday=e;break;case"w":case"ww":case"W":case"WW":case"d":case"e":case"E":t=t.substr(0,1);case"gggg":case"GGGG":case"GGGGG":t=t.substr(0,2),e&&(i._w=i._w||{},i._w[t]=L(e));break;case"gg":case"GG":i._w=i._w||{},i._w[t]=Me.parseTwoDigitYear(e)}}function Z(t){var e,i,s,o,n,a,h;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(n=1,a=4,i=r(e.GG,t._a[Le],pe(Me(),1,4).year),s=r(e.W,1),o=r(e.E,1)):(n=t._locale._week.dow,a=t._locale._week.doy,i=r(e.gg,t._a[Le],pe(Me(),n,a).year),s=r(e.w,1),null!=e.d?(o=e.d,n>o&&++s):o=null!=e.e?e.e+n:n),h=ue(i,s,o,a,n),t._a[Le]=h.year,t._dayOfYear=h.dayOfYear}function Q(t){var e,i,s,o,n=[];if(!t._d){for(s=$(t),t._w&&null==t._a[Ie]&&null==t._a[Ne]&&Z(t),t._dayOfYear&&(o=r(t._a[Le],s[Le]),t._dayOfYear>z(o)&&(t._pf._overflowDayOfYear=!0),i=he(o,0,t._dayOfYear),t._a[Ne]=i.getUTCMonth(),t._a[Ie]=i.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=n[e]=s[e];for(;7>e;e++)t._a[e]=n[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[ze]&&0===t._a[Pe]&&0===t._a[Ae]&&0===t._a[Re]&&(t._nextDay=!0,t._a[ze]=0),t._d=(t._useUTC?he:ae).apply(null,n),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()+t._tzm),t._nextDay&&(t._a[ze]=24)}}function K(t){var e;t._d||(e=E(t._i),t._a=[e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],Q(t))}function $(t){var e=new Date;return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}function J(t){if(t._f===Me.ISO_8601)return void se(t);t._a=[],t._pf.empty=!0;var e,i,s,o,r,a=""+t._i,h=a.length,d=0;for(s=V(t._f,t._locale).match(je)||[],e=0;e0&&t._pf.unusedInput.push(r),a=a.slice(a.indexOf(i)+i.length),d+=i.length),_i[o]?(i?t._pf.empty=!1:t._pf.unusedTokens.push(o),q(o,i,t)):t._strict&&!i&&t._pf.unusedTokens.push(o);t._pf.charsLeftOver=h-d,a.length>0&&t._pf.unusedInput.push(a),t._pf.bigHour===!0&&t._a[ze]<=12&&(t._pf.bigHour=n),t._isPm&&t._a[ze]<12&&(t._a[ze]+=12),t._isPm===!1&&12===t._a[ze]&&(t._a[ze]=0),Q(t),A(t)}function te(t){return t.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,s,o){return e||i||s||o})}function ee(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function ie(t){var e,i,s,o,n;if(0===t._f.length)return t._pf.invalidFormat=!0,void(t._d=new Date(0/0));for(o=0;on)&&(s=n,i=e));v(t,i||e)}function se(t){var e,i,s=t._i,o=hi.exec(s);if(o){for(t._pf.iso=!0,e=0,i=li.length;i>e;e++)if(li[e][1].exec(s)){t._f=li[e][0]+(o[6]||" ");break}for(e=0,i=ci.length;i>e;e++)if(ci[e][1].exec(s)){t._f+=ci[e][0];break}s.match($e)&&(t._f+="Z"),J(t)}else t._isValid=!1}function oe(t){se(t),t._isValid===!1&&(delete t._isValid,Me.createFromInputFallback(t))}function ne(t,e){var i,s=[];for(i=0;it&&a.setFullYear(t),a}function he(t){var e=new Date(Date.UTC.apply(null,arguments));return 1970>t&&e.setUTCFullYear(t),e}function de(t,e){if("string"==typeof t)if(isNaN(t)){if(t=e.weekdaysParse(t),"number"!=typeof t)return null}else t=parseInt(t,10);return t}function le(t,e,i,s,o){return o.relativeTime(e||1,!!i,t,s)}function ce(t,e,i){var s=Me.duration(t).abs(),o=Ee(s.as("s")),n=Ee(s.as("m")),r=Ee(s.as("h")),a=Ee(s.as("d")),h=Ee(s.as("M")),d=Ee(s.as("y")),l=o0,l[4]=i,le.apply({},l)}function pe(t,e,i){var s,o=i-e,n=i-t.day();return n>o&&(n-=7),o-7>n&&(n+=7),s=Me(t).add(n,"d"),{week:Math.ceil(s.dayOfYear()/7),year:s.year()}}function ue(t,e,i,s,o){var n,r,a=he(t,0,1).getUTCDay();return a=0===a?7:a,i=null!=i?i:o,n=o-a+(a>s?7:0)-(o>a?7:0),r=7*(e-1)+(i-o)+n+1,{year:r>0?t:t-1,dayOfYear:r>0?r:z(t-1)+r}}function me(t){var e,i=t._i,s=t._f;return t._locale=t._locale||Me.localeData(t._l),null===i||s===n&&""===i?Me.invalid({nullInput:!0}):("string"==typeof i&&(t._i=i=t._locale.preparse(i)),Me.isMoment(i)?new f(i,!0):(s?S(s)?ie(t):J(t):re(t),e=new f(t),e._nextDay&&(e.add(1,"d"),e._nextDay=n),e))}function fe(t,e){var i,s;if(1===e.length&&S(e[0])&&(e=e[0]),!e.length)return Me();for(i=e[0],s=1;s=0?"+":"-";return e+_(Math.abs(t),6)},gg:function(){return _(this.weekYear()%100,2)},gggg:function(){return _(this.weekYear(),4)},ggggg:function(){return _(this.weekYear(),5)},GG:function(){return _(this.isoWeekYear()%100,2)},GGGG:function(){return _(this.isoWeekYear(),4)},GGGGG:function(){return _(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return L(this.milliseconds()/100)},SS:function(){return _(L(this.milliseconds()/10),2)},SSS:function(){return _(this.milliseconds(),3)},SSSS:function(){return _(this.milliseconds(),3)},Z:function(){var t=-this.zone(),e="+";return 0>t&&(t=-t,e="-"),e+_(L(t/60),2)+":"+_(L(t)%60,2)},ZZ:function(){var t=-this.zone(),e="+";return 0>t&&(t=-t,e="-"),e+_(L(t/60),2)+_(L(t)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},x:function(){return this.valueOf()},X:function(){return this.unix()},Q:function(){return this.quarter()}},xi={},wi=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"];yi.length;)Ce=yi.pop(),_i[Ce+"o"]=u(_i[Ce],Ce);for(;bi.length;)Ce=bi.pop(),_i[Ce+Ce]=p(_i[Ce],2);_i.DDDD=p(_i.DDD,3),v(m.prototype,{set:function(t){var e,i;for(i in t)e=t[i],"function"==typeof e?this[i]=e:this["_"+i]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(t){return this._months[t.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(t){return this._monthsShort[t.month()]},monthsParse:function(t,e,i){var s,o,n;for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),s=0;12>s;s++){if(o=Me.utc([2e3,s]),i&&!this._longMonthsParse[s]&&(this._longMonthsParse[s]=new RegExp("^"+this.months(o,"").replace(".","")+"$","i"),this._shortMonthsParse[s]=new RegExp("^"+this.monthsShort(o,"").replace(".","")+"$","i")),i||this._monthsParse[s]||(n="^"+this.months(o,"")+"|^"+this.monthsShort(o,""),this._monthsParse[s]=new RegExp(n.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[s].test(t))return s;if(i&&"MMM"===e&&this._shortMonthsParse[s].test(t))return s;if(!i&&this._monthsParse[s].test(t))return s}},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(t){return this._weekdays[t.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(t){return this._weekdaysShort[t.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(t){return this._weekdaysMin[t.day()]},weekdaysParse:function(t){var e,i,s;for(this._weekdaysParse||(this._weekdaysParse=[]),e=0;7>e;e++)if(this._weekdaysParse[e]||(i=Me([2e3,1]).day(e),s="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[e]=new RegExp(s.replace(".",""),"i")),this._weekdaysParse[e].test(t))return e},_longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},longDateFormat:function(t){var e=this._longDateFormat[t];return!e&&this._longDateFormat[t.toUpperCase()]&&(e=this._longDateFormat[t.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(t){return t.slice(1)}),this._longDateFormat[t]=e),e},isPM:function(t){return"p"===(t+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(t,e,i){var s=this._calendar[t];return"function"==typeof s?s.apply(e,[i]):s},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(t,e,i,s){var o=this._relativeTime[i];return"function"==typeof o?o(t,e,i,s):o.replace(/%d/i,t)},pastFuture:function(t,e){var i=this._relativeTime[t>0?"future":"past"];return"function"==typeof i?i(e):i.replace(/%s/i,e)},ordinal:function(t){return this._ordinal.replace("%d",t)},_ordinal:"%d",_ordinalParse:/\d{1,2}/,preparse:function(t){return t},postformat:function(t){return t},week:function(t){return pe(t,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),Me=function(t,e,i,s){var o;return"boolean"==typeof i&&(s=i,i=n),o={},o._isAMomentObject=!0,o._i=t,o._f=e,o._l=i,o._strict=s,o._isUTC=!1,o._pf=h(),me(o)},Me.suppressDeprecationWarnings=!1,Me.createFromInputFallback=l("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),Me.min=function(){var t=[].slice.call(arguments,0);return fe("isBefore",t)},Me.max=function(){var t=[].slice.call(arguments,0);return fe("isAfter",t)},Me.utc=function(t,e,i,s){var o;return"boolean"==typeof i&&(s=i,i=n),o={},o._isAMomentObject=!0,o._useUTC=!0,o._isUTC=!0,o._l=i,o._i=t,o._f=e,o._strict=s,o._pf=h(),me(o).utc()},Me.unix=function(t){return Me(1e3*t)},Me.duration=function(t,e){var i,s,o,n,r=t,h=null;return Me.isDuration(t)?r={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(r={},e?r[e]=t:r.milliseconds=t):(h=We.exec(t))?(i="-"===h[1]?-1:1,r={y:0,d:L(h[Ie])*i,h:L(h[ze])*i,m:L(h[Pe])*i,s:L(h[Ae])*i,ms:L(h[Re])*i}):(h=Ge.exec(t))?(i="-"===h[1]?-1:1,o=function(t){var e=t&&parseFloat(t.replace(",","."));return(isNaN(e)?0:e)*i},r={y:o(h[2]),M:o(h[3]),d:o(h[4]),h:o(h[5]),m:o(h[6]),s:o(h[7]),w:o(h[8])}):"object"==typeof r&&("from"in r||"to"in r)&&(n=w(Me(r.from),Me(r.to)),r={},r.ms=n.milliseconds,r.M=n.months),s=new g(r),Me.isDuration(t)&&a(t,"_locale")&&(s._locale=t._locale),s},Me.version=Te,Me.defaultFormat=di,Me.ISO_8601=function(){},Me.momentProperties=He,Me.updateOffset=function(){},Me.relativeTimeThreshold=function(t,e){return vi[t]===n?!1:e===n?vi[t]:(vi[t]=e,!0)},Me.lang=l("moment.lang is deprecated. Use moment.locale instead.",function(t,e){return Me.locale(t,e)}),Me.locale=function(t,e){var i;return t&&(i="undefined"!=typeof e?Me.defineLocale(t,e):Me.localeData(t),i&&(Me.duration._locale=Me._locale=i)),Me._locale._abbr},Me.defineLocale=function(t,e){return null!==e?(e.abbr=t,Fe[t]||(Fe[t]=new m),Fe[t].set(e),Me.locale(t),Fe[t]):(delete Fe[t],null)},Me.langData=l("moment.langData is deprecated. Use moment.localeData instead.",function(t){return Me.localeData(t)}),Me.localeData=function(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Me._locale;if(!S(t)){if(e=Y(t))return e;t=[t]}return H(t)},Me.isMoment=function(t){return t instanceof f||null!=t&&a(t,"_isAMomentObject")},Me.isDuration=function(t){return t instanceof g};for(Ce=wi.length-1;Ce>=0;--Ce)k(wi[Ce]);Me.normalizeUnits=function(t){return O(t)},Me.invalid=function(t){var e=Me.utc(0/0);return null!=t?v(e._pf,t):e._pf.userInvalidated=!0,e},Me.parseZone=function(){return Me.apply(null,arguments).parseZone()},Me.parseTwoDigitYear=function(t){return L(t)+(L(t)>68?1900:2e3)},v(Me.fn=f.prototype,{clone:function(){return Me(this)},valueOf:function(){return+this._d+6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){var t=Me(this).utc();return 00:!1},parsingFlags:function(){return v({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(t){return this.zone(0,t)},local:function(t){return this._isUTC&&(this.zone(0,t),this._isUTC=!1,t&&this.add(this._dateTzOffset(),"m")),this},format:function(t){var e=j(this,t||Me.defaultFormat);return this.localeData().postformat(e)},add:D(1,"add"),subtract:D(-1,"subtract"),diff:function(t,e,i){var s,o,n,r=B(t,this),a=6e4*(this.zone()-r.zone());return e=O(e),"year"===e||"month"===e?(s=432e5*(this.daysInMonth()+r.daysInMonth()),o=12*(this.year()-r.year())+(this.month()-r.month()),n=this-Me(this).startOf("month")-(r-Me(r).startOf("month")),n-=6e4*(this.zone()-Me(this).startOf("month").zone()-(r.zone()-Me(r).startOf("month").zone())),o+=n/s,"year"===e&&(o/=12)):(s=this-r,o="second"===e?s/1e3:"minute"===e?s/6e4:"hour"===e?s/36e5:"day"===e?(s-a)/864e5:"week"===e?(s-a)/6048e5:s),i?o:b(o)},from:function(t,e){return Me.duration({to:this,from:t}).locale(this.locale()).humanize(!e)},fromNow:function(t){return this.from(Me(),t)},calendar:function(t){var e=t||Me(),i=B(e,this).startOf("day"),s=this.diff(i,"days",!0),o=-6>s?"sameElse":-1>s?"lastWeek":0>s?"lastDay":1>s?"sameDay":2>s?"nextDay":7>s?"nextWeek":"sameElse";return this.format(this.localeData().calendar(o,this,Me(e)))},isLeapYear:function(){return P(this.year())},isDST:function(){return this.zone()+t):(i=Me.isMoment(t)?+t:+Me(t),i<+this.clone().startOf(e)) -},isBefore:function(t,e){var i;return e=O("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=Me.isMoment(t)?t:Me(t),+t>+this):(i=Me.isMoment(t)?+t:+Me(t),+this.clone().endOf(e)t?this:t}),max:l("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(t){return t=Me.apply(null,arguments),t>this?this:t}),zone:function(t,e){var i,s=this._offset||0;return null==t?this._isUTC?s:this._dateTzOffset():("string"==typeof t&&(t=X(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&e&&(i=this._dateTzOffset()),this._offset=t,this._isUTC=!0,null!=i&&this.subtract(i,"m"),s!==t&&(!e||this._changeInProgress?M(this,Me.duration(s-t,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,Me.updateOffset(this,!0),this._changeInProgress=null)),this)},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.zone(this._tzm):"string"==typeof this._i&&this.zone(this._i),this},hasAlignedHourOffset:function(t){return t=t?Me(t).zone():0,(this.zone()-t)%60===0},daysInMonth:function(){return N(this.year(),this.month())},dayOfYear:function(t){var e=Ee((Me(this).startOf("day")-Me(this).startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")},quarter:function(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)},weekYear:function(t){var e=pe(this,this.localeData()._week.dow,this.localeData()._week.doy).year;return null==t?e:this.add(t-e,"y")},isoWeekYear:function(t){var e=pe(this,1,4).year;return null==t?e:this.add(t-e,"y")},week:function(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")},isoWeek:function(t){var e=pe(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")},weekday:function(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")},isoWeekday:function(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)},isoWeeksInYear:function(){return I(this.year(),1,4)},weeksInYear:function(){var t=this.localeData()._week;return I(this.year(),t.dow,t.doy)},get:function(t){return t=O(t),this[t]()},set:function(t,e){return t=O(t),"function"==typeof this[t]&&this[t](e),this},locale:function(t){var e;return t===n?this._locale._abbr:(e=Me.localeData(t),null!=e&&(this._locale=e),this)},lang:l("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return t===n?this.localeData():this.locale(t)}),localeData:function(){return this._locale},_dateTzOffset:function(){return 15*Math.round(this._d.getTimezoneOffset()/15)}}),Me.fn.millisecond=Me.fn.milliseconds=be("Milliseconds",!1),Me.fn.second=Me.fn.seconds=be("Seconds",!1),Me.fn.minute=Me.fn.minutes=be("Minutes",!1),Me.fn.hour=Me.fn.hours=be("Hours",!0),Me.fn.date=be("Date",!0),Me.fn.dates=l("dates accessor is deprecated. Use date instead.",be("Date",!0)),Me.fn.year=be("FullYear",!0),Me.fn.years=l("years accessor is deprecated. Use year instead.",be("FullYear",!0)),Me.fn.days=Me.fn.day,Me.fn.months=Me.fn.month,Me.fn.weeks=Me.fn.week,Me.fn.isoWeeks=Me.fn.isoWeek,Me.fn.quarters=Me.fn.quarter,Me.fn.toJSON=Me.fn.toISOString,v(Me.duration.fn=g.prototype,{_bubble:function(){var t,e,i,s=this._milliseconds,o=this._days,n=this._months,r=this._data,a=0;r.milliseconds=s%1e3,t=b(s/1e3),r.seconds=t%60,e=b(t/60),r.minutes=e%60,i=b(e/60),r.hours=i%24,o+=b(i/24),a=b(_e(o)),o-=b(xe(a)),n+=b(o/30),o%=30,a+=b(n/12),n%=12,r.days=o,r.months=n,r.years=a},abs:function(){return this._milliseconds=Math.abs(this._milliseconds),this._days=Math.abs(this._days),this._months=Math.abs(this._months),this._data.milliseconds=Math.abs(this._data.milliseconds),this._data.seconds=Math.abs(this._data.seconds),this._data.minutes=Math.abs(this._data.minutes),this._data.hours=Math.abs(this._data.hours),this._data.months=Math.abs(this._data.months),this._data.years=Math.abs(this._data.years),this},weeks:function(){return b(this.days()/7)},valueOf:function(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*L(this._months/12)},humanize:function(t){var e=ce(this,!t,this.localeData());return t&&(e=this.localeData().pastFuture(+this,e)),this.localeData().postformat(e)},add:function(t,e){var i=Me.duration(t,e);return this._milliseconds+=i._milliseconds,this._days+=i._days,this._months+=i._months,this._bubble(),this},subtract:function(t,e){var i=Me.duration(t,e);return this._milliseconds-=i._milliseconds,this._days-=i._days,this._months-=i._months,this._bubble(),this},get:function(t){return t=O(t),this[t.toLowerCase()+"s"]()},as:function(t){var e,i;if(t=O(t),"month"===t||"year"===t)return e=this._days+this._milliseconds/864e5,i=this._months+12*_e(e),"month"===t?i:i/12;switch(e=this._days+Math.round(xe(this._months/12)),t){case"week":return e/7+this._milliseconds/6048e5;case"day":return e+this._milliseconds/864e5;case"hour":return 24*e+this._milliseconds/36e5;case"minute":return 24*e*60+this._milliseconds/6e4;case"second":return 24*e*60*60+this._milliseconds/1e3;case"millisecond":return Math.floor(24*e*60*60*1e3)+this._milliseconds;default:throw new Error("Unknown unit "+t)}},lang:Me.fn.lang,locale:Me.fn.locale,toIsoString:l("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",function(){return this.toISOString()}),toISOString:function(){var t=Math.abs(this.years()),e=Math.abs(this.months()),i=Math.abs(this.days()),s=Math.abs(this.hours()),o=Math.abs(this.minutes()),n=Math.abs(this.seconds()+this.milliseconds()/1e3);return this.asSeconds()?(this.asSeconds()<0?"-":"")+"P"+(t?t+"Y":"")+(e?e+"M":"")+(i?i+"D":"")+(s||o||n?"T":"")+(s?s+"H":"")+(o?o+"M":"")+(n?n+"S":""):"P0D"},localeData:function(){return this._locale}}),Me.duration.fn.toString=Me.duration.fn.toISOString;for(Ce in ui)a(ui,Ce)&&we(Ce.toLowerCase());Me.duration.fn.asMilliseconds=function(){return this.as("ms")},Me.duration.fn.asSeconds=function(){return this.as("s")},Me.duration.fn.asMinutes=function(){return this.as("m")},Me.duration.fn.asHours=function(){return this.as("h")},Me.duration.fn.asDays=function(){return this.as("d")},Me.duration.fn.asWeeks=function(){return this.as("weeks")},Me.duration.fn.asMonths=function(){return this.as("M")},Me.duration.fn.asYears=function(){return this.as("y")},Me.locale("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===L(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+i}}),Ye?o.exports=Me:(s=function(t,e,i){return i.config&&i.config()&&i.config().noGlobal===!0&&(Oe.moment=Se),Me}.call(e,i,e,o),!(s!==n&&(o.exports=s)),De(!0))}).call(this)}).call(e,function(){return this}(),i(71)(t))},function(t,e,i){var s;!function(o,n){function r(){a.READY||(w.determineEventTypes(),x.each(a.gestures,function(t){M.register(t)}),w.onTouch(a.DOCUMENT,v,M.detect),w.onTouch(a.DOCUMENT,y,M.detect),a.READY=!0)}var a=function S(t,e){return new S.Instance(t,e||{})};a.VERSION="1.1.3",a.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},a.DOCUMENT=document,a.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,a.HAS_TOUCHEVENTS="ontouchstart"in o,a.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),a.NO_MOUSEEVENTS=a.HAS_TOUCHEVENTS&&a.IS_MOBILE||a.HAS_POINTEREVENTS,a.CALCULATE_INTERVAL=25;var h={},d=a.DIRECTION_DOWN="down",l=a.DIRECTION_LEFT="left",c=a.DIRECTION_UP="up",p=a.DIRECTION_RIGHT="right",u=a.POINTER_MOUSE="mouse",m=a.POINTER_TOUCH="touch",f=a.POINTER_PEN="pen",g=a.EVENT_START="start",v=a.EVENT_MOVE="move",y=a.EVENT_END="end",b=a.EVENT_RELEASE="release",_=a.EVENT_TOUCH="touch";a.READY=!1,a.plugins=a.plugins||{},a.gestures=a.gestures||{};var x=a.utils={extend:function(t,e,i){for(var s in e)!e.hasOwnProperty(s)||t[s]!==n&&i||(t[s]=e[s]);return t},on:function(t,e,i){t.addEventListener(e,i,!1)},off:function(t,e,i){t.removeEventListener(e,i,!1)},each:function(t,e,i){var s,o;if("forEach"in t)t.forEach(e,i);else if(t.length!==n){for(s=0,o=t.length;o>s;s++)if(e.call(i,t[s],s,t)===!1)return}else for(s in t)if(t.hasOwnProperty(s)&&e.call(i,t[s],s,t)===!1)return},inStr:function(t,e){return t.indexOf(e)>-1},inArray:function(t,e){if(t.indexOf){var i=t.indexOf(e);return-1===i?!1:i}for(var s=0,o=t.length;o>s;s++)if(t[s]===e)return s;return!1},toArray:function(t){return Array.prototype.slice.call(t,0)},hasParent:function(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1},getCenter:function(t){var e=[],i=[],s=[],o=[],n=Math.min,r=Math.max;return 1===t.length?{pageX:t[0].pageX,pageY:t[0].pageY,clientX:t[0].clientX,clientY:t[0].clientY}:(x.each(t,function(t){e.push(t.pageX),i.push(t.pageY),s.push(t.clientX),o.push(t.clientY)}),{pageX:(n.apply(Math,e)+r.apply(Math,e))/2,pageY:(n.apply(Math,i)+r.apply(Math,i))/2,clientX:(n.apply(Math,s)+r.apply(Math,s))/2,clientY:(n.apply(Math,o)+r.apply(Math,o))/2})},getVelocity:function(t,e,i){return{x:Math.abs(e/t)||0,y:Math.abs(i/t)||0}},getAngle:function(t,e){var i=e.clientX-t.clientX,s=e.clientY-t.clientY;return 180*Math.atan2(s,i)/Math.PI},getDirection:function(t,e){var i=Math.abs(t.clientX-e.clientX),s=Math.abs(t.clientY-e.clientY);return i>=s?t.clientX-e.clientX>0?l:p:t.clientY-e.clientY>0?c:d},getDistance:function(t,e){var i=e.clientX-t.clientX,s=e.clientY-t.clientY;return Math.sqrt(i*i+s*s)},getScale:function(t,e){return t.length>=2&&e.length>=2?this.getDistance(e[0],e[1])/this.getDistance(t[0],t[1]):1},getRotation:function(t,e){return t.length>=2&&e.length>=2?this.getAngle(e[1],e[0])-this.getAngle(t[1],t[0]):0},isVertical:function(t){return t==c||t==d},setPrefixedCss:function(t,e,i,s){var o=["","Webkit","Moz","O","ms"];e=x.toCamelCase(e);for(var n=0;n0&&this.started&&(r=v),this.started=!0;var d=this.collectEventData(i,r,o,t);return e!=y&&s.call(M,d),a&&(d.changedLength=h,d.eventType=a,s.call(M,d),d.eventType=r,delete d.changedLength),r==y&&(s.call(M,d),this.started=!1),r},determineEventTypes:function(){var t;return t=a.HAS_POINTEREVENTS?o.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:a.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],h[g]=t[0],h[v]=t[1],h[y]=t[2],h},getTouchList:function(t,e){if(a.HAS_POINTEREVENTS)return D.getTouchList();if(t.touches){if(e==v)return t.touches;var i=[],s=[].concat(x.toArray(t.touches),x.toArray(t.changedTouches)),o=[];return x.each(s,function(t){x.inArray(i,t.identifier)===!1&&o.push(t),i.push(t.identifier)}),o}return t.identifier=1,[t]},collectEventData:function(t,e,i,s){var o=m;return x.inStr(s.type,"mouse")||D.matchType(u,s)?o=u:D.matchType(f,s)&&(o=f),{center:x.getCenter(i),timeStamp:Date.now(),target:s.target,touches:i,eventType:e,pointerType:o,srcEvent:s,preventDefault:function(){var t=this.srcEvent;t.preventManipulation&&t.preventManipulation(),t.preventDefault&&t.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return M.stopDetect()}}}},D=a.PointerEvent={pointers:{},getTouchList:function(){var t=[];return x.each(this.pointers,function(e){t.push(e)}),t},updatePointer:function(t,e){t==y||t!=y&&1!==e.buttons?delete this.pointers[e.pointerId]:(e.identifier=e.pointerId,this.pointers[e.pointerId]=e)},matchType:function(t,e){if(!e.pointerType)return!1;var i=e.pointerType,s={};return s[u]=i===(e.MSPOINTER_TYPE_MOUSE||u),s[m]=i===(e.MSPOINTER_TYPE_TOUCH||m),s[f]=i===(e.MSPOINTER_TYPE_PEN||f),s[t]},reset:function(){this.pointers={}}},M=a.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(t,e){this.current||(this.stopped=!1,this.current={inst:t,startEvent:x.extend({},e),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(e))},detect:function(t){if(this.current&&!this.stopped){t=this.extendEventData(t);var e=this.current.inst,i=e.options;return x.each(this.gestures,function(s){!this.stopped&&e.enabled&&i[s.name]&&s.handler.call(s,t,e)},this),this.current&&(this.current.lastEvent=t),t.eventType==y&&this.stopDetect(),t}},stopDetect:function(){this.previous=x.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(t,e,i,s,o){var n=this.current,r=!1,h=n.lastCalcEvent,d=n.lastCalcData;h&&t.timeStamp-h.timeStamp>a.CALCULATE_INTERVAL&&(e=h.center,i=t.timeStamp-h.timeStamp,s=t.center.clientX-h.center.clientX,o=t.center.clientY-h.center.clientY,r=!0),(t.eventType==_||t.eventType==b)&&(n.futureCalcEvent=t),(!n.lastCalcEvent||r)&&(d.velocity=x.getVelocity(i,s,o),d.angle=x.getAngle(e,t.center),d.direction=x.getDirection(e,t.center),n.lastCalcEvent=n.futureCalcEvent||t,n.futureCalcEvent=t),t.velocityX=d.velocity.x,t.velocityY=d.velocity.y,t.interimAngle=d.angle,t.interimDirection=d.direction},extendEventData:function(t){var e=this.current,i=e.startEvent,s=e.lastEvent||i;(t.eventType==_||t.eventType==b)&&(i.touches=[],x.each(t.touches,function(t){i.touches.push({clientX:t.clientX,clientY:t.clientY})}));var o=t.timeStamp-i.timeStamp,n=t.center.clientX-i.center.clientX,r=t.center.clientY-i.center.clientY;return this.getCalculatedData(t,s.center,o,n,r),x.extend(t,{startEvent:i,deltaTime:o,deltaX:n,deltaY:r,distance:x.getDistance(i.center,t.center),angle:x.getAngle(i.center,t.center),direction:x.getDirection(i.center,t.center),scale:x.getScale(i.touches,t.touches),rotation:x.getRotation(i.touches,t.touches)}),t},register:function(t){var e=t.defaults||{};return e[t.name]===n&&(e[t.name]=!0),x.extend(a.defaults,e,!0),t.index=t.index||1e3,this.gestures.push(t),this.gestures.sort(function(t,e){return t.indexe.index?1:0}),this.gestures}};a.Instance=function(t,e){var i=this;r(),this.element=t,this.enabled=!0,x.each(e,function(t,i){delete e[i],e[x.toCamelCase(i)]=t}),this.options=x.extend(x.extend({},a.defaults),e||{}),this.options.behavior&&x.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=w.onTouch(t,g,function(t){i.enabled&&t.eventType==g?M.startDetect(i,t):t.eventType==_&&M.detect(t)}),this.eventHandlers=[]},a.Instance.prototype={on:function(t,e){var i=this;return w.on(i.element,t,e,function(t){i.eventHandlers.push({gesture:t,handler:e})}),i},off:function(t,e){var i=this;return w.off(i.element,t,e,function(t){var s=x.inArray({gesture:t,handler:e});s!==!1&&i.eventHandlers.splice(s,1)}),i},trigger:function(t,e){e||(e={});var i=a.DOCUMENT.createEvent("Event");i.initEvent(t,!0,!0),i.gesture=e;var s=this.element;return x.hasParent(e.target,s)&&(s=e.target),s.dispatchEvent(i),this},enable:function(t){return this.enabled=t,this},dispose:function(){var t,e;for(x.toggleBehavior(this.element,this.options.behavior,!1),t=-1;e=this.eventHandlers[++t];)x.off(this.element,e.gesture,e.handler);return this.eventHandlers=[],w.off(this.element,h[g],this.eventStartHandler),null}},function(t){function e(e,s){var o=M.current;if(!(s.options.dragMaxTouches>0&&e.touches.length>s.options.dragMaxTouches))switch(e.eventType){case g:i=!1;break;case v:if(e.distance0)){var r=Math.abs(s.options.dragMinDistance/e.distance);n.pageX+=e.deltaX*r,n.pageY+=e.deltaY*r,n.clientX+=e.deltaX*r,n.clientY+=e.deltaY*r,e=M.extendEventData(e)}(o.lastEvent.dragLockToAxis||s.options.dragLockToAxis&&s.options.dragLockMinDistance<=e.distance)&&(e.dragLockToAxis=!0);var a=o.lastEvent.direction;e.dragLockToAxis&&a!==e.direction&&(e.direction=x.isVertical(a)?e.deltaY<0?c:d:e.deltaX<0?l:p),i||(s.trigger(t+"start",e),i=!0),s.trigger(t,e),s.trigger(t+e.direction,e);var h=x.isVertical(e.direction);(s.options.dragBlockVertical&&h||s.options.dragBlockHorizontal&&!h)&&e.preventDefault();break;case b:i&&e.changedLength<=s.options.dragMaxTouches&&(s.trigger(t+"end",e),i=!1);break;case y:i=!1}}var i=!1;a.gestures.Drag={name:t,index:50,handler:e,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),a.gestures.Gesture={name:"gesture",index:1337,handler:function(t,e){e.trigger(this.name,t)}},function(t){function e(e,s){var o=s.options,n=M.current;switch(e.eventType){case g:clearTimeout(i),n.name=t,i=setTimeout(function(){n&&n.name==t&&s.trigger(t,e)},o.holdTimeout);break;case v:e.distance>o.holdThreshold&&clearTimeout(i);break;case b:clearTimeout(i)}}var i;a.gestures.Hold={name:t,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:e}}("hold"),a.gestures.Release={name:"release",index:1/0,handler:function(t,e){t.eventType==b&&e.trigger(this.name,t)}},a.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(t,e){if(t.eventType==b){var i=t.touches.length,s=e.options;if(is.swipeMaxTouches)return;(t.velocityX>s.swipeVelocityX||t.velocityY>s.swipeVelocityY)&&(e.trigger(this.name,t),e.trigger(this.name+t.direction,t))}}},function(t){function e(e,s){var o,n,r=s.options,a=M.current,h=M.previous;switch(e.eventType){case g:i=!1;break;case v:i=i||e.distance>r.tapMaxDistance;break;case y:!x.inStr(e.srcEvent.type,"cancel")&&e.deltaTimes.options.transformMinRotation&&s.trigger("rotate",e),o>s.options.transformMinScale&&(s.trigger("pinch",e),s.trigger("pinch"+(e.scale<1?"in":"out"),e));break;case b:i&&e.changedLength<2&&(s.trigger(t+"end",e),i=!1)}}var i=!1;a.gestures.Transform={name:t,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:e}}("transform"),s=function(){return a}.call(e,i,e,t),!(s!==n&&(t.exports=s))}(window)},function(t,e){e.startWithClustering=function(){this.clusterToFit(this.constants.clustering.initialMaxNodes,!0),this.updateLabels(),this.stabilize&&this._stabilize(),this.start()},e.clusterToFit=function(t,e){for(var i=this.nodeIndices.length,s=50,o=0;i>t&&s>o;)o%3==0?(this.forceAggregateHubs(!0),this.normalizeClusterLevels()):this.increaseClusterLevel(),i=this.nodeIndices.length,o+=1;o>0&&1==e&&this.repositionNodes(),this._updateCalculationNodes()},e.openCluster=function(t){var e=this.moving;if(t.clusterSize>this.constants.clustering.sectorThreshold&&this._nodeInActiveArea(t)&&("default"!=this._sector()||1!=this.nodeIndices.length)){this._addSector(t);for(var i=0;this.nodeIndices.lengthi;)this.decreaseClusterLevel(),i+=1}else this._expandClusterNode(t,!1,!0),this._updateNodeIndexList(),this._updateDynamicEdges(),this._updateCalculationNodes(),this.updateLabels();this.moving!=e&&this.start()},e.updateClustersDefault=function(){1==this.constants.clustering.enabled&&this.updateClusters(0,!1,!1)},e.increaseClusterLevel=function(){this.updateClusters(-1,!1,!0)},e.decreaseClusterLevel=function(){this.updateClusters(1,!1,!0)},e.updateClusters=function(t,e,i,s){var o=this.moving,n=this.nodeIndices.length;this.previousScale>this.scale&&0==t&&this._collapseSector(),this.previousScale>this.scale||-1==t?this._formClusters(i):(this.previousScalethis.scale||-1==t)&&(this._aggregateHubs(i),this._updateNodeIndexList()),(this.previousScale>this.scale||-1==t)&&(this.handleChains(),this._updateNodeIndexList()),this.previousScale=this.scale,this._updateDynamicEdges(),this.updateLabels(),this.nodeIndices.lengththis.constants.clustering.chainThreshold&&this._reduceAmountOfChains(1-this.constants.clustering.chainThreshold/t)},e._aggregateHubs=function(t){this._getHubSize(),this._formClustersByHub(t,!1)},e.forceAggregateHubs=function(t){var e=this.moving,i=this.nodeIndices.length;this._aggregateHubs(!0),this._updateNodeIndexList(),this._updateDynamicEdges(),this.updateLabels(),this.nodeIndices.length!=i&&(this.clusterSession+=1),(0==t||void 0===t)&&this.moving!=e&&this.start()},e._openClustersBySize=function(){for(var t in this.nodes)if(this.nodes.hasOwnProperty(t)){var e=this.nodes[t];1==e.inView()&&(e.width*this.scale>this.constants.clustering.screenSizeThreshold*this.frame.canvas.clientWidth||e.height*this.scale>this.constants.clustering.screenSizeThreshold*this.frame.canvas.clientHeight)&&this.openCluster(e)}},e._openClusters=function(t,e){for(var i=0;i1&&(t.clusterSizei)){var r=n.from,a=n.to;n.to.options.mass>n.from.options.mass&&(r=n.to,a=n.from),1==a.dynamicEdgesLength?this._addToCluster(r,a,!1):1==r.dynamicEdgesLength&&this._addToCluster(a,r,!1)}}},e._forceClustersByZoom=function(){for(var t in this.nodes)if(this.nodes.hasOwnProperty(t)){var e=this.nodes[t];if(1==e.dynamicEdgesLength&&0!=e.dynamicEdges.length){var i=e.dynamicEdges[0],s=i.toId==e.id?this.nodes[i.fromId]:this.nodes[i.toId];e.id!=s.id&&(s.options.mass>e.options.mass?this._addToCluster(s,e,!0):this._addToCluster(e,s,!0))}}},e._clusterToSmallestNeighbour=function(t){for(var e=-1,i=null,s=0;so.clusterSessions.length&&(e=o.clusterSessions.length,i=o)}null!=o&&void 0!==this.nodes[o.id]&&this._addToCluster(o,t,!0)},e._formClustersByHub=function(t,e){for(var i in this.nodes)this.nodes.hasOwnProperty(i)&&this._formClusterFromHub(this.nodes[i],t,e)},e._formClusterFromHub=function(t,e,i,s){if(void 0===s&&(s=0),t.dynamicEdgesLength>=this.hubThreshold&&0==i||t.dynamicEdgesLength==this.hubThreshold&&1==i){for(var o,n,r,a=this.constants.clustering.clusterEdgeThreshold/this.scale,h=!1,d=[],l=t.dynamicEdges.length,c=0;l>c;c++)d.push(t.dynamicEdges[c].id);if(0==e)for(h=!1,c=0;l>c;c++){var p=this.edges[d[c]];if(void 0!==p&&p.connected&&p.toId!=p.fromId&&(o=p.to.x-p.from.x,n=p.to.y-p.from.y,r=Math.sqrt(o*o+n*n),a>r)){h=!0;break}}if(!e&&h||e)for(c=0;l>c;c++)if(p=this.edges[d[c]],void 0!==p){var u=this.nodes[p.fromId==t.id?p.toId:p.fromId];u.dynamicEdges.length<=this.hubThreshold+s&&u.id!=t.id&&this._addToCluster(t,u,e)}}},e._addToCluster=function(t,e,i){t.containedNodes[e.id]=e;for(var s=0;s1)for(var s=0;s1&&(e.label="[".concat(String(e.clusterSize),"]"))}for(t in this.nodes)this.nodes.hasOwnProperty(t)&&(e=this.nodes[t],1==e.clusterSize&&(e.label=void 0!==e.originalLabel?e.originalLabel:String(e.id)))},e.normalizeClusterLevels=function(){var t,e=0,i=1e9,s=0;for(t in this.nodes)this.nodes.hasOwnProperty(t)&&(s=this.nodes[t].clusterSessions.length,s>e&&(e=s),i>s&&(i=s));if(e-i>this.constants.clustering.clusterLevelDifference){var o=this.nodeIndices.length,n=e-this.constants.clustering.clusterLevelDifference;for(t in this.nodes)this.nodes.hasOwnProperty(t)&&this.nodes[t].clusterSessions.lengths&&(s=n.dynamicEdgesLength),t+=n.dynamicEdgesLength,e+=Math.pow(n.dynamicEdgesLength,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r);this.hubThreshold=Math.floor(t+2*a),this.hubThreshold>s&&(this.hubThreshold=s)},e._reduceAmountOfChains=function(t){this.hubThreshold=2;var e=Math.floor(this.nodeIndices.length*t);for(var i in this.nodes)this.nodes.hasOwnProperty(i)&&2==this.nodes[i].dynamicEdgesLength&&this.nodes[i].dynamicEdges.length>=2&&e>0&&(this._formClusterFromHub(this.nodes[i],!0,!0,1),e-=1) -},e._getChainFraction=function(){var t=0,e=0;for(var i in this.nodes)this.nodes.hasOwnProperty(i)&&(2==this.nodes[i].dynamicEdgesLength&&this.nodes[i].dynamicEdges.length>=2&&(t+=1),e+=1);return t/e}},function(t,e,i){var s=i(1),o=i(40);e._putDataInSector=function(){this.sectors.active[this._sector()].nodes=this.nodes,this.sectors.active[this._sector()].edges=this.edges,this.sectors.active[this._sector()].nodeIndices=this.nodeIndices},e._switchToSector=function(t,e){void 0===e||"active"==e?this._switchToActiveSector(t):this._switchToFrozenSector(t)},e._switchToActiveSector=function(t){this.nodeIndices=this.sectors.active[t].nodeIndices,this.nodes=this.sectors.active[t].nodes,this.edges=this.sectors.active[t].edges},e._switchToSupportSector=function(){this.nodeIndices=this.sectors.support.nodeIndices,this.nodes=this.sectors.support.nodes,this.edges=this.sectors.support.edges},e._switchToFrozenSector=function(t){this.nodeIndices=this.sectors.frozen[t].nodeIndices,this.nodes=this.sectors.frozen[t].nodes,this.edges=this.sectors.frozen[t].edges},e._loadLatestSector=function(){this._switchToSector(this._sector())},e._sector=function(){return this.activeSector[this.activeSector.length-1]},e._previousSector=function(){if(this.activeSector.length>1)return this.activeSector[this.activeSector.length-2];throw new TypeError("there are not enough sectors in the this.activeSector array.")},e._setActiveSector=function(t){this.activeSector.push(t)},e._forgetLastSector=function(){this.activeSector.pop()},e._createNewSector=function(t){this.sectors.active[t]={nodes:{},edges:{},nodeIndices:[],formationScale:this.scale,drawingNode:void 0},this.sectors.active[t].drawingNode=new o({id:t,color:{background:"#eaefef",border:"495c5e"}},{},{},this.constants),this.sectors.active[t].drawingNode.clusterSize=2},e._deleteActiveSector=function(t){delete this.sectors.active[t]},e._deleteFrozenSector=function(t){delete this.sectors.frozen[t]},e._freezeSector=function(t){this.sectors.frozen[t]=this.sectors.active[t],this._deleteActiveSector(t)},e._activateSector=function(t){this.sectors.active[t]=this.sectors.frozen[t],this._deleteFrozenSector(t)},e._mergeThisWithFrozen=function(t){for(var e in this.nodes)this.nodes.hasOwnProperty(e)&&(this.sectors.frozen[t].nodes[e]=this.nodes[e]);for(var i in this.edges)this.edges.hasOwnProperty(i)&&(this.sectors.frozen[t].edges[i]=this.edges[i]);for(var s=0;s1?this[t](o[0],o[1]):this[t](e))}return this._loadLatestSector(),i},e._doInSupportSector=function(t,e){var i=!1;if(void 0===e)this._switchToSupportSector(),i=this[t]();else{this._switchToSupportSector();var s=Array.prototype.splice.call(arguments,1);i=s.length>1?this[t](s[0],s[1]):this[t](e)}return this._loadLatestSector(),i},e._doInAllFrozenSectors=function(t,e){if(void 0===e)for(var i in this.sectors.frozen)this.sectors.frozen.hasOwnProperty(i)&&(this._switchToFrozenSector(i),this[t]());else for(var i in this.sectors.frozen)if(this.sectors.frozen.hasOwnProperty(i)){this._switchToFrozenSector(i);var s=Array.prototype.splice.call(arguments,1);s.length>1?this[t](s[0],s[1]):this[t](e)}this._loadLatestSector()},e._doInAllSectors=function(t,e){var i=Array.prototype.splice.call(arguments,1);void 0===e?(this._doInAllActiveSectors(t),this._doInAllFrozenSectors(t)):i.length>1?(this._doInAllActiveSectors(t,i[0],i[1]),this._doInAllFrozenSectors(t,i[0],i[1])):(this._doInAllActiveSectors(t,e),this._doInAllFrozenSectors(t,e))},e._clearNodeIndexList=function(){var t=this._sector();this.sectors.active[t].nodeIndices=[],this.nodeIndices=this.sectors.active[t].nodeIndices},e._drawSectorNodes=function(t,e){var i,s=1e9,o=-1e9,n=1e9,r=-1e9;for(var a in this.sectors[e])if(this.sectors[e].hasOwnProperty(a)&&void 0!==this.sectors[e][a].drawingNode){this._switchToSector(a,e),s=1e9,o=-1e9,n=1e9,r=-1e9;for(var h in this.nodes)this.nodes.hasOwnProperty(h)&&(i=this.nodes[h],i.resize(t),n>i.x-.5*i.width&&(n=i.x-.5*i.width),ri.y-.5*i.height&&(s=i.y-.5*i.height),o0?this.nodes[i[i.length-1]]:null},e._getEdgesOverlappingWith=function(t,e){var i=this.edges;for(var s in i)i.hasOwnProperty(s)&&i[s].isOverlappingWith(t)&&e.push(s)},e._getAllEdgesOverlappingWith=function(t){var e=[];return this._doInAllActiveSectors("_getEdgesOverlappingWith",t,e),e},e._getEdgeAt=function(t){var e=this._pointerToPositionObject(t),i=this._getAllEdgesOverlappingWith(e);return i.length>0?this.edges[i[i.length-1]]:null},e._addToSelection=function(t){t instanceof s?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t},e._addToHover=function(t){t instanceof s?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t},e._removeFromSelection=function(t){t instanceof s?delete this.selectionObj.nodes[t.id]:delete this.selectionObj.edges[t.id]},e._unselectAll=function(t){void 0===t&&(t=!1);for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&this.selectionObj.nodes[e].unselect();for(var i in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(i)&&this.selectionObj.edges[i].unselect();this.selectionObj={nodes:{},edges:{}},0==t&&this.emit("select",this.getSelection())},e._unselectClusters=function(t){void 0===t&&(t=!1);for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&this.selectionObj.nodes[e].clusterSize>1&&(this.selectionObj.nodes[e].unselect(),this._removeFromSelection(this.selectionObj.nodes[e]));0==t&&this.emit("select",this.getSelection())},e._getSelectedNodeCount=function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);return t},e._getSelectedNode=function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return this.selectionObj.nodes[t];return null},e._getSelectedEdge=function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t];return null},e._getSelectedEdgeCount=function(){var t=0;for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(t+=1);return t},e._getSelectedObjectCount=function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);for(var i in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(i)&&(t+=1);return t},e._selectionIsEmpty=function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return!1;for(var e in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(e))return!1;return!0},e._clusterInSelection=function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].clusterSize>1)return!0;return!1},e._selectConnectedEdges=function(t){for(var e=0;ei;i++){o=t[i];var n=this.nodes[o];if(!n)throw new RangeError('Node with id "'+o+'" not found');this._selectObject(n,!0,!0,e,!0)}this.redraw()},e.selectEdges=function(t){var e,i,s;if(!t||void 0==t.length)throw"Selection must be an array with ids";for(this._unselectAll(!0),e=0,i=t.length;i>e;e++){s=t[e];var o=this.edges[s];if(!o)throw new RangeError('Edge with id "'+s+'" not found');this._selectObject(o,!0,!0,!1,!0)}this.redraw()},e._updateSelection=function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&(this.nodes.hasOwnProperty(t)||delete this.selectionObj.nodes[t]);for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(this.edges.hasOwnProperty(e)||delete this.selectionObj.edges[e])}},function(t,e,i){var s=i(1),o=i(40),n=i(37);e._clearManipulatorBar=function(){for(;this.manipulationDiv.hasChildNodes();)this.manipulationDiv.removeChild(this.manipulationDiv.firstChild);this.manipulationDOM={},this._manipulationReleaseOverload=function(){},delete this.sectors.support.nodes.targetNode,delete this.sectors.support.nodes.targetViaNode,this.controlNodesActive=!1},e._restoreOverloadedFunctions=function(){for(var t in this.cachedFunctions)this.cachedFunctions.hasOwnProperty(t)&&(this[t]=this.cachedFunctions[t])},e._toggleEditMode=function(){this.editMode=!this.editMode;var t=this.manipulationDiv,e=this.closeDiv,i=this.editModeDiv;1==this.editMode?(t.style.display="block",e.style.display="block",i.style.display="none",e.onclick=this._toggleEditMode.bind(this)):(t.style.display="none",e.style.display="none",i.style.display="block",e.onclick=null),this._createManipulatorBar()},e._createManipulatorBar=function(){this.boundFunction&&this.off("select",this.boundFunction);var t=this.constants.locales[this.constants.locale];if(void 0!==this.edgeBeingEdited&&(this.edgeBeingEdited._disableControlNodes(),this.edgeBeingEdited=void 0,this.selectedControlNode=null,this.controlNodesActive=!1,this._redraw()),this._restoreOverloadedFunctions(),this.freezeSimulation=!1,this.blockConnectingEdgeSelection=!1,this.forceAppendSelection=!1,this.manipulationDOM={},1==this.editMode){for(;this.manipulationDiv.hasChildNodes();)this.manipulationDiv.removeChild(this.manipulationDiv.firstChild);this.manipulationDOM.addNodeSpan=document.createElement("span"),this.manipulationDOM.addNodeSpan.className="network-manipulationUI add",this.manipulationDOM.addNodeLabelSpan=document.createElement("span"),this.manipulationDOM.addNodeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.addNodeLabelSpan.innerHTML=t.addNode,this.manipulationDOM.addNodeSpan.appendChild(this.manipulationDOM.addNodeLabelSpan),this.manipulationDOM.seperatorLineDiv1=document.createElement("div"),this.manipulationDOM.seperatorLineDiv1.className="network-seperatorLine",this.manipulationDOM.addEdgeSpan=document.createElement("span"),this.manipulationDOM.addEdgeSpan.className="network-manipulationUI connect",this.manipulationDOM.addEdgeLabelSpan=document.createElement("span"),this.manipulationDOM.addEdgeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.addEdgeLabelSpan.innerHTML=t.addEdge,this.manipulationDOM.addEdgeSpan.appendChild(this.manipulationDOM.addEdgeLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.addNodeSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv1),this.manipulationDiv.appendChild(this.manipulationDOM.addEdgeSpan),1==this._getSelectedNodeCount()&&this.triggerFunctions.edit?(this.manipulationDOM.seperatorLineDiv2=document.createElement("div"),this.manipulationDOM.seperatorLineDiv2.className="network-seperatorLine",this.manipulationDOM.editNodeSpan=document.createElement("span"),this.manipulationDOM.editNodeSpan.className="network-manipulationUI edit",this.manipulationDOM.editNodeLabelSpan=document.createElement("span"),this.manipulationDOM.editNodeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.editNodeLabelSpan.innerHTML=t.editNode,this.manipulationDOM.editNodeSpan.appendChild(this.manipulationDOM.editNodeLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv2),this.manipulationDiv.appendChild(this.manipulationDOM.editNodeSpan)):1==this._getSelectedEdgeCount()&&0==this._getSelectedNodeCount()&&(this.manipulationDOM.seperatorLineDiv3=document.createElement("div"),this.manipulationDOM.seperatorLineDiv3.className="network-seperatorLine",this.manipulationDOM.editEdgeSpan=document.createElement("span"),this.manipulationDOM.editEdgeSpan.className="network-manipulationUI edit",this.manipulationDOM.editEdgeLabelSpan=document.createElement("span"),this.manipulationDOM.editEdgeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.editEdgeLabelSpan.innerHTML=t.editEdge,this.manipulationDOM.editEdgeSpan.appendChild(this.manipulationDOM.editEdgeLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv3),this.manipulationDiv.appendChild(this.manipulationDOM.editEdgeSpan)),0==this._selectionIsEmpty()&&(this.manipulationDOM.seperatorLineDiv4=document.createElement("div"),this.manipulationDOM.seperatorLineDiv4.className="network-seperatorLine",this.manipulationDOM.deleteSpan=document.createElement("span"),this.manipulationDOM.deleteSpan.className="network-manipulationUI delete",this.manipulationDOM.deleteLabelSpan=document.createElement("span"),this.manipulationDOM.deleteLabelSpan.className="network-manipulationLabel",this.manipulationDOM.deleteLabelSpan.innerHTML=t.del,this.manipulationDOM.deleteSpan.appendChild(this.manipulationDOM.deleteLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv4),this.manipulationDiv.appendChild(this.manipulationDOM.deleteSpan)),this.manipulationDOM.addNodeSpan.onclick=this._createAddNodeToolbar.bind(this),this.manipulationDOM.addEdgeSpan.onclick=this._createAddEdgeToolbar.bind(this),1==this._getSelectedNodeCount()&&this.triggerFunctions.edit?this.manipulationDOM.editNodeSpan.onclick=this._editNode.bind(this):1==this._getSelectedEdgeCount()&&0==this._getSelectedNodeCount()&&(this.manipulationDOM.editEdgeSpan.onclick=this._createEditEdgeToolbar.bind(this)),0==this._selectionIsEmpty()&&(this.manipulationDOM.deleteSpan.onclick=this._deleteSelected.bind(this)),this.closeDiv.onclick=this._toggleEditMode.bind(this),this.boundFunction=this._createManipulatorBar.bind(this),this.on("select",this.boundFunction)}else{for(;this.editModeDiv.hasChildNodes();)this.editModeDiv.removeChild(this.editModeDiv.firstChild);this.manipulationDOM.editModeSpan=document.createElement("span"),this.manipulationDOM.editModeSpan.className="network-manipulationUI edit editmode",this.manipulationDOM.editModeLabelSpan=document.createElement("span"),this.manipulationDOM.editModeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.editModeLabelSpan.innerHTML=t.edit,this.manipulationDOM.editModeSpan.appendChild(this.manipulationDOM.editModeLabelSpan),this.editModeDiv.appendChild(this.manipulationDOM.editModeSpan),this.manipulationDOM.editModeSpan.onclick=this._toggleEditMode.bind(this)}},e._createAddNodeToolbar=function(){this._clearManipulatorBar(),this.boundFunction&&this.off("select",this.boundFunction);var t=this.constants.locales[this.constants.locale];this.manipulationDOM={},this.manipulationDOM.backSpan=document.createElement("span"),this.manipulationDOM.backSpan.className="network-manipulationUI back",this.manipulationDOM.backLabelSpan=document.createElement("span"),this.manipulationDOM.backLabelSpan.className="network-manipulationLabel",this.manipulationDOM.backLabelSpan.innerHTML=t.back,this.manipulationDOM.backSpan.appendChild(this.manipulationDOM.backLabelSpan),this.manipulationDOM.seperatorLineDiv1=document.createElement("div"),this.manipulationDOM.seperatorLineDiv1.className="network-seperatorLine",this.manipulationDOM.descriptionSpan=document.createElement("span"),this.manipulationDOM.descriptionSpan.className="network-manipulationUI none",this.manipulationDOM.descriptionLabelSpan=document.createElement("span"),this.manipulationDOM.descriptionLabelSpan.className="network-manipulationLabel",this.manipulationDOM.descriptionLabelSpan.innerHTML=t.addDescription,this.manipulationDOM.descriptionSpan.appendChild(this.manipulationDOM.descriptionLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.backSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv1),this.manipulationDiv.appendChild(this.manipulationDOM.descriptionSpan),this.manipulationDOM.backSpan.onclick=this._createManipulatorBar.bind(this),this.boundFunction=this._addNode.bind(this),this.on("select",this.boundFunction)},e._createAddEdgeToolbar=function(){this._clearManipulatorBar(),this._unselectAll(!0),this.freezeSimulation=!0;var t=this.constants.locales[this.constants.locale];this.boundFunction&&this.off("select",this.boundFunction),this._unselectAll(),this.forceAppendSelection=!1,this.blockConnectingEdgeSelection=!0,this.manipulationDOM={},this.manipulationDOM.backSpan=document.createElement("span"),this.manipulationDOM.backSpan.className="network-manipulationUI back",this.manipulationDOM.backLabelSpan=document.createElement("span"),this.manipulationDOM.backLabelSpan.className="network-manipulationLabel",this.manipulationDOM.backLabelSpan.innerHTML=t.back,this.manipulationDOM.backSpan.appendChild(this.manipulationDOM.backLabelSpan),this.manipulationDOM.seperatorLineDiv1=document.createElement("div"),this.manipulationDOM.seperatorLineDiv1.className="network-seperatorLine",this.manipulationDOM.descriptionSpan=document.createElement("span"),this.manipulationDOM.descriptionSpan.className="network-manipulationUI none",this.manipulationDOM.descriptionLabelSpan=document.createElement("span"),this.manipulationDOM.descriptionLabelSpan.className="network-manipulationLabel",this.manipulationDOM.descriptionLabelSpan.innerHTML=t.edgeDescription,this.manipulationDOM.descriptionSpan.appendChild(this.manipulationDOM.descriptionLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.backSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv1),this.manipulationDiv.appendChild(this.manipulationDOM.descriptionSpan),this.manipulationDOM.backSpan.onclick=this._createManipulatorBar.bind(this),this.boundFunction=this._handleConnect.bind(this),this.on("select",this.boundFunction),this.cachedFunctions._handleTouch=this._handleTouch,this.cachedFunctions._manipulationReleaseOverload=this._manipulationReleaseOverload,this.cachedFunctions._handleDragStart=this._handleDragStart,this.cachedFunctions._handleDragEnd=this._handleDragEnd,this._handleTouch=this._handleConnect,this._manipulationReleaseOverload=function(){},this._handleDragStart=function(){},this._handleDragEnd=this._finishConnect,this._redraw()},e._createEditEdgeToolbar=function(){this._clearManipulatorBar(),this.controlNodesActive=!0,this.boundFunction&&this.off("select",this.boundFunction),this.edgeBeingEdited=this._getSelectedEdge(),this.edgeBeingEdited._enableControlNodes();var t=this.constants.locales[this.constants.locale];this.manipulationDOM={},this.manipulationDOM.backSpan=document.createElement("span"),this.manipulationDOM.backSpan.className="network-manipulationUI back",this.manipulationDOM.backLabelSpan=document.createElement("span"),this.manipulationDOM.backLabelSpan.className="network-manipulationLabel",this.manipulationDOM.backLabelSpan.innerHTML=t.back,this.manipulationDOM.backSpan.appendChild(this.manipulationDOM.backLabelSpan),this.manipulationDOM.seperatorLineDiv1=document.createElement("div"),this.manipulationDOM.seperatorLineDiv1.className="network-seperatorLine",this.manipulationDOM.descriptionSpan=document.createElement("span"),this.manipulationDOM.descriptionSpan.className="network-manipulationUI none",this.manipulationDOM.descriptionLabelSpan=document.createElement("span"),this.manipulationDOM.descriptionLabelSpan.className="network-manipulationLabel",this.manipulationDOM.descriptionLabelSpan.innerHTML=t.editEdgeDescription,this.manipulationDOM.descriptionSpan.appendChild(this.manipulationDOM.descriptionLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.backSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv1),this.manipulationDiv.appendChild(this.manipulationDOM.descriptionSpan),this.manipulationDOM.backSpan.onclick=this._createManipulatorBar.bind(this),this.cachedFunctions._handleTouch=this._handleTouch,this.cachedFunctions._manipulationReleaseOverload=this._manipulationReleaseOverload,this.cachedFunctions._handleTap=this._handleTap,this.cachedFunctions._handleDragStart=this._handleDragStart,this.cachedFunctions._handleOnDrag=this._handleOnDrag,this._handleTouch=this._selectControlNode,this._handleTap=function(){},this._handleOnDrag=this._controlNodeDrag,this._handleDragStart=function(){},this._manipulationReleaseOverload=this._releaseControlNode,this._redraw()},e._selectControlNode=function(t){this.edgeBeingEdited.controlNodes.from.unselect(),this.edgeBeingEdited.controlNodes.to.unselect(),this.selectedControlNode=this.edgeBeingEdited._getSelectedControlNode(this._XconvertDOMtoCanvas(t.x),this._YconvertDOMtoCanvas(t.y)),null!==this.selectedControlNode&&(this.selectedControlNode.select(),this.freezeSimulation=!0),this._redraw()},e._controlNodeDrag=function(t){var e=this._getPointer(t.gesture.center);null!==this.selectedControlNode&&void 0!==this.selectedControlNode&&(this.selectedControlNode.x=this._XconvertDOMtoCanvas(e.x),this.selectedControlNode.y=this._YconvertDOMtoCanvas(e.y)),this._redraw()},e._releaseControlNode=function(t){var e=this._getNodeAt(t);null!==e?(1==this.edgeBeingEdited.controlNodes.from.selected&&(this._editEdge(e.id,this.edgeBeingEdited.to.id),this.edgeBeingEdited.controlNodes.from.unselect()),1==this.edgeBeingEdited.controlNodes.to.selected&&(this._editEdge(this.edgeBeingEdited.from.id,e.id),this.edgeBeingEdited.controlNodes.to.unselect())):this.edgeBeingEdited._restoreControlNodes(),this.freezeSimulation=!1,this._redraw()},e._handleConnect=function(t){if(0==this._getSelectedNodeCount()){var e=this._getNodeAt(t);if(null!=e)if(e.clusterSize>1)alert(this.constants.locales[this.constants.locale].createEdgeError);else{this._selectObject(e,!1);var i=this.sectors.support.nodes;i.targetNode=new o({id:"targetNode"},{},{},this.constants);var s=i.targetNode;s.x=e.x,s.y=e.y,this.edges.connectionEdge=new n({id:"connectionEdge",from:e.id,to:s.id},this,this.constants);var r=this.edges.connectionEdge;r.from=e,r.connected=!0,r.options.smoothCurves={enabled:!0,dynamic:!1,type:"continuous",roundness:.5},r.selected=!0,r.to=s,this.cachedFunctions._handleOnDrag=this._handleOnDrag,this._handleOnDrag=function(t){var e=this._getPointer(t.gesture.center),i=this.edges.connectionEdge;i.to.x=this._XconvertDOMtoCanvas(e.x),i.to.y=this._YconvertDOMtoCanvas(e.y)},this.moving=!0,this.start()}}},e._finishConnect=function(t){if(1==this._getSelectedNodeCount()){var e=this._getPointer(t.gesture.center);this._handleOnDrag=this.cachedFunctions._handleOnDrag,delete this.cachedFunctions._handleOnDrag;var i=this.edges.connectionEdge.fromId;delete this.edges.connectionEdge,delete this.sectors.support.nodes.targetNode,delete this.sectors.support.nodes.targetViaNode;var s=this._getNodeAt(e);null!=s&&(s.clusterSize>1?alert(this.constants.locales[this.constants.locale].createEdgeError):(this._createEdge(i,s.id),this._createManipulatorBar())),this._unselectAll()}},e._addNode=function(){if(this._selectionIsEmpty()&&1==this.editMode){var t=this._pointerToPositionObject(this.pointerPosition),e={id:s.randomUUID(),x:t.left,y:t.top,label:"new",allowedToMoveX:!0,allowedToMoveY:!0};if(this.triggerFunctions.add){if(2!=this.triggerFunctions.add.length)throw new Error("The function for add does not support two arguments (data,callback)");var i=this;this.triggerFunctions.add(e,function(t){i.nodesData.add(t),i._createManipulatorBar(),i.moving=!0,i.start()})}else this.nodesData.add(e),this._createManipulatorBar(),this.moving=!0,this.start()}},e._createEdge=function(t,e){if(1==this.editMode){var i={from:t,to:e};if(this.triggerFunctions.connect){if(2!=this.triggerFunctions.connect.length)throw new Error("The function for connect does not support two arguments (data,callback)");var s=this;this.triggerFunctions.connect(i,function(t){s.edgesData.add(t),s.moving=!0,s.start()})}else this.edgesData.add(i),this.moving=!0,this.start()}},e._editEdge=function(t,e){if(1==this.editMode){var i={id:this.edgeBeingEdited.id,from:t,to:e};if(this.triggerFunctions.editEdge){if(2!=this.triggerFunctions.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");var s=this;this.triggerFunctions.editEdge(i,function(t){s.edgesData.update(t),s.moving=!0,s.start()})}else this.edgesData.update(i),this.moving=!0,this.start()}},e._editNode=function(){if(!this.triggerFunctions.edit||1!=this.editMode)throw new Error("No edit function has been bound to this button");var t=this._getSelectedNode(),e={id:t.id,label:t.label,group:t.options.group,shape:t.options.shape,color:{background:t.options.color.background,border:t.options.color.border,highlight:{background:t.options.color.highlight.background,border:t.options.color.highlight.border}}};if(2!=this.triggerFunctions.edit.length)throw new Error("The function for edit does not support two arguments (data, callback)");var i=this;this.triggerFunctions.edit(e,function(t){i.nodesData.update(t),i._createManipulatorBar(),i.moving=!0,i.start()})},e._deleteSelected=function(){if(!this._selectionIsEmpty()&&1==this.editMode)if(this._clusterInSelection())alert(this.constants.locales[this.constants.locale].deleteClusterError);else{var t=this.getSelectedNodes(),e=this.getSelectedEdges();if(this.triggerFunctions.del){var i=this,s={nodes:t,edges:e};if(2!=this.triggerFunctions.del.length)throw new Error("The function for delete does not support two arguments (data, callback)");this.triggerFunctions.del(s,function(t){i.edgesData.remove(t.edges),i.nodesData.remove(t.nodes),i._unselectAll(),i.moving=!0,i.start()})}else this.edgesData.remove(e),this.nodesData.remove(t),this._unselectAll(),this.moving=!0,this.start()}}},function(t,e,i){var s=(i(1),i(45));e._cleanNavigation=function(){if(0!=this.navigationHammers.existing.length){for(var t=0;t0){this.constants.hierarchicalLayout.levelSeparation="RL"==this.constants.hierarchicalLayout.direction||"DU"==this.constants.hierarchicalLayout.direction?this.constants.hierarchicalLayout.levelSeparation<0?this.constants.hierarchicalLayout.levelSeparation:-1*this.constants.hierarchicalLayout.levelSeparation:Math.abs(this.constants.hierarchicalLayout.levelSeparation),"RL"==this.constants.hierarchicalLayout.direction||"LR"==this.constants.hierarchicalLayout.direction?1==this.constants.smoothCurves.enabled&&(this.constants.smoothCurves.type="vertical"):1==this.constants.smoothCurves.enabled&&(this.constants.smoothCurves.type="horizontal");var t,e,i=0,s=!1,o=!1;for(e in this.nodes)this.nodes.hasOwnProperty(e)&&(t=this.nodes[e],-1!=t.level?s=!0:o=!0,is&&(n.xFixed=!1,n.x=i[n.level].minPos,r=!0):n.yFixed&&n.level>s&&(n.yFixed=!1,n.y=i[n.level].minPos,r=!0),1==r&&(i[n.level].minPos+=i[n.level].nodeSpacing,n.edges.length>1&&this._placeBranchNodes(n.edges,n.id,i,n.level))}},e._setLevel=function(t,e,i){for(var s=0;st)&&(o.level=t,o.edges.length>1&&this._setLevel(t+1,o.edges,o.id))}},e._setLevelDirected=function(t,e,i){this.nodes[i].hierarchyEnumerated=!0;for(var s=0;s1&&o.hierarchyEnumerated===!1&&this._setLevelDirected(o.level,o.edges,o.id)}},e._restoreNodes=function(){for(var t in this.nodes)this.nodes.hasOwnProperty(t)&&(this.nodes[t].xFixed=!1,this.nodes[t].yFixed=!1)}},function(t,e,i){function s(){this.constants.smoothCurves.enabled=!this.constants.smoothCurves.enabled;var t=document.getElementById("graph_toggleSmooth");t.style.background=1==this.constants.smoothCurves.enabled?"#A4FF56":"#FF8532",this._configureSmoothCurves(!1)}function o(){for(var t in this.calculationNodes)this.calculationNodes.hasOwnProperty(t)&&(this.calculationNodes[t].vx=0,this.calculationNodes[t].vy=0,this.calculationNodes[t].fx=0,this.calculationNodes[t].fy=0);1==this.constants.hierarchicalLayout.enabled?(this._setupHierarchicalLayout(),a.call(this,"graph_H_nd",1,"physics_hierarchicalRepulsion_nodeDistance"),a.call(this,"graph_H_cg",1,"physics_centralGravity"),a.call(this,"graph_H_sc",1,"physics_springConstant"),a.call(this,"graph_H_sl",1,"physics_springLength"),a.call(this,"graph_H_damp",1,"physics_damping")):this.repositionNodes(),this.moving=!0,this.start()}function n(){var t="No options are required, default values used.",e=[],i=document.getElementById("graph_physicsMethod1"),s=document.getElementById("graph_physicsMethod2");if(1==i.checked){if(this.constants.physics.barnesHut.gravitationalConstant!=this.backupConstants.physics.barnesHut.gravitationalConstant&&e.push("gravitationalConstant: "+this.constants.physics.barnesHut.gravitationalConstant),this.constants.physics.centralGravity!=this.backupConstants.physics.barnesHut.centralGravity&&e.push("centralGravity: "+this.constants.physics.centralGravity),this.constants.physics.springLength!=this.backupConstants.physics.barnesHut.springLength&&e.push("springLength: "+this.constants.physics.springLength),this.constants.physics.springConstant!=this.backupConstants.physics.barnesHut.springConstant&&e.push("springConstant: "+this.constants.physics.springConstant),this.constants.physics.damping!=this.backupConstants.physics.barnesHut.damping&&e.push("damping: "+this.constants.physics.damping),0!=e.length){t="var options = {",t+="physics: {barnesHut: {";for(var o=0;othis.constants.clustering.clusterThreshold&&1==this.constants.clustering.enabled&&this.clusterToFit(this.constants.clustering.reduceToNodes,!1),this._calculateForces())},e._calculateForces=function(){this._calculateGravitationalForces(),this._calculateNodeForces(),this.constants.physics.springConstant>0&&(1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic?this._calculateSpringForcesWithSupport():1==this.constants.physics.hierarchicalRepulsion.enabled?this._calculateHierarchicalSpringForces():this._calculateSpringForces())},e._updateCalculationNodes=function(){if(1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic){this.calculationNodes={},this.calculationNodeIndices=[];for(var t in this.nodes)this.nodes.hasOwnProperty(t)&&(this.calculationNodes[t]=this.nodes[t]);var e=this.sectors.support.nodes;for(var i in e)e.hasOwnProperty(i)&&(this.edges.hasOwnProperty(e[i].parentEdgeId)?this.calculationNodes[i]=e[i]:e[i]._setForce(0,0));for(var s in this.calculationNodes)this.calculationNodes.hasOwnProperty(s)&&this.calculationNodeIndices.push(s)}else this.calculationNodes=this.nodes,this.calculationNodeIndices=this.nodeIndices},e._calculateGravitationalForces=function(){var t,e,i,s,o,n=this.calculationNodes,r=this.constants.physics.centralGravity,a=0;for(o=0;oSimulation Mode:Barnes HutRepulsionHierarchical
Options:
',this.containerElement.parentElement.insertBefore(this.physicsConfiguration,this.containerElement),this.optionsDiv=document.createElement("div"),this.optionsDiv.style.fontSize="14px",this.optionsDiv.style.fontFamily="verdana",this.containerElement.parentElement.insertBefore(this.optionsDiv,this.containerElement);var e;e=document.getElementById("graph_BH_gc"),e.onchange=a.bind(this,"graph_BH_gc",-1,"physics_barnesHut_gravitationalConstant"),e=document.getElementById("graph_BH_cg"),e.onchange=a.bind(this,"graph_BH_cg",1,"physics_centralGravity"),e=document.getElementById("graph_BH_sc"),e.onchange=a.bind(this,"graph_BH_sc",1,"physics_springConstant"),e=document.getElementById("graph_BH_sl"),e.onchange=a.bind(this,"graph_BH_sl",1,"physics_springLength"),e=document.getElementById("graph_BH_damp"),e.onchange=a.bind(this,"graph_BH_damp",1,"physics_damping"),e=document.getElementById("graph_R_nd"),e.onchange=a.bind(this,"graph_R_nd",1,"physics_repulsion_nodeDistance"),e=document.getElementById("graph_R_cg"),e.onchange=a.bind(this,"graph_R_cg",1,"physics_centralGravity"),e=document.getElementById("graph_R_sc"),e.onchange=a.bind(this,"graph_R_sc",1,"physics_springConstant"),e=document.getElementById("graph_R_sl"),e.onchange=a.bind(this,"graph_R_sl",1,"physics_springLength"),e=document.getElementById("graph_R_damp"),e.onchange=a.bind(this,"graph_R_damp",1,"physics_damping"),e=document.getElementById("graph_H_nd"),e.onchange=a.bind(this,"graph_H_nd",1,"physics_hierarchicalRepulsion_nodeDistance"),e=document.getElementById("graph_H_cg"),e.onchange=a.bind(this,"graph_H_cg",1,"physics_centralGravity"),e=document.getElementById("graph_H_sc"),e.onchange=a.bind(this,"graph_H_sc",1,"physics_springConstant"),e=document.getElementById("graph_H_sl"),e.onchange=a.bind(this,"graph_H_sl",1,"physics_springLength"),e=document.getElementById("graph_H_damp"),e.onchange=a.bind(this,"graph_H_damp",1,"physics_damping"),e=document.getElementById("graph_H_direction"),e.onchange=a.bind(this,"graph_H_direction",t,"hierarchicalLayout_direction"),e=document.getElementById("graph_H_levsep"),e.onchange=a.bind(this,"graph_H_levsep",1,"hierarchicalLayout_levelSeparation"),e=document.getElementById("graph_H_nspac"),e.onchange=a.bind(this,"graph_H_nspac",1,"hierarchicalLayout_nodeSpacing");var i=document.getElementById("graph_physicsMethod1"),d=document.getElementById("graph_physicsMethod2"),l=document.getElementById("graph_physicsMethod3");d.checked=!0,this.constants.physics.barnesHut.enabled&&(i.checked=!0),this.constants.hierarchicalLayout.enabled&&(l.checked=!0);var c=document.getElementById("graph_toggleSmooth"),p=document.getElementById("graph_repositionNodes"),u=document.getElementById("graph_generateOptions");c.onclick=s.bind(this),p.onclick=o.bind(this),u.onclick=n.bind(this),c.style.background=1==this.constants.smoothCurves&&0==this.constants.dynamicSmoothCurves?"#A4FF56":"#FF8532",r.apply(this),i.onchange=r.bind(this),d.onchange=r.bind(this),l.onchange=r.bind(this)}},e._overWriteGraphConstants=function(t,e){var i=t.split("_");1==i.length?this.constants[i[0]]=e:2==i.length?this.constants[i[0]][i[1]]=e:3==i.length&&(this.constants[i[0]][i[1]][i[2]]=e)}},function(t){function e(t){throw new Error("Cannot find module '"+t+"'.")}e.keys=function(){return[]},e.resolve=e,t.exports=e,e.id=67},function(t,e){e._calculateNodeForces=function(){var t,e,i,s,o,n,r,a,h,d,l,c=this.calculationNodes,p=this.calculationNodeIndices,u=-2/3,m=4/3,f=this.constants.physics.repulsion.nodeDistance,g=f;for(d=0;di&&(r=.5*g>i?1:v*i+m,r*=0==n?1:1+n*this.constants.clustering.forceAmplification,r/=i,s=t*r,o=e*r,a.fx-=s,a.fy-=o,h.fx+=s,h.fy+=o)}}},function(t,e){e._calculateNodeForces=function(){var t,e,i,s,o,n,r,a,h,d,l=this.calculationNodes,c=this.calculationNodeIndices,p=this.constants.physics.hierarchicalRepulsion.nodeDistance;for(h=0;hi?-Math.pow(u*i,2)+Math.pow(u*p,2):0,0==i?i=.01:n/=i,s=t*n,o=e*n,r.fx-=s,r.fy-=o,a.fx+=s,a.fy+=o}},e._calculateHierarchicalSpringForces=function(){for(var t,e,i,s,o,n,r,a,h,d=this.edges,l=this.calculationNodes,c=this.calculationNodeIndices,p=0;pn;n++)t=e[i[n]],t.options.mass>0&&(this._getForceContribution(o.root.children.NW,t),this._getForceContribution(o.root.children.NE,t),this._getForceContribution(o.root.children.SW,t),this._getForceContribution(o.root.children.SE,t))}},e._getForceContribution=function(t,e){if(t.childrenCount>0){var i,s,o;if(i=t.centerOfMass.x-e.x,s=t.centerOfMass.y-e.y,o=Math.sqrt(i*i+s*s),o*t.calcSize>this.constants.physics.barnesHut.theta){0==o&&(o=.1*Math.random(),i=o);var n=this.constants.physics.barnesHut.gravitationalConstant*t.mass*e.options.mass/(o*o*o),r=i*n,a=s*n;e.fx+=r,e.fy+=a}else if(4==t.childrenCount)this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e);else if(t.children.data.id!=e.id){0==o&&(o=.5*Math.random(),i=o);var n=this.constants.physics.barnesHut.gravitationalConstant*t.mass*e.options.mass/(o*o*o),r=i*n,a=s*n;e.fx+=r,e.fy+=a}}},e._formBarnesHutTree=function(t,e){for(var i,s=e.length,o=Number.MAX_VALUE,n=Number.MAX_VALUE,r=-Number.MAX_VALUE,a=-Number.MAX_VALUE,h=0;s>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(o>d&&(o=d),d>r&&(r=d),n>l&&(n=l),l>a&&(a=l))}var c=Math.abs(r-o)-Math.abs(a-n);c>0?(n-=.5*c,a+=.5*c):(o+=.5*c,r-=.5*c);var p=1e-5,u=Math.max(p,Math.abs(r-o)),m=.5*u,f=.5*(o+r),g=.5*(n+a),v={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:f-m,maxX:f+m,minY:g-m,maxY:g+m},size:u,calcSize:1/u,children:{data:null},maxWidth:0,level:0,childrenCount:4}};for(this._splitBranch(v.root),h=0;s>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(v.root,i);this.barnesHutTree=v},e._updateBranchMass=function(t,e){var i=t.mass+e.options.mass,s=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=s,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=s,t.mass=i;var o=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")},e._placeInRegion=function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x==e.x&&t.children[i].children.data.y==e.y?(e.x+=Math.random(),e.y+=Math.random()):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e)); -break;case 4:this._placeInTree(t.children[i],e)}},e._splitBranch=function(t){var e=null;1==t.childrenCount&&(e=t.children.data,t.mass=0,t.centerOfMass.x=0,t.centerOfMass.y=0),t.childrenCount=4,t.children.data=null,this._insertRegion(t,"NW"),this._insertRegion(t,"NE"),this._insertRegion(t,"SW"),this._insertRegion(t,"SE"),null!=e&&this._placeInTree(t,e)},e._insertRegion=function(t,e){var i,s,o,n,r=.5*t.size;switch(e){case"NW":i=t.range.minX,s=t.range.minX+r,o=t.range.minY,n=t.range.minY+r;break;case"NE":i=t.range.minX+r,s=t.range.maxX,o=t.range.minY,n=t.range.minY+r;break;case"SW":i=t.range.minX,s=t.range.minX+r,o=t.range.minY+r,n=t.range.maxY;break;case"SE":i=t.range.minX+r,s=t.range.maxX,o=t.range.minY+r,n=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:s,minY:o,maxY:n},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}},e._drawTree=function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))},e._drawBranch=function(t,e,i){void 0===i&&(i="#FF0000"),4==t.childrenCount&&(this._drawBranch(t.children.NW,e),this._drawBranch(t.children.NE,e),this._drawBranch(t.children.SE,e),this._drawBranch(t.children.SW,e)),e.strokeStyle=i,e.beginPath(),e.moveTo(t.range.minX,t.range.minY),e.lineTo(t.range.maxX,t.range.minY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.minY),e.lineTo(t.range.maxX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.maxY),e.lineTo(t.range.minX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.minX,t.range.maxY),e.lineTo(t.range.minX,t.range.minY),e.stroke()}},function(t){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}}])}); +if(i=t.get(),0!=i.length){this.dataSet=t,this.dataTable=i,this._onChange=function(){e.setData(e.dataSet)},this.dataSet.on("*",this._onChange),this.colX="x",this.colY="y",this.colZ="z",this.colValue="style",this.colFilter="filter",i[0].hasOwnProperty("filter")&&void 0===this.dataFilter&&(this.dataFilter=new u(t,this.colFilter,this),this.dataFilter.setOnLoadCallback(function(){e.redraw()}));var o=this.style==s.STYLE.BAR||this.style==s.STYLE.BARCOLOR||this.style==s.STYLE.BARSIZE;if(o){if(void 0!==this.defaultXBarWidth)this.xBarWidth=this.defaultXBarWidth;else{var n=this.getDistinctValues(i,this.colX);this.xBarWidth=n[1]-n[0]||1}if(void 0!==this.defaultYBarWidth)this.yBarWidth=this.defaultYBarWidth;else{var r=this.getDistinctValues(i,this.colY);this.yBarWidth=r[1]-r[0]||1}}var d=this.getColumnRange(i,this.colX);o&&(d.min-=this.xBarWidth/2,d.max+=this.xBarWidth/2),this.xMin=void 0!==this.defaultXMin?this.defaultXMin:d.min,this.xMax=void 0!==this.defaultXMax?this.defaultXMax:d.max,this.xMax<=this.xMin&&(this.xMax=this.xMin+1),this.xStep=void 0!==this.defaultXStep?this.defaultXStep:(this.xMax-this.xMin)/5;var l=this.getColumnRange(i,this.colY);o&&(l.min-=this.yBarWidth/2,l.max+=this.yBarWidth/2),this.yMin=void 0!==this.defaultYMin?this.defaultYMin:l.min,this.yMax=void 0!==this.defaultYMax?this.defaultYMax:l.max,this.yMax<=this.yMin&&(this.yMax=this.yMin+1),this.yStep=void 0!==this.defaultYStep?this.defaultYStep:(this.yMax-this.yMin)/5;var c=this.getColumnRange(i,this.colZ);if(this.zMin=void 0!==this.defaultZMin?this.defaultZMin:c.min,this.zMax=void 0!==this.defaultZMax?this.defaultZMax:c.max,this.zMax<=this.zMin&&(this.zMax=this.zMin+1),this.zStep=void 0!==this.defaultZStep?this.defaultZStep:(this.zMax-this.zMin)/5,void 0!==this.colValue){var p=this.getColumnRange(i,this.colValue);this.valueMin=void 0!==this.defaultValueMin?this.defaultValueMin:p.min,this.valueMax=void 0!==this.defaultValueMax?this.defaultValueMax:p.max,this.valueMax<=this.valueMin&&(this.valueMax=this.valueMin+1)}this._setScale()}}},s.prototype._getDataPoints=function(t){var e,i,o,n,r,a,h=[];if(this.style===s.STYLE.GRID||this.style===s.STYLE.SURFACE){var d=[],c=[];for(o=0;ot;t++){var m=(t-p)/(u-p),g=240*m,v=this._hsv2rgb(g,1,1);c.strokeStyle=v,c.beginPath(),c.moveTo(h,r+t),c.lineTo(a,r+t),c.stroke()}c.strokeStyle=this.colorAxis,c.strokeRect(h,r,i,n)}if(this.style===s.STYLE.DOTSIZE&&(c.strokeStyle=this.colorAxis,c.fillStyle=this.colorDot,c.beginPath(),c.moveTo(h,r),c.lineTo(a,r),c.lineTo(a-i+e,d),c.lineTo(h,d),c.closePath(),c.fill(),c.stroke()),this.style===s.STYLE.DOTCOLOR||this.style===s.STYLE.DOTSIZE){var y=5,b=new f(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,o=this._convert3Dto2D(new l(x,r,this.zMin)),Math.cos(2*_)>0?(g.textAlign="center",g.textBaseline="top",o.y+=b):Math.sin(2*_)<0?(g.textAlign="right",g.textBaseline="middle"):(g.textAlign="left",g.textBaseline="middle"),g.fillStyle=this.colorAxis,g.fillText(" "+this.xValueLabel(i.getCurrent())+" ",o.x,o.y),i.next()}for(g.lineWidth=1,s=void 0===this.defaultYStep,i=new f(this.yMin,this.yMax,this.yStep,s),i.start(),i.getCurrent()0?this.xMin:this.xMax,o=this._convert3Dto2D(new l(n,i.getCurrent(),this.zMin)),Math.cos(2*_)<0?(g.textAlign="center",g.textBaseline="top",o.y+=b):Math.sin(2*_)>0?(g.textAlign="right",g.textBaseline="middle"):(g.textAlign="left",g.textBaseline="middle"),g.fillStyle=this.colorAxis,g.fillText(" "+this.yValueLabel(i.getCurrent())+" ",o.x,o.y),i.next();for(g.lineWidth=1,s=void 0===this.defaultZStep,i=new f(this.zMin,this.zMax,this.zStep,s),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new l(n,r,i.getCurrent())),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(t.x,t.y),g.lineTo(t.x-b,t.y),g.stroke(),g.textAlign="right",g.textBaseline="middle",g.fillStyle=this.colorAxis,g.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();g.lineWidth=1,t=this._convert3Dto2D(new l(n,r,this.zMin)),e=this._convert3Dto2D(new l(n,r,this.zMax)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(t.x,t.y),g.lineTo(e.x,e.y),g.stroke(),g.lineWidth=1,p=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),u=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(p.x,p.y),g.lineTo(u.x,u.y),g.stroke(),p=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),u=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(p.x,p.y),g.lineTo(u.x,u.y),g.stroke(),g.lineWidth=1,t=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(t.x,t.y),g.lineTo(e.x,e.y),g.stroke(),t=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(t.x,t.y),g.lineTo(e.x,e.y),g.stroke();var w=this.xLabel;w.length>0&&(c=.1/this.scale.y,n=(this.xMin+this.xMax)/2,r=Math.cos(_)>0?this.yMin-c:this.yMax+c,o=this._convert3Dto2D(new l(n,r,this.zMin)),Math.cos(2*_)>0?(g.textAlign="center",g.textBaseline="top"):Math.sin(2*_)<0?(g.textAlign="right",g.textBaseline="middle"):(g.textAlign="left",g.textBaseline="middle"),g.fillStyle=this.colorAxis,g.fillText(w,o.x,o.y));var M=this.yLabel;M.length>0&&(d=.1/this.scale.x,n=Math.sin(_)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,o=this._convert3Dto2D(new l(n,r,this.zMin)),Math.cos(2*_)<0?(g.textAlign="center",g.textBaseline="top"):Math.sin(2*_)>0?(g.textAlign="right",g.textBaseline="middle"):(g.textAlign="left",g.textBaseline="middle"),g.fillStyle=this.colorAxis,g.fillText(M,o.x,o.y));var D=this.zLabel;D.length>0&&(h=30,n=Math.cos(_)>0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,o=this._convert3Dto2D(new l(n,r,a)),g.textAlign="right",g.textBaseline="middle",g.fillStyle=this.colorAxis,g.fillText(D,o.x-h,o.y))},s.prototype._hsv2rgb=function(t,e,i){var s,o,n,r,a,h;switch(r=i*e,a=Math.floor(t/60),h=r*(1-Math.abs(t/60%2-1)),a){case 0:s=r,o=h,n=0;break;case 1:s=h,o=r,n=0;break;case 2:s=0,o=r,n=h;break;case 3:s=0,o=h,n=r;break;case 4:s=h,o=0,n=r;break;case 5:s=r,o=0,n=h;break;default:s=0,o=0,n=0}return"RGB("+parseInt(255*s)+","+parseInt(255*o)+","+parseInt(255*n)+")"},s.prototype._redrawDataGrid=function(){var t,e,i,o,n,r,a,h,d,c,p,u,m,f=this.frame.canvas,g=f.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(n=0;n0}else r=!0;r?(m=(t.point.z+e.point.z+i.point.z+o.point.z)/4,c=240*(1-(m-this.zMin)*this.scale.z/this.verticalRatio),p=1,this.showShadow?(u=Math.min(1+M.x/D/2,1),a=this._hsv2rgb(c,p,u),h=a):(u=1,a=this._hsv2rgb(c,p,u),h=this.colorAxis)):(a="gray",h=this.colorAxis),d=.5,g.lineWidth=d,g.fillStyle=a,g.strokeStyle=h,g.beginPath(),g.moveTo(t.screen.x,t.screen.y),g.lineTo(e.screen.x,e.screen.y),g.lineTo(o.screen.x,o.screen.y),g.lineTo(i.screen.x,i.screen.y),g.closePath(),g.fill(),g.stroke()}}else for(n=0;np&&(p=0);var u,m,f;this.style===s.STYLE.DOTCOLOR?(u=240*(1-(d.point.value-this.valueMin)*this.scale.value),m=this._hsv2rgb(u,1,1),f=this._hsv2rgb(u,1,.8)):this.style===s.STYLE.DOTSIZE?(m=this.colorDot,f=this.colorDotBorder):(u=240*(1-(d.point.z-this.zMin)*this.scale.z/this.verticalRatio),m=this._hsv2rgb(u,1,1),f=this._hsv2rgb(u,1,.8)),i.lineWidth=1,i.strokeStyle=f,i.fillStyle=m,i.beginPath(),i.arc(d.screen.x,d.screen.y,p,0,2*Math.PI,!0),i.fill(),i.stroke()}}},s.prototype._redrawDataBar=function(){var t,e,i,o,n=this.frame.canvas,r=n.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(t=0;t0&&(t=this.dataPoints[0],s.lineWidth=1,s.strokeStyle="blue",s.beginPath(),s.moveTo(t.screen.x,t.screen.y)),e=1;e0&&s.stroke()}},s.prototype._onMouseDown=function(t){if(t=t||window.event,this.leftButtonDown&&this._onMouseUp(t),this.leftButtonDown=t.which?1===t.which:1===t.button,this.leftButtonDown||this.touchDown){this.startMouseX=o(t),this.startMouseY=n(t),this.startStart=new Date(this.start),this.startEnd=new Date(this.end),this.startArmRotation=this.camera.getArmRotation(),this.frame.style.cursor="move";var e=this;this.onmousemove=function(t){e._onMouseMove(t)},this.onmouseup=function(t){e._onMouseUp(t)},d.addEventListener(document,"mousemove",e.onmousemove),d.addEventListener(document,"mouseup",e.onmouseup),d.preventDefault(t)}},s.prototype._onMouseMove=function(t){t=t||window.event;var e=parseFloat(o(t))-this.startMouseX,i=parseFloat(n(t))-this.startMouseY,s=this.startArmRotation.horizontal+e/200,r=this.startArmRotation.vertical+i/200,a=4,h=Math.sin(a/360*2*Math.PI);Math.abs(Math.sin(s))0?1:0>t?-1:0}var s=e[0],o=e[1],n=e[2],r=i((o.x-s.x)*(t.y-s.y)-(o.y-s.y)*(t.x-s.x)),a=i((n.x-o.x)*(t.y-o.y)-(n.y-o.y)*(t.x-o.x)),h=i((s.x-n.x)*(t.y-n.y)-(s.y-n.y)*(t.x-n.x));return!(0!=r&&0!=a&&r!=a||0!=a&&0!=h&&a!=h||0!=r&&0!=h&&r!=h)},s.prototype._dataPointFromXY=function(t,e){var i,o=100,n=null,r=null,a=null,h=new c(t,e);if(this.style===s.STYLE.BAR||this.style===s.STYLE.BARCOLOR||this.style===s.STYLE.BARSIZE)for(i=this.dataPoints.length-1;i>=0;i--){n=this.dataPoints[i];var d=n.surfaces;if(d)for(var l=d.length-1;l>=0;l--){var p=d[l],u=p.corners,m=[u[0].screen,u[1].screen,u[2].screen],f=[u[2].screen,u[3].screen,u[0].screen];if(this._insideTriangle(h,m)||this._insideTriangle(h,f))return n}}else for(i=0;ib)&&o>b&&(a=b,r=n)}}return r},s.prototype._showTooltip=function(t){var e,i,s;this.tooltip?(e=this.tooltip.dom.content,i=this.tooltip.dom.line,s=this.tooltip.dom.dot):(e=document.createElement("div"),e.style.position="absolute",e.style.padding="10px",e.style.border="1px solid #4d4d4d",e.style.color="#1a1a1a",e.style.background="rgba(255,255,255,0.7)",e.style.borderRadius="2px",e.style.boxShadow="5px 5px 10px rgba(128,128,128,0.5)",i=document.createElement("div"),i.style.position="absolute",i.style.height="40px",i.style.width="0",i.style.borderLeft="1px solid #4d4d4d",s=document.createElement("div"),s.style.position="absolute",s.style.height="0",s.style.width="0",s.style.border="5px solid #4d4d4d",s.style.borderRadius="5px",this.tooltip={dataPoint:null,dom:{content:e,line:i,dot:s}}),this._hideTooltip(),this.tooltip.dataPoint=t,e.innerHTML="function"==typeof this.showTooltip?this.showTooltip(t.point):"
x:"+t.point.x+"
y:"+t.point.y+"
z:"+t.point.z+"
",e.style.left="0",e.style.top="0",this.frame.appendChild(e),this.frame.appendChild(i),this.frame.appendChild(s);var o=e.offsetWidth,n=e.offsetHeight,r=i.offsetHeight,a=s.offsetWidth,h=s.offsetHeight,d=t.screen.x-o/2;d=Math.min(Math.max(d,10),this.frame.clientWidth-10-o),i.style.left=t.screen.x+"px",i.style.top=t.screen.y-r+"px",e.style.left=d+"px",e.style.top=t.screen.y-r-n+"px",s.style.left=t.screen.x-a/2+"px",s.style.top=t.screen.y-h/2+"px"},s.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var t in this.tooltip.dom)if(this.tooltip.dom.hasOwnProperty(t)){var e=this.tooltip.dom[t];e&&e.parentNode&&e.parentNode.removeChild(e)}}},t.exports=s},function(t,e,i){function s(){this.armLocation=new o,this.armRotation={},this.armRotation.horizontal=0,this.armRotation.vertical=0,this.armLength=1.7,this.cameraLocation=new o,this.cameraRotation=new o(.5*Math.PI,0,0),this.calculateCameraOrientation()}var o=i(10);s.prototype.setArmLocation=function(t,e,i){this.armLocation.x=t,this.armLocation.y=e,this.armLocation.z=i,this.calculateCameraOrientation()},s.prototype.setArmRotation=function(t,e){void 0!==t&&(this.armRotation.horizontal=t),void 0!==e&&(this.armRotation.vertical=e,this.armRotation.vertical<0&&(this.armRotation.vertical=0),this.armRotation.vertical>.5*Math.PI&&(this.armRotation.vertical=.5*Math.PI)),(void 0!==t||void 0!==e)&&this.calculateCameraOrientation()},s.prototype.getArmRotation=function(){var t={};return t.horizontal=this.armRotation.horizontal,t.vertical=this.armRotation.vertical,t},s.prototype.setArmLength=function(t){void 0!==t&&(this.armLength=t,this.armLength<.71&&(this.armLength=.71),this.armLength>5&&(this.armLength=5),this.calculateCameraOrientation())},s.prototype.getArmLength=function(){return this.armLength},s.prototype.getCameraLocation=function(){return this.cameraLocation},s.prototype.getCameraRotation=function(){return this.cameraRotation},s.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical),this.cameraRotation.x=Math.PI/2-this.armRotation.vertical,this.cameraRotation.y=0,this.cameraRotation.z=-this.armRotation.horizontal},t.exports=s},function(t,e,i){function s(t,e,i){this.data=t,this.column=e,this.graph=i,this.index=void 0,this.value=void 0,this.values=i.getDistinctValues(t.get(),this.column),this.values.sort(function(t,e){return t>e?1:e>t?-1:0}),this.values.length>0&&this.selectValue(0),this.dataPoints=[],this.loaded=!1,this.onLoadCallback=void 0,i.animationPreload?(this.loaded=!1,this.loadInBackground()):this.loaded=!0}var o=i(4);s.prototype.isLoaded=function(){return this.loaded},s.prototype.getLoadedProgress=function(){for(var t=this.values.length,e=0;this.dataPoints[e];)e++;return Math.round(e/t*100)},s.prototype.getLabel=function(){return this.graph.filterLabel},s.prototype.getColumn=function(){return this.column},s.prototype.getSelectedValue=function(){return void 0===this.index?void 0:this.values[this.index]},s.prototype.getValues=function(){return this.values},s.prototype.getValue=function(t){if(t>=this.values.length)throw"Error: index out of range";return this.values[t]},s.prototype._getDataPoints=function(t){if(void 0===t&&(t=this.index),void 0===t)return[]; +var e;if(this.dataPoints[t])e=this.dataPoints[t];else{var i={};i.column=this.column,i.value=this.values[t];var s=new o(this.data,{filter:function(t){return t[i.column]==i.value}}).get();e=this.graph._getDataPoints(s),this.dataPoints[t]=e}return e},s.prototype.setOnLoadCallback=function(t){this.onLoadCallback=t},s.prototype.selectValue=function(t){if(t>=this.values.length)throw"Error: index out of range";this.index=t,this.value=this.values[t]},s.prototype.loadInBackground=function(t){void 0===t&&(t=0);var e=this.graph.frame;if(t0&&(t--,this.setIndex(t))},s.prototype.next=function(){var t=this.getIndex();t0?this.setIndex(0):this.index=void 0},s.prototype.setIndex=function(t){if(!(ts&&(s=0),s>this.values.length-1&&(s=this.values.length-1),s},s.prototype.indexToLeft=function(t){var e=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10,i=t/(this.values.length-1)*e,s=i+3;return s},s.prototype._onMouseMove=function(t){var e=t.clientX-this.startClientX,i=this.startSlideX+e,s=this.leftToIndex(i);this.setIndex(s),o.preventDefault()},s.prototype._onMouseUp=function(){this.frame.style.cursor="auto",o.removeEventListener(document,"mousemove",this.onmousemove),o.removeEventListener(document,"mouseup",this.onmouseup),o.preventDefault()},t.exports=s},function(t){function e(t,e,i,s){this._start=0,this._end=0,this._step=1,this.prettyStep=!0,this.precision=5,this._current=0,this.setRange(t,e,i,s)}e.prototype.setRange=function(t,e,i,s){this._start=t?t:0,this._end=e?e:0,this.setStep(i,s)},e.prototype.setStep=function(t,i){void 0===t||0>=t||(void 0!==i&&(this.prettyStep=i),this._step=this.prettyStep===!0?e.calculatePrettyStep(t):t)},e.calculatePrettyStep=function(t){var e=function(t){return Math.log(t)/Math.LN10},i=Math.pow(10,Math.round(e(t))),s=2*Math.pow(10,Math.round(e(t/2))),o=5*Math.pow(10,Math.round(e(t/5))),n=i;return Math.abs(s-t)<=Math.abs(n-t)&&(n=s),Math.abs(o-t)<=Math.abs(n-t)&&(n=o),0>=n&&(n=1),n},e.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},e.prototype.getStep=function(){return this._step},e.prototype.start=function(){this._current=this._start-this._start%this._step},e.prototype.next=function(){this._current+=this._step},e.prototype.end=function(){return this._current>this._end},t.exports=e},function(t,e,i){function s(t,e,i,r){if(!(this instanceof s))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof n)&&i instanceof Object){var h=r;r=i,i=h}var u=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:"bottom",width:null,height:null,maxHeight:null,minHeight:null},this.options=o.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{snap:null,toScreen:u._toScreen.bind(u),toGlobalScreen:u._toGlobalScreen.bind(u),toTime:u._toTime.bind(u),toGlobalTime:u._toGlobalTime.bind(u)}},this.range=new a(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new d(this.body),this.components.push(this.timeAxis),this.body.util.snap=this.timeAxis.snap.bind(this.timeAxis),this.currentTime=new l(this.body),this.components.push(this.currentTime),this.customTime=new c(this.body),this.components.push(this.customTime),this.itemSet=new p(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,r&&this.setOptions(r),i&&this.setGroups(i),e?this.setItems(e):this.redraw()}var o=(i(56),i(45),i(1)),n=i(3),r=i(4),a=i(17),h=i(46),d=i(30),l=i(21),c=i(22),p=i(27);s.prototype=new h,s.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof n||t instanceof r?t:new n(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){if(void 0==this.options.start||void 0==this.options.end)var s=this._getDataRange();var o=void 0!=this.options.start?this.options.start:s.start,a=void 0!=this.options.end?this.options.end:s.end;this.setWindow(o,a,{animate:!1})}else this.fit({animate:!1})},s.prototype.setGroups=function(t){var e;e=t?t instanceof n||t instanceof r?t:new n(t):null,this.groupsData=e,this.itemSet.setGroups(e)},s.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},s.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},s.prototype.focus=function(t,e){if(this.itemsData&&void 0!=t){var i=Array.isArray(t)?t:[t],s=this.itemsData.getDataSet().get(i,{type:{start:"Date",end:"Date"}}),o=null,n=null;if(s.forEach(function(t){var e=t.start.valueOf(),i="end"in t?t.end.valueOf():t.start.valueOf();(null===o||o>e)&&(o=e),(null===n||i>n)&&(n=i)}),null!==o&&null!==n){var r=(o+n)/2,a=Math.max(this.range.end-this.range.start,1.1*(n-o)),h=e&&void 0!==e.animate?e.animate:!0;this.range.setRange(r-a/2,r+a/2,h)}}},s.prototype.getItemRange=function(){var t=this.itemsData.getDataSet(),e=null,i=null;if(t){var s=t.min("start");e=s?o.convert(s.start,"Date").valueOf():null;var n=t.max("start");n&&(i=o.convert(n.start,"Date").valueOf());var r=t.max("end");r&&(i=null==i?o.convert(r.end,"Date").valueOf():Math.max(i,o.convert(r.end,"Date").valueOf()))}return{min:null!=e?new Date(e):null,max:null!=i?new Date(i):null}},t.exports=s},function(t,e,i){function s(t,e,i,s){if(!(Array.isArray(i)||i instanceof n)&&i instanceof Object){var r=s;s=i,i=r}var h=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:"bottom",width:null,height:null,maxHeight:null,minHeight:null},this.options=o.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{snap:null,toScreen:h._toScreen.bind(h),toGlobalScreen:h._toGlobalScreen.bind(h),toTime:h._toTime.bind(h),toGlobalTime:h._toGlobalTime.bind(h)}},this.range=new a(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new d(this.body),this.components.push(this.timeAxis),this.body.util.snap=this.timeAxis.snap.bind(this.timeAxis),this.currentTime=new l(this.body),this.components.push(this.currentTime),this.customTime=new c(this.body),this.components.push(this.customTime),this.linegraph=new p(this.body),this.components.push(this.linegraph),this.itemsData=null,this.groupsData=null,s&&this.setOptions(s),i&&this.setGroups(i),e?this.setItems(e):this.redraw()}var o=(i(56),i(45),i(1)),n=i(3),r=i(4),a=i(17),h=i(46),d=i(30),l=i(21),c=i(22),p=i(29);s.prototype=new h,s.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof n||t instanceof r?t:new n(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.linegraph&&this.linegraph.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){var s=void 0!=this.options.start?this.options.start:null,o=void 0!=this.options.end?this.options.end:null;this.setWindow(s,o,{animate:!1})}else this.fit({animate:!1})},s.prototype.setGroups=function(t){var e;e=t?t instanceof n||t instanceof r?t:new n(t):null,this.groupsData=e,this.linegraph.setGroups(e)},s.prototype.getLegend=function(t,e,i){return void 0===e&&(e=15),void 0===i&&(i=15),void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].getLegend(e,i):"cannot find group:"+t},s.prototype.isGroupVisible=function(t){return void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].visible&&(void 0===this.linegraph.options.groups.visibility[t]||1==this.linegraph.options.groups.visibility[t]):!1},s.prototype.getItemRange=function(){var t=null,e=null;for(var i in this.linegraph.groups)if(this.linegraph.groups.hasOwnProperty(i)&&1==this.linegraph.groups[i].visible)for(var s=0;sr?r:t,e=null==e?r:r>e?r:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},t.exports=s},function(t,e,i){var s=i(44);e.convertHiddenOptions=function(t,e){if(t.hiddenDates=[],e&&1==Array.isArray(e)){for(var i=0;i=4*a){var p=0,u=n.clone();switch(i[h].repeat){case"daily":d.day()!=l.day()&&(p=1),d.dayOfYear(o.dayOfYear()),d.year(o.year()),d.subtract(7,"days"),l.dayOfYear(o.dayOfYear()),l.year(o.year()),l.subtract(7-p,"days"),u.add(1,"weeks");break;case"weekly":var m=l.diff(d,"days"),f=d.day();d.date(o.date()),d.month(o.month()),d.year(o.year()),l=d.clone(),d.day(f),l.day(f),l.add(m,"days"),d.subtract(1,"weeks"),l.subtract(1,"weeks"),u.add(1,"weeks");break;case"monthly":d.month()!=l.month()&&(p=1),d.month(o.month()),d.year(o.year()),d.subtract(1,"months"),l.month(o.month()),l.year(o.year()),l.subtract(1,"months"),l.add(p,"months"),u.add(1,"months");break;case"yearly":d.year()!=l.year()&&(p=1),d.year(o.year()),d.subtract(1,"years"),l.year(o.year()),l.subtract(1,"years"),l.add(p,"years"),u.add(1,"years");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",i[h].repeat)}for(;u>d;)switch(t.hiddenDates.push({start:d.valueOf(),end:l.valueOf()}),i[h].repeat){case"daily":d.add(1,"days"),l.add(1,"days");break;case"weekly":d.add(1,"weeks"),l.add(1,"weeks");break;case"monthly":d.add(1,"months"),l.add(1,"months");break;case"yearly":d.add(1,"y"),l.add(1,"y");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",i[h].repeat)}t.hiddenDates.push({start:d.valueOf(),end:l.valueOf()})}}e.removeDuplicates(t);var g=e.isHidden(t.range.start,t.hiddenDates),v=e.isHidden(t.range.end,t.hiddenDates),y=t.range.start,b=t.range.end;1==g.hidden&&(y=1==t.range.startToFront?g.startDate-1:g.endDate+1),1==v.hidden&&(b=1==t.range.endToFront?v.startDate-1:v.endDate+1),(1==g.hidden||1==v.hidden)&&t.range._applyRange(y,b)}},e.removeDuplicates=function(t){for(var e=t.hiddenDates,i=[],s=0;s=e[s].start&&e[o].end<=e[s].end?e[o].remove=!0:e[o].start>=e[s].start&&e[o].start<=e[s].end?(e[s].end=e[o].end,e[o].remove=!0):e[o].end>=e[s].start&&e[o].end<=e[s].end&&(e[s].start=e[o].start,e[o].remove=!0));for(var s=0;s=r&&a>o){i=!0;break}}if(1==i&&o=e&&i>r&&(s+=r-n)}return s},e.correctTimeForHidden=function(t,i,o){return o=s(o).toDate().valueOf(),o-=e.getHiddenDurationBefore(t,i,o)},e.getHiddenDurationBefore=function(t,e,i){var o=0;i=s(i).toDate().valueOf();for(var n=0;n=e.start&&a=a&&(o+=a-r)}return o},e.getAccumulatedHiddenDuration=function(t,e,i){for(var s=0,o=0,n=e.start,r=0;r=e.start&&h=i)break;s+=h-a}}return s},e.snapAwayFromHidden=function(t,i,s,o){var n=e.isHidden(i,t);return 1==n.hidden?0>s?1==o?n.startDate-(n.endDate-i)-1:n.startDate-1:1==o?n.endDate+(i-n.startDate)+1:n.endDate+1:i},e.isHidden=function(t,e){for(var i=0;i=s&&o>t)return{hidden:!0,startDate:s,endDate:o}}return{hidden:!1,startDate:s,endDate:o}}},function(t){function e(t,e,i,s,o,n){this.current=0,this.autoScale=!0,this.stepIndex=0,this.step=1,this.scale=1,this.marginStart,this.marginEnd,this.deadSpace=0,this.majorSteps=[1,2,5,10],this.minorSteps=[.25,.5,1,2],this.alignZeros=n,this.setRange(t,e,i,s,o)}e.prototype.setRange=function(t,e,i,s,o){this._start=void 0===o.min?t:o.min,this._end=void 0===o.max?e:o.max,this._start==this._end&&(this._start-=.75,this._end+=1),1==this.autoScale&&this.setMinimumStep(i,s),this.setFirst(o)},e.prototype.setMinimumStep=function(t,e){var i=this._end-this._start,s=1.2*i,o=t*(s/e),n=Math.round(Math.log(s)/Math.LN10),r=-1,a=Math.pow(10,n),h=0;0>n&&(h=n);for(var d=!1,l=h;Math.abs(l)<=Math.abs(n);l++){a=Math.pow(10,l);for(var c=0;c=o){d=!0,r=c;break}}if(1==d)break}this.stepIndex=r,this.scale=a,this.step=a*this.minorSteps[r]},e.prototype.setFirst=function(t){void 0===t&&(t={});var e=void 0===t.min?this._start-2*this.scale*this.minorSteps[this.stepIndex]:t.min,i=void 0===t.max?this._end+this.scale*this.minorSteps[this.stepIndex]:t.max;this.marginEnd=void 0===t.max?this.roundToMinor(i):t.max,this.marginStart=void 0===t.min?this.roundToMinor(e):t.min,1==this.alignZeros&&(this.marginEnd-this.marginStart)%this.step!=0&&(this.marginEnd+=this.marginEnd%this.step),this.deadSpace=this.roundToMinor(i)-i+this.roundToMinor(e)-e,this.marginRange=this.marginEnd-this.marginStart,this.current=this.marginEnd},e.prototype.roundToMinor=function(t){var e=t-t%(this.scale*this.minorSteps[this.stepIndex]);return t%(this.scale*this.minorSteps[this.stepIndex])>.5*this.scale*this.minorSteps[this.stepIndex]?e+this.scale*this.minorSteps[this.stepIndex]:e},e.prototype.hasNext=function(){return this.current>=this.marginStart},e.prototype.next=function(){var t=this.current;this.current-=this.step,this.current==t&&(this.current=this._end)},e.prototype.previous=function(){this.current+=this.step,this.marginEnd+=this.step,this.marginRange=this.marginEnd-this.marginStart},e.prototype.getCurrent=function(t){var e=Math.abs(this.current)0;s--){if("0"!=i[s]){if("."==i[s]||","==i[s]){i=i.slice(0,s);break}break}i=i.slice(0,s)}}else{var o="",n=i.indexOf("e");if(-1!=n&&(o=i.slice(n),i=i.slice(0,n)),n=Math.max(i.indexOf(","),i.indexOf(".")),-1===n?(0!==t&&(i+="."),n=i.length+t):0!==t&&(n+=t+1),n>i.length)for(var r=n-i.length;r>0;r--)i+="0";else i=i.slice(0,n);i+=o}return i},e.prototype.snap=function(){},e.prototype.isMajor=function(){return this.current%(this.scale*this.majorSteps[this.stepIndex])==0},t.exports=e},function(t,e,i){function s(t,e){var i=h().hours(0).minutes(0).seconds(0).milliseconds(0);this.start=i.clone().add(-3,"days").valueOf(),this.end=i.clone().add(4,"days").valueOf(),this.body=t,this.deltaDifference=0,this.scaleOffset=0,this.startToFront=!1,this.endToFront=!0,this.defaultOptions={start:null,end:null,direction:"horizontal",moveable:!0,zoomable:!0,min:null,max:null,zoomMin:10,zoomMax:31536e10},this.options=r.extend({},this.defaultOptions),this.props={touch:{}},this.animateTimer=null,this.body.emitter.on("dragstart",this._onDragStart.bind(this)),this.body.emitter.on("drag",this._onDrag.bind(this)),this.body.emitter.on("dragend",this._onDragEnd.bind(this)),this.body.emitter.on("hold",this._onHold.bind(this)),this.body.emitter.on("mousewheel",this._onMouseWheel.bind(this)),this.body.emitter.on("DOMMouseScroll",this._onMouseWheel.bind(this)),this.body.emitter.on("touch",this._onTouch.bind(this)),this.body.emitter.on("pinch",this._onPinch.bind(this)),this.setOptions(e)}function o(t){if("horizontal"!=t&&"vertical"!=t)throw new TypeError('Unknown direction "'+t+'". Choose "horizontal" or "vertical".')}function n(t,e){return{x:t.pageX-r.getAbsoluteLeft(e),y:t.pageY-r.getAbsoluteTop(e)}}var r=i(1),a=i(47),h=i(44),d=i(20),l=i(15);s.prototype=new d,s.prototype.setOptions=function(t){if(t){var e=["direction","min","max","zoomMin","zoomMax","moveable","zoomable","activate","hiddenDates"];r.selectiveExtend(e,this.options,t),("start"in t||"end"in t)&&this.setRange(t.start,t.end)}},s.prototype.setRange=function(t,e,i){var s=void 0!=t?r.convert(t,"Date").valueOf():null,o=void 0!=e?r.convert(e,"Date").valueOf():null;if(this._cancelAnimation(),i){var n=this,a=this.start,h=this.end,d="number"==typeof i?i:500,c=(new Date).valueOf(),p=!1,u=function(){if(!n.props.touch.dragging){var t=(new Date).valueOf(),e=t-c,i=e>d,f=i||null===s?s:r.easeInOutQuad(e,a,s,d),g=i||null===o?o:r.easeInOutQuad(e,h,o,d);m=n._applyRange(f,g),l.updateHiddenDates(n.body,n.options.hiddenDates),p=p||m,m&&n.body.emitter.emit("rangechange",{start:new Date(n.start),end:new Date(n.end)}),i?p&&n.body.emitter.emit("rangechanged",{start:new Date(n.start),end:new Date(n.end)}):n.animateTimer=setTimeout(u,20)}};return u()}var m=this._applyRange(s,o);if(l.updateHiddenDates(this.body,this.options.hiddenDates),m){var f={start:new Date(this.start),end:new Date(this.end)};this.body.emitter.emit("rangechange",f),this.body.emitter.emit("rangechanged",f)}},s.prototype._cancelAnimation=function(){this.animateTimer&&(clearTimeout(this.animateTimer),this.animateTimer=null)},s.prototype._applyRange=function(t,e){var i,s=null!=t?r.convert(t,"Date").valueOf():this.start,o=null!=e?r.convert(e,"Date").valueOf():this.end,n=null!=this.options.max?r.convert(this.options.max,"Date").valueOf():null,a=null!=this.options.min?r.convert(this.options.min,"Date").valueOf():null;if(isNaN(s)||null===s)throw new Error('Invalid start "'+t+'"');if(isNaN(o)||null===o)throw new Error('Invalid end "'+e+'"');if(s>o&&(o=s),null!==a&&a>s&&(i=a-s,s+=i,o+=i,null!=n&&o>n&&(o=n)),null!==n&&o>n&&(i=o-n,s-=i,o-=i,null!=a&&a>s&&(s=a)),null!==this.options.zoomMin){var h=parseFloat(this.options.zoomMin);0>h&&(h=0),h>o-s&&(this.end-this.start===h?(s=this.start,o=this.end):(i=h-(o-s),s-=i/2,o+=i/2))}if(null!==this.options.zoomMax){var d=parseFloat(this.options.zoomMax);0>d&&(d=0),o-s>d&&(this.end-this.start===d?(s=this.start,o=this.end):(i=o-s-d,s+=i/2,o-=i/2))}var l=this.start!=s||this.end!=o;return s>=this.start&&s<=this.end||o>=this.start&&o<=this.end||this.start>=s&&this.start<=o||this.end>=s&&this.end<=o||this.body.emitter.emit("checkRangedItems"),this.start=s,this.end=o,l},s.prototype.getRange=function(){return{start:this.start,end:this.end}},s.prototype.conversion=function(t,e){return s.conversion(this.start,this.end,t,e)},s.conversion=function(t,e,i,s){return void 0===s&&(s=0),0!=i&&e-t!=0?{offset:t,scale:i/(e-t-s)}:{offset:0,scale:1}},s.prototype._onDragStart=function(){this.deltaDifference=0,this.previousDelta=0,this.options.moveable&&this.props.touch.allowDragging&&(this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.dragging=!0,this.body.dom.root&&(this.body.dom.root.style.cursor="move"))},s.prototype._onDrag=function(t){if(this.options.moveable&&this.props.touch.allowDragging){var e=this.options.direction;o(e);var i="horizontal"==e?t.gesture.deltaX:t.gesture.deltaY;i-=this.deltaDifference;var s=this.props.touch.end-this.props.touch.start,n=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);s-=n;var r="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,a=-i/r*s,h=this.props.touch.start+a,d=this.props.touch.end+a,c=l.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),p=l.snapAwayFromHidden(this.body.hiddenDates,d,this.previousDelta-i,!0);if(c!=h||p!=d)return this.deltaDifference+=i,this.props.touch.start=c,this.props.touch.end=p,void this._onDrag(t);this.previousDelta=i,this._applyRange(h,d),this.body.emitter.emit("rangechange",{start:new Date(this.start),end:new Date(this.end)})}},s.prototype._onDragEnd=function(){this.options.moveable&&this.props.touch.allowDragging&&(this.props.touch.dragging=!1,this.body.dom.root&&(this.body.dom.root.style.cursor="auto"),this.body.emitter.emit("rangechanged",{start:new Date(this.start),end:new Date(this.end)}))},s.prototype._onMouseWheel=function(t){if(this.options.zoomable&&this.options.moveable){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i;i=0>e?1-e/5:1/(1+e/5);var s=a.fakeGesture(this,t),o=n(s.center,this.body.dom.center),r=this._pointerToDate(o);this.zoom(i,r,e)}t.preventDefault()}},s.prototype._onTouch=function(){this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.allowDragging=!0,this.props.touch.center=null,this.scaleOffset=0,this.deltaDifference=0},s.prototype._onHold=function(){this.props.touch.allowDragging=!1},s.prototype._onPinch=function(t){if(this.options.zoomable&&this.options.moveable&&(this.props.touch.allowDragging=!1,t.gesture.touches.length>1)){this.props.touch.center||(this.props.touch.center=n(t.gesture.center,this.body.dom.center));var e=1/(t.gesture.scale+this.scaleOffset),i=this._pointerToDate(this.props.touch.center),s=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),o=l.getHiddenDurationBefore(this.body.hiddenDates,this,i),r=s-o,a=i-o+(this.props.touch.start-(i-o))*e,h=i+r+(this.props.touch.end-(i+r))*e;this.startToFront=1-e>0?!1:!0,this.endToFront=e-1>0?!1:!0;var d=l.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),c=l.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);(d!=a||c!=h)&&(this.props.touch.start=d,this.props.touch.end=c,this.scaleOffset=1-t.gesture.scale,a=d,h=c),this.setRange(a,h),this.startToFront=!1,this.endToFront=!0}},s.prototype._pointerToDate=function(t){var e,i=this.options.direction;if(o(i),"horizontal"==i)return this.body.util.toTime(t.x).valueOf();var s=this.body.domProps.center.height;return e=this.conversion(s),t.y/e.scale+e.offset},s.prototype.zoom=function(t,e,i){null==e&&(e=(this.start+this.end)/2);var s=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),o=l.getHiddenDurationBefore(this.body.hiddenDates,this,e),n=s-o,r=e-o+(this.start-(e-o))*t,a=e+n+(this.end-(e+n))*t;this.startToFront=i>0?!1:!0,this.endToFront=-i>0?!1:!0;var h=l.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),d=l.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);(h!=r||d!=a)&&(r=h,a=d),this.setRange(r,a),this.startToFront=!1,this.endToFront=!0},s.prototype.move=function(t){var e=this.end-this.start,i=this.start+e*t,s=this.end+e*t;this.start=i,this.end=s},s.prototype.moveTo=function(t){var e=(this.start+this.end)/2,i=e-t,s=this.start-i,o=this.end-i;this.setRange(s,o)},t.exports=s},function(t,e){var i=.001;e.orderByStart=function(t){t.sort(function(t,e){return t.data.start-e.data.start})},e.orderByEnd=function(t){t.sort(function(t,e){var i="end"in t.data?t.data.end:t.data.start,s="end"in e.data?e.data.end:e.data.start;return i-s})},e.stack=function(t,i,s){var o,n;if(s)for(o=0,n=t.length;n>o;o++)t[o].top=null;for(o=0,n=t.length;n>o;o++){var r=t[o];if(r.stack&&null===r.top){r.top=i.axis;do{for(var a=null,h=0,d=t.length;d>h;h++){var l=t[h];if(null!==l.top&&l!==r&&l.stack&&e.collision(r,l,i.item)){a=l;break}}null!=a&&(r.top=a.top+a.height+i.item.vertical)}while(a)}}},e.nostack=function(t,e,i){var s,o,n;for(s=0,o=t.length;o>s;s++)if(void 0!==t[s].data.subgroup){n=e.axis;for(var r in i)i.hasOwnProperty(r)&&1==i[r].visible&&i[r].indexe.left&&t.top-s.vertical+ie.top}},function(t,e,i){function s(t,e,i,o){this.current=new Date,this._start=new Date,this._end=new Date,this.autoScale=!0,this.scale="day",this.step=1,this.setRange(t,e,i),this.switchedDay=!1,this.switchedMonth=!1,this.switchedYear=!1,this.hiddenDates=o,void 0===o&&(this.hiddenDates=[]),this.format=s.FORMAT}var o=i(44),n=i(15),r=i(1);s.FORMAT={minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},s.prototype.setFormat=function(t){var e=r.deepExtend({},s.FORMAT);this.format=r.deepExtend(e,t)},s.prototype.setRange=function(t,e,i){if(!(t instanceof Date&&e instanceof Date))throw"No legal start or end date in method setRange";this._start=void 0!=t?new Date(t.valueOf()):new Date,this._end=void 0!=e?new Date(e.valueOf()):new Date,this.autoScale&&this.setMinimumStep(i)},s.prototype.first=function(){this.current=new Date(this._start.valueOf()),this.roundToMinor()},s.prototype.roundToMinor=function(){switch(this.scale){case"year":this.current.setFullYear(this.step*Math.floor(this.current.getFullYear()/this.step)),this.current.setMonth(0);case"month":this.current.setDate(1);case"day":case"weekday":this.current.setHours(0);case"hour":this.current.setMinutes(0);case"minute":this.current.setSeconds(0);case"second":this.current.setMilliseconds(0)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.setMilliseconds(this.current.getMilliseconds()-this.current.getMilliseconds()%this.step);break;case"second":this.current.setSeconds(this.current.getSeconds()-this.current.getSeconds()%this.step);break;case"minute":this.current.setMinutes(this.current.getMinutes()-this.current.getMinutes()%this.step); +break;case"hour":this.current.setHours(this.current.getHours()-this.current.getHours()%this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()-1-(this.current.getDate()-1)%this.step+1);break;case"month":this.current.setMonth(this.current.getMonth()-this.current.getMonth()%this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()-this.current.getFullYear()%this.step)}},s.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()},s.prototype.next=function(){var t=this.current.valueOf();if(this.current.getMonth()<6)switch(this.scale){case"millisecond":this.current=new Date(this.current.valueOf()+this.step);break;case"second":this.current=new Date(this.current.valueOf()+1e3*this.step);break;case"minute":this.current=new Date(this.current.valueOf()+1e3*this.step*60);break;case"hour":this.current=new Date(this.current.valueOf()+1e3*this.step*60*60);var e=this.current.getHours();this.current.setHours(e-e%this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()+this.step);break;case"month":this.current.setMonth(this.current.getMonth()+this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()+this.step)}else switch(this.scale){case"millisecond":this.current=new Date(this.current.valueOf()+this.step);break;case"second":this.current.setSeconds(this.current.getSeconds()+this.step);break;case"minute":this.current.setMinutes(this.current.getMinutes()+this.step);break;case"hour":this.current.setHours(this.current.getHours()+this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()+this.step);break;case"month":this.current.setMonth(this.current.getMonth()+this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()+this.step)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.getMilliseconds()0&&(this.step=e),this.autoScale=!1},s.prototype.setAutoScale=function(t){this.autoScale=t},s.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,s=864e5,o=36e5,n=6e4,r=1e3,a=1;1e3*e>t&&(this.scale="year",this.step=1e3),500*e>t&&(this.scale="year",this.step=500),100*e>t&&(this.scale="year",this.step=100),50*e>t&&(this.scale="year",this.step=50),10*e>t&&(this.scale="year",this.step=10),5*e>t&&(this.scale="year",this.step=5),e>t&&(this.scale="year",this.step=1),3*i>t&&(this.scale="month",this.step=3),i>t&&(this.scale="month",this.step=1),5*s>t&&(this.scale="day",this.step=5),2*s>t&&(this.scale="day",this.step=2),s>t&&(this.scale="day",this.step=1),s/2>t&&(this.scale="weekday",this.step=1),4*o>t&&(this.scale="hour",this.step=4),o>t&&(this.scale="hour",this.step=1),15*n>t&&(this.scale="minute",this.step=15),10*n>t&&(this.scale="minute",this.step=10),5*n>t&&(this.scale="minute",this.step=5),n>t&&(this.scale="minute",this.step=1),15*r>t&&(this.scale="second",this.step=15),10*r>t&&(this.scale="second",this.step=10),5*r>t&&(this.scale="second",this.step=5),r>t&&(this.scale="second",this.step=1),200*a>t&&(this.scale="millisecond",this.step=200),100*a>t&&(this.scale="millisecond",this.step=100),50*a>t&&(this.scale="millisecond",this.step=50),10*a>t&&(this.scale="millisecond",this.step=10),5*a>t&&(this.scale="millisecond",this.step=5),a>t&&(this.scale="millisecond",this.step=1)}},s.prototype.snap=function(t){var e=new Date(t.valueOf());if("year"==this.scale){var i=e.getFullYear()+Math.round(e.getMonth()/12);e.setFullYear(Math.round(i/this.step)*this.step),e.setMonth(0),e.setDate(0),e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0)}else if("month"==this.scale)e.getDate()>15?(e.setDate(1),e.setMonth(e.getMonth()+1)):e.setDate(1),e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0);else if("day"==this.scale){switch(this.step){case 5:case 2:e.setHours(24*Math.round(e.getHours()/24));break;default:e.setHours(12*Math.round(e.getHours()/12))}e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0)}else if("weekday"==this.scale){switch(this.step){case 5:case 2:e.setHours(12*Math.round(e.getHours()/12));break;default:e.setHours(6*Math.round(e.getHours()/6))}e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0)}else if("hour"==this.scale){switch(this.step){case 4:e.setMinutes(60*Math.round(e.getMinutes()/60));break;default:e.setMinutes(30*Math.round(e.getMinutes()/30))}e.setSeconds(0),e.setMilliseconds(0)}else if("minute"==this.scale){switch(this.step){case 15:case 10:e.setMinutes(5*Math.round(e.getMinutes()/5)),e.setSeconds(0);break;case 5:e.setSeconds(60*Math.round(e.getSeconds()/60));break;default:e.setSeconds(30*Math.round(e.getSeconds()/30))}e.setMilliseconds(0)}else if("second"==this.scale)switch(this.step){case 15:case 10:e.setSeconds(5*Math.round(e.getSeconds()/5)),e.setMilliseconds(0);break;case 5:e.setMilliseconds(1e3*Math.round(e.getMilliseconds()/1e3));break;default:e.setMilliseconds(500*Math.round(e.getMilliseconds()/500))}else if("millisecond"==this.scale){var s=this.step>5?this.step/2:1;e.setMilliseconds(Math.round(e.getMilliseconds()/s)*s)}return e},s.prototype.isMajor=function(){if(1==this.switchedYear)switch(this.switchedYear=!1,this.scale){case"year":case"month":case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedMonth)switch(this.switchedMonth=!1,this.scale){case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedDay)switch(this.switchedDay=!1,this.scale){case"millisecond":case"second":case"minute":case"hour":return!0;default:return!1}switch(this.scale){case"millisecond":return 0==this.current.getMilliseconds();case"second":return 0==this.current.getSeconds();case"minute":return 0==this.current.getHours()&&0==this.current.getMinutes();case"hour":return 0==this.current.getHours();case"weekday":case"day":return 1==this.current.getDate();case"month":return 0==this.current.getMonth();case"year":return!1;default:return!1}},s.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?o(t).format(e):""},s.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?o(t).format(e):""},t.exports=s},function(t){function e(){this.options=null,this.props=null}e.prototype.setOptions=function(t){t&&util.extend(this.options,t)},e.prototype.redraw=function(){return!1},e.prototype.destroy=function(){},e.prototype._isResized=function(){var t=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;return this.props._previousWidth=this.props.width,this.props._previousHeight=this.props.height,t},t.exports=e},function(t,e,i){function s(t,e){this.body=t,this.defaultOptions={showCurrentTime:!0,locales:a,locale:"en"},this.options=o.extend({},this.defaultOptions),this.offset=0,this._create(),this.setOptions(e)}var o=i(1),n=i(20),r=i(44),a=i(48);s.prototype=new n,s.prototype._create=function(){var t=document.createElement("div");t.className="currenttime",t.style.position="absolute",t.style.top="0px",t.style.height="100%",this.bar=t},s.prototype.destroy=function(){this.options.showCurrentTime=!1,this.redraw(),this.body=null},s.prototype.setOptions=function(t){t&&o.selectiveExtend(["showCurrentTime","locale","locales"],this.options,t)},s.prototype.redraw=function(){if(this.options.showCurrentTime){var t=this.body.dom.backgroundVertical;this.bar.parentNode!=t&&(this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),t.appendChild(this.bar),this.start());var e=new Date((new Date).valueOf()+this.offset),i=this.body.util.toScreen(e),s=this.options.locales[this.options.locale],o=s.current+" "+s.time+": "+r(e).format("dddd, MMMM Do YYYY, H:mm:ss");o=o.charAt(0).toUpperCase()+o.substring(1),this.bar.style.left=i+"px",this.bar.title=o}else this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),this.stop();return!1},s.prototype.start=function(){function t(){e.stop();var i=e.body.range.conversion(e.body.domProps.center.width).scale,s=1/i/10;30>s&&(s=30),s>1e3&&(s=1e3),e.redraw(),e.currentTimeTimer=setTimeout(t,s)}var e=this;t()},s.prototype.stop=function(){void 0!==this.currentTimeTimer&&(clearTimeout(this.currentTimeTimer),delete this.currentTimeTimer)},s.prototype.setCurrentTime=function(t){var e=o.convert(t,"Date").valueOf(),i=(new Date).valueOf();this.offset=e-i,this.redraw()},s.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)},t.exports=s},function(t,e,i){function s(t,e){this.body=t,this.defaultOptions={showCustomTime:!1,locales:h,locale:"en"},this.options=n.extend({},this.defaultOptions),this.customTime=new Date,this.eventParams={},this._create(),this.setOptions(e)}var o=i(45),n=i(1),r=i(20),a=i(44),h=i(48);s.prototype=new r,s.prototype.setOptions=function(t){t&&n.selectiveExtend(["showCustomTime","locale","locales"],this.options,t)},s.prototype._create=function(){var t=document.createElement("div");t.className="customtime",t.style.position="absolute",t.style.top="0px",t.style.height="100%",this.bar=t;var e=document.createElement("div");e.style.position="relative",e.style.top="0px",e.style.left="-10px",e.style.height="100%",e.style.width="20px",t.appendChild(e),this.hammer=o(t,{prevent_default:!0}),this.hammer.on("dragstart",this._onDragStart.bind(this)),this.hammer.on("drag",this._onDrag.bind(this)),this.hammer.on("dragend",this._onDragEnd.bind(this))},s.prototype.destroy=function(){this.options.showCustomTime=!1,this.redraw(),this.hammer.enable(!1),this.hammer=null,this.body=null},s.prototype.redraw=function(){if(this.options.showCustomTime){var t=this.body.dom.backgroundVertical;this.bar.parentNode!=t&&(this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar),t.appendChild(this.bar));var e=this.body.util.toScreen(this.customTime),i=this.options.locales[this.options.locale],s=i.time+": "+a(this.customTime).format("dddd, MMMM Do YYYY, H:mm:ss");s=s.charAt(0).toUpperCase()+s.substring(1),this.bar.style.left=e+"px",this.bar.title=s}else this.bar.parentNode&&this.bar.parentNode.removeChild(this.bar);return!1},s.prototype.setCustomTime=function(t){this.customTime=n.convert(t,"Date"),this.redraw()},s.prototype.getCustomTime=function(){return new Date(this.customTime.valueOf())},s.prototype._onDragStart=function(t){this.eventParams.dragging=!0,this.eventParams.customTime=this.customTime,t.stopPropagation(),t.preventDefault()},s.prototype._onDrag=function(t){if(this.eventParams.dragging){var e=t.gesture.deltaX,i=this.body.util.toScreen(this.eventParams.customTime)+e,s=this.body.util.toTime(i);this.setCustomTime(s),this.body.emitter.emit("timechange",{time:new Date(this.customTime.valueOf())}),t.stopPropagation(),t.preventDefault()}},s.prototype._onDragEnd=function(t){this.eventParams.dragging&&(this.body.emitter.emit("timechanged",{time:new Date(this.customTime.valueOf())}),t.stopPropagation(),t.preventDefault())},t.exports=s},function(t,e,i){function s(t,e,i,s){this.id=o.randomUUID(),this.body=t,this.defaultOptions={orientation:"left",showMinorLabels:!0,showMajorLabels:!0,showMinorLines:!0,showMajorLines:!0,icons:!0,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:"40px",visible:!0,alignZeros:!0,customRange:{left:{min:void 0,max:void 0},right:{min:void 0,max:void 0}},title:{left:{text:void 0},right:{text:void 0}},format:{left:{decimals:void 0},right:{decimals:void 0}}},this.linegraphOptions=s,this.linegraphSVG=i,this.props={},this.DOMelements={lines:{},labels:{},title:{}},this.dom={},this.range={start:0,end:0},this.options=o.extend({},this.defaultOptions),this.conversionFactor=1,this.setOptions(e),this.width=Number((""+this.options.width).replace("px","")),this.minWidth=this.width,this.height=this.linegraphSVG.offsetHeight,this.hidden=!1,this.stepPixels=25,this.stepPixelsForced=25,this.zeroCrossing=-1,this.lineOffset=0,this.master=!0,this.svgElements={},this.iconsRemoved=!1,this.groups={},this.amountOfGroups=0,this._create();var n=this;this.body.emitter.on("verticalDrag",function(){n.dom.lineContainer.style.top=n.body.domProps.scrollTop+"px"})}var o=i(1),n=i(2),r=i(20),a=i(16);s.prototype=new r,s.prototype.addGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.groups[t]=e),this.amountOfGroups+=1},s.prototype.updateGroup=function(t,e){this.groups[t]=e},s.prototype.removeGroup=function(t){this.groups.hasOwnProperty(t)&&(delete this.groups[t],this.amountOfGroups-=1)},s.prototype.setOptions=function(t){if(t){var e=!1;this.options.orientation!=t.orientation&&void 0!==t.orientation&&(e=!0);var i=["orientation","showMinorLabels","showMajorLabels","showMajorLines","showMinorLines","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","width","visible","customRange","title","format","alignZeros"];o.selectiveExtend(i,this.options,t),this.minWidth=Number((""+this.options.width).replace("px","")),1==e&&this.dom.frame&&(this.hide(),this.show())}},s.prototype._create=function(){this.dom.frame=document.createElement("div"),this.dom.frame.style.width=this.options.width,this.dom.frame.style.height=this.height,this.dom.lineContainer=document.createElement("div"),this.dom.lineContainer.style.width="100%",this.dom.lineContainer.style.height=this.height,this.dom.lineContainer.style.position="relative",this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="absolute",this.svg.style.top="0px",this.svg.style.height="100%",this.svg.style.width="100%",this.svg.style.display="block",this.dom.frame.appendChild(this.svg)},s.prototype._redrawGroupIcons=function(){n.prepareElements(this.svgElements);var t,e=this.options.iconWidth,i=15,s=4,o=s+.5*i;t="left"==this.options.orientation?s:this.width-e-s;for(var r in this.groups)this.groups.hasOwnProperty(r)&&(1!=this.groups[r].visible||void 0!==this.linegraphOptions.visibility[r]&&1!=this.linegraphOptions.visibility[r]||(this.groups[r].drawIcon(t,o,this.svgElements,this.svg,e,i),o+=i+s));n.cleanupElements(this.svgElements),this.iconsRemoved=!1},s.prototype._cleanupIcons=function(){0==this.iconsRemoved&&(n.prepareElements(this.svgElements),n.cleanupElements(this.svgElements),this.iconsRemoved=!0)},s.prototype.show=function(){this.hidden=!1,this.dom.frame.parentNode||("left"==this.options.orientation?this.body.dom.left.appendChild(this.dom.frame):this.body.dom.right.appendChild(this.dom.frame)),this.dom.lineContainer.parentNode||this.body.dom.backgroundHorizontal.appendChild(this.dom.lineContainer)},s.prototype.hide=function(){this.hidden=!0,this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom.lineContainer.parentNode&&this.dom.lineContainer.parentNode.removeChild(this.dom.lineContainer)},s.prototype.setRange=function(t,e){0==this.master&&1==this.options.alignZeros&&-1!=this.zeroCrossing&&t>0&&(t=0),this.range.start=t,this.range.end=e},s.prototype.redraw=function(){var t=!1,e=0;this.dom.lineContainer.style.top=this.body.domProps.scrollTop+"px";for(var i in this.groups)this.groups.hasOwnProperty(i)&&(1!=this.groups[i].visible||void 0!==this.linegraphOptions.visibility[i]&&1!=this.linegraphOptions.visibility[i]||e++);if(0==this.amountOfGroups||0==e)this.hide();else{this.show(),this.height=Number(this.linegraphSVG.style.height.replace("px","")),this.dom.lineContainer.style.height=this.height+"px",this.width=1==this.options.visible?Number((""+this.options.width).replace("px","")):0;var s=this.props,o=this.dom.frame;o.className="dataaxis",this._calculateCharSize();var n=this.options.orientation,r=this.options.showMinorLabels,a=this.options.showMajorLabels;s.minorLabelHeight=r?s.minorCharHeight:0,s.majorLabelHeight=a?s.majorCharHeight:0,s.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset,s.minorLineHeight=1,s.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset,s.majorLineHeight=1,"left"==n?(o.style.top="0",o.style.left="0",o.style.bottom="",o.style.width=this.width+"px",o.style.height=this.height+"px"):(o.style.top="",o.style.bottom="0",o.style.left="0",o.style.width=this.width+"px",o.style.height=this.height+"px"),t=this._redrawLabels(),1==this.options.icons?this._redrawGroupIcons():this._cleanupIcons(),this._redrawTitle(n)}return t},s.prototype._redrawLabels=function(){n.prepareElements(this.DOMelements.lines),n.prepareElements(this.DOMelements.labels);var t=this.options.orientation,e=this.master?this.props.majorCharHeight||10:this.stepPixelsForced,i=new a(this.range.start,this.range.end,e,this.dom.frame.offsetHeight,this.options.customRange[this.options.orientation],0==this.master&&this.options.alignZeros);this.step=i;var s=(this.dom.frame.offsetHeight-i.deadSpace*(this.dom.frame.offsetHeight/i.marginRange))/((i.marginRange-i.deadSpace)/i.step);this.stepPixels=s;var o=this.height/s,r=0;if(0==this.master){s=this.stepPixelsForced,r=Math.round(this.dom.frame.offsetHeight/s-o);for(var h=0;.5*r>h;h++)i.previous();if(o=this.height/s,-1!=this.zeroCrossing&&1==this.options.alignZeros){var d=i.marginEnd/i.step-this.zeroCrossing;if(d>0)for(var h=0;d>h;h++)i.next();else if(0>d)for(var h=0;-d>h;h++)i.previous()}}else o+=.25;this.valueAtZero=i.marginEnd;var l,c=0,p=1;void 0!==this.options.format[t]&&(l=this.options.format[t].decimals),this.maxLabelSize=0;for(var u=0;p=0&&this._redrawLabel(u-2,i.getCurrent(l),t,"yAxis major",this.props.majorCharHeight),1==this.options.showMajorLines&&this._redrawLine(u,t,"grid horizontal major",this.options.majorLinesOffset,this.props.majorLineWidth)):1==this.options.showMinorLines&&this._redrawLine(u,t,"grid horizontal minor",this.options.minorLinesOffset,this.props.minorLineWidth),1==this.master&&0==i.current&&(this.zeroCrossing=p),p++}this.conversionFactor=0==this.master?u/(this.valueAtZero-i.current):this.dom.frame.offsetHeight/i.marginRange;var f=0;void 0!==this.options.title[t]&&void 0!==this.options.title[t].text&&(f=this.props.titleCharHeight);var g=1==this.options.icons?Math.max(this.options.iconWidth,f)+this.options.labelOffsetX+15:f+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-g&&1==this.options.visible?(this.width=this.maxLabelSize+g,this.options.width=this.width+"px",n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),this.redraw(),!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+g),this.options.width=this.width+"px",n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),this.redraw(),!0):(n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),!1)},s.prototype.convertValue=function(t){var e=this.valueAtZero-t,i=e*this.conversionFactor;return i},s.prototype._redrawLabel=function(t,e,i,s,o){var r=n.getDOMElement("div",this.DOMelements.labels,this.dom.frame);r.className=s,r.innerHTML=e,"left"==i?(r.style.left="-"+this.options.labelOffsetX+"px",r.style.textAlign="right"):(r.style.right="-"+this.options.labelOffsetX+"px",r.style.textAlign="left"),r.style.top=t-.5*o+this.options.labelOffsetY+"px",e+="";var a=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);this.maxLabelSized;d++){var c=this.visibleItems[d];c.repositionY(e)}return s},s.prototype._calculateHeight=function(t){var e,i=this.visibleItems;this.resetSubgroups();var s=this;if(i.length){var n=i[0].top,r=i[0].top+i[0].height;if(o.forEach(i,function(t){n=Math.min(n,t.top),r=Math.max(r,t.top+t.height),void 0!==t.data.subgroup&&(s.subgroups[t.data.subgroup].height=Math.max(s.subgroups[t.data.subgroup].height,t.height),s.subgroups[t.data.subgroup].visible=!0)}),n>t.axis){var a=n-t.axis;r-=a,o.forEach(i,function(t){t.top-=a})}e=r+t.item.vertical/2}else e=t.axis+t.item.vertical;return e=Math.max(e,this.props.label.height)},s.prototype.show=function(){this.dom.label.parentNode||this.itemSet.dom.labelSet.appendChild(this.dom.label),this.dom.foreground.parentNode||this.itemSet.dom.foreground.appendChild(this.dom.foreground),this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background),this.dom.axis.parentNode||this.itemSet.dom.axis.appendChild(this.dom.axis)},s.prototype.hide=function(){var t=this.dom.label;t.parentNode&&t.parentNode.removeChild(t);var e=this.dom.foreground;e.parentNode&&e.parentNode.removeChild(e);var i=this.dom.background;i.parentNode&&i.parentNode.removeChild(i);var s=this.dom.axis;s.parentNode&&s.parentNode.removeChild(s)},s.prototype.add=function(t){if(this.items[t.id]=t,t.setParent(this),void 0!==t.data.subgroup&&(void 0===this.subgroups[t.data.subgroup]&&(this.subgroups[t.data.subgroup]={height:0,visible:!1,index:this.subgroupIndex,items:[]},this.subgroupIndex++),this.subgroups[t.data.subgroup].items.push(t)),this.orderSubgroups(),-1==this.visibleItems.indexOf(t)){var e=this.itemSet.body.range;this._checkIfVisible(t,this.visibleItems,e)}},s.prototype.orderSubgroups=function(){if(void 0!==this.subgroupOrderer){var t=[];if("string"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push({subgroup:e,sortField:this.subgroups[e].items[0].data[this.subgroupOrderer]});t.sort(function(t,e){return t.sortField-e.sortField})}else if("function"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push(this.subgroups[e].items[0].data);t.sort(this.subgroupOrderer)}if(t.length>0)for(var i=0;it?-1:l>=t?0:1};if(e.length>0)for(n=0;nl}),1==this.checkRangedItems)for(this.checkRangedItems=!1,n=0;nl})}for(n=0;n=0&&(n=e[r],!o(n));r--)void 0===s[n.id]&&(s[n.id]=!0,i.push(n));for(r=t+1;rs;s++){var n=this.visibleItems[s];n.repositionY(e)}return i},s.prototype.show=function(){this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background)},t.exports=s},function(t,e,i){function s(t,e){this.body=t,this.defaultOptions={type:null,orientation:"bottom",align:"auto",stack:!0,groupOrder:null,selectable:!0,editable:{updateTime:!1,updateGroup:!1,add:!1,remove:!1},onAdd:function(t,e){e(t)},onUpdate:function(t,e){e(t)},onMove:function(t,e){e(t)},onRemove:function(t,e){e(t)},onMoving:function(t,e){e(t)},margin:{item:{horizontal:10,vertical:10},axis:20},padding:5},this.options=n.extend({},this.defaultOptions),this.itemOptions={type:{start:"Date",end:"Date"}},this.conversion={toScreen:t.util.toScreen,toTime:t.util.toTime},this.dom={},this.props={},this.hammer=null;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e){i._onAdd(e.items)},update:function(t,e){i._onUpdate(e.items)},remove:function(t,e){i._onRemove(e.items)}},this.groupListeners={add:function(t,e){i._onAddGroups(e.items)},update:function(t,e){i._onUpdateGroups(e.items)},remove:function(t,e){i._onRemoveGroups(e.items)}},this.items={},this.groups={},this.groupIds=[],this.selection=[],this.stackDirty=!0,this.touchParams={},this._create(),this.setOptions(e)}var o=i(45),n=i(1),r=i(3),a=i(4),h=i(20),d=i(25),l=i(26),c=i(33),p=i(34),u=i(35),m=i(32),f="__ungrouped__",g="__background__";s.prototype=new h,s.types={background:m,box:c,range:u,point:p},s.prototype._create=function(){var t=document.createElement("div");t.className="itemset",t["timeline-itemset"]=this,this.dom.frame=t;var e=document.createElement("div");e.className="background",t.appendChild(e),this.dom.background=e;var i=document.createElement("div");i.className="foreground",t.appendChild(i),this.dom.foreground=i;var s=document.createElement("div");s.className="axis",this.dom.axis=s;var n=document.createElement("div");n.className="labelset",this.dom.labelSet=n,this._updateUngrouped();var r=new l(g,null,this);r.show(),this.groups[g]=r,this.hammer=o(this.body.dom.centerContainer,{preventDefault:!0}),this.hammer.on("touch",this._onTouch.bind(this)),this.hammer.on("dragstart",this._onDragStart.bind(this)),this.hammer.on("drag",this._onDrag.bind(this)),this.hammer.on("dragend",this._onDragEnd.bind(this)),this.hammer.on("tap",this._onSelectItem.bind(this)),this.hammer.on("hold",this._onMultiSelectItem.bind(this)),this.hammer.on("doubletap",this._onAddItem.bind(this)),this.show()},s.prototype.setOptions=function(t){if(t){var e=["type","align","orientation","padding","stack","selectable","groupOrder","dataAttributes","template","hide"];n.selectiveExtend(e,this.options,t),"margin"in t&&("number"==typeof t.margin?(this.options.margin.axis=t.margin,this.options.margin.item.horizontal=t.margin,this.options.margin.item.vertical=t.margin):"object"==typeof t.margin&&(n.selectiveExtend(["axis"],this.options.margin,t.margin),"item"in t.margin&&("number"==typeof t.margin.item?(this.options.margin.item.horizontal=t.margin.item,this.options.margin.item.vertical=t.margin.item):"object"==typeof t.margin.item&&n.selectiveExtend(["horizontal","vertical"],this.options.margin.item,t.margin.item)))),"editable"in t&&("boolean"==typeof t.editable?(this.options.editable.updateTime=t.editable,this.options.editable.updateGroup=t.editable,this.options.editable.add=t.editable,this.options.editable.remove=t.editable):"object"==typeof t.editable&&n.selectiveExtend(["updateTime","updateGroup","add","remove"],this.options.editable,t.editable));var i=function(e){var i=t[e];if(i){if(!(i instanceof Function))throw new Error("option "+e+" must be a function "+e+"(item, callback)");this.options[e]=i}}.bind(this);["onAdd","onUpdate","onRemove","onMove","onMoving"].forEach(i),this.markDirty()}},s.prototype.markDirty=function(){this.groupIds=[],this.stackDirty=!0},s.prototype.destroy=function(){this.hide(),this.setItems(null),this.setGroups(null),this.hammer=null,this.body=null,this.conversion=null},s.prototype.hide=function(){this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom.axis.parentNode&&this.dom.axis.parentNode.removeChild(this.dom.axis),this.dom.labelSet.parentNode&&this.dom.labelSet.parentNode.removeChild(this.dom.labelSet)},s.prototype.show=function(){this.dom.frame.parentNode||this.body.dom.center.appendChild(this.dom.frame),this.dom.axis.parentNode||this.body.dom.backgroundVertical.appendChild(this.dom.axis),this.dom.labelSet.parentNode||this.body.dom.left.appendChild(this.dom.labelSet)},s.prototype.setSelection=function(t){var e,i,s,o;for(void 0==t&&(t=[]),Array.isArray(t)||(t=[t]),e=0,i=this.selection.length;i>e;e++)s=this.selection[e],o=this.items[s],o&&o.unselect();for(this.selection=[],e=0,i=t.length;i>e;e++)s=t[e],o=this.items[s],o&&(this.selection.push(s),o.select())},s.prototype.getSelection=function(){return this.selection.concat([])},s.prototype.getVisibleItems=function(){var t=this.body.range.getRange(),e=this.body.util.toScreen(t.start),i=this.body.util.toScreen(t.end),s=[];for(var o in this.groups)if(this.groups.hasOwnProperty(o))for(var n=this.groups[o],r=n.visibleItems,a=0;ae&&s.push(h.id)}return s},s.prototype._deselect=function(t){for(var e=this.selection,i=0,s=e.length;s>i;i++)if(e[i]==t){e.splice(i,1);break}},s.prototype.redraw=function(){var t=this.options.margin,e=this.body.range,i=n.option.asSize,s=this.options,o=s.orientation,r=!1,a=this.dom.frame,h=s.editable.updateTime||s.editable.updateGroup;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top,this.props.left=this.body.domProps.left.width+this.body.domProps.border.left,a.className="itemset"+(h?" editable":""),r=this._orderGroups()||r;var d=e.end-e.start,l=d!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;l&&(this.stackDirty=!0),this.lastVisibleInterval=d,this.props.lastWidth=this.props.width;var c=this.stackDirty,p=this._firstGroup(),u={item:t.item,axis:t.axis},m={item:t.item,axis:t.item.vertical/2},f=0,v=t.axis+t.item.vertical;return this.groups[g].redraw(e,m,c),n.forEach(this.groups,function(t){var i=t==p?u:m,s=t.redraw(e,i,c);r=s||r,f+=t.height}),f=Math.max(f,v),this.stackDirty=!1,a.style.height=i(f),this.props.width=a.offsetWidth,this.props.height=f,this.dom.axis.style.top=i("top"==o?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height),this.dom.axis.style.left="0",r=this._isResized()||r},s.prototype._firstGroup=function(){var t="top"==this.options.orientation?0:this.groupIds.length-1,e=this.groupIds[t],i=this.groups[e]||this.groups[f];return i||null},s.prototype._updateUngrouped=function(){{var t,e,i=this.groups[f];this.groups[g]}if(this.groupsData){if(i){i.hide(),delete this.groups[f];for(e in this.items)if(this.items.hasOwnProperty(e)){t=this.items[e],t.parent&&t.parent.remove(t);var s=this._getGroupId(t.data),o=this.groups[s];o&&o.add(t)||t.hide()}}}else if(!i){var n=null,r=null;i=new d(n,r,this),this.groups[f]=i;for(e in this.items)this.items.hasOwnProperty(e)&&(t=this.items[e],i.add(t));i.show()}},s.prototype.getLabelSet=function(){return this.dom.labelSet},s.prototype.setItems=function(t){var e,i=this,s=this.itemsData;if(t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.itemsData=t}else this.itemsData=null;if(s&&(n.forEach(this.itemListeners,function(t,e){s.off(e,t)}),e=s.getIds(),this._onRemove(e)),this.itemsData){var o=this.id;n.forEach(this.itemListeners,function(t,e){i.itemsData.on(e,t,o)}),e=this.itemsData.getIds(),this._onAdd(e),this._updateUngrouped()}},s.prototype.getItems=function(){return this.itemsData},s.prototype.setGroups=function(t){var e,i=this;if(this.groupsData&&(n.forEach(this.groupListeners,function(t,e){i.groupsData.unsubscribe(e,t)}),e=this.groupsData.getIds(),this.groupsData=null,this._onRemoveGroups(e)),t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.groupsData=t}else this.groupsData=null;if(this.groupsData){var s=this.id;n.forEach(this.groupListeners,function(t,e){i.groupsData.on(e,t,s)}),e=this.groupsData.getIds(),this._onAddGroups(e)}this._updateUngrouped(),this._order(),this.body.emitter.emit("change",{queue:!0})},s.prototype.getGroups=function(){return this.groupsData},s.prototype.removeItem=function(t){var e=this.itemsData.get(t),i=this.itemsData.getDataSet();e&&this.options.onRemove(e,function(e){e&&i.remove(t)})},s.prototype._getType=function(t){return t.type||this.options.type||(t.end?"range":"box")},s.prototype._getGroupId=function(t){var e=this._getType(t);return"background"==e&&void 0==t.group?g:this.groupsData?t.group:f},s.prototype._onUpdate=function(t){var e=this;t.forEach(function(t){var i=e.itemsData.get(t,e.itemOptions),o=e.items[t],n=e._getType(i),r=s.types[n];if(o&&(r&&o instanceof r?e._updateItem(o,i):(e._removeItem(o),o=null)),!o){if(!r)throw new TypeError("rangeoverflow"==n?'Item type "rangeoverflow" is deprecated. Use css styling instead: .vis.timeline .item.range .content {overflow: visible;}':'Unknown item type "'+n+'"');o=new r(i,e.conversion,e.options),o.id=t,e._addItem(o)}}),this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0})},s.prototype._onAdd=s.prototype._onUpdate,s.prototype._onRemove=function(t){var e=0,i=this;t.forEach(function(t){var s=i.items[t];s&&(e++,i._removeItem(s))}),e&&(this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0}))},s.prototype._order=function(){n.forEach(this.groups,function(t){t.order()})},s.prototype._onUpdateGroups=function(t){this._onAddGroups(t)},s.prototype._onAddGroups=function(t){var e=this;t.forEach(function(t){var i=e.groupsData.get(t),s=e.groups[t];if(s)s.setData(i);else{if(t==f||t==g)throw new Error("Illegal group id. "+t+" is a reserved id.");var o=Object.create(e.options);n.extend(o,{height:null}),s=new d(t,i,e),e.groups[t]=s;for(var r in e.items)if(e.items.hasOwnProperty(r)){var a=e.items[r];a.data.group==t&&s.add(a)}s.order(),s.show()}}),this.body.emitter.emit("change",{queue:!0})},s.prototype._onRemoveGroups=function(t){var e=this.groups;t.forEach(function(t){var i=e[t];i&&(i.hide(),delete e[t])}),this.markDirty(),this.body.emitter.emit("change",{queue:!0})},s.prototype._orderGroups=function(){if(this.groupsData){var t=this.groupsData.getIds({order:this.options.groupOrder}),e=!n.equalArray(t,this.groupIds);if(e){var i=this.groups;t.forEach(function(t){i[t].hide()}),t.forEach(function(t){i[t].show()}),this.groupIds=t}return e}return!1},s.prototype._addItem=function(t){this.items[t.id]=t;var e=this._getGroupId(t.data),i=this.groups[e];i&&i.add(t)},s.prototype._updateItem=function(t,e){var i=t.data.group;if(t.setData(e),i!=t.data.group){var s=this.groups[i];s&&s.remove(t);var o=this._getGroupId(t.data),n=this.groups[o];n&&n.add(t)}},s.prototype._removeItem=function(t){t.hide(),delete this.items[t.id];var e=this.selection.indexOf(t.id);-1!=e&&this.selection.splice(e,1),t.parent&&t.parent.remove(t)},s.prototype._constructByEndArray=function(t){for(var e=[],i=0;i0||o.length>0)&&this.body.emitter.emit("select",{items:a})}},s.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.body.util.snap||null,o=s.itemFromTarget(t);if(o){var r=e.itemsData.get(o.id);this.options.onUpdate(r,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var a=n.getAbsoluteLeft(this.dom.frame),h=t.gesture.center.pageX-a,d=this.body.util.toTime(h),l={start:i?i(d):d,content:"new item"};if("range"===this.options.type){var c=this.body.util.toTime(h+this.props.width/5);l.end=i?i(c):c}l[this.itemsData._fieldId]=n.randomUUID();var p=s.groupFromTarget(t);p&&(l.group=p.groupId),this.options.onAdd(l,function(t){t&&e.itemsData.getDataSet().add(t)})}}},s.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e,i=s.itemFromTarget(t);if(i){e=this.getSelection();var o=t.gesture.touches[0]&&t.gesture.touches[0].shiftKey||!1;if(o){e.push(i.id);var n=s._getItemRange(this.itemsData.get(e,this.itemOptions));e=[];for(var r in this.items)if(this.items.hasOwnProperty(r)){var a=this.items[r],h=a.data.start,d=void 0!==a.data.end?a.data.end:h;h>=n.min&&d<=n.max&&e.push(a.id)}}else{var l=e.indexOf(i.id);-1==l?e.push(i.id):e.splice(l,1)}this.setSelection(e),this.body.emitter.emit("select",{items:this.getSelection()})}}},s._getItemRange=function(t){var e=null,i=null;return t.forEach(function(t){(null==i||t.starte)&&(e=t.end):(null==e||t.start>e)&&(e=t.start)}),{min:i,max:e}},s.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},s.groupFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-group"))return e["timeline-group"];e=e.parentNode}return null},s.itemSetFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-itemset"))return e["timeline-itemset"];e=e.parentNode}return null},t.exports=s},function(t,e,i){function s(t,e,i,s){this.body=t,this.defaultOptions={enabled:!0,icons:!0,iconSize:20,iconSpacing:6,left:{visible:!0,position:"top-left"},right:{visible:!0,position:"top-left"}},this.side=i,this.options=o.extend({},this.defaultOptions),this.linegraphOptions=s,this.svgElements={},this.dom={},this.groups={},this.amountOfGroups=0,this._create(),this.setOptions(e)}var o=i(1),n=i(2),r=i(20);s.prototype=new r,s.prototype.clear=function(){this.groups={},this.amountOfGroups=0},s.prototype.addGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.groups[t]=e),this.amountOfGroups+=1},s.prototype.updateGroup=function(t,e){this.groups[t]=e},s.prototype.removeGroup=function(t){this.groups.hasOwnProperty(t)&&(delete this.groups[t],this.amountOfGroups-=1)},s.prototype._create=function(){this.dom.frame=document.createElement("div"),this.dom.frame.className="legend",this.dom.frame.style.position="absolute",this.dom.frame.style.top="10px",this.dom.frame.style.display="block",this.dom.textArea=document.createElement("div"),this.dom.textArea.className="legendText",this.dom.textArea.style.position="relative",this.dom.textArea.style.top="0px",this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="absolute",this.svg.style.top="0px",this.svg.style.width=this.options.iconSize+5+"px",this.svg.style.height="100%",this.dom.frame.appendChild(this.svg),this.dom.frame.appendChild(this.dom.textArea)},s.prototype.hide=function(){this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame)},s.prototype.show=function(){this.dom.frame.parentNode||this.body.dom.center.appendChild(this.dom.frame)},s.prototype.setOptions=function(t){var e=["enabled","orientation","icons","left","right"];o.selectiveDeepExtend(e,this.options,t)},s.prototype.redraw=function(){var t=0;for(var e in this.groups)this.groups.hasOwnProperty(e)&&(1!=this.groups[e].visible||void 0!==this.linegraphOptions.visibility[e]&&1!=this.linegraphOptions.visibility[e]||t++);if(0==this.options[this.side].visible||0==this.amountOfGroups||0==this.options.enabled||0==t)this.hide();else{if(this.show(),"top-left"==this.options[this.side].position||"bottom-left"==this.options[this.side].position?(this.dom.frame.style.left="4px",this.dom.frame.style.textAlign="left",this.dom.textArea.style.textAlign="left",this.dom.textArea.style.left=this.options.iconSize+15+"px",this.dom.textArea.style.right="",this.svg.style.left="0px",this.svg.style.right=""):(this.dom.frame.style.right="4px",this.dom.frame.style.textAlign="right",this.dom.textArea.style.textAlign="right",this.dom.textArea.style.right=this.options.iconSize+15+"px",this.dom.textArea.style.left="",this.svg.style.right="0px",this.svg.style.left=""),"top-left"==this.options[this.side].position||"top-right"==this.options[this.side].position)this.dom.frame.style.top=4-Number(this.body.dom.center.style.top.replace("px",""))+"px",this.dom.frame.style.bottom="";else{var i=this.body.domProps.center.height-this.body.domProps.centerContainer.height;this.dom.frame.style.bottom=4+i+Number(this.body.dom.center.style.top.replace("px",""))+"px",this.dom.frame.style.top=""}0==this.options.icons?(this.dom.frame.style.width=this.dom.textArea.offsetWidth+10+"px",this.dom.textArea.style.right="",this.dom.textArea.style.left="",this.svg.style.width="0px"):(this.dom.frame.style.width=this.options.iconSize+15+this.dom.textArea.offsetWidth+10+"px",this.drawLegendIcons());var s="";for(var e in this.groups)this.groups.hasOwnProperty(e)&&(1!=this.groups[e].visible||void 0!==this.linegraphOptions.visibility[e]&&1!=this.linegraphOptions.visibility[e]||(s+=this.groups[e].content+"
"));this.dom.textArea.innerHTML=s,this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+"px"}},s.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){n.prepareElements(this.svgElements);var t=window.getComputedStyle(this.dom.frame).paddingTop,e=Number(t.replace("px","")),i=e,s=this.options.iconSize,o=.75*this.options.iconSize,r=e+.5*o+3;this.svg.style.width=s+5+e+"px";for(var a in this.groups)this.groups.hasOwnProperty(a)&&(1!=this.groups[a].visible||void 0!==this.linegraphOptions.visibility[a]&&1!=this.linegraphOptions.visibility[a]||(this.groups[a].drawIcon(i,r,this.svgElements,this.svg,s,o),r+=o+this.options.iconSpacing));n.cleanupElements(this.svgElements)}},t.exports=s},function(t,e,i){function s(t,e){this.id=o.randomUUID(),this.body=t,this.defaultOptions={yAxisOrientation:"left",defaultGroup:"default",sort:!0,sampling:!0,graphHeight:"400px",shaded:{enabled:!1,orientation:"bottom"},style:"line",barChart:{width:50,handleOverlap:"overlap",align:"center"},catmullRom:{enabled:!0,parametrization:"centripetal",alpha:.5},drawPoints:{enabled:!0,size:6,style:"square"},dataAxis:{showMinorLabels:!0,showMajorLabels:!0,showMinorLines:!0,showMajorLines:!0,icons:!1,width:"40px",visible:!0,alignZeros:!0,customRange:{left:{min:void 0,max:void 0},right:{min:void 0,max:void 0}}},legend:{enabled:!1,icons:!0,left:{visible:!0,position:"top-left"},right:{visible:!0,position:"top-right"}},groups:{visibility:{}}},this.options=o.extend({},this.defaultOptions),this.dom={},this.props={},this.hammer=null,this.groups={},this.abortedGraphUpdate=!1,this.autoSizeSVG=!1;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e){i._onAdd(e.items)},update:function(t,e){i._onUpdate(e.items)},remove:function(t,e){i._onRemove(e.items)}},this.groupListeners={add:function(t,e){i._onAddGroups(e.items)},update:function(t,e){i._onUpdateGroups(e.items)},remove:function(t,e){i._onRemoveGroups(e.items)}},this.items={},this.selection=[],this.lastStart=this.body.range.start,this.touchParams={},this.svgElements={},this.setOptions(e),this.groupsUsingDefaultStyles=[0],this.COUNTER=0,this.body.emitter.on("rangechanged",function(){i.lastStart=i.body.range.start,i.svg.style.left=o.option.asSize(-i.props.width),i.redraw.call(i,!0)}),this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups},this.body.emitter.emit("change")}var o=i(1),n=i(2),r=i(3),a=i(4),h=i(20),d=i(23),l=i(24),c=i(28),p=i(52),u="__ungrouped__";s.prototype=new h,s.prototype._create=function(){var t=document.createElement("div");t.className="LineGraph",this.dom.frame=t,this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="relative",this.svg.style.height=(""+this.options.graphHeight).replace("px","")+"px",this.svg.style.display="block",t.appendChild(this.svg),this.options.dataAxis.orientation="left",this.yAxisLeft=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),delete this.options.dataAxis.orientation,this.legendLeft=new c(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new c(this.body,this.options.legend,"right",this.options.groups),this.show()},s.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","height","graphHeight","yAxisOrientation","style","barChart","dataAxis","sort","groups"];void 0===t.graphHeight&&void 0!==t.height&&void 0!==this.body.domProps.centerContainer.height?this.autoSizeSVG=!0:void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))0){var d=this.body.util.toGlobalTime(-this.body.domProps.root.width),l=this.body.util.toGlobalTime(2*this.body.domProps.root.width),c={};for(this._getRelevantData(a,c,d,l),this._applySampling(a,c),e=0;eu&&console.log("WARNING: there may be an infinite loop in the _updateGraph emitter cycle."),this.COUNTER=0,this.abortedGraphUpdate=!1,e=0;e0)for(r=0;rs){d.push(h);break}d.push(h)}}else for(a=0;ai&&h.x0)for(var s=0;s0){var n=1,r=o.length,a=this.body.util.toGlobalScreen(o[o.length-1].x)-this.body.util.toGlobalScreen(o[0].x),h=r/a;n=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=[],l=0;r>l;l+=n)d.push(o[l]);e[t[s]]=d}}},s.prototype._getYRanges=function(t,e,i){var s,o,n,r,a=[],h=[];if(t.length>0){for(n=0;n0&&(o=this.groups[t[n]],"stack"==r.barChart.handleOverlap&&"bar"==r.style?"left"==r.yAxisOrientation?a=a.concat(o.getYRange(s)):h=h.concat(o.getYRange(s)):i[t[n]]=o.getYRange(s,t[n]));p.getStackedBarYRange(a,i,t,"__barchartLeft","left"),p.getStackedBarYRange(h,i,t,"__barchartRight","right")}},s.prototype._updateYAxis=function(t,e){var i,s,o=!1,n=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var c=0;ci?i:a,d=s>d?s:d):(r=!0,h=h>i?i:h,l=s>l?s:l));1==n&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}return o=this._toggleAxisVisiblity(n,this.yAxisLeft)||o,o=this._toggleAxisVisiblity(r,this.yAxisRight)||o,1==r&&1==n?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!n,0==this.yAxisRight.master?(this.yAxisLeft.lineOffset=1==r?this.yAxisRight.width:0,o=this.yAxisLeft.redraw()||o,this.yAxisRight.stepPixelsForced=this.yAxisLeft.stepPixels,this.yAxisRight.zeroCrossing=this.yAxisLeft.zeroCrossing,o=this.yAxisRight.redraw()||o):o=this.yAxisRight.redraw()||o,-1!=t.indexOf("__barchartLeft")&&t.splice(t.indexOf("__barchartLeft"),1),-1!=t.indexOf("__barchartRight")&&t.splice(t.indexOf("__barchartRight"),1),o},s.prototype._toggleAxisVisiblity=function(t,e){var i=!1;return 0==t?e.dom.frame.parentNode&&0==e.hidden&&(e.hide(),i=!0):e.dom.frame.parentNode||1!=e.hidden||(e.show(),i=!0),i},s.prototype._convertXcoordinates=function(t){for(var e,i,s=[],o=this.body.util.toScreen,n=0;nc;){c++;var p=h.getCurrent(),u=this.body.util.toScreen(p),m=h.isMajor();this.options.showMinorLabels&&this._repaintMinorText(u,h.getLabelMinor(),t),m&&this.options.showMajorLabels?(u>0&&(void 0==l&&(l=u),this._repaintMajorText(u,h.getLabelMajor(),t)),1==this.options.showMajorLines&&this._repaintMajorLine(u,t)):1==this.options.showMinorLines&&this._repaintMinorLine(u,t),h.next()}if(this.options.showMajorLabels){var f=this.body.util.toTime(0),g=h.getLabelMajor(f),v=g.length*(this.props.majorCharWidth||10)+10;(void 0==l||l>v)&&this._repaintMajorText(0,g,t)}o.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},s.prototype._repaintMinorText=function(t,e,i){var s=this.dom.redundant.minorTexts.shift();if(!s){var o=document.createTextNode("");s=document.createElement("div"),s.appendChild(o),s.className="text minor",this.dom.foreground.appendChild(s)}this.dom.minorTexts.push(s),s.childNodes[0].nodeValue=e,s.style.top="top"==i?this.props.majorLabelHeight+"px":"0",s.style.left=t+"px"},s.prototype._repaintMajorText=function(t,e,i){var s=this.dom.redundant.majorTexts.shift();if(!s){var o=document.createTextNode(e);s=document.createElement("div"),s.className="text major",s.appendChild(o),this.dom.foreground.appendChild(s)}this.dom.majorTexts.push(s),s.childNodes[0].nodeValue=e,s.style.top="top"==i?"0":this.props.minorLabelHeight+"px",s.style.left=t+"px"},s.prototype._repaintMinorLine=function(t,e){var i=this.dom.redundant.minorLines.shift();i||(i=document.createElement("div"),i.className="grid vertical minor",this.dom.background.appendChild(i)),this.dom.minorLines.push(i);var s=this.props;i.style.top="top"==e?s.majorLabelHeight+"px":this.body.domProps.top.height+"px",i.style.height=s.minorLineHeight+"px",i.style.left=t-s.minorLineWidth/2+"px"},s.prototype._repaintMajorLine=function(t,e){var i=this.dom.redundant.majorLines.shift();i||(i=document.createElement("DIV"),i.className="grid vertical major",this.dom.background.appendChild(i)),this.dom.majorLines.push(i);var s=this.props;i.style.top="top"==e?"0":this.body.domProps.top.height+"px",i.style.left=t-s.majorLineWidth/2+"px",i.style.height=s.majorLineHeight+"px"},s.prototype._calculateCharSize=function(){this.dom.measureCharMinor||(this.dom.measureCharMinor=document.createElement("DIV"),this.dom.measureCharMinor.className="text minor measure",this.dom.measureCharMinor.style.position="absolute",this.dom.measureCharMinor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMinor)),this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight,this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth,this.dom.measureCharMajor||(this.dom.measureCharMajor=document.createElement("DIV"),this.dom.measureCharMajor.className="text major measure",this.dom.measureCharMajor.style.position="absolute",this.dom.measureCharMajor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMajor)),this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight,this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth},s.prototype.snap=function(t){return this.step.snap(t)},t.exports=s},function(t,e,i){function s(t,e,i){this.id=null,this.parent=null,this.data=t,this.dom=null,this.conversion=e||{},this.options=i||{},this.selected=!1,this.displayed=!1,this.dirty=!0,this.top=null,this.left=null,this.width=null,this.height=null}var o=i(45),n=i(1);s.prototype.stack=!0,s.prototype.select=function(){this.selected=!0,this.dirty=!0,this.displayed&&this.redraw()},s.prototype.unselect=function(){this.selected=!1,this.dirty=!0,this.displayed&&this.redraw()},s.prototype.setData=function(t){this.data=t,this.dirty=!0,this.displayed&&this.redraw()},s.prototype.setParent=function(t){this.displayed?(this.hide(),this.parent=t,this.parent&&this.show()):this.parent=t},s.prototype.isVisible=function(){return!1},s.prototype.show=function(){return!1},s.prototype.hide=function(){return!1},s.prototype.redraw=function(){},s.prototype.repositionX=function(){},s.prototype.repositionY=function(){},s.prototype._repaintDeleteButton=function(t){if(this.selected&&this.options.editable.remove&&!this.dom.deleteButton){var e=this,i=document.createElement("div");i.className="delete",i.title="Delete this item",o(i,{preventDefault:!0}).on("tap",function(t){e.parent.removeFromDataSet(e),t.stopPropagation()}),t.appendChild(i),this.dom.deleteButton=i}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},s.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;if(e!==this.content){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},s.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("title")},s.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;it.start},s.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.content=document.createElement("div"),t.content.className="content",t.box.appendChild(t.content),this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.background;if(!e)throw new Error("Cannot redraw item: parent has no background container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.content),this._updateDataAttributes(this.dom.content),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.props.content.width=this.dom.content.offsetWidth,this.height=0,this.dirty=!1}},s.prototype.show=r.prototype.show,s.prototype.hide=r.prototype.hide,s.prototype.repositionX=r.prototype.repositionX,s.prototype.repositionY=function(t){var e="top"===this.options.orientation;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var s=this.data.subgroup,o=this.parent.subgroups,r=o[s].index;if(1==e){i=this.parent.subgroups[s].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in o)o.hasOwnProperty(h)&&1==o[h].visible&&o[h].indexr&&(a+=o[h].height+t.item.vertical);i=this.parent.subgroups[s].height+t.item.vertical,this.dom.box.style.top=a+"px",this.dom.box.style.bottom=""}}else this.parent instanceof n?(i=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height),this.dom.box.style.top=e?"0":"",this.dom.box.style.bottom=e?"":"0"):(i=this.parent.height,this.dom.box.style.top=this.parent.top+"px",this.dom.box.style.bottom="");this.dom.box.style.height=i+"px"},t.exports=s},function(t,e,i){function s(t,e,i){if(this.props={dot:{width:0,height:0},line:{width:0,height:0}},t&&void 0==t.start)throw new Error('Property "start" missing in item '+t);o.call(this,t,e,i)}{var o=i(31);i(1)}s.prototype=new o(null,null,null),s.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start-e&&this.data.startt.start},s.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.content=document.createElement("div"),t.content.className="content",t.box.appendChild(t.content),t.box["timeline-item"]=this,this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.foreground;if(!e)throw new Error("Cannot redraw item: parent has no foreground container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.box),this._updateDataAttributes(this.dom.box),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.dom.content.style.maxWidth="none",this.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,this.dom.content.style.maxWidth="",this.dirty=!1}this._repaintDeleteButton(t.box),this._repaintDragLeft(),this._repaintDragRight()},s.prototype.show=function(){this.displayed||this.redraw()},s.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.top=null,this.left=null,this.displayed=!1}},s.prototype.repositionX=function(){var t,e,i=this.parent.width,s=this.conversion.toScreen(this.data.start),o=this.conversion.toScreen(this.data.end);-i>s&&(s=-i),o>2*i&&(o=2*i);var n=Math.max(o-s,1);switch(this.overflow?(this.left=s,this.width=n+this.props.content.width,e=this.props.content.width):(this.left=s,this.width=n,e=Math.min(o-s-2*this.options.padding,this.props.content.width)),this.dom.box.style.left=this.left+"px",this.dom.box.style.width=n+"px",this.options.align){case"left":this.dom.content.style.left="0";break;case"right":this.dom.content.style.left=Math.max(n-e-2*this.options.padding,0)+"px";break;case"center":this.dom.content.style.left=Math.max((n-e-2*this.options.padding)/2,0)+"px";break;default:t=this.overflow?o>0?Math.max(-s,0):-e:0>s?Math.min(-s,o-s-e-2*this.options.padding):0,this.dom.content.style.left=t+"px"}},s.prototype.repositionY=function(){var t=this.options.orientation,e=this.dom.box;e.style.top="top"==t?this.top+"px":this.parent.height-this.top-this.height+"px"},s.prototype._repaintDragLeft=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragLeft){var t=document.createElement("div");t.className="drag-left",t.dragLeftItem=this,o(t,{preventDefault:!0}).on("drag",function(){}),this.dom.box.appendChild(t),this.dom.dragLeft=t}else!this.selected&&this.dom.dragLeft&&(this.dom.dragLeft.parentNode&&this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft),this.dom.dragLeft=null)},s.prototype._repaintDragRight=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragRight){var t=document.createElement("div");t.className="drag-right",t.dragRightItem=this,o(t,{preventDefault:!0}).on("drag",function(){}),this.dom.box.appendChild(t),this.dom.dragRight=t}else!this.selected&&this.dom.dragRight&&(this.dom.dragRight.parentNode&&this.dom.dragRight.parentNode.removeChild(this.dom.dragRight),this.dom.dragRight=null)},t.exports=s},function(t,e,i){function s(t,e,i){if(!(this instanceof s))throw new SyntaxError("Constructor must be called with the new operator");this._initializeMixinLoaders(),this.containerElement=t,this.renderRefreshRate=60,this.renderTimestep=1e3/this.renderRefreshRate,this.renderTime=.5*this.renderTimestep,this.maxPhysicsTicksPerRender=3,this.physicsDiscreteStepsize=.5,this.initializing=!0,this.triggerFunctions={add:null,edit:null,editEdge:null,connect:null,del:null},this.defaultOptions={nodes:{mass:1,radiusMin:10,radiusMax:30,radius:10,shape:"ellipse",image:void 0,widthMin:16,widthMax:64,fontColor:"black",fontSize:14,fontFace:"verdana",fontFill:void 0,level:-1,color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},borderColor:"#2B7CE9",backgroundColor:"#97C2FC",highlightColor:"#D2E5FF",group:void 0,borderWidth:1,borderWidthSelected:void 0},edges:{widthMin:1,widthMax:15,width:1,widthSelectionMultiplier:2,hoverWidth:1.5,style:"line",color:{color:"#848484",highlight:"#848484",hover:"#848484"},fontColor:"#343434",fontSize:14,fontFace:"arial",fontFill:"white",arrowScaleFactor:1,dash:{length:10,gap:5,altLength:void 0},inheritColor:"from"},configurePhysics:!1,physics:{barnesHut:{enabled:!0,thetaInverted:2,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09},repulsion:{centralGravity:0,springLength:200,springConstant:.05,nodeDistance:100,damping:.09},hierarchicalRepulsion:{enabled:!1,centralGravity:0,springLength:100,springConstant:.01,nodeDistance:150,damping:.09},damping:null,centralGravity:null,springLength:null,springConstant:null},clustering:{enabled:!1,initialMaxNodes:100,clusterThreshold:500,reduceToNodes:300,chainThreshold:.4,clusterEdgeThreshold:20,sectorThreshold:100,screenSizeThreshold:.2,fontSizeMultiplier:4,maxFontSize:1e3,forceAmplification:.1,distanceAmplification:.1,edgeGrowth:20,nodeScaling:{width:1,height:1,radius:1},maxNodeSizeIncrements:600,activeAreaBoxSize:80,clusterLevelDifference:2},navigation:{enabled:!1},keyboard:{enabled:!1,speed:{x:10,y:10,zoom:.02}},dataManipulation:{enabled:!1,initiallyVisible:!1},hierarchicalLayout:{enabled:!1,levelSeparation:150,nodeSpacing:100,direction:"UD",layout:"hubsize"},freezeForStabilization:!1,smoothCurves:{enabled:!0,dynamic:!0,type:"continuous",roundness:.5},maxVelocity:30,minVelocity:.1,stabilize:!0,stabilizationIterations:1e3,zoomExtentOnStabilize:!0,locale:"en",locales:_,tooltip:{delay:300,fontColor:"black",fontSize:14,fontFace:"verdana",color:{border:"#666",background:"#FFFFC6"}},dragNetwork:!0,dragNodes:!0,zoomable:!0,hover:!1,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,width:"100%",height:"100%",selectable:!0},this.constants=a.extend({},this.defaultOptions),this.pixelRatio=1,this.hoverObj={nodes:{},edges:{}},this.controlNodesActive=!1,this.navigationHammers={existing:[],_new:[]},this.animationSpeed=1/this.renderRefreshRate,this.animationEasingFunction="easeInOutQuint",this.easingTime=0,this.sourceScale=0,this.targetScale=0,this.sourceTranslation=0,this.targetTranslation=0,this.lockedOnNodeId=null,this.lockedOnNodeOffset=null,this.touchTime=0;var o=this;this.groups=new u,this.images=new m,this.images.setOnloadCallback(function(){o._redraw()}),this.xIncrement=0,this.yIncrement=0,this.zoomIncrement=0,this._loadPhysicsSystem(),this._create(),this._loadSectorSystem(),this._loadClusterSystem(),this._loadSelectionSystem(),this._loadHierarchySystem(),this._setTranslation(this.frame.clientWidth/2,this.frame.clientHeight/2),this._setScale(1),this.setOptions(i),this.freezeSimulation=!1,this.cachedFunctions={},this.startedStabilization=!1,this.stabilized=!1,this.stabilizationIterations=null,this.draggingNodes=!1,this.calculationNodes={},this.calculationNodeIndices=[],this.nodeIndices=[],this.nodes={},this.edges={},this.canvasTopLeft={x:0,y:0},this.canvasBottomRight={x:0,y:0},this.pointerPosition={x:0,y:0},this.areaCenter={},this.scale=1,this.previousScale=this.scale,this.nodesData=null,this.edgesData=null,this.nodesListeners={add:function(t,e){o._addNodes(e.items),o.start()},update:function(t,e){o._updateNodes(e.items,e.data),o.start()},remove:function(t,e){o._removeNodes(e.items),o.start()}},this.edgesListeners={add:function(t,e){o._addEdges(e.items),o.start()},update:function(t,e){o._updateEdges(e.items),o.start()},remove:function(t,e){o._removeEdges(e.items),o.start()}},this.moving=!0,this.timer=void 0,this.setData(e,this.constants.clustering.enabled||this.constants.hierarchicalLayout.enabled),this.initializing=!1,1==this.constants.hierarchicalLayout.enabled?this._setupHierarchicalLayout():0==this.constants.stabilize&&this.zoomExtent(void 0,!0,this.constants.clustering.enabled),this.constants.clustering.enabled&&this.startWithClustering()}var o=i(56),n=i(45),r=i(57),a=i(1),h=i(47),d=i(3),l=i(4),c=i(42),p=i(43),u=i(38),m=i(39),f=i(40),g=i(37),v=i(41),y=i(54),b=i(55),_=i(49);i(50),o(s.prototype),s.prototype._getScriptPath=function(){for(var t=document.getElementsByTagName("script"),e=0;et.boundingBox.left&&(s=t.boundingBox.left),ot.boundingBox.bottom&&(e=t.boundingBox.bottom),i=this.constants.clustering.initialMaxNodes?49.07548/(n+142.05338)+91444e-8:12.662/(n+7.4147)+.0964822:1==this.constants.clustering.enabled&&n>=this.constants.clustering.initialMaxNodes?77.5271985/(n+187.266146)+476710517e-13:30.5062972/(n+19.93597763)+.08413486;var r=Math.min(this.frame.canvas.clientWidth/600,this.frame.canvas.clientHeight/600);s*=r}else{var a=1.1*Math.abs(o.maxX-o.minX),h=1.1*Math.abs(o.maxY-o.minY),d=this.frame.canvas.clientWidth/a,l=this.frame.canvas.clientHeight/h;s=l>=d?d:l}s>1&&(s=1);var c=this._findCenter(o);if(0==i){var p={position:c,scale:s,animation:t};this.moveTo(p),this.moving=!0,this.start()}else c.x*=s,c.y*=s,c.x-=.5*this.frame.canvas.clientWidth,c.y-=.5*this.frame.canvas.clientHeight,this._setScale(s),this._setTranslation(-c.x,-c.y)},s.prototype._updateNodeIndexList=function(){this._clearNodeIndexList();for(var t in this.nodes)this.nodes.hasOwnProperty(t)&&this.nodeIndices.push(t)},s.prototype.setData=function(t,e){if(void 0===e&&(e=!1),this.initializing=!0,t&&t.dot&&(t.nodes||t.edges))throw new SyntaxError('Data must contain either parameter "dot" or parameter pair "nodes" and "edges", but not both.');if(this.setOptions(t&&t.options),t&&t.dot){if(t&&t.dot){var i=c.DOTToGraph(t.dot);return void this.setData(i)}}else if(t&&t.gephi){if(t&&t.gephi){var s=p.parseGephi(t.gephi);return void this.setData(s)}}else this._setNodes(t&&t.nodes),this._setEdges(t&&t.edges);this._putDataInSector(),0==e&&(1==this.constants.hierarchicalLayout.enabled?(this._resetLevels(),this._setupHierarchicalLayout()):this.constants.stabilize&&this._stabilize(),this.start()),this.initializing=!1},s.prototype.setOptions=function(t){if(t){var e,i=["nodes","edges","smoothCurves","hierarchicalLayout","clustering","navigation","keyboard","dataManipulation","onAdd","onEdit","onEditEdge","onConnect","onDelete","clickToUse"];if(a.selectiveNotDeepExtend(i,this.constants,t),a.selectiveNotDeepExtend(["color"],this.constants.nodes,t.nodes),a.selectiveNotDeepExtend(["color","length"],this.constants.edges,t.edges),t.physics&&(a.mergeOptions(this.constants.physics,t.physics,"barnesHut"),a.mergeOptions(this.constants.physics,t.physics,"repulsion"),t.physics.hierarchicalRepulsion)){this.constants.hierarchicalLayout.enabled=!0,this.constants.physics.hierarchicalRepulsion.enabled=!0,this.constants.physics.barnesHut.enabled=!1;for(e in t.physics.hierarchicalRepulsion)t.physics.hierarchicalRepulsion.hasOwnProperty(e)&&(this.constants.physics.hierarchicalRepulsion[e]=t.physics.hierarchicalRepulsion[e]) +}if(t.onAdd&&(this.triggerFunctions.add=t.onAdd),t.onEdit&&(this.triggerFunctions.edit=t.onEdit),t.onEditEdge&&(this.triggerFunctions.editEdge=t.onEditEdge),t.onConnect&&(this.triggerFunctions.connect=t.onConnect),t.onDelete&&(this.triggerFunctions.del=t.onDelete),a.mergeOptions(this.constants,t,"smoothCurves"),a.mergeOptions(this.constants,t,"hierarchicalLayout"),a.mergeOptions(this.constants,t,"clustering"),a.mergeOptions(this.constants,t,"navigation"),a.mergeOptions(this.constants,t,"keyboard"),a.mergeOptions(this.constants,t,"dataManipulation"),t.dataManipulation&&(this.editMode=this.constants.dataManipulation.initiallyVisible),t.edges&&(void 0!==t.edges.color&&(a.isString(t.edges.color)?(this.constants.edges.color={},this.constants.edges.color.color=t.edges.color,this.constants.edges.color.highlight=t.edges.color,this.constants.edges.color.hover=t.edges.color):(void 0!==t.edges.color.color&&(this.constants.edges.color.color=t.edges.color.color),void 0!==t.edges.color.highlight&&(this.constants.edges.color.highlight=t.edges.color.highlight),void 0!==t.edges.color.hover&&(this.constants.edges.color.hover=t.edges.color.hover)),this.constants.edges.inheritColor=!1),t.edges.fontColor||void 0!==t.edges.color&&(a.isString(t.edges.color)?this.constants.edges.fontColor=t.edges.color:void 0!==t.edges.color.color&&(this.constants.edges.fontColor=t.edges.color.color))),t.nodes&&t.nodes.color){var s=a.parseColor(t.nodes.color);this.constants.nodes.color.background=s.background,this.constants.nodes.color.border=s.border,this.constants.nodes.color.highlight.background=s.highlight.background,this.constants.nodes.color.highlight.border=s.highlight.border,this.constants.nodes.color.hover.background=s.hover.background,this.constants.nodes.color.hover.border=s.hover.border}if(t.groups)for(var o in t.groups)if(t.groups.hasOwnProperty(o)){var n=t.groups[o];this.groups.add(o,n)}if(t.tooltip){for(e in t.tooltip)t.tooltip.hasOwnProperty(e)&&(this.constants.tooltip[e]=t.tooltip[e]);t.tooltip.color&&(this.constants.tooltip.color=a.parseColor(t.tooltip.color))}if("clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new b(this.frame),this.activator.on("change",this._createKeyBinds.bind(this))):this.activator&&(this.activator.destroy(),delete this.activator)),t.labels)throw new Error('Option "labels" is deprecated. Use options "locale" and "locales" instead.')}this._loadPhysicsSystem(),this._loadNavigationControls(),this._loadManipulationSystem(),this._configureSmoothCurves(),this._createKeyBinds(),this.setSize(this.constants.width,this.constants.height),this.moving=!0,this.start()},s.prototype._create=function(){for(;this.containerElement.hasChildNodes();)this.containerElement.removeChild(this.containerElement.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis network-frame",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}var i=this;this.drag={},this.pinch={},this.hammer=n(this.frame.canvas,{prevent_default:!0}),this.hammer.on("tap",i._onTap.bind(i)),this.hammer.on("doubletap",i._onDoubleTap.bind(i)),this.hammer.on("hold",i._onHold.bind(i)),this.hammer.on("pinch",i._onPinch.bind(i)),this.hammer.on("touch",i._onTouch.bind(i)),this.hammer.on("dragstart",i._onDragStart.bind(i)),this.hammer.on("drag",i._onDrag.bind(i)),this.hammer.on("dragend",i._onDragEnd.bind(i)),this.hammer.on("mousewheel",i._onMouseWheel.bind(i)),this.hammer.on("DOMMouseScroll",i._onMouseWheel.bind(i)),this.hammer.on("mousemove",i._onMouseMoveTitle.bind(i)),this.hammerFrame=n(this.frame,{prevent_default:!0}),this.hammerFrame.on("release",i._onRelease.bind(i)),this.containerElement.appendChild(this.frame)},s.prototype._createKeyBinds=function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=r(),this.keycharm.reset(),this.constants.keyboard.enabled&&this.isActive()&&(this.keycharm.bind("up",this._moveUp.bind(t),"keydown"),this.keycharm.bind("up",this._yStopMoving.bind(t),"keyup"),this.keycharm.bind("down",this._moveDown.bind(t),"keydown"),this.keycharm.bind("down",this._yStopMoving.bind(t),"keyup"),this.keycharm.bind("left",this._moveLeft.bind(t),"keydown"),this.keycharm.bind("left",this._xStopMoving.bind(t),"keyup"),this.keycharm.bind("right",this._moveRight.bind(t),"keydown"),this.keycharm.bind("right",this._xStopMoving.bind(t),"keyup"),this.keycharm.bind("=",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("=",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("num+",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("num+",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("num-",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("num-",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("-",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("-",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("[",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("[",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("]",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("]",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("pageup",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("pageup",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("pagedown",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("pagedown",this._stopZoom.bind(t),"keyup")),1==this.constants.dataManipulation.enabled&&(this.keycharm.bind("esc",this._createManipulatorBar.bind(t)),this.keycharm.bind("delete",this._deleteSelected.bind(t)))},s.prototype.destroy=function(){for(this.start=function(){},this.redraw=function(){},this.timer=!1,this._cleanupPhysicsConfiguration(),this.keycharm.reset(),this.hammer.dispose(),this.off();this.frame.hasChildNodes();)this.frame.removeChild(this.frame.firstChild);for(;this.containerElement.hasChildNodes();)this.containerElement.removeChild(this.containerElement.firstChild)},s.prototype._getPointer=function(t){return{x:t.pageX-a.getAbsoluteLeft(this.frame.canvas),y:t.pageY-a.getAbsoluteTop(this.frame.canvas)}},s.prototype._onTouch=function(t){(new Date).valueOf()-this.touchTime>100&&(this.drag.pointer=this._getPointer(t.gesture.center),this.drag.pinched=!1,this.pinch.scale=this._getScale(),this.touchTime=(new Date).valueOf(),this._handleTouch(this.drag.pointer))},s.prototype._onDragStart=function(){this._handleDragStart()},s.prototype._handleDragStart=function(){var t=this.drag,e=this._getNodeAt(t.pointer);if(t.dragging=!0,t.selection=[],t.translation=this._getTranslation(),t.nodeId=null,this.draggingNodes=!1,null!=e&&1==this.constants.dragNodes){this.draggingNodes=!0,t.nodeId=e.id,e.isSelected()||this._selectObject(e,!1),this.emit("dragStart",{nodeIds:this.getSelection().nodes});for(var i in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(i)){var s=this.selectionObj.nodes[i],o={id:s.id,node:s,x:s.x,y:s.y,xFixed:s.xFixed,yFixed:s.yFixed};s.xFixed=!0,s.yFixed=!0,t.selection.push(o)}}},s.prototype._onDrag=function(t){this._handleOnDrag(t)},s.prototype._handleOnDrag=function(t){if(!this.drag.pinched){this.releaseNode();var e=this._getPointer(t.gesture.center),i=this,s=this.drag,o=s.selection;if(o&&o.length&&1==this.constants.dragNodes){var n=e.x-s.pointer.x,r=e.y-s.pointer.y;o.forEach(function(t){var e=t.node;t.xFixed||(e.x=i._XconvertDOMtoCanvas(i._XconvertCanvasToDOM(t.x)+n)),t.yFixed||(e.y=i._YconvertDOMtoCanvas(i._YconvertCanvasToDOM(t.y)+r))}),this.moving||(this.moving=!0,this.start())}else if(1==this.constants.dragNetwork){var a=e.x-this.drag.pointer.x,h=e.y-this.drag.pointer.y;this._setTranslation(this.drag.translation.x+a,this.drag.translation.y+h),this._redraw()}}},s.prototype._onDragEnd=function(t){this._handleDragEnd(t)},s.prototype._handleDragEnd=function(){this.drag.dragging=!1;var t=this.drag.selection;t&&t.length?(t.forEach(function(t){t.node.xFixed=t.xFixed,t.node.yFixed=t.yFixed}),this.moving=!0,this.start()):this._redraw(),0==this.draggingNodes?this.emit("dragEnd",{nodeIds:[]}):this.emit("dragEnd",{nodeIds:this.getSelection().nodes})},s.prototype._onTap=function(t){var e=this._getPointer(t.gesture.center);this.pointerPosition=e,this._handleTap(e)},s.prototype._onDoubleTap=function(t){var e=this._getPointer(t.gesture.center);this._handleDoubleTap(e)},s.prototype._onHold=function(t){var e=this._getPointer(t.gesture.center);this.pointerPosition=e,this._handleOnHold(e)},s.prototype._onRelease=function(t){var e=this._getPointer(t.gesture.center);this._handleOnRelease(e)},s.prototype._onPinch=function(t){var e=this._getPointer(t.gesture.center);this.drag.pinched=!0,"scale"in this.pinch||(this.pinch.scale=1);var i=this.pinch.scale*t.gesture.scale;this._zoom(i,e)},s.prototype._zoom=function(t,e){if(1==this.constants.zoomable){var i=this._getScale();1e-5>t&&(t=1e-5),t>10&&(t=10);var s=null;void 0!==this.drag&&1==this.drag.dragging&&(s=this.DOMtoCanvas(this.drag.pointer));var o=this._getTranslation(),n=t/i,r=(1-n)*e.x+o.x*n,a=(1-n)*e.y+o.y*n;if(this.areaCenter={x:this._XconvertDOMtoCanvas(e.x),y:this._YconvertDOMtoCanvas(e.y)},this._setScale(t),this._setTranslation(r,a),this.updateClustersDefault(),null!=s){var h=this.canvasToDOM(s);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}return this._redraw(),t>i?this.emit("zoom",{direction:"+"}):this.emit("zoom",{direction:"-"}),t}},s.prototype._onMouseWheel=function(t){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i=this._getScale(),s=e/10;0>e&&(s/=1-s),i*=1+s;var o=h.fakeGesture(this,t),n=this._getPointer(o.center);this._zoom(i,n)}t.preventDefault()},s.prototype._onMouseMoveTitle=function(t){var e=h.fakeGesture(this,t),i=this._getPointer(e.center);this.popupObj&&this._checkHidePopup(i);var s=this,o=function(){s._checkShowPopup(i)};if(this.popupTimer&&clearInterval(this.popupTimer),this.drag.dragging||(this.popupTimer=setTimeout(o,this.constants.tooltip.delay)),1==this.constants.hover){for(var n in this.hoverObj.edges)this.hoverObj.edges.hasOwnProperty(n)&&(this.hoverObj.edges[n].hover=!1,delete this.hoverObj.edges[n]);var r=this._getNodeAt(i);null==r&&(r=this._getEdgeAt(i)),null!=r&&this._hoverObject(r);for(var a in this.hoverObj.nodes)this.hoverObj.nodes.hasOwnProperty(a)&&(r instanceof f&&r.id!=a||r instanceof g||null==r)&&(this._blurObject(this.hoverObj.nodes[a]),delete this.hoverObj.nodes[a]);this.redraw()}},s.prototype._checkShowPopup=function(t){var e,i={left:this._XconvertDOMtoCanvas(t.x),top:this._YconvertDOMtoCanvas(t.y),right:this._XconvertDOMtoCanvas(t.x),bottom:this._YconvertDOMtoCanvas(t.y)},s=this.popupObj;if(void 0==this.popupObj){var o=this.nodes;for(e in o)if(o.hasOwnProperty(e)){var n=o[e];if(void 0!==n.getTitle()&&n.isOverlappingWith(i)){this.popupObj=n;break}}}if(void 0===this.popupObj){var r=this.edges;for(e in r)if(r.hasOwnProperty(e)){var a=r[e];if(a.connected&&void 0!==a.getTitle()&&a.isOverlappingWith(i)){this.popupObj=a;break}}}if(this.popupObj){if(this.popupObj!=s){var h=this;h.popup||(h.popup=new v(h.frame,h.constants.tooltip)),h.popup.setPosition(t.x-3,t.y-3),h.popup.setText(h.popupObj.getTitle()),h.popup.show()}}else this.popup&&this.popup.hide()},s.prototype._checkHidePopup=function(t){this.popupObj&&this._getNodeAt(t)||(this.popupObj=void 0,this.popup&&this.popup.hide())},s.prototype.setSize=function(t,e){var i=!1,s=this.frame.canvas.width,o=this.frame.canvas.height;t!=this.constants.width||e!=this.constants.height||this.frame.style.width!=t||this.frame.style.height!=e?(this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=this.frame.canvas.clientWidth*this.pixelRatio,this.frame.canvas.height=this.frame.canvas.clientHeight*this.pixelRatio,this.constants.width=t,this.constants.height=e,i=!0):(this.frame.canvas.width!=this.frame.canvas.clientWidth*this.pixelRatio&&(this.frame.canvas.width=this.frame.canvas.clientWidth*this.pixelRatio,i=!0),this.frame.canvas.height!=this.frame.canvas.clientHeight*this.pixelRatio&&(this.frame.canvas.height=this.frame.canvas.clientHeight*this.pixelRatio,i=!0)),1==i&&this.emit("resize",{width:this.frame.canvas.width*this.pixelRatio,height:this.frame.canvas.height*this.pixelRatio,oldWidth:s*this.pixelRatio,oldHeight:o*this.pixelRatio})},s.prototype._setNodes=function(t){var e=this.nodesData;if(t instanceof d||t instanceof l)this.nodesData=t;else if(Array.isArray(t))this.nodesData=new d,this.nodesData.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.nodesData=new d}if(e&&a.forEach(this.nodesListeners,function(t,i){e.off(i,t)}),this.nodes={},this.nodesData){var i=this;a.forEach(this.nodesListeners,function(t,e){i.nodesData.on(e,t)});var s=this.nodesData.getIds();this._addNodes(s)}this._updateSelection()},s.prototype._addNodes=function(t){for(var e,i=0,s=t.length;s>i;i++){e=t[i];var o=this.nodesData.get(e),n=new f(o,this.images,this.groups,this.constants);if(this.nodes[e]=n,!(0!=n.xFixed&&0!=n.yFixed||null!==n.x&&null!==n.y)){var r=1*t.length+10,a=2*Math.PI*Math.random();0==n.xFixed&&(n.x=r*Math.cos(a)),0==n.yFixed&&(n.y=r*Math.sin(a))}this.moving=!0}this._updateNodeIndexList(),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this._updateCalculationNodes(),this._reconnectEdges(),this._updateValueRange(this.nodes),this.updateLabels()},s.prototype._updateNodes=function(t,e){for(var i=this.nodes,s=0,o=t.length;o>s;s++){var n=t[s],r=i[n],a=e[s];r?r.setProperties(a,this.constants):(r=new f(properties,this.images,this.groups,this.constants),i[n]=r)}this.moving=!0,1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this._updateNodeIndexList(),this._updateValueRange(i)},s.prototype._removeNodes=function(t){for(var e=this.nodes,i=0,s=t.length;s>i;i++){var o=t[i];delete e[o]}this._updateNodeIndexList(),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this._updateCalculationNodes(),this._reconnectEdges(),this._updateSelection(),this._updateValueRange(e)},s.prototype._setEdges=function(t){var e=this.edgesData;if(t instanceof d||t instanceof l)this.edgesData=t;else if(Array.isArray(t))this.edgesData=new d,this.edgesData.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.edgesData=new d}if(e&&a.forEach(this.edgesListeners,function(t,i){e.off(i,t)}),this.edges={},this.edgesData){var i=this;a.forEach(this.edgesListeners,function(t,e){i.edgesData.on(e,t)});var s=this.edgesData.getIds();this._addEdges(s)}this._reconnectEdges()},s.prototype._addEdges=function(t){for(var e=this.edges,i=this.edgesData,s=0,o=t.length;o>s;s++){var n=t[s],r=e[n];r&&r.disconnect();var a=i.get(n,{showInternalIds:!0});e[n]=new g(a,this,this.constants)}this.moving=!0,this._updateValueRange(e),this._createBezierNodes(),this._updateCalculationNodes(),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout())},s.prototype._updateEdges=function(t){for(var e=this.edges,i=this.edgesData,s=0,o=t.length;o>s;s++){var n=t[s],r=i.get(n),a=e[n];a?(a.disconnect(),a.setProperties(r,this.constants),a.connect()):(a=new g(r,this,this.constants),this.edges[n]=a)}this._createBezierNodes(),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this.moving=!0,this._updateValueRange(e)},s.prototype._removeEdges=function(t){for(var e=this.edges,i=0,s=t.length;s>i;i++){var o=t[i],n=e[o];n&&(null!=n.via&&delete this.sectors.support.nodes[n.via.id],n.disconnect(),delete e[o])}this.moving=!0,this._updateValueRange(e),1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),this._updateCalculationNodes()},s.prototype._reconnectEdges=function(){var t,e=this.nodes,i=this.edges;for(t in e)e.hasOwnProperty(t)&&(e[t].edges=[],e[t].dynamicEdges=[]);for(t in i)if(i.hasOwnProperty(t)){var s=i[t];s.from=null,s.to=null,s.connect()}},s.prototype._updateValueRange=function(t){var e,i=void 0,s=void 0;for(e in t)if(t.hasOwnProperty(e)){var o=t[e].getValue();void 0!==o&&(i=void 0===i?o:Math.min(o,i),s=void 0===s?o:Math.max(o,s))}if(void 0!==i&&void 0!==s)for(e in t)t.hasOwnProperty(e)&&t[e].setValueRange(i,s)},s.prototype.redraw=function(){this.setSize(this.constants.width,this.constants.height),this._redraw()},s.prototype._redraw=function(t){var e=this.frame.canvas.getContext("2d");e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.frame.canvas.width*this.pixelRatio,s=this.frame.canvas.height*this.pixelRatio;e.clearRect(0,0,i,s),e.save(),e.translate(this.translation.x,this.translation.y),e.scale(this.scale,this.scale),this.canvasTopLeft={x:this._XconvertDOMtoCanvas(0),y:this._YconvertDOMtoCanvas(0)},this.canvasBottomRight={x:this._XconvertDOMtoCanvas(this.frame.canvas.clientWidth*this.pixelRatio),y:this._YconvertDOMtoCanvas(this.frame.canvas.clientHeight*this.pixelRatio)},1!=t&&(this._doInAllSectors("_drawAllSectorNodes",e),(0==this.drag.dragging||void 0===this.drag.dragging||0==this.constants.hideEdgesOnDrag)&&this._doInAllSectors("_drawEdges",e)),(0==this.drag.dragging||void 0===this.drag.dragging||0==this.constants.hideNodesOnDrag)&&this._doInAllSectors("_drawNodes",e,!1),1!=t&&1==this.controlNodesActive&&this._doInAllSectors("_drawControlNodes",e),e.restore(),1==t&&e.clearRect(0,0,i,s)},s.prototype._setTranslation=function(t,e){void 0===this.translation&&(this.translation={x:0,y:0}),void 0!==t&&(this.translation.x=t),void 0!==e&&(this.translation.y=e),this.emit("viewChanged")},s.prototype._getTranslation=function(){return{x:this.translation.x,y:this.translation.y}},s.prototype._setScale=function(t){this.scale=t},s.prototype._getScale=function(){return this.scale},s.prototype._XconvertDOMtoCanvas=function(t){return(t-this.translation.x)/this.scale},s.prototype._XconvertCanvasToDOM=function(t){return t*this.scale+this.translation.x},s.prototype._YconvertDOMtoCanvas=function(t){return(t-this.translation.y)/this.scale},s.prototype._YconvertCanvasToDOM=function(t){return t*this.scale+this.translation.y},s.prototype.canvasToDOM=function(t){return{x:this._XconvertCanvasToDOM(t.x),y:this._YconvertCanvasToDOM(t.y)}},s.prototype.DOMtoCanvas=function(t){return{x:this._XconvertDOMtoCanvas(t.x),y:this._YconvertDOMtoCanvas(t.y)}},s.prototype._drawNodes=function(t,e){void 0===e&&(e=!1);var i=this.nodes,s=[];for(var o in i)i.hasOwnProperty(o)&&(i[o].setScaleAndPos(this.scale,this.canvasTopLeft,this.canvasBottomRight),i[o].isSelected()?s.push(o):(i[o].inArea()||e)&&i[o].draw(t));for(var n=0,r=s.length;r>n;n++)(i[s[n]].inArea()||e)&&i[s[n]].draw(t)},s.prototype._drawEdges=function(t){var e=this.edges;for(var i in e)if(e.hasOwnProperty(i)){var s=e[i];s.setScale(this.scale),s.connected&&e[i].draw(t)}},s.prototype._drawControlNodes=function(t){var e=this.edges;for(var i in e)e.hasOwnProperty(i)&&e[i]._drawControlNodes(t)},s.prototype._stabilize=function(){1==this.constants.freezeForStabilization&&this._freezeDefinedNodes();for(var t=0;this.moving&&t0)for(t in i)i.hasOwnProperty(t)&&(i[t].discreteStepLimited(e,this.constants.maxVelocity),s=!0);else for(t in i)i.hasOwnProperty(t)&&(i[t].discreteStep(e),s=!0);if(1==s){var o=this.constants.minVelocity/Math.max(this.scale,.05);return o>.5*this.constants.maxVelocity?!0:this._isMoving(o)}return!1},s.prototype._physicsTick=function(){if(!this.freezeSimulation&&1==this.moving){var t=!1,e=!1;this._doInAllActiveSectors("_initializeForceCalculation");var i=this._doInAllActiveSectors("_discreteStepNodes");1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic&&(e=this._doInSupportSector("_discreteStepNodes"));for(var s=0;s0){var i=this,s={iterations:i.stabilizationIterations};i.stabilizationIterations=0,i.startedStabilization=!1,setTimeout(function(){i.emit("stabilized",s)},0)}},s.prototype._handleNavigation=function(){if(0!=this.xIncrement||0!=this.yIncrement){var t=this._getTranslation();this._setTranslation(t.x+this.xIncrement,t.y+this.yIncrement)}if(0!=this.zoomIncrement){var e={x:this.frame.canvas.clientWidth/2,y:this.frame.canvas.clientHeight/2};this._zoom(this.scale*(1+this.zoomIncrement),e)}},s.prototype.toggleFreeze=function(){0==this.freezeSimulation?this.freezeSimulation=!0:(this.freezeSimulation=!1,this.start())},s.prototype._configureSmoothCurves=function(t){if(void 0===t&&(t=!0),1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic){this._createBezierNodes();for(var e in this.sectors.support.nodes)this.sectors.support.nodes.hasOwnProperty(e)&&void 0===this.edges[this.sectors.support.nodes[e].parentEdgeId]&&delete this.sectors.support.nodes[e]}else{this.sectors.support.nodes={};for(var i in this.edges)this.edges.hasOwnProperty(i)&&(this.edges[i].via=null)}this._updateCalculationNodes(),t||(this.moving=!0,this.start())},s.prototype._createBezierNodes=function(){if(1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic)for(var t in this.edges)if(this.edges.hasOwnProperty(t)){var e=this.edges[t];if(null==e.via){var i="edgeId:".concat(e.id);this.sectors.support.nodes[i]=new f({id:i,mass:1,shape:"circle",image:"",internalMultiplier:1},{},{},this.constants),e.via=this.sectors.support.nodes[i],e.via.parentEdgeId=e.id,e.positionBezierNode()}}},s.prototype._initializeMixinLoaders=function(){for(var t in y)y.hasOwnProperty(t)&&(s.prototype[t]=y[t])},s.prototype.storePosition=function(){console.log("storePosition is depricated: use .storePositions() from now on."),this.storePositions()},s.prototype.storePositions=function(){var t=[];for(var e in this.nodes)if(this.nodes.hasOwnProperty(e)){var i=this.nodes[e],s=!this.nodes.xFixed,o=!this.nodes.yFixed;(this.nodesData._data[e].x!=Math.round(i.x)||this.nodesData._data[e].y!=Math.round(i.y))&&t.push({id:e,x:Math.round(i.x),y:Math.round(i.y),allowedToMoveX:s,allowedToMoveY:o})}this.nodesData.update(t)},s.prototype.getPositions=function(t){var e={};if(void 0!==t){if(1==Array.isArray(t)){for(var i=0;i=1&&(this.easingTime=0,this._redraw=null!=this.lockedOnNodeId?this._lockedRedraw:this._classicRedraw,this.emit("animationFinished"))},s.prototype._classicRedraw=function(){},s.prototype.isActive=function(){return!this.activator||this.activator.active},s.prototype.setScale=function(){return this._setScale()},s.prototype.getScale=function(){return this._getScale()},s.prototype.getCenterCoordinates=function(){return this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight})},t.exports=s},function(t,e,i){function s(t,e,i){if(!e)throw"No network provided";var s=["edges","physics"],n=o.selectiveBridgeObject(s,i);this.options=n.edges,this.physics=n.physics,this.options.smoothCurves=i.smoothCurves,this.network=e,this.id=void 0,this.fromId=void 0,this.toId=void 0,this.title=void 0,this.widthSelected=this.options.width*this.options.widthSelectionMultiplier,this.value=void 0,this.selected=!1,this.hover=!1,this.labelDimensions={top:0,left:0,width:0,height:0,yLine:0},this.dirtyLabel=!0,this.from=null,this.to=null,this.via=null,this.fromBackup=null,this.toBackup=null,this.originalFromId=[],this.originalToId=[],this.connected=!1,this.widthFixed=!1,this.lengthFixed=!1,this.setProperties(t),this.controlNodesEnabled=!1,this.controlNodes={from:null,to:null,positions:{}},this.connectedNode=null}var o=i(1),n=i(40);s.prototype.setProperties=function(t){if(t){var e=["style","fontSize","fontFace","fontColor","fontFill","width","widthSelectionMultiplier","hoverWidth","arrowScaleFactor","dash","inheritColor"];switch(o.selectiveDeepExtend(e,this.options,t),void 0!==t.from&&(this.fromId=t.from),void 0!==t.to&&(this.toId=t.to),void 0!==t.id&&(this.id=t.id),void 0!==t.label&&(this.label=t.label,this.dirtyLabel=!0),void 0!==t.title&&(this.title=t.title),void 0!==t.value&&(this.value=t.value),void 0!==t.length&&(this.physics.springLength=t.length),void 0!==t.color&&(this.options.inheritColor=!1,o.isString(t.color)?(this.options.color.color=t.color,this.options.color.highlight=t.color):(void 0!==t.color.color&&(this.options.color.color=t.color.color),void 0!==t.color.highlight&&(this.options.color.highlight=t.color.highlight),void 0!==t.color.hover&&(this.options.color.hover=t.color.hover))),this.connect(),this.widthFixed=this.widthFixed||void 0!==t.width,this.lengthFixed=this.lengthFixed||void 0!==t.length,this.widthSelected=this.options.width*this.options.widthSelectionMultiplier,this.options.style){case"line":this.draw=this._drawLine;break;case"arrow":this.draw=this._drawArrow;break;case"arrow-center":this.draw=this._drawArrowCenter;break;case"dash-line":this.draw=this._drawDashLine;break;default:this.draw=this._drawLine}}},s.prototype.connect=function(){this.disconnect(),this.from=this.network.nodes[this.fromId]||null,this.to=this.network.nodes[this.toId]||null,this.connected=this.from&&this.to,this.connected?(this.from.attachEdge(this),this.to.attachEdge(this)):(this.from&&this.from.detachEdge(this),this.to&&this.to.detachEdge(this))},s.prototype.disconnect=function(){this.from&&(this.from.detachEdge(this),this.from=null),this.to&&(this.to.detachEdge(this),this.to=null),this.connected=!1},s.prototype.getTitle=function(){return"function"==typeof this.title?this.title():this.title},s.prototype.getValue=function(){return this.value},s.prototype.setValueRange=function(t,e){if(!this.widthFixed&&void 0!==this.value){var i=(this.options.widthMax-this.options.widthMin)/(e-t);this.options.width=(this.value-t)*i+this.options.widthMin,this.widthSelected=this.options.width*this.options.widthSelectionMultiplier}},s.prototype.draw=function(){throw"Method draw not initialized in edge"},s.prototype.isOverlappingWith=function(t){if(this.connected){var e=10,i=this.from.x,s=this.from.y,o=this.to.x,n=this.to.y,r=t.left,a=t.top,h=this._getDistanceToEdge(i,s,o,n,r,a);return e>h}return!1},s.prototype._getColor=function(){var t=this.options.color;return"to"==this.options.inheritColor?t={highlight:this.to.options.color.highlight.border,hover:this.to.options.color.hover.border,color:this.to.options.color.border}:("from"==this.options.inheritColor||1==this.options.inheritColor)&&(t={highlight:this.from.options.color.highlight.border,hover:this.from.options.color.hover.border,color:this.from.options.color.border}),1==this.selected?t.highlight:1==this.hover?t.hover:t.color +},s.prototype._drawLine=function(t){if(t.strokeStyle=this._getColor(),t.lineWidth=this._getLineWidth(),this.from!=this.to){var e,i=this._line(t);if(this.label){if(1==this.options.smoothCurves.enabled&&null!=i){var s=.5*(.5*(this.from.x+i.x)+.5*(this.to.x+i.x)),o=.5*(.5*(this.from.y+i.y)+.5*(this.to.y+i.y));e={x:s,y:o}}else e=this._pointOnLine(.5);this._label(t,this.label,e.x,e.y)}}else{var n,r,a=this.physics.springLength/4,h=this.from;h.width||h.resize(t),h.width>h.height?(n=h.x+h.width/2,r=h.y-a):(n=h.x+a,r=h.y-h.height/2),this._circle(t,n,r,a),e=this._pointOnCircle(n,r,a,.5),this._label(t,this.label,e.x,e.y)}},s.prototype._getLineWidth=function(){return 1==this.selected?Math.max(Math.min(this.widthSelected,this.options.widthMax),.3*this.networkScaleInv):1==this.hover?Math.max(Math.min(this.options.hoverWidth,this.options.widthMax),.3*this.networkScaleInv):Math.max(this.options.width,.3*this.networkScaleInv)},s.prototype._getViaCoordinates=function(){var t=null,e=null,i=this.options.smoothCurves.roundness,s=this.options.smoothCurves.type,o=Math.abs(this.from.x-this.to.x),n=Math.abs(this.from.y-this.to.y);return"discrete"==s||"diagonalCross"==s?Math.abs(this.from.x-this.to.x)this.to.y?this.from.xthis.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"==s&&(t=i*n>o?this.from.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>this.to.y?this.from.xthis.to.x&&(t=this.from.x-i*o,e=this.from.y-i*o):this.from.ythis.to.x&&(t=this.from.x-i*o,e=this.from.y+i*o)),"discrete"==s&&(e=i*o>n?this.from.y:e)):"straightCross"==s?Math.abs(this.from.x-this.to.x)Math.abs(this.from.y-this.to.y)&&(t=this.from.xthis.to.y?this.from.xthis.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>this.to.y?this.from.xe?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*o,e=this.from.y-i*o,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*o,e=this.from.y+i*o,e=this.to.yd;d++){var l=t.measureText(n[d]).width;h=l>h?l:h}var c=this.options.fontSize*r,p=i-h/2,u=s-c/2;this.labelDimensions={top:u,left:p,width:h,height:c,yLine:o}}void 0!==this.options.fontFill&&null!==this.options.fontFill&&"none"!==this.options.fontFill&&(t.fillStyle=this.options.fontFill,t.fillRect(this.labelDimensions.left,this.labelDimensions.top,this.labelDimensions.width,this.labelDimensions.height)),t.fillStyle=this.options.fontColor||"black",t.textAlign="center",t.textBaseline="middle",o=this.labelDimensions.yLine;for(var d=0;r>d;d++)t.fillText(n[d],i,o),o+=a}},s.prototype._drawDashLine=function(t){t.strokeStyle=this._getColor(),t.lineWidth=this._getLineWidth();var e=null;if(void 0!==t.mozDash||void 0!==t.setLineDash){var i=[0];i=void 0!==this.options.dash.length&&void 0!==this.options.dash.gap?[this.options.dash.length,this.options.dash.gap]:[5,5],"undefined"!=typeof t.setLineDash?(t.setLineDash(i),t.lineDashOffset=0):(t.mozDash=i,t.mozDashOffset=0),e=this._line(t),"undefined"!=typeof t.setLineDash?(t.setLineDash([0]),t.lineDashOffset=0):(t.mozDash=[0],t.mozDashOffset=0)}else t.beginPath(),t.lineCap="round",void 0!==this.options.dash.altLength?t.dashedLine(this.from.x,this.from.y,this.to.x,this.to.y,[this.options.dash.length,this.options.dash.gap,this.options.dash.altLength,this.options.dash.gap]):void 0!==this.options.dash.length&&void 0!==this.options.dash.gap?t.dashedLine(this.from.x,this.from.y,this.to.x,this.to.y,[this.options.dash.length,this.options.dash.gap]):(t.moveTo(this.from.x,this.from.y),t.lineTo(this.to.x,this.to.y)),t.stroke();if(this.label){var s;if(1==this.options.smoothCurves.enabled&&null!=e){var o=.5*(.5*(this.from.x+e.x)+.5*(this.to.x+e.x)),n=.5*(.5*(this.from.y+e.y)+.5*(this.to.y+e.y));s={x:o,y:n}}else s=this._pointOnLine(.5);this._label(t,this.label,s.x,s.y)}},s.prototype._pointOnLine=function(t){return{x:(1-t)*this.from.x+t*this.to.x,y:(1-t)*this.from.y+t*this.to.y}},s.prototype._pointOnCircle=function(t,e,i,s){var o=2*(s-3/8)*Math.PI;return{x:t+i*Math.cos(o),y:e-i*Math.sin(o)}},s.prototype._drawArrowCenter=function(t){var e;if(t.strokeStyle=this._getColor(),t.fillStyle=t.strokeStyle,t.lineWidth=this._getLineWidth(),this.from!=this.to){var i=this._line(t),s=Math.atan2(this.to.y-this.from.y,this.to.x-this.from.x),o=(10+5*this.options.width)*this.options.arrowScaleFactor;if(1==this.options.smoothCurves.enabled&&null!=i){var n=.5*(.5*(this.from.x+i.x)+.5*(this.to.x+i.x)),r=.5*(.5*(this.from.y+i.y)+.5*(this.to.y+i.y));e={x:n,y:r}}else e=this._pointOnLine(.5);t.arrow(e.x,e.y,s,o),t.fill(),t.stroke(),this.label&&this._label(t,this.label,e.x,e.y)}else{var a,h,d=.25*Math.max(100,this.physics.springLength),l=this.from;l.width||l.resize(t),l.width>l.height?(a=l.x+.5*l.width,h=l.y-d):(a=l.x+d,h=l.y-.5*l.height),this._circle(t,a,h,d);var s=.2*Math.PI,o=(10+5*this.options.width)*this.options.arrowScaleFactor;e=this._pointOnCircle(a,h,d,.5),t.arrow(e.x,e.y,s,o),t.fill(),t.stroke(),this.label&&(e=this._pointOnCircle(a,h,d,.5),this._label(t,this.label,e.x,e.y))}},s.prototype._drawArrow=function(t){t.strokeStyle=this._getColor(),t.fillStyle=t.strokeStyle,t.lineWidth=this._getLineWidth();var e,i;if(this.from!=this.to){e=Math.atan2(this.to.y-this.from.y,this.to.x-this.from.x);var s,o=this.to.x-this.from.x,n=this.to.y-this.from.y,r=Math.sqrt(o*o+n*n),a=this.from.distanceToBorder(t,e+Math.PI),h=(r-a)/r,d=h*this.from.x+(1-h)*this.to.x,l=h*this.from.y+(1-h)*this.to.y;1==this.options.smoothCurves.dynamic&&1==this.options.smoothCurves.enabled?s=this.via:1==this.options.smoothCurves.enabled&&(s=this._getViaCoordinates()),1==this.options.smoothCurves.enabled&&null!=s.x&&(e=Math.atan2(this.to.y-s.y,this.to.x-s.x),o=this.to.x-s.x,n=this.to.y-s.y,r=Math.sqrt(o*o+n*n));var c,p,u=this.to.distanceToBorder(t,e),m=(r-u)/r;if(1==this.options.smoothCurves.enabled&&null!=s.x?(c=(1-m)*s.x+m*this.to.x,p=(1-m)*s.y+m*this.to.y):(c=(1-m)*this.from.x+m*this.to.x,p=(1-m)*this.from.y+m*this.to.y),t.beginPath(),t.moveTo(d,l),1==this.options.smoothCurves.enabled&&null!=s.x?t.quadraticCurveTo(s.x,s.y,c,p):t.lineTo(c,p),t.stroke(),i=(10+5*this.options.width)*this.options.arrowScaleFactor,t.arrow(c,p,e,i),t.fill(),t.stroke(),this.label){var f;if(1==this.options.smoothCurves.enabled&&null!=s){var g=.5*(.5*(this.from.x+s.x)+.5*(this.to.x+s.x)),v=.5*(.5*(this.from.y+s.y)+.5*(this.to.y+s.y));f={x:g,y:v}}else f=this._pointOnLine(.5);this._label(t,this.label,f.x,f.y)}}else{var y,b,_,x=this.from,w=.25*Math.max(100,this.physics.springLength);x.width||x.resize(t),x.width>x.height?(y=x.x+.5*x.width,b=x.y-w,_={x:y,y:x.y,angle:.9*Math.PI}):(y=x.x+w,b=x.y-.5*x.height,_={x:x.x,y:b,angle:.6*Math.PI}),t.beginPath(),t.arc(y,b,w,0,2*Math.PI,!1),t.stroke();var i=(10+5*this.options.width)*this.options.arrowScaleFactor;t.arrow(_.x,_.y,_.angle,i),t.fill(),t.stroke(),this.label&&(f=this._pointOnCircle(y,b,w,.5),this._label(t,this.label,f.x,f.y))}},s.prototype._getDistanceToEdge=function(t,e,i,s,o,n){var r=0;if(this.from!=this.to)if(1==this.options.smoothCurves.enabled){var a,h;if(1==this.options.smoothCurves.enabled&&1==this.options.smoothCurves.dynamic)a=this.via.x,h=this.via.y;else{var d=this._getViaCoordinates();a=d.x,h=d.y}var l,c,p,u,m,f,g,v=1e9;for(c=0;10>c;c++)p=.1*c,u=Math.pow(1-p,2)*t+2*p*(1-p)*a+Math.pow(p,2)*i,m=Math.pow(1-p,2)*e+2*p*(1-p)*h+Math.pow(p,2)*s,c>0&&(l=this._getDistanceToLine(f,g,u,m,o,n),v=v>l?l:v),f=u,g=m;r=v}else r=this._getDistanceToLine(t,e,i,s,o,n);else{var u,m,y,b,_=.25*this.physics.springLength,x=this.from;x.width>x.height?(u=x.x+.5*x.width,m=x.y-_):(u=x.x+_,m=x.y-.5*x.height),y=u-o,b=m-n,r=Math.abs(Math.sqrt(y*y+b*b)-_)}return this.labelDimensions.lefto&&this.labelDimensions.topn?0:r},s.prototype._getDistanceToLine=function(t,e,i,s,o,n){var r=i-t,a=s-e,h=r*r+a*a,d=((o-t)*r+(n-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,c=e+d*a,p=l-o,u=c-n;return Math.sqrt(p*p+u*u)},s.prototype.setScale=function(t){this.networkScaleInv=1/t},s.prototype.select=function(){this.selected=!0},s.prototype.unselect=function(){this.selected=!1},s.prototype.positionBezierNode=function(){null!==this.via&&null!==this.from&&null!==this.to?(this.via.x=.5*(this.from.x+this.to.x),this.via.y=.5*(this.from.y+this.to.y)):(this.via.x=0,this.via.y=0)},s.prototype._drawControlNodes=function(t){if(1==this.controlNodesEnabled){if(null===this.controlNodes.from&&null===this.controlNodes.to){var e="edgeIdFrom:".concat(this.id),i="edgeIdTo:".concat(this.id),s={nodes:{group:"",radius:8},physics:{damping:0},clustering:{maxNodeSizeIncrements:0,nodeScaling:{width:0,height:0,radius:0}}};this.controlNodes.from=new n({id:e,shape:"dot",color:{background:"#ff4e00",border:"#3c3c3c",highlight:{background:"#07f968"}}},{},{},s),this.controlNodes.to=new n({id:i,shape:"dot",color:{background:"#ff4e00",border:"#3c3c3c",highlight:{background:"#07f968"}}},{},{},s)}0==this.controlNodes.from.selected&&0==this.controlNodes.to.selected&&(this.controlNodes.positions=this.getControlNodePositions(t),this.controlNodes.from.x=this.controlNodes.positions.from.x,this.controlNodes.from.y=this.controlNodes.positions.from.y,this.controlNodes.to.x=this.controlNodes.positions.to.x,this.controlNodes.to.y=this.controlNodes.positions.to.y),this.controlNodes.from.draw(t),this.controlNodes.to.draw(t)}else this.controlNodes={from:null,to:null,positions:{}}},s.prototype._enableControlNodes=function(){this.fromBackup=this.from,this.toBackup=this.to,this.controlNodesEnabled=!0},s.prototype._disableControlNodes=function(){this.fromId=this.from.id,this.toId=this.to.id,this.fromId!=this.fromBackup.id?this.fromBackup.detachEdge(this):this.toId!=this.toBackup.id&&this.toBackup.detachEdge(this),this.fromBackup=null,this.toBackup=null,this.controlNodesEnabled=!1},s.prototype._getSelectedControlNode=function(t,e){var i=this.controlNodes.positions,s=Math.sqrt(Math.pow(t-i.from.x,2)+Math.pow(e-i.from.y,2)),o=Math.sqrt(Math.pow(t-i.to.x,2)+Math.pow(e-i.to.y,2));return 15>s?(this.connectedNode=this.from,this.from=this.controlNodes.from,this.controlNodes.from):15>o?(this.connectedNode=this.to,this.to=this.controlNodes.to,this.controlNodes.to):null},s.prototype._restoreControlNodes=function(){1==this.controlNodes.from.selected?(this.from=this.connectedNode,this.connectedNode=null,this.controlNodes.from.unselect()):1==this.controlNodes.to.selected&&(this.to=this.connectedNode,this.connectedNode=null,this.controlNodes.to.unselect())},s.prototype.getControlNodePositions=function(t){var e,i=Math.atan2(this.to.y-this.from.y,this.to.x-this.from.x),s=this.to.x-this.from.x,o=this.to.y-this.from.y,n=Math.sqrt(s*s+o*o),r=this.from.distanceToBorder(t,i+Math.PI),a=(n-r)/n,h=a*this.from.x+(1-a)*this.to.x,d=a*this.from.y+(1-a)*this.to.y;1==this.options.smoothCurves.dynamic&&1==this.options.smoothCurves.enabled?e=this.via:1==this.options.smoothCurves.enabled&&(e=this._getViaCoordinates()),1==this.options.smoothCurves.enabled&&null!=e.x&&(i=Math.atan2(this.to.y-e.y,this.to.x-e.x),s=this.to.x-e.x,o=this.to.y-e.y,n=Math.sqrt(s*s+o*o));var l,c,p=this.to.distanceToBorder(t,i),u=(n-p)/n;return 1==this.options.smoothCurves.enabled&&null!=e.x?(l=(1-u)*e.x+u*this.to.x,c=(1-u)*e.y+u*this.to.y):(l=(1-u)*this.from.x+u*this.to.x,c=(1-u)*this.from.y+u*this.to.y),{from:{x:h,y:d},to:{x:l,y:c}}},t.exports=s},function(t,e,i){function s(){this.clear(),this.defaultIndex=0}var o=i(1);s.DEFAULT=[{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},{border:"#FFA500",background:"#FFFF00",highlight:{border:"#FFA500",background:"#FFFFA3"},hover:{border:"#FFA500",background:"#FFFFA3"}},{border:"#FA0A10",background:"#FB7E81",highlight:{border:"#FA0A10",background:"#FFAFB1"},hover:{border:"#FA0A10",background:"#FFAFB1"}},{border:"#41A906",background:"#7BE141",highlight:{border:"#41A906",background:"#A1EC76"},hover:{border:"#41A906",background:"#A1EC76"}},{border:"#E129F0",background:"#EB7DF4",highlight:{border:"#E129F0",background:"#F0B3F5"},hover:{border:"#E129F0",background:"#F0B3F5"}},{border:"#7C29F0",background:"#AD85E4",highlight:{border:"#7C29F0",background:"#D3BDF0"},hover:{border:"#7C29F0",background:"#D3BDF0"}},{border:"#C37F00",background:"#FFA807",highlight:{border:"#C37F00",background:"#FFCA66"},hover:{border:"#C37F00",background:"#FFCA66"}},{border:"#4220FB",background:"#6E6EFD",highlight:{border:"#4220FB",background:"#9B9BFD"},hover:{border:"#4220FB",background:"#9B9BFD"}},{border:"#FD5A77",background:"#FFC0CB",highlight:{border:"#FD5A77",background:"#FFD1D9"},hover:{border:"#FD5A77",background:"#FFD1D9"}},{border:"#4AD63A",background:"#C2FABC",highlight:{border:"#4AD63A",background:"#E6FFE3"},hover:{border:"#4AD63A",background:"#E6FFE3"}}],s.prototype.clear=function(){this.groups={},this.groups.length=function(){var t=0;for(var e in this)this.hasOwnProperty(e)&&t++;return t}},s.prototype.get=function(t){var e=this.groups[t];if(void 0==e){var i=this.defaultIndex%s.DEFAULT.length;this.defaultIndex++,e={},e.color=s.DEFAULT[i],this.groups[t]=e}return e},s.prototype.add=function(t,e){return this.groups[t]=e,e.color&&(e.color=o.parseColor(e.color)),e},t.exports=s},function(t){function e(){this.images={},this.callback=void 0}e.prototype.setOnloadCallback=function(t){this.callback=t},e.prototype.load=function(t,e){var i=this.images[t];if(void 0==i){var s=this;i=new Image,this.images[t]=i,i.onload=function(){s.callback&&s.callback(this)},i.onerror=function(){this.src=e,s.callback&&s.callback(this)},i.src=t}return i},t.exports=e},function(t,e,i){function s(t,e,i,s){var n=o.selectiveBridgeObject(["nodes"],s);this.options=n.nodes,this.selected=!1,this.hover=!1,this.edges=[],this.dynamicEdges=[],this.reroutedEdges={},this.fontDrawThreshold=3,this.id=void 0,this.x=null,this.y=null,this.allowedToMoveX=!1,this.allowedToMoveY=!1,this.xFixed=!1,this.yFixed=!1,this.horizontalAlignLeft=!0,this.verticalAlignTop=!0,this.baseRadiusValue=s.nodes.radius,this.radiusFixed=!1,this.level=-1,this.preassignedLevel=!1,this.hierarchyEnumerated=!1,this.labelDimensions={top:0,left:0,width:0,height:0,yLine:0},this.boundingBox={top:0,left:0,right:0,bottom:0},this.imagelist=e,this.grouplist=i,this.fx=0,this.fy=0,this.vx=0,this.vy=0,this.damping=s.physics.damping,this.fixedData={x:null,y:null},this.setProperties(t,n),this.resetCluster(),this.dynamicEdgesLength=0,this.clusterSession=0,this.clusterSizeWidthFactor=s.clustering.nodeScaling.width,this.clusterSizeHeightFactor=s.clustering.nodeScaling.height,this.clusterSizeRadiusFactor=s.clustering.nodeScaling.radius,this.maxNodeSizeIncrements=s.clustering.maxNodeSizeIncrements,this.growthIndicator=0,this.networkScaleInv=1,this.networkScale=1,this.canvasTopLeft={x:-300,y:-300},this.canvasBottomRight={x:300,y:300},this.parentEdgeId=null}var o=i(1);s.prototype.resetCluster=function(){this.formationScale=void 0,this.clusterSize=1,this.containedNodes={},this.containedEdges={},this.clusterSessions=[]},s.prototype.attachEdge=function(t){-1==this.edges.indexOf(t)&&this.edges.push(t),-1==this.dynamicEdges.indexOf(t)&&this.dynamicEdges.push(t),this.dynamicEdgesLength=this.dynamicEdges.length},s.prototype.detachEdge=function(t){var e=this.edges.indexOf(t);-1!=e&&this.edges.splice(e,1),e=this.dynamicEdges.indexOf(t),-1!=e&&this.dynamicEdges.splice(e,1),this.dynamicEdgesLength=this.dynamicEdges.length},s.prototype.setProperties=function(t,e){if(t){var i=["borderWidth","borderWidthSelected","shape","image","brokenImage","radius","fontColor","fontSize","fontFace","fontFill","group","mass"];if(o.selectiveDeepExtend(i,this.options,t),void 0!==t.id&&(this.id=t.id),void 0!==t.label&&(this.label=t.label,this.originalLabel=t.label),void 0!==t.title&&(this.title=t.title),void 0!==t.x&&(this.x=t.x),void 0!==t.y&&(this.y=t.y),void 0!==t.value&&(this.value=t.value),void 0!==t.level&&(this.level=t.level,this.preassignedLevel=!0),void 0!==t.horizontalAlignLeft&&(this.horizontalAlignLeft=t.horizontalAlignLeft),void 0!==t.verticalAlignTop&&(this.verticalAlignTop=t.verticalAlignTop),void 0!==t.triggerFunction&&(this.triggerFunction=t.triggerFunction),void 0===this.id)throw"Node must have an id";if("number"==typeof this.options.group||"string"==typeof this.options.group&&""!=this.options.group){var s=this.grouplist.get(this.options.group);for(var n in s)s.hasOwnProperty(n)&&(this.options[n]=s[n])}else void 0===t.color&&(this.options.color=e.nodes.color);if(void 0!==t.radius&&(this.baseRadiusValue=this.options.radius),void 0!==t.color&&(this.options.color=o.parseColor(t.color)),void 0!==this.options.image&&""!=this.options.image){if(!this.imagelist)throw"No imagelist provided";this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage)}switch(void 0!==t.allowedToMoveX?(this.xFixed=!t.allowedToMoveX,this.allowedToMoveX=t.allowedToMoveX):void 0!==t.x&&0==this.allowedToMoveX&&(this.xFixed=!0),void 0!==t.allowedToMoveY?(this.yFixed=!t.allowedToMoveY,this.allowedToMoveY=t.allowedToMoveY):void 0!==t.y&&0==this.allowedToMoveY&&(this.yFixed=!0),this.radiusFixed=this.radiusFixed||void 0!==t.radius,"image"==this.options.shape&&(this.options.radiusMin=e.nodes.widthMin,this.options.radiusMax=e.nodes.widthMax),this.options.shape){case"database":this.draw=this._drawDatabase,this.resize=this._resizeDatabase;break;case"box":this.draw=this._drawBox,this.resize=this._resizeBox;break;case"circle":this.draw=this._drawCircle,this.resize=this._resizeCircle;break;case"ellipse":this.draw=this._drawEllipse,this.resize=this._resizeEllipse;break;case"image":this.draw=this._drawImage,this.resize=this._resizeImage;break;case"text":this.draw=this._drawText,this.resize=this._resizeText;break;case"dot":this.draw=this._drawDot,this.resize=this._resizeShape;break;case"square":this.draw=this._drawSquare,this.resize=this._resizeShape;break;case"triangle":this.draw=this._drawTriangle,this.resize=this._resizeShape;break;case"triangleDown":this.draw=this._drawTriangleDown,this.resize=this._resizeShape;break;case"star":this.draw=this._drawStar,this.resize=this._resizeShape;break;default:this.draw=this._drawEllipse,this.resize=this._resizeEllipse}this._reset()}},s.prototype.select=function(){this.selected=!0,this._reset()},s.prototype.unselect=function(){this.selected=!1,this._reset()},s.prototype.clearSizeCache=function(){this._reset()},s.prototype._reset=function(){this.width=void 0,this.height=void 0},s.prototype.getTitle=function(){return"function"==typeof this.title?this.title():this.title},s.prototype.distanceToBorder=function(t,e){var i=1;switch(this.width||this.resize(t),this.options.shape){case"circle":case"dot":return this.options.radius+i;case"ellipse":var s=this.width/2,o=this.height/2,n=Math.sin(e)*s,r=Math.cos(e)*o;return s*o/Math.sqrt(n*n+r*r);case"box":case"image":case"text":default:return this.width?Math.min(Math.abs(this.width/2/Math.cos(e)),Math.abs(this.height/2/Math.sin(e)))+i:0}},s.prototype._setForce=function(t,e){this.fx=t,this.fy=e},s.prototype._addForce=function(t,e){this.fx+=t,this.fy+=e},s.prototype.discreteStep=function(t){if(this.xFixed)this.fx=0,this.vx=0;else{var e=this.damping*this.vx,i=(this.fx-e)/this.options.mass;this.vx+=i*t,this.x+=this.vx*t}if(this.yFixed)this.fy=0,this.vy=0;else{var s=this.damping*this.vy,o=(this.fy-s)/this.options.mass;this.vy+=o*t,this.y+=this.vy*t}},s.prototype.discreteStepLimited=function(t,e){if(this.xFixed)this.fx=0,this.vx=0;else{var i=this.damping*this.vx,s=(this.fx-i)/this.options.mass;this.vx+=s*t,this.vx=Math.abs(this.vx)>e?this.vx>0?e:-e:this.vx,this.x+=this.vx*t}if(this.yFixed)this.fy=0,this.vy=0;else{var o=this.damping*this.vy,n=(this.fy-o)/this.options.mass;this.vy+=n*t,this.vy=Math.abs(this.vy)>e?this.vy>0?e:-e:this.vy,this.y+=this.vy*t}},s.prototype.isFixed=function(){return this.xFixed&&this.yFixed},s.prototype.isMoving=function(t){var e=Math.sqrt(Math.pow(this.vx,2)+Math.pow(this.vy,2));return e>t},s.prototype.isSelected=function(){return this.selected},s.prototype.getValue=function(){return this.value},s.prototype.getDistance=function(t,e){var i=this.x-t,s=this.y-e;return Math.sqrt(i*i+s*s)},s.prototype.setValueRange=function(t,e){if(!this.radiusFixed&&void 0!==this.value)if(e==t)this.options.radius=(this.options.radiusMin+this.options.radiusMax)/2;else{var i=(this.options.radiusMax-this.options.radiusMin)/(e-t);this.options.radius=(this.value-t)*i+this.options.radiusMin}this.baseRadiusValue=this.options.radius},s.prototype.draw=function(){throw"Draw method not initialized for node"},s.prototype.resize=function(){throw"Resize method not initialized for node"},s.prototype.isOverlappingWith=function(t){return this.leftt.left&&this.topt.top},s.prototype._resizeImage=function(){if(!this.width||!this.height){var t,e;if(this.value){this.options.radius=this.baseRadiusValue;var i=this.imageObj.height/this.imageObj.width;void 0!==i?(t=this.options.radius||this.imageObj.width,e=this.options.radius*i||this.imageObj.height):(t=0,e=0)}else t=this.imageObj.width,e=this.imageObj.height;this.width=t,this.height=e,this.growthIndicator=0,this.width>0&&this.height>0&&(this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-t)}},s.prototype._drawImage=function(t){this._resizeImage(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e;if(0!=this.imageObj.width){if(this.clusterSize>1){var i=this.clusterSize>1?10:0;i*=this.networkScaleInv,i=Math.min(.2*this.width,i),t.globalAlpha=.5,t.drawImage(this.imageObj,this.left-i,this.top-i,this.width+2*i,this.height+2*i)}t.globalAlpha=1,t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),e=this.y+this.height/2}else e=this.y;this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,e,void 0,"top"),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height)},s.prototype._resizeBox=function(t){if(!this.width){var e=5,i=this.getTextSize(t);this.width=i.width+2*e,this.height=i.height+2*e,this.width+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.growthIndicator=this.width-(i.width+2*e)}},s.prototype._drawBox=function(t){this._resizeBox(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.roundRect(this.left-2*t.lineWidth,this.top-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth,this.options.radius),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.options.color.background,t.roundRect(this.left,this.top,this.width,this.height,this.options.radius),t.fill(),t.stroke(),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,this.y)},s.prototype._resizeDatabase=function(t){if(!this.width){var e=5,i=this.getTextSize(t),s=i.width+2*e;this.width=s,this.height=s,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-s}},s.prototype._drawDatabase=function(t){this._resizeDatabase(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.database(this.x-this.width/2-2*t.lineWidth,this.y-.5*this.height-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.database(this.x-this.width/2,this.y-.5*this.height,this.width,this.height),t.fill(),t.stroke(),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,this.y)},s.prototype._resizeCircle=function(t){if(!this.width){var e=5,i=this.getTextSize(t),s=Math.max(i.width,i.height)+2*e;this.options.radius=s/2,this.width=s,this.height=s,this.options.radius+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.options.radius-.5*s}},s.prototype._drawCircle=function(t){this._resizeCircle(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.circle(this.x,this.y,this.options.radius+2*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.circle(this.x,this.y,this.options.radius),t.fill(),t.stroke(),this.boundingBox.top=this.y-this.options.radius,this.boundingBox.left=this.x-this.options.radius,this.boundingBox.right=this.x+this.options.radius,this.boundingBox.bottom=this.y+this.options.radius,this._label(t,this.label,this.x,this.y)},s.prototype._resizeEllipse=function(t){if(!this.width){var e=this.getTextSize(t);this.width=1.5*e.width,this.height=2*e.height,this.width1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.ellipse(this.left-2*t.lineWidth,this.top-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.ellipse(this.left,this.top,this.width,this.height),t.fill(),t.stroke(),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,this.y)},s.prototype._drawDot=function(t){this._drawShape(t,"circle")},s.prototype._drawTriangle=function(t){this._drawShape(t,"triangle")},s.prototype._drawTriangleDown=function(t){this._drawShape(t,"triangleDown")},s.prototype._drawSquare=function(t){this._drawShape(t,"square")},s.prototype._drawStar=function(t){this._drawShape(t,"star")},s.prototype._resizeShape=function(){if(!this.width){this.options.radius=this.baseRadiusValue;var t=2*this.options.radius;this.width=t,this.height=t,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-t}},s.prototype._drawShape=function(t,e){this._resizeShape(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2; +var i=2.5,s=this.options.borderWidth,o=this.options.borderWidthSelected||2*this.options.borderWidth,n=2;switch(e){case"dot":n=2;break;case"square":n=2;break;case"triangle":n=3;break;case"triangleDown":n=3;break;case"star":n=4}t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?o:s)+(this.clusterSize>1?i:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t[e](this.x,this.y,this.options.radius+n*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?o:s)+(this.clusterSize>1?i:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t[e](this.x,this.y,this.options.radius),t.fill(),t.stroke(),this.boundingBox.top=this.y-this.options.radius,this.boundingBox.left=this.x-this.options.radius,this.boundingBox.right=this.x+this.options.radius,this.boundingBox.bottom=this.y+this.options.radius,this.label&&(this._label(t,this.label,this.x,this.y+this.height/2,void 0,"top",!0),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height))},s.prototype._resizeText=function(t){if(!this.width){var e=5,i=this.getTextSize(t);this.width=i.width+2*e,this.height=i.height+2*e,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-(i.width+2*e)}},s.prototype._drawText=function(t){this._resizeText(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._label(t,this.label,this.x,this.y),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height},s.prototype._label=function(t,e,i,s,o,n,r){if(e&&Number(this.options.fontSize)*this.networkScale>this.fontDrawThreshold){t.font=(this.selected?"bold ":"")+this.options.fontSize+"px "+this.options.fontFace;var a=e.split("\n"),h=a.length,d=Number(this.options.fontSize)+4,l=s+(1-h)/2*d;1==r&&(l=s+(1-h)/(2*d));for(var c=t.measureText(a[0]).width,p=1;h>p;p++){var u=t.measureText(a[p]).width;c=u>c?u:c}var m=this.options.fontSize*h,f=i-c/2,g=s-m/2;"top"==n&&(g+=.5*d),this.labelDimensions={top:g,left:f,width:c,height:m,yLine:l},void 0!==this.options.fontFill&&null!==this.options.fontFill&&"none"!==this.options.fontFill&&(t.fillStyle=this.options.fontFill,t.fillRect(f,g,c,m)),t.fillStyle=this.options.fontColor||"black",t.textAlign=o||"center",t.textBaseline=n||"middle";for(var p=0;h>p;p++)t.fillText(a[p],i,l),l+=d}},s.prototype.getTextSize=function(t){if(void 0!==this.label){t.font=(this.selected?"bold ":"")+this.options.fontSize+"px "+this.options.fontFace;for(var e=this.label.split("\n"),i=(Number(this.options.fontSize)+4)*e.length,s=0,o=0,n=e.length;n>o;o++)s=Math.max(s,t.measureText(e[o]).width);return{width:s,height:i}}return{width:0,height:0}},s.prototype.inArea=function(){return void 0!==this.width?this.x+this.width*this.networkScaleInv>=this.canvasTopLeft.x&&this.x-this.width*this.networkScaleInv=this.canvasTopLeft.y&&this.y-this.height*this.networkScaleInv=this.canvasTopLeft.x&&this.x=this.canvasTopLeft.y&&this.ys&&(n=s-e-this.padding),no&&(r=o-i-this.padding),ri;i++)if(e.id===r.nodes[i].id){o=r.nodes[i];break}for(o||(o={id:e.id},t.node&&(o.attr=a(o.attr,t.node))),i=n.length-1;i>=0;i--){var h=n[i];h.nodes||(h.nodes=[]),-1==h.nodes.indexOf(o)&&h.nodes.push(o)}e.attr&&(o.attr=a(o.attr,e.attr))}function l(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=a({},t.edge);e.attr=a(i,e.attr)}}function c(t,e,i,s,o){var n={from:e,to:i,type:s};return t.edge&&(n.attr=a({},t.edge)),n.attr=a(n.attr||{},o),n}function p(){for(L=S.NULL,k="";" "==E||" "==E||"\n"==E||"\r"==E;)o();do{var t=!1;if("#"==E){for(var e=O-1;" "==T.charAt(e)||" "==T.charAt(e);)e--;if("\n"==T.charAt(e)||""==T.charAt(e)){for(;""!=E&&"\n"!=E;)o();t=!0}}if("/"==E&&"/"==n()){for(;""!=E&&"\n"!=E;)o();t=!0}if("/"==E&&"*"==n()){for(;""!=E;){if("*"==E&&"/"==n()){o(),o();break}o()}t=!0}for(;" "==E||" "==E||"\n"==E||"\r"==E;)o()}while(t);if(""==E)return void(L=S.DELIMITER);var i=E+n();if(C[i])return L=S.DELIMITER,k=i,o(),void o();if(C[E])return L=S.DELIMITER,k=E,void o();if(r(E)||"-"==E){for(k+=E,o();r(E);)k+=E,o();return"false"==k?k=!1:"true"==k?k=!0:isNaN(Number(k))||(k=Number(k)),void(L=S.IDENTIFIER)}if('"'==E){for(o();""!=E&&('"'!=E||'"'==E&&'"'==n());)k+=E,'"'==E&&o(),o();if('"'!=E)throw x('End of string " expected');return o(),void(L=S.IDENTIFIER)}for(L=S.UNKNOWN;""!=E;)k+=E,o();throw new SyntaxError('Syntax error in part "'+w(k,30)+'"')}function u(){var t={};if(s(),p(),"strict"==k&&(t.strict=!0,p()),("graph"==k||"digraph"==k)&&(t.type=k,p()),L==S.IDENTIFIER&&(t.id=k,p()),"{"!=k)throw x("Angle bracket { expected");if(p(),m(t),"}"!=k)throw x("Angle bracket } expected");if(p(),""!==k)throw x("End of file expected");return p(),delete t.node,delete t.edge,delete t.graph,t}function m(t){for(;""!==k&&"}"!=k;)f(t),";"==k&&p()}function f(t){var e=g(t);if(e)return void b(t,e);var i=v(t);if(!i){if(L!=S.IDENTIFIER)throw x("Identifier expected");var s=k;if(p(),"="==k){if(p(),L!=S.IDENTIFIER)throw x("Identifier expected");t[s]=k,p()}else y(t,s)}}function g(t){var e=null;if("subgraph"==k&&(e={},e.type="subgraph",p(),L==S.IDENTIFIER&&(e.id=k,p())),"{"==k){if(p(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,m(e),"}"!=k)throw x("Angle bracket } expected");p(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function v(t){return"node"==k?(p(),t.node=_(),"node"):"edge"==k?(p(),t.edge=_(),"edge"):"graph"==k?(p(),t.graph=_(),"graph"):null}function y(t,e){var i={id:e},s=_();s&&(i.attr=s),d(t,i),b(t,e)}function b(t,e){for(;"->"==k||"--"==k;){var i,s=k;p();var o=g(t);if(o)i=o;else{if(L!=S.IDENTIFIER)throw x("Identifier or subgraph expected");i=k,d(t,{id:i}),p()}var n=_(),r=c(t,e,i,s,n);l(t,r),e=i}}function _(){for(var t=null;"["==k;){for(p(),t={};""!==k&&"]"!=k;){if(L!=S.IDENTIFIER)throw x("Attribute name expected");var e=k;if(p(),"="!=k)throw x("Equal sign = expected");if(p(),L!=S.IDENTIFIER)throw x("Attribute value expected");var i=k;h(t,e,i),p(),","==k&&p()}if("]"!=k)throw x("Bracket ] expected");p()}return t}function x(t){return new SyntaxError(t+', got "'+w(k,30)+'" (char '+O+")")}function w(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function M(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function D(t){var e=i(t),s={nodes:[],edges:[],options:{}};if(e.nodes&&e.nodes.forEach(function(t){var e={id:t.id,label:String(t.label||t.id)};a(e,t.attr),e.image&&(e.shape="image"),s.nodes.push(e)}),e.edges){var o=function(t){var e={from:t.from,to:t.to};return a(e,t.attr),e.style="->"==t.type?"arrow":"line",e};e.edges.forEach(function(t){var e,i;e=t.from instanceof Object?t.from.nodes:{id:t.from},i=t.to instanceof Object?t.to.nodes:{id:t.to},t.from instanceof Object&&t.from.edges&&t.from.edges.forEach(function(t){var e=o(t);s.edges.push(e)}),M(e,i,function(e,i){var n=c(s,e.id,i.id,t.type,t.attr),r=o(n);s.edges.push(r)}),t.to instanceof Object&&t.to.edges&&t.to.edges.forEach(function(t){var e=o(t);s.edges.push(e)})})}return e.attr&&(s.options=e.attr),s}var S={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},C={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},T="",O=0,E="",k="",L=S.NULL,N=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=D},function(t,e){function i(t,e){var i=[],s=[];this.options={edges:{inheritColor:!0},nodes:{allowedToMove:!1,parseColor:!1}},void 0!==e&&(this.options.nodes.allowedToMove=e.allowedToMove|!1,this.options.nodes.parseColor=e.parseColor|!1,this.options.edges.inheritColor=e.inheritColor|!0);for(var o=t.edges,n=t.nodes,r=0;r=s&&(s=864e5),e=new Date(e.valueOf()-.05*s),i=new Date(i.valueOf()+.05*s)}return{start:e,end:i}},s.prototype.setWindow=function(t,e,i){var s=i&&void 0!==i.animate?i.animate:!0;if(1==arguments.length){var o=arguments[0];this.range.setRange(o.start,o.end,s)}else this.range.setRange(t,e,s)},s.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,s=r.convert(t,"Date").valueOf(),o=s-i/2,n=s+i/2,a=e&&void 0!==e.animate?e.animate:!0;this.range.setRange(o,n,a)},s.prototype.getWindow=function(){var t=this.range.getRange();return{start:new Date(t.start),end:new Date(t.end)}},s.prototype.redraw=function(){var t=!1,e=this.options,i=this.props,s=this.dom;if(s){h.updateHiddenDates(this.body,this.options.hiddenDates),"top"==e.orientation?(r.addClassName(s.root,"top"),r.removeClassName(s.root,"bottom")):(r.removeClassName(s.root,"top"),r.addClassName(s.root,"bottom")),s.root.style.maxHeight=r.option.asSize(e.maxHeight,""),s.root.style.minHeight=r.option.asSize(e.minHeight,""),s.root.style.width=r.option.asSize(e.width,""),i.border.left=(s.centerContainer.offsetWidth-s.centerContainer.clientWidth)/2,i.border.right=i.border.left,i.border.top=(s.centerContainer.offsetHeight-s.centerContainer.clientHeight)/2,i.border.bottom=i.border.top;var o=s.root.offsetHeight-s.root.clientHeight,n=s.root.offsetWidth-s.root.clientWidth;0===s.centerContainer.clientHeight&&(i.border.left=i.border.top,i.border.right=i.border.left),0===s.root.clientHeight&&(n=o),i.center.height=s.center.offsetHeight,i.left.height=s.left.offsetHeight,i.right.height=s.right.offsetHeight,i.top.height=s.top.clientHeight||-i.border.top,i.bottom.height=s.bottom.clientHeight||-i.border.bottom;var a=Math.max(i.left.height,i.center.height,i.right.height),d=i.top.height+a+i.bottom.height+o+i.border.top+i.border.bottom;s.root.style.height=r.option.asSize(e.height,d+"px"),i.root.height=s.root.offsetHeight,i.background.height=i.root.height-o;var l=i.root.height-i.top.height-i.bottom.height-o;i.centerContainer.height=l,i.leftContainer.height=l,i.rightContainer.height=i.leftContainer.height,i.root.width=s.root.offsetWidth,i.background.width=i.root.width-n,i.left.width=s.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=s.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var c=i.root.width-i.left.width-i.right.width-n;i.center.width=c,i.centerContainer.width=c,i.top.width=c,i.bottom.width=c,s.background.style.height=i.background.height+"px",s.backgroundVertical.style.height=i.background.height+"px",s.backgroundHorizontal.style.height=i.centerContainer.height+"px",s.centerContainer.style.height=i.centerContainer.height+"px",s.leftContainer.style.height=i.leftContainer.height+"px",s.rightContainer.style.height=i.rightContainer.height+"px",s.background.style.width=i.background.width+"px",s.backgroundVertical.style.width=i.centerContainer.width+"px",s.backgroundHorizontal.style.width=i.background.width+"px",s.centerContainer.style.width=i.center.width+"px",s.top.style.width=i.top.width+"px",s.bottom.style.width=i.bottom.width+"px",s.background.style.left="0",s.background.style.top="0",s.backgroundVertical.style.left=i.left.width+i.border.left+"px",s.backgroundVertical.style.top="0",s.backgroundHorizontal.style.left="0",s.backgroundHorizontal.style.top=i.top.height+"px",s.centerContainer.style.left=i.left.width+"px",s.centerContainer.style.top=i.top.height+"px",s.leftContainer.style.left="0",s.leftContainer.style.top=i.top.height+"px",s.rightContainer.style.left=i.left.width+i.center.width+"px",s.rightContainer.style.top=i.top.height+"px",s.top.style.left=i.left.width+"px",s.top.style.top="0",s.bottom.style.left=i.left.width+"px",s.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var p=this.props.scrollTop;"bottom"==e.orientation&&(p+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),s.center.style.left="0",s.center.style.top=p+"px",s.left.style.left="0",s.left.style.top=p+"px",s.right.style.left="0",s.right.style.top=p+"px";var u=0==this.props.scrollTop?"hidden":"",m=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";if(s.shadowTop.style.visibility=u,s.shadowBottom.style.visibility=m,s.shadowTopLeft.style.visibility=u,s.shadowBottomLeft.style.visibility=m,s.shadowTopRight.style.visibility=u,s.shadowBottomRight.style.visibility=m,this.components.forEach(function(e){t=e.redraw()||t}),t){var f=3;this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTops;s++){var o=s%2===0?1.3*i:.5*i;this.lineTo(t+o*Math.sin(2*s*Math.PI/10),e-o*Math.cos(2*s*Math.PI/10))}this.closePath()},CanvasRenderingContext2D.prototype.roundRect=function(t,e,i,s,o){var n=Math.PI/180;0>i-2*o&&(o=i/2),0>s-2*o&&(o=s/2),this.beginPath(),this.moveTo(t+o,e),this.lineTo(t+i-o,e),this.arc(t+i-o,e+o,o,270*n,360*n,!1),this.lineTo(t+i,e+s-o),this.arc(t+i-o,e+s-o,o,0,90*n,!1),this.lineTo(t+o,e+s),this.arc(t+o,e+s-o,o,90*n,180*n,!1),this.lineTo(t,e+o),this.arc(t+o,e+o,o,180*n,270*n,!1)},CanvasRenderingContext2D.prototype.ellipse=function(t,e,i,s){var o=.5522848,n=i/2*o,r=s/2*o,a=t+i,h=e+s,d=t+i/2,l=e+s/2;this.beginPath(),this.moveTo(t,l),this.bezierCurveTo(t,l-r,d-n,e,d,e),this.bezierCurveTo(d+n,e,a,l-r,a,l),this.bezierCurveTo(a,l+r,d+n,h,d,h),this.bezierCurveTo(d-n,h,t,l+r,t,l)},CanvasRenderingContext2D.prototype.database=function(t,e,i,s){var o=1/3,n=i,r=s*o,a=.5522848,h=n/2*a,d=r/2*a,l=t+n,c=e+r,p=t+n/2,u=e+r/2,m=e+(s-r/2),f=e+s;this.beginPath(),this.moveTo(l,u),this.bezierCurveTo(l,u+d,p+h,c,p,c),this.bezierCurveTo(p-h,c,t,u+d,t,u),this.bezierCurveTo(t,u-d,p-h,e,p,e),this.bezierCurveTo(p+h,e,l,u-d,l,u),this.lineTo(l,m),this.bezierCurveTo(l,m+d,p+h,f,p,f),this.bezierCurveTo(p-h,f,t,m+d,t,m),this.lineTo(t,u)},CanvasRenderingContext2D.prototype.arrow=function(t,e,i,s){var o=t-s*Math.cos(i),n=e-s*Math.sin(i),r=t-.9*s*Math.cos(i),a=e-.9*s*Math.sin(i),h=o+s/3*Math.cos(i+.5*Math.PI),d=n+s/3*Math.sin(i+.5*Math.PI),l=o+s/3*Math.cos(i-.5*Math.PI),c=n+s/3*Math.sin(i-.5*Math.PI);this.beginPath(),this.moveTo(t,e),this.lineTo(h,d),this.lineTo(r,a),this.lineTo(l,c),this.closePath()},CanvasRenderingContext2D.prototype.dashedLine=function(t,e,i,s,o){o||(o=[10,5]),0==p&&(p=.001);var n=o.length;this.moveTo(t,e);for(var r=i-t,a=s-e,h=a/r,d=Math.sqrt(r*r+a*a),l=0,c=!0;d>=.1;){var p=o[l++%n];p>d&&(p=d);var u=Math.sqrt(p*p/(1+h*h));0>r&&(u=-u),t+=u,e+=h*u,this[c?"lineTo":"moveTo"](t,e),d-=p,c=!c}})},function(t,e,i){function s(t,e){this.groupId=t,this.options=e}var o=i(2),n=i(53);s.prototype.getYRange=function(t){for(var e=t[0].y,i=t[0].y,s=0;st[s].y?t[s].y:e,i=i0){var r,a,h=Number(i.svg.style.height.replace("px",""));if(r=o.getSVGElement("path",i.svgElements,i.svg),r.setAttributeNS(null,"class",e.className),void 0!==e.style&&r.setAttributeNS(null,"style",e.style),a=1==e.options.catmullRom.enabled?s._catmullRom(t,e):s._linear(t),1==e.options.shaded.enabled){var d,l=o.getSVGElement("path",i.svgElements,i.svg);d="top"==e.options.shaded.orientation?"M"+t[0].x+",0 "+a+"L"+t[t.length-1].x+",0":"M"+t[0].x+","+h+" "+a+"L"+t[t.length-1].x+","+h,l.setAttributeNS(null,"class",e.className+" fill"),void 0!==e.options.shaded.style&&l.setAttributeNS(null,"style",e.options.shaded.style),l.setAttributeNS(null,"d",d)}r.setAttributeNS(null,"d","M"+a),1==e.options.drawPoints.enabled&&n.draw(t,e,i)}},s._catmullRomUniform=function(t){for(var e,i,s,o,n,r,a=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",h=1/6,d=t.length,l=0;d-1>l;l++)e=0==l?t[0]:t[l-1],i=t[l],s=t[l+1],o=d>l+2?t[l+2]:s,n={x:(-e.x+6*i.x+s.x)*h,y:(-e.y+6*i.y+s.y)*h},r={x:(i.x+6*s.x-o.x)*h,y:(i.y+6*s.y-o.y)*h},a+="C"+n.x+","+n.y+" "+r.x+","+r.y+" "+s.x+","+s.y+" ";return a},s._catmullRom=function(t,e){var i=e.options.catmullRom.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);for(var s,o,n,r,a,h,d,l,c,p,u,m,f,g,v,y,b,_,x,w=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",M=t.length,D=0;M-1>D;D++)s=0==D?t[0]:t[D-1],o=t[D],n=t[D+1],r=M>D+2?t[D+2]:n,d=Math.sqrt(Math.pow(s.x-o.x,2)+Math.pow(s.y-o.y,2)),l=Math.sqrt(Math.pow(o.x-n.x,2)+Math.pow(o.y-n.y,2)),c=Math.sqrt(Math.pow(n.x-r.x,2)+Math.pow(n.y-r.y,2)),g=Math.pow(c,i),y=Math.pow(c,2*i),v=Math.pow(l,i),b=Math.pow(l,2*i),x=Math.pow(d,i),_=Math.pow(d,2*i),p=2*_+3*x*v+b,u=2*y+3*g*v+b,m=3*x*(x+v),m>0&&(m=1/m),f=3*g*(g+v),f>0&&(f=1/f),a={x:(-b*s.x+p*o.x+_*n.x)*m,y:(-b*s.y+p*o.y+_*n.y)*m},h={x:(y*o.x+u*n.x-b*r.x)*f,y:(y*o.y+u*n.y-b*r.y)*f},0==a.x&&0==a.y&&(a=o),0==h.x&&0==h.y&&(h=n),w+="C"+a.x+","+a.y+" "+h.x+","+h.y+" "+n.x+","+n.y+" ";return w},s._linear=function(t){for(var e="",i=0;it[s].y?t[s].y:e,i=i0&&(n=Math.min(n,Math.abs(c[d-1].x-r))),a=s._getSafeDrawData(n,h,m);else{var g=d+(p[r].amount-p[r].resolved),v=d-(p[r].resolved+1);g0&&(n=Math.min(n,Math.abs(c[v].x-r))),a=s._getSafeDrawData(n,h,m),p[r].resolved+=1,"stack"==h.options.barChart.handleOverlap?(f=p[r].accumulated,p[r].accumulated+=h.zeroPosition-c[d].y):"sideBySide"==h.options.barChart.handleOverlap&&(a.width=a.width/p[r].amount,a.offset+=p[r].resolved*a.width-.5*a.width*(p[r].amount+1),"left"==h.options.barChart.align?a.offset-=.5*a.width:"right"==h.options.barChart.align&&(a.offset+=.5*a.width))}o.drawBar(c[d].x+a.offset,c[d].y-f,a.width,h.zeroPosition-c[d].y,h.className+" bar",i.svgElements,i.svg),1==h.options.drawPoints.enabled&&o.drawPoint(c[d].x+a.offset,c[d].y,h,i.svgElements,i.svg)}},s._getDataIntersections=function(t,e){for(var i,s=0;s0&&(i=Math.min(i,Math.abs(e[s-1].x-e[s].x))),0==i&&(void 0===t[e[s].x]&&(t[e[s].x]={amount:0,resolved:0,accumulated:0}),t[e[s].x].amount+=1)},s._getSafeDrawData=function(t,e,i){var s,o;return t0?(s=i>t?i:t,o=0,"left"==e.options.barChart.align?o-=.5*t:"right"==e.options.barChart.align&&(o+=.5*t)):(s=e.options.barChart.width,o=0,"left"==e.options.barChart.align?o-=.5*e.options.barChart.width:"right"==e.options.barChart.align&&(o+=.5*e.options.barChart.width)),{width:s,offset:o}},s.getStackedBarYRange=function(t,e,i,o,n){if(t.length>0){t.sort(function(t,e){return t.x==e.x?t.groupId-e.groupId:t.x-e.x});var r={};s._getDataIntersections(r,t),e[o]=s._getStackedBarYRange(r,t),e[o].yAxisOrientation=n,i.push(o)}},s._getStackedBarYRange=function(t,e){for(var i,s=e[0].y,o=e[0].y,n=0;ne[n].y?e[n].y:s,o=ot[r].accumulated?t[r].accumulated:s,o=ot[s].y?t[s].y:e,i=is;++s)i[s].apply(this,e)}return this},e.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},e.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e){var i,s,o;!function(n,r){s=[],i=r,o="function"==typeof i?i.apply(e,s):i,!(void 0!==o&&(t.exports=o))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,s=t&&t.container||window,o={},n={keydown:{},keyup:{}},r={};for(e=97;122>=e;e++)r[String.fromCharCode(e)]={code:65+(e-97),shift:!1};for(e=65;90>=e;e++)r[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;9>=e;e++)r[""+e]={code:48+e,shift:!1};for(e=1;12>=e;e++)r["F"+e]={code:111+e,shift:!1};for(e=0;9>=e;e++)r["num"+e]={code:96+e,shift:!1};r["num*"]={code:106,shift:!1},r["num+"]={code:107,shift:!1},r["num-"]={code:109,shift:!1},r["num/"]={code:111,shift:!1},r["num."]={code:110,shift:!1},r.left={code:37,shift:!1},r.up={code:38,shift:!1},r.right={code:39,shift:!1},r.down={code:40,shift:!1},r.space={code:32,shift:!1},r.enter={code:13,shift:!1},r.shift={code:16,shift:void 0},r.esc={code:27,shift:!1},r.backspace={code:8,shift:!1},r.tab={code:9,shift:!1},r.ctrl={code:17,shift:!1},r.alt={code:18,shift:!1},r["delete"]={code:46,shift:!1},r.pageup={code:33,shift:!1},r.pagedown={code:34,shift:!1},r["="]={code:187,shift:!1},r["-"]={code:189,shift:!1},r["]"]={code:221,shift:!1},r["["]={code:219,shift:!1};var a=function(t){d(t,"keydown")},h=function(t){d(t,"keyup")},d=function(t,e){if(void 0!==n[e][t.keyCode]){for(var s=n[e][t.keyCode],o=0;o0)for(i in He)s=He[i],o=e[s],"undefined"!=typeof o&&(t[s]=o);return t}function b(t){return 0>t?Math.ceil(t):Math.floor(t)}function _(t,e,i){for(var s=""+Math.abs(t),o=t>=0;s.lengths;s++)(i&&t[s]!==e[s]||!i&&L(t[s])!==L(e[s]))&&r++;return r+n}function O(t){if(t){var e=t.toLowerCase().replace(/(.)s$/,"$1");t=mi[t]||fi[e]||e}return t}function E(t){var e,i,s={};for(i in t)a(t,i)&&(e=O(i),e&&(s[e]=t[i]));return s}function k(t){var e,i;if(0===t.indexOf("week"))e=7,i="day";else{if(0!==t.indexOf("month"))return;e=12,i="month"}De[t]=function(s,o){var r,a,h=De._locale[t],d=[];if("number"==typeof s&&(o=s,s=n),a=function(t){var e=De().utc().set(i,t);return h.call(De._locale,e,s||"")},null!=o)return a(o);for(r=0;e>r;r++)d.push(a(r));return d}}function L(t){var e=+t,i=0;return 0!==e&&isFinite(e)&&(i=e>=0?Math.floor(e):Math.ceil(e)),i}function N(t,e){return new Date(Date.UTC(t,e+1,0)).getUTCDate()}function I(t,e,i){return pe(De([t,11,31+e-i]),e,i).week}function z(t){return P(t)?366:365}function P(t){return t%4===0&&t%100!==0||t%400===0}function A(t){var e;t._a&&-2===t._pf.overflow&&(e=t._a[Ne]<0||t._a[Ne]>11?Ne:t._a[Ie]<1||t._a[Ie]>N(t._a[Le],t._a[Ne])?Ie:t._a[ze]<0||t._a[ze]>24||24===t._a[ze]&&(0!==t._a[Pe]||0!==t._a[Ae]||0!==t._a[Re])?ze:t._a[Pe]<0||t._a[Pe]>59?Pe:t._a[Ae]<0||t._a[Ae]>59?Ae:t._a[Re]<0||t._a[Re]>999?Re:-1,t._pf._overflowDayOfYear&&(Le>e||e>Ie)&&(e=Ie),t._pf.overflow=e)}function R(t){return null==t._isValid&&(t._isValid=!isNaN(t._d.getTime())&&t._pf.overflow<0&&!t._pf.empty&&!t._pf.invalidMonth&&!t._pf.nullInput&&!t._pf.invalidFormat&&!t._pf.userInvalidated,t._strict&&(t._isValid=t._isValid&&0===t._pf.charsLeftOver&&0===t._pf.unusedTokens.length&&t._pf.bigHour===n)),t._isValid}function F(t){return t?t.toLowerCase().replace("_","-"):t}function H(t){for(var e,i,s,o,n=0;n0;){if(s=B(o.slice(0,e).join("-")))return s;if(i&&i.length>=e&&T(o,i,!0)>=e-1)break;e--}n++}return null}function B(t){var e=null;if(!Fe[t]&&Be)try{e=De.locale(),!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),De.locale(e)}catch(i){}return Fe[t]}function Y(t,e){var i,s;return e._isUTC?(i=e.clone(),s=(De.isMoment(t)||C(t)?+t:+De(t))-+i,i._d.setTime(+i._d+s),De.updateOffset(i,!1),i):De(t).local()}function W(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function G(t){var e,i,s=t.match(je);for(e=0,i=s.length;i>e;e++)s[e]=_i[s[e]]?_i[s[e]]:W(s[e]);return function(o){var n="";for(e=0;i>e;e++)n+=s[e]instanceof Function?s[e].call(o,t):s[e];return n}}function j(t,e){return t.isValid()?(e=V(e,t.localeData()),gi[e]||(gi[e]=G(e)),gi[e](t)):t.localeData().invalidDate()}function V(t,e){function i(t){return e.longDateFormat(t)||t}var s=5;for(Ve.lastIndex=0;s>=0&&Ve.test(t);)t=t.replace(Ve,i),Ve.lastIndex=0,s-=1;return t}function U(t,e){var i,s=e._strict;switch(t){case"Q":return ii;case"DDDD":return oi;case"YYYY":case"GGGG":case"gggg":return s?ni:qe;case"Y":case"G":case"g":return ai;case"YYYYYY":case"YYYYY":case"GGGGG":case"ggggg":return s?ri:Ze;case"S":if(s)return ii;case"SS":if(s)return si;case"SSS":if(s)return oi;case"DDD":return Xe;case"MMM":case"MMMM":case"dd":case"ddd":case"dddd":return Ke;case"a":case"A":return e._locale._meridiemParse;case"x":return ti;case"X":return ei;case"Z":case"ZZ":return $e;case"T":return Je;case"SSSS":return Qe;case"MM":case"DD":case"YY":case"GG":case"gg":case"HH":case"hh":case"mm":case"ss":case"ww":case"WW":return s?si:Ue;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return Ue;case"Do":return s?e._locale._ordinalParse:e._locale._ordinalParseLenient;default:return i=new RegExp(ee(te(t.replace("\\","")),"i"))}}function X(t){t=t||"";var e=t.match($e)||[],i=e[e.length-1]||[],s=(i+"").match(pi)||["-",0,0],o=+(60*s[1])+L(s[2]);return"+"===s[0]?-o:o}function q(t,e,i){var s,o=i._a;switch(t){case"Q":null!=e&&(o[Ne]=3*(L(e)-1));break;case"M":case"MM":null!=e&&(o[Ne]=L(e)-1);break;case"MMM":case"MMMM":s=i._locale.monthsParse(e,t,i._strict),null!=s?o[Ne]=s:i._pf.invalidMonth=e;break;case"D":case"DD":null!=e&&(o[Ie]=L(e));break;case"Do":null!=e&&(o[Ie]=L(parseInt(e.match(/\d{1,2}/)[0],10)));break;case"DDD":case"DDDD":null!=e&&(i._dayOfYear=L(e));break;case"YY":o[Le]=De.parseTwoDigitYear(e);break;case"YYYY":case"YYYYY":case"YYYYYY":o[Le]=L(e);break;case"a":case"A":i._isPm=i._locale.isPM(e);break;case"h":case"hh":i._pf.bigHour=!0;case"H":case"HH":o[ze]=L(e);break;case"m":case"mm":o[Pe]=L(e);break;case"s":case"ss":o[Ae]=L(e);break;case"S":case"SS":case"SSS":case"SSSS":o[Re]=L(1e3*("0."+e));break;case"x":i._d=new Date(L(e));break;case"X":i._d=new Date(1e3*parseFloat(e));break;case"Z":case"ZZ":i._useUTC=!0,i._tzm=X(e);break;case"dd":case"ddd":case"dddd":s=i._locale.weekdaysParse(e),null!=s?(i._w=i._w||{},i._w.d=s):i._pf.invalidWeekday=e;break;case"w":case"ww":case"W":case"WW":case"d":case"e":case"E":t=t.substr(0,1);case"gggg":case"GGGG":case"GGGGG":t=t.substr(0,2),e&&(i._w=i._w||{},i._w[t]=L(e));break;case"gg":case"GG":i._w=i._w||{},i._w[t]=De.parseTwoDigitYear(e)}}function Z(t){var e,i,s,o,n,a,h;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(n=1,a=4,i=r(e.GG,t._a[Le],pe(De(),1,4).year),s=r(e.W,1),o=r(e.E,1)):(n=t._locale._week.dow,a=t._locale._week.doy,i=r(e.gg,t._a[Le],pe(De(),n,a).year),s=r(e.w,1),null!=e.d?(o=e.d,n>o&&++s):o=null!=e.e?e.e+n:n),h=ue(i,s,o,a,n),t._a[Le]=h.year,t._dayOfYear=h.dayOfYear}function Q(t){var e,i,s,o,n=[];if(!t._d){for(s=$(t),t._w&&null==t._a[Ie]&&null==t._a[Ne]&&Z(t),t._dayOfYear&&(o=r(t._a[Le],s[Le]),t._dayOfYear>z(o)&&(t._pf._overflowDayOfYear=!0),i=he(o,0,t._dayOfYear),t._a[Ne]=i.getUTCMonth(),t._a[Ie]=i.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=n[e]=s[e];for(;7>e;e++)t._a[e]=n[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[ze]&&0===t._a[Pe]&&0===t._a[Ae]&&0===t._a[Re]&&(t._nextDay=!0,t._a[ze]=0),t._d=(t._useUTC?he:ae).apply(null,n),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()+t._tzm),t._nextDay&&(t._a[ze]=24)}}function K(t){var e;t._d||(e=E(t._i),t._a=[e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],Q(t))}function $(t){var e=new Date;return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}function J(t){if(t._f===De.ISO_8601)return void se(t);t._a=[],t._pf.empty=!0;var e,i,s,o,r,a=""+t._i,h=a.length,d=0;for(s=V(t._f,t._locale).match(je)||[],e=0;e0&&t._pf.unusedInput.push(r),a=a.slice(a.indexOf(i)+i.length),d+=i.length),_i[o]?(i?t._pf.empty=!1:t._pf.unusedTokens.push(o),q(o,i,t)):t._strict&&!i&&t._pf.unusedTokens.push(o);t._pf.charsLeftOver=h-d,a.length>0&&t._pf.unusedInput.push(a),t._pf.bigHour===!0&&t._a[ze]<=12&&(t._pf.bigHour=n),t._isPm&&t._a[ze]<12&&(t._a[ze]+=12),t._isPm===!1&&12===t._a[ze]&&(t._a[ze]=0),Q(t),A(t)}function te(t){return t.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,s,o){return e||i||s||o})}function ee(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function ie(t){var e,i,s,o,n;if(0===t._f.length)return t._pf.invalidFormat=!0,void(t._d=new Date(0/0));for(o=0;on)&&(s=n,i=e));v(t,i||e)}function se(t){var e,i,s=t._i,o=hi.exec(s);if(o){for(t._pf.iso=!0,e=0,i=li.length;i>e;e++)if(li[e][1].exec(s)){t._f=li[e][0]+(o[6]||" ");break}for(e=0,i=ci.length;i>e;e++)if(ci[e][1].exec(s)){t._f+=ci[e][0];break}s.match($e)&&(t._f+="Z"),J(t)}else t._isValid=!1}function oe(t){se(t),t._isValid===!1&&(delete t._isValid,De.createFromInputFallback(t))}function ne(t,e){var i,s=[];for(i=0;it&&a.setFullYear(t),a}function he(t){var e=new Date(Date.UTC.apply(null,arguments));return 1970>t&&e.setUTCFullYear(t),e}function de(t,e){if("string"==typeof t)if(isNaN(t)){if(t=e.weekdaysParse(t),"number"!=typeof t)return null}else t=parseInt(t,10);return t}function le(t,e,i,s,o){return o.relativeTime(e||1,!!i,t,s)}function ce(t,e,i){var s=De.duration(t).abs(),o=Ee(s.as("s")),n=Ee(s.as("m")),r=Ee(s.as("h")),a=Ee(s.as("d")),h=Ee(s.as("M")),d=Ee(s.as("y")),l=o0,l[4]=i,le.apply({},l)}function pe(t,e,i){var s,o=i-e,n=i-t.day();return n>o&&(n-=7),o-7>n&&(n+=7),s=De(t).add(n,"d"),{week:Math.ceil(s.dayOfYear()/7),year:s.year()}}function ue(t,e,i,s,o){var n,r,a=he(t,0,1).getUTCDay();return a=0===a?7:a,i=null!=i?i:o,n=o-a+(a>s?7:0)-(o>a?7:0),r=7*(e-1)+(i-o)+n+1,{year:r>0?t:t-1,dayOfYear:r>0?r:z(t-1)+r}}function me(t){var e,i=t._i,s=t._f;return t._locale=t._locale||De.localeData(t._l),null===i||s===n&&""===i?De.invalid({nullInput:!0}):("string"==typeof i&&(t._i=i=t._locale.preparse(i)),De.isMoment(i)?new f(i,!0):(s?S(s)?ie(t):J(t):re(t),e=new f(t),e._nextDay&&(e.add(1,"d"),e._nextDay=n),e))}function fe(t,e){var i,s;if(1===e.length&&S(e[0])&&(e=e[0]),!e.length)return De();for(i=e[0],s=1;s=0?"+":"-";return e+_(Math.abs(t),6)},gg:function(){return _(this.weekYear()%100,2)},gggg:function(){return _(this.weekYear(),4)},ggggg:function(){return _(this.weekYear(),5)},GG:function(){return _(this.isoWeekYear()%100,2)},GGGG:function(){return _(this.isoWeekYear(),4)},GGGGG:function(){return _(this.isoWeekYear(),5)},e:function(){return this.weekday()},E:function(){return this.isoWeekday()},a:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!0)},A:function(){return this.localeData().meridiem(this.hours(),this.minutes(),!1)},H:function(){return this.hours()},h:function(){return this.hours()%12||12},m:function(){return this.minutes()},s:function(){return this.seconds()},S:function(){return L(this.milliseconds()/100)},SS:function(){return _(L(this.milliseconds()/10),2)},SSS:function(){return _(this.milliseconds(),3)},SSSS:function(){return _(this.milliseconds(),3)},Z:function(){var t=-this.zone(),e="+";return 0>t&&(t=-t,e="-"),e+_(L(t/60),2)+":"+_(L(t)%60,2)},ZZ:function(){var t=-this.zone(),e="+";return 0>t&&(t=-t,e="-"),e+_(L(t/60),2)+_(L(t)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},x:function(){return this.valueOf()},X:function(){return this.unix()},Q:function(){return this.quarter()}},xi={},wi=["months","monthsShort","weekdays","weekdaysShort","weekdaysMin"];yi.length;)Ce=yi.pop(),_i[Ce+"o"]=u(_i[Ce],Ce);for(;bi.length;)Ce=bi.pop(),_i[Ce+Ce]=p(_i[Ce],2);_i.DDDD=p(_i.DDD,3),v(m.prototype,{set:function(t){var e,i;for(i in t)e=t[i],"function"==typeof e?this[i]=e:this["_"+i]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)},_months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),months:function(t){return this._months[t.month()]},_monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),monthsShort:function(t){return this._monthsShort[t.month()]},monthsParse:function(t,e,i){var s,o,n;for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),s=0;12>s;s++){if(o=De.utc([2e3,s]),i&&!this._longMonthsParse[s]&&(this._longMonthsParse[s]=new RegExp("^"+this.months(o,"").replace(".","")+"$","i"),this._shortMonthsParse[s]=new RegExp("^"+this.monthsShort(o,"").replace(".","")+"$","i")),i||this._monthsParse[s]||(n="^"+this.months(o,"")+"|^"+this.monthsShort(o,""),this._monthsParse[s]=new RegExp(n.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[s].test(t))return s;if(i&&"MMM"===e&&this._shortMonthsParse[s].test(t))return s;if(!i&&this._monthsParse[s].test(t))return s}},_weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdays:function(t){return this._weekdays[t.day()]},_weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysShort:function(t){return this._weekdaysShort[t.day()]},_weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),weekdaysMin:function(t){return this._weekdaysMin[t.day()]},weekdaysParse:function(t){var e,i,s;for(this._weekdaysParse||(this._weekdaysParse=[]),e=0;7>e;e++)if(this._weekdaysParse[e]||(i=De([2e3,1]).day(e),s="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[e]=new RegExp(s.replace(".",""),"i")),this._weekdaysParse[e].test(t))return e},_longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},longDateFormat:function(t){var e=this._longDateFormat[t];return!e&&this._longDateFormat[t.toUpperCase()]&&(e=this._longDateFormat[t.toUpperCase()].replace(/MMMM|MM|DD|dddd/g,function(t){return t.slice(1)}),this._longDateFormat[t]=e),e},isPM:function(t){return"p"===(t+"").toLowerCase().charAt(0)},_meridiemParse:/[ap]\.?m?\.?/i,meridiem:function(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"},_calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},calendar:function(t,e,i){var s=this._calendar[t];return"function"==typeof s?s.apply(e,[i]):s},_relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},relativeTime:function(t,e,i,s){var o=this._relativeTime[i];return"function"==typeof o?o(t,e,i,s):o.replace(/%d/i,t)},pastFuture:function(t,e){var i=this._relativeTime[t>0?"future":"past"];return"function"==typeof i?i(e):i.replace(/%s/i,e)},ordinal:function(t){return this._ordinal.replace("%d",t)},_ordinal:"%d",_ordinalParse:/\d{1,2}/,preparse:function(t){return t},postformat:function(t){return t},week:function(t){return pe(t,this._week.dow,this._week.doy).week},_week:{dow:0,doy:6},_invalidDate:"Invalid date",invalidDate:function(){return this._invalidDate}}),De=function(t,e,i,s){var o;return"boolean"==typeof i&&(s=i,i=n),o={},o._isAMomentObject=!0,o._i=t,o._f=e,o._l=i,o._strict=s,o._isUTC=!1,o._pf=h(),me(o)},De.suppressDeprecationWarnings=!1,De.createFromInputFallback=l("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":"")) +}),De.min=function(){var t=[].slice.call(arguments,0);return fe("isBefore",t)},De.max=function(){var t=[].slice.call(arguments,0);return fe("isAfter",t)},De.utc=function(t,e,i,s){var o;return"boolean"==typeof i&&(s=i,i=n),o={},o._isAMomentObject=!0,o._useUTC=!0,o._isUTC=!0,o._l=i,o._i=t,o._f=e,o._strict=s,o._pf=h(),me(o).utc()},De.unix=function(t){return De(1e3*t)},De.duration=function(t,e){var i,s,o,n,r=t,h=null;return De.isDuration(t)?r={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(r={},e?r[e]=t:r.milliseconds=t):(h=We.exec(t))?(i="-"===h[1]?-1:1,r={y:0,d:L(h[Ie])*i,h:L(h[ze])*i,m:L(h[Pe])*i,s:L(h[Ae])*i,ms:L(h[Re])*i}):(h=Ge.exec(t))?(i="-"===h[1]?-1:1,o=function(t){var e=t&&parseFloat(t.replace(",","."));return(isNaN(e)?0:e)*i},r={y:o(h[2]),M:o(h[3]),d:o(h[4]),h:o(h[5]),m:o(h[6]),s:o(h[7]),w:o(h[8])}):"object"==typeof r&&("from"in r||"to"in r)&&(n=w(De(r.from),De(r.to)),r={},r.ms=n.milliseconds,r.M=n.months),s=new g(r),De.isDuration(t)&&a(t,"_locale")&&(s._locale=t._locale),s},De.version=Te,De.defaultFormat=di,De.ISO_8601=function(){},De.momentProperties=He,De.updateOffset=function(){},De.relativeTimeThreshold=function(t,e){return vi[t]===n?!1:e===n?vi[t]:(vi[t]=e,!0)},De.lang=l("moment.lang is deprecated. Use moment.locale instead.",function(t,e){return De.locale(t,e)}),De.locale=function(t,e){var i;return t&&(i="undefined"!=typeof e?De.defineLocale(t,e):De.localeData(t),i&&(De.duration._locale=De._locale=i)),De._locale._abbr},De.defineLocale=function(t,e){return null!==e?(e.abbr=t,Fe[t]||(Fe[t]=new m),Fe[t].set(e),De.locale(t),Fe[t]):(delete Fe[t],null)},De.langData=l("moment.langData is deprecated. Use moment.localeData instead.",function(t){return De.localeData(t)}),De.localeData=function(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return De._locale;if(!S(t)){if(e=B(t))return e;t=[t]}return H(t)},De.isMoment=function(t){return t instanceof f||null!=t&&a(t,"_isAMomentObject")},De.isDuration=function(t){return t instanceof g};for(Ce=wi.length-1;Ce>=0;--Ce)k(wi[Ce]);De.normalizeUnits=function(t){return O(t)},De.invalid=function(t){var e=De.utc(0/0);return null!=t?v(e._pf,t):e._pf.userInvalidated=!0,e},De.parseZone=function(){return De.apply(null,arguments).parseZone()},De.parseTwoDigitYear=function(t){return L(t)+(L(t)>68?1900:2e3)},v(De.fn=f.prototype,{clone:function(){return De(this)},valueOf:function(){return+this._d+6e4*(this._offset||0)},unix:function(){return Math.floor(+this/1e3)},toString:function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},toDate:function(){return this._offset?new Date(+this):this._d},toISOString:function(){var t=De(this).utc();return 00:!1},parsingFlags:function(){return v({},this._pf)},invalidAt:function(){return this._pf.overflow},utc:function(t){return this.zone(0,t)},local:function(t){return this._isUTC&&(this.zone(0,t),this._isUTC=!1,t&&this.add(this._dateTzOffset(),"m")),this},format:function(t){var e=j(this,t||De.defaultFormat);return this.localeData().postformat(e)},add:M(1,"add"),subtract:M(-1,"subtract"),diff:function(t,e,i){var s,o,n,r=Y(t,this),a=6e4*(this.zone()-r.zone());return e=O(e),"year"===e||"month"===e?(s=432e5*(this.daysInMonth()+r.daysInMonth()),o=12*(this.year()-r.year())+(this.month()-r.month()),n=this-De(this).startOf("month")-(r-De(r).startOf("month")),n-=6e4*(this.zone()-De(this).startOf("month").zone()-(r.zone()-De(r).startOf("month").zone())),o+=n/s,"year"===e&&(o/=12)):(s=this-r,o="second"===e?s/1e3:"minute"===e?s/6e4:"hour"===e?s/36e5:"day"===e?(s-a)/864e5:"week"===e?(s-a)/6048e5:s),i?o:b(o)},from:function(t,e){return De.duration({to:this,from:t}).locale(this.locale()).humanize(!e)},fromNow:function(t){return this.from(De(),t)},calendar:function(t){var e=t||De(),i=Y(e,this).startOf("day"),s=this.diff(i,"days",!0),o=-6>s?"sameElse":-1>s?"lastWeek":0>s?"lastDay":1>s?"sameDay":2>s?"nextDay":7>s?"nextWeek":"sameElse";return this.format(this.localeData().calendar(o,this,De(e)))},isLeapYear:function(){return P(this.year())},isDST:function(){return this.zone()+t):(i=De.isMoment(t)?+t:+De(t),i<+this.clone().startOf(e))},isBefore:function(t,e){var i;return e=O("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=De.isMoment(t)?t:De(t),+t>+this):(i=De.isMoment(t)?+t:+De(t),+this.clone().endOf(e)t?this:t}),max:l("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(t){return t=De.apply(null,arguments),t>this?this:t}),zone:function(t,e){var i,s=this._offset||0;return null==t?this._isUTC?s:this._dateTzOffset():("string"==typeof t&&(t=X(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&e&&(i=this._dateTzOffset()),this._offset=t,this._isUTC=!0,null!=i&&this.subtract(i,"m"),s!==t&&(!e||this._changeInProgress?D(this,De.duration(s-t,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,De.updateOffset(this,!0),this._changeInProgress=null)),this)},zoneAbbr:function(){return this._isUTC?"UTC":""},zoneName:function(){return this._isUTC?"Coordinated Universal Time":""},parseZone:function(){return this._tzm?this.zone(this._tzm):"string"==typeof this._i&&this.zone(this._i),this},hasAlignedHourOffset:function(t){return t=t?De(t).zone():0,(this.zone()-t)%60===0},daysInMonth:function(){return N(this.year(),this.month())},dayOfYear:function(t){var e=Ee((De(this).startOf("day")-De(this).startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")},quarter:function(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)},weekYear:function(t){var e=pe(this,this.localeData()._week.dow,this.localeData()._week.doy).year;return null==t?e:this.add(t-e,"y")},isoWeekYear:function(t){var e=pe(this,1,4).year;return null==t?e:this.add(t-e,"y")},week:function(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")},isoWeek:function(t){var e=pe(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")},weekday:function(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")},isoWeekday:function(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)},isoWeeksInYear:function(){return I(this.year(),1,4)},weeksInYear:function(){var t=this.localeData()._week;return I(this.year(),t.dow,t.doy)},get:function(t){return t=O(t),this[t]()},set:function(t,e){return t=O(t),"function"==typeof this[t]&&this[t](e),this},locale:function(t){var e;return t===n?this._locale._abbr:(e=De.localeData(t),null!=e&&(this._locale=e),this)},lang:l("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return t===n?this.localeData():this.locale(t)}),localeData:function(){return this._locale},_dateTzOffset:function(){return 15*Math.round(this._d.getTimezoneOffset()/15)}}),De.fn.millisecond=De.fn.milliseconds=be("Milliseconds",!1),De.fn.second=De.fn.seconds=be("Seconds",!1),De.fn.minute=De.fn.minutes=be("Minutes",!1),De.fn.hour=De.fn.hours=be("Hours",!0),De.fn.date=be("Date",!0),De.fn.dates=l("dates accessor is deprecated. Use date instead.",be("Date",!0)),De.fn.year=be("FullYear",!0),De.fn.years=l("years accessor is deprecated. Use year instead.",be("FullYear",!0)),De.fn.days=De.fn.day,De.fn.months=De.fn.month,De.fn.weeks=De.fn.week,De.fn.isoWeeks=De.fn.isoWeek,De.fn.quarters=De.fn.quarter,De.fn.toJSON=De.fn.toISOString,v(De.duration.fn=g.prototype,{_bubble:function(){var t,e,i,s=this._milliseconds,o=this._days,n=this._months,r=this._data,a=0;r.milliseconds=s%1e3,t=b(s/1e3),r.seconds=t%60,e=b(t/60),r.minutes=e%60,i=b(e/60),r.hours=i%24,o+=b(i/24),a=b(_e(o)),o-=b(xe(a)),n+=b(o/30),o%=30,a+=b(n/12),n%=12,r.days=o,r.months=n,r.years=a},abs:function(){return this._milliseconds=Math.abs(this._milliseconds),this._days=Math.abs(this._days),this._months=Math.abs(this._months),this._data.milliseconds=Math.abs(this._data.milliseconds),this._data.seconds=Math.abs(this._data.seconds),this._data.minutes=Math.abs(this._data.minutes),this._data.hours=Math.abs(this._data.hours),this._data.months=Math.abs(this._data.months),this._data.years=Math.abs(this._data.years),this},weeks:function(){return b(this.days()/7)},valueOf:function(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*L(this._months/12)},humanize:function(t){var e=ce(this,!t,this.localeData());return t&&(e=this.localeData().pastFuture(+this,e)),this.localeData().postformat(e)},add:function(t,e){var i=De.duration(t,e);return this._milliseconds+=i._milliseconds,this._days+=i._days,this._months+=i._months,this._bubble(),this},subtract:function(t,e){var i=De.duration(t,e);return this._milliseconds-=i._milliseconds,this._days-=i._days,this._months-=i._months,this._bubble(),this},get:function(t){return t=O(t),this[t.toLowerCase()+"s"]()},as:function(t){var e,i;if(t=O(t),"month"===t||"year"===t)return e=this._days+this._milliseconds/864e5,i=this._months+12*_e(e),"month"===t?i:i/12;switch(e=this._days+Math.round(xe(this._months/12)),t){case"week":return e/7+this._milliseconds/6048e5;case"day":return e+this._milliseconds/864e5;case"hour":return 24*e+this._milliseconds/36e5;case"minute":return 24*e*60+this._milliseconds/6e4;case"second":return 24*e*60*60+this._milliseconds/1e3;case"millisecond":return Math.floor(24*e*60*60*1e3)+this._milliseconds;default:throw new Error("Unknown unit "+t)}},lang:De.fn.lang,locale:De.fn.locale,toIsoString:l("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",function(){return this.toISOString()}),toISOString:function(){var t=Math.abs(this.years()),e=Math.abs(this.months()),i=Math.abs(this.days()),s=Math.abs(this.hours()),o=Math.abs(this.minutes()),n=Math.abs(this.seconds()+this.milliseconds()/1e3);return this.asSeconds()?(this.asSeconds()<0?"-":"")+"P"+(t?t+"Y":"")+(e?e+"M":"")+(i?i+"D":"")+(s||o||n?"T":"")+(s?s+"H":"")+(o?o+"M":"")+(n?n+"S":""):"P0D"},localeData:function(){return this._locale}}),De.duration.fn.toString=De.duration.fn.toISOString;for(Ce in ui)a(ui,Ce)&&we(Ce.toLowerCase());De.duration.fn.asMilliseconds=function(){return this.as("ms")},De.duration.fn.asSeconds=function(){return this.as("s")},De.duration.fn.asMinutes=function(){return this.as("m")},De.duration.fn.asHours=function(){return this.as("h")},De.duration.fn.asDays=function(){return this.as("d")},De.duration.fn.asWeeks=function(){return this.as("weeks")},De.duration.fn.asMonths=function(){return this.as("M")},De.duration.fn.asYears=function(){return this.as("y")},De.locale("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===L(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+i}}),Be?o.exports=De:(s=function(t,e,i){return i.config&&i.config()&&i.config().noGlobal===!0&&(Oe.moment=Se),De}.call(e,i,e,o),!(s!==n&&(o.exports=s)),Me(!0))}).call(this)}).call(e,function(){return this}(),i(71)(t))},function(t,e,i){var s;!function(o,n){function r(){a.READY||(w.determineEventTypes(),x.each(a.gestures,function(t){D.register(t)}),w.onTouch(a.DOCUMENT,v,D.detect),w.onTouch(a.DOCUMENT,y,D.detect),a.READY=!0)}var a=function S(t,e){return new S.Instance(t,e||{})};a.VERSION="1.1.3",a.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},a.DOCUMENT=document,a.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,a.HAS_TOUCHEVENTS="ontouchstart"in o,a.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),a.NO_MOUSEEVENTS=a.HAS_TOUCHEVENTS&&a.IS_MOBILE||a.HAS_POINTEREVENTS,a.CALCULATE_INTERVAL=25;var h={},d=a.DIRECTION_DOWN="down",l=a.DIRECTION_LEFT="left",c=a.DIRECTION_UP="up",p=a.DIRECTION_RIGHT="right",u=a.POINTER_MOUSE="mouse",m=a.POINTER_TOUCH="touch",f=a.POINTER_PEN="pen",g=a.EVENT_START="start",v=a.EVENT_MOVE="move",y=a.EVENT_END="end",b=a.EVENT_RELEASE="release",_=a.EVENT_TOUCH="touch";a.READY=!1,a.plugins=a.plugins||{},a.gestures=a.gestures||{};var x=a.utils={extend:function(t,e,i){for(var s in e)!e.hasOwnProperty(s)||t[s]!==n&&i||(t[s]=e[s]);return t},on:function(t,e,i){t.addEventListener(e,i,!1)},off:function(t,e,i){t.removeEventListener(e,i,!1)},each:function(t,e,i){var s,o;if("forEach"in t)t.forEach(e,i);else if(t.length!==n){for(s=0,o=t.length;o>s;s++)if(e.call(i,t[s],s,t)===!1)return}else for(s in t)if(t.hasOwnProperty(s)&&e.call(i,t[s],s,t)===!1)return},inStr:function(t,e){return t.indexOf(e)>-1},inArray:function(t,e){if(t.indexOf){var i=t.indexOf(e);return-1===i?!1:i}for(var s=0,o=t.length;o>s;s++)if(t[s]===e)return s;return!1},toArray:function(t){return Array.prototype.slice.call(t,0)},hasParent:function(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1},getCenter:function(t){var e=[],i=[],s=[],o=[],n=Math.min,r=Math.max;return 1===t.length?{pageX:t[0].pageX,pageY:t[0].pageY,clientX:t[0].clientX,clientY:t[0].clientY}:(x.each(t,function(t){e.push(t.pageX),i.push(t.pageY),s.push(t.clientX),o.push(t.clientY)}),{pageX:(n.apply(Math,e)+r.apply(Math,e))/2,pageY:(n.apply(Math,i)+r.apply(Math,i))/2,clientX:(n.apply(Math,s)+r.apply(Math,s))/2,clientY:(n.apply(Math,o)+r.apply(Math,o))/2})},getVelocity:function(t,e,i){return{x:Math.abs(e/t)||0,y:Math.abs(i/t)||0}},getAngle:function(t,e){var i=e.clientX-t.clientX,s=e.clientY-t.clientY;return 180*Math.atan2(s,i)/Math.PI},getDirection:function(t,e){var i=Math.abs(t.clientX-e.clientX),s=Math.abs(t.clientY-e.clientY);return i>=s?t.clientX-e.clientX>0?l:p:t.clientY-e.clientY>0?c:d},getDistance:function(t,e){var i=e.clientX-t.clientX,s=e.clientY-t.clientY;return Math.sqrt(i*i+s*s)},getScale:function(t,e){return t.length>=2&&e.length>=2?this.getDistance(e[0],e[1])/this.getDistance(t[0],t[1]):1},getRotation:function(t,e){return t.length>=2&&e.length>=2?this.getAngle(e[1],e[0])-this.getAngle(t[1],t[0]):0},isVertical:function(t){return t==c||t==d},setPrefixedCss:function(t,e,i,s){var o=["","Webkit","Moz","O","ms"];e=x.toCamelCase(e);for(var n=0;n0&&this.started&&(r=v),this.started=!0;var d=this.collectEventData(i,r,o,t);return e!=y&&s.call(D,d),a&&(d.changedLength=h,d.eventType=a,s.call(D,d),d.eventType=r,delete d.changedLength),r==y&&(s.call(D,d),this.started=!1),r},determineEventTypes:function(){var t;return t=a.HAS_POINTEREVENTS?o.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:a.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],h[g]=t[0],h[v]=t[1],h[y]=t[2],h},getTouchList:function(t,e){if(a.HAS_POINTEREVENTS)return M.getTouchList();if(t.touches){if(e==v)return t.touches;var i=[],s=[].concat(x.toArray(t.touches),x.toArray(t.changedTouches)),o=[];return x.each(s,function(t){x.inArray(i,t.identifier)===!1&&o.push(t),i.push(t.identifier)}),o}return t.identifier=1,[t]},collectEventData:function(t,e,i,s){var o=m;return x.inStr(s.type,"mouse")||M.matchType(u,s)?o=u:M.matchType(f,s)&&(o=f),{center:x.getCenter(i),timeStamp:Date.now(),target:s.target,touches:i,eventType:e,pointerType:o,srcEvent:s,preventDefault:function(){var t=this.srcEvent;t.preventManipulation&&t.preventManipulation(),t.preventDefault&&t.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return D.stopDetect()}}}},M=a.PointerEvent={pointers:{},getTouchList:function(){var t=[];return x.each(this.pointers,function(e){t.push(e)}),t},updatePointer:function(t,e){t==y||t!=y&&1!==e.buttons?delete this.pointers[e.pointerId]:(e.identifier=e.pointerId,this.pointers[e.pointerId]=e)},matchType:function(t,e){if(!e.pointerType)return!1;var i=e.pointerType,s={};return s[u]=i===(e.MSPOINTER_TYPE_MOUSE||u),s[m]=i===(e.MSPOINTER_TYPE_TOUCH||m),s[f]=i===(e.MSPOINTER_TYPE_PEN||f),s[t]},reset:function(){this.pointers={}}},D=a.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(t,e){this.current||(this.stopped=!1,this.current={inst:t,startEvent:x.extend({},e),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(e))},detect:function(t){if(this.current&&!this.stopped){t=this.extendEventData(t);var e=this.current.inst,i=e.options;return x.each(this.gestures,function(s){!this.stopped&&e.enabled&&i[s.name]&&s.handler.call(s,t,e)},this),this.current&&(this.current.lastEvent=t),t.eventType==y&&this.stopDetect(),t}},stopDetect:function(){this.previous=x.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(t,e,i,s,o){var n=this.current,r=!1,h=n.lastCalcEvent,d=n.lastCalcData;h&&t.timeStamp-h.timeStamp>a.CALCULATE_INTERVAL&&(e=h.center,i=t.timeStamp-h.timeStamp,s=t.center.clientX-h.center.clientX,o=t.center.clientY-h.center.clientY,r=!0),(t.eventType==_||t.eventType==b)&&(n.futureCalcEvent=t),(!n.lastCalcEvent||r)&&(d.velocity=x.getVelocity(i,s,o),d.angle=x.getAngle(e,t.center),d.direction=x.getDirection(e,t.center),n.lastCalcEvent=n.futureCalcEvent||t,n.futureCalcEvent=t),t.velocityX=d.velocity.x,t.velocityY=d.velocity.y,t.interimAngle=d.angle,t.interimDirection=d.direction},extendEventData:function(t){var e=this.current,i=e.startEvent,s=e.lastEvent||i;(t.eventType==_||t.eventType==b)&&(i.touches=[],x.each(t.touches,function(t){i.touches.push({clientX:t.clientX,clientY:t.clientY})}));var o=t.timeStamp-i.timeStamp,n=t.center.clientX-i.center.clientX,r=t.center.clientY-i.center.clientY;return this.getCalculatedData(t,s.center,o,n,r),x.extend(t,{startEvent:i,deltaTime:o,deltaX:n,deltaY:r,distance:x.getDistance(i.center,t.center),angle:x.getAngle(i.center,t.center),direction:x.getDirection(i.center,t.center),scale:x.getScale(i.touches,t.touches),rotation:x.getRotation(i.touches,t.touches)}),t},register:function(t){var e=t.defaults||{};return e[t.name]===n&&(e[t.name]=!0),x.extend(a.defaults,e,!0),t.index=t.index||1e3,this.gestures.push(t),this.gestures.sort(function(t,e){return t.indexe.index?1:0}),this.gestures}};a.Instance=function(t,e){var i=this;r(),this.element=t,this.enabled=!0,x.each(e,function(t,i){delete e[i],e[x.toCamelCase(i)]=t}),this.options=x.extend(x.extend({},a.defaults),e||{}),this.options.behavior&&x.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=w.onTouch(t,g,function(t){i.enabled&&t.eventType==g?D.startDetect(i,t):t.eventType==_&&D.detect(t)}),this.eventHandlers=[]},a.Instance.prototype={on:function(t,e){var i=this;return w.on(i.element,t,e,function(t){i.eventHandlers.push({gesture:t,handler:e})}),i},off:function(t,e){var i=this;return w.off(i.element,t,e,function(t){var s=x.inArray({gesture:t,handler:e});s!==!1&&i.eventHandlers.splice(s,1)}),i},trigger:function(t,e){e||(e={});var i=a.DOCUMENT.createEvent("Event");i.initEvent(t,!0,!0),i.gesture=e;var s=this.element;return x.hasParent(e.target,s)&&(s=e.target),s.dispatchEvent(i),this},enable:function(t){return this.enabled=t,this},dispose:function(){var t,e;for(x.toggleBehavior(this.element,this.options.behavior,!1),t=-1;e=this.eventHandlers[++t];)x.off(this.element,e.gesture,e.handler);return this.eventHandlers=[],w.off(this.element,h[g],this.eventStartHandler),null}},function(t){function e(e,s){var o=D.current;if(!(s.options.dragMaxTouches>0&&e.touches.length>s.options.dragMaxTouches))switch(e.eventType){case g:i=!1;break;case v:if(e.distance0)){var r=Math.abs(s.options.dragMinDistance/e.distance);n.pageX+=e.deltaX*r,n.pageY+=e.deltaY*r,n.clientX+=e.deltaX*r,n.clientY+=e.deltaY*r,e=D.extendEventData(e)}(o.lastEvent.dragLockToAxis||s.options.dragLockToAxis&&s.options.dragLockMinDistance<=e.distance)&&(e.dragLockToAxis=!0);var a=o.lastEvent.direction;e.dragLockToAxis&&a!==e.direction&&(e.direction=x.isVertical(a)?e.deltaY<0?c:d:e.deltaX<0?l:p),i||(s.trigger(t+"start",e),i=!0),s.trigger(t,e),s.trigger(t+e.direction,e);var h=x.isVertical(e.direction);(s.options.dragBlockVertical&&h||s.options.dragBlockHorizontal&&!h)&&e.preventDefault();break;case b:i&&e.changedLength<=s.options.dragMaxTouches&&(s.trigger(t+"end",e),i=!1);break;case y:i=!1}}var i=!1;a.gestures.Drag={name:t,index:50,handler:e,defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),a.gestures.Gesture={name:"gesture",index:1337,handler:function(t,e){e.trigger(this.name,t)}},function(t){function e(e,s){var o=s.options,n=D.current;switch(e.eventType){case g:clearTimeout(i),n.name=t,i=setTimeout(function(){n&&n.name==t&&s.trigger(t,e)},o.holdTimeout);break;case v:e.distance>o.holdThreshold&&clearTimeout(i);break;case b:clearTimeout(i)}}var i;a.gestures.Hold={name:t,index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:e}}("hold"),a.gestures.Release={name:"release",index:1/0,handler:function(t,e){t.eventType==b&&e.trigger(this.name,t)}},a.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(t,e){if(t.eventType==b){var i=t.touches.length,s=e.options;if(is.swipeMaxTouches)return;(t.velocityX>s.swipeVelocityX||t.velocityY>s.swipeVelocityY)&&(e.trigger(this.name,t),e.trigger(this.name+t.direction,t))}}},function(t){function e(e,s){var o,n,r=s.options,a=D.current,h=D.previous;switch(e.eventType){case g:i=!1;break;case v:i=i||e.distance>r.tapMaxDistance;break;case y:!x.inStr(e.srcEvent.type,"cancel")&&e.deltaTimes.options.transformMinRotation&&s.trigger("rotate",e),o>s.options.transformMinScale&&(s.trigger("pinch",e),s.trigger("pinch"+(e.scale<1?"in":"out"),e));break;case b:i&&e.changedLength<2&&(s.trigger(t+"end",e),i=!1)}}var i=!1;a.gestures.Transform={name:t,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:e}}("transform"),s=function(){return a}.call(e,i,e,t),!(s!==n&&(t.exports=s))}(window)},function(t,e){e.startWithClustering=function(){this.clusterToFit(this.constants.clustering.initialMaxNodes,!0),this.updateLabels(),this.stabilize&&this._stabilize(),this.start()},e.clusterToFit=function(t,e){for(var i=this.nodeIndices.length,s=50,o=0;i>t&&s>o;)o%3==0?(this.forceAggregateHubs(!0),this.normalizeClusterLevels()):this.increaseClusterLevel(),i=this.nodeIndices.length,o+=1;o>0&&1==e&&this.repositionNodes(),this._updateCalculationNodes()},e.openCluster=function(t){var e=this.moving;if(t.clusterSize>this.constants.clustering.sectorThreshold&&this._nodeInActiveArea(t)&&("default"!=this._sector()||1!=this.nodeIndices.length)){this._addSector(t);for(var i=0;this.nodeIndices.lengthi;)this.decreaseClusterLevel(),i+=1}else this._expandClusterNode(t,!1,!0),this._updateNodeIndexList(),this._updateDynamicEdges(),this._updateCalculationNodes(),this.updateLabels();this.moving!=e&&this.start()},e.updateClustersDefault=function(){1==this.constants.clustering.enabled&&this.updateClusters(0,!1,!1)},e.increaseClusterLevel=function(){this.updateClusters(-1,!1,!0)},e.decreaseClusterLevel=function(){this.updateClusters(1,!1,!0)},e.updateClusters=function(t,e,i,s){var o=this.moving,n=this.nodeIndices.length;this.previousScale>this.scale&&0==t&&this._collapseSector(),this.previousScale>this.scale||-1==t?this._formClusters(i):(this.previousScalethis.scale||-1==t)&&(this._aggregateHubs(i),this._updateNodeIndexList()),(this.previousScale>this.scale||-1==t)&&(this.handleChains(),this._updateNodeIndexList()),this.previousScale=this.scale,this._updateDynamicEdges(),this.updateLabels(),this.nodeIndices.lengththis.constants.clustering.chainThreshold&&this._reduceAmountOfChains(1-this.constants.clustering.chainThreshold/t)},e._aggregateHubs=function(t){this._getHubSize(),this._formClustersByHub(t,!1)},e.forceAggregateHubs=function(t){var e=this.moving,i=this.nodeIndices.length;this._aggregateHubs(!0),this._updateNodeIndexList(),this._updateDynamicEdges(),this.updateLabels(),this.nodeIndices.length!=i&&(this.clusterSession+=1),(0==t||void 0===t)&&this.moving!=e&&this.start()},e._openClustersBySize=function(){for(var t in this.nodes)if(this.nodes.hasOwnProperty(t)){var e=this.nodes[t];1==e.inView()&&(e.width*this.scale>this.constants.clustering.screenSizeThreshold*this.frame.canvas.clientWidth||e.height*this.scale>this.constants.clustering.screenSizeThreshold*this.frame.canvas.clientHeight)&&this.openCluster(e)}},e._openClusters=function(t,e){for(var i=0;i1&&(t.clusterSizei)){var r=n.from,a=n.to;n.to.options.mass>n.from.options.mass&&(r=n.to,a=n.from),1==a.dynamicEdgesLength?this._addToCluster(r,a,!1):1==r.dynamicEdgesLength&&this._addToCluster(a,r,!1)}}},e._forceClustersByZoom=function(){for(var t in this.nodes)if(this.nodes.hasOwnProperty(t)){var e=this.nodes[t];if(1==e.dynamicEdgesLength&&0!=e.dynamicEdges.length){var i=e.dynamicEdges[0],s=i.toId==e.id?this.nodes[i.fromId]:this.nodes[i.toId];e.id!=s.id&&(s.options.mass>e.options.mass?this._addToCluster(s,e,!0):this._addToCluster(e,s,!0))}}},e._clusterToSmallestNeighbour=function(t){for(var e=-1,i=null,s=0;so.clusterSessions.length&&(e=o.clusterSessions.length,i=o)}null!=o&&void 0!==this.nodes[o.id]&&this._addToCluster(o,t,!0)},e._formClustersByHub=function(t,e){for(var i in this.nodes)this.nodes.hasOwnProperty(i)&&this._formClusterFromHub(this.nodes[i],t,e)},e._formClusterFromHub=function(t,e,i,s){if(void 0===s&&(s=0),t.dynamicEdgesLength>=this.hubThreshold&&0==i||t.dynamicEdgesLength==this.hubThreshold&&1==i){for(var o,n,r,a=this.constants.clustering.clusterEdgeThreshold/this.scale,h=!1,d=[],l=t.dynamicEdges.length,c=0;l>c;c++)d.push(t.dynamicEdges[c].id); +if(0==e)for(h=!1,c=0;l>c;c++){var p=this.edges[d[c]];if(void 0!==p&&p.connected&&p.toId!=p.fromId&&(o=p.to.x-p.from.x,n=p.to.y-p.from.y,r=Math.sqrt(o*o+n*n),a>r)){h=!0;break}}if(!e&&h||e)for(c=0;l>c;c++)if(p=this.edges[d[c]],void 0!==p){var u=this.nodes[p.fromId==t.id?p.toId:p.fromId];u.dynamicEdges.length<=this.hubThreshold+s&&u.id!=t.id&&this._addToCluster(t,u,e)}}},e._addToCluster=function(t,e,i){t.containedNodes[e.id]=e;for(var s=0;s1)for(var s=0;s1&&(e.label="[".concat(String(e.clusterSize),"]"))}for(t in this.nodes)this.nodes.hasOwnProperty(t)&&(e=this.nodes[t],1==e.clusterSize&&(e.label=void 0!==e.originalLabel?e.originalLabel:String(e.id)))},e.normalizeClusterLevels=function(){var t,e=0,i=1e9,s=0;for(t in this.nodes)this.nodes.hasOwnProperty(t)&&(s=this.nodes[t].clusterSessions.length,s>e&&(e=s),i>s&&(i=s));if(e-i>this.constants.clustering.clusterLevelDifference){var o=this.nodeIndices.length,n=e-this.constants.clustering.clusterLevelDifference;for(t in this.nodes)this.nodes.hasOwnProperty(t)&&this.nodes[t].clusterSessions.lengths&&(s=n.dynamicEdgesLength),t+=n.dynamicEdgesLength,e+=Math.pow(n.dynamicEdgesLength,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r);this.hubThreshold=Math.floor(t+2*a),this.hubThreshold>s&&(this.hubThreshold=s)},e._reduceAmountOfChains=function(t){this.hubThreshold=2;var e=Math.floor(this.nodeIndices.length*t);for(var i in this.nodes)this.nodes.hasOwnProperty(i)&&2==this.nodes[i].dynamicEdgesLength&&this.nodes[i].dynamicEdges.length>=2&&e>0&&(this._formClusterFromHub(this.nodes[i],!0,!0,1),e-=1)},e._getChainFraction=function(){var t=0,e=0;for(var i in this.nodes)this.nodes.hasOwnProperty(i)&&(2==this.nodes[i].dynamicEdgesLength&&this.nodes[i].dynamicEdges.length>=2&&(t+=1),e+=1);return t/e}},function(t,e,i){var s=i(1),o=i(40);e._putDataInSector=function(){this.sectors.active[this._sector()].nodes=this.nodes,this.sectors.active[this._sector()].edges=this.edges,this.sectors.active[this._sector()].nodeIndices=this.nodeIndices},e._switchToSector=function(t,e){void 0===e||"active"==e?this._switchToActiveSector(t):this._switchToFrozenSector(t)},e._switchToActiveSector=function(t){this.nodeIndices=this.sectors.active[t].nodeIndices,this.nodes=this.sectors.active[t].nodes,this.edges=this.sectors.active[t].edges},e._switchToSupportSector=function(){this.nodeIndices=this.sectors.support.nodeIndices,this.nodes=this.sectors.support.nodes,this.edges=this.sectors.support.edges},e._switchToFrozenSector=function(t){this.nodeIndices=this.sectors.frozen[t].nodeIndices,this.nodes=this.sectors.frozen[t].nodes,this.edges=this.sectors.frozen[t].edges},e._loadLatestSector=function(){this._switchToSector(this._sector())},e._sector=function(){return this.activeSector[this.activeSector.length-1]},e._previousSector=function(){if(this.activeSector.length>1)return this.activeSector[this.activeSector.length-2];throw new TypeError("there are not enough sectors in the this.activeSector array.")},e._setActiveSector=function(t){this.activeSector.push(t)},e._forgetLastSector=function(){this.activeSector.pop()},e._createNewSector=function(t){this.sectors.active[t]={nodes:{},edges:{},nodeIndices:[],formationScale:this.scale,drawingNode:void 0},this.sectors.active[t].drawingNode=new o({id:t,color:{background:"#eaefef",border:"495c5e"}},{},{},this.constants),this.sectors.active[t].drawingNode.clusterSize=2},e._deleteActiveSector=function(t){delete this.sectors.active[t]},e._deleteFrozenSector=function(t){delete this.sectors.frozen[t]},e._freezeSector=function(t){this.sectors.frozen[t]=this.sectors.active[t],this._deleteActiveSector(t)},e._activateSector=function(t){this.sectors.active[t]=this.sectors.frozen[t],this._deleteFrozenSector(t)},e._mergeThisWithFrozen=function(t){for(var e in this.nodes)this.nodes.hasOwnProperty(e)&&(this.sectors.frozen[t].nodes[e]=this.nodes[e]);for(var i in this.edges)this.edges.hasOwnProperty(i)&&(this.sectors.frozen[t].edges[i]=this.edges[i]);for(var s=0;s1?this[t](o[0],o[1]):this[t](e))}return this._loadLatestSector(),i},e._doInSupportSector=function(t,e){var i=!1;if(void 0===e)this._switchToSupportSector(),i=this[t]();else{this._switchToSupportSector();var s=Array.prototype.splice.call(arguments,1);i=s.length>1?this[t](s[0],s[1]):this[t](e)}return this._loadLatestSector(),i},e._doInAllFrozenSectors=function(t,e){if(void 0===e)for(var i in this.sectors.frozen)this.sectors.frozen.hasOwnProperty(i)&&(this._switchToFrozenSector(i),this[t]());else for(var i in this.sectors.frozen)if(this.sectors.frozen.hasOwnProperty(i)){this._switchToFrozenSector(i);var s=Array.prototype.splice.call(arguments,1);s.length>1?this[t](s[0],s[1]):this[t](e)}this._loadLatestSector()},e._doInAllSectors=function(t,e){var i=Array.prototype.splice.call(arguments,1);void 0===e?(this._doInAllActiveSectors(t),this._doInAllFrozenSectors(t)):i.length>1?(this._doInAllActiveSectors(t,i[0],i[1]),this._doInAllFrozenSectors(t,i[0],i[1])):(this._doInAllActiveSectors(t,e),this._doInAllFrozenSectors(t,e))},e._clearNodeIndexList=function(){var t=this._sector();this.sectors.active[t].nodeIndices=[],this.nodeIndices=this.sectors.active[t].nodeIndices},e._drawSectorNodes=function(t,e){var i,s=1e9,o=-1e9,n=1e9,r=-1e9;for(var a in this.sectors[e])if(this.sectors[e].hasOwnProperty(a)&&void 0!==this.sectors[e][a].drawingNode){this._switchToSector(a,e),s=1e9,o=-1e9,n=1e9,r=-1e9;for(var h in this.nodes)this.nodes.hasOwnProperty(h)&&(i=this.nodes[h],i.resize(t),n>i.x-.5*i.width&&(n=i.x-.5*i.width),ri.y-.5*i.height&&(s=i.y-.5*i.height),o0?this.nodes[i[i.length-1]]:null},e._getEdgesOverlappingWith=function(t,e){var i=this.edges;for(var s in i)i.hasOwnProperty(s)&&i[s].isOverlappingWith(t)&&e.push(s)},e._getAllEdgesOverlappingWith=function(t){var e=[];return this._doInAllActiveSectors("_getEdgesOverlappingWith",t,e),e},e._getEdgeAt=function(t){var e=this._pointerToPositionObject(t),i=this._getAllEdgesOverlappingWith(e);return i.length>0?this.edges[i[i.length-1]]:null},e._addToSelection=function(t){t instanceof s?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t},e._addToHover=function(t){t instanceof s?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t},e._removeFromSelection=function(t){t instanceof s?delete this.selectionObj.nodes[t.id]:delete this.selectionObj.edges[t.id]},e._unselectAll=function(t){void 0===t&&(t=!1);for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&this.selectionObj.nodes[e].unselect();for(var i in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(i)&&this.selectionObj.edges[i].unselect();this.selectionObj={nodes:{},edges:{}},0==t&&this.emit("select",this.getSelection())},e._unselectClusters=function(t){void 0===t&&(t=!1);for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&this.selectionObj.nodes[e].clusterSize>1&&(this.selectionObj.nodes[e].unselect(),this._removeFromSelection(this.selectionObj.nodes[e]));0==t&&this.emit("select",this.getSelection())},e._getSelectedNodeCount=function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);return t},e._getSelectedNode=function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return this.selectionObj.nodes[t];return null},e._getSelectedEdge=function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t];return null},e._getSelectedEdgeCount=function(){var t=0;for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(t+=1);return t},e._getSelectedObjectCount=function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);for(var i in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(i)&&(t+=1);return t},e._selectionIsEmpty=function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return!1;for(var e in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(e))return!1;return!0},e._clusterInSelection=function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].clusterSize>1)return!0;return!1},e._selectConnectedEdges=function(t){for(var e=0;ei;i++){o=t[i];var n=this.nodes[o];if(!n)throw new RangeError('Node with id "'+o+'" not found');this._selectObject(n,!0,!0,e,!0)}this.redraw()},e.selectEdges=function(t){var e,i,s;if(!t||void 0==t.length)throw"Selection must be an array with ids";for(this._unselectAll(!0),e=0,i=t.length;i>e;e++){s=t[e];var o=this.edges[s];if(!o)throw new RangeError('Edge with id "'+s+'" not found');this._selectObject(o,!0,!0,!1,!0)}this.redraw()},e._updateSelection=function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&(this.nodes.hasOwnProperty(t)||delete this.selectionObj.nodes[t]);for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(this.edges.hasOwnProperty(e)||delete this.selectionObj.edges[e])}},function(t,e,i){var s=i(1),o=i(40),n=i(37);e._clearManipulatorBar=function(){for(;this.manipulationDiv.hasChildNodes();)this.manipulationDiv.removeChild(this.manipulationDiv.firstChild);this.manipulationDOM={},this._manipulationReleaseOverload=function(){},delete this.sectors.support.nodes.targetNode,delete this.sectors.support.nodes.targetViaNode,this.controlNodesActive=!1},e._restoreOverloadedFunctions=function(){for(var t in this.cachedFunctions)this.cachedFunctions.hasOwnProperty(t)&&(this[t]=this.cachedFunctions[t])},e._toggleEditMode=function(){this.editMode=!this.editMode;var t=this.manipulationDiv,e=this.closeDiv,i=this.editModeDiv;1==this.editMode?(t.style.display="block",e.style.display="block",i.style.display="none",e.onclick=this._toggleEditMode.bind(this)):(t.style.display="none",e.style.display="none",i.style.display="block",e.onclick=null),this._createManipulatorBar()},e._createManipulatorBar=function(){this.boundFunction&&this.off("select",this.boundFunction);var t=this.constants.locales[this.constants.locale];if(void 0!==this.edgeBeingEdited&&(this.edgeBeingEdited._disableControlNodes(),this.edgeBeingEdited=void 0,this.selectedControlNode=null,this.controlNodesActive=!1,this._redraw()),this._restoreOverloadedFunctions(),this.freezeSimulation=!1,this.blockConnectingEdgeSelection=!1,this.forceAppendSelection=!1,this.manipulationDOM={},1==this.editMode){for(;this.manipulationDiv.hasChildNodes();)this.manipulationDiv.removeChild(this.manipulationDiv.firstChild);this.manipulationDOM.addNodeSpan=document.createElement("span"),this.manipulationDOM.addNodeSpan.className="network-manipulationUI add",this.manipulationDOM.addNodeLabelSpan=document.createElement("span"),this.manipulationDOM.addNodeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.addNodeLabelSpan.innerHTML=t.addNode,this.manipulationDOM.addNodeSpan.appendChild(this.manipulationDOM.addNodeLabelSpan),this.manipulationDOM.seperatorLineDiv1=document.createElement("div"),this.manipulationDOM.seperatorLineDiv1.className="network-seperatorLine",this.manipulationDOM.addEdgeSpan=document.createElement("span"),this.manipulationDOM.addEdgeSpan.className="network-manipulationUI connect",this.manipulationDOM.addEdgeLabelSpan=document.createElement("span"),this.manipulationDOM.addEdgeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.addEdgeLabelSpan.innerHTML=t.addEdge,this.manipulationDOM.addEdgeSpan.appendChild(this.manipulationDOM.addEdgeLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.addNodeSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv1),this.manipulationDiv.appendChild(this.manipulationDOM.addEdgeSpan),1==this._getSelectedNodeCount()&&this.triggerFunctions.edit?(this.manipulationDOM.seperatorLineDiv2=document.createElement("div"),this.manipulationDOM.seperatorLineDiv2.className="network-seperatorLine",this.manipulationDOM.editNodeSpan=document.createElement("span"),this.manipulationDOM.editNodeSpan.className="network-manipulationUI edit",this.manipulationDOM.editNodeLabelSpan=document.createElement("span"),this.manipulationDOM.editNodeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.editNodeLabelSpan.innerHTML=t.editNode,this.manipulationDOM.editNodeSpan.appendChild(this.manipulationDOM.editNodeLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv2),this.manipulationDiv.appendChild(this.manipulationDOM.editNodeSpan)):1==this._getSelectedEdgeCount()&&0==this._getSelectedNodeCount()&&(this.manipulationDOM.seperatorLineDiv3=document.createElement("div"),this.manipulationDOM.seperatorLineDiv3.className="network-seperatorLine",this.manipulationDOM.editEdgeSpan=document.createElement("span"),this.manipulationDOM.editEdgeSpan.className="network-manipulationUI edit",this.manipulationDOM.editEdgeLabelSpan=document.createElement("span"),this.manipulationDOM.editEdgeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.editEdgeLabelSpan.innerHTML=t.editEdge,this.manipulationDOM.editEdgeSpan.appendChild(this.manipulationDOM.editEdgeLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv3),this.manipulationDiv.appendChild(this.manipulationDOM.editEdgeSpan)),0==this._selectionIsEmpty()&&(this.manipulationDOM.seperatorLineDiv4=document.createElement("div"),this.manipulationDOM.seperatorLineDiv4.className="network-seperatorLine",this.manipulationDOM.deleteSpan=document.createElement("span"),this.manipulationDOM.deleteSpan.className="network-manipulationUI delete",this.manipulationDOM.deleteLabelSpan=document.createElement("span"),this.manipulationDOM.deleteLabelSpan.className="network-manipulationLabel",this.manipulationDOM.deleteLabelSpan.innerHTML=t.del,this.manipulationDOM.deleteSpan.appendChild(this.manipulationDOM.deleteLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv4),this.manipulationDiv.appendChild(this.manipulationDOM.deleteSpan)),this.manipulationDOM.addNodeSpan.onclick=this._createAddNodeToolbar.bind(this),this.manipulationDOM.addEdgeSpan.onclick=this._createAddEdgeToolbar.bind(this),1==this._getSelectedNodeCount()&&this.triggerFunctions.edit?this.manipulationDOM.editNodeSpan.onclick=this._editNode.bind(this):1==this._getSelectedEdgeCount()&&0==this._getSelectedNodeCount()&&(this.manipulationDOM.editEdgeSpan.onclick=this._createEditEdgeToolbar.bind(this)),0==this._selectionIsEmpty()&&(this.manipulationDOM.deleteSpan.onclick=this._deleteSelected.bind(this)),this.closeDiv.onclick=this._toggleEditMode.bind(this),this.boundFunction=this._createManipulatorBar.bind(this),this.on("select",this.boundFunction)}else{for(;this.editModeDiv.hasChildNodes();)this.editModeDiv.removeChild(this.editModeDiv.firstChild);this.manipulationDOM.editModeSpan=document.createElement("span"),this.manipulationDOM.editModeSpan.className="network-manipulationUI edit editmode",this.manipulationDOM.editModeLabelSpan=document.createElement("span"),this.manipulationDOM.editModeLabelSpan.className="network-manipulationLabel",this.manipulationDOM.editModeLabelSpan.innerHTML=t.edit,this.manipulationDOM.editModeSpan.appendChild(this.manipulationDOM.editModeLabelSpan),this.editModeDiv.appendChild(this.manipulationDOM.editModeSpan),this.manipulationDOM.editModeSpan.onclick=this._toggleEditMode.bind(this)}},e._createAddNodeToolbar=function(){this._clearManipulatorBar(),this.boundFunction&&this.off("select",this.boundFunction);var t=this.constants.locales[this.constants.locale];this.manipulationDOM={},this.manipulationDOM.backSpan=document.createElement("span"),this.manipulationDOM.backSpan.className="network-manipulationUI back",this.manipulationDOM.backLabelSpan=document.createElement("span"),this.manipulationDOM.backLabelSpan.className="network-manipulationLabel",this.manipulationDOM.backLabelSpan.innerHTML=t.back,this.manipulationDOM.backSpan.appendChild(this.manipulationDOM.backLabelSpan),this.manipulationDOM.seperatorLineDiv1=document.createElement("div"),this.manipulationDOM.seperatorLineDiv1.className="network-seperatorLine",this.manipulationDOM.descriptionSpan=document.createElement("span"),this.manipulationDOM.descriptionSpan.className="network-manipulationUI none",this.manipulationDOM.descriptionLabelSpan=document.createElement("span"),this.manipulationDOM.descriptionLabelSpan.className="network-manipulationLabel",this.manipulationDOM.descriptionLabelSpan.innerHTML=t.addDescription,this.manipulationDOM.descriptionSpan.appendChild(this.manipulationDOM.descriptionLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.backSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv1),this.manipulationDiv.appendChild(this.manipulationDOM.descriptionSpan),this.manipulationDOM.backSpan.onclick=this._createManipulatorBar.bind(this),this.boundFunction=this._addNode.bind(this),this.on("select",this.boundFunction)},e._createAddEdgeToolbar=function(){this._clearManipulatorBar(),this._unselectAll(!0),this.freezeSimulation=!0;var t=this.constants.locales[this.constants.locale];this.boundFunction&&this.off("select",this.boundFunction),this._unselectAll(),this.forceAppendSelection=!1,this.blockConnectingEdgeSelection=!0,this.manipulationDOM={},this.manipulationDOM.backSpan=document.createElement("span"),this.manipulationDOM.backSpan.className="network-manipulationUI back",this.manipulationDOM.backLabelSpan=document.createElement("span"),this.manipulationDOM.backLabelSpan.className="network-manipulationLabel",this.manipulationDOM.backLabelSpan.innerHTML=t.back,this.manipulationDOM.backSpan.appendChild(this.manipulationDOM.backLabelSpan),this.manipulationDOM.seperatorLineDiv1=document.createElement("div"),this.manipulationDOM.seperatorLineDiv1.className="network-seperatorLine",this.manipulationDOM.descriptionSpan=document.createElement("span"),this.manipulationDOM.descriptionSpan.className="network-manipulationUI none",this.manipulationDOM.descriptionLabelSpan=document.createElement("span"),this.manipulationDOM.descriptionLabelSpan.className="network-manipulationLabel",this.manipulationDOM.descriptionLabelSpan.innerHTML=t.edgeDescription,this.manipulationDOM.descriptionSpan.appendChild(this.manipulationDOM.descriptionLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.backSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv1),this.manipulationDiv.appendChild(this.manipulationDOM.descriptionSpan),this.manipulationDOM.backSpan.onclick=this._createManipulatorBar.bind(this),this.boundFunction=this._handleConnect.bind(this),this.on("select",this.boundFunction),this.cachedFunctions._handleTouch=this._handleTouch,this.cachedFunctions._manipulationReleaseOverload=this._manipulationReleaseOverload,this.cachedFunctions._handleDragStart=this._handleDragStart,this.cachedFunctions._handleDragEnd=this._handleDragEnd,this._handleTouch=this._handleConnect,this._manipulationReleaseOverload=function(){},this._handleDragStart=function(){},this._handleDragEnd=this._finishConnect,this._redraw()},e._createEditEdgeToolbar=function(){this._clearManipulatorBar(),this.controlNodesActive=!0,this.boundFunction&&this.off("select",this.boundFunction),this.edgeBeingEdited=this._getSelectedEdge(),this.edgeBeingEdited._enableControlNodes();var t=this.constants.locales[this.constants.locale];this.manipulationDOM={},this.manipulationDOM.backSpan=document.createElement("span"),this.manipulationDOM.backSpan.className="network-manipulationUI back",this.manipulationDOM.backLabelSpan=document.createElement("span"),this.manipulationDOM.backLabelSpan.className="network-manipulationLabel",this.manipulationDOM.backLabelSpan.innerHTML=t.back,this.manipulationDOM.backSpan.appendChild(this.manipulationDOM.backLabelSpan),this.manipulationDOM.seperatorLineDiv1=document.createElement("div"),this.manipulationDOM.seperatorLineDiv1.className="network-seperatorLine",this.manipulationDOM.descriptionSpan=document.createElement("span"),this.manipulationDOM.descriptionSpan.className="network-manipulationUI none",this.manipulationDOM.descriptionLabelSpan=document.createElement("span"),this.manipulationDOM.descriptionLabelSpan.className="network-manipulationLabel",this.manipulationDOM.descriptionLabelSpan.innerHTML=t.editEdgeDescription,this.manipulationDOM.descriptionSpan.appendChild(this.manipulationDOM.descriptionLabelSpan),this.manipulationDiv.appendChild(this.manipulationDOM.backSpan),this.manipulationDiv.appendChild(this.manipulationDOM.seperatorLineDiv1),this.manipulationDiv.appendChild(this.manipulationDOM.descriptionSpan),this.manipulationDOM.backSpan.onclick=this._createManipulatorBar.bind(this),this.cachedFunctions._handleTouch=this._handleTouch,this.cachedFunctions._manipulationReleaseOverload=this._manipulationReleaseOverload,this.cachedFunctions._handleTap=this._handleTap,this.cachedFunctions._handleDragStart=this._handleDragStart,this.cachedFunctions._handleOnDrag=this._handleOnDrag,this._handleTouch=this._selectControlNode,this._handleTap=function(){},this._handleOnDrag=this._controlNodeDrag,this._handleDragStart=function(){},this._manipulationReleaseOverload=this._releaseControlNode,this._redraw()},e._selectControlNode=function(t){this.edgeBeingEdited.controlNodes.from.unselect(),this.edgeBeingEdited.controlNodes.to.unselect(),this.selectedControlNode=this.edgeBeingEdited._getSelectedControlNode(this._XconvertDOMtoCanvas(t.x),this._YconvertDOMtoCanvas(t.y)),null!==this.selectedControlNode&&(this.selectedControlNode.select(),this.freezeSimulation=!0),this._redraw()},e._controlNodeDrag=function(t){var e=this._getPointer(t.gesture.center);null!==this.selectedControlNode&&void 0!==this.selectedControlNode&&(this.selectedControlNode.x=this._XconvertDOMtoCanvas(e.x),this.selectedControlNode.y=this._YconvertDOMtoCanvas(e.y)),this._redraw()},e._releaseControlNode=function(t){var e=this._getNodeAt(t);null!==e?(1==this.edgeBeingEdited.controlNodes.from.selected&&(this._editEdge(e.id,this.edgeBeingEdited.to.id),this.edgeBeingEdited.controlNodes.from.unselect()),1==this.edgeBeingEdited.controlNodes.to.selected&&(this._editEdge(this.edgeBeingEdited.from.id,e.id),this.edgeBeingEdited.controlNodes.to.unselect())):this.edgeBeingEdited._restoreControlNodes(),this.freezeSimulation=!1,this._redraw()},e._handleConnect=function(t){if(0==this._getSelectedNodeCount()){var e=this._getNodeAt(t);if(null!=e)if(e.clusterSize>1)alert(this.constants.locales[this.constants.locale].createEdgeError);else{this._selectObject(e,!1);var i=this.sectors.support.nodes;i.targetNode=new o({id:"targetNode"},{},{},this.constants);var s=i.targetNode;s.x=e.x,s.y=e.y,this.edges.connectionEdge=new n({id:"connectionEdge",from:e.id,to:s.id},this,this.constants);var r=this.edges.connectionEdge;r.from=e,r.connected=!0,r.options.smoothCurves={enabled:!0,dynamic:!1,type:"continuous",roundness:.5},r.selected=!0,r.to=s,this.cachedFunctions._handleOnDrag=this._handleOnDrag,this._handleOnDrag=function(t){var e=this._getPointer(t.gesture.center),i=this.edges.connectionEdge; +i.to.x=this._XconvertDOMtoCanvas(e.x),i.to.y=this._YconvertDOMtoCanvas(e.y)},this.moving=!0,this.start()}}},e._finishConnect=function(t){if(1==this._getSelectedNodeCount()){var e=this._getPointer(t.gesture.center);this._handleOnDrag=this.cachedFunctions._handleOnDrag,delete this.cachedFunctions._handleOnDrag;var i=this.edges.connectionEdge.fromId;delete this.edges.connectionEdge,delete this.sectors.support.nodes.targetNode,delete this.sectors.support.nodes.targetViaNode;var s=this._getNodeAt(e);null!=s&&(s.clusterSize>1?alert(this.constants.locales[this.constants.locale].createEdgeError):(this._createEdge(i,s.id),this._createManipulatorBar())),this._unselectAll()}},e._addNode=function(){if(this._selectionIsEmpty()&&1==this.editMode){var t=this._pointerToPositionObject(this.pointerPosition),e={id:s.randomUUID(),x:t.left,y:t.top,label:"new",allowedToMoveX:!0,allowedToMoveY:!0};if(this.triggerFunctions.add){if(2!=this.triggerFunctions.add.length)throw new Error("The function for add does not support two arguments (data,callback)");var i=this;this.triggerFunctions.add(e,function(t){i.nodesData.add(t),i._createManipulatorBar(),i.moving=!0,i.start()})}else this.nodesData.add(e),this._createManipulatorBar(),this.moving=!0,this.start()}},e._createEdge=function(t,e){if(1==this.editMode){var i={from:t,to:e};if(this.triggerFunctions.connect){if(2!=this.triggerFunctions.connect.length)throw new Error("The function for connect does not support two arguments (data,callback)");var s=this;this.triggerFunctions.connect(i,function(t){s.edgesData.add(t),s.moving=!0,s.start()})}else this.edgesData.add(i),this.moving=!0,this.start()}},e._editEdge=function(t,e){if(1==this.editMode){var i={id:this.edgeBeingEdited.id,from:t,to:e};if(this.triggerFunctions.editEdge){if(2!=this.triggerFunctions.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");var s=this;this.triggerFunctions.editEdge(i,function(t){s.edgesData.update(t),s.moving=!0,s.start()})}else this.edgesData.update(i),this.moving=!0,this.start()}},e._editNode=function(){if(!this.triggerFunctions.edit||1!=this.editMode)throw new Error("No edit function has been bound to this button");var t=this._getSelectedNode(),e={id:t.id,label:t.label,group:t.options.group,shape:t.options.shape,color:{background:t.options.color.background,border:t.options.color.border,highlight:{background:t.options.color.highlight.background,border:t.options.color.highlight.border}}};if(2!=this.triggerFunctions.edit.length)throw new Error("The function for edit does not support two arguments (data, callback)");var i=this;this.triggerFunctions.edit(e,function(t){i.nodesData.update(t),i._createManipulatorBar(),i.moving=!0,i.start()})},e._deleteSelected=function(){if(!this._selectionIsEmpty()&&1==this.editMode)if(this._clusterInSelection())alert(this.constants.locales[this.constants.locale].deleteClusterError);else{var t=this.getSelectedNodes(),e=this.getSelectedEdges();if(this.triggerFunctions.del){var i=this,s={nodes:t,edges:e};if(2!=this.triggerFunctions.del.length)throw new Error("The function for delete does not support two arguments (data, callback)");this.triggerFunctions.del(s,function(t){i.edgesData.remove(t.edges),i.nodesData.remove(t.nodes),i._unselectAll(),i.moving=!0,i.start()})}else this.edgesData.remove(e),this.nodesData.remove(t),this._unselectAll(),this.moving=!0,this.start()}}},function(t,e,i){var s=(i(1),i(45));e._cleanNavigation=function(){if(0!=this.navigationHammers.existing.length){for(var t=0;t0){this.constants.hierarchicalLayout.levelSeparation="RL"==this.constants.hierarchicalLayout.direction||"DU"==this.constants.hierarchicalLayout.direction?this.constants.hierarchicalLayout.levelSeparation<0?this.constants.hierarchicalLayout.levelSeparation:-1*this.constants.hierarchicalLayout.levelSeparation:Math.abs(this.constants.hierarchicalLayout.levelSeparation),"RL"==this.constants.hierarchicalLayout.direction||"LR"==this.constants.hierarchicalLayout.direction?1==this.constants.smoothCurves.enabled&&(this.constants.smoothCurves.type="vertical"):1==this.constants.smoothCurves.enabled&&(this.constants.smoothCurves.type="horizontal");var t,e,i=0,s=!1,o=!1;for(e in this.nodes)this.nodes.hasOwnProperty(e)&&(t=this.nodes[e],-1!=t.level?s=!0:o=!0,is&&(n.xFixed=!1,n.x=i[n.level].minPos,r=!0):n.yFixed&&n.level>s&&(n.yFixed=!1,n.y=i[n.level].minPos,r=!0),1==r&&(i[n.level].minPos+=i[n.level].nodeSpacing,n.edges.length>1&&this._placeBranchNodes(n.edges,n.id,i,n.level))}},e._setLevel=function(t,e,i){for(var s=0;st)&&(o.level=t,o.edges.length>1&&this._setLevel(t+1,o.edges,o.id))}},e._setLevelDirected=function(t,e,i){this.nodes[i].hierarchyEnumerated=!0;for(var s=0;s1&&o.hierarchyEnumerated===!1&&this._setLevelDirected(o.level,o.edges,o.id)}},e._restoreNodes=function(){for(var t in this.nodes)this.nodes.hasOwnProperty(t)&&(this.nodes[t].xFixed=!1,this.nodes[t].yFixed=!1)}},function(t,e,i){function s(){this.constants.smoothCurves.enabled=!this.constants.smoothCurves.enabled;var t=document.getElementById("graph_toggleSmooth");t.style.background=1==this.constants.smoothCurves.enabled?"#A4FF56":"#FF8532",this._configureSmoothCurves(!1)}function o(){for(var t in this.calculationNodes)this.calculationNodes.hasOwnProperty(t)&&(this.calculationNodes[t].vx=0,this.calculationNodes[t].vy=0,this.calculationNodes[t].fx=0,this.calculationNodes[t].fy=0);1==this.constants.hierarchicalLayout.enabled?(this._setupHierarchicalLayout(),a.call(this,"graph_H_nd",1,"physics_hierarchicalRepulsion_nodeDistance"),a.call(this,"graph_H_cg",1,"physics_centralGravity"),a.call(this,"graph_H_sc",1,"physics_springConstant"),a.call(this,"graph_H_sl",1,"physics_springLength"),a.call(this,"graph_H_damp",1,"physics_damping")):this.repositionNodes(),this.moving=!0,this.start()}function n(){var t="No options are required, default values used.",e=[],i=document.getElementById("graph_physicsMethod1"),s=document.getElementById("graph_physicsMethod2");if(1==i.checked){if(this.constants.physics.barnesHut.gravitationalConstant!=this.backupConstants.physics.barnesHut.gravitationalConstant&&e.push("gravitationalConstant: "+this.constants.physics.barnesHut.gravitationalConstant),this.constants.physics.centralGravity!=this.backupConstants.physics.barnesHut.centralGravity&&e.push("centralGravity: "+this.constants.physics.centralGravity),this.constants.physics.springLength!=this.backupConstants.physics.barnesHut.springLength&&e.push("springLength: "+this.constants.physics.springLength),this.constants.physics.springConstant!=this.backupConstants.physics.barnesHut.springConstant&&e.push("springConstant: "+this.constants.physics.springConstant),this.constants.physics.damping!=this.backupConstants.physics.barnesHut.damping&&e.push("damping: "+this.constants.physics.damping),0!=e.length){t="var options = {",t+="physics: {barnesHut: {";for(var o=0;othis.constants.clustering.clusterThreshold&&1==this.constants.clustering.enabled&&this.clusterToFit(this.constants.clustering.reduceToNodes,!1),this._calculateForces())},e._calculateForces=function(){this._calculateGravitationalForces(),this._calculateNodeForces(),this.constants.physics.springConstant>0&&(1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic?this._calculateSpringForcesWithSupport():1==this.constants.physics.hierarchicalRepulsion.enabled?this._calculateHierarchicalSpringForces():this._calculateSpringForces())},e._updateCalculationNodes=function(){if(1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic){this.calculationNodes={},this.calculationNodeIndices=[];for(var t in this.nodes)this.nodes.hasOwnProperty(t)&&(this.calculationNodes[t]=this.nodes[t]);var e=this.sectors.support.nodes;for(var i in e)e.hasOwnProperty(i)&&(this.edges.hasOwnProperty(e[i].parentEdgeId)?this.calculationNodes[i]=e[i]:e[i]._setForce(0,0));for(var s in this.calculationNodes)this.calculationNodes.hasOwnProperty(s)&&this.calculationNodeIndices.push(s)}else this.calculationNodes=this.nodes,this.calculationNodeIndices=this.nodeIndices},e._calculateGravitationalForces=function(){var t,e,i,s,o,n=this.calculationNodes,r=this.constants.physics.centralGravity,a=0;for(o=0;oSimulation Mode:Barnes HutRepulsionHierarchical
Options:
',this.containerElement.parentElement.insertBefore(this.physicsConfiguration,this.containerElement),this.optionsDiv=document.createElement("div"),this.optionsDiv.style.fontSize="14px",this.optionsDiv.style.fontFamily="verdana",this.containerElement.parentElement.insertBefore(this.optionsDiv,this.containerElement);var e;e=document.getElementById("graph_BH_gc"),e.onchange=a.bind(this,"graph_BH_gc",-1,"physics_barnesHut_gravitationalConstant"),e=document.getElementById("graph_BH_cg"),e.onchange=a.bind(this,"graph_BH_cg",1,"physics_centralGravity"),e=document.getElementById("graph_BH_sc"),e.onchange=a.bind(this,"graph_BH_sc",1,"physics_springConstant"),e=document.getElementById("graph_BH_sl"),e.onchange=a.bind(this,"graph_BH_sl",1,"physics_springLength"),e=document.getElementById("graph_BH_damp"),e.onchange=a.bind(this,"graph_BH_damp",1,"physics_damping"),e=document.getElementById("graph_R_nd"),e.onchange=a.bind(this,"graph_R_nd",1,"physics_repulsion_nodeDistance"),e=document.getElementById("graph_R_cg"),e.onchange=a.bind(this,"graph_R_cg",1,"physics_centralGravity"),e=document.getElementById("graph_R_sc"),e.onchange=a.bind(this,"graph_R_sc",1,"physics_springConstant"),e=document.getElementById("graph_R_sl"),e.onchange=a.bind(this,"graph_R_sl",1,"physics_springLength"),e=document.getElementById("graph_R_damp"),e.onchange=a.bind(this,"graph_R_damp",1,"physics_damping"),e=document.getElementById("graph_H_nd"),e.onchange=a.bind(this,"graph_H_nd",1,"physics_hierarchicalRepulsion_nodeDistance"),e=document.getElementById("graph_H_cg"),e.onchange=a.bind(this,"graph_H_cg",1,"physics_centralGravity"),e=document.getElementById("graph_H_sc"),e.onchange=a.bind(this,"graph_H_sc",1,"physics_springConstant"),e=document.getElementById("graph_H_sl"),e.onchange=a.bind(this,"graph_H_sl",1,"physics_springLength"),e=document.getElementById("graph_H_damp"),e.onchange=a.bind(this,"graph_H_damp",1,"physics_damping"),e=document.getElementById("graph_H_direction"),e.onchange=a.bind(this,"graph_H_direction",t,"hierarchicalLayout_direction"),e=document.getElementById("graph_H_levsep"),e.onchange=a.bind(this,"graph_H_levsep",1,"hierarchicalLayout_levelSeparation"),e=document.getElementById("graph_H_nspac"),e.onchange=a.bind(this,"graph_H_nspac",1,"hierarchicalLayout_nodeSpacing");var i=document.getElementById("graph_physicsMethod1"),d=document.getElementById("graph_physicsMethod2"),l=document.getElementById("graph_physicsMethod3");d.checked=!0,this.constants.physics.barnesHut.enabled&&(i.checked=!0),this.constants.hierarchicalLayout.enabled&&(l.checked=!0); +var c=document.getElementById("graph_toggleSmooth"),p=document.getElementById("graph_repositionNodes"),u=document.getElementById("graph_generateOptions");c.onclick=s.bind(this),p.onclick=o.bind(this),u.onclick=n.bind(this),c.style.background=1==this.constants.smoothCurves&&0==this.constants.dynamicSmoothCurves?"#A4FF56":"#FF8532",r.apply(this),i.onchange=r.bind(this),d.onchange=r.bind(this),l.onchange=r.bind(this)}},e._overWriteGraphConstants=function(t,e){var i=t.split("_");1==i.length?this.constants[i[0]]=e:2==i.length?this.constants[i[0]][i[1]]=e:3==i.length&&(this.constants[i[0]][i[1]][i[2]]=e)}},function(t){function e(t){throw new Error("Cannot find module '"+t+"'.")}e.keys=function(){return[]},e.resolve=e,t.exports=e,e.id=67},function(t,e){e._calculateNodeForces=function(){var t,e,i,s,o,n,r,a,h,d,l,c=this.calculationNodes,p=this.calculationNodeIndices,u=-2/3,m=4/3,f=this.constants.physics.repulsion.nodeDistance,g=f;for(d=0;di&&(r=.5*g>i?1:v*i+m,r*=0==n?1:1+n*this.constants.clustering.forceAmplification,r/=i,s=t*r,o=e*r,a.fx-=s,a.fy-=o,h.fx+=s,h.fy+=o)}}},function(t,e){e._calculateNodeForces=function(){var t,e,i,s,o,n,r,a,h,d,l=this.calculationNodes,c=this.calculationNodeIndices,p=this.constants.physics.hierarchicalRepulsion.nodeDistance;for(h=0;hi?-Math.pow(u*i,2)+Math.pow(u*p,2):0,0==i?i=.01:n/=i,s=t*n,o=e*n,r.fx-=s,r.fy-=o,a.fx+=s,a.fy+=o}},e._calculateHierarchicalSpringForces=function(){for(var t,e,i,s,o,n,r,a,h,d=this.edges,l=this.calculationNodes,c=this.calculationNodeIndices,p=0;pn;n++)t=e[i[n]],t.options.mass>0&&(this._getForceContribution(o.root.children.NW,t),this._getForceContribution(o.root.children.NE,t),this._getForceContribution(o.root.children.SW,t),this._getForceContribution(o.root.children.SE,t))}},e._getForceContribution=function(t,e){if(t.childrenCount>0){var i,s,o;if(i=t.centerOfMass.x-e.x,s=t.centerOfMass.y-e.y,o=Math.sqrt(i*i+s*s),o*t.calcSize>this.constants.physics.barnesHut.thetaInverted){0==o&&(o=.1*Math.random(),i=o);var n=this.constants.physics.barnesHut.gravitationalConstant*t.mass*e.options.mass/(o*o*o),r=i*n,a=s*n;e.fx+=r,e.fy+=a}else if(4==t.childrenCount)this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e);else if(t.children.data.id!=e.id){0==o&&(o=.5*Math.random(),i=o);var n=this.constants.physics.barnesHut.gravitationalConstant*t.mass*e.options.mass/(o*o*o),r=i*n,a=s*n;e.fx+=r,e.fy+=a}}},e._formBarnesHutTree=function(t,e){for(var i,s=e.length,o=Number.MAX_VALUE,n=Number.MAX_VALUE,r=-Number.MAX_VALUE,a=-Number.MAX_VALUE,h=0;s>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(o>d&&(o=d),d>r&&(r=d),n>l&&(n=l),l>a&&(a=l))}var c=Math.abs(r-o)-Math.abs(a-n);c>0?(n-=.5*c,a+=.5*c):(o+=.5*c,r-=.5*c);var p=1e-5,u=Math.max(p,Math.abs(r-o)),m=.5*u,f=.5*(o+r),g=.5*(n+a),v={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:f-m,maxX:f+m,minY:g-m,maxY:g+m},size:u,calcSize:1/u,children:{data:null},maxWidth:0,level:0,childrenCount:4}};for(this._splitBranch(v.root),h=0;s>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(v.root,i);this.barnesHutTree=v},e._updateBranchMass=function(t,e){var i=t.mass+e.options.mass,s=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=s,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=s,t.mass=i;var o=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")},e._placeInRegion=function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x==e.x&&t.children[i].children.data.y==e.y?(e.x+=Math.random(),e.y+=Math.random()):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e));break;case 4:this._placeInTree(t.children[i],e)}},e._splitBranch=function(t){var e=null;1==t.childrenCount&&(e=t.children.data,t.mass=0,t.centerOfMass.x=0,t.centerOfMass.y=0),t.childrenCount=4,t.children.data=null,this._insertRegion(t,"NW"),this._insertRegion(t,"NE"),this._insertRegion(t,"SW"),this._insertRegion(t,"SE"),null!=e&&this._placeInTree(t,e)},e._insertRegion=function(t,e){var i,s,o,n,r=.5*t.size;switch(e){case"NW":i=t.range.minX,s=t.range.minX+r,o=t.range.minY,n=t.range.minY+r;break;case"NE":i=t.range.minX+r,s=t.range.maxX,o=t.range.minY,n=t.range.minY+r;break;case"SW":i=t.range.minX,s=t.range.minX+r,o=t.range.minY+r,n=t.range.maxY;break;case"SE":i=t.range.minX+r,s=t.range.maxX,o=t.range.minY+r,n=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:s,minY:o,maxY:n},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}},e._drawTree=function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))},e._drawBranch=function(t,e,i){void 0===i&&(i="#FF0000"),4==t.childrenCount&&(this._drawBranch(t.children.NW,e),this._drawBranch(t.children.NE,e),this._drawBranch(t.children.SE,e),this._drawBranch(t.children.SW,e)),e.strokeStyle=i,e.beginPath(),e.moveTo(t.range.minX,t.range.minY),e.lineTo(t.range.maxX,t.range.minY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.minY),e.lineTo(t.range.maxX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.maxY),e.lineTo(t.range.minX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.minX,t.range.maxY),e.lineTo(t.range.minX,t.range.minY),e.stroke()}},function(t){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}}])}); //# sourceMappingURL=vis.map