diff --git a/dist/vis.css b/dist/vis.css index 40f15427..c028130a 100644 --- a/dist/vis.css +++ b/dist/vis.css @@ -13,6 +13,13 @@ box-shadow: 0 0 10px #86d5f8; } +/* override some bootstrap styles screwing up the timelines css */ + +.vis [class*="span"] { + min-height: 0; + width: auto; +} + .vis.timeline { } diff --git a/dist/vis.js b/dist/vis.js index 60be31ef..7b5e8b48 100644 --- a/dist/vis.js +++ b/dist/vis.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 3.7.1-SNAPSHOT - * @date 2014-11-21 + * @date 2014-11-25 * * @license * Copyright (C) 2011-2014 Almende B.V, http://almende.com @@ -8014,8 +8014,8 @@ return /******/ (function(modules) { // webpackBootstrap var changed = (this.start != newStart || this.end != newEnd); // if the new range does NOT overlap with the old range, emit checkRangedItems to avoid not showing ranged items (ranged meaning has end time, not neccesarily of type Range) - if (!((newStart >= this.start && newStart <= this.start) || (newEnd >= this.start && newEnd <= this.end)) && - !((this.start >= newStart && this.start <= newEnd) || (this.end >= newStart && this.end <= newEnd) )) { + if (!((newStart >= this.start && newStart <= this.end) || (newEnd >= this.start && newEnd <= this.end)) && + !((this.start >= newStart && this.start <= newEnd) || (this.end >= newStart && this.end <= newEnd) )) { this.body.emitter.emit('checkRangedItems'); } @@ -15490,7 +15490,6 @@ return /******/ (function(modules) { // webpackBootstrap type: "continuous", roundness: 0.5 }, - dynamicSmoothCurves: true, maxVelocity: 30, minVelocity: 0.1, // px/s stabilize: true, // stabilize before displaying the network @@ -15872,9 +15871,10 @@ return /******/ (function(modules) { // webpackBootstrap if (options) { var prop; - var fields = ['nodes','edges','smoothCurves','hierarchicalLayout','clustering','navigation','keyboard','dataManipulation', - 'onAdd','onEdit','onEditEdge','onConnect','onDelete','clickToUse' + var fields = ['nodes','edges','smoothCurves','hierarchicalLayout','clustering','navigation', + 'keyboard','dataManipulation','onAdd','onEdit','onEditEdge','onConnect','onDelete','clickToUse' ]; + // extend all but the values in fields util.selectiveNotDeepExtend(fields,this.constants, options); util.selectiveNotDeepExtend(['color'],this.constants.nodes, options.nodes); util.selectiveNotDeepExtend(['color','length'],this.constants.edges, options.edges); @@ -22824,7 +22824,7 @@ return /******/ (function(modules) { // webpackBootstrap DOMutil.drawBar(combinedData[i].x + drawData.offset, combinedData[i].y - heightOffset, drawData.width, group.zeroPosition - combinedData[i].y, group.className + ' bar', framework.svgElements, framework.svg); // draw points if (group.options.drawPoints.enabled == true) { - Points.draw(dataset, group, framework, drawData.offset); + Points.draw(combinedData, group, framework, drawData.offset); } } }; diff --git a/dist/vis.map b/dist/vis.map index a090845f..efc56ebd 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","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","sortNumber","obj","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","getMouseX","startMouseY","getMouseY","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","clientX","targetTouches","clientY","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","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","dragging","initTime","done","initStart","initEnd","changed","anyChanged","_cancelAnimation","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","gesture","deltaX","deltaY","diffRange","safeStart","safeEnd","fakeGesture","pointer","pointerDate","_pointerToDate","zoom","touches","hiddenDurationBefore","hiddenDurationAfter","move","EPSILON","orderByStart","orderByEnd","aTime","bTime","force","iMax","axis","collidingItem","jj","collision","nostack","subgroups","newTop","subgroup","SCALE","DAY","MILLISECOND","SECOND","MINUTE","HOUR","WEEKDAY","MONTH","YEAR","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","format","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","_updateGraph","BarGraphFunctions","yAxisLeft","yAxisRight","legendLeft","legendRight","_updateAllGroupData","_updateGroup","groupsContent","ungroupedCounter","rangePerPixelInv","preprocessedGroupData","processedGroupData","groupRanges","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","_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","_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","dynamicSmoothCurves","maxVelocity","minVelocity","stabilize","stabilizationIterations","dragNetwork","dragNodes","hideEdgesOnDrag","hideNodesOnDrag","constants","hoverObj","controlNodesActive","navigationHammers","existing","new","animationSpeed","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","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","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","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","maxWidth","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","convertEdge","dotEdge","graphEdge","graphData","dotNode","graphNode","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","dataRange","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__","_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","hour","minute","second","millisecond","_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","DATE","_overflowDayOfYear","isValid","_isValid","getTime","normalizeLocale","chooseLocale","names","loadLocale","oldLocale","hasModule","model","zone","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","parseTokenTimestampMs","parseTokenTimezone","parseTokenT","parseTokenDigits","parseTokenOneOrTwoDigits","parseTokenOrdinal","RegExp","regexpEscape","unescapeFormat","timezoneMinutesFromString","string","possibleTzMatches","tzChunk","parseTimezoneChunker","addTimeToArrayFromToken","datePartArray","monthsParse","_dayOfYear","parseTwoDigitYear","_isPm","isPM","_useUTC","weekdaysParse","_w","invalidWeekday","dayOfYearFromWeekInfo","weekYear","weekday","temp","GG","W","E","_week","gg","dayOfYearFromWeeks","dateFromConfig","currentDate","yearToUse","currentDateArray","makeUTCDate","getUTCMonth","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","ZZ","zoneAbbr","zz","zoneName","unix","lists","DDDD","_monthsShort","monthName","regex","_monthsParse","_weekdays","_weekdaysShort","_weekdaysMin","weekdayName","_weekdaysParse","_longDateFormat","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","defaultFormat","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","isSame","localAdjust","_changeInProgress","hasAlignedHourOffset","isoWeeksInYear","weekInfo","newLocaleData","getTimezoneOffset","isoWeeks","toJSON","withSuffix","toIsoString","asSeconds","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","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","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","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","sortNumber","obj","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","getMouseX","startMouseY","getMouseY","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","clientX","targetTouches","clientY","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","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","dragging","initTime","done","initStart","initEnd","changed","anyChanged","_cancelAnimation","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","gesture","deltaX","deltaY","diffRange","safeStart","safeEnd","fakeGesture","pointer","pointerDate","_pointerToDate","zoom","touches","hiddenDurationBefore","hiddenDurationAfter","move","EPSILON","orderByStart","orderByEnd","aTime","bTime","force","iMax","axis","collidingItem","jj","collision","nostack","subgroups","newTop","subgroup","SCALE","DAY","MILLISECOND","SECOND","MINUTE","HOUR","WEEKDAY","MONTH","YEAR","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","format","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","_updateGraph","BarGraphFunctions","yAxisLeft","yAxisRight","legendLeft","legendRight","_updateAllGroupData","_updateGroup","groupsContent","ungroupedCounter","rangePerPixelInv","preprocessedGroupData","processedGroupData","groupRanges","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","_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","_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","hoverObj","controlNodesActive","navigationHammers","existing","new","animationSpeed","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","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","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","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","maxWidth","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","convertEdge","dotEdge","graphEdge","graphData","dotNode","graphNode","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","dataRange","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__","_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","hour","minute","second","millisecond","_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","DATE","_overflowDayOfYear","isValid","_isValid","getTime","normalizeLocale","chooseLocale","names","loadLocale","oldLocale","hasModule","model","zone","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","parseTokenTimestampMs","parseTokenTimezone","parseTokenT","parseTokenDigits","parseTokenOneOrTwoDigits","parseTokenOrdinal","RegExp","regexpEscape","unescapeFormat","timezoneMinutesFromString","string","possibleTzMatches","tzChunk","parseTimezoneChunker","addTimeToArrayFromToken","datePartArray","monthsParse","_dayOfYear","parseTwoDigitYear","_isPm","isPM","_useUTC","weekdaysParse","_w","invalidWeekday","dayOfYearFromWeekInfo","weekYear","weekday","temp","GG","W","E","_week","gg","dayOfYearFromWeeks","dateFromConfig","currentDate","yearToUse","currentDateArray","makeUTCDate","getUTCMonth","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","ZZ","zoneAbbr","zz","zoneName","unix","lists","DDDD","_monthsShort","monthName","regex","_monthsParse","_weekdays","_weekdaysShort","_weekdaysMin","weekdayName","_weekdaysParse","_longDateFormat","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","defaultFormat","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","isSame","localAdjust","_changeInProgress","hasAlignedHourOffset","isoWeeksInYear","weekInfo","newLocaleData","getTimezoneOffset","isoWeeks","toJSON","withSuffix","toIsoString","asSeconds","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","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 diff --git a/dist/vis.min.css b/dist/vis.min.css index 452a89d5..dc3c1ece 100644 --- a/dist/vis.min.css +++ b/dist/vis.min.css @@ -1 +1 @@ -.vis .overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-active{box-shadow:0 0 10px #86d5f8}.vis.timeline.root{position:relative;border:1px solid #bfbfbf;overflow:hidden;padding:0;margin:0;box-sizing:border-box}.vis.timeline .vispanel{position:absolute;padding:0;margin:0;box-sizing:border-box}.vis.timeline .vispanel.bottom,.vis.timeline .vispanel.center,.vis.timeline .vispanel.left,.vis.timeline .vispanel.right,.vis.timeline .vispanel.top{border:1px #bfbfbf}.vis.timeline .vispanel.center,.vis.timeline .vispanel.left,.vis.timeline .vispanel.right{border-top-style:solid;border-bottom-style:solid;overflow:hidden}.vis.timeline .vispanel.bottom,.vis.timeline .vispanel.center,.vis.timeline .vispanel.top{border-left-style:solid;border-right-style:solid}.vis.timeline .background{overflow:hidden}.vis.timeline .vispanel>.content{position:relative}.vis.timeline .vispanel .shadow{position:absolute;width:100%;height:1px;box-shadow:0 0 10px rgba(0,0,0,.8)}.vis.timeline .vispanel .shadow.top{top:-1px;left:0}.vis.timeline .vispanel .shadow.bottom{bottom:-1px;left:0}.vis.timeline .labelset{position:relative;overflow:hidden;box-sizing:border-box}.vis.timeline .labelset .vlabel{position:relative;left:0;top:0;width:100%;color:#4d4d4d;box-sizing:border-box;border-bottom:1px solid #bfbfbf}.vis.timeline .labelset .vlabel:last-child{border-bottom:none}.vis.timeline .labelset .vlabel .inner{display:inline-block;padding:5px}.vis.timeline .labelset .vlabel .inner.hidden{padding:0}.vis.timeline .itemset{position:relative;padding:0;margin:0;box-sizing:border-box}.vis.timeline .itemset .background,.vis.timeline .itemset .foreground{position:absolute;width:100%;height:100%;overflow:visible}.vis.timeline .axis{position:absolute;width:100%;height:0;left:0;z-index:1}.vis.timeline .foreground .group{position:relative;box-sizing:border-box;border-bottom:1px solid #bfbfbf}.vis.timeline .foreground .group:last-child{border-bottom:none}.vis.timeline .item{position:absolute;color:#1A1A1A;border-color:#97B0F8;border-width:1px;background-color:#D5DDF6;display:inline-block;padding:5px}.vis.timeline .item.selected{border-color:#FFC200;background-color:#FFF785;z-index:2}.vis.timeline .editable .item.selected{cursor:move}.vis.timeline .item.point.selected{background-color:#FFF785}.vis.timeline .item.box{text-align:center;border-style:solid;border-radius:2px}.vis.timeline .item.point{background:0 0}.vis.timeline .item.dot{position:absolute;padding:0;border-width:4px;border-style:solid;border-radius:4px}.vis.timeline .item.range{border-style:solid;border-radius:2px;box-sizing:border-box;overflow:hidden}.vis.timeline .item.background{overflow:hidden;border:none;background-color:rgba(213,221,246,.4);box-sizing:border-box;padding:0;margin:0}.vis.timeline .item.range .content{position:relative;display:inline-block;overflow:hidden}.vis.timeline .item.background .content{position:absolute;display:inline-block;overflow:hidden;max-width:100%;margin:5px}.vis.timeline .item.line{padding:0;position:absolute;width:0;border-left-width:1px;border-left-style:solid}.vis.timeline .item .content{white-space:nowrap;overflow:hidden}.vis.timeline .item .delete{background:url(img/timeline/delete.png) top center no-repeat;position:absolute;width:24px;height:24px;top:0;right:-24px;cursor:pointer}.vis.timeline .item.range .drag-left{position:absolute;width:24px;height:100%;top:0;left:-4px;cursor:w-resize}.vis.timeline .item.range .drag-right{position:absolute;width:24px;height:100%;top:0;right:-4px;cursor:e-resize}.vis.timeline .timeaxis{position:relative;overflow:hidden}.vis.timeline .timeaxis.foreground{top:0;left:0;width:100%}.vis.timeline .timeaxis.background{position:absolute;top:0;left:0;width:100%;height:100%}.vis.timeline .timeaxis .text{position:absolute;color:#4d4d4d;padding:3px;white-space:nowrap}.vis.timeline .timeaxis .text.measure{position:absolute;padding-left:0;padding-right:0;margin-left:0;margin-right:0;visibility:hidden}.vis.timeline .timeaxis .grid.vertical{position:absolute;width:0;border-right:1px solid}.vis.timeline .timeaxis .grid.minor{border-color:#e5e5e5}.vis.timeline .timeaxis .grid.major{border-color:#bfbfbf}.vis.timeline .currenttime{background-color:#FF7F6E;width:2px;z-index:1}.vis.timeline .customtime{background-color:#6E94FF;width:2px;cursor:move;z-index:1}.vis.timeline .vispanel.background.horizontal .grid.horizontal{position:absolute;width:100%;height:0;border-bottom:1px solid}.vis.timeline .vispanel.background.horizontal .grid.minor{border-color:#e5e5e5}.vis.timeline .vispanel.background.horizontal .grid.major{border-color:#bfbfbf}.vis.timeline .dataaxis .yAxis.major{width:100%;position:absolute;color:#4d4d4d;white-space:nowrap}.vis.timeline .dataaxis .yAxis.major.measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis.timeline .dataaxis .yAxis.minor{position:absolute;width:100%;color:#bebebe;white-space:nowrap}.vis.timeline .dataaxis .yAxis.minor.measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis.timeline .dataaxis .yAxis.title{position:absolute;color:#4d4d4d;white-space:nowrap;bottom:20px;text-align:center}.vis.timeline .dataaxis .yAxis.title.measure{padding:0;margin:0;visibility:hidden;width:auto}.vis.timeline .dataaxis .yAxis.title.left{bottom:0;-webkit-transform-origin:left top;-moz-transform-origin:left top;-ms-transform-origin:left top;-o-transform-origin:left top;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.vis.timeline .dataaxis .yAxis.title.right{bottom:0;-webkit-transform-origin:right bottom;-moz-transform-origin:right bottom;-ms-transform-origin:right bottom;-o-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.vis.timeline .legend{background-color:rgba(247,252,255,.65);padding:5px;border-color:#b3b3b3;border-style:solid;border-width:1px;box-shadow:2px 2px 10px rgba(154,154,154,.55)}.vis.timeline .legendText{white-space:nowrap;display:inline-block}.vis.timeline .graphGroup0{fill:#4f81bd;fill-opacity:0;stroke-width:2px;stroke:#4f81bd}.vis.timeline .graphGroup1{fill:#f79646;fill-opacity:0;stroke-width:2px;stroke:#f79646}.vis.timeline .graphGroup2{fill:#8c51cf;fill-opacity:0;stroke-width:2px;stroke:#8c51cf}.vis.timeline .graphGroup3{fill:#75c841;fill-opacity:0;stroke-width:2px;stroke:#75c841}.vis.timeline .graphGroup4{fill:#ff0100;fill-opacity:0;stroke-width:2px;stroke:#ff0100}.vis.timeline .graphGroup5{fill:#37d8e6;fill-opacity:0;stroke-width:2px;stroke:#37d8e6}.vis.timeline .graphGroup6{fill:#042662;fill-opacity:0;stroke-width:2px;stroke:#042662}.vis.timeline .graphGroup7{fill:#00ff26;fill-opacity:0;stroke-width:2px;stroke:#00ff26}.vis.timeline .graphGroup8{fill:#f0f;fill-opacity:0;stroke-width:2px;stroke:#f0f}.vis.timeline .graphGroup9{fill:#8f3938;fill-opacity:0;stroke-width:2px;stroke:#8f3938}.vis.timeline .fill{fill-opacity:.1;stroke:none}.vis.timeline .bar{fill-opacity:.5;stroke-width:1px}.vis.timeline .point{stroke-width:2px;fill-opacity:1}.vis.timeline .legendBackground{stroke-width:1px;fill-opacity:.9;fill:#fff;stroke:#c2c2c2}.vis.timeline .outline{stroke-width:1px;fill-opacity:1;fill:#fff;stroke:#e5e5e5}.vis.timeline .iconFill{fill-opacity:.3;stroke:none}div.network-manipulationDiv{border-width:0;border-bottom:1px;border-style:solid;border-color:#d6d9d8;background:#fff;background:-moz-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#fff),color-stop(48%,#fcfcfc),color-stop(50%,#fafafa),color-stop(100%,#fcfcfc));background:-webkit-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-o-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-ms-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:linear-gradient(to bottom,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#fcfcfc', GradientType=0);position:absolute;left:0;top:0;width:100%;height:30px}div.network-manipulation-editMode{position:absolute;left:0;top:0;height:30px;margin-top:20px}div.network-manipulation-closeDiv{position:absolute;right:0;top:0;width:30px;height:30px;background-position:20px 3px;background-repeat:no-repeat;background-image:url(img/network/cross.png);cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.network-manipulation-closeDiv:hover{opacity:.6}span.network-manipulationUI{font-family:verdana;font-size:12px;-moz-border-radius:15px;border-radius:15px;display:inline-block;background-position:0 0;background-repeat:no-repeat;height:24px;margin:-14px 0 0 10px;vertical-align:middle;cursor:pointer;padding:0 8px;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}span.network-manipulationUI:hover{box-shadow:1px 1px 8px rgba(0,0,0,.2)}span.network-manipulationUI:active{box-shadow:1px 1px 8px rgba(0,0,0,.5)}span.network-manipulationUI.back{background-image:url(img/network/backIcon.png)}span.network-manipulationUI.none:hover{box-shadow:1px 1px 8px transparent;cursor:default}span.network-manipulationUI.none:active{box-shadow:1px 1px 8px transparent}span.network-manipulationUI.none{padding:0}span.network-manipulationUI.notification{margin:2px;font-weight:700}span.network-manipulationUI.add{background-image:url(img/network/addNodeIcon.png)}span.network-manipulationUI.edit{background-image:url(img/network/editIcon.png)}span.network-manipulationUI.edit.editmode{background-color:#fcfcfc;border-style:solid;border-width:1px;border-color:#ccc}span.network-manipulationUI.connect{background-image:url(img/network/connectIcon.png)}span.network-manipulationUI.delete{background-image:url(img/network/deleteIcon.png)}span.network-manipulationLabel{margin:0 0 0 23px;line-height:25px}div.network-seperatorLine{display:inline-block;width:1px;height:20px;background-color:#bdbdbd;margin:5px 7px 0 15px}div.network-navigation_wrapper{position:absolute;left:0;top:0;width:100%;height:100%}div.network-navigation{width:34px;height:34px;-moz-border-radius:17px;border-radius:17px;position:absolute;display:inline-block;background-position:2px 2px;background-repeat:no-repeat;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.network-navigation:hover{box-shadow:0 0 3px 3px rgba(56,207,21,.3)}div.network-navigation:active{box-shadow:0 0 1px 3px rgba(56,207,21,.95)}div.network-navigation.up{background-image:url(img/network/upArrow.png);bottom:50px;left:55px}div.network-navigation.down{background-image:url(img/network/downArrow.png);bottom:10px;left:55px}div.network-navigation.left{background-image:url(img/network/leftArrow.png);bottom:10px;left:15px}div.network-navigation.right{background-image:url(img/network/rightArrow.png);bottom:10px;left:95px}div.network-navigation.zoomIn{background-image:url(img/network/plus.png);bottom:10px;right:15px}div.network-navigation.zoomOut{background-image:url(img/network/minus.png);bottom:10px;right:55px}div.network-navigation.zoomExtends{background-image:url(img/network/zoomExtends.png);bottom:50px;right:15px} \ No newline at end of file +.vis .overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-active{box-shadow:0 0 10px #86d5f8}.vis [class*=span]{min-height:0;width:auto}.vis.timeline.root{position:relative;border:1px solid #bfbfbf;overflow:hidden;padding:0;margin:0;box-sizing:border-box}.vis.timeline .vispanel{position:absolute;padding:0;margin:0;box-sizing:border-box}.vis.timeline .vispanel.bottom,.vis.timeline .vispanel.center,.vis.timeline .vispanel.left,.vis.timeline .vispanel.right,.vis.timeline .vispanel.top{border:1px #bfbfbf}.vis.timeline .vispanel.center,.vis.timeline .vispanel.left,.vis.timeline .vispanel.right{border-top-style:solid;border-bottom-style:solid;overflow:hidden}.vis.timeline .vispanel.bottom,.vis.timeline .vispanel.center,.vis.timeline .vispanel.top{border-left-style:solid;border-right-style:solid}.vis.timeline .background{overflow:hidden}.vis.timeline .vispanel>.content{position:relative}.vis.timeline .vispanel .shadow{position:absolute;width:100%;height:1px;box-shadow:0 0 10px rgba(0,0,0,.8)}.vis.timeline .vispanel .shadow.top{top:-1px;left:0}.vis.timeline .vispanel .shadow.bottom{bottom:-1px;left:0}.vis.timeline .labelset{position:relative;overflow:hidden;box-sizing:border-box}.vis.timeline .labelset .vlabel{position:relative;left:0;top:0;width:100%;color:#4d4d4d;box-sizing:border-box;border-bottom:1px solid #bfbfbf}.vis.timeline .labelset .vlabel:last-child{border-bottom:none}.vis.timeline .labelset .vlabel .inner{display:inline-block;padding:5px}.vis.timeline .labelset .vlabel .inner.hidden{padding:0}.vis.timeline .itemset{position:relative;padding:0;margin:0;box-sizing:border-box}.vis.timeline .itemset .background,.vis.timeline .itemset .foreground{position:absolute;width:100%;height:100%;overflow:visible}.vis.timeline .axis{position:absolute;width:100%;height:0;left:0;z-index:1}.vis.timeline .foreground .group{position:relative;box-sizing:border-box;border-bottom:1px solid #bfbfbf}.vis.timeline .foreground .group:last-child{border-bottom:none}.vis.timeline .item{position:absolute;color:#1A1A1A;border-color:#97B0F8;border-width:1px;background-color:#D5DDF6;display:inline-block;padding:5px}.vis.timeline .item.selected{border-color:#FFC200;background-color:#FFF785;z-index:2}.vis.timeline .editable .item.selected{cursor:move}.vis.timeline .item.point.selected{background-color:#FFF785}.vis.timeline .item.box{text-align:center;border-style:solid;border-radius:2px}.vis.timeline .item.point{background:0 0}.vis.timeline .item.dot{position:absolute;padding:0;border-width:4px;border-style:solid;border-radius:4px}.vis.timeline .item.range{border-style:solid;border-radius:2px;box-sizing:border-box;overflow:hidden}.vis.timeline .item.background{overflow:hidden;border:none;background-color:rgba(213,221,246,.4);box-sizing:border-box;padding:0;margin:0}.vis.timeline .item.range .content{position:relative;display:inline-block;overflow:hidden}.vis.timeline .item.background .content{position:absolute;display:inline-block;overflow:hidden;max-width:100%;margin:5px}.vis.timeline .item.line{padding:0;position:absolute;width:0;border-left-width:1px;border-left-style:solid}.vis.timeline .item .content{white-space:nowrap;overflow:hidden}.vis.timeline .item .delete{background:url(img/timeline/delete.png) top center no-repeat;position:absolute;width:24px;height:24px;top:0;right:-24px;cursor:pointer}.vis.timeline .item.range .drag-left{position:absolute;width:24px;height:100%;top:0;left:-4px;cursor:w-resize}.vis.timeline .item.range .drag-right{position:absolute;width:24px;height:100%;top:0;right:-4px;cursor:e-resize}.vis.timeline .timeaxis{position:relative;overflow:hidden}.vis.timeline .timeaxis.foreground{top:0;left:0;width:100%}.vis.timeline .timeaxis.background{position:absolute;top:0;left:0;width:100%;height:100%}.vis.timeline .timeaxis .text{position:absolute;color:#4d4d4d;padding:3px;white-space:nowrap}.vis.timeline .timeaxis .text.measure{position:absolute;padding-left:0;padding-right:0;margin-left:0;margin-right:0;visibility:hidden}.vis.timeline .timeaxis .grid.vertical{position:absolute;width:0;border-right:1px solid}.vis.timeline .timeaxis .grid.minor{border-color:#e5e5e5}.vis.timeline .timeaxis .grid.major{border-color:#bfbfbf}.vis.timeline .currenttime{background-color:#FF7F6E;width:2px;z-index:1}.vis.timeline .customtime{background-color:#6E94FF;width:2px;cursor:move;z-index:1}.vis.timeline .vispanel.background.horizontal .grid.horizontal{position:absolute;width:100%;height:0;border-bottom:1px solid}.vis.timeline .vispanel.background.horizontal .grid.minor{border-color:#e5e5e5}.vis.timeline .vispanel.background.horizontal .grid.major{border-color:#bfbfbf}.vis.timeline .dataaxis .yAxis.major{width:100%;position:absolute;color:#4d4d4d;white-space:nowrap}.vis.timeline .dataaxis .yAxis.major.measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis.timeline .dataaxis .yAxis.minor{position:absolute;width:100%;color:#bebebe;white-space:nowrap}.vis.timeline .dataaxis .yAxis.minor.measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis.timeline .dataaxis .yAxis.title{position:absolute;color:#4d4d4d;white-space:nowrap;bottom:20px;text-align:center}.vis.timeline .dataaxis .yAxis.title.measure{padding:0;margin:0;visibility:hidden;width:auto}.vis.timeline .dataaxis .yAxis.title.left{bottom:0;-webkit-transform-origin:left top;-moz-transform-origin:left top;-ms-transform-origin:left top;-o-transform-origin:left top;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.vis.timeline .dataaxis .yAxis.title.right{bottom:0;-webkit-transform-origin:right bottom;-moz-transform-origin:right bottom;-ms-transform-origin:right bottom;-o-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.vis.timeline .legend{background-color:rgba(247,252,255,.65);padding:5px;border-color:#b3b3b3;border-style:solid;border-width:1px;box-shadow:2px 2px 10px rgba(154,154,154,.55)}.vis.timeline .legendText{white-space:nowrap;display:inline-block}.vis.timeline .graphGroup0{fill:#4f81bd;fill-opacity:0;stroke-width:2px;stroke:#4f81bd}.vis.timeline .graphGroup1{fill:#f79646;fill-opacity:0;stroke-width:2px;stroke:#f79646}.vis.timeline .graphGroup2{fill:#8c51cf;fill-opacity:0;stroke-width:2px;stroke:#8c51cf}.vis.timeline .graphGroup3{fill:#75c841;fill-opacity:0;stroke-width:2px;stroke:#75c841}.vis.timeline .graphGroup4{fill:#ff0100;fill-opacity:0;stroke-width:2px;stroke:#ff0100}.vis.timeline .graphGroup5{fill:#37d8e6;fill-opacity:0;stroke-width:2px;stroke:#37d8e6}.vis.timeline .graphGroup6{fill:#042662;fill-opacity:0;stroke-width:2px;stroke:#042662}.vis.timeline .graphGroup7{fill:#00ff26;fill-opacity:0;stroke-width:2px;stroke:#00ff26}.vis.timeline .graphGroup8{fill:#f0f;fill-opacity:0;stroke-width:2px;stroke:#f0f}.vis.timeline .graphGroup9{fill:#8f3938;fill-opacity:0;stroke-width:2px;stroke:#8f3938}.vis.timeline .fill{fill-opacity:.1;stroke:none}.vis.timeline .bar{fill-opacity:.5;stroke-width:1px}.vis.timeline .point{stroke-width:2px;fill-opacity:1}.vis.timeline .legendBackground{stroke-width:1px;fill-opacity:.9;fill:#fff;stroke:#c2c2c2}.vis.timeline .outline{stroke-width:1px;fill-opacity:1;fill:#fff;stroke:#e5e5e5}.vis.timeline .iconFill{fill-opacity:.3;stroke:none}div.network-manipulationDiv{border-width:0;border-bottom:1px;border-style:solid;border-color:#d6d9d8;background:#fff;background:-moz-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#fff),color-stop(48%,#fcfcfc),color-stop(50%,#fafafa),color-stop(100%,#fcfcfc));background:-webkit-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-o-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-ms-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:linear-gradient(to bottom,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#fcfcfc', GradientType=0);position:absolute;left:0;top:0;width:100%;height:30px}div.network-manipulation-editMode{position:absolute;left:0;top:0;height:30px;margin-top:20px}div.network-manipulation-closeDiv{position:absolute;right:0;top:0;width:30px;height:30px;background-position:20px 3px;background-repeat:no-repeat;background-image:url(img/network/cross.png);cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.network-manipulation-closeDiv:hover{opacity:.6}span.network-manipulationUI{font-family:verdana;font-size:12px;-moz-border-radius:15px;border-radius:15px;display:inline-block;background-position:0 0;background-repeat:no-repeat;height:24px;margin:-14px 0 0 10px;vertical-align:middle;cursor:pointer;padding:0 8px;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}span.network-manipulationUI:hover{box-shadow:1px 1px 8px rgba(0,0,0,.2)}span.network-manipulationUI:active{box-shadow:1px 1px 8px rgba(0,0,0,.5)}span.network-manipulationUI.back{background-image:url(img/network/backIcon.png)}span.network-manipulationUI.none:hover{box-shadow:1px 1px 8px transparent;cursor:default}span.network-manipulationUI.none:active{box-shadow:1px 1px 8px transparent}span.network-manipulationUI.none{padding:0}span.network-manipulationUI.notification{margin:2px;font-weight:700}span.network-manipulationUI.add{background-image:url(img/network/addNodeIcon.png)}span.network-manipulationUI.edit{background-image:url(img/network/editIcon.png)}span.network-manipulationUI.edit.editmode{background-color:#fcfcfc;border-style:solid;border-width:1px;border-color:#ccc}span.network-manipulationUI.connect{background-image:url(img/network/connectIcon.png)}span.network-manipulationUI.delete{background-image:url(img/network/deleteIcon.png)}span.network-manipulationLabel{margin:0 0 0 23px;line-height:25px}div.network-seperatorLine{display:inline-block;width:1px;height:20px;background-color:#bdbdbd;margin:5px 7px 0 15px}div.network-navigation_wrapper{position:absolute;left:0;top:0;width:100%;height:100%}div.network-navigation{width:34px;height:34px;-moz-border-radius:17px;border-radius:17px;position:absolute;display:inline-block;background-position:2px 2px;background-repeat:no-repeat;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.network-navigation:hover{box-shadow:0 0 3px 3px rgba(56,207,21,.3)}div.network-navigation:active{box-shadow:0 0 1px 3px rgba(56,207,21,.95)}div.network-navigation.up{background-image:url(img/network/upArrow.png);bottom:50px;left:55px}div.network-navigation.down{background-image:url(img/network/downArrow.png);bottom:10px;left:55px}div.network-navigation.left{background-image:url(img/network/leftArrow.png);bottom:10px;left:15px}div.network-navigation.right{background-image:url(img/network/rightArrow.png);bottom:10px;left:95px}div.network-navigation.zoomIn{background-image:url(img/network/plus.png);bottom:10px;right:15px}div.network-navigation.zoomOut{background-image:url(img/network/minus.png);bottom:10px;right:55px}div.network-navigation.zoomExtends{background-image:url(img/network/zoomExtends.png);bottom:50px;right:15px} \ No newline at end of file diff --git a/dist/vis.min.js b/dist/vis.min.js index 6769d465..ab90e68b 100644 --- a/dist/vis.min.js +++ b/dist/vis.min.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 3.7.1-SNAPSHOT - * @date 2014-11-21 + * @date 2014-11-25 * * @license * Copyright (C) 2011-2014 Almende B.V, http://almende.com @@ -24,16 +24,16 @@ */ !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 l,this.eye=new h(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)}var o=i(56),n=i(3),r=i(4),a=i(1),h=i(10),d=i(9),l=i(7),c=i(8),p=i(11),u=i(12);o(s.prototype),s.prototype._setScale=function(){this.scale=new h(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 f=(t-p)/(m-p),g=240*f,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 u(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,o=this._convert3Dto2D(new h(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 u(this.yMin,this.yMax,this.yStep,s),i.start(),i.getCurrent()0?this.xMin:this.xMax,o=this._convert3Dto2D(new h(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 u(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 h(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 h(n,r,this.zMin)),e=this._convert3Dto2D(new h(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 h(this.xMin,this.yMin,this.zMin)),m=this._convert3Dto2D(new h(this.xMax,this.yMin,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(p.x,p.y),g.lineTo(m.x,m.y),g.stroke(),p=this._convert3Dto2D(new h(this.xMin,this.yMax,this.zMin)),m=this._convert3Dto2D(new h(this.xMax,this.yMax,this.zMin)),g.strokeStyle=this.colorAxis,g.beginPath(),g.moveTo(p.x,p.y),g.lineTo(m.x,m.y),g.stroke(),g.lineWidth=1,t=this._convert3Dto2D(new h(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new h(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 h(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new h(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 h(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 S=this.yLabel;S.length>0&&(l=.1/this.scale.x,n=Math.sin(_)>0?this.xMin-l:this.xMax+l,r=(this.yMin+this.yMax)/2,o=this._convert3Dto2D(new h(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(S,o.x,o.y));var D=this.zLabel;D.length>0&&(d=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 h(n,r,a)),g.textAlign="right",g.textBaseline="middle",g.fillStyle=this.colorAxis,g.fillText(D,o.x-d,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,d,l,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+S.x/D/2,1),a=this._hsv2rgb(c,p,u),d=a):(u=1,a=this._hsv2rgb(c,p,u),d=this.colorAxis)):(a="gray",d=this.colorAxis),l=.5,g.lineWidth=l,g.fillStyle=a,g.strokeStyle=d,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=getMouseX(t),this.startMouseY=getMouseY(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)},a.addEventListener(document,"mousemove",e.onmousemove),a.addEventListener(document,"mouseup",e.onmouseup),a.preventDefault(t)}},s.prototype._onMouseMove=function(t){t=t||window.event;var e=parseFloat(getMouseX(t))-this.startMouseX,i=parseFloat(getMouseY(t))-this.startMouseY,s=this.startArmRotation.horizontal+e/200,o=this.startArmRotation.vertical+i/200,n=4,r=Math.sin(n/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 d(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 l=n.surfaces;if(l)for(var c=l.length-1;c>=0;c--){var p=l[c],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)}}},getMouseX=function(t){return"clientX"in t?t.clientX:t.targetTouches[0]&&t.targetTouches[0].clientX||0},getMouseY=function(t){return"clientY"in t?t.clientY:t.targetTouches[0]&&t.targetTouches[0].clientY||0},t.exports=s},function(t,e,i){var s=i(10);Camera=function(){this.armLocation=new s,this.armRotation={},this.armRotation.horizontal=0,this.armRotation.vertical=0,this.armLength=1.7,this.cameraLocation=new s,this.cameraRotation=new s(.5*Math.PI,0,0),this.calculateCameraOrientation()},Camera.prototype.setArmLocation=function(t,e,i){this.armLocation.x=t,this.armLocation.y=e,this.armLocation.z=i,this.calculateCameraOrientation()},Camera.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()},Camera.prototype.getArmRotation=function(){var t={};return t.horizontal=this.armRotation.horizontal,t.vertical=this.armRotation.vertical,t},Camera.prototype.setArmLength=function(t){void 0!==t&&(this.armLength=t,this.armLength<.71&&(this.armLength=.71),this.armLength>5&&(this.armLength=5),this.calculateCameraOrientation())},Camera.prototype.getArmLength=function(){return this.armLength},Camera.prototype.getCameraLocation=function(){return this.cameraLocation},Camera.prototype.getCameraRotation=function(){return this.cameraRotation},Camera.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=Camera},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){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.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=""+Number(this.current).toPrecision(5);if(void 0===t||isNaN(Number(t))){if(-1!=e.indexOf(",")||-1!=e.indexOf("."))for(var i=e.length-1;i>0;i--){if("0"!=e[i]){if("."==e[i]||","==e[i]){e=e.slice(0,i);break}break}e=e.slice(0,i)}}else{var s="",o=e.indexOf("e");if(-1!=o&&(s=e.slice(o),e=e.slice(0,o)),o=Math.max(e.indexOf(","),e.indexOf(".")),-1===o?(0!==t&&(e+="."),o=e.length+t):0!==t&&(o+=t+1),o>e.length)for(var n=o-e.length;n>0;n--)e+="0";else e=e.slice(0,o);e+=s}return e},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){function s(){if(!a.props.touch.dragging){var t=(new Date).valueOf(),e=t-p,i=e>c,f=i||null===o?o:r.easeInOutQuad(e,h,o,c),g=i||null===n?n:r.easeInOutQuad(e,d,n,c);m=a._applyRange(f,g),l.updateHiddenDates(a.body,a.options.hiddenDates),u=u||m,m&&a.body.emitter.emit("rangechange",{start:new Date(a.start),end:new Date(a.end)}),i?u&&a.body.emitter.emit("rangechanged",{start:new Date(a.start),end:new Date(a.end)}):a.animateTimer=setTimeout(s,20)}}var o=void 0!=t?r.convert(t,"Date").valueOf():null,n=void 0!=e?r.convert(e,"Date").valueOf():null;if(this._cancelAnimation(),i){var a=this,h=this.start,d=this.end,c="number"==typeof i?i:500,p=(new Date).valueOf(),u=!1;return s()}var m=this._applyRange(o,n);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.start||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.start-(i-o))*e,h=i+r+(this.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=s.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=[])}var o=i(44),n=i(15);s.SCALE={MILLISECOND:1,SECOND:2,MINUTE:3,HOUR:4,DAY:5,WEEKDAY:6,MONTH:7,YEAR:8},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 s.SCALE.YEAR:this.current.setFullYear(this.step*Math.floor(this.current.getFullYear()/this.step)),this.current.setMonth(0);case s.SCALE.MONTH:this.current.setDate(1);case s.SCALE.DAY:case s.SCALE.WEEKDAY:this.current.setHours(0);case s.SCALE.HOUR:this.current.setMinutes(0);case s.SCALE.MINUTE:this.current.setSeconds(0);case s.SCALE.SECOND:this.current.setMilliseconds(0)}if(1!=this.step)switch(this.scale){case s.SCALE.MILLISECOND:this.current.setMilliseconds(this.current.getMilliseconds()-this.current.getMilliseconds()%this.step);break;case s.SCALE.SECOND:this.current.setSeconds(this.current.getSeconds()-this.current.getSeconds()%this.step);break;case s.SCALE.MINUTE:this.current.setMinutes(this.current.getMinutes()-this.current.getMinutes()%this.step);break;case s.SCALE.HOUR:this.current.setHours(this.current.getHours()-this.current.getHours()%this.step); +},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){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.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=""+Number(this.current).toPrecision(5);if(void 0===t||isNaN(Number(t))){if(-1!=e.indexOf(",")||-1!=e.indexOf("."))for(var i=e.length-1;i>0;i--){if("0"!=e[i]){if("."==e[i]||","==e[i]){e=e.slice(0,i);break}break}e=e.slice(0,i)}}else{var s="",o=e.indexOf("e");if(-1!=o&&(s=e.slice(o),e=e.slice(0,o)),o=Math.max(e.indexOf(","),e.indexOf(".")),-1===o?(0!==t&&(e+="."),o=e.length+t):0!==t&&(o+=t+1),o>e.length)for(var n=o-e.length;n>0;n--)e+="0";else e=e.slice(0,o);e+=s}return e},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){function s(){if(!a.props.touch.dragging){var t=(new Date).valueOf(),e=t-p,i=e>c,f=i||null===o?o:r.easeInOutQuad(e,h,o,c),g=i||null===n?n:r.easeInOutQuad(e,d,n,c);m=a._applyRange(f,g),l.updateHiddenDates(a.body,a.options.hiddenDates),u=u||m,m&&a.body.emitter.emit("rangechange",{start:new Date(a.start),end:new Date(a.end)}),i?u&&a.body.emitter.emit("rangechanged",{start:new Date(a.start),end:new Date(a.end)}):a.animateTimer=setTimeout(s,20)}}var o=void 0!=t?r.convert(t,"Date").valueOf():null,n=void 0!=e?r.convert(e,"Date").valueOf():null;if(this._cancelAnimation(),i){var a=this,h=this.start,d=this.end,c="number"==typeof i?i:500,p=(new Date).valueOf(),u=!1;return s()}var m=this._applyRange(o,n);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.start-(i-o))*e,h=i+r+(this.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=s.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=[])}var o=i(44),n=i(15);s.SCALE={MILLISECOND:1,SECOND:2,MINUTE:3,HOUR:4,DAY:5,WEEKDAY:6,MONTH:7,YEAR:8},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 s.SCALE.YEAR:this.current.setFullYear(this.step*Math.floor(this.current.getFullYear()/this.step)),this.current.setMonth(0);case s.SCALE.MONTH:this.current.setDate(1);case s.SCALE.DAY:case s.SCALE.WEEKDAY:this.current.setHours(0);case s.SCALE.HOUR:this.current.setMinutes(0);case s.SCALE.MINUTE:this.current.setSeconds(0);case s.SCALE.SECOND:this.current.setMilliseconds(0)}if(1!=this.step)switch(this.scale){case s.SCALE.MILLISECOND:this.current.setMilliseconds(this.current.getMilliseconds()-this.current.getMilliseconds()%this.step);break;case s.SCALE.SECOND:this.current.setSeconds(this.current.getSeconds()-this.current.getSeconds()%this.step);break;case s.SCALE.MINUTE:this.current.setMinutes(this.current.getMinutes()-this.current.getMinutes()%this.step);break;case s.SCALE.HOUR:this.current.setHours(this.current.getHours()-this.current.getHours()%this.step); break;case s.SCALE.WEEKDAY:case s.SCALE.DAY:this.current.setDate(this.current.getDate()-1-(this.current.getDate()-1)%this.step+1);break;case s.SCALE.MONTH:this.current.setMonth(this.current.getMonth()-this.current.getMonth()%this.step);break;case s.SCALE.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 s.SCALE.MILLISECOND:this.current=new Date(this.current.valueOf()+this.step);break;case s.SCALE.SECOND:this.current=new Date(this.current.valueOf()+1e3*this.step);break;case s.SCALE.MINUTE:this.current=new Date(this.current.valueOf()+1e3*this.step*60);break;case s.SCALE.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 s.SCALE.WEEKDAY:case s.SCALE.DAY:this.current.setDate(this.current.getDate()+this.step);break;case s.SCALE.MONTH:this.current.setMonth(this.current.getMonth()+this.step);break;case s.SCALE.YEAR:this.current.setFullYear(this.current.getFullYear()+this.step)}else switch(this.scale){case s.SCALE.MILLISECOND:this.current=new Date(this.current.valueOf()+this.step);break;case s.SCALE.SECOND:this.current.setSeconds(this.current.getSeconds()+this.step);break;case s.SCALE.MINUTE:this.current.setMinutes(this.current.getMinutes()+this.step);break;case s.SCALE.HOUR:this.current.setHours(this.current.getHours()+this.step);break;case s.SCALE.WEEKDAY:case s.SCALE.DAY:this.current.setDate(this.current.getDate()+this.step);break;case s.SCALE.MONTH:this.current.setMonth(this.current.getMonth()+this.step);break;case s.SCALE.YEAR:this.current.setFullYear(this.current.getFullYear()+this.step)}if(1!=this.step)switch(this.scale){case s.SCALE.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,o=864e5,n=36e5,r=6e4,a=1e3,h=1;1e3*e>t&&(this.scale=s.SCALE.YEAR,this.step=1e3),500*e>t&&(this.scale=s.SCALE.YEAR,this.step=500),100*e>t&&(this.scale=s.SCALE.YEAR,this.step=100),50*e>t&&(this.scale=s.SCALE.YEAR,this.step=50),10*e>t&&(this.scale=s.SCALE.YEAR,this.step=10),5*e>t&&(this.scale=s.SCALE.YEAR,this.step=5),e>t&&(this.scale=s.SCALE.YEAR,this.step=1),3*i>t&&(this.scale=s.SCALE.MONTH,this.step=3),i>t&&(this.scale=s.SCALE.MONTH,this.step=1),5*o>t&&(this.scale=s.SCALE.DAY,this.step=5),2*o>t&&(this.scale=s.SCALE.DAY,this.step=2),o>t&&(this.scale=s.SCALE.DAY,this.step=1),o/2>t&&(this.scale=s.SCALE.WEEKDAY,this.step=1),4*n>t&&(this.scale=s.SCALE.HOUR,this.step=4),n>t&&(this.scale=s.SCALE.HOUR,this.step=1),15*r>t&&(this.scale=s.SCALE.MINUTE,this.step=15),10*r>t&&(this.scale=s.SCALE.MINUTE,this.step=10),5*r>t&&(this.scale=s.SCALE.MINUTE,this.step=5),r>t&&(this.scale=s.SCALE.MINUTE,this.step=1),15*a>t&&(this.scale=s.SCALE.SECOND,this.step=15),10*a>t&&(this.scale=s.SCALE.SECOND,this.step=10),5*a>t&&(this.scale=s.SCALE.SECOND,this.step=5),a>t&&(this.scale=s.SCALE.SECOND,this.step=1),200*h>t&&(this.scale=s.SCALE.MILLISECOND,this.step=200),100*h>t&&(this.scale=s.SCALE.MILLISECOND,this.step=100),50*h>t&&(this.scale=s.SCALE.MILLISECOND,this.step=50),10*h>t&&(this.scale=s.SCALE.MILLISECOND,this.step=10),5*h>t&&(this.scale=s.SCALE.MILLISECOND,this.step=5),h>t&&(this.scale=s.SCALE.MILLISECOND,this.step=1)}},s.prototype.snap=function(t){var e=new Date(t.valueOf());if(this.scale==s.SCALE.YEAR){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(this.scale==s.SCALE.MONTH)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(this.scale==s.SCALE.DAY){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(this.scale==s.SCALE.WEEKDAY){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(this.scale==s.SCALE.HOUR){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(this.scale==s.SCALE.MINUTE){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(this.scale==s.SCALE.SECOND)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(this.scale==s.SCALE.MILLISECOND){var o=this.step>5?this.step/2:1;e.setMilliseconds(Math.round(e.getMilliseconds()/o)*o)}return e},s.prototype.isMajor=function(){if(1==this.switchedYear)switch(this.switchedYear=!1,this.scale){case s.SCALE.YEAR:case s.SCALE.MONTH:case s.SCALE.WEEKDAY:case s.SCALE.DAY:case s.SCALE.HOUR:case s.SCALE.MINUTE:case s.SCALE.SECOND:case s.SCALE.MILLISECOND:return!0;default:return!1}else if(1==this.switchedMonth)switch(this.switchedMonth=!1,this.scale){case s.SCALE.WEEKDAY:case s.SCALE.DAY:case s.SCALE.HOUR:case s.SCALE.MINUTE:case s.SCALE.SECOND:case s.SCALE.MILLISECOND:return!0;default:return!1}else if(1==this.switchedDay)switch(this.switchedDay=!1,this.scale){case s.SCALE.MILLISECOND:case s.SCALE.SECOND:case s.SCALE.MINUTE:case s.SCALE.HOUR:return!0;default:return!1}switch(this.scale){case s.SCALE.MILLISECOND:return 0==this.current.getMilliseconds();case s.SCALE.SECOND:return 0==this.current.getSeconds();case s.SCALE.MINUTE:return 0==this.current.getHours()&&0==this.current.getMinutes();case s.SCALE.HOUR:return 0==this.current.getHours();case s.SCALE.WEEKDAY:case s.SCALE.DAY:return 1==this.current.getDate();case s.SCALE.MONTH:return 0==this.current.getMonth();case s.SCALE.YEAR:return!1;default:return!1}},s.prototype.getLabelMinor=function(t){switch(void 0==t&&(t=this.current),this.scale){case s.SCALE.MILLISECOND:return o(t).format("SSS");case s.SCALE.SECOND:return o(t).format("s");case s.SCALE.MINUTE:return o(t).format("HH:mm");case s.SCALE.HOUR:return o(t).format("HH:mm");case s.SCALE.WEEKDAY:return o(t).format("ddd D");case s.SCALE.DAY:return o(t).format("D");case s.SCALE.MONTH:return o(t).format("MMM");case s.SCALE.YEAR:return o(t).format("YYYY");default:return""}},s.prototype.getLabelMajor=function(t){switch(void 0==t&&(t=this.current),this.scale){case s.SCALE.MILLISECOND:return o(t).format("HH:mm:ss");case s.SCALE.SECOND:return o(t).format("D MMMM HH:mm");case s.SCALE.MINUTE:case s.SCALE.HOUR:return o(t).format("ddd D MMMM");case s.SCALE.WEEKDAY:case s.SCALE.DAY:return o(t).format("MMMM YYYY");case s.SCALE.MONTH:return o(t).format("YYYY");case s.SCALE.YEAR:return"";default:return""}},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.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.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.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,{prevent_default:!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.body.emitter.on("rangechanged",function(){i.lastStart=i.body.range.start,i.svg.style.left=o.option.asSize(-i.width),i._updateGraph.apply(i)}),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;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&&(e.hide(),i=!0):e.dom.frame.parentNode||(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),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.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.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,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,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?Math.max(-s,0):0>s?Math.min(-s,o-s-this.props.content.width-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},dynamicSmoothCurves:!0,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.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;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]) +for(this._getRelevantData(a,c,d,l),this._applySampling(a,c),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&&(e.hide(),i=!0):e.dom.frame.parentNode||(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),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.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.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,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,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?Math.max(-s,0):0>s?Math.min(-s,o-s-this.props.content.width-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.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;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=document.createElement("DIV");t.style.color="red",t.style.fontWeight="bold",t.style.padding="10px",t.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(t)}var e=this;this.drag={},this.pinch={},this.hammer=n(this.frame.canvas,{prevent_default:!0}),this.hammer.on("tap",e._onTap.bind(e)),this.hammer.on("doubletap",e._onDoubleTap.bind(e)),this.hammer.on("hold",e._onHold.bind(e)),this.hammer.on("pinch",e._onPinch.bind(e)),this.hammer.on("touch",e._onTouch.bind(e)),this.hammer.on("dragstart",e._onDragStart.bind(e)),this.hammer.on("drag",e._onDrag.bind(e)),this.hammer.on("dragend",e._onDragEnd.bind(e)),this.hammer.on("mousewheel",e._onMouseWheel.bind(e)),this.hammer.on("DOMMouseScroll",e._onMouseWheel.bind(e)),this.hammer.on("mousemove",e._onMouseMoveTitle.bind(e)),this.hammerFrame=n(this.frame,{prevent_default:!0}),this.hammerFrame.on("release",e._onRelease.bind(e)),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){this.drag.pointer=this._getPointer(t.gesture.center),this.drag.pinched=!1,this.pinch.scale=this._getScale(),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.frame.canvas.height=this.frame.canvas.clientHeight,this.constants.width=t,this.constants.height=e,i=!0):(this.frame.canvas.width!=this.frame.canvas.clientWidth&&(this.frame.canvas.width=this.frame.canvas.clientWidth,i=!0),this.frame.canvas.height!=this.frame.canvas.clientHeight&&(this.frame.canvas.height=this.frame.canvas.clientHeight,i=!0)),1==i&&this.emit("resize",{width:this.frame.canvas.width,height:this.frame.canvas.height,oldWidth:s,oldHeight:o})},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"),e=this.frame.canvas.width,i=this.frame.canvas.height;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),y:this._YconvertDOMtoCanvas(this.frame.canvas.clientHeight)},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.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.controlNodesEnabled=!0},s.prototype._disableControlNodes=function(){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(k=M.NULL,L="";" "==O||" "==O||"\n"==O||"\r"==O;)o();do{var t=!1;if("#"==O){for(var e=T-1;" "==E.charAt(e)||" "==E.charAt(e);)e--;if("\n"==E.charAt(e)||""==E.charAt(e)){for(;""!=O&&"\n"!=O;)o();t=!0}}if("/"==O&&"/"==n()){for(;""!=O&&"\n"!=O;)o();t=!0}if("/"==O&&"*"==n()){for(;""!=O;){if("*"==O&&"/"==n()){o(),o();break}o()}t=!0}for(;" "==O||" "==O||"\n"==O||"\r"==O;)o()}while(t);if(""==O)return void(k=M.DELIMITER);var i=O+n();if(C[i])return k=M.DELIMITER,L=i,o(),void o();if(C[O])return k=M.DELIMITER,L=O,void o();if(r(O)||"-"==O){for(L+=O,o();r(O);)L+=O,o();return"false"==L?L=!1:"true"==L?L=!0:isNaN(Number(L))||(L=Number(L)),void(k=M.IDENTIFIER)}if('"'==O){for(o();""!=O&&('"'!=O||'"'==O&&'"'==n());)L+=O,'"'==O&&o(),o();if('"'!=O)throw x('End of string " expected');return o(),void(k=M.IDENTIFIER)}for(k=M.UNKNOWN;""!=O;)L+=O,o();throw new SyntaxError('Syntax error in part "'+w(L,30)+'"')}function u(){var t={};if(s(),p(),"strict"==L&&(t.strict=!0,p()),("graph"==L||"digraph"==L)&&(t.type=L,p()),k==M.IDENTIFIER&&(t.id=L,p()),"{"!=L)throw x("Angle bracket { expected");if(p(),m(t),"}"!=L)throw x("Angle bracket } expected");if(p(),""!==L)throw x("End of file expected");return p(),delete t.node,delete t.edge,delete t.graph,t}function m(t){for(;""!==L&&"}"!=L;)f(t),";"==L&&p()}function f(t){var e=g(t);if(e)return void b(t,e);var i=v(t);if(!i){if(k!=M.IDENTIFIER)throw x("Identifier expected");var s=L;if(p(),"="==L){if(p(),k!=M.IDENTIFIER)throw x("Identifier expected");t[s]=L,p()}else y(t,s)}}function g(t){var e=null;if("subgraph"==L&&(e={},e.type="subgraph",p(),k==M.IDENTIFIER&&(e.id=L,p())),"{"==L){if(p(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,m(e),"}"!=L)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"==L?(p(),t.node=_(),"node"):"edge"==L?(p(),t.edge=_(),"edge"):"graph"==L?(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(;"->"==L||"--"==L;){var i,s=L;p();var o=g(t);if(o)i=o;else{if(k!=M.IDENTIFIER)throw x("Identifier or subgraph expected");i=L,d(t,{id:i}),p()}var n=_(),r=c(t,e,i,s,n);l(t,r),e=i}}function _(){for(var t=null;"["==L;){for(p(),t={};""!==L&&"]"!=L;){if(k!=M.IDENTIFIER)throw x("Attribute name expected");var e=L;if(p(),"="!=L)throw x("Equal sign = expected");if(p(),k!=M.IDENTIFIER)throw x("Attribute value expected");var i=L;h(t,e,i),p(),","==L&&p()}if("]"!=L)throw x("Bracket ] expected");p()}return t}function x(t){return new SyntaxError(t+', got "'+w(L,30)+'" (char '+T+")")}function w(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function S(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){function e(t){var e={from:t.from,to:t.to};return a(e,t.attr),e.style="->"==t.type?"arrow":"line",e}var s=i(t),o={nodes:[],edges:[],options:{}};return s.nodes&&s.nodes.forEach(function(t){var e={id:t.id,label:String(t.label||t.id)};a(e,t.attr),e.image&&(e.shape="image"),o.nodes.push(e)}),s.edges&&s.edges.forEach(function(t){var i,s;i=t.from instanceof Object?t.from.nodes:{id:t.from},s=t.to instanceof Object?t.to.nodes:{id:t.to},t.from instanceof Object&&t.from.edges&&t.from.edges.forEach(function(t){var i=e(t);o.edges.push(i)}),S(i,s,function(i,s){var n=c(o,i.id,s.id,t.type,t.attr),r=e(n);o.edges.push(r)}),t.to instanceof Object&&t.to.edges&&t.to.edges.forEach(function(t){var i=e(t);o.edges.push(i)})}),s.attr&&(o.options=s.attr),o}var M={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},C={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},E="",T=0,O="",L="",k=M.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=o&&(o=864e5),i=new Date(i.valueOf()-.05*o),s=new Date(s.valueOf()+.05*o)}if(null!==i||null!==s){var n=t&&void 0!==t.animate?t.animate:!0;this.range.setRange(i,s,n)}},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=2;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){var e=t[0].y,i=t[0].y;for(j=0;jt[j].y?t[j].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)+" ",S=t.length,D=0;S-1>D;D++)s=0==D?t[0]:t[D-1],o=t[D],n=t[D+1],r=S>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&&(r=Math.min(r,Math.abs(p[l-1].x-a))),h=s._getSafeDrawData(r,d,f);else{var v=l+(u[a].amount-u[a].resolved),y=l-(u[a].resolved+1);v0&&(r=Math.min(r,Math.abs(p[y].x-a))),h=s._getSafeDrawData(r,d,f),u[a].resolved+=1,"stack"==d.options.barChart.handleOverlap?(g=u[a].accumulated,u[a].accumulated+=d.zeroPosition-p[l].y):"sideBySide"==d.options.barChart.handleOverlap&&(h.width=h.width/u[a].amount,h.offset+=u[a].resolved*h.width-.5*h.width*(u[a].amount+1),"left"==d.options.barChart.align?h.offset-=.5*h.width:"right"==d.options.barChart.align&&(h.offset+=.5*h.width))}o.drawBar(p[l].x+h.offset,p[l].y-g,h.width,d.zeroPosition-p[l].y,d.className+" bar",i.svgElements,i.svg),1==d.options.drawPoints.enabled&&n.draw(dataset,d,i,h.offset)}},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[j].y?t[j].y:e,i=ip;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(k=M.NULL,L="";" "==O||" "==O||"\n"==O||"\r"==O;)o();do{var t=!1;if("#"==O){for(var e=T-1;" "==E.charAt(e)||" "==E.charAt(e);)e--;if("\n"==E.charAt(e)||""==E.charAt(e)){for(;""!=O&&"\n"!=O;)o();t=!0}}if("/"==O&&"/"==n()){for(;""!=O&&"\n"!=O;)o();t=!0}if("/"==O&&"*"==n()){for(;""!=O;){if("*"==O&&"/"==n()){o(),o();break}o()}t=!0}for(;" "==O||" "==O||"\n"==O||"\r"==O;)o()}while(t);if(""==O)return void(k=M.DELIMITER);var i=O+n();if(C[i])return k=M.DELIMITER,L=i,o(),void o();if(C[O])return k=M.DELIMITER,L=O,void o();if(r(O)||"-"==O){for(L+=O,o();r(O);)L+=O,o();return"false"==L?L=!1:"true"==L?L=!0:isNaN(Number(L))||(L=Number(L)),void(k=M.IDENTIFIER)}if('"'==O){for(o();""!=O&&('"'!=O||'"'==O&&'"'==n());)L+=O,'"'==O&&o(),o();if('"'!=O)throw x('End of string " expected');return o(),void(k=M.IDENTIFIER)}for(k=M.UNKNOWN;""!=O;)L+=O,o();throw new SyntaxError('Syntax error in part "'+w(L,30)+'"')}function u(){var t={};if(s(),p(),"strict"==L&&(t.strict=!0,p()),("graph"==L||"digraph"==L)&&(t.type=L,p()),k==M.IDENTIFIER&&(t.id=L,p()),"{"!=L)throw x("Angle bracket { expected");if(p(),m(t),"}"!=L)throw x("Angle bracket } expected");if(p(),""!==L)throw x("End of file expected");return p(),delete t.node,delete t.edge,delete t.graph,t}function m(t){for(;""!==L&&"}"!=L;)f(t),";"==L&&p()}function f(t){var e=g(t);if(e)return void b(t,e);var i=v(t);if(!i){if(k!=M.IDENTIFIER)throw x("Identifier expected");var s=L;if(p(),"="==L){if(p(),k!=M.IDENTIFIER)throw x("Identifier expected");t[s]=L,p()}else y(t,s)}}function g(t){var e=null;if("subgraph"==L&&(e={},e.type="subgraph",p(),k==M.IDENTIFIER&&(e.id=L,p())),"{"==L){if(p(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,m(e),"}"!=L)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"==L?(p(),t.node=_(),"node"):"edge"==L?(p(),t.edge=_(),"edge"):"graph"==L?(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(;"->"==L||"--"==L;){var i,s=L;p();var o=g(t);if(o)i=o;else{if(k!=M.IDENTIFIER)throw x("Identifier or subgraph expected");i=L,d(t,{id:i}),p()}var n=_(),r=c(t,e,i,s,n);l(t,r),e=i}}function _(){for(var t=null;"["==L;){for(p(),t={};""!==L&&"]"!=L;){if(k!=M.IDENTIFIER)throw x("Attribute name expected");var e=L;if(p(),"="!=L)throw x("Equal sign = expected");if(p(),k!=M.IDENTIFIER)throw x("Attribute value expected");var i=L;h(t,e,i),p(),","==L&&p()}if("]"!=L)throw x("Bracket ] expected");p()}return t}function x(t){return new SyntaxError(t+', got "'+w(L,30)+'" (char '+T+")")}function w(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function S(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){function e(t){var e={from:t.from,to:t.to};return a(e,t.attr),e.style="->"==t.type?"arrow":"line",e}var s=i(t),o={nodes:[],edges:[],options:{}};return s.nodes&&s.nodes.forEach(function(t){var e={id:t.id,label:String(t.label||t.id)};a(e,t.attr),e.image&&(e.shape="image"),o.nodes.push(e)}),s.edges&&s.edges.forEach(function(t){var i,s;i=t.from instanceof Object?t.from.nodes:{id:t.from},s=t.to instanceof Object?t.to.nodes:{id:t.to},t.from instanceof Object&&t.from.edges&&t.from.edges.forEach(function(t){var i=e(t);o.edges.push(i)}),S(i,s,function(i,s){var n=c(o,i.id,s.id,t.type,t.attr),r=e(n);o.edges.push(r)}),t.to instanceof Object&&t.to.edges&&t.to.edges.forEach(function(t){var i=e(t);o.edges.push(i)})}),s.attr&&(o.options=s.attr),o}var M={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},C={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},E="",T=0,O="",L="",k=M.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=o&&(o=864e5),i=new Date(i.valueOf()-.05*o),s=new Date(s.valueOf()+.05*o)}if(null!==i||null!==s){var n=t&&void 0!==t.animate?t.animate:!0;this.range.setRange(i,s,n)}},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=2;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){var e=t[0].y,i=t[0].y;for(j=0;jt[j].y?t[j].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)+" ",S=t.length,D=0;S-1>D;D++)s=0==D?t[0]:t[D-1],o=t[D],n=t[D+1],r=S>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&&(r=Math.min(r,Math.abs(p[l-1].x-a))),h=s._getSafeDrawData(r,d,f);else{var v=l+(u[a].amount-u[a].resolved),y=l-(u[a].resolved+1);v0&&(r=Math.min(r,Math.abs(p[y].x-a))),h=s._getSafeDrawData(r,d,f),u[a].resolved+=1,"stack"==d.options.barChart.handleOverlap?(g=u[a].accumulated,u[a].accumulated+=d.zeroPosition-p[l].y):"sideBySide"==d.options.barChart.handleOverlap&&(h.width=h.width/u[a].amount,h.offset+=u[a].resolved*h.width-.5*h.width*(u[a].amount+1),"left"==d.options.barChart.align?h.offset-=.5*h.width:"right"==d.options.barChart.align&&(h.offset+=.5*h.width))}o.drawBar(p[l].x+h.offset,p[l].y-g,h.width,d.zeroPosition-p[l].y,d.className+" bar",i.svgElements,i.svg),1==d.options.drawPoints.enabled&&n.draw(p,d,i,h.offset)}},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[j].y?t[j].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={keydown:{},keyup:{}},o={};for(e=97;122>=e;e++)o[String.fromCharCode(e)]={code:65+(e-97),shift:!1};for(e=65;90>=e;e++)o[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;9>=e;e++)o[""+e]={code:48+e,shift:!1};for(e=1;12>=e;e++)o["F"+e]={code:111+e,shift:!1};for(e=0;9>=e;e++)o["num"+e]={code:96+e,shift:!1};o["num*"]={code:106,shift:!1},o["num+"]={code:107,shift:!1},o["num-"]={code:109,shift:!1},o["num/"]={code:111,shift:!1},o["num."]={code:110,shift:!1},o.left={code:37,shift:!1},o.up={code:38,shift:!1},o.right={code:39,shift:!1},o.down={code:40,shift:!1},o.space={code:32,shift:!1},o.enter={code:13,shift:!1},o.shift={code:16,shift:void 0},o.esc={code:27,shift:!1},o.backspace={code:8,shift:!1},o.tab={code:9,shift:!1},o.ctrl={code:17,shift:!1},o.alt={code:18,shift:!1},o["delete"]={code:46,shift:!1},o.pageup={code:33,shift:!1},o.pagedown={code:34,shift:!1},o["="]={code:187,shift:!1},o["-"]={code:189,shift:!1},o["]"]={code:221,shift:!1},o["["]={code:219,shift:!1};var n=function(t){a(t,"keydown")},r=function(t){a(t,"keyup")},a=function(t,e){if(void 0!==s[e][t.keyCode]){for(var o=s[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&&k(t[s])!==k(e[s]))&&r++;return r+n}function T(t){if(t){var e=t.toLowerCase().replace(/(.)s$/,"$1");t=mi[t]||fi[e]||e}return t}function O(t){var e,i,s={};for(i in t)a(t,i)&&(e=T(i),e&&(s[e]=t[i]));return s}function L(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 k(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 A(t){return z(t)?366:365}function z(t){return t%4===0&&t%100!==0||t%400===0}function P(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[ke],t._a[Ne])?Ie:t._a[Ae]<0||t._a[Ae]>23?Ae:t._a[ze]<0||t._a[ze]>59?ze:t._a[Pe]<0||t._a[Pe]>59?Pe:t._a[Re]<0||t._a[Re]>999?Re:-1,t._pf._overflowDayOfYear&&(ke>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._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&&E(o,i,!0)>=e-1)break;e--}n++}return null}function Y(t){var e=null;if(!Fe[t]&&Ye)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 W(t,e){return e._isUTC?De(t).zone(e._offset||0):De(t).local()}function B(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]]:B(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=U(e,t.localeData()),gi[e]||(gi[e]=G(e)),gi[e](t)):t.localeData().invalidDate()}function U(t,e){function i(t){return e.longDateFormat(t)||t}var s=5;for(Ue.lastIndex=0;s>=0&&Ue.test(t);)t=t.replace(Ue,i),Ue.lastIndex=0,s-=1;return t}function V(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 Qe;case"a":case"A":return e._locale._meridiemParse;case"X":return ti;case"Z":case"ZZ":return $e;case"T":return Je;case"SSSS":return Ke;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:Ve;case"M":case"D":case"d":case"H":case"h":case"m":case"s":case"w":case"W":case"e":case"E":return Ve;case"Do":return ei;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])+k(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*(k(e)-1));break;case"M":case"MM":null!=e&&(o[Ne]=k(e)-1);break;case"MMM":case"MMMM":s=i._locale.monthsParse(e),null!=s?o[Ne]=s:i._pf.invalidMonth=e;break;case"D":case"DD":null!=e&&(o[Ie]=k(e));break;case"Do":null!=e&&(o[Ie]=k(parseInt(e,10)));break;case"DDD":case"DDDD":null!=e&&(i._dayOfYear=k(e));break;case"YY":o[ke]=De.parseTwoDigitYear(e);break;case"YYYY":case"YYYYY":case"YYYYYY":o[ke]=k(e);break;case"a":case"A":i._isPm=i._locale.isPM(e);break;case"H":case"HH":case"h":case"hh":o[Ae]=k(e);break;case"m":case"mm":o[ze]=k(e);break;case"s":case"ss":o[Pe]=k(e);break;case"S":case"SS":case"SSS":case"SSSS":o[Re]=k(1e3*("0."+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]=k(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[ke],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[ke],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[ke]=h.year,t._dayOfYear=h.dayOfYear}function K(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[ke],s[ke]),t._dayOfYear>A(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];t._d=(t._useUTC?he:ae).apply(null,n),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()+t._tzm)}}function Q(t){var e;t._d||(e=O(t._i),t._a=[e.year,e.month,e.day,e.hour,e.minute,e.second,e.millisecond],K(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,n,r=""+t._i,a=r.length,h=0;for(s=U(t._f,t._locale).match(je)||[],e=0;e0&&t._pf.unusedInput.push(n),r=r.slice(r.indexOf(i)+i.length),h+=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=a-h,r.length>0&&t._pf.unusedInput.push(r),t._isPm&&t._a[Ae]<12&&(t._a[Ae]+=12),t._isPm===!1&&12===t._a[Ae]&&(t._a[Ae]=0),K(t),P(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=Oe(s.as("s")),n=Oe(s.as("m")),r=Oe(s.as("h")),a=Oe(s.as("d")),h=Oe(s.as("M")),d=Oe(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:A(t-1)+r}}function me(t){var e=t._i,i=t._f;return t._locale=t._locale||De.localeData(t._l),null===e||i===n&&""===e?De.invalid({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),De.isMoment(e)?new f(e,!0):(i?M(i)?ie(t):J(t):re(t),new f(t)))}function fe(t,e){var i,s;if(1===e.length&&M(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 k(this.milliseconds()/100)},SS:function(){return _(k(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+_(k(t/60),2)+":"+_(k(t)%60,2)},ZZ:function(){var t=-this.zone(),e="+";return 0>t&&(t=-t,e="-"),e+_(k(t/60),2)+_(k(t)%60,2)},z:function(){return this.zoneAbbr()},zz:function(){return this.zoneName()},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},_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){var e,i,s;for(this._monthsParse||(this._monthsParse=[]),e=0;12>e;e++)if(this._monthsParse[e]||(i=De.utc([2e3,e]),s="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[e]=new RegExp(s.replace(".",""),"i")),this._monthsParse[e].test(t))return e},_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:{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){var i=this._calendar[t];return"function"==typeof i?i.apply(e):i},_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",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)}),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=Be.exec(t))?(i="-"===h[1]?-1:1,r={y:0,d:k(h[Ie])*i,h:k(h[Ae])*i,m:k(h[ze])*i,s:k(h[Pe])*i,ms:k(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=Ee,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(!M(t)){if(e=Y(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)L(wi[Ce]);De.normalizeUnits=function(t){return T(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 k(t)+(k(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:S(1,"add"),subtract:S(-1,"subtract"),diff:function(t,e,i){var s,o,n,r=W(t,this),a=6e4*(this.zone()-r.zone());return e=T(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=W(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))},isLeapYear:function(){return z(this.year())},isDST:function(){return this.zone()+t):+this.clone().startOf(e)>+De(t).startOf(e)},isBefore:function(t,e){return e=T("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=De.isMoment(t)?t:De(t),+t>+this):+this.clone().startOf(e)<+De(t).startOf(e)},isSame:function(t,e){return e=T(e||"millisecond"),"millisecond"===e?(t=De.isMoment(t)?t:De(t),+this===+t):+this.clone().startOf(e)===+W(t,this).startOf(e)},min:l("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(t){return t=De.apply(null,arguments),this>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=Oe((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=T(t),this[t]()},set:function(t,e){return t=T(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. Use moment().localeData() instead.",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*k(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=T(t),this[t.toLowerCase()+"s"]()},as:function(t){var e,i;if(t=T(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+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",{ordinal:function(t){var e=t%10,i=1===k(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+i}}),Ye?o.exports=De:(s=function(t,e,i){return i.config&&i.config()&&i.config().noGlobal===!0&&(Te.moment=Me),De}.call(e,i,e,o),!(s!==n&&(o.exports=s)),Se(!0))}).call(this)}).call(e,function(){return this}(),i(71)(t))},function(t,e,i){var s;!function(o,n){"use strict";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 M(t,e){return new M.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 S.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")||S.matchType(u,s)?o=u:S.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()}}}},S=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._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(!(this.triggerFunctions.del.length=2))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){"RL"==this.constants.hierarchicalLayout.direction||"DU"==this.constants.hierarchicalLayout.direction?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}}])}); -//# sourceMappingURL=vis.map \ No newline at end of file +//# sourceMappingURL=vis.map diff --git a/lib/timeline/component/graph2d_types/bar.js b/lib/timeline/component/graph2d_types/bar.js index a80b8517..340a7667 100644 --- a/lib/timeline/component/graph2d_types/bar.js +++ b/lib/timeline/component/graph2d_types/bar.js @@ -114,7 +114,7 @@ Bargraph.draw = function (groupIds, processedGroupData, framework) { DOMutil.drawBar(combinedData[i].x + drawData.offset, combinedData[i].y - heightOffset, drawData.width, group.zeroPosition - combinedData[i].y, group.className + ' bar', framework.svgElements, framework.svg); // draw points if (group.options.drawPoints.enabled == true) { - Points.draw(dataset, group, framework, drawData.offset); + Points.draw(combinedData, group, framework, drawData.offset); } } };