From 5db59a91d762d320efa976b3ae95101014628638 Mon Sep 17 00:00:00 2001
From: jos
Date: Tue, 7 Apr 2015 13:57:28 +0200
Subject: [PATCH] Fixed #761: Timeline and Graph2d throwing an error when
locale is not found. Gives a warning message instead.
---
HISTORY.md | 8 ++++
bower.json | 2 +-
dist/vis.js | 52 ++++++++++++++++----------
dist/vis.map | 2 +-
dist/vis.min.js | 22 +++++------
examples/graph2d/13_localization.html | 1 +
examples/timeline/19_localization.html | 1 +
lib/timeline/component/CurrentTime.js | 7 ++++
lib/timeline/component/CustomTime.js | 7 ++++
misc/how_to_publish.md | 2 +-
package.json | 2 +-
11 files changed, 72 insertions(+), 34 deletions(-)
diff --git a/HISTORY.md b/HISTORY.md
index 28e073e2..98602d4a 100644
--- a/HISTORY.md
+++ b/HISTORY.md
@@ -2,6 +2,14 @@
http://visjs.org
+## not yet released, version 3.12.1-SNAPSHOT
+
+### Timeline
+
+- Fixed #761: Timeline and Graph2d throwing an error when locale is not found.
+ Gives a warning message instead.
+
+
## 2015-04-07, version 3.12.0
### Network
diff --git a/bower.json b/bower.json
index caa448e0..acb4676c 100644
--- a/bower.json
+++ b/bower.json
@@ -1,6 +1,6 @@
{
"name": "vis",
- "version": "3.12.0",
+ "version": "3.12.1-SNAPSHOT",
"main": ["dist/vis.min.js", "dist/vis.min.css"],
"description": "A dynamic, browser-based visualization library.",
"homepage": "http://visjs.org/",
diff --git a/dist/vis.js b/dist/vis.js
index 95c66084..bc9531f1 100644
--- a/dist/vis.js
+++ b/dist/vis.js
@@ -4,7 +4,7 @@
*
* A dynamic, browser-based visualization library.
*
- * @version 3.12.0
+ * @version 3.12.1-SNAPSHOT
* @date 2015-04-07
*
* @license
@@ -10715,6 +10715,13 @@ return /******/ (function(modules) { // webpackBootstrap
var x = this.body.util.toScreen(now);
var locale = this.options.locales[this.options.locale];
+ if (!locale) {
+ if (!this.warned) {
+ console.log('WARNING: locale "' + this.options.locale + '" not found in vis.js');
+ this.warned = true;
+ }
+ locale = this.options.locales['en']; // fall back on english when not available
+ }
var title = locale.current + ' ' + locale.time + ': ' + moment(now).format('dddd, MMMM Do YYYY, H:mm:ss');
title = title.charAt(0).toUpperCase() + title.substring(1);
@@ -10914,6 +10921,13 @@ return /******/ (function(modules) { // webpackBootstrap
var x = this.body.util.toScreen(this.customTime);
var locale = this.options.locales[this.options.locale];
+ if (!locale) {
+ if (!this.warned) {
+ console.log('WARNING: locale "' + this.options.locale + '" not found in vis.js');
+ this.warned = true;
+ }
+ locale = this.options.locales['en']; // fall back on english when not available
+ }
var title = locale.time + ': ' + moment(this.customTime).format('dddd, MMMM Do YYYY, H:mm:ss');
title = title.charAt(0).toUpperCase() + title.substring(1);
@@ -30556,9 +30570,9 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ function(module, exports, __webpack_require__) {
var util = __webpack_require__(1);
- var RepulsionMixin = __webpack_require__(68);
- var HierarchialRepulsionMixin = __webpack_require__(69);
- var BarnesHutMixin = __webpack_require__(70);
+ var RepulsionMixin = __webpack_require__(67);
+ var HierarchialRepulsionMixin = __webpack_require__(68);
+ var BarnesHutMixin = __webpack_require__(69);
/**
* Toggling barnes Hut calculation on and off.
@@ -34998,19 +35012,6 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ },
/* 67 */
-/***/ function(module, exports, __webpack_require__) {
-
- function webpackContext(req) {
- throw new Error("Cannot find module '" + req + "'.");
- }
- webpackContext.keys = function() { return []; };
- webpackContext.resolve = webpackContext;
- module.exports = webpackContext;
- webpackContext.id = 67;
-
-
-/***/ },
-/* 68 */
/***/ function(module, exports, __webpack_require__) {
/**
@@ -35080,7 +35081,7 @@ return /******/ (function(modules) { // webpackBootstrap
/***/ },
-/* 69 */
+/* 68 */
/***/ function(module, exports, __webpack_require__) {
/**
@@ -35239,7 +35240,7 @@ return /******/ (function(modules) { // webpackBootstrap
};
/***/ },
-/* 70 */
+/* 69 */
/***/ function(module, exports, __webpack_require__) {
/**
@@ -35643,6 +35644,19 @@ return /******/ (function(modules) { // webpackBootstrap
};
+/***/ },
+/* 70 */
+/***/ function(module, exports, __webpack_require__) {
+
+ function webpackContext(req) {
+ throw new Error("Cannot find module '" + req + "'.");
+ }
+ webpackContext.keys = function() { return []; };
+ webpackContext.resolve = webpackContext;
+ module.exports = webpackContext;
+ webpackContext.id = 70;
+
+
/***/ },
/* 71 */
/***/ function(module, exports, __webpack_require__) {
diff --git a/dist/vis.map b/dist/vis.map
index 3a673b15..eb5484ca 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","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","isDataTable","google","visualization","DataTable","randomUUID","S4","floor","random","toString","extend","a","b","i","len","arguments","length","other","prop","hasOwnProperty","selectiveExtend","props","Array","isArray","selectiveDeepExtend","TypeError","constructor","Object","undefined","deepExtend","selectiveNotDeepExtend","indexOf","equalArray","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","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","hasParent","parent","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","replace","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","slice","parseColor","isValidRGB","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","map","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","f","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","labelObj","point","drawPoints","setAttributeNS","size","label","xOffset","yOffset","content","textContent","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","args","ids","firstType","returnType","allowedValues","itemId","_getItem","order","_sort","_filterFields","_appendRow","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","refresh","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","fn","context","entry","clearTimeout","setTimeout","container","SyntaxError","containerElement","margin","defaultXCenter","defaultYCenter","xLabel","yLabel","zLabel","passValueFn","xValueLabel","yValueLabel","zValueLabel","filterLabel","legendLabel","STYLE","DOT","showPerspective","showGrid","keepAspectRatio","showShadow","showGrayBottom","showTooltip","verticalRatio","animationInterval","animationPreload","camera","eye","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","colorAxis","colorGrid","colorDot","colorDotBorder","getMouseX","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","fill","stroke","strokeWidth","borderColor","borderWidth","borderStyle","BAR","BARCOLOR","BARSIZE","DOTLINE","DOTCOLOR","DOTSIZE","GRID","LINE","SURFACE","_getStyleNumber","styleName","_determineColumnIndexes","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","redraw","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","obj","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","bottom","pointRight","pointTop","pointCross","hasChildNodes","firstChild","position","overflow","noCanvas","fontWeight","padding","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","charAt","parseFloat","setCameraPosition","pos","horizontal","vertical","setArmRotation","distance","setArmLength","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","tooltip","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","ctx","getContext","clearRect","widthMin","widthMax","dotSize","right","lineWidth","font","ymin","ymax","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","gridLineLen","step","getCurrent","next","textAlign","textBaseline","fillText","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","from","to","prettyStep","text","xText","yText","zText","offset","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","abs","cross","topSideVisible","zAvg","transBottom","dist","sortDepth","aDiff","subtract","bDiff","crossproduct","crossProduct","radius","arc","PI","j","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","diff","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","round","parameters","emit","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","delta","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","sign","as","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","dataView","progress","sub","sum","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","pow","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","orientation","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","getScale","timeAxis","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis2","currentTime","customTime","itemSet","itemsData","groupsData","getEventProperties","oncontextmenu","setGroups","setItems","_redraw","Core","markDirty","refreshItems","newDataSet","initialLoad","dataRange","_getDataRange","setWindow","animate","fit","setSelection","focus","getSelection","itemData","getItemRange","dataset","minItem","maxStartItem","maxEndItem","itemFromTarget","groupFromTarget","pageX","gesture","pageY","centerContainer","snap","time","snappedTime","what","foreground","labelSet","groupId","linegraph","getLegend","isGroupVisible","visibility","yAxisLeft","yAxisRight","legendLeft","legendRight","hidden","screenToValue","convertHiddenOptions","repeat","dateItem","updateHiddenDates","totalRange","pixelTime","startDate","endDate","_d","runUntil","clone","day","dayOfYear","year","dayOffset","date","month","console","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","startToFront","endToFront","_applyRange","safeDates","printDates","dates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","newValue","switchedYear","switchedMonth","switchedDay","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","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","hammerUtil","byUser","_cancelAnimation","initStart","initEnd","initTime","anyChanged","dragging","done","changed","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","deltaX","deltaY","diffRange","safeStart","safeEnd","fakeGesture","pointer","pointerDate","_pointerToDate","zoom","touches","centerDate","hiddenDurationBefore","hiddenDurationAfter","move","EPSILON","orderByStart","orderByEnd","aTime","bTime","force","iMax","axis","collidingItem","jj","collision","nostack","subgroups","newTop","subgroup","format","FORMAT","minorLabels","millisecond","second","minute","hour","weekday","majorLabels","setFormat","defaultFormat","first","setFullYear","getFullYear","setMonth","setDate","setHours","setMinutes","setSeconds","setMilliseconds","getMilliseconds","getSeconds","getMinutes","getHours","getDate","getMonth","setScale","setAutoScale","enable","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","getLabelMinor","getLabelMajor","getClassName","even","today","isSame","currentWeek","currentMonth","currentYear","locale","lang","toLowerCase","selected","displayed","dirty","Hammer","select","unselect","groupChanged","_moveToGroup","setParent","hide","show","isVisible","repositionX","repositionY","_repaintDeleteButton","anchor","editable","deleteButton","title","stopPropagation","removeFromDataSet","_updateContents","template","Element","_updateTitle","removeAttribute","_updateDataAttributes","dataAttributes","attributes","setAttribute","_updateStyle","emptyContent","baseClassName","box","getComputedStyle","onTop","itemSubgroup","subgroupIndex","totalHeight","newHeight","align","itemSetHeight","marginLeft","maxWidth","_repaintDragLeft","_repaintDragRight","limitSize","contentLeft","parentWidth","boxWidth","updateTime","dragLeft","dragLeftItem","dragRight","dragRightItem","_isResized","resized","_previousWidth","_previousHeight","showCurrentTime","locales","backgroundVertical","toUpperCase","substring","currentTimeTimer","setCurrentTime","getCurrentTime","showCustomTime","eventParams","drag","prevent_default","setCustomTime","getCustomTime","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","display","_redrawGroupIcons","iconHeight","iconOffset","drawIcon","_cleanupIcons","backgroundHorizontal","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","subgroupOrderer","subgroupOrder","visibleItems","byStart","byEnd","checkRangedItems","inner","marker","getLabelWidth","restack","markerHeight","lastMarkerHeight","customOrderedItems","_updateVisibleItems","_calculateHeight","offsetTop","offsetLeft","ii","resetSubgroups","orderSubgroups","_checkIfVisible","sortArray","sortField","removeItem","startArray","endArray","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","groupOrder","selectable","onAdd","onUpdate","onMove","onRemove","onMoving","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","selection","stackDirty","touchParams","UNGROUPED","BACKGROUND","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","addCallback","Function","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","initialX","itemProps","srcEvent","ctrlKey","_onDragStartAddItem","xAbs","newItem","initial","initialStart","initialEnd","changes","shiftKey","oldSelection","newSelection","_getItemRange","_item","itemSetFromTarget","side","iconSize","iconSpacing","textArea","scrollableHeight","drawLegendIcons","paddingTop","defaultGroup","sampling","graphHeight","barChart","handleOverlap","dataAxis","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","lastStart","COUNTER","BarGraphFunctions","_updateAllGroupData","_updateGroup","groupsContent","ungroupedCounter","forceGraphUpdate","_updateGraph","rangePerPixelInv","preprocessedGroupData","processedGroupData","groupRanges","changeCalled","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","MAX_CYCLES","_convertYcoordinates","dataContainer","guess","increment","amountOfPoints","xDistance","pointsPerPixel","ceil","sampledData","barCombinedDataLeft","barCombinedDataRight","getStackedBarYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","axisUsed","datapoints","xValue","yValue","extractedData","svgHeight","labelValue","majorTexts","minorTexts","lineTop","parentChanged","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","cur","prevLine","xPrev","xFirstMajorLabel","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","leftTime","leftText","widthText","arr","pop","childNodes","nodeValue","_determineBrowserMethod","_initializeMixinLoaders","renderRefreshRate","renderTimestep","renderTime","physicsTime","runDoubleSpeed","physicsDiscreteStepsize","initializing","triggerFunctions","edit","editEdge","connect","del","customScalingFunction","nodes","mass","radiusMin","radiusMax","shape","image","fontColor","fontSize","fontFace","fontFill","fontStrokeWidth","fontStrokeColor","fontDrawThreshold","scaleFontWithValue","fontSizeMin","fontSizeMax","fontSizeMaxVisible","level","borderWidthSelected","edges","widthSelectionMultiplier","hoverWidth","labelAlignment","arrowScaleFactor","dash","gap","altLength","inheritColor","useGradients","configurePhysics","physics","barnesHut","thetaInverted","gravitationalConstant","centralGravity","springLength","springConstant","damping","repulsion","nodeDistance","hierarchicalRepulsion","clustering","initialMaxNodes","clusterThreshold","reduceToNodes","chainThreshold","clusterEdgeThreshold","sectorThreshold","screenSizeThreshold","fontSizeMultiplier","maxFontSize","forceAmplification","distanceAmplification","edgeGrowth","nodeScaling","maxNodeSizeIncrements","activeAreaBoxSize","clusterLevelDifference","clusterByZoom","navigation","keyboard","speed","bindToWindow","dataManipulation","initiallyVisible","hierarchicalLayout","levelSeparation","nodeSpacing","layout","freezeForStabilization","smoothCurves","dynamic","roundness","maxVelocity","minVelocity","stabilize","stabilizationIterations","zoomExtentOnStabilize","dragNetwork","dragNodes","hideEdgesOnDrag","hideNodesOnDrag","useDefaultGroups","constants","pixelRatio","hoverObj","controlNodesActive","navigationHammers","manipulationHammers","animationSpeed","animationEasingFunction","animating","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","redrawRequested","images","setOnloadCallback","status","_requestRedraw","xIncrement","yIncrement","zoomIncrement","_loadPhysicsSystem","_loadSectorSystem","_loadClusterSystem","_loadSelectionSystem","_loadHierarchySystem","_setTranslation","freezeSimulationEnabled","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","browserType","requiresTimeout","_getScriptPath","scripts","getElementsByTagName","src","_getRange","specificNodes","node","minY","maxY","minX","maxX","boundingBox","nodeId","_findCenter","initialZoom","disableStart","zoomLevel","positionDefined","predefinedPosition","numberOfNodes","factor","yDistance","xZoomLevel","yZoomLevel","animation","_updateNodeIndexList","_clearNodeIndexList","idx","_unselectAll","_createManipulatorBar","dotData","DOTToGraph","gephi","gephiData","parseGephi","_setNodes","_setEdges","_putDataInSector","_resetLevels","_stabilize","onEdit","onEditEdge","onConnect","onDelete","editMode","newColorObj","groupname","clickToUse","activator","_createKeyBinds","_loadNavigationControls","_loadManipulationSystem","_configureSmoothCurves","_bindHammer","_markAllEdgesAsDirty","tabIndex","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","dispose","pinch","_onTap","_onDoubleTap","_onMouseMoveTitle","hammerFrame","_onRelease","reset","isActive","_moveUp","_yStopMoving","_moveDown","_moveLeft","_xStopMoving","_moveRight","_zoomIn","_stopZoom","_zoomOut","_deleteSelected","_cleanupPhysicsConfiguration","_recursiveDOMDelete","DOMobject","_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","popupVisible","popup","_checkHidePopup","setPosition","checkShow","_checkShowPopup","popupTimer","edgeId","_getEdgeAt","_hoverObject","_blurObject","previousPopupObjId","popupObj","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","edge","connected","popupTargetType","popupTargetId","setText","pointerObj","stillOnObj","overNode","emitEvent","oldWidth","oldHeight","oldNodesData","_updateSelection","angle","_updateCalculationNodes","_reconnectEdges","_updateValueRange","updateLabels","setProperties","properties","colorDirty","_removeFromSelection","oldEdgesData","oldEdge","disconnect","showInternalIds","_createBezierNodes","via","sectors","dynamicEdges","valueTotal","setValueRange","requestAnimationFrame","requested","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","_revertPhysicsState","revertPosition","_revertPhysicsTick","_doInAllActiveSectors","_doInSupportSector","mainMovingStatus","supportMovingStatus","mainMoving","_animationStep","_handleNavigation","startTime","renderStartTime","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","iterations","freezeSimulation","freeze","parentEdgeId","internalMultiplier","positionBezierNode","mixin","storePosition","storePositions","dataArray","allowedToMoveX","allowedToMoveY","getPositions","focusOnNode","nodePosition","lockedOnNode","easingFunction","animateView","locked","_transitionRedraw","viewCenter","distanceFromCenter","_classicRedraw","_lockedRedraw","active","getCenterCoordinates","getBoundingBox","getConnectedNodes","nodeList","nodeObj","toId","fromId","getEdgesFromNode","edgesList","generateColorObject","networkConstants","widthSelected","labelDimensions","yLine","dirtyLabel","fromBackup","toBackup","originalFromId","originalToId","widthFixed","lengthFixed","controlNodesEnabled","controlNodes","positions","connectedNode","_drawLine","_drawArrow","_drawArrowCenter","_drawDashLine","attachEdge","detachEdge","widthDiff","xFrom","yFrom","xTo","yTo","xObj","yObj","_getDistanceToEdge","_getColor","colorObj","fromColor","toColor","grd","createLinearGradient","addColorStop","_getLineWidth","_line","midpointX","midpointY","_pointOnLine","_label","resize","_circle","_pointOnCircle","networkScaleInv","_getViaCoordinates","xVia","yVia","pi","originalAngle","atan2","myAngle","quadraticCurveTo","lineCount","measureText","_rotateForLabelAlignment","_drawLabelRect","_drawLabelText","angleInDegrees","rotate","lineMargin","fillRect","lineJoin","strokeText","setLineDash","pattern","lineDashOffset","lineCap","dashedLine","percentage","arrow","_pointOnBezier","_findBorderPosition","distanceToBorder","distanceToNodes","difference","threshold","arrowPos","guidePos","edgeSegmentLength","toBorderDist","toBorderPoint","x1","y1","x2","y2","x3","y3","lastX","lastY","minDistance","_getDistanceToLine","px","py","something","u","nodeIdFrom","nodeIdTo","getControlNodeFromPosition","getControlNodeToPosition","_enableControlNodes","_disableControlNodes","_getSelectedControlNode","fromDistance","toDistance","_restoreControlNodes","controlnodeFromPos","fromBorderDist","fromBorderPoint","controlnodeToPos","defaultIndex","groupsArray","groupIndex","DEFAULT","groupName","imageBroken","load","url","brokenUrl","img","Image","onload","onerror","error","imagelist","grouplist","reroutedEdges","horizontalAlignLeft","verticalAlignTop","baseRadiusValue","radiusFixed","preassignedLevel","hierarchyEnumerated","fx","fy","vx","vy","previousState","resetCluster","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","_drawCircularImage","_resizeCircularImage","_drawText","_resizeText","_drawDot","_resizeShape","_drawSquare","_drawTriangle","_drawTriangleDown","_drawStar","_drawIcon","_resizeIcon","_reset","clearSizeCache","_setForce","_addForce","storeState","isFixed","velocity","getDistance","radiusDiff","fontDiff","_drawImageAtPosition","globalAlpha","drawImage","_drawImageLabel","getTextSize","_swapToImageResizeWhenImageLoaded","diameter","centerX","centerY","_drawRawCircle","circle","clip","textSize","clusterLineWidth","selectionLineWidth","roundRect","database","defaultSize","ellipse","_drawShape","radiusMultiplier","_icon","iconTextSpacing","relativeIconSize","iconFontFace","iconColor","baseline","labelUnderNode","relativeFontSize","strokecolor","inView","clearVelocity","updateVelocity","massBeforeClustering","energyBefore","fontFamily","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","merge","o","addNode","graphs","attr","addEdge","createEdge","getToken","tokenType","TOKENTYPE","NULL","token","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","strict","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","message","maxLength","forEach2","array1","array2","elem1","elem2","graphData","dotNode","graphNode","convertEdge","dotEdge","graphEdge","subEdge","{","}","[","]",";","=",",","->","--","gephiJSON","allowedToMove","gEdges","gNodes","gEdge","source","gNode","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","_redrawTimer","listeners","events","scrollTopMin","redrawCount","_initAutoResize","component","_stopAutoResize","barId","addCustomTime","numIds","customBarId","ts","customBarIds","removeCustomTime","getWindow","borderRootHeight","borderRootWidth","autoHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","MAX_REDRAWS","repaint","_startAutoResize","_onResize","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","eventType","getTouchList","collectEventData","_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","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","_callbacks","once","self","removeListener","removeAllListeners","callbacks","cb","hasListeners","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","code","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","global","hooks__hooks","hookCallback","setHookCallback","defaultParsingFlags","empty","unusedTokens","unusedInput","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","input","res","hasOwnProp","utc__createUTC","createLocalOrUTC","utc","valid__isValid","_isValid","getTime","_pf","_strict","bigHour","valid__createInvalid","flags","NaN","copyConfig","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","toInt","argumentForCoercion","coercedNumber","isFinite","compareArrays","dontConvert","lengthDiff","diffs","Locale","normalizeLocale","chooseLocale","names","loadLocale","oldLocale","globalLocale","_abbr","locales__getSetGlobalLocale","locales__getLocale","defineLocale","abbr","set","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","makeGetSet","keepTime","get_set__set","get_set__get","mom","getSet","zeroFill","number","targetLength","forceSign","output","addFormatToken","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","formatMoment","isValid","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","matched","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInMonth","UTC","getUTCDate","localeMonths","_months","localeMonthsShort","_monthsShort","localeMonthsParse","monthName","_monthsParse","_longMonthsParse","_shortMonthsParse","months","monthsShort","dayOfMonth","monthsParse","getSetMonth","getDaysInMonth","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","warn","msg","suppressDeprecationWarnings","deprecate","firstTime","deprecateSimple","deprecations","configFromISO","l","string","from_string__isoRegex","isoDates","isoTimes","matchOffset","configFromStringAndFormat","configFromString","aspNetJsonRegex","createFromInputFallback","createDate","ms","createUTCDate","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","weekOfYear","firstDayOfWeek","firstDayOfWeekOfYear","adjustedMoment","daysToDayOfWeek","local__createLocal","week","localeWeek","_week","dow","doy","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","dayOfYearFromWeeks","daysToAdd","getUTCDay","getSetDayOfYear","startOf","defaults","currentDateArray","_useUTC","getUTCFullYear","getUTCMonth","configFromArray","currentDate","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","setUTCMinutes","getUTCMinutes","weekYear","temp","GG","W","E","gg","ISO_8601","parsedInput","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","_meridiem","meridiem","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromObject","createFromConfig","preparse","configFromInput","isUTC","pickBy","moments","Duration","years","quarters","quarter","weeks","days","_milliseconds","_days","_bubble","isDuration","separator","utcOffset","offsetFromString","matches","chunk","chunkOffset","cloneWithOffset","model","setTime","local","getDateOffset","getTimezoneOffset","getSetOffset","keepLocalTime","localAdjust","_changeInProgress","add_subtract__addSubtract","create__createDuration","getSetZone","setOffsetToUTC","setOffsetToLocal","setOffsetToParsedOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","create__isoRegex","parseIso","momentsDifference","inp","positiveMomentsDifference","base","isAfter","isBefore","createAdder","period","dur","tmp","isAdding","calendar__calendar","sod","calendar","inputMs","endOf","isBetween","absFloor","asFloat","that","zoneDelta","monthDiff","anchor2","adjust","wholeMonthDiff","moment_format__toISOString","inputString","postformat","withoutSuffix","humanize","fromNow","newLocaleData","isoWeekday","to_type__valueOf","unix","moment_valid__isValid","parsingFlags","invalidAt","addWeekYearFormatToken","getter","weeksInYear","getSetWeekYear","getSetISOWeekYear","getISOWeeksInYear","getWeeksInYear","weekInfo","getSetQuarter","parseWeekday","weekdaysParse","localeWeekdays","_weekdays","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","localeWeekdaysParse","weekdayName","_weekdaysParse","weekdays","weekdaysShort","weekdaysMin","getSetDayOfWeek","getDay","getSetLocaleDayOfWeek","getSetISODayOfWeek","lowercase","matchMeridiem","_meridiemParse","localeIsPM","localeMeridiem","isLower","millisecond__milliseconds","getZoneAbbr","getZoneName","moment__createUnix","moment__createInZone","parseZone","locale_calendar__calendar","_calendar","_longDateFormat","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","set__set","_ordinalParseLenient","_ordinalParse","lists__get","setter","list","out","lists__listMonths","lists__listMonthsShort","lists__listWeekdays","lists__listWeekdaysShort","lists__listWeekdaysMin","abs__abs","mathAbs","duration_add_subtract__addSubtract","duration_add_subtract__add","duration_add_subtract__subtract","bubble","daysToYears","yearsToDays","as__valueOf","makeAs","alias","get__get","makeGetter","substituteTimeAgo","relativeTime","humanize__relativeTime","posNegDuration","thresholds","humanize__getSetRelativeTimeThreshold","limit","withSuffix","iso_string__toISOString","Y","iso_string__abs","D","asSeconds","match1","match2","match3","match4","match6","match1to2","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchTimestamp","matchWord","defaultLocaleMonths","defaultLocaleMonthsShort","parseTwoDigitYear","getSetYear","defaultLocaleWeek","prototypeMin","prototypeMax","add_subtract__add","add_subtract__subtract","isoWeekYear","getSetDayOfMonth","invalidWeekday","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","_isPm","defaultLocaleMeridiemParse","getSetHour","getSetMinute","getSetSecond","getSetMillisecond","momentPrototype__proto","toJSON","isoWeek","isoWeeks","isoWeeksInYear","isDST","isDSTShifted","zoneAbbr","zoneName","zone","momentPrototype","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","defaultLongDateFormat","LTS","LT","L","LL","LLL","LLLL","defaultInvalidDate","defaultOrdinal","defaultOrdinalParse","defaultRelativeTime","future","past","mm","hh","dd","MM","yy","prototype__proto","firstDayOfYear","ordinalParse","langData","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","get__milliseconds","duration_prototype__proto","toIsoString","version","invalid","relativeTimeThreshold","_moment","setup","READY","Event","determineEventTypes","Utils","each","gestures","Detection","register","onTouch","DOCUMENT","EVENT_MOVE","detect","EVENT_END","Instance","VERSION","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","getCenter","getVelocity","deltaTime","getAngle","touch1","touch2","getDirection","getRotation","isVertical","setPrefixedCss","toggle","prefixes","toCamelCase","toggleBehavior","falseFn","onselectstart","ondragstart","str","preventMouseEvents","started","shouldDetect","hook","onTouchHandler","ev","triggerType","srcType","isPointer","isMouse","buttons","PointerEvent","matchType","updatePointer","doDetect","touchList","touchListLength","triggerChange","trigger","changedLength","changedTouches","evData","identifiers","identifier","pointerType","timeStamp","preventManipulation","stopDetect","pointers","touchlist","pointerEvent","pointerId","pt","MSPOINTER_TYPE_MOUSE","MSPOINTER_TYPE_TOUCH","MSPOINTER_TYPE_PEN","detection","stopped","startDetect","inst","eventData","startEvent","lastEvent","lastCalcEvent","futureCalcEvent","lastCalcData","extendEventData","instOptions","getCalculatedData","recalc","calcEv","calcData","velocityX","velocityY","interimAngle","interimDirection","startEv","lastEv","rotation","eventStartHandler","eventHandlers","createEvent","initEvent","dispatchEvent","state","eh","dragGesture","dragMaxTouches","triggered","dragMinDistance","startCenter","dragDistanceCorrection","dragLockToAxis","dragLockMinDistance","lastDirection","dragBlockVertical","dragBlockHorizontal","Drag","Gesture","holdGesture","holdTimeout","holdThreshold","Hold","Release","Swipe","swipeMinTouches","swipeMaxTouches","swipeVelocityX","swipeVelocityY","tapGesture","sincePrev","didDoubleTap","hasMoved","tapMaxDistance","tapMaxTime","doubleTapInterval","doubleTapDistance","tapAlways","Tap","Touch","preventMouse","transformGesture","scaleThreshold","rotationThreshold","transformMinScale","transformMinRotation","Transform","graphToggleSmoothCurves","graph_toggleSmooth","getElementById","graphRepositionNodes","showValueOfRange","repositionNodes","graphGenerateOptions","optionsSpecific","radioButton1","radioButton2","checked","backupConstants","optionsDiv","switchConfigurations","radioButton","querySelector","tableId","table","_restoreNodes","constantsVariableName","valueId","rangeValue","_overWriteGraphConstants","RepulsionMixin","HierarchialRepulsionMixin","BarnesHutMixin","_toggleBarnesHut","barnesHutTree","_initializeForceCalculation","clusterToFit","_calculateForces","_calculateGravitationalForces","_calculateNodeForces","_calculateSpringForcesWithSupport","_calculateHierarchicalSpringForces","_calculateSpringForces","supportNodes","supportNodeId","gravity","gravityForce","_sector","edgeLength","springForce","combinedClusterSize","node1","node2","node3","_calculateSpringForce","physicsConfiguration","maxGravitational","maxSpring","hierarchicalLayoutDirections","parentElement","rangeElement","radioButton3","graph_repositionNodes","graph_generateOptions","dynamicSmoothCurves","nameArray","maxNumberOfNodes","reposition","maxLevels","forceAggregateHubs","normalizeClusterLevels","increaseClusterLevel","openCluster","isMovingBeforeClustering","_nodeInActiveArea","_addSector","decreaseClusterLevel","_expandClusterNode","updateClusters","zoomDirection","recursive","doNotStart","amountOfNodes","detectedZoomingIn","detectedZoomingOut","_collapseSector","_formClusters","_openClusters","_aggregateHubs","handleChains","chainPercentage","_getChainFraction","_reduceAmountOfChains","_getHubSize","_formClustersByHub","_openClustersBySize","openAll","containedNodeId","childNode","_expelChildFromParent","_releaseContainedEdges","_connectEdgeBackToChild","_validateEdges","othersPresent","childNodeId","_repositionBezierNodes","_formClustersByZoom","_forceClustersByZoom","minLength","_addToCluster","_clusterToSmallestNeighbour","smallestNeighbour","smallestNeighbourNode","neighbour","onlyEqual","_formClusterFromHub","hubNode","absorptionSizeOffset","allowCluster","edgesIdarray","amountOfInitialEdges","children","childrenIds","_addToContainedEdges","_connectEdgeToCluster","_containCircularEdgesFromNode","massBefore","_addToReroutedEdges","maxLevel","minLevel","clusterLevel","targetLevel","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","fraction","reduceAmount","chains","_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","_getAllNodesOverlappingWith","_pointerToPositionObject","positionObject","_getEdgesOverlappingWith","_getAllEdgesOverlappingWith","_addToSelection","_addToHover","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","_cleanManipulatorHammers","_restoreOverloadedFunctions","functionName","_toggleEditMode","toolbar","_bindHammerToDiv","boundFunction","edgeBeingEdited","selectedControlNode","domElement","funct","_createAddNodeToolbar","_addNode","_createAddEdgeToolbar","_handleConnect","_finishConnect","_createEditEdgeToolbar","_selectControlNode","_controlNodeDrag","_releaseControlNode","newNode","_editEdge","alert","targetNode","connectionEdge","connectFromId","_createEdge","defaultData","finalizedData","sourceNodeId","targetNodeId","_editNode","selectedNodes","selectedEdges","navigationDOM","navigationDivs","navigationDivActions","_stopMovement","_zoomExtent","hubsize","definedLevel","undefinedLevel","_changeConstants","_determineLevels","_determineLevelsDirected","distribution","_getDistribution","_placeNodesByHierarchy","minPos","_placeBranchNodes","maxCount","_setLevel","firstNode","_setLevelDirected","parentId","parentLevel","nodeMoved","webpackContext","req","resolve","repulsingForce","a_base","minimumDistance","steepness","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","MAX_VALUE","sizeDiff","minimumTreeSize","rootSize","halfRootSize","_splitBranch","_placeInTree","_updateBranchMass","totalMass","totalMassInv","biggestSize","skipMassUpdate","_placeInRegion","region","containedNode","_insertRegion","childSize","_drawTree","_drawBranch","branch","webpackPolyfill","paths"],"mappings":"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OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aAExIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aAExIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY,UAAWE,WAAYD,OAAQ,UAAWD,WAAY,WAAYG,OAAQF,OAAQ,UAAWD,WAAY,aACxIC,OAAQ,UAAWD,WAAY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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","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","isDataTable","google","visualization","DataTable","randomUUID","S4","floor","random","toString","extend","a","b","i","len","arguments","length","other","prop","hasOwnProperty","selectiveExtend","props","Array","isArray","selectiveDeepExtend","TypeError","constructor","Object","undefined","deepExtend","selectiveNotDeepExtend","indexOf","equalArray","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","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","hasParent","parent","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","replace","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","slice","parseColor","isValidRGB","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","map","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","f","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","labelObj","point","drawPoints","setAttributeNS","size","label","xOffset","yOffset","content","textContent","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","args","ids","firstType","returnType","allowedValues","itemId","_getItem","order","_sort","_filterFields","_appendRow","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","refresh","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","fn","context","entry","clearTimeout","setTimeout","container","SyntaxError","containerElement","margin","defaultXCenter","defaultYCenter","xLabel","yLabel","zLabel","passValueFn","xValueLabel","yValueLabel","zValueLabel","filterLabel","legendLabel","STYLE","DOT","showPerspective","showGrid","keepAspectRatio","showShadow","showGrayBottom","showTooltip","verticalRatio","animationInterval","animationPreload","camera","eye","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","colorAxis","colorGrid","colorDot","colorDotBorder","getMouseX","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","fill","stroke","strokeWidth","borderColor","borderWidth","borderStyle","BAR","BARCOLOR","BARSIZE","DOTLINE","DOTCOLOR","DOTSIZE","GRID","LINE","SURFACE","_getStyleNumber","styleName","_determineColumnIndexes","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","redraw","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","obj","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","bottom","pointRight","pointTop","pointCross","hasChildNodes","firstChild","position","overflow","noCanvas","fontWeight","padding","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","charAt","parseFloat","setCameraPosition","pos","horizontal","vertical","setArmRotation","distance","setArmLength","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","tooltip","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","ctx","getContext","clearRect","widthMin","widthMax","dotSize","right","lineWidth","font","ymin","ymax","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","gridLineLen","step","getCurrent","next","textAlign","textBaseline","fillText","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","from","to","prettyStep","text","xText","yText","zText","offset","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","abs","cross","topSideVisible","zAvg","transBottom","dist","sortDepth","aDiff","subtract","bDiff","crossproduct","crossProduct","radius","arc","PI","j","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","diff","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","round","parameters","emit","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","delta","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","sign","as","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","dataView","progress","sub","sum","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","pow","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","orientation","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","getScale","timeAxis","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis2","currentTime","customTime","itemSet","itemsData","groupsData","getEventProperties","oncontextmenu","setGroups","setItems","_redraw","Core","markDirty","refreshItems","newDataSet","initialLoad","dataRange","_getDataRange","setWindow","animate","fit","setSelection","focus","getSelection","itemData","getItemRange","dataset","minItem","maxStartItem","maxEndItem","itemFromTarget","groupFromTarget","pageX","gesture","pageY","centerContainer","snap","time","snappedTime","what","foreground","labelSet","groupId","linegraph","getLegend","isGroupVisible","visibility","yAxisLeft","yAxisRight","legendLeft","legendRight","hidden","screenToValue","convertHiddenOptions","repeat","dateItem","updateHiddenDates","totalRange","pixelTime","startDate","endDate","_d","runUntil","clone","day","dayOfYear","year","dayOffset","date","month","console","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","startToFront","endToFront","_applyRange","safeDates","printDates","dates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","newValue","switchedYear","switchedMonth","switchedDay","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","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","hammerUtil","byUser","_cancelAnimation","initStart","initEnd","initTime","anyChanged","dragging","done","changed","newStart","newEnd","getRange","totalHidden","previousDelta","allowDragging","deltaX","deltaY","diffRange","safeStart","safeEnd","fakeGesture","pointer","pointerDate","_pointerToDate","zoom","touches","centerDate","hiddenDurationBefore","hiddenDurationAfter","move","EPSILON","orderByStart","orderByEnd","aTime","bTime","force","iMax","axis","collidingItem","jj","collision","nostack","subgroups","newTop","subgroup","format","FORMAT","minorLabels","millisecond","second","minute","hour","weekday","majorLabels","setFormat","defaultFormat","first","setFullYear","getFullYear","setMonth","setDate","setHours","setMinutes","setSeconds","setMilliseconds","getMilliseconds","getSeconds","getMinutes","getHours","getDate","getMonth","setScale","setAutoScale","enable","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","getLabelMinor","getLabelMajor","getClassName","even","today","isSame","currentWeek","currentMonth","currentYear","locale","lang","toLowerCase","selected","displayed","dirty","Hammer","select","unselect","groupChanged","_moveToGroup","setParent","hide","show","isVisible","repositionX","repositionY","_repaintDeleteButton","anchor","editable","deleteButton","title","stopPropagation","removeFromDataSet","_updateContents","template","Element","_updateTitle","removeAttribute","_updateDataAttributes","dataAttributes","attributes","setAttribute","_updateStyle","emptyContent","baseClassName","box","getComputedStyle","onTop","itemSubgroup","subgroupIndex","totalHeight","newHeight","align","itemSetHeight","marginLeft","maxWidth","_repaintDragLeft","_repaintDragRight","limitSize","contentLeft","parentWidth","boxWidth","updateTime","dragLeft","dragLeftItem","dragRight","dragRightItem","_isResized","resized","_previousWidth","_previousHeight","showCurrentTime","locales","backgroundVertical","warned","toUpperCase","substring","currentTimeTimer","setCurrentTime","getCurrentTime","showCustomTime","eventParams","drag","prevent_default","setCustomTime","getCustomTime","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","display","_redrawGroupIcons","iconHeight","iconOffset","drawIcon","_cleanupIcons","backgroundHorizontal","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","subgroupOrderer","subgroupOrder","visibleItems","byStart","byEnd","checkRangedItems","inner","marker","getLabelWidth","restack","markerHeight","lastMarkerHeight","customOrderedItems","_updateVisibleItems","_calculateHeight","offsetTop","offsetLeft","ii","resetSubgroups","orderSubgroups","_checkIfVisible","sortArray","sortField","removeItem","startArray","endArray","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","groupOrder","selectable","onAdd","onUpdate","onMove","onRemove","onMoving","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","selection","stackDirty","touchParams","UNGROUPED","BACKGROUND","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","addCallback","Function","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","initialX","itemProps","srcEvent","ctrlKey","_onDragStartAddItem","xAbs","newItem","initial","initialStart","initialEnd","changes","shiftKey","oldSelection","newSelection","_getItemRange","_item","itemSetFromTarget","side","iconSize","iconSpacing","textArea","scrollableHeight","drawLegendIcons","paddingTop","defaultGroup","sampling","graphHeight","barChart","handleOverlap","dataAxis","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","lastStart","COUNTER","BarGraphFunctions","_updateAllGroupData","_updateGroup","groupsContent","ungroupedCounter","forceGraphUpdate","_updateGraph","rangePerPixelInv","preprocessedGroupData","processedGroupData","groupRanges","changeCalled","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","MAX_CYCLES","_convertYcoordinates","dataContainer","guess","increment","amountOfPoints","xDistance","pointsPerPixel","ceil","sampledData","barCombinedDataLeft","barCombinedDataRight","getStackedBarYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","axisUsed","datapoints","xValue","yValue","extractedData","svgHeight","labelValue","majorTexts","minorTexts","lineTop","parentChanged","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","cur","prevLine","xPrev","xFirstMajorLabel","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","leftTime","leftText","widthText","arr","pop","childNodes","nodeValue","_determineBrowserMethod","_initializeMixinLoaders","renderRefreshRate","renderTimestep","renderTime","physicsTime","runDoubleSpeed","physicsDiscreteStepsize","initializing","triggerFunctions","edit","editEdge","connect","del","customScalingFunction","nodes","mass","radiusMin","radiusMax","shape","image","fontColor","fontSize","fontFace","fontFill","fontStrokeWidth","fontStrokeColor","fontDrawThreshold","scaleFontWithValue","fontSizeMin","fontSizeMax","fontSizeMaxVisible","level","borderWidthSelected","edges","widthSelectionMultiplier","hoverWidth","labelAlignment","arrowScaleFactor","dash","gap","altLength","inheritColor","useGradients","configurePhysics","physics","barnesHut","thetaInverted","gravitationalConstant","centralGravity","springLength","springConstant","damping","repulsion","nodeDistance","hierarchicalRepulsion","clustering","initialMaxNodes","clusterThreshold","reduceToNodes","chainThreshold","clusterEdgeThreshold","sectorThreshold","screenSizeThreshold","fontSizeMultiplier","maxFontSize","forceAmplification","distanceAmplification","edgeGrowth","nodeScaling","maxNodeSizeIncrements","activeAreaBoxSize","clusterLevelDifference","clusterByZoom","navigation","keyboard","speed","bindToWindow","dataManipulation","initiallyVisible","hierarchicalLayout","levelSeparation","nodeSpacing","layout","freezeForStabilization","smoothCurves","dynamic","roundness","maxVelocity","minVelocity","stabilize","stabilizationIterations","zoomExtentOnStabilize","dragNetwork","dragNodes","hideEdgesOnDrag","hideNodesOnDrag","useDefaultGroups","constants","pixelRatio","hoverObj","controlNodesActive","navigationHammers","manipulationHammers","animationSpeed","animationEasingFunction","animating","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","redrawRequested","images","setOnloadCallback","status","_requestRedraw","xIncrement","yIncrement","zoomIncrement","_loadPhysicsSystem","_loadSectorSystem","_loadClusterSystem","_loadSelectionSystem","_loadHierarchySystem","_setTranslation","freezeSimulationEnabled","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","browserType","requiresTimeout","_getScriptPath","scripts","getElementsByTagName","src","_getRange","specificNodes","node","minY","maxY","minX","maxX","boundingBox","nodeId","_findCenter","initialZoom","disableStart","zoomLevel","positionDefined","predefinedPosition","numberOfNodes","factor","yDistance","xZoomLevel","yZoomLevel","animation","_updateNodeIndexList","_clearNodeIndexList","idx","_unselectAll","_createManipulatorBar","dotData","DOTToGraph","gephi","gephiData","parseGephi","_setNodes","_setEdges","_putDataInSector","_resetLevels","_stabilize","onEdit","onEditEdge","onConnect","onDelete","editMode","newColorObj","groupname","clickToUse","activator","_createKeyBinds","_loadNavigationControls","_loadManipulationSystem","_configureSmoothCurves","_bindHammer","_markAllEdgesAsDirty","tabIndex","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","dispose","pinch","_onTap","_onDoubleTap","_onMouseMoveTitle","hammerFrame","_onRelease","reset","isActive","_moveUp","_yStopMoving","_moveDown","_moveLeft","_xStopMoving","_moveRight","_zoomIn","_stopZoom","_zoomOut","_deleteSelected","_cleanupPhysicsConfiguration","_recursiveDOMDelete","DOMobject","_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","popupVisible","popup","_checkHidePopup","setPosition","checkShow","_checkShowPopup","popupTimer","edgeId","_getEdgeAt","_hoverObject","_blurObject","previousPopupObjId","popupObj","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","edge","connected","popupTargetType","popupTargetId","setText","pointerObj","stillOnObj","overNode","emitEvent","oldWidth","oldHeight","oldNodesData","_updateSelection","angle","_updateCalculationNodes","_reconnectEdges","_updateValueRange","updateLabels","setProperties","properties","colorDirty","_removeFromSelection","oldEdgesData","oldEdge","disconnect","showInternalIds","_createBezierNodes","via","sectors","dynamicEdges","valueTotal","setValueRange","requestAnimationFrame","requested","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","_revertPhysicsState","revertPosition","_revertPhysicsTick","_doInAllActiveSectors","_doInSupportSector","mainMovingStatus","supportMovingStatus","mainMoving","_animationStep","_handleNavigation","startTime","renderStartTime","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","iterations","freezeSimulation","freeze","parentEdgeId","internalMultiplier","positionBezierNode","mixin","storePosition","storePositions","dataArray","allowedToMoveX","allowedToMoveY","getPositions","focusOnNode","nodePosition","lockedOnNode","easingFunction","animateView","locked","_transitionRedraw","viewCenter","distanceFromCenter","_classicRedraw","_lockedRedraw","active","getCenterCoordinates","getBoundingBox","getConnectedNodes","nodeList","nodeObj","toId","fromId","getEdgesFromNode","edgesList","generateColorObject","networkConstants","widthSelected","labelDimensions","yLine","dirtyLabel","fromBackup","toBackup","originalFromId","originalToId","widthFixed","lengthFixed","controlNodesEnabled","controlNodes","positions","connectedNode","_drawLine","_drawArrow","_drawArrowCenter","_drawDashLine","attachEdge","detachEdge","widthDiff","xFrom","yFrom","xTo","yTo","xObj","yObj","_getDistanceToEdge","_getColor","colorObj","fromColor","toColor","grd","createLinearGradient","addColorStop","_getLineWidth","_line","midpointX","midpointY","_pointOnLine","_label","resize","_circle","_pointOnCircle","networkScaleInv","_getViaCoordinates","xVia","yVia","pi","originalAngle","atan2","myAngle","quadraticCurveTo","lineCount","measureText","_rotateForLabelAlignment","_drawLabelRect","_drawLabelText","angleInDegrees","rotate","lineMargin","fillRect","lineJoin","strokeText","setLineDash","pattern","lineDashOffset","lineCap","dashedLine","percentage","arrow","_pointOnBezier","_findBorderPosition","distanceToBorder","distanceToNodes","difference","threshold","arrowPos","guidePos","edgeSegmentLength","toBorderDist","toBorderPoint","x1","y1","x2","y2","x3","y3","lastX","lastY","minDistance","_getDistanceToLine","px","py","something","u","nodeIdFrom","nodeIdTo","getControlNodeFromPosition","getControlNodeToPosition","_enableControlNodes","_disableControlNodes","_getSelectedControlNode","fromDistance","toDistance","_restoreControlNodes","controlnodeFromPos","fromBorderDist","fromBorderPoint","controlnodeToPos","defaultIndex","groupsArray","groupIndex","DEFAULT","groupName","imageBroken","load","url","brokenUrl","img","Image","onload","onerror","error","imagelist","grouplist","reroutedEdges","horizontalAlignLeft","verticalAlignTop","baseRadiusValue","radiusFixed","preassignedLevel","hierarchyEnumerated","fx","fy","vx","vy","previousState","resetCluster","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","_drawCircularImage","_resizeCircularImage","_drawText","_resizeText","_drawDot","_resizeShape","_drawSquare","_drawTriangle","_drawTriangleDown","_drawStar","_drawIcon","_resizeIcon","_reset","clearSizeCache","_setForce","_addForce","storeState","isFixed","velocity","getDistance","radiusDiff","fontDiff","_drawImageAtPosition","globalAlpha","drawImage","_drawImageLabel","getTextSize","_swapToImageResizeWhenImageLoaded","diameter","centerX","centerY","_drawRawCircle","circle","clip","textSize","clusterLineWidth","selectionLineWidth","roundRect","database","defaultSize","ellipse","_drawShape","radiusMultiplier","_icon","iconTextSpacing","relativeIconSize","iconFontFace","iconColor","baseline","labelUnderNode","relativeFontSize","strokecolor","inView","clearVelocity","updateVelocity","massBeforeClustering","energyBefore","fontFamily","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","merge","o","addNode","graphs","attr","addEdge","createEdge","getToken","tokenType","TOKENTYPE","NULL","token","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","strict","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","message","maxLength","forEach2","array1","array2","elem1","elem2","graphData","dotNode","graphNode","convertEdge","dotEdge","graphEdge","subEdge","{","}","[","]",";","=",",","->","--","gephiJSON","allowedToMove","gEdges","gNodes","gEdge","source","gNode","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","_redrawTimer","listeners","events","scrollTopMin","redrawCount","_initAutoResize","component","_stopAutoResize","barId","addCustomTime","numIds","customBarId","ts","customBarIds","removeCustomTime","getWindow","borderRootHeight","borderRootWidth","autoHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","MAX_REDRAWS","repaint","_startAutoResize","_onResize","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","eventType","getTouchList","collectEventData","_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","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","_callbacks","once","self","removeListener","removeAllListeners","callbacks","cb","hasListeners","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","code","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","global","hooks__hooks","hookCallback","setHookCallback","defaultParsingFlags","empty","unusedTokens","unusedInput","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","input","res","hasOwnProp","utc__createUTC","createLocalOrUTC","utc","valid__isValid","_isValid","getTime","_pf","_strict","bigHour","valid__createInvalid","flags","NaN","copyConfig","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","toInt","argumentForCoercion","coercedNumber","isFinite","compareArrays","dontConvert","lengthDiff","diffs","Locale","normalizeLocale","chooseLocale","names","loadLocale","oldLocale","globalLocale","_abbr","locales__getSetGlobalLocale","locales__getLocale","defineLocale","abbr","set","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","makeGetSet","keepTime","get_set__set","get_set__get","mom","getSet","zeroFill","number","targetLength","forceSign","output","addFormatToken","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","formatMoment","isValid","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","matched","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInMonth","UTC","getUTCDate","localeMonths","_months","localeMonthsShort","_monthsShort","localeMonthsParse","monthName","_monthsParse","_longMonthsParse","_shortMonthsParse","months","monthsShort","dayOfMonth","monthsParse","getSetMonth","getDaysInMonth","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","warn","msg","suppressDeprecationWarnings","deprecate","firstTime","deprecateSimple","deprecations","configFromISO","l","string","from_string__isoRegex","isoDates","isoTimes","matchOffset","configFromStringAndFormat","configFromString","aspNetJsonRegex","createFromInputFallback","createDate","ms","createUTCDate","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","weekOfYear","firstDayOfWeek","firstDayOfWeekOfYear","adjustedMoment","daysToDayOfWeek","local__createLocal","week","localeWeek","_week","dow","doy","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","dayOfYearFromWeeks","daysToAdd","getUTCDay","getSetDayOfYear","startOf","defaults","currentDateArray","_useUTC","getUTCFullYear","getUTCMonth","configFromArray","currentDate","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","setUTCMinutes","getUTCMinutes","weekYear","temp","GG","W","E","gg","ISO_8601","parsedInput","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","_meridiem","meridiem","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromObject","createFromConfig","preparse","configFromInput","isUTC","pickBy","moments","Duration","years","quarters","quarter","weeks","days","_milliseconds","_days","_bubble","isDuration","separator","utcOffset","offsetFromString","matches","chunk","chunkOffset","cloneWithOffset","model","setTime","local","getDateOffset","getTimezoneOffset","getSetOffset","keepLocalTime","localAdjust","_changeInProgress","add_subtract__addSubtract","create__createDuration","getSetZone","setOffsetToUTC","setOffsetToLocal","setOffsetToParsedOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","create__isoRegex","parseIso","momentsDifference","inp","positiveMomentsDifference","base","isAfter","isBefore","createAdder","period","dur","tmp","isAdding","calendar__calendar","sod","calendar","inputMs","endOf","isBetween","absFloor","asFloat","that","zoneDelta","monthDiff","anchor2","adjust","wholeMonthDiff","moment_format__toISOString","inputString","postformat","withoutSuffix","humanize","fromNow","newLocaleData","isoWeekday","to_type__valueOf","unix","moment_valid__isValid","parsingFlags","invalidAt","addWeekYearFormatToken","getter","weeksInYear","getSetWeekYear","getSetISOWeekYear","getISOWeeksInYear","getWeeksInYear","weekInfo","getSetQuarter","parseWeekday","weekdaysParse","localeWeekdays","_weekdays","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","localeWeekdaysParse","weekdayName","_weekdaysParse","weekdays","weekdaysShort","weekdaysMin","getSetDayOfWeek","getDay","getSetLocaleDayOfWeek","getSetISODayOfWeek","lowercase","matchMeridiem","_meridiemParse","localeIsPM","localeMeridiem","isLower","millisecond__milliseconds","getZoneAbbr","getZoneName","moment__createUnix","moment__createInZone","parseZone","locale_calendar__calendar","_calendar","_longDateFormat","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","set__set","_ordinalParseLenient","_ordinalParse","lists__get","setter","list","out","lists__listMonths","lists__listMonthsShort","lists__listWeekdays","lists__listWeekdaysShort","lists__listWeekdaysMin","abs__abs","mathAbs","duration_add_subtract__addSubtract","duration_add_subtract__add","duration_add_subtract__subtract","bubble","daysToYears","yearsToDays","as__valueOf","makeAs","alias","get__get","makeGetter","substituteTimeAgo","relativeTime","humanize__relativeTime","posNegDuration","thresholds","humanize__getSetRelativeTimeThreshold","limit","withSuffix","iso_string__toISOString","Y","iso_string__abs","D","asSeconds","match1","match2","match3","match4","match6","match1to2","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchTimestamp","matchWord","defaultLocaleMonths","defaultLocaleMonthsShort","parseTwoDigitYear","getSetYear","defaultLocaleWeek","prototypeMin","prototypeMax","add_subtract__add","add_subtract__subtract","isoWeekYear","getSetDayOfMonth","invalidWeekday","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","_isPm","defaultLocaleMeridiemParse","getSetHour","getSetMinute","getSetSecond","getSetMillisecond","momentPrototype__proto","toJSON","isoWeek","isoWeeks","isoWeeksInYear","isDST","isDSTShifted","zoneAbbr","zoneName","zone","momentPrototype","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","defaultLongDateFormat","LTS","LT","L","LL","LLL","LLLL","defaultInvalidDate","defaultOrdinal","defaultOrdinalParse","defaultRelativeTime","future","past","mm","hh","dd","MM","yy","prototype__proto","firstDayOfYear","ordinalParse","langData","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","get__milliseconds","duration_prototype__proto","toIsoString","version","invalid","relativeTimeThreshold","_moment","setup","READY","Event","determineEventTypes","Utils","each","gestures","Detection","register","onTouch","DOCUMENT","EVENT_MOVE","detect","EVENT_END","Instance","VERSION","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","getCenter","getVelocity","deltaTime","getAngle","touch1","touch2","getDirection","getRotation","isVertical","setPrefixedCss","toggle","prefixes","toCamelCase","toggleBehavior","falseFn","onselectstart","ondragstart","str","preventMouseEvents","started","shouldDetect","hook","onTouchHandler","ev","triggerType","srcType","isPointer","isMouse","buttons","PointerEvent","matchType","updatePointer","doDetect","touchList","touchListLength","triggerChange","trigger","changedLength","changedTouches","evData","identifiers","identifier","pointerType","timeStamp","preventManipulation","stopDetect","pointers","touchlist","pointerEvent","pointerId","pt","MSPOINTER_TYPE_MOUSE","MSPOINTER_TYPE_TOUCH","MSPOINTER_TYPE_PEN","detection","stopped","startDetect","inst","eventData","startEvent","lastEvent","lastCalcEvent","futureCalcEvent","lastCalcData","extendEventData","instOptions","getCalculatedData","recalc","calcEv","calcData","velocityX","velocityY","interimAngle","interimDirection","startEv","lastEv","rotation","eventStartHandler","eventHandlers","createEvent","initEvent","dispatchEvent","state","eh","dragGesture","dragMaxTouches","triggered","dragMinDistance","startCenter","dragDistanceCorrection","dragLockToAxis","dragLockMinDistance","lastDirection","dragBlockVertical","dragBlockHorizontal","Drag","Gesture","holdGesture","holdTimeout","holdThreshold","Hold","Release","Swipe","swipeMinTouches","swipeMaxTouches","swipeVelocityX","swipeVelocityY","tapGesture","sincePrev","didDoubleTap","hasMoved","tapMaxDistance","tapMaxTime","doubleTapInterval","doubleTapDistance","tapAlways","Tap","Touch","preventMouse","transformGesture","scaleThreshold","rotationThreshold","transformMinScale","transformMinRotation","Transform","graphToggleSmoothCurves","graph_toggleSmooth","getElementById","graphRepositionNodes","showValueOfRange","repositionNodes","graphGenerateOptions","optionsSpecific","radioButton1","radioButton2","checked","backupConstants","optionsDiv","switchConfigurations","radioButton","querySelector","tableId","table","_restoreNodes","constantsVariableName","valueId","rangeValue","_overWriteGraphConstants","RepulsionMixin","HierarchialRepulsionMixin","BarnesHutMixin","_toggleBarnesHut","barnesHutTree","_initializeForceCalculation","clusterToFit","_calculateForces","_calculateGravitationalForces","_calculateNodeForces","_calculateSpringForcesWithSupport","_calculateHierarchicalSpringForces","_calculateSpringForces","supportNodes","supportNodeId","gravity","gravityForce","_sector","edgeLength","springForce","combinedClusterSize","node1","node2","node3","_calculateSpringForce","physicsConfiguration","maxGravitational","maxSpring","hierarchicalLayoutDirections","parentElement","rangeElement","radioButton3","graph_repositionNodes","graph_generateOptions","dynamicSmoothCurves","nameArray","maxNumberOfNodes","reposition","maxLevels","forceAggregateHubs","normalizeClusterLevels","increaseClusterLevel","openCluster","isMovingBeforeClustering","_nodeInActiveArea","_addSector","decreaseClusterLevel","_expandClusterNode","updateClusters","zoomDirection","recursive","doNotStart","amountOfNodes","detectedZoomingIn","detectedZoomingOut","_collapseSector","_formClusters","_openClusters","_aggregateHubs","handleChains","chainPercentage","_getChainFraction","_reduceAmountOfChains","_getHubSize","_formClustersByHub","_openClustersBySize","openAll","containedNodeId","childNode","_expelChildFromParent","_releaseContainedEdges","_connectEdgeBackToChild","_validateEdges","othersPresent","childNodeId","_repositionBezierNodes","_formClustersByZoom","_forceClustersByZoom","minLength","_addToCluster","_clusterToSmallestNeighbour","smallestNeighbour","smallestNeighbourNode","neighbour","onlyEqual","_formClusterFromHub","hubNode","absorptionSizeOffset","allowCluster","edgesIdarray","amountOfInitialEdges","children","childrenIds","_addToContainedEdges","_connectEdgeToCluster","_containCircularEdgesFromNode","massBefore","_addToReroutedEdges","maxLevel","minLevel","clusterLevel","targetLevel","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","fraction","reduceAmount","chains","_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","_getAllNodesOverlappingWith","_pointerToPositionObject","positionObject","_getEdgesOverlappingWith","_getAllEdgesOverlappingWith","_addToSelection","_addToHover","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","_cleanManipulatorHammers","_restoreOverloadedFunctions","functionName","_toggleEditMode","toolbar","_bindHammerToDiv","boundFunction","edgeBeingEdited","selectedControlNode","domElement","funct","_createAddNodeToolbar","_addNode","_createAddEdgeToolbar","_handleConnect","_finishConnect","_createEditEdgeToolbar","_selectControlNode","_controlNodeDrag","_releaseControlNode","newNode","_editEdge","alert","targetNode","connectionEdge","connectFromId","_createEdge","defaultData","finalizedData","sourceNodeId","targetNodeId","_editNode","selectedNodes","selectedEdges","navigationDOM","navigationDivs","navigationDivActions","_stopMovement","_zoomExtent","hubsize","definedLevel","undefinedLevel","_changeConstants","_determineLevels","_determineLevelsDirected","distribution","_getDistribution","_placeNodesByHierarchy","minPos","_placeBranchNodes","maxCount","_setLevel","firstNode","_setLevelDirected","parentId","parentLevel","nodeMoved","repulsingForce","a_base","minimumDistance","steepness","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","MAX_VALUE","sizeDiff","minimumTreeSize","rootSize","halfRootSize","_splitBranch","_placeInTree","_updateBranchMass","totalMass","totalMassInv","biggestSize","skipMassUpdate","_placeInRegion","region","containedNode","_insertRegion","childSize","_drawTree","_drawBranch","branch","webpackContext","req","resolve","webpackPolyfill","paths"],"mappings":"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"}
\ No newline at end of file
diff --git a/dist/vis.min.js b/dist/vis.min.js
index 9a3af43e..fc7e4be5 100644
--- a/dist/vis.min.js
+++ b/dist/vis.min.js
@@ -4,7 +4,7 @@
*
* A dynamic, browser-based visualization library.
*
- * @version 3.12.0
+ * @version 3.12.1-SNAPSHOT
* @date 2015-04-07
*
* @license
@@ -27,18 +27,18 @@ var i=this;if(this.dataSet&&this.dataSet.off("*",this._onChange),void 0!==t){Arr
},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(t){this.frame.style.cursor="auto",o.removeEventListener(document,"mousemove",this.onmousemove),o.removeEventListener(document,"mouseup",this.onmouseup),o.preventDefault()},t.exports=s},function(t,e,i){function s(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)}s.prototype.setRange=function(t,e,i,s){this._start=t?t:0,this._end=e?e:0,this.setStep(i,s)},s.prototype.setStep=function(t,e){void 0===t||0>=t||(void 0!==e&&(this.prettyStep=e),this._step=this.prettyStep===!0?s.calculatePrettyStep(t):t)},s.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},s.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},s.prototype.getStep=function(){return this._step},s.prototype.start=function(){this._current=this._start-this._start%this._step},s.prototype.next=function(){this._current+=this._step},s.prototype.end=function(){return this._current>this._end},t.exports=s},function(t,e,i){function s(t,e,i,h){if(!(this instanceof s))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof n||i instanceof r)&&i instanceof Object){var u=h;h=i,i=u}var m=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:{getScale:function(){return m.timeAxis.step.scale},getStep:function(){return m.timeAxis.step.step},toScreen:m._toScreen.bind(m),toGlobalScreen:m._toGlobalScreen.bind(m),toTime:m._toTime.bind(m),toGlobalTime:m._toGlobalTime.bind(m)}},this.range=new a(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new d(this.body),this.timeAxis2=null,this.components.push(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,this.on("tap",function(t){m.emit("click",m.getEventProperties(t))}),this.on("doubletap",function(t){m.emit("doubleClick",m.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){m.emit("contextmenu",m.getEventProperties(t))},h&&this.setOptions(h),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(35),l=i(26),c=i(27),p=i(32);s.prototype=new h,s.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},s.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof n||t instanceof r?t:new n(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){if(void 0==this.options.start||void 0==this.options.end)var s=this._getDataRange();var o=void 0!=this.options.start?this.options.start:s.start,a=void 0!=this.options.end?this.options.end:s.end;this.setWindow(o,a,{animate:!1})}else this.fit({animate:!1})},s.prototype.setGroups=function(t){var e;e=t?t instanceof n||t instanceof r?t:new n(t):null,this.groupsData=e,this.itemSet.setGroups(e)},s.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},s.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},s.prototype.focus=function(t,e){if(this.itemsData&&void 0!=t){var i=Array.isArray(t)?t:[t],s=this.itemsData.getDataSet().get(i,{type:{start:"Date",end:"Date"}}),o=null,n=null;if(s.forEach(function(t){var e=t.start.valueOf(),i="end"in t?t.end.valueOf():t.start.valueOf();(null===o||o>e)&&(o=e),(null===n||i>n)&&(n=i)}),null!==o&&null!==n){var r=(o+n)/2,a=Math.max(this.range.end-this.range.start,1.1*(n-o)),h=e&&void 0!==e.animate?e.animate:!0;this.range.setRange(r-a/2,r+a/2,h)}}},s.prototype.getItemRange=function(){var t=this.itemsData.getDataSet(),e=null,i=null;if(t){var s=t.min("start");e=s?o.convert(s.start,"Date").valueOf():null;var n=t.max("start");n&&(i=o.convert(n.start,"Date").valueOf());var r=t.max("end");r&&(i=null==i?o.convert(r.end,"Date").valueOf():Math.max(i,o.convert(r.end,"Date").valueOf()))}return{min:null!=e?new Date(e):null,max:null!=i?new Date(i):null}},s.prototype.getEventProperties=function(t){var e=this.itemSet.itemFromTarget(t),i=this.itemSet.groupFromTarget(t),s=t.gesture?t.gesture.center.pageX:t.pageX,n=t.gesture?t.gesture.center.pageY:t.pageY,r=s-o.getAbsoluteLeft(this.dom.centerContainer),a=n-o.getAbsoluteTop(this.dom.centerContainer),h=this.itemSet.options.snap||null,d=this.body.util.getScale(),l=this.body.util.getStep(),c=this._toTime(r),p=h?h(c,d,l):c,u=o.getTarget(t),m=null;return null!=e?m="item":o.hasParent(u,this.timeAxis.dom.foreground)?m="axis":this.timeAxis2&&o.hasParent(u,this.timeAxis2.dom.foreground)?m="axis":o.hasParent(u,this.itemSet.dom.labelSet)?m="group-label":o.hasParent(u,this.customTime.bar)?m="custom-time":o.hasParent(u,this.currentTime.bar)?m="current-time":o.hasParent(u,this.dom.center)&&(m="background"),{event:t,item:e?e.id:null,group:i?i.groupId:null,what:m,pageX:s,pageY:n,x:r,y:a,time:c,snappedTime:p}},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:{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.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,this.on("tap",function(t){h.emit("click",h.getEventProperties(t))}),this.on("doubletap",function(t){h.emit("doubleClick",h.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){h.emit("contextmenu",h.getEventProperties(t))},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(35),l=i(26),c=i(27),p=i(34);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}},s.prototype.getEventProperties=function(t){var e=t.gesture?t.gesture.center.pageX:t.pageX,i=t.gesture?t.gesture.center.pageY:t.pageY,s=e-o.getAbsoluteLeft(this.dom.centerContainer),n=i-o.getAbsoluteTop(this.dom.centerContainer),r=this._toTime(s),a=o.getTarget(t),h=null;o.hasParent(a,this.timeAxis.dom.foreground)?h="axis":this.timeAxis2&&o.hasParent(a,this.timeAxis2.dom.foreground)?h="axis":o.hasParent(a,this.linegraph.yAxisLeft.dom.frame)?h="data-axis":o.hasParent(a,this.linegraph.yAxisRight.dom.frame)?h="data-axis":o.hasParent(a,this.linegraph.legendLeft.dom.frame)?h="legend":o.hasParent(a,this.linegraph.legendRight.dom.frame)?h="legend":o.hasParent(a,this.customTime.bar)?h="custom-time":o.hasParent(a,this.currentTime.bar)?h="current-time":o.hasParent(a,this.dom.center)&&(h="background");var d=[],l=this.linegraph.yAxisLeft,c=this.linegraph.yAxisRight;return l.hidden||d.push(l.screenToValue(n)),c.hidden||d.push(c.screenToValue(n)),{event:t,what:h,pageX:e,pageY:i,x:s,y:n,time:r,value:d}},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,e,i){function s(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)}s.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)},s.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]},s.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},s.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},s.prototype.hasNext=function(){return this.current>=this.marginStart},s.prototype.next=function(){var t=this.current;this.current-=this.step,this.current==t&&(this.current=this._end)},s.prototype.previous=function(){this.current+=this.step,this.marginEnd+=this.step,this.marginRange=this.marginEnd-this.marginStart},s.prototype.getCurrent=function(t){var e=Math.abs(this.current)0;s--){if("0"!=i[s]){if("."==i[s]||","==i[s]){i=i.slice(0,s);break}break}i=i.slice(0,s)}}else{var o="",n=i.indexOf("e");if(-1!=n&&(o=i.slice(n),i=i.slice(0,n)),n=Math.max(i.indexOf(","),i.indexOf(".")),-1===n?(0!==t&&(i+="."),n=i.length+t):0!==t&&(n+=t+1),n>i.length)for(var r=n-i.length;r>0;r--)i+="0";else i=i.slice(0,n);i+=o}return i},s.prototype.isMajor=function(){return this.current%(this.scale*this.majorSteps[this.stepIndex])==0},t.exports=s},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(25),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,s){s!==!0&&(s=!1);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,m=function(){if(!a.props.touch.dragging){var t=(new Date).valueOf(),e=t-p,i=e>c,g=i||null===o?o:r.easeInOutQuad(e,h,o,c),v=i||null===n?n:r.easeInOutQuad(e,d,n,c);f=a._applyRange(g,v),l.updateHiddenDates(a.body,a.options.hiddenDates),u=u||f,f&&a.body.emitter.emit("rangechange",{start:new Date(a.start),end:new Date(a.end),byUser:s}),i?u&&a.body.emitter.emit("rangechanged",{start:new Date(a.start),end:new Date(a.end),byUser:s}):a.animateTimer=setTimeout(m,20)}};return m()}var f=this._applyRange(o,n);if(l.updateHiddenDates(this.body,this.options.hiddenDates),f){var g={start:new Date(this.start),end:new Date(this.end),byUser:s};this.body.emitter.emit("rangechange",g),this.body.emitter.emit("rangechanged",g)}},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&&od&&(d=0),o-s>d&&(this.end-this.start===d&&sthis.end?(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(t){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),byUser:!0})}},s.prototype._onDragEnd=function(t){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),byUser:!0}))},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(t){this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.allowDragging=!0,this.props.touch.center=null,this.scaleOffset=0,this.deltaDifference=0},s.prototype._onHold=function(){this.props.touch.allowDragging=!1},s.prototype._onPinch=function(t){if(this.options.zoomable&&this.options.moveable&&(this.props.touch.allowDragging=!1,t.gesture.touches.length>1)){this.props.touch.center||(this.props.touch.center=n(t.gesture.center,this.body.dom.center));var e=1/(t.gesture.scale+this.scaleOffset),i=this._pointerToDate(this.props.touch.center),s=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),o=l.getHiddenDurationBefore(this.body.hiddenDates,this,i),r=s-o,a=i-o+(this.props.touch.start-(i-o))*e,h=i+r+(this.props.touch.end-(i+r))*e;this.startToFront=1-e>0?!1:!0,this.endToFront=e-1>0?!1:!0;var d=l.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),c=l.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);(d!=a||c!=h)&&(this.props.touch.start=d,this.props.touch.end=c,this.scaleOffset=1-t.gesture.scale,a=d,h=c),this.setRange(a,h,!1,!0),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,!1,!0),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,i){var s=.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-i.vertical+se.top}},function(t,e,i){function s(t,e,i,o){this.current=new Date,this._start=new Date,this._end=new Date,this.autoScale=!0,this.scale="day",this.step=1,this.setRange(t,e,i),this.switchedDay=!1,this.switchedMonth=!1,this.switchedYear=!1,this.hiddenDates=o,void 0===o&&(this.hiddenDates=[]),this.format=s.FORMAT}var o=i(44),n=i(15),r=i(1);s.FORMAT={minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},s.prototype.setFormat=function(t){var e=r.deepExtend({},s.FORMAT);this.format=r.deepExtend(e,t)},s.prototype.setRange=function(t,e,i){if(!(t instanceof Date&&e instanceof Date))throw"No legal start or end date in method setRange";this._start=void 0!=t?new Date(t.valueOf()):new Date,this._end=void 0!=e?new Date(e.valueOf()):new Date,this.autoScale&&this.setMinimumStep(i)},s.prototype.first=function(){this.current=new Date(this._start.valueOf()),this.roundToMinor()},s.prototype.roundToMinor=function(){switch(this.scale){case"year":this.current.setFullYear(this.step*Math.floor(this.current.getFullYear()/this.step)),this.current.setMonth(0);case"month":this.current.setDate(1);case"day":case"weekday":this.current.setHours(0);case"hour":this.current.setMinutes(0);case"minute":this.current.setSeconds(0);case"second":this.current.setMilliseconds(0)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.setMilliseconds(this.current.getMilliseconds()-this.current.getMilliseconds()%this.step);break;case"second":this.current.setSeconds(this.current.getSeconds()-this.current.getSeconds()%this.step);break;case"minute":this.current.setMinutes(this.current.getMinutes()-this.current.getMinutes()%this.step);break;case"hour":this.current.setHours(this.current.getHours()-this.current.getHours()%this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()-1-(this.current.getDate()-1)%this.step+1);break;case"month":this.current.setMonth(this.current.getMonth()-this.current.getMonth()%this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()-this.current.getFullYear()%this.step)}},s.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()},s.prototype.next=function(){var t=this.current.valueOf();if(this.current.getMonth()<6)switch(this.scale){case"millisecond":this.current=new Date(this.current.valueOf()+this.step);break;case"second":this.current=new Date(this.current.valueOf()+1e3*this.step);break;case"minute":this.current=new Date(this.current.valueOf()+1e3*this.step*60);break;case"hour":this.current=new Date(this.current.valueOf()+1e3*this.step*60*60);var e=this.current.getHours();this.current.setHours(e-e%this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()+this.step);break;case"month":this.current.setMonth(this.current.getMonth()+this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()+this.step)}else switch(this.scale){case"millisecond":this.current=new Date(this.current.valueOf()+this.step);break;case"second":this.current.setSeconds(this.current.getSeconds()+this.step);break;case"minute":this.current.setMinutes(this.current.getMinutes()+this.step);break;case"hour":this.current.setHours(this.current.getHours()+this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()+this.step);break;case"month":this.current.setMonth(this.current.getMonth()+this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()+this.step)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.getMilliseconds()0?t.step:1,this.autoScale=!1)},s.prototype.setAutoScale=function(t){this.autoScale=t},s.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,s=864e5,o=36e5,n=6e4,r=1e3,a=1;1e3*e>t&&(this.scale="year",this.step=1e3),500*e>t&&(this.scale="year",this.step=500),100*e>t&&(this.scale="year",this.step=100),50*e>t&&(this.scale="year",this.step=50),10*e>t&&(this.scale="year",this.step=10),5*e>t&&(this.scale="year",this.step=5),e>t&&(this.scale="year",this.step=1),3*i>t&&(this.scale="month",this.step=3),i>t&&(this.scale="month",this.step=1),5*s>t&&(this.scale="day",this.step=5),2*s>t&&(this.scale="day",this.step=2),s>t&&(this.scale="day",this.step=1),s/2>t&&(this.scale="weekday",this.step=1),4*o>t&&(this.scale="hour",this.step=4),o>t&&(this.scale="hour",this.step=1),15*n>t&&(this.scale="minute",this.step=15),10*n>t&&(this.scale="minute",this.step=10),5*n>t&&(this.scale="minute",this.step=5),n>t&&(this.scale="minute",this.step=1),15*r>t&&(this.scale="second",this.step=15),10*r>t&&(this.scale="second",this.step=10),5*r>t&&(this.scale="second",this.step=5),r>t&&(this.scale="second",this.step=1),200*a>t&&(this.scale="millisecond",this.step=200),100*a>t&&(this.scale="millisecond",this.step=100),50*a>t&&(this.scale="millisecond",this.step=50),10*a>t&&(this.scale="millisecond",this.step=10),5*a>t&&(this.scale="millisecond",this.step=5),a>t&&(this.scale="millisecond",this.step=1)}},s.snap=function(t,e,i){var s=new Date(t.valueOf());if("year"==e){var o=s.getFullYear()+Math.round(s.getMonth()/12);s.setFullYear(Math.round(o/i)*i),s.setMonth(0),s.setDate(0),s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0)}else if("month"==e)s.getDate()>15?(s.setDate(1),s.setMonth(s.getMonth()+1)):s.setDate(1),s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0);else if("day"==e){switch(i){case 5:case 2:s.setHours(24*Math.round(s.getHours()/24));break;default:s.setHours(12*Math.round(s.getHours()/12))}s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:s.setHours(12*Math.round(s.getHours()/12));break;default:s.setHours(6*Math.round(s.getHours()/6))}s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0)}else if("hour"==e){switch(i){case 4:s.setMinutes(60*Math.round(s.getMinutes()/60));break;default:s.setMinutes(30*Math.round(s.getMinutes()/30))}s.setSeconds(0),s.setMilliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:s.setMinutes(5*Math.round(s.getMinutes()/5)),s.setSeconds(0);break;case 5:s.setSeconds(60*Math.round(s.getSeconds()/60));break;default:s.setSeconds(30*Math.round(s.getSeconds()/30))}s.setMilliseconds(0)}else if("second"==e)switch(i){case 15:case 10:s.setSeconds(5*Math.round(s.getSeconds()/5)),s.setMilliseconds(0);break;case 5:s.setMilliseconds(1e3*Math.round(s.getMilliseconds()/1e3));break;default:s.setMilliseconds(500*Math.round(s.getMilliseconds()/500))}else if("millisecond"==e){var n=i>5?i/2:1;s.setMilliseconds(Math.round(s.getMilliseconds()/n)*n)}return s},s.prototype.isMajor=function(){if(1==this.switchedYear)switch(this.switchedYear=!1,this.scale){case"year":case"month":case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedMonth)switch(this.switchedMonth=!1,this.scale){case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedDay)switch(this.switchedDay=!1,this.scale){case"millisecond":case"second":case"minute":case"hour":return!0;default:return!1}switch(this.scale){case"millisecond":return 0==this.current.getMilliseconds();case"second":return 0==this.current.getSeconds();case"minute":return 0==this.current.getHours()&&0==this.current.getMinutes();case"hour":return 0==this.current.getHours();case"weekday":case"day":return 1==this.current.getDate();case"month":return 0==this.current.getMonth();case"year":return!1;default:return!1}},s.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?o(t).format(e):""},s.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?o(t).format(e):""},s.prototype.getClassName=function(){function t(t){return t/h%2==0?" even":" odd"}function e(t){return t.isSame(new Date,"day")?" today":t.isSame(o().add(1,"day"),"day")?" tomorrow":t.isSame(o().add(-1,"day"),"day")?" yesterday":""}function i(t){return t.isSame(new Date,"week")?" current-week":""}function s(t){return t.isSame(new Date,"month")?" current-month":""}function n(t){return t.isSame(new Date,"year")?" current-year":""}var r=o(this.current),a=r.locale?r.locale("en"):r.lang("en"),h=this.step;switch(this.scale){case"millisecond":return t(a.milliseconds()).trim();case"second":return t(a.seconds()).trim();case"minute":return t(a.minutes()).trim();case"hour":var d=a.hours();return 4==this.step&&(d=d+"-"+(d+4)),d+"h"+e(a)+t(a.hours());case"weekday":return a.format("dddd").toLowerCase()+e(a)+i(a)+t(a.date());case"day":var l=a.date(),c=a.format("MMMM").toLowerCase();return"day"+l+" "+c+s(a)+t(l-1);case"month":return a.format("MMMM").toLowerCase()+s(a)+t(a.month());case"year":var p=a.year();return"year"+p+n(a)+t(p);default:return""}},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){var e=void 0!=t.group&&this.data.group!=t.group;e&&this.parent.itemSet._moveToGroup(this,t.group),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(t){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){t.preventDefault(),t.stopPropagation(),e.parent.removeFromDataSet(e)}),t.appendChild(i),this.dom.deleteButton=i}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},s.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;if(e!==this.content){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},s.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("title")},s.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;it.start},s.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.content=document.createElement("div"),t.content.className="content",t.box.appendChild(t.content),this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.background;if(!e)throw new Error("Cannot redraw item: parent has no background container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.content),this._updateDataAttributes(this.dom.content),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.props.content.width=this.dom.content.offsetWidth,this.height=0,this.dirty=!1}},s.prototype.show=r.prototype.show,s.prototype.hide=r.prototype.hide,s.prototype.repositionX=r.prototype.repositionX,s.prototype.repositionY=function(t){var e="top"===this.options.orientation;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var s=this.data.subgroup,o=this.parent.subgroups,r=o[s].index;if(1==e){i=this.parent.subgroups[s].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in o)o.hasOwnProperty(h)&&1==o[h].visible&&o[h].indexr&&(a+=l)}i=this.parent.subgroups[s].height+t.item.vertical,this.dom.box.style.top=this.parent.height-d+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(20);i(1)}s.prototype=new o(null,null,null),s.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start-e&&this.data.startt.start},s.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.content=document.createElement("div"),t.content.className="content",t.box.appendChild(t.content),t.box["timeline-item"]=this,this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.foreground;if(!e)throw new Error("Cannot redraw item: parent has no foreground container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.box),this._updateDataAttributes(this.dom.box),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.dom.content.style.maxWidth="none",this.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,this.dom.content.style.maxWidth="",this.dirty=!1}this._repaintDeleteButton(t.box),this._repaintDragLeft(),this._repaintDragRight()},s.prototype.show=function(){this.displayed||this.redraw()},s.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.displayed=!1}},s.prototype.repositionX=function(t){var e,i,s=this.parent.width,o=this.conversion.toScreen(this.data.start),n=this.conversion.toScreen(this.data.end);(void 0===t||t===!0)&&(-s>o&&(o=-s),n>2*s&&(n=2*s));var r=Math.max(n-o,1);switch(this.overflow?(this.left=o,this.width=r+this.props.content.width,i=this.props.content.width):(this.left=o,this.width=r,i=Math.min(n-o-2*this.options.padding,this.props.content.width)),this.dom.box.style.left=this.left+"px",this.dom.box.style.width=r+"px",this.options.align){case"left":this.dom.content.style.left="0";break;case"right":this.dom.content.style.left=Math.max(r-i-2*this.options.padding,0)+"px";break;case"center":this.dom.content.style.left=Math.max((r-i-2*this.options.padding)/2,0)+"px";break;default:e=this.overflow?n>0?Math.max(-o,0):-i:0>o?Math.min(-o,n-o-i-2*this.options.padding):0,this.dom.content.style.left=e+"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){this.options=null,this.props=null}s.prototype.setOptions=function(t){t&&util.extend(this.options,t)},s.prototype.redraw=function(){return!1},s.prototype.destroy=function(){},s.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=s},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(25),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",id:0},this.options=n.extend({},this.defaultOptions),this.customTime=e&&e.time?e.time:new Date,this.eventParams={},this._create(),this.setOptions(e)}var o=i(45),n=i(1),r=i(25),a=i(44),h=i(48);s.prototype=new r,s.prototype.setOptions=function(t){t&&(n.selectiveExtend(["showCustomTime","locale","locales","id"],this.options,t),this.options.id&&this.redraw())},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",{id:this.options.id,time:new Date(this.customTime.valueOf())}),t.stopPropagation(),t.preventDefault()}},s.prototype._onDragEnd=function(t){this.eventParams.dragging&&(this.body.emitter.emit("timechanged",{id:this.options.id,time:new Date(this.customTime.valueOf())}),t.stopPropagation(),t.preventDefault())},t.exports=s},function(t,e,i){function s(t,e,i,s){this.id=o.randomUUID(),this.body=t,this.defaultOptions={orientation:"left",showMinorLabels:!0,showMajorLabels:!0,icons:!0,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:"40px",visible:!0,alignZeros:!0,customRange:{left:{min:void 0,max:void 0},right:{min:void 0,max:void 0}},title:{left:{text:void 0},right:{text:void 0}},format:{left:{decimals:void 0},right:{decimals:void 0}}},this.linegraphOptions=s,this.linegraphSVG=i,this.props={},this.DOMelements={lines:{},labels:{},title:{}},this.dom={},this.range={start:0,end:0},this.options=o.extend({},this.defaultOptions),this.conversionFactor=1,this.setOptions(e),this.width=Number((""+this.options.width).replace("px","")),this.minWidth=this.width,this.height=this.linegraphSVG.offsetHeight,this.hidden=!1,this.stepPixels=25,this.stepPixelsForced=25,this.zeroCrossing=-1,this.lineOffset=0,this.master=!0,this.svgElements={},this.iconsRemoved=!1,this.groups={},this.amountOfGroups=0,this._create();var n=this;this.body.emitter.on("verticalDrag",function(){n.dom.lineContainer.style.top=n.body.domProps.scrollTop+"px"})}var o=i(1),n=i(2),r=i(25),a=i(16);s.prototype=new r,s.prototype.addGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.groups[t]=e),this.amountOfGroups+=1},s.prototype.updateGroup=function(t,e){this.groups[t]=e},s.prototype.removeGroup=function(t){this.groups.hasOwnProperty(t)&&(delete this.groups[t],this.amountOfGroups-=1)},s.prototype.setOptions=function(t){if(t){var e=!1;this.options.orientation!=t.orientation&&void 0!==t.orientation&&(e=!0);var i=["orientation","showMinorLabels","showMajorLabels","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","width","visible","customRange","title","format","alignZeros"];o.selectiveExtend(i,this.options,t),this.minWidth=Number((""+this.options.width).replace("px","")),1==e&&this.dom.frame&&(this.hide(),this.show())}},s.prototype._create=function(){this.dom.frame=document.createElement("div"),this.dom.frame.style.width=this.options.width,this.dom.frame.style.height=this.height,this.dom.lineContainer=document.createElement("div"),this.dom.lineContainer.style.width="100%",
-this.dom.lineContainer.style.height=this.height,this.dom.lineContainer.style.position="relative",this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="absolute",this.svg.style.top="0px",this.svg.style.height="100%",this.svg.style.width="100%",this.svg.style.display="block",this.dom.frame.appendChild(this.svg)},s.prototype._redrawGroupIcons=function(){n.prepareElements(this.svgElements);var t,e=this.options.iconWidth,i=15,s=4,o=s+.5*i;t="left"==this.options.orientation?s:this.width-e-s;for(var r in this.groups)this.groups.hasOwnProperty(r)&&(1!=this.groups[r].visible||void 0!==this.linegraphOptions.visibility[r]&&1!=this.linegraphOptions.visibility[r]||(this.groups[r].drawIcon(t,o,this.svgElements,this.svg,e,i),o+=i+s));n.cleanupElements(this.svgElements),this.iconsRemoved=!1},s.prototype._cleanupIcons=function(){0==this.iconsRemoved&&(n.prepareElements(this.svgElements),n.cleanupElements(this.svgElements),this.iconsRemoved=!0)},s.prototype.show=function(){this.hidden=!1,this.dom.frame.parentNode||("left"==this.options.orientation?this.body.dom.left.appendChild(this.dom.frame):this.body.dom.right.appendChild(this.dom.frame)),this.dom.lineContainer.parentNode||this.body.dom.backgroundHorizontal.appendChild(this.dom.lineContainer)},s.prototype.hide=function(){this.hidden=!0,this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom.lineContainer.parentNode&&this.dom.lineContainer.parentNode.removeChild(this.dom.lineContainer)},s.prototype.setRange=function(t,e){0==this.master&&1==this.options.alignZeros&&-1!=this.zeroCrossing&&t>0&&(t=0),this.range.start=t,this.range.end=e},s.prototype.redraw=function(){var t=!1,e=0;this.dom.lineContainer.style.top=this.body.domProps.scrollTop+"px";for(var i in this.groups)this.groups.hasOwnProperty(i)&&(1!=this.groups[i].visible||void 0!==this.linegraphOptions.visibility[i]&&1!=this.linegraphOptions.visibility[i]||e++);if(0==this.amountOfGroups||0==e)this.hide();else{this.show(),this.height=Number(this.linegraphSVG.style.height.replace("px","")),this.dom.lineContainer.style.height=this.height+"px",this.width=1==this.options.visible?Number((""+this.options.width).replace("px","")):0;var s=this.props,o=this.dom.frame;o.className="dataaxis",this._calculateCharSize();var n=this.options.orientation,r=this.options.showMinorLabels,a=this.options.showMajorLabels;s.minorLabelHeight=r?s.minorCharHeight:0,s.majorLabelHeight=a?s.majorCharHeight:0,s.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset,s.minorLineHeight=1,s.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset,s.majorLineHeight=1,"left"==n?(o.style.top="0",o.style.left="0",o.style.bottom="",o.style.width=this.width+"px",o.style.height=this.height+"px",this.props.width=this.body.domProps.left.width,this.props.height=this.body.domProps.left.height):(o.style.top="",o.style.bottom="0",o.style.left="0",o.style.width=this.width+"px",o.style.height=this.height+"px",this.props.width=this.body.domProps.right.width,this.props.height=this.body.domProps.right.height),t=this._redrawLabels(),t=this._isResized()||t,1==this.options.icons?this._redrawGroupIcons():this._cleanupIcons(),this._redrawTitle(n)}return t},s.prototype._redrawLabels=function(){var t=!1;n.prepareElements(this.DOMelements.lines),n.prepareElements(this.DOMelements.labels);var e=this.options.orientation,i=this.master?this.props.majorCharHeight||10:this.stepPixelsForced,s=new a(this.range.start,this.range.end,i,this.dom.frame.offsetHeight,this.options.customRange[this.options.orientation],0==this.master&&this.options.alignZeros);this.step=s;var o=(this.dom.frame.offsetHeight-s.deadSpace*(this.dom.frame.offsetHeight/s.marginRange))/((s.marginRange-s.deadSpace)/s.step);this.stepPixels=o;var r=this.height/o,h=0;if(0==this.master){o=this.stepPixelsForced,h=Math.round(this.dom.frame.offsetHeight/o-r);for(var d=0;.5*h>d;d++)s.previous();if(r=this.height/o,-1!=this.zeroCrossing&&1==this.options.alignZeros){var l=s.marginEnd/s.step-this.zeroCrossing;if(l>0)for(var d=0;l>d;d++)s.next();else if(0>l)for(var d=0;-l>d;d++)s.previous()}}else r+=.25;this.valueAtZero=s.marginEnd;var c,p=0,u=1;void 0!==this.options.format[e]&&(c=this.options.format[e].decimals),this.maxLabelSize=0;for(var m=0;u=0&&this._redrawLabel(m-2,s.getCurrent(c),e,"yAxis major",this.props.majorCharHeight),this._redrawLine(m,e,"grid horizontal major",this.options.majorLinesOffset,this.props.majorLineWidth)):this._redrawLine(m,e,"grid horizontal minor",this.options.minorLinesOffset,this.props.minorLineWidth),1==this.master&&0==s.current&&(this.zeroCrossing=u),u++}this.conversionFactor=0==this.master?m/(this.valueAtZero-s.current):this.dom.frame.offsetHeight/s.marginRange;var g=0;void 0!==this.options.title[e]&&void 0!==this.options.title[e].text&&(g=this.props.titleCharHeight);var v=1==this.options.icons?Math.max(this.options.iconWidth,g)+this.options.labelOffsetX+15:g+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-v&&1==this.options.visible?(this.width=this.maxLabelSize+v,this.options.width=this.width+"px",n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+v),this.options.width=this.width+"px",n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):(n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),t=!1),t},s.prototype.convertValue=function(t){var e=this.valueAtZero-t,i=e*this.conversionFactor;return i},s.prototype.screenToValue=function(t){return this.valueAtZero-t/this.conversionFactor},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.maxLabelSizep;p++){var m=this.visibleItems[p];m.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=0;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;ro;o++){var r=this.visibleItems[o];r.repositionY(e)}return s},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},snap:h.snap,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,s){i._onAdd(e.items)},update:function(t,e,s){i._onUpdate(e.items)},remove:function(t,e,s){i._onRemove(e.items)}},this.groupListeners={add:function(t,e,s){i._onAddGroups(e.items)},update:function(t,e,s){i._onUpdateGroups(e.items)},remove:function(t,e,s){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(19),d=i(25),l=i(30),c=i(31),p=i(22),u=i(23),m=i(24),f=i(21),g="__ungrouped__",v="__background__";s.prototype=new d,s.types={background:f,box:p,range:m,point:u},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 c(v,null,this);r.show(),this.groups[v]=r,this.hammer=o(this.body.dom.centerContainer,{preventDefault:!0}),this.hammer.on("touch",this._onTouch.bind(this)),this.hammer.on("dragstart",this._onDragStart.bind(this)),this.hammer.on("drag",this._onDrag.bind(this)),this.hammer.on("dragend",this._onDragEnd.bind(this)),this.hammer.on("tap",this._onSelectItem.bind(this)),this.hammer.on("hold",this._onMultiSelectItem.bind(this)),this.hammer.on("doubletap",this._onAddItem.bind(this)),this.show()},s.prototype.setOptions=function(t){if(t){var e=["type","align","order","padding","stack","selectable","groupOrder","dataAttributes","template","hide","snap"];n.selectiveExtend(e,this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation=t.orientation:"object"==typeof t.orientation&&"item"in t.orientation&&(this.options.orientation=t.orientation.item)),"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(t){this.groupIds=[],this.stackDirty=!0,t&&t.refreshItems&&n.forEach(this.items,function(t){t.dirty=!0,t.displayed&&t.redraw()})},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,g=t.axis+t.item.vertical;return this.groups[v].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,g),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[g];return i||null},s.prototype._updateUngrouped=function(){{var t,e,i=this.groups[g];this.groups[v]}if(this.groupsData){if(i){i.hide(),delete this.groups[g];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 l(n,r,this),this.groups[g]=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?v:this.groupsData?t.group:g},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==g||t==v)throw new Error("Illegal group id. "+t+" is a reserved id.");var o=Object.create(e.options);n.extend(o,{height:null}),s=new l(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||s.length>0)&&this.body.emitter.emit("select",{items:r})}},s.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.options.snap||null,s=this.itemFromTarget(t);if(s){var o=e.itemsData.get(s.id);this.options.onUpdate(o,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var r=n.getAbsoluteLeft(this.dom.frame),a=t.gesture.center.pageX-r,h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),c={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var p=this.body.util.toTime(a+this.props.width/5);c.end=i?i(p,d,l):p}c[this.itemsData._fieldId]=n.randomUUID();var u=this.groupFromTarget(t);u&&(c.group=u.groupId),this.options.onAdd(c,function(t){t&&e.itemsData.getDataSet().add(t)})}}},s.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e,i=this.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&&!(a instanceof f)&&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.prototype.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},s.prototype.groupFromTarget=function(t){for(var e=t.gesture?t.gesture.center.pageY:t.pageY,i=0;ia&&ea)return o}else if(0===i&&e "));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.updateSVGheight=!1,this.updateSVGheightOnResize=!1;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e,s){i._onAdd(e.items)},update:function(t,e,s){i._onUpdate(e.items)},remove:function(t,e,s){i._onRemove(e.items)}},this.groupListeners={add:function(t,e,s){i._onAddGroups(e.items)},update:function(t,e,s){i._onUpdateGroups(e.items)},remove:function(t,e,s){i._onRemoveGroups(e.items)}},this.items={},this.selection=[],this.lastStart=this.body.range.start,this.touchParams={},this.svgElements={},this.setOptions(e),this.groupsUsingDefaultStyles=[0],this.COUNTER=0,this.body.emitter.on("rangechanged",function(){i.lastStart=i.body.range.start,i.svg.style.left=o.option.asSize(-i.props.width),i.redraw.call(i,!0)}),this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups},this.body.emitter.emit("change")}var o=i(1),n=i(2),r=i(3),a=i(4),h=i(25),d=i(28),l=i(29),c=i(33),p=i(50),u="__ungrouped__";s.prototype=new h,s.prototype._create=function(){var t=document.createElement("div");t.className="LineGraph",this.dom.frame=t,this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="relative",this.svg.style.height=(""+this.options.graphHeight).replace("px","")+"px",this.svg.style.display="block",t.appendChild(this.svg),this.options.dataAxis.orientation="left",this.yAxisLeft=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),delete this.options.dataAxis.orientation,this.legendLeft=new c(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new c(this.body,this.options.legend,"right",this.options.groups),this.show()},s.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","height","graphHeight","yAxisOrientation","style","barChart","dataAxis","sort","groups"];void 0===t.graphHeight&&void 0!==t.height&&void 0!==this.body.domProps.centerContainer.height?(this.updateSVGheight=!0,this.updateSVGheightOnResize=!0):void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))0){var d=this.body.util.toGlobalTime(-this.body.domProps.root.width),l=this.body.util.toGlobalTime(2*this.body.domProps.root.width),c={};for(this._getRelevantData(a,c,d,l),this._applySampling(a,c),e=0;eu&&console.log("WARNING: there may be an infinite loop in the _updateGraph emitter cycle."),this.COUNTER=0,this.abortedGraphUpdate=!1,e=0;e0)for(r=0;rs){d.push(h);break}d.push(h)}}else for(a=0;ai&&h.x0)for(var s=0;s0){var n=1,r=o.length,a=this.body.util.toGlobalScreen(o[o.length-1].x)-this.body.util.toGlobalScreen(o[0].x),h=r/a;n=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=[],l=0;r>l;l+=n)d.push(o[l]);e[t[s]]=d}}},s.prototype._getYRanges=function(t,e,i){var s,o,n,r,a=[],h=[];if(t.length>0){for(n=0;n0&&(o=this.groups[t[n]],"stack"==r.barChart.handleOverlap&&"bar"==r.style?"left"==r.yAxisOrientation?a=a.concat(o.getYRange(s)):h=h.concat(o.getYRange(s)):i[t[n]]=o.getYRange(s,t[n]));p.getStackedBarYRange(a,i,t,"__barchartLeft","left"),p.getStackedBarYRange(h,i,t,"__barchartRight","right")}},s.prototype._updateYAxis=function(t,e){var i,s,o=!1,n=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var c=0;ci?i:a,d=s>d?s:d):(r=!0,h=h>i?i:h,l=s>l?s:l));1==n&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}return o=this._toggleAxisVisiblity(n,this.yAxisLeft)||o,o=this._toggleAxisVisiblity(r,this.yAxisRight)||o,1==r&&1==n?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!n,0==this.yAxisRight.master?(this.yAxisLeft.lineOffset=1==r?this.yAxisRight.width:0,o=this.yAxisLeft.redraw()||o,this.yAxisRight.stepPixelsForced=this.yAxisLeft.stepPixels,this.yAxisRight.zeroCrossing=this.yAxisLeft.zeroCrossing,o=this.yAxisRight.redraw()||o):o=this.yAxisRight.redraw()||o,-1!=t.indexOf("__barchartLeft")&&t.splice(t.indexOf("__barchartLeft"),1),-1!=t.indexOf("__barchartRight")&&t.splice(t.indexOf("__barchartRight"),1),o},s.prototype._toggleAxisVisiblity=function(t,e){var i=!1;return 0==t?e.dom.frame.parentNode&&0==e.hidden&&(e.hide(),i=!0):e.dom.frame.parentNode||1!=e.hidden||(e.show(),i=!0),i},s.prototype._convertXcoordinates=function(t){for(var e,i,s=[],o=this.body.util.toScreen,n=0;ny;)y++,l=h.getCurrent(),c=h.isMajor(),u=h.getClassName(),f=m,m=this.body.util.toScreen(l),g=m-f,p&&(p.style.width=g+"px"),this.options.showMinorLabels&&this._repaintMinorText(m,h.getLabelMinor(),t,u),c&&this.options.showMajorLabels?(m>0&&(void 0==v&&(v=m),this._repaintMajorText(m,h.getLabelMajor(),t,u)),p=this._repaintMajorLine(m,t,u)):p=this._repaintMinorLine(m,t,u),h.next();if(this.options.showMajorLabels){var b=this.body.util.toTime(0),_=h.getLabelMajor(b),x=_.length*(this.props.majorCharWidth||10)+10;(void 0==v||v>x)&&this._repaintMajorText(0,_,t,u)}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,s){var o=this.dom.redundant.minorTexts.shift();if(!o){var n=document.createTextNode("");o=document.createElement("div"),o.appendChild(n),this.dom.foreground.appendChild(o)}this.dom.minorTexts.push(o),o.childNodes[0].nodeValue=e,o.style.top="top"==i?this.props.majorLabelHeight+"px":"0",o.style.left=t+"px",o.className="text minor "+s},s.prototype._repaintMajorText=function(t,e,i,s){var o=this.dom.redundant.majorTexts.shift();if(!o){var n=document.createTextNode(e);o=document.createElement("div"),o.appendChild(n),this.dom.foreground.appendChild(o)}this.dom.majorTexts.push(o),o.childNodes[0].nodeValue=e,o.className="text major "+s,o.style.top="top"==i?"0":this.props.minorLabelHeight+"px",o.style.left=t+"px"},s.prototype._repaintMinorLine=function(t,e,i){var s=this.dom.redundant.lines.shift();s||(s=document.createElement("div"),this.dom.background.appendChild(s)),this.dom.lines.push(s);var o=this.props;return s.style.top="top"==e?o.majorLabelHeight+"px":this.body.domProps.top.height+"px",s.style.height=o.minorLineHeight+"px",s.style.left=t-o.minorLineWidth/2+"px",s.className="grid vertical minor "+i,s},s.prototype._repaintMajorLine=function(t,e,i){var s=this.dom.redundant.lines.shift();s||(s=document.createElement("div"),this.dom.background.appendChild(s)),this.dom.lines.push(s);var o=this.props;return s.style.top="top"==e?"0":this.body.domProps.top.height+"px",s.style.left=t-o.majorLineWidth/2+"px",s.style.height=o.majorLineHeight+"px",s.className="grid vertical major "+i,s},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},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._determineBrowserMethod(),this._initializeMixinLoaders(),this.containerElement=t,this.renderRefreshRate=60,this.renderTimestep=1e3/this.renderRefreshRate,this.renderTime=0,this.physicsTime=0,this.runDoubleSpeed=!1,this.physicsDiscreteStepsize=.5,this.initializing=!0,this.triggerFunctions={add:null,edit:null,editEdge:null,connect:null,del:null};var o=function(t,e,i,s){if(e==t)return.5;var o=1/(e-t);return Math.max(0,(s-t)*o)};this.defaultOptions={nodes:{customScalingFunction:o,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,fontStrokeWidth:0,fontStrokeColor:"#ffffff",fontDrawThreshold:3,scaleFontWithValue:!1,fontSizeMin:14,fontSizeMax:30,fontSizeMaxVisible:30,level:-1,color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},group:void 0,borderWidth:1,borderWidthSelected:void 0},edges:{customScalingFunction:o,widthMin:1,widthMax:15,width:1,widthSelectionMultiplier:2,hoverWidth:1.5,style:"line",color:{color:"#848484",highlight:"#848484",hover:"#848484"},opacity:1,fontColor:"#343434",fontSize:14,fontFace:"arial",fontFill:"white",fontStrokeWidth:0,fontStrokeColor:"white",labelAlignment:"horizontal",arrowScaleFactor:1,dash:{length:10,gap:5,altLength:void 0},inheritColor:"from",useGradients:!1},configurePhysics:!1,physics:{barnesHut:{enabled:!0,thetaInverted:2,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09},repulsion:{centralGravity:0,springLength:200,springConstant:.05,nodeDistance:100,damping:.09},hierarchicalRepulsion:{enabled:!1,centralGravity:0,springLength:100,springConstant:.01,nodeDistance:150,damping:.09},damping:null,centralGravity:null,springLength:null,springConstant:null},clustering:{enabled:!1,initialMaxNodes:100,clusterThreshold:500,reduceToNodes:300,chainThreshold:.4,clusterEdgeThreshold:20,sectorThreshold:100,screenSizeThreshold:.2,fontSizeMultiplier:4,maxFontSize:1e3,forceAmplification:.1,distanceAmplification:.1,edgeGrowth:20,nodeScaling:{width:1,height:1,radius:1},maxNodeSizeIncrements:600,activeAreaBoxSize:80,clusterLevelDifference:2,clusterByZoom:!0},navigation:{enabled:!1},keyboard:{enabled:!1,speed:{x:10,y:10,zoom:.02},bindToWindow:!0},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:50,minVelocity:.1,stabilize:!0,stabilizationIterations:1e3,zoomExtentOnStabilize:!0,locale:"en",locales:_,tooltip:{delay:300,fontColor:"black",fontSize:14,fontFace:"verdana",color:{border:"#666",background:"#FFFFC6"}},dragNetwork:!0,dragNodes:!0,zoomable:!0,hover:!1,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,width:"100%",height:"100%",selectable:!0,useDefaultGroups:!0},this.constants=a.extend({},this.defaultOptions),this.pixelRatio=1,this.hoverObj={nodes:{},edges:{}},this.controlNodesActive=!1,this.navigationHammers=[],this.manipulationHammers=[],this.animationSpeed=1/this.renderRefreshRate,this.animationEasingFunction="easeInOutQuint",this.animating=!1,this.easingTime=0,this.sourceScale=0,this.targetScale=0,this.sourceTranslation=0,this.targetTranslation=0,this.lockedOnNodeId=null,this.lockedOnNodeOffset=null,this.touchTime=0,this.redrawRequested=!1;var n=this;this.groups=new u,this.images=new m,this.images.setOnloadCallback(function(t){n._requestRedraw()}),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.freezeSimulationEnabled=!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){n._addNodes(e.items),n.start()},update:function(t,e){n._updateNodes(e.items),n.start()},remove:function(t,e){n._removeNodes(e.items),n.start()}},this.edgesListeners={add:function(t,e){n._addEdges(e.items),n.start()},update:function(t,e){n._updateEdges(e.items),n.start()},remove:function(t,e){n._removeEdges(e.items),n.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({duration: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(52),b=i(53),_=i(54);i(55),o(s.prototype),s.prototype._determineBrowserMethod=function(){var t=navigator.userAgent.toLowerCase();this.requiresTimeout=!1,-1!=t.indexOf("msie 9.0")?this.requiresTimeout=!0:-1!=t.indexOf("safari")&&t.indexOf("chrome")<=-1&&(this.requiresTimeout=!0)},s.prototype._getScriptPath=function(){for(var t=document.getElementsByTagName("script"),e=0;e0)for(var r=0;re.boundingBox.left&&(o=e.boundingBox.left),ne.boundingBox.bottom&&(i=e.boundingBox.top),se.boundingBox.left&&(o=e.boundingBox.left),ne.boundingBox.bottom&&(i=e.boundingBox.top),s.5*this.nodeIndices.length)return void this.zoomExtent(t,!1,i);s=this._getRange(t.nodes);var h=this.nodeIndices.length;o=1==this.constants.smoothCurves?1==this.constants.clustering.enabled&&h>=this.constants.clustering.initialMaxNodes?49.07548/(h+142.05338)+91444e-8:12.662/(h+7.4147)+.0964822:1==this.constants.clustering.enabled&&h>=this.constants.clustering.initialMaxNodes?77.5271985/(h+187.266146)+476710517e-13:30.5062972/(h+19.93597763)+.08413486;var d=Math.min(this.frame.canvas.clientWidth/600,this.frame.canvas.clientHeight/600);o*=d}else{s=this._getRange(t.nodes);var l=1.1*Math.abs(s.maxX-s.minX),c=1.1*Math.abs(s.maxY-s.minY),p=this.frame.canvas.clientWidth/l,u=this.frame.canvas.clientHeight/c;o=u>=p?p:u}o>1&&(o=1);var m=this._findCenter(s);if(0==i){var t={position:m,scale:o,animation:t};this.moveTo(t),this.moving=!0,this.start()}else m.x*=o,m.y*=o,m.x-=.5*this.frame.canvas.clientWidth,m.y-=.5*this.frame.canvas.clientHeight,this._setScale(o),this._setTranslation(-m.x,-m.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._unselectAll(!0),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(1==this.constants.dataManipulation.enabled&&this._createManipulatorBar(),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()):1==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),this.groups.useDefaultGroups=this.constants.useDefaultGroups,t.physics&&(a.mergeOptions(this.constants.physics,t.physics,"barnesHut"),a.mergeOptions(this.constants.physics,t.physics,"repulsion"),t.physics.hierarchicalRepulsion)){this.constants.hierarchicalLayout.enabled=!0,this.constants.physics.hierarchicalRepulsion.enabled=!0,this.constants.physics.barnesHut.enabled=!1;for(e in t.physics.hierarchicalRepulsion)t.physics.hierarchicalRepulsion.hasOwnProperty(e)&&(this.constants.physics.hierarchicalRepulsion[e]=t.physics.hierarchicalRepulsion[e])}if(t.onAdd&&(this.triggerFunctions.add=t.onAdd),t.onEdit&&(this.triggerFunctions.edit=t.onEdit),t.onEditEdge&&(this.triggerFunctions.editEdge=t.onEditEdge),t.onConnect&&(this.triggerFunctions.connect=t.onConnect),t.onDelete&&(this.triggerFunctions.del=t.onDelete),a.mergeOptions(this.constants,t,"smoothCurves"),a.mergeOptions(this.constants,t,"hierarchicalLayout"),a.mergeOptions(this.constants,t,"clustering"),a.mergeOptions(this.constants,t,"navigation"),a.mergeOptions(this.constants,t,"keyboard"),a.mergeOptions(this.constants,t,"dataManipulation"),t.dataManipulation&&(this.editMode=this.constants.dataManipulation.initiallyVisible),t.edges&&(void 0!==t.edges.color&&(a.isString(t.edges.color)?(this.constants.edges.color={},this.constants.edges.color.color=t.edges.color,this.constants.edges.color.highlight=t.edges.color,this.constants.edges.color.hover=t.edges.color):(void 0!==t.edges.color.color&&(this.constants.edges.color.color=t.edges.color.color),void 0!==t.edges.color.highlight&&(this.constants.edges.color.highlight=t.edges.color.highlight),void 0!==t.edges.color.hover&&(this.constants.edges.color.hover=t.edges.color.hover)),this.constants.edges.inheritColor=!1),t.edges.fontColor||void 0!==t.edges.color&&(a.isString(t.edges.color)?this.constants.edges.fontColor=t.edges.color:void 0!==t.edges.color.color&&(this.constants.edges.fontColor=t.edges.color.color))),t.nodes&&t.nodes.color){var s=a.parseColor(t.nodes.color);this.constants.nodes.color.background=s.background,this.constants.nodes.color.border=s.border,this.constants.nodes.color.highlight.background=s.highlight.background,this.constants.nodes.color.highlight.border=s.highlight.border,this.constants.nodes.color.hover.background=s.hover.background,this.constants.nodes.color.hover.border=s.hover.border}if(t.groups)for(var o in t.groups)if(t.groups.hasOwnProperty(o)){var n=t.groups[o];this.groups.add(o,n)}if(t.tooltip){for(e in t.tooltip)t.tooltip.hasOwnProperty(e)&&(this.constants.tooltip[e]=t.tooltip[e]);t.tooltip.color&&(this.constants.tooltip.color=a.parseColor(t.tooltip.color))}if("clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new b(this.frame),this.activator.on("change",this._createKeyBinds.bind(this))):this.activator&&(this.activator.destroy(),delete this.activator)),t.labels)throw new Error('Option "labels" is deprecated. Use options "locale" and "locales" instead.');this._loadPhysicsSystem(),this._loadNavigationControls(),this._loadManipulationSystem(),this._configureSmoothCurves(),this._bindHammer(),this._createKeyBinds(),this._markAllEdgesAsDirty(),this.setSize(this.constants.width,this.constants.height),this.moving=!0,1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),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.tabIndex=900,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this._bindHammer()},s.prototype._bindHammer=function(){var t=this;void 0!==this.hammer&&this.hammer.dispose(),this.drag={},this.pinch={},this.hammer=n(this.frame.canvas,{prevent_default:!0}),this.hammer.on("tap",t._onTap.bind(t)),this.hammer.on("doubletap",t._onDoubleTap.bind(t)),this.hammer.on("hold",t._onHold.bind(t)),this.hammer.on("touch",t._onTouch.bind(t)),this.hammer.on("dragstart",t._onDragStart.bind(t)),this.hammer.on("drag",t._onDrag.bind(t)),this.hammer.on("dragend",t._onDragEnd.bind(t)),1==this.constants.zoomable&&(this.hammer.on("mousewheel",t._onMouseWheel.bind(t)),this.hammer.on("DOMMouseScroll",t._onMouseWheel.bind(t)),this.hammer.on("pinch",t._onPinch.bind(t))),this.hammer.on("mousemove",t._onMouseMoveTitle.bind(t)),this.hammerFrame=n(this.frame,{prevent_default:!0}),this.hammerFrame.on("release",t._onRelease.bind(t)),this.containerElement.appendChild(this.frame)},s.prototype._createKeyBinds=function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=r(1==this.constants.keyboard.bindToWindow?{container:window,preventDefault:!1}:{container:this.frame,preventDefault:!1}),this.keycharm.reset(),this.constants.keyboard.enabled&&this.isActive()&&(this.keycharm.bind("up",this._moveUp.bind(t),"keydown"),this.keycharm.bind("up",this._yStopMoving.bind(t),"keyup"),this.keycharm.bind("down",this._moveDown.bind(t),"keydown"),this.keycharm.bind("down",this._yStopMoving.bind(t),"keyup"),this.keycharm.bind("left",this._moveLeft.bind(t),"keydown"),this.keycharm.bind("left",this._xStopMoving.bind(t),"keyup"),this.keycharm.bind("right",this._moveRight.bind(t),"keydown"),this.keycharm.bind("right",this._xStopMoving.bind(t),"keyup"),this.keycharm.bind("=",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("=",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("num+",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("num+",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("num-",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("num-",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("-",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("-",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("[",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("[",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("]",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("]",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("pageup",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("pageup",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("pagedown",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("pagedown",this._stopZoom.bind(t),"keyup")),1==this.constants.dataManipulation.enabled&&(this.keycharm.bind("esc",this._createManipulatorBar.bind(t)),this.keycharm.bind("delete",this._deleteSelected.bind(t)))},s.prototype.destroy=function(){this.start=function(){},this.redraw=function(){},this.timer=!1,this._cleanupPhysicsConfiguration(),this.keycharm.reset(),this.hammer.dispose(),this.off(),this._recursiveDOMDelete(this.containerElement)},s.prototype._recursiveDOMDelete=function(t){for(;1==t.hasChildNodes();)this._recursiveDOMDelete(t.firstChild),t.removeChild(t.firstChild)},s.prototype._getPointer=function(t){return{x:t.pageX-a.getAbsoluteLeft(this.frame.canvas),y:t.pageY-a.getAbsoluteTop(this.frame.canvas)}},s.prototype._onTouch=function(t){(new Date).valueOf()-this.touchTime>100&&(this.drag.pointer=this._getPointer(t.gesture.center),this.drag.pinched=!1,this.pinch.scale=this._getScale(),this.touchTime=(new Date).valueOf(),this._handleTouch(this.drag.pointer))},s.prototype._onDragStart=function(t){this._handleDragStart(t)},s.prototype._handleDragStart=function(t){void 0===this.drag.pointer&&this._onTouch(t);var e=this._getNodeAt(this.drag.pointer);if(this.drag.dragging=!0,this.drag.selection=[],this.drag.translation=this._getTranslation(),this.drag.nodeId=null,this.draggingNodes=!1,null!=e&&1==this.constants.dragNodes){this.draggingNodes=!0,this.drag.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,this.drag.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){if(void 0===this.drag.pointer)return void this._handleDragStart(t);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(t){this.drag.dragging=!1;var e=this.drag.selection;e&&e.length?(e.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),s=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(s=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),0==this.constants.keyboard.bindToWindow&&1==this.constants.keyboard.enabled&&this.frame.focus(),s===!1){var o=this,n=function(){o._checkShowPopup(i)};this.popupTimer&&clearInterval(this.popupTimer),this.drag.dragging||(this.popupTimer=setTimeout(n,this.constants.tooltip.delay))}if(1==this.constants.hover){for(var r in this.hoverObj.edges)this.hoverObj.edges.hasOwnProperty(r)&&(this.hoverObj.edges[r].hover=!1,delete this.hoverObj.edges[r]);var a=this._getNodeAt(i);null==a&&(a=this._getEdgeAt(i)),null!=a&&this._hoverObject(a);for(var d in this.hoverObj.nodes)this.hoverObj.nodes.hasOwnProperty(d)&&(a instanceof f&&a.id!=d||a instanceof g||null==a)&&(this._blurObject(this.hoverObj.nodes[d]),delete this.hoverObj.nodes[d]);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=void 0===this.popupObj?"":this.popupObj.id,o=!1,n="node";if(void 0==this.popupObj){var r=this.nodes,a=[];for(e in r)if(r.hasOwnProperty(e)){var h=r[e];h.isOverlappingWith(i)&&void 0!==h.getTitle()&&a.push(e)}a.length>0&&(this.popupObj=this.nodes[a[a.length-1]],o=!0)}if(void 0===this.popupObj&&0==o){var d=this.edges,l=[];for(e in d)if(d.hasOwnProperty(e)){var c=d[e];c.connected&&void 0!==c.getTitle()&&c.isOverlappingWith(i)&&l.push(e)}l.length>0&&(this.popupObj=this.edges[l[l.length-1]],n="edge")}this.popupObj?this.popupObj.id!=s&&(void 0===this.popup&&(this.popup=new v(this.frame,this.constants.tooltip)),this.popup.popupTargetType=n,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(t.x+3,t.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show()):this.popup&&this.popup.hide()},s.prototype._checkHidePopup=function(t){var e={left:this._XconvertDOMtoCanvas(t.x),top:this._YconvertDOMtoCanvas(t.y),right:this._XconvertDOMtoCanvas(t.x),bottom:this._YconvertDOMtoCanvas(t.y)},i=!1;if("node"==this.popup.popupTargetType){if(i=this.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0){var s=this._getNodeAt(t);i=s.id==this.popup.popupTargetId}}else null===this._getNodeAt(t)&&(i=this.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide())},s.prototype.setSize=function(t,e){var i=!1,s=this.frame.canvas.width,o=this.frame.canvas.height;t!=this.constants.width||e!=this.constants.height||this.frame.style.width!=t||this.frame.style.height!=e?(this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=this.frame.canvas.clientWidth*this.pixelRatio,this.frame.canvas.height=this.frame.canvas.clientHeight*this.pixelRatio,this.constants.width=t,this.constants.height=e,i=!0):(this.frame.canvas.width!=this.frame.canvas.clientWidth*this.pixelRatio&&(this.frame.canvas.width=this.frame.canvas.clientWidth*this.pixelRatio,i=!0),this.frame.canvas.height!=this.frame.canvas.clientHeight*this.pixelRatio&&(this.frame.canvas.height=this.frame.canvas.clientHeight*this.pixelRatio,i=!0)),1==i&&this.emit("resize",{width:this.frame.canvas.width*this.pixelRatio,height:this.frame.canvas.height*this.pixelRatio,oldWidth:s*this.pixelRatio,oldHeight:o*this.pixelRatio})},s.prototype._setNodes=function(t){var e=this.nodesData;if(t instanceof d||t instanceof l)this.nodesData=t;else if(Array.isArray(t))this.nodesData=new d,this.nodesData.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.nodesData=new d}if(e&&a.forEach(this.nodesListeners,function(t,i){e.off(i,t)}),this.nodes={},this.nodesData){var i=this;a.forEach(this.nodesListeners,function(t,e){i.nodesData.on(e,t)});var s=this.nodesData.getIds();this._addNodes(s)}this._updateSelection()},s.prototype._addNodes=function(t){for(var e,i=this.nodesData._fieldId||null,s=0,o=t.length;o>s;s++){e=t[s];var n=this.nodesData.get(e);i&&(n.id=n[i]);var r=new f(n,this.images,this.groups,this.constants);if(this.nodes[e]=r,!(0!=r.xFixed&&0!=r.yFixed||null!==r.x&&null!==r.y)){var a=1*t.length+10,h=2*Math.PI*Math.random();0==r.xFixed&&(r.x=a*Math.cos(h)),0==r.yFixed&&(r.y=a*Math.sin(h))}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){for(var e=this.nodesData.get(t),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),this._markAllEdgesAsDirty()},s.prototype._markAllEdgesAsDirty=function(){for(var t in this.edges)this.edges[t].colorDirty=!0},s.prototype._removeNodes=function(t){for(var e=this.nodes,i=0,s=t.length;s>i;i++)void 0!==this.selectionObj.nodes[t[i]]&&(this.nodes[t[i]].unselect(),this._removeFromSelection(this.nodes[t[i]]));for(var 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=this.edgesData._fieldId,o=0,n=t.length;n>o;o++){var r=t[o],a=e[r];a&&a.disconnect();var h=i.get(r,{showInternalIds:!0});s&&(h.id=h[s]),e[r]=new g(h,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++)void 0!==this.selectionObj.edges[t[i]]&&(e[t[i]].unselect(),this._removeFromSelection(e[t[i]]));for(var 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,o=0;for(e in t)if(t.hasOwnProperty(e)){var n=t[e].getValue();void 0!==n&&(i=void 0===i?n:Math.min(n,i),s=void 0===s?n:Math.max(n,s),o+=n)}if(void 0!==i&&void 0!==s)for(e in t)t.hasOwnProperty(e)&&t[e].setValueRange(i,s,o)},s.prototype.redraw=function(){this.setSize(this.constants.width,this.constants.height),this._redraw()},s.prototype._requestRedraw=function(t){this.redrawRequested!==!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(this._redraw.bind(this,t),0):window.requestAnimationFrame(this._redraw.bind(this,t,!0)))},s.prototype._redraw=function(t,e){void 0===t&&(t=!1),this.redrawRequested=!1;var i=this.frame.canvas.getContext("2d");i.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var s=this.frame.canvas.clientWidth,o=this.frame.canvas.clientHeight;i.clearRect(0,0,s,o),i.save(),i.translate(this.translation.x,this.translation.y),i.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)},t===!1&&(this._doInAllSectors("_drawAllSectorNodes",i),(0==this.drag.dragging||void 0===this.drag.dragging||0==this.constants.hideEdgesOnDrag)&&this._doInAllSectors("_drawEdges",i)),(0==this.drag.dragging||void 0===this.drag.dragging||0==this.constants.hideNodesOnDrag)&&this._doInAllSectors("_drawNodes",i,!1),t===!1&&1==this.controlNodesActive&&this._doInAllSectors("_drawControlNodes",i),i.restore(),t===!0&&i.clearRect(0,0,s,o)},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._revertPhysicsState=function(){var t=this.nodes;for(var e in t)t.hasOwnProperty(e)&&t[e].revertPosition()},s.prototype._revertPhysicsTick=function(){this._doInAllActiveSectors("_revertPhysicsState"),1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic&&this._doInSupportSector("_revertPhysicsState")},s.prototype._physicsTick=function(){if(!this.freezeSimulationEnabled&&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;s2*e||1==this.runDoubleSpeed)&&1==this.moving&&(this._physicsTick(),0!=this.renderTime&&(this.runDoubleSpeed=!0))}var i=Date.now();this._redraw(),this.renderTime=Date.now()-i,0==this.requiresTimeout&&this.start()},"undefined"!=typeof window&&(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame),s.prototype.start=function(){if(1==this.freezeSimulationEnabled&&(this.moving=!1),1==this.moving||0!=this.xIncrement||0!=this.yIncrement||0!=this.zoomIncrement||1==this.animating)this.timer||(this.timer=1==this.requiresTimeout?window.setTimeout(this._animationStep.bind(this),this.renderTimestep):window.requestAnimationFrame(this._animationStep.bind(this)));
-else if(this._requestRedraw(),this.stabilizationIterations>1){var t=this,e={iterations:t.stabilizationIterations};this.stabilizationIterations=0,this.startedStabilization=!1,setTimeout(function(){t.emit("stabilized",e)},0)}else this.stabilizationIterations=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.freezeSimulation=function(t){1==t?(this.freezeSimulationEnabled=!0,this.moving=!1):(this.freezeSimulationEnabled=!1,this.moving=!0,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.animating=!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})},s.prototype.getBoundingBox=function(t){return void 0!==this.nodes[t]?this.nodes[t].boundingBox:void 0},s.prototype.getConnectedNodes=function(t){var e=[];if(void 0!==this.nodes[t])for(var i=this.nodes[t],s={nodeId:!0},o=0;oh}return!1},s.prototype._getColor=function(t){var e=this.options.color;if(1==this.options.useGradients){var i,s,n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y);return i=this.from.options.color.highlight.border,s=this.to.options.color.highlight.border,0==this.from.selected&&0==this.to.selected?(i=o.overrideOpacity(this.from.options.color.border,this.options.opacity),s=o.overrideOpacity(this.to.options.color.border,this.options.opacity)):1==this.from.selected&&0==this.to.selected?s=this.to.options.color.border:0==this.from.selected&&1==this.to.selected&&(i=this.from.options.color.border),n.addColorStop(0,i),n.addColorStop(1,s),n}return this.colorDirty===!0&&("to"==this.options.inheritColor?e={highlight:this.to.options.color.highlight.border,hover:this.to.options.color.hover.border,color:o.overrideOpacity(this.from.options.color.border,this.options.opacity)}:("from"==this.options.inheritColor||1==this.options.inheritColor)&&(e={highlight:this.from.options.color.highlight.border,hover:this.from.options.color.hover.border,color:o.overrideOpacity(this.from.options.color.border,this.options.opacity)}),this.options.color=e,this.colorDirty=!1),1==this.selected?e.highlight:1==this.hover?e.hover:e.color},s.prototype._drawLine=function(t){if(t.strokeStyle=this._getColor(t),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(){if(1==this.options.smoothCurves.dynamic&&1==this.options.smoothCurves.enabled)return this.via;if(0==this.options.smoothCurves.enabled)return{x:0,y:0};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);if("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));else if("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}}var o=this.labelDimensions.yLine;t.save(),"horizontal"!=this.options.labelAlignment&&(t.translate(i,o),this._rotateForLabelAlignment(t),i=0,o=0),this._drawLabelRect(t),this._drawLabelText(t,i,o,n,r,a),t.restore()}},s.prototype._rotateForLabelAlignment=function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,s=Math.atan2(e,i);(-1>s&&0>i||s>0&&0>i)&&(s+=Math.PI),t.rotate(s)},s.prototype._drawLabelRect=function(t){if(void 0!==this.options.fontFill&&null!==this.options.fontFill&&"none"!==this.options.fontFill){t.fillStyle=this.options.fontFill;var e=2;"line-center"==this.options.labelAlignment?t.fillRect(.5*-this.labelDimensions.width,.5*-this.labelDimensions.height,this.labelDimensions.width,this.labelDimensions.height):"line-above"==this.options.labelAlignment?t.fillRect(.5*-this.labelDimensions.width,-(this.labelDimensions.height+e),this.labelDimensions.width,this.labelDimensions.height):"line-below"==this.options.labelAlignment?t.fillRect(.5*-this.labelDimensions.width,e,this.labelDimensions.width,this.labelDimensions.height):t.fillRect(this.labelDimensions.left,this.labelDimensions.top,this.labelDimensions.width,this.labelDimensions.height)}},s.prototype._drawLabelText=function(t,e,i,s,o,n){if(t.fillStyle=this.options.fontColor||"black",t.textAlign="center","horizontal"!=this.options.labelAlignment){var r=2;"line-above"==this.options.labelAlignment?(t.textBaseline="alphabetic",i-=2*r):"line-below"==this.options.labelAlignment?(t.textBaseline="hanging",i+=2*r):t.textBaseline="middle"}else t.textBaseline="middle";this.options.fontStrokeWidth>0&&(t.lineWidth=this.options.fontStrokeWidth,t.strokeStyle=this.options.fontStrokeColor,t.lineJoin="round");for(var a=0;o>a;a++)this.options.fontStrokeWidth>0&&t.strokeText(s[a],e,i),t.fillText(s[a],e,i),i+=n},s.prototype._drawDashLine=function(t){t.strokeStyle=this._getColor(t),t.lineWidth=this._getLineWidth();var e=null;if(void 0!==t.setLineDash){t.save();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],t.setLineDash(i),t.lineDashOffset=0,e=this._line(t),t.setLineDash([0]),t.lineDashOffset=0,t.restore()}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),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._pointOnBezier=function(t){var e=this._getViaCoordinates(),i=Math.pow(1-t,2)*this.from.x+2*t*(1-t)*e.x+Math.pow(t,2)*this.to.x,s=Math.pow(1-t,2)*this.from.y+2*t*(1-t)*e.y+Math.pow(t,2)*this.to.y;return{x:i,y:s}},s.prototype._findBorderPosition=function(t,e){var i,s,o,n,r,a=10,h=0,d=0,l=1,c=.2,p=this.to;for(1==t&&(p=this.from);l>=d&&a>h;){var u=.5*(d+l);if(i=this._pointOnBezier(u),s=Math.atan2(p.y-i.y,p.x-i.x),o=p.distanceToBorder(e,s),n=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=o-n,Math.abs(r)r?0==t?d=u:l=u:0==t?l=u:d=u,h++}return i.t=u,i},s.prototype._drawArrow=function(t){t.strokeStyle=this._getColor(t),t.fillStyle=t.strokeStyle,t.lineWidth=this._getLineWidth();var e,i,s;if(this.from!=this.to){if(this._line(t),1==this.options.smoothCurves.enabled){var o=this._getViaCoordinates();s=this._findBorderPosition(!1,t);var n=this._pointOnBezier(Math.max(0,s.t-.1));e=Math.atan2(s.y-n.y,s.x-n.x)}else{e=Math.atan2(this.to.y-this.from.y,this.to.x-this.from.x);var r=this.to.x-this.from.x,a=this.to.y-this.from.y,h=Math.sqrt(r*r+a*a),d=this.to.distanceToBorder(t,e),l=(h-d)/h;s={},s.x=(1-l)*this.from.x+l*this.to.x,s.y=(1-l)*this.from.y+l*this.to.y}if(i=(10+5*this.options.width)*this.options.arrowScaleFactor,t.arrow(s.x,s.y,e,i),t.fill(),t.stroke(),this.label){var c;c=1==this.options.smoothCurves.enabled&&null!=o?this._pointOnBezier(.5):this._pointOnLine(.5),this._label(t,this.label,c.x,c.y)}}else{var p,u,m,f=this.from,g=.25*Math.max(100,this.physics.springLength);f.width||f.resize(t),f.width>f.height?(p=f.x+.5*f.width,u=f.y-g,m={x:p,y:f.y,angle:.9*Math.PI}):(p=f.x+g,u=f.y-.5*f.height,m={x:f.x,y:u,angle:.6*Math.PI}),t.beginPath(),t.arc(p,u,g,0,2*Math.PI,!1),t.stroke();var i=(10+5*this.options.width)*this.options.arrowScaleFactor;t.arrow(m.x,m.y,m.angle,i),t.fill(),t.stroke(),this.label&&(c=this._pointOnCircle(p,u,g,.5),this._label(t,this.label,c.x,c.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)):null!==this.via&&(this.via.x=0,this.via.y=0)},s.prototype._drawControlNodes=function(t){if(1==this.controlNodesEnabled){if(null===this.controlNodes.from&&null===this.controlNodes.to){var e="edgeIdFrom:".concat(this.id),i="edgeIdTo:".concat(this.id),s={nodes:{group:"",radius:7,borderWidth:2,borderWidthSelected:2},physics:{damping:0},clustering:{maxNodeSizeIncrements:0,nodeScaling:{width:0,height:0,radius:0}}};this.controlNodes.from=new n({id:e,shape:"dot",color:{background:"#ff0000",border:"#3c3c3c",highlight:{background:"#07f968"}}},{},{},s),this.controlNodes.to=new n({id:i,shape:"dot",color:{background:"#ff0000",border:"#3c3c3c",highlight:{background:"#07f968"}}},{},{},s)}this.controlNodes.positions={},0==this.controlNodes.from.selected&&(this.controlNodes.positions.from=this.getControlNodeFromPosition(t),this.controlNodes.from.x=this.controlNodes.positions.from.x,this.controlNodes.from.y=this.controlNodes.positions.from.y),0==this.controlNodes.to.selected&&(this.controlNodes.positions.to=this.getControlNodeToPosition(t),this.controlNodes.to.x=this.controlNodes.positions.to.x,this.controlNodes.to.y=this.controlNodes.positions.to.y),this.controlNodes.from.draw(t),this.controlNodes.to.draw(t)}else this.controlNodes={from:null,to:null,positions:{}}},s.prototype._enableControlNodes=function(){this.fromBackup=this.from,this.toBackup=this.to,this.controlNodesEnabled=!0},s.prototype._disableControlNodes=function(){this.fromId=this.from.id,this.toId=this.to.id,this.fromId!=this.fromBackup.id?this.fromBackup.detachEdge(this):this.toId!=this.toBackup.id&&this.toBackup.detachEdge(this),this.fromBackup=null,this.toBackup=null,this.controlNodesEnabled=!1},s.prototype._getSelectedControlNode=function(t,e){var i=this.controlNodes.positions,s=Math.sqrt(Math.pow(t-i.from.x,2)+Math.pow(e-i.from.y,2)),o=Math.sqrt(Math.pow(t-i.to.x,2)+Math.pow(e-i.to.y,2));return 15>s?(this.connectedNode=this.from,this.from=this.controlNodes.from,this.controlNodes.from):15>o?(this.connectedNode=this.to,this.to=this.controlNodes.to,this.controlNodes.to):null},s.prototype._restoreControlNodes=function(){1==this.controlNodes.from.selected?(this.from=this.connectedNode,this.connectedNode=null,this.controlNodes.from.unselect()):1==this.controlNodes.to.selected&&(this.to=this.connectedNode,this.connectedNode=null,this.controlNodes.to.unselect())},s.prototype.getControlNodeFromPosition=function(t){var e;if(1==this.options.smoothCurves.enabled)e=this._findBorderPosition(!0,t);else{var 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;e={},e.x=a*this.from.x+(1-a)*this.to.x,e.y=a*this.from.y+(1-a)*this.to.y}return e},s.prototype.getControlNodeToPosition=function(t){var e;if(1==this.options.smoothCurves.enabled)e=this._findBorderPosition(!1,t);else{var 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.to.distanceToBorder(t,i),a=(n-r)/n;e={},e.x=(1-a)*this.from.x+a*this.to.x,e.y=(1-a)*this.from.y+a*this.to.y}return e},t.exports=s},function(t,e,i){function s(){this.clear(),this.defaultIndex=0,this.groupsArray=[],this.groupIndex=0,this.useDefaultGroups=!0}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"}},{border:"#990000",background:"#EE0000",highlight:{border:"#BB0000",background:"#FF3333"},hover:{border:"#BB0000",background:"#FF3333"}},{border:"#FF6000",background:"#FF6000",highlight:{border:"#FF6000",background:"#FF6000"},hover:{border:"#FF6000",background:"#FF6000"}},{border:"#97C2FC",background:"#2B7CE9",highlight:{border:"#D2E5FF",background:"#2B7CE9"},hover:{border:"#D2E5FF",background:"#2B7CE9"}},{border:"#399605",background:"#255C03",highlight:{border:"#399605",background:"#255C03"},hover:{border:"#399605",background:"#255C03"}},{border:"#B70054",background:"#FF007E",highlight:{border:"#B70054",background:"#FF007E"},hover:{border:"#B70054",background:"#FF007E"}},{border:"#AD85E4",background:"#7C29F0",highlight:{border:"#D3BDF0",background:"#7C29F0"},hover:{border:"#D3BDF0",background:"#7C29F0"}},{border:"#4557FA",background:"#000EA1",highlight:{border:"#6E6EFD",background:"#000EA1"},hover:{border:"#6E6EFD",background:"#000EA1"}},{border:"#FFC0CB",background:"#FD5A77",highlight:{border:"#FFD1D9",background:"#FD5A77"},hover:{border:"#FFD1D9",background:"#FD5A77"}},{border:"#C2FABC",background:"#74D66A",highlight:{border:"#E6FFE3",background:"#74D66A"},hover:{border:"#E6FFE3",background:"#74D66A"}},{border:"#EE0000",background:"#990000",highlight:{border:"#FF3333",background:"#BB0000"},hover:{border:"#FF3333",background:"#BB0000"}}],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)if(this.useDefaultGroups===!1&&this.groupsArray.length>0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,e={},e.color=this.groups[this.groupsArray[i]],this.groups[t]=e}else{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,this.groupsArray.push(t),e},t.exports=s},function(t,e,i){function s(){this.images={},this.imageBroken={},this.callback=void 0}s.prototype.setOnloadCallback=function(t){this.callback=t},s.prototype.load=function(t,e){var i=this.images[t];if(void 0===i){var s=this;i=new Image,i.onload=function(){0==this.width&&(document.body.appendChild(this),this.width=this.offsetWidth,this.height=this.offsetHeight,document.body.removeChild(this)),s.callback&&(s.images[t]=i,s.callback(this))},i.onerror=function(){void 0===e?(console.error("Could not load image:",t),delete this.src,s.callback&&s.callback(this)):s.imageBroken[t]===!0?this.src==e?(console.error("Could not load brokenImage:",e),delete this.src,s.callback&&s.callback(this)):(console.error("Could not load image:",t),this.src=e):(console.error("Could not load image:",t),this.src=e,s.imageBroken[t]=!0)},i.src=t}return i},t.exports=s},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.id=void 0,this.allowedToMoveX=!1,this.allowedToMoveY=!1,this.xFixed=!1,this.yFixed=!1,this.horizontalAlignLeft=!0,this.verticalAlignTop=!0,this.baseRadiusValue=s.nodes.radius,this.radiusFixed=!1,this.level=-1,this.preassignedLevel=!1,this.hierarchyEnumerated=!1,
-this.labelDimensions={top:0,left:0,width:0,height:0,yLine:0},this.boundingBox={top:0,left:0,right:0,bottom:0},this.imagelist=e,this.grouplist=i,this.fx=0,this.fy=0,this.vx=0,this.vy=0,this.x=null,this.y=null,this.predefinedPosition=!1,this.previousState={vx:0,vy:0,x:0,y:0},this.damping=s.physics.damping,this.fixedData={x:null,y:null},this.setProperties(t,n),this.resetCluster(),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.revertPosition=function(){this.x=this.previousState.x,this.y=this.previousState.y,this.vx=this.previousState.vx,this.vy=this.previousState.vy},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)},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)},s.prototype.setProperties=function(t,e){if(t){var i=["borderWidth","borderWidthSelected","shape","image","brokenImage","radius","fontColor","fontSize","fontFace","fontFill","fontStrokeWidth","fontStrokeColor","group","mass","fontDrawThreshold","scaleFontWithValue","fontSizeMaxVisible","customScalingFunction","iconFontFace","icon","iconColor","iconSize"];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,this.predefinedPosition=!0),void 0!==t.y&&(this.y=t.y,this.predefinedPosition=!0),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 t.group||"string"==typeof t.group&&""!=t.group){var s=this.grouplist.get(t.group);o.deepExtend(this.options,s),this.options.color=o.parseColor(this.options.color)}if(void 0!==t.radius&&(this.baseRadiusValue=this.options.radius),void 0!==t.color&&(this.options.color=o.parseColor(t.color)),void 0!==this.options.image&&""!=this.options.image){if(!this.imagelist)throw"No imagelist provided";this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage)}switch(void 0!==t.allowedToMoveX?(this.xFixed=!t.allowedToMoveX,this.allowedToMoveX=t.allowedToMoveX):void 0!==t.x&&0==this.allowedToMoveX&&(this.xFixed=!0),void 0!==t.allowedToMoveY?(this.yFixed=!t.allowedToMoveY,this.allowedToMoveY=t.allowedToMoveY):void 0!==t.y&&0==this.allowedToMoveY&&(this.yFixed=!0),this.radiusFixed=this.radiusFixed||void 0!==t.radius,("image"===this.options.shape||"circularImage"===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"circularImage":this.draw=this._drawCircularImage,this.resize=this._resizeCircularImage;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;case"icon":this.draw=this._drawIcon,this.resize=this._resizeIcon;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.storeState=function(){this.previousState.x=this.x,this.previousState.y=this.y,this.previousState.vx=this.vx,this.previousState.vy=this.vy},s.prototype.discreteStep=function(t){if(this.storeState(),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.storeState(),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,i){if(!this.radiusFixed&&void 0!==this.value){var s=this.options.customScalingFunction(t,e,i,this.value),o=this.options.radiusMax-this.options.radiusMin;if(1==this.options.scaleFontWithValue){var n=this.options.fontSizeMax-this.options.fontSizeMin;this.options.fontSize=this.options.fontSizeMin+s*n}this.options.radius=this.options.radiusMin+s*o}this.baseRadiusValue=this.options.radius},s.prototype.draw=function(t){throw"Draw method not initialized for node"},s.prototype.resize=function(t){throw"Resize method not initialized for node"},s.prototype.isOverlappingWith=function(t){return this.leftt.left&&this.topt.top},s.prototype._resizeImage=function(t){if(!this.width||!this.height){var e,i;if(this.value){this.options.radius=this.baseRadiusValue;var s=this.imageObj.height/this.imageObj.width;void 0!==s?(e=this.options.radius||this.imageObj.width,i=this.options.radius*s||this.imageObj.height):(e=0,i=0)}else e=this.imageObj.width,i=this.imageObj.height;this.width=e,this.height=i,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-e)}},s.prototype._drawImageAtPosition=function(t){if(0!=this.imageObj.width){if(this.clusterSize>1){var e=this.clusterSize>1?10:0;e*=this.networkScaleInv,e=Math.min(.2*this.width,e),t.globalAlpha=.5,t.drawImage(this.imageObj,this.left-e,this.top-e,this.width+2*e,this.height+2*e)}t.globalAlpha=1,t.drawImage(this.imageObj,this.left,this.top,this.width,this.height)}},s.prototype._drawImageLabel=function(t){var e,i=0;if(this.height){i=this.height/2;var s=this.getTextSize(t);s.lineCount>=1&&(i+=s.height/2,i+=3)}e=this.y+i,this._label(t,this.label,this.x,e,void 0)},s.prototype._drawImage=function(t){this._resizeImage(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._drawImageAtPosition(t),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._drawImageLabel(t),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height)},s.prototype._resizeCircularImage=function(t){if(this.imageObj.src&&this.imageObj.width&&this.imageObj.height)this._swapToImageResizeWhenImageLoaded&&(this.width=0,this.height=0,delete this._swapToImageResizeWhenImageLoaded),this._resizeImage(t);else if(!this.width){var e=2*this.options.radius;this.width=e,this.height=e,this.options.radius+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.options.radius-.5*e,this._swapToImageResizeWhenImageLoaded=!0}},s.prototype._drawCircularImage=function(t){this._resizeCircularImage(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=this.left+this.width/2,i=this.top+this.height/2,s=Math.abs(this.height/2);this._drawRawCircle(t,e,i,s),t.save(),t.circle(this.x,this.y,s),t.stroke(),t.clip(),this._drawImageAtPosition(t),t.restore(),this.boundingBox.top=this.y-this.options.radius,this.boundingBox.left=this.x-this.options.radius,this.boundingBox.right=this.x+this.options.radius,this.boundingBox.bottom=this.y+this.options.radius,this._drawImageLabel(t),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height)},s.prototype._resizeBox=function(t){if(!this.width){var e=5,i=this.getTextSize(t);this.width=i.width+2*e,this.height=i.height+2*e,this.width+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.growthIndicator=this.width-(i.width+2*e)}},s.prototype._drawBox=function(t){this._resizeBox(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.roundRect(this.left-2*t.lineWidth,this.top-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth,this.options.radius),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.roundRect(this.left,this.top,this.width,this.height,this.options.radius),t.fill(),t.stroke(),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,this.y)},s.prototype._resizeDatabase=function(t){if(!this.width){var e=5,i=this.getTextSize(t),s=i.width+2*e;this.width=s,this.height=s,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-s}},s.prototype._drawDatabase=function(t){this._resizeDatabase(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.database(this.x-this.width/2-2*t.lineWidth,this.y-.5*this.height-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.database(this.x-this.width/2,this.y-.5*this.height,this.width,this.height),t.fill(),t.stroke(),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,this.y)},s.prototype._resizeCircle=function(t){if(!this.width){var e=5,i=this.getTextSize(t),s=Math.max(i.width,i.height)+2*e;this.options.radius=s/2,this.width=s,this.height=s,this.options.radius+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.options.radius-.5*s}},s.prototype._drawRawCircle=function(t,e,i,s){var o=2.5,n=this.options.borderWidth,r=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?r:n)+(this.clusterSize>1?o:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.circle(e,i,s+2*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?r:n)+(this.clusterSize>1?o: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,s),t.fill(),t.stroke()},s.prototype._drawCircle=function(t){this._resizeCircle(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._drawRawCircle(t,this.x,this.y,this.options.radius),this.boundingBox.top=this.y-this.options.radius,this.boundingBox.left=this.x-this.options.radius,this.boundingBox.right=this.x+this.options.radius,this.boundingBox.bottom=this.y+this.options.radius,this._label(t,this.label,this.x,this.y)},s.prototype._resizeEllipse=function(t){if(!this.width){var e=this.getTextSize(t);this.width=1.5*e.width,this.height=2*e.height,this.width1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.ellipse(this.left-2*t.lineWidth,this.top-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.ellipse(this.left,this.top,this.width,this.height),t.fill(),t.stroke(),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,this.y)},s.prototype._drawDot=function(t){this._drawShape(t,"circle")},s.prototype._drawTriangle=function(t){this._drawShape(t,"triangle")},s.prototype._drawTriangleDown=function(t){this._drawShape(t,"triangleDown")},s.prototype._drawSquare=function(t){this._drawShape(t,"square")},s.prototype._drawStar=function(t){this._drawShape(t,"star")},s.prototype._resizeShape=function(t){if(!this.width){this.options.radius=this.baseRadiusValue;var e=2*this.options.radius;this.width=e,this.height=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+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-e}},s.prototype._drawShape=function(t,e){this._resizeShape(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var i=2.5,s=this.options.borderWidth,o=this.options.borderWidthSelected||2*this.options.borderWidth,n=2;switch(e){case"dot":n=2;break;case"square":n=2;break;case"triangle":n=3;break;case"triangleDown":n=3;break;case"star":n=4}t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?o:s)+(this.clusterSize>1?i:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t[e](this.x,this.y,this.options.radius+n*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?o:s)+(this.clusterSize>1?i:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t[e](this.x,this.y,this.options.radius),t.fill(),t.stroke(),this.boundingBox.top=this.y-this.options.radius,this.boundingBox.left=this.x-this.options.radius,this.boundingBox.right=this.x+this.options.radius,this.boundingBox.bottom=this.y+this.options.radius,this.label&&(this._label(t,this.label,this.x,this.y+this.height/2,void 0,"hanging",!0),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height))},s.prototype._resizeText=function(t){if(!this.width){var e=5,i=this.getTextSize(t);this.width=i.width+2*e,this.height=i.height+2*e,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-(i.width+2*e)}},s.prototype._drawText=function(t){this._resizeText(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._label(t,this.label,this.x,this.y),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height},s.prototype._resizeIcon=function(t){if(!this.width){var e=5,i={width:Number(this.options.iconSize),height:Number(this.options.iconSize)};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._drawIcon=function(t){if(this._resizeIcon(t),this.options.iconSize=this.options.iconSize||50,this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._icon(t),this.boundingBox.top=this.y-this.options.iconSize/2,this.boundingBox.left=this.x-this.options.iconSize/2,this.boundingBox.right=this.x+this.options.iconSize/2,this.boundingBox.bottom=this.y+this.options.iconSize/2,this.label){var e=5;this._label(t,this.label,this.x,this.y+this.height/2+e,"top",!0),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height)}},s.prototype._icon=function(t){var e=Number(this.options.iconSize)*this.networkScale;if(this.options.icon&&e>this.options.fontDrawThreshold-1){var i=Number(this.options.iconSize);t.font=(this.selected?"bold ":"")+i+"px "+this.options.iconFontFace,t.fillStyle=this.options.iconColor||"black",t.textAlign="center",t.textBaseline="middle",t.fillText(this.options.icon,this.x,this.y)}},s.prototype._label=function(t,e,i,s,n,r,a){var h=Number(this.options.fontSize)*this.networkScale;if(e&&h>=this.options.fontDrawThreshold-1){var d=Number(this.options.fontSize);h>=this.options.fontSizeMaxVisible&&(d=Number(this.options.fontSizeMaxVisible)*this.networkScaleInv);var l=this.options.fontColor||"#000000",c=this.options.fontStrokeColor;if(h<=this.options.fontDrawThreshold){var p=Math.max(0,Math.min(1,1-(this.options.fontDrawThreshold-h)));l=o.overrideOpacity(l,p),c=o.overrideOpacity(c,p)}t.font=(this.selected?"bold ":"")+d+"px "+this.options.fontFace;var u=e.split("\n"),m=u.length,f=s+(1-m)/2*d;1==a&&(f=s+(1-m)/(2*d));for(var g=t.measureText(u[0]).width,v=1;m>v;v++){var y=t.measureText(u[v]).width;g=y>g?y:g}var b=d*m,_=i-g/2,x=s-b/2;"hanging"==r&&(x+=.5*d,x+=4,f+=4),this.labelDimensions={top:x,left:_,width:g,height:b,yLine:f},void 0!==this.options.fontFill&&null!==this.options.fontFill&&"none"!==this.options.fontFill&&(t.fillStyle=this.options.fontFill,t.fillRect(_,x,g,b)),t.fillStyle=l,t.textAlign=n||"center",t.textBaseline=r||"middle",this.options.fontStrokeWidth>0&&(t.lineWidth=this.options.fontStrokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var v=0;m>v;v++)this.options.fontStrokeWidth&&t.strokeText(u[v],i,f),t.fillText(u[v],i,f),f+=d}},s.prototype.getTextSize=function(t){if(void 0!==this.label){var e=Number(this.options.fontSize);e*this.networkScale>this.options.fontSizeMaxVisible&&(e=Number(this.options.fontSizeMaxVisible)*this.networkScaleInv),t.font=(this.selected?"bold ":"")+e+"px "+this.options.fontFace;for(var i=this.label.split("\n"),s=(e+4)*i.length,o=0,n=0,r=i.length;r>n;n++)o=Math.max(o,t.measureText(i[n]).width);return{width:o,height:s,lineCount:i.length}}return{width:0,height:0,lineCount: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=h(o.attr,t.node))),i=n.length-1;i>=0;i--){var a=n[i];a.nodes||(a.nodes=[]),-1==a.nodes.indexOf(o)&&a.nodes.push(o)}e.attr&&(o.attr=h(o.attr,e.attr))}function c(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=h({},t.edge);e.attr=h(i,e.attr)}}function p(t,e,i,s,o){var n={from:e,to:i,type:s};return t.edge&&(n.attr=h({},t.edge)),n.attr=h(n.attr||{},o),n}function u(){for(I=C.NULL,N="";" "==k||" "==k||"\n"==k||"\r"==k;)n();do{var t=!1;if("#"==k){for(var e=E-1;" "==O.charAt(e)||" "==O.charAt(e);)e--;if("\n"==O.charAt(e)||""==O.charAt(e)){for(;""!=k&&"\n"!=k;)n();t=!0}}if("/"==k&&"/"==r()){for(;""!=k&&"\n"!=k;)n();t=!0}if("/"==k&&"*"==r()){for(;""!=k;){if("*"==k&&"/"==r()){n(),n();break}n()}t=!0}for(;" "==k||" "==k||"\n"==k||"\r"==k;)n()}while(t);if(""==k)return void(I=C.DELIMITER);var i=k+r();if(T[i])return I=C.DELIMITER,N=i,n(),void n();if(T[k])return I=C.DELIMITER,N=k,void n();if(a(k)||"-"==k){for(N+=k,n();a(k);)N+=k,n();return"false"==N?N=!1:"true"==N?N=!0:isNaN(Number(N))||(N=Number(N)),void(I=C.IDENTIFIER)}if('"'==k){for(n();""!=k&&('"'!=k||'"'==k&&'"'==r());)N+=k,'"'==k&&n(),n();if('"'!=k)throw w('End of string " expected');return n(),void(I=C.IDENTIFIER)}for(I=C.UNKNOWN;""!=k;)N+=k,n();throw new SyntaxError('Syntax error in part "'+S(N,30)+'"')}function m(){var t={};if(o(),u(),"strict"==N&&(t.strict=!0,u()),("graph"==N||"digraph"==N)&&(t.type=N,u()),I==C.IDENTIFIER&&(t.id=N,u()),"{"!=N)throw w("Angle bracket { expected");if(u(),f(t),"}"!=N)throw w("Angle bracket } expected");if(u(),""!==N)throw w("End of file expected");return u(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==N&&"}"!=N;)g(t),";"==N&&u()}function g(t){var e=v(t);if(e)return void _(t,e);var i=y(t);if(!i){if(I!=C.IDENTIFIER)throw w("Identifier expected");var s=N;if(u(),"="==N){if(u(),I!=C.IDENTIFIER)throw w("Identifier expected");t[s]=N,u()}else b(t,s)}}function v(t){var e=null;if("subgraph"==N&&(e={},e.type="subgraph",u(),I==C.IDENTIFIER&&(e.id=N,u())),"{"==N){if(u(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=N)throw w("Angle bracket } expected");u(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function y(t){return"node"==N?(u(),t.node=x(),"node"):"edge"==N?(u(),t.edge=x(),"edge"):"graph"==N?(u(),t.graph=x(),"graph"):null}function b(t,e){var i={id:e},s=x();s&&(i.attr=s),l(t,i),_(t,e)}function _(t,e){for(;"->"==N||"--"==N;){var i,s=N;u();var o=v(t);if(o)i=o;else{if(I!=C.IDENTIFIER)throw w("Identifier or subgraph expected");i=N,l(t,{id:i}),u()}var n=x(),r=p(t,e,i,s,n);c(t,r),e=i}}function x(){for(var t=null;"["==N;){for(u(),t={};""!==N&&"]"!=N;){if(I!=C.IDENTIFIER)throw w("Attribute name expected");var e=N;if(u(),"="!=N)throw w("Equal sign = expected");if(u(),I!=C.IDENTIFIER)throw w("Attribute value expected");var i=N;d(t,e,i),u(),","==N&&u()}if("]"!=N)throw w("Bracket ] expected");u()}return t}function w(t){return new SyntaxError(t+', got "'+S(N,30)+'" (char '+E+")")}function S(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function D(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function M(t){var e=s(t),i={nodes:[],edges:[],options:{}};if(e.nodes&&e.nodes.forEach(function(t){var e={id:t.id,label:String(t.label||t.id)};h(e,t.attr),e.image&&(e.shape="image"),i.nodes.push(e)}),e.edges){var o=function(t){var e={from:t.from,to:t.to};return h(e,t.attr),e.style="->"==t.type?"arrow":"line",e};e.edges.forEach(function(t){var e,s;e=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 e=o(t);i.edges.push(e)}),D(e,s,function(e,s){var n=p(i,e.id,s.id,t.type,t.attr),r=o(n);i.edges.push(r)}),t.to instanceof Object&&t.to.edges&&t.to.edges.forEach(function(t){var e=o(t);i.edges.push(e)})})}return e.attr&&(i.options=e.attr),i}var C={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},T={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},O="",E=0,k="",N="",I=C.NULL,L=/[a-zA-Z_0-9.:#]/;e.parseDOT=s,e.DOTToGraph=M},function(t,e,i){function s(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;ro;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-i.vertical+se.top}},function(t,e,i){function s(t,e,i,o){this.current=new Date,this._start=new Date,this._end=new Date,this.autoScale=!0,this.scale="day",this.step=1,this.setRange(t,e,i),this.switchedDay=!1,this.switchedMonth=!1,this.switchedYear=!1,this.hiddenDates=o,void 0===o&&(this.hiddenDates=[]),this.format=s.FORMAT}var o=i(44),n=i(15),r=i(1);s.FORMAT={minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},s.prototype.setFormat=function(t){var e=r.deepExtend({},s.FORMAT);this.format=r.deepExtend(e,t)},s.prototype.setRange=function(t,e,i){if(!(t instanceof Date&&e instanceof Date))throw"No legal start or end date in method setRange";this._start=void 0!=t?new Date(t.valueOf()):new Date,this._end=void 0!=e?new Date(e.valueOf()):new Date,this.autoScale&&this.setMinimumStep(i)},s.prototype.first=function(){this.current=new Date(this._start.valueOf()),this.roundToMinor()},s.prototype.roundToMinor=function(){switch(this.scale){case"year":this.current.setFullYear(this.step*Math.floor(this.current.getFullYear()/this.step)),this.current.setMonth(0);case"month":this.current.setDate(1);case"day":case"weekday":this.current.setHours(0);case"hour":this.current.setMinutes(0);case"minute":this.current.setSeconds(0);case"second":this.current.setMilliseconds(0)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.setMilliseconds(this.current.getMilliseconds()-this.current.getMilliseconds()%this.step);break;case"second":this.current.setSeconds(this.current.getSeconds()-this.current.getSeconds()%this.step);break;case"minute":this.current.setMinutes(this.current.getMinutes()-this.current.getMinutes()%this.step);break;case"hour":this.current.setHours(this.current.getHours()-this.current.getHours()%this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()-1-(this.current.getDate()-1)%this.step+1);break;case"month":this.current.setMonth(this.current.getMonth()-this.current.getMonth()%this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()-this.current.getFullYear()%this.step)}},s.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()},s.prototype.next=function(){var t=this.current.valueOf();if(this.current.getMonth()<6)switch(this.scale){case"millisecond":this.current=new Date(this.current.valueOf()+this.step);break;case"second":this.current=new Date(this.current.valueOf()+1e3*this.step);break;case"minute":this.current=new Date(this.current.valueOf()+1e3*this.step*60);break;case"hour":this.current=new Date(this.current.valueOf()+1e3*this.step*60*60);var e=this.current.getHours();this.current.setHours(e-e%this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()+this.step);break;case"month":this.current.setMonth(this.current.getMonth()+this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()+this.step)}else switch(this.scale){case"millisecond":this.current=new Date(this.current.valueOf()+this.step);break;case"second":this.current.setSeconds(this.current.getSeconds()+this.step);break;case"minute":this.current.setMinutes(this.current.getMinutes()+this.step);break;case"hour":this.current.setHours(this.current.getHours()+this.step);break;case"weekday":case"day":this.current.setDate(this.current.getDate()+this.step);break;case"month":this.current.setMonth(this.current.getMonth()+this.step);break;case"year":this.current.setFullYear(this.current.getFullYear()+this.step)}if(1!=this.step)switch(this.scale){case"millisecond":this.current.getMilliseconds()0?t.step:1,this.autoScale=!1)},s.prototype.setAutoScale=function(t){this.autoScale=t},s.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,s=864e5,o=36e5,n=6e4,r=1e3,a=1;1e3*e>t&&(this.scale="year",this.step=1e3),500*e>t&&(this.scale="year",this.step=500),100*e>t&&(this.scale="year",this.step=100),50*e>t&&(this.scale="year",this.step=50),10*e>t&&(this.scale="year",this.step=10),5*e>t&&(this.scale="year",this.step=5),e>t&&(this.scale="year",this.step=1),3*i>t&&(this.scale="month",this.step=3),i>t&&(this.scale="month",this.step=1),5*s>t&&(this.scale="day",this.step=5),2*s>t&&(this.scale="day",this.step=2),s>t&&(this.scale="day",this.step=1),s/2>t&&(this.scale="weekday",this.step=1),4*o>t&&(this.scale="hour",this.step=4),o>t&&(this.scale="hour",this.step=1),15*n>t&&(this.scale="minute",this.step=15),10*n>t&&(this.scale="minute",this.step=10),5*n>t&&(this.scale="minute",this.step=5),n>t&&(this.scale="minute",this.step=1),15*r>t&&(this.scale="second",this.step=15),10*r>t&&(this.scale="second",this.step=10),5*r>t&&(this.scale="second",this.step=5),r>t&&(this.scale="second",this.step=1),200*a>t&&(this.scale="millisecond",this.step=200),100*a>t&&(this.scale="millisecond",this.step=100),50*a>t&&(this.scale="millisecond",this.step=50),10*a>t&&(this.scale="millisecond",this.step=10),5*a>t&&(this.scale="millisecond",this.step=5),a>t&&(this.scale="millisecond",this.step=1)}},s.snap=function(t,e,i){var s=new Date(t.valueOf());if("year"==e){var o=s.getFullYear()+Math.round(s.getMonth()/12);s.setFullYear(Math.round(o/i)*i),s.setMonth(0),s.setDate(0),s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0)}else if("month"==e)s.getDate()>15?(s.setDate(1),s.setMonth(s.getMonth()+1)):s.setDate(1),s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0);else if("day"==e){switch(i){case 5:case 2:s.setHours(24*Math.round(s.getHours()/24));break;default:s.setHours(12*Math.round(s.getHours()/12))}s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:s.setHours(12*Math.round(s.getHours()/12));break;default:s.setHours(6*Math.round(s.getHours()/6))}s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0)}else if("hour"==e){switch(i){case 4:s.setMinutes(60*Math.round(s.getMinutes()/60));break;default:s.setMinutes(30*Math.round(s.getMinutes()/30))}s.setSeconds(0),s.setMilliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:s.setMinutes(5*Math.round(s.getMinutes()/5)),s.setSeconds(0);break;case 5:s.setSeconds(60*Math.round(s.getSeconds()/60));break;default:s.setSeconds(30*Math.round(s.getSeconds()/30))}s.setMilliseconds(0)}else if("second"==e)switch(i){case 15:case 10:s.setSeconds(5*Math.round(s.getSeconds()/5)),s.setMilliseconds(0);break;case 5:s.setMilliseconds(1e3*Math.round(s.getMilliseconds()/1e3));break;default:s.setMilliseconds(500*Math.round(s.getMilliseconds()/500))}else if("millisecond"==e){var n=i>5?i/2:1;s.setMilliseconds(Math.round(s.getMilliseconds()/n)*n)}return s},s.prototype.isMajor=function(){if(1==this.switchedYear)switch(this.switchedYear=!1,this.scale){case"year":case"month":case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedMonth)switch(this.switchedMonth=!1,this.scale){case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedDay)switch(this.switchedDay=!1,this.scale){case"millisecond":case"second":case"minute":case"hour":return!0;default:return!1}switch(this.scale){case"millisecond":return 0==this.current.getMilliseconds();case"second":return 0==this.current.getSeconds();case"minute":return 0==this.current.getHours()&&0==this.current.getMinutes();case"hour":return 0==this.current.getHours();case"weekday":case"day":return 1==this.current.getDate();case"month":return 0==this.current.getMonth();case"year":return!1;default:return!1}},s.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?o(t).format(e):""},s.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?o(t).format(e):""},s.prototype.getClassName=function(){function t(t){return t/h%2==0?" even":" odd"}function e(t){return t.isSame(new Date,"day")?" today":t.isSame(o().add(1,"day"),"day")?" tomorrow":t.isSame(o().add(-1,"day"),"day")?" yesterday":""}function i(t){return t.isSame(new Date,"week")?" current-week":""}function s(t){return t.isSame(new Date,"month")?" current-month":""}function n(t){return t.isSame(new Date,"year")?" current-year":""}var r=o(this.current),a=r.locale?r.locale("en"):r.lang("en"),h=this.step;switch(this.scale){case"millisecond":return t(a.milliseconds()).trim();case"second":return t(a.seconds()).trim();case"minute":return t(a.minutes()).trim();case"hour":var d=a.hours();return 4==this.step&&(d=d+"-"+(d+4)),d+"h"+e(a)+t(a.hours());case"weekday":return a.format("dddd").toLowerCase()+e(a)+i(a)+t(a.date());case"day":var l=a.date(),c=a.format("MMMM").toLowerCase();return"day"+l+" "+c+s(a)+t(l-1);case"month":return a.format("MMMM").toLowerCase()+s(a)+t(a.month());case"year":var p=a.year();return"year"+p+n(a)+t(p);default:return""}},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){var e=void 0!=t.group&&this.data.group!=t.group;e&&this.parent.itemSet._moveToGroup(this,t.group),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(t){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){t.preventDefault(),t.stopPropagation(),e.parent.removeFromDataSet(e)}),t.appendChild(i),this.dom.deleteButton=i}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},s.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;if(e!==this.content){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},s.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("title")},s.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;it.start},s.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.content=document.createElement("div"),t.content.className="content",t.box.appendChild(t.content),this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.background;if(!e)throw new Error("Cannot redraw item: parent has no background container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.content),this._updateDataAttributes(this.dom.content),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.props.content.width=this.dom.content.offsetWidth,this.height=0,this.dirty=!1}},s.prototype.show=r.prototype.show,s.prototype.hide=r.prototype.hide,s.prototype.repositionX=r.prototype.repositionX,s.prototype.repositionY=function(t){var e="top"===this.options.orientation;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var s=this.data.subgroup,o=this.parent.subgroups,r=o[s].index;if(1==e){i=this.parent.subgroups[s].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in o)o.hasOwnProperty(h)&&1==o[h].visible&&o[h].indexr&&(a+=l)}i=this.parent.subgroups[s].height+t.item.vertical,this.dom.box.style.top=this.parent.height-d+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(20);i(1)}s.prototype=new o(null,null,null),s.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start-e&&this.data.startt.start},s.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.content=document.createElement("div"),t.content.className="content",t.box.appendChild(t.content),t.box["timeline-item"]=this,this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.foreground;if(!e)throw new Error("Cannot redraw item: parent has no foreground container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.box),this._updateDataAttributes(this.dom.box),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.dom.content.style.maxWidth="none",this.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,this.dom.content.style.maxWidth="",this.dirty=!1}this._repaintDeleteButton(t.box),this._repaintDragLeft(),this._repaintDragRight()},s.prototype.show=function(){this.displayed||this.redraw()},s.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.displayed=!1}},s.prototype.repositionX=function(t){var e,i,s=this.parent.width,o=this.conversion.toScreen(this.data.start),n=this.conversion.toScreen(this.data.end);(void 0===t||t===!0)&&(-s>o&&(o=-s),n>2*s&&(n=2*s));var r=Math.max(n-o,1);switch(this.overflow?(this.left=o,this.width=r+this.props.content.width,i=this.props.content.width):(this.left=o,this.width=r,i=Math.min(n-o-2*this.options.padding,this.props.content.width)),this.dom.box.style.left=this.left+"px",this.dom.box.style.width=r+"px",this.options.align){case"left":this.dom.content.style.left="0";break;case"right":this.dom.content.style.left=Math.max(r-i-2*this.options.padding,0)+"px";break;case"center":this.dom.content.style.left=Math.max((r-i-2*this.options.padding)/2,0)+"px";break;default:e=this.overflow?n>0?Math.max(-o,0):-i:0>o?Math.min(-o,n-o-i-2*this.options.padding):0,this.dom.content.style.left=e+"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){this.options=null,this.props=null}s.prototype.setOptions=function(t){t&&util.extend(this.options,t)},s.prototype.redraw=function(){return!1},s.prototype.destroy=function(){},s.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=s},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(25),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];s||(this.warned||(console.log('WARNING: locale "'+this.options.locale+'" not found in vis.js'),this.warned=!0),s=this.options.locales.en);var 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",id:0},this.options=n.extend({},this.defaultOptions),this.customTime=e&&e.time?e.time:new Date,this.eventParams={},this._create(),this.setOptions(e)}var o=i(45),n=i(1),r=i(25),a=i(44),h=i(48);s.prototype=new r,s.prototype.setOptions=function(t){t&&(n.selectiveExtend(["showCustomTime","locale","locales","id"],this.options,t),this.options.id&&this.redraw())},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];i||(this.warned||(console.log('WARNING: locale "'+this.options.locale+'" not found in vis.js'),this.warned=!0),i=this.options.locales.en);var 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",{id:this.options.id,time:new Date(this.customTime.valueOf())}),t.stopPropagation(),t.preventDefault()}},s.prototype._onDragEnd=function(t){this.eventParams.dragging&&(this.body.emitter.emit("timechanged",{id:this.options.id,time:new Date(this.customTime.valueOf())}),t.stopPropagation(),t.preventDefault())},t.exports=s},function(t,e,i){function s(t,e,i,s){this.id=o.randomUUID(),this.body=t,this.defaultOptions={orientation:"left",showMinorLabels:!0,showMajorLabels:!0,icons:!0,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:"40px",visible:!0,alignZeros:!0,customRange:{left:{min:void 0,max:void 0},right:{min:void 0,max:void 0}},title:{left:{text:void 0},right:{text:void 0}},format:{left:{decimals:void 0},right:{decimals:void 0}}},this.linegraphOptions=s,this.linegraphSVG=i,this.props={},this.DOMelements={lines:{},labels:{},title:{}},this.dom={},this.range={start:0,end:0},this.options=o.extend({},this.defaultOptions),this.conversionFactor=1,this.setOptions(e),this.width=Number((""+this.options.width).replace("px","")),this.minWidth=this.width,this.height=this.linegraphSVG.offsetHeight,this.hidden=!1,this.stepPixels=25,this.stepPixelsForced=25,this.zeroCrossing=-1,this.lineOffset=0,this.master=!0,this.svgElements={},this.iconsRemoved=!1,this.groups={},this.amountOfGroups=0,this._create();var n=this;this.body.emitter.on("verticalDrag",function(){n.dom.lineContainer.style.top=n.body.domProps.scrollTop+"px"})}var o=i(1),n=i(2),r=i(25),a=i(16);s.prototype=new r,s.prototype.addGroup=function(t,e){this.groups.hasOwnProperty(t)||(this.groups[t]=e),this.amountOfGroups+=1},s.prototype.updateGroup=function(t,e){this.groups[t]=e},s.prototype.removeGroup=function(t){this.groups.hasOwnProperty(t)&&(delete this.groups[t],this.amountOfGroups-=1)},s.prototype.setOptions=function(t){if(t){var e=!1;this.options.orientation!=t.orientation&&void 0!==t.orientation&&(e=!0);var i=["orientation","showMinorLabels","showMajorLabels","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","width","visible","customRange","title","format","alignZeros"];o.selectiveExtend(i,this.options,t),this.minWidth=Number((""+this.options.width).replace("px","")),
+1==e&&this.dom.frame&&(this.hide(),this.show())}},s.prototype._create=function(){this.dom.frame=document.createElement("div"),this.dom.frame.style.width=this.options.width,this.dom.frame.style.height=this.height,this.dom.lineContainer=document.createElement("div"),this.dom.lineContainer.style.width="100%",this.dom.lineContainer.style.height=this.height,this.dom.lineContainer.style.position="relative",this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="absolute",this.svg.style.top="0px",this.svg.style.height="100%",this.svg.style.width="100%",this.svg.style.display="block",this.dom.frame.appendChild(this.svg)},s.prototype._redrawGroupIcons=function(){n.prepareElements(this.svgElements);var t,e=this.options.iconWidth,i=15,s=4,o=s+.5*i;t="left"==this.options.orientation?s:this.width-e-s;for(var r in this.groups)this.groups.hasOwnProperty(r)&&(1!=this.groups[r].visible||void 0!==this.linegraphOptions.visibility[r]&&1!=this.linegraphOptions.visibility[r]||(this.groups[r].drawIcon(t,o,this.svgElements,this.svg,e,i),o+=i+s));n.cleanupElements(this.svgElements),this.iconsRemoved=!1},s.prototype._cleanupIcons=function(){0==this.iconsRemoved&&(n.prepareElements(this.svgElements),n.cleanupElements(this.svgElements),this.iconsRemoved=!0)},s.prototype.show=function(){this.hidden=!1,this.dom.frame.parentNode||("left"==this.options.orientation?this.body.dom.left.appendChild(this.dom.frame):this.body.dom.right.appendChild(this.dom.frame)),this.dom.lineContainer.parentNode||this.body.dom.backgroundHorizontal.appendChild(this.dom.lineContainer)},s.prototype.hide=function(){this.hidden=!0,this.dom.frame.parentNode&&this.dom.frame.parentNode.removeChild(this.dom.frame),this.dom.lineContainer.parentNode&&this.dom.lineContainer.parentNode.removeChild(this.dom.lineContainer)},s.prototype.setRange=function(t,e){0==this.master&&1==this.options.alignZeros&&-1!=this.zeroCrossing&&t>0&&(t=0),this.range.start=t,this.range.end=e},s.prototype.redraw=function(){var t=!1,e=0;this.dom.lineContainer.style.top=this.body.domProps.scrollTop+"px";for(var i in this.groups)this.groups.hasOwnProperty(i)&&(1!=this.groups[i].visible||void 0!==this.linegraphOptions.visibility[i]&&1!=this.linegraphOptions.visibility[i]||e++);if(0==this.amountOfGroups||0==e)this.hide();else{this.show(),this.height=Number(this.linegraphSVG.style.height.replace("px","")),this.dom.lineContainer.style.height=this.height+"px",this.width=1==this.options.visible?Number((""+this.options.width).replace("px","")):0;var s=this.props,o=this.dom.frame;o.className="dataaxis",this._calculateCharSize();var n=this.options.orientation,r=this.options.showMinorLabels,a=this.options.showMajorLabels;s.minorLabelHeight=r?s.minorCharHeight:0,s.majorLabelHeight=a?s.majorCharHeight:0,s.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset,s.minorLineHeight=1,s.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset,s.majorLineHeight=1,"left"==n?(o.style.top="0",o.style.left="0",o.style.bottom="",o.style.width=this.width+"px",o.style.height=this.height+"px",this.props.width=this.body.domProps.left.width,this.props.height=this.body.domProps.left.height):(o.style.top="",o.style.bottom="0",o.style.left="0",o.style.width=this.width+"px",o.style.height=this.height+"px",this.props.width=this.body.domProps.right.width,this.props.height=this.body.domProps.right.height),t=this._redrawLabels(),t=this._isResized()||t,1==this.options.icons?this._redrawGroupIcons():this._cleanupIcons(),this._redrawTitle(n)}return t},s.prototype._redrawLabels=function(){var t=!1;n.prepareElements(this.DOMelements.lines),n.prepareElements(this.DOMelements.labels);var e=this.options.orientation,i=this.master?this.props.majorCharHeight||10:this.stepPixelsForced,s=new a(this.range.start,this.range.end,i,this.dom.frame.offsetHeight,this.options.customRange[this.options.orientation],0==this.master&&this.options.alignZeros);this.step=s;var o=(this.dom.frame.offsetHeight-s.deadSpace*(this.dom.frame.offsetHeight/s.marginRange))/((s.marginRange-s.deadSpace)/s.step);this.stepPixels=o;var r=this.height/o,h=0;if(0==this.master){o=this.stepPixelsForced,h=Math.round(this.dom.frame.offsetHeight/o-r);for(var d=0;.5*h>d;d++)s.previous();if(r=this.height/o,-1!=this.zeroCrossing&&1==this.options.alignZeros){var l=s.marginEnd/s.step-this.zeroCrossing;if(l>0)for(var d=0;l>d;d++)s.next();else if(0>l)for(var d=0;-l>d;d++)s.previous()}}else r+=.25;this.valueAtZero=s.marginEnd;var c,p=0,u=1;void 0!==this.options.format[e]&&(c=this.options.format[e].decimals),this.maxLabelSize=0;for(var m=0;u=0&&this._redrawLabel(m-2,s.getCurrent(c),e,"yAxis major",this.props.majorCharHeight),this._redrawLine(m,e,"grid horizontal major",this.options.majorLinesOffset,this.props.majorLineWidth)):this._redrawLine(m,e,"grid horizontal minor",this.options.minorLinesOffset,this.props.minorLineWidth),1==this.master&&0==s.current&&(this.zeroCrossing=u),u++}this.conversionFactor=0==this.master?m/(this.valueAtZero-s.current):this.dom.frame.offsetHeight/s.marginRange;var g=0;void 0!==this.options.title[e]&&void 0!==this.options.title[e].text&&(g=this.props.titleCharHeight);var v=1==this.options.icons?Math.max(this.options.iconWidth,g)+this.options.labelOffsetX+15:g+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-v&&1==this.options.visible?(this.width=this.maxLabelSize+v,this.options.width=this.width+"px",n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+v),this.options.width=this.width+"px",n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):(n.cleanupElements(this.DOMelements.lines),n.cleanupElements(this.DOMelements.labels),t=!1),t},s.prototype.convertValue=function(t){var e=this.valueAtZero-t,i=e*this.conversionFactor;return i},s.prototype.screenToValue=function(t){return this.valueAtZero-t/this.conversionFactor},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.maxLabelSizep;p++){var m=this.visibleItems[p];m.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=0;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;ro;o++){var r=this.visibleItems[o];r.repositionY(e)}return s},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},snap:h.snap,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,s){i._onAdd(e.items)},update:function(t,e,s){i._onUpdate(e.items)},remove:function(t,e,s){i._onRemove(e.items)}},this.groupListeners={add:function(t,e,s){i._onAddGroups(e.items)},update:function(t,e,s){i._onUpdateGroups(e.items)},remove:function(t,e,s){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(19),d=i(25),l=i(30),c=i(31),p=i(22),u=i(23),m=i(24),f=i(21),g="__ungrouped__",v="__background__";s.prototype=new d,s.types={background:f,box:p,range:m,point:u},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 c(v,null,this);r.show(),this.groups[v]=r,this.hammer=o(this.body.dom.centerContainer,{preventDefault:!0}),this.hammer.on("touch",this._onTouch.bind(this)),this.hammer.on("dragstart",this._onDragStart.bind(this)),this.hammer.on("drag",this._onDrag.bind(this)),this.hammer.on("dragend",this._onDragEnd.bind(this)),this.hammer.on("tap",this._onSelectItem.bind(this)),this.hammer.on("hold",this._onMultiSelectItem.bind(this)),this.hammer.on("doubletap",this._onAddItem.bind(this)),this.show()},s.prototype.setOptions=function(t){if(t){var e=["type","align","order","padding","stack","selectable","groupOrder","dataAttributes","template","hide","snap"];n.selectiveExtend(e,this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation=t.orientation:"object"==typeof t.orientation&&"item"in t.orientation&&(this.options.orientation=t.orientation.item)),"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(t){this.groupIds=[],this.stackDirty=!0,t&&t.refreshItems&&n.forEach(this.items,function(t){t.dirty=!0,t.displayed&&t.redraw()})},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,g=t.axis+t.item.vertical;return this.groups[v].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,g),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[g];return i||null},s.prototype._updateUngrouped=function(){{var t,e,i=this.groups[g];this.groups[v]}if(this.groupsData){if(i){i.hide(),delete this.groups[g];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 l(n,r,this),this.groups[g]=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?v:this.groupsData?t.group:g},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==g||t==v)throw new Error("Illegal group id. "+t+" is a reserved id.");var o=Object.create(e.options);n.extend(o,{height:null}),s=new l(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?Math.max.apply(null,i)+1:1):(this.customBarIds.forEach(function(t){if(t===e)throw new Error("Custom time ID already exists")}),o=e),this.customBarIds.push(o),s=new l(this.body,{showCustomTime:!0,time:n,id:o}),this.components.push(s),this.redraw(),o},s.prototype.removeCustomTime=function(t){var e=this;this.components.forEach(function(i,s,o){i instanceof l&&i.options.id===t&&0!==i.options.id&&(e.customBarIds.splice(e.customBarIds.indexOf(t),1),o.splice(s,1),i.destroy())})},s.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]},s.prototype.clear=function(t){(!t||t.items)&&this.setItems(null),(!t||t.groups)&&this.setGroups(null),(!t||t.options)&&(this.components.forEach(function(t){t.setOptions(t.defaultOptions)}),this.setOptions(this.defaultOptions))},s.prototype.fit=function(t){var e=this._getDataRange();if(null!==e.start||null!==e.end){var i=t&&void 0!==t.animate?t.animate:!0;this.range.setRange(e.start,e.end,i)}},s.prototype._getDataRange=function(){var t=this.getItemRange(),e=t.min,i=t.max;if(null!=e&&null!=i){var s=i.valueOf()-e.valueOf();0>=s&&(s=864e5),e=new Date(e.valueOf()-.05*s),i=new Date(i.valueOf()+.05*s)}return{start:e,end:i}},s.prototype.setWindow=function(t,e,i){var s;if(1==arguments.length){var o=arguments[0];s=void 0!==o.animate?o.animate:!0,this.range.setRange(o.start,o.end,s)}else s=i&&void 0!==i.animate?i.animate:!0,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(){this._redraw()},s.prototype._redraw=function(){var t=!1,e=this.options,i=this.props,s=this.dom;if(s){d.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),h=i.top.height+a+i.bottom.height+o+i.border.top+i.border.bottom;s.root.style.height=r.option.asSize(e.height,h+"px"),i.root.height=s.root.offsetHeight,i.background.height=i.root.height-o;var l=i.root.height-i.top.height-i.bottom.height-o;i.centerContainer.height=l,i.leftContainer.height=l,i.rightContainer.height=i.leftContainer.height,i.root.width=s.root.offsetWidth,i.background.width=i.root.width-n,i.left.width=s.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=s.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var c=i.root.width-i.left.width-i.right.width-n;i.center.width=c,i.centerContainer.width=c,i.top.width=c,i.bottom.width=c,s.background.style.height=i.background.height+"px",s.backgroundVertical.style.height=i.background.height+"px",s.backgroundHorizontal.style.height=i.centerContainer.height+"px",s.centerContainer.style.height=i.centerContainer.height+"px",s.leftContainer.style.height=i.leftContainer.height+"px",s.rightContainer.style.height=i.rightContainer.height+"px",s.background.style.width=i.background.width+"px",s.backgroundVertical.style.width=i.centerContainer.width+"px",s.backgroundHorizontal.style.width=i.background.width+"px",s.centerContainer.style.width=i.center.width+"px",s.top.style.width=i.top.width+"px",s.bottom.style.width=i.bottom.width+"px",s.background.style.left="0",s.background.style.top="0",s.backgroundVertical.style.left=i.left.width+i.border.left+"px",s.backgroundVertical.style.top="0",s.backgroundHorizontal.style.left="0",s.backgroundHorizontal.style.top=i.top.height+"px",s.centerContainer.style.left=i.left.width+"px",s.centerContainer.style.top=i.top.height+"px",s.leftContainer.style.left="0",s.leftContainer.style.top=i.top.height+"px",s.rightContainer.style.left=i.left.width+i.center.width+"px",s.rightContainer.style.top=i.top.height+"px",s.top.style.left=i.left.width+"px",s.top.style.top="0",s.bottom.style.left=i.left.width+"px",s.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var p=this.props.scrollTop;"bottom"==e.orientation&&(p+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),s.center.style.left="0",s.center.style.top=p+"px",s.left.style.left="0",s.left.style.top=p+"px",s.right.style.left="0",s.right.style.top=p+"px";var u=0==this.props.scrollTop?"hidden":"",m=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";if(s.shadowTop.style.visibility=u,s.shadowBottom.style.visibility=m,s.shadowTopLeft.style.visibility=u,s.shadowBottomLeft.style.visibility=m,s.shadowTopRight.style.visibility=u,s.shadowBottomRight.style.visibility=m,this.components.forEach(function(e){t=e.redraw()||t}),t){var f=3;this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTopt[s].y?t[s].y:e,i=i0){var r,a,h=Number(i.svg.style.height.replace("px",""));if(r=o.getSVGElement("path",i.svgElements,i.svg),r.setAttributeNS(null,"class",e.className),void 0!==e.style&&r.setAttributeNS(null,"style",e.style),a=1==e.options.catmullRom.enabled?s._catmullRom(t,e):s._linear(t),1==e.options.shaded.enabled){var d,l=o.getSVGElement("path",i.svgElements,i.svg);d="top"==e.options.shaded.orientation?"M"+t[0].x+",0 "+a+"L"+t[t.length-1].x+",0":"M"+t[0].x+","+h+" "+a+"L"+t[t.length-1].x+","+h,l.setAttributeNS(null,"class",e.className+" fill"),void 0!==e.options.shaded.style&&l.setAttributeNS(null,"style",e.options.shaded.style),l.setAttributeNS(null,"d",d)}r.setAttributeNS(null,"d","M"+a),1==e.options.drawPoints.enabled&&n.draw(t,e,i)}},s._catmullRomUniform=function(t){for(var e,i,s,o,n,r,a=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",h=1/6,d=t.length,l=0;d-1>l;l++)e=0==l?t[0]:t[l-1],i=t[l],s=t[l+1],o=d>l+2?t[l+2]:s,n={x:(-e.x+6*i.x+s.x)*h,y:(-e.y+6*i.y+s.y)*h},r={x:(i.x+6*s.x-o.x)*h,y:(i.y+6*s.y-o.y)*h},a+="C"+n.x+","+n.y+" "+r.x+","+r.y+" "+s.x+","+s.y+" ";return a},s._catmullRom=function(t,e){var i=e.options.catmullRom.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);for(var s,o,n,r,a,h,d,l,c,p,u,m,f,g,v,y,b,_,x,w=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",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&&(n=Math.min(n,Math.abs(c[d-1].x-r))),a=s._getSafeDrawData(n,h,m);else{var g=d+(p[r].amount-p[r].resolved),v=d-(p[r].resolved+1);g0&&(n=Math.min(n,Math.abs(c[v].x-r))),a=s._getSafeDrawData(n,h,m),p[r].resolved+=1,"stack"==h.options.barChart.handleOverlap?(f=p[r].accumulated,p[r].accumulated+=h.zeroPosition-c[d].y):"sideBySide"==h.options.barChart.handleOverlap&&(a.width=a.width/p[r].amount,a.offset+=p[r].resolved*a.width-.5*a.width*(p[r].amount+1),"left"==h.options.barChart.align?a.offset-=.5*a.width:"right"==h.options.barChart.align&&(a.offset+=.5*a.width))}o.drawBar(c[d].x+a.offset,c[d].y-f,a.width,h.zeroPosition-c[d].y,h.className+" bar",i.svgElements,i.svg),1==h.options.drawPoints.enabled&&o.drawPoint(c[d].x+a.offset,c[d].y,h,i.svgElements,i.svg,c[d].label)}},s._getDataIntersections=function(t,e){for(var i,s=0;s0&&(i=Math.min(i,Math.abs(e[s-1].x-e[s].x))),0==i&&(void 0===t[e[s].x]&&(t[e[s].x]={amount:0,resolved:0,accumulated:0}),t[e[s].x].amount+=1)},s._getSafeDrawData=function(t,e,i){var s,o;return t0?(s=i>t?i:t,o=0,"left"==e.options.barChart.align?o-=.5*t:"right"==e.options.barChart.align&&(o+=.5*t)):(s=e.options.barChart.width,o=0,"left"==e.options.barChart.align?o-=.5*e.options.barChart.width:"right"==e.options.barChart.align&&(o+=.5*e.options.barChart.width)),{width:s,offset:o}},s.getStackedBarYRange=function(t,e,i,o,n){if(t.length>0){t.sort(function(t,e){return t.x==e.x?t.groupId-e.groupId:t.x-e.x});var r={};s._getDataIntersections(r,t),e[o]=s._getStackedBarYRange(r,t),e[o].yAxisOrientation=n,i.push(o)}},s._getStackedBarYRange=function(t,e){for(var i,s=e[0].y,o=e[0].y,n=0;ne[n].y?e[n].y:s,o=ot[r].accumulated?t[r].accumulated:s,o=ot[s].y?t[s].y:e,i=is;s++){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){return t?o(t):void 0}function o(t){for(var e in s.prototype)t[e]=s.prototype[e];return t}t.exports=s,s.prototype.on=s.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},s.prototype.once=function(t,e){function i(){s.off(t,i),e.apply(this,arguments)}var s=this;return this._callbacks=this._callbacks||{},i.fn=e,this.on(t,i),this},s.prototype.off=s.prototype.removeListener=s.prototype.removeAllListeners=s.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var i=this._callbacks[t];if(!i)return this;if(1==arguments.length)return delete this._callbacks[t],this;for(var s,o=0;os;++s)i[s].apply(this,e)}return this},s.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},s.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e,i){var s,o,n;!function(i,r){o=[],s=r,n="function"==typeof s?s.apply(e,o):s,!(void 0!==n&&(t.exports=n))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,s=t&&t.container||window,o={},n={keydown:{},keyup:{}},r={};for(e=97;122>=e;e++)r[String.fromCharCode(e)]={code:65+(e-97),shift:!1};for(e=65;90>=e;e++)r[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;9>=e;e++)r[""+e]={code:48+e,shift:!1};for(e=1;12>=e;e++)r["F"+e]={code:111+e,shift:!1};for(e=0;9>=e;e++)r["num"+e]={code:96+e,shift:!1};r["num*"]={code:106,shift:!1},r["num+"]={code:107,shift:!1},r["num-"]={code:109,shift:!1},r["num/"]={code:111,shift:!1},r["num."]={code:110,shift:!1},r.left={code:37,shift:!1},r.up={code:38,shift:!1},r.right={code:39,shift:!1},r.down={code:40,shift:!1},r.space={code:32,shift:!1},r.enter={code:13,shift:!1},r.shift={code:16,shift:void 0},r.esc={code:27,shift:!1},r.backspace={code:8,shift:!1},r.tab={code:9,shift:!1},r.ctrl={code:17,shift:!1},r.alt={code:18,shift:!1},r["delete"]={code:46,shift:!1},r.pageup={code:33,shift:!1},r.pagedown={code:34,shift:!1},r["="]={code:187,shift:!1},r["-"]={code:189,shift:!1},r["]"]={code:221,shift:!1},r["["]={code:219,shift:!1};var a=function(t){d(t,"keydown")},h=function(t){d(t,"keyup")},d=function(t,e){if(void 0!==n[e][t.keyCode]){for(var s=n[e][t.keyCode],o=0;o0||s.length>0)&&this.body.emitter.emit("select",{items:r})}},s.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.options.snap||null,s=this.itemFromTarget(t);if(s){var o=e.itemsData.get(s.id);this.options.onUpdate(o,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var r=n.getAbsoluteLeft(this.dom.frame),a=t.gesture.center.pageX-r,h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),c={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var p=this.body.util.toTime(a+this.props.width/5);c.end=i?i(p,d,l):p}c[this.itemsData._fieldId]=n.randomUUID();var u=this.groupFromTarget(t);u&&(c.group=u.groupId),this.options.onAdd(c,function(t){t&&e.itemsData.getDataSet().add(t)})}}},s.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e,i=this.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&&!(a instanceof f)&&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.prototype.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},s.prototype.groupFromTarget=function(t){for(var e=t.gesture?t.gesture.center.pageY:t.pageY,i=0;ia&&ea)return o}else if(0===i&&e "));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.updateSVGheight=!1,this.updateSVGheightOnResize=!1;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e,s){i._onAdd(e.items)},update:function(t,e,s){i._onUpdate(e.items)},remove:function(t,e,s){i._onRemove(e.items)}},this.groupListeners={add:function(t,e,s){i._onAddGroups(e.items)},update:function(t,e,s){i._onUpdateGroups(e.items)},remove:function(t,e,s){i._onRemoveGroups(e.items)}},this.items={},this.selection=[],this.lastStart=this.body.range.start,this.touchParams={},this.svgElements={},this.setOptions(e),this.groupsUsingDefaultStyles=[0],this.COUNTER=0,this.body.emitter.on("rangechanged",function(){i.lastStart=i.body.range.start,i.svg.style.left=o.option.asSize(-i.props.width),i.redraw.call(i,!0)}),this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups},this.body.emitter.emit("change")}var o=i(1),n=i(2),r=i(3),a=i(4),h=i(25),d=i(28),l=i(29),c=i(33),p=i(50),u="__ungrouped__";s.prototype=new h,s.prototype._create=function(){var t=document.createElement("div");t.className="LineGraph",this.dom.frame=t,this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="relative",this.svg.style.height=(""+this.options.graphHeight).replace("px","")+"px",this.svg.style.display="block",t.appendChild(this.svg),this.options.dataAxis.orientation="left",this.yAxisLeft=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),delete this.options.dataAxis.orientation,this.legendLeft=new c(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new c(this.body,this.options.legend,"right",this.options.groups),this.show()},s.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","height","graphHeight","yAxisOrientation","style","barChart","dataAxis","sort","groups"];void 0===t.graphHeight&&void 0!==t.height&&void 0!==this.body.domProps.centerContainer.height?(this.updateSVGheight=!0,this.updateSVGheightOnResize=!0):void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))0){var d=this.body.util.toGlobalTime(-this.body.domProps.root.width),l=this.body.util.toGlobalTime(2*this.body.domProps.root.width),c={};for(this._getRelevantData(a,c,d,l),this._applySampling(a,c),e=0;eu&&console.log("WARNING: there may be an infinite loop in the _updateGraph emitter cycle."),this.COUNTER=0,this.abortedGraphUpdate=!1,e=0;e0)for(r=0;rs){d.push(h);break}d.push(h)}}else for(a=0;ai&&h.x0)for(var s=0;s0){var n=1,r=o.length,a=this.body.util.toGlobalScreen(o[o.length-1].x)-this.body.util.toGlobalScreen(o[0].x),h=r/a;n=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=[],l=0;r>l;l+=n)d.push(o[l]);e[t[s]]=d}}},s.prototype._getYRanges=function(t,e,i){var s,o,n,r,a=[],h=[];if(t.length>0){for(n=0;n0&&(o=this.groups[t[n]],"stack"==r.barChart.handleOverlap&&"bar"==r.style?"left"==r.yAxisOrientation?a=a.concat(o.getYRange(s)):h=h.concat(o.getYRange(s)):i[t[n]]=o.getYRange(s,t[n]));p.getStackedBarYRange(a,i,t,"__barchartLeft","left"),p.getStackedBarYRange(h,i,t,"__barchartRight","right")}},s.prototype._updateYAxis=function(t,e){var i,s,o=!1,n=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var c=0;ci?i:a,d=s>d?s:d):(r=!0,h=h>i?i:h,l=s>l?s:l));1==n&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}return o=this._toggleAxisVisiblity(n,this.yAxisLeft)||o,o=this._toggleAxisVisiblity(r,this.yAxisRight)||o,1==r&&1==n?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!n,0==this.yAxisRight.master?(this.yAxisLeft.lineOffset=1==r?this.yAxisRight.width:0,o=this.yAxisLeft.redraw()||o,this.yAxisRight.stepPixelsForced=this.yAxisLeft.stepPixels,this.yAxisRight.zeroCrossing=this.yAxisLeft.zeroCrossing,o=this.yAxisRight.redraw()||o):o=this.yAxisRight.redraw()||o,-1!=t.indexOf("__barchartLeft")&&t.splice(t.indexOf("__barchartLeft"),1),-1!=t.indexOf("__barchartRight")&&t.splice(t.indexOf("__barchartRight"),1),o},s.prototype._toggleAxisVisiblity=function(t,e){var i=!1;return 0==t?e.dom.frame.parentNode&&0==e.hidden&&(e.hide(),i=!0):e.dom.frame.parentNode||1!=e.hidden||(e.show(),i=!0),i},s.prototype._convertXcoordinates=function(t){for(var e,i,s=[],o=this.body.util.toScreen,n=0;ny;)y++,l=h.getCurrent(),c=h.isMajor(),u=h.getClassName(),f=m,m=this.body.util.toScreen(l),g=m-f,p&&(p.style.width=g+"px"),this.options.showMinorLabels&&this._repaintMinorText(m,h.getLabelMinor(),t,u),c&&this.options.showMajorLabels?(m>0&&(void 0==v&&(v=m),this._repaintMajorText(m,h.getLabelMajor(),t,u)),p=this._repaintMajorLine(m,t,u)):p=this._repaintMinorLine(m,t,u),h.next();if(this.options.showMajorLabels){var b=this.body.util.toTime(0),_=h.getLabelMajor(b),x=_.length*(this.props.majorCharWidth||10)+10;(void 0==v||v>x)&&this._repaintMajorText(0,_,t,u)}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,s){var o=this.dom.redundant.minorTexts.shift();if(!o){var n=document.createTextNode("");o=document.createElement("div"),o.appendChild(n),this.dom.foreground.appendChild(o)}this.dom.minorTexts.push(o),o.childNodes[0].nodeValue=e,o.style.top="top"==i?this.props.majorLabelHeight+"px":"0",o.style.left=t+"px",o.className="text minor "+s},s.prototype._repaintMajorText=function(t,e,i,s){var o=this.dom.redundant.majorTexts.shift();if(!o){var n=document.createTextNode(e);o=document.createElement("div"),o.appendChild(n),this.dom.foreground.appendChild(o)}this.dom.majorTexts.push(o),o.childNodes[0].nodeValue=e,o.className="text major "+s,o.style.top="top"==i?"0":this.props.minorLabelHeight+"px",o.style.left=t+"px"},s.prototype._repaintMinorLine=function(t,e,i){var s=this.dom.redundant.lines.shift();s||(s=document.createElement("div"),this.dom.background.appendChild(s)),this.dom.lines.push(s);var o=this.props;return s.style.top="top"==e?o.majorLabelHeight+"px":this.body.domProps.top.height+"px",s.style.height=o.minorLineHeight+"px",s.style.left=t-o.minorLineWidth/2+"px",s.className="grid vertical minor "+i,s},s.prototype._repaintMajorLine=function(t,e,i){var s=this.dom.redundant.lines.shift();s||(s=document.createElement("div"),this.dom.background.appendChild(s)),this.dom.lines.push(s);var o=this.props;return s.style.top="top"==e?"0":this.body.domProps.top.height+"px",s.style.left=t-o.majorLineWidth/2+"px",s.style.height=o.majorLineHeight+"px",s.className="grid vertical major "+i,s},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},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._determineBrowserMethod(),this._initializeMixinLoaders(),this.containerElement=t,this.renderRefreshRate=60,this.renderTimestep=1e3/this.renderRefreshRate,this.renderTime=0,this.physicsTime=0,this.runDoubleSpeed=!1,this.physicsDiscreteStepsize=.5,this.initializing=!0,this.triggerFunctions={add:null,edit:null,editEdge:null,connect:null,del:null};var o=function(t,e,i,s){if(e==t)return.5;var o=1/(e-t);return Math.max(0,(s-t)*o)};this.defaultOptions={nodes:{customScalingFunction:o,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,fontStrokeWidth:0,fontStrokeColor:"#ffffff",fontDrawThreshold:3,scaleFontWithValue:!1,fontSizeMin:14,fontSizeMax:30,fontSizeMaxVisible:30,level:-1,color:{border:"#2B7CE9",background:"#97C2FC",highlight:{border:"#2B7CE9",background:"#D2E5FF"},hover:{border:"#2B7CE9",background:"#D2E5FF"}},group:void 0,borderWidth:1,borderWidthSelected:void 0},edges:{customScalingFunction:o,widthMin:1,widthMax:15,width:1,widthSelectionMultiplier:2,hoverWidth:1.5,style:"line",color:{color:"#848484",highlight:"#848484",hover:"#848484"},opacity:1,fontColor:"#343434",fontSize:14,fontFace:"arial",fontFill:"white",fontStrokeWidth:0,fontStrokeColor:"white",labelAlignment:"horizontal",arrowScaleFactor:1,dash:{length:10,gap:5,altLength:void 0},inheritColor:"from",useGradients:!1},configurePhysics:!1,physics:{barnesHut:{enabled:!0,thetaInverted:2,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09},repulsion:{centralGravity:0,springLength:200,springConstant:.05,nodeDistance:100,damping:.09},hierarchicalRepulsion:{enabled:!1,centralGravity:0,springLength:100,springConstant:.01,nodeDistance:150,damping:.09},damping:null,centralGravity:null,springLength:null,springConstant:null},clustering:{enabled:!1,initialMaxNodes:100,clusterThreshold:500,reduceToNodes:300,chainThreshold:.4,clusterEdgeThreshold:20,sectorThreshold:100,screenSizeThreshold:.2,fontSizeMultiplier:4,maxFontSize:1e3,forceAmplification:.1,distanceAmplification:.1,edgeGrowth:20,nodeScaling:{width:1,height:1,radius:1},maxNodeSizeIncrements:600,
+activeAreaBoxSize:80,clusterLevelDifference:2,clusterByZoom:!0},navigation:{enabled:!1},keyboard:{enabled:!1,speed:{x:10,y:10,zoom:.02},bindToWindow:!0},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:50,minVelocity:.1,stabilize:!0,stabilizationIterations:1e3,zoomExtentOnStabilize:!0,locale:"en",locales:_,tooltip:{delay:300,fontColor:"black",fontSize:14,fontFace:"verdana",color:{border:"#666",background:"#FFFFC6"}},dragNetwork:!0,dragNodes:!0,zoomable:!0,hover:!1,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,width:"100%",height:"100%",selectable:!0,useDefaultGroups:!0},this.constants=a.extend({},this.defaultOptions),this.pixelRatio=1,this.hoverObj={nodes:{},edges:{}},this.controlNodesActive=!1,this.navigationHammers=[],this.manipulationHammers=[],this.animationSpeed=1/this.renderRefreshRate,this.animationEasingFunction="easeInOutQuint",this.animating=!1,this.easingTime=0,this.sourceScale=0,this.targetScale=0,this.sourceTranslation=0,this.targetTranslation=0,this.lockedOnNodeId=null,this.lockedOnNodeOffset=null,this.touchTime=0,this.redrawRequested=!1;var n=this;this.groups=new u,this.images=new m,this.images.setOnloadCallback(function(t){n._requestRedraw()}),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.freezeSimulationEnabled=!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){n._addNodes(e.items),n.start()},update:function(t,e){n._updateNodes(e.items),n.start()},remove:function(t,e){n._removeNodes(e.items),n.start()}},this.edgesListeners={add:function(t,e){n._addEdges(e.items),n.start()},update:function(t,e){n._updateEdges(e.items),n.start()},remove:function(t,e){n._removeEdges(e.items),n.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({duration: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(52),b=i(53),_=i(54);i(55),o(s.prototype),s.prototype._determineBrowserMethod=function(){var t=navigator.userAgent.toLowerCase();this.requiresTimeout=!1,-1!=t.indexOf("msie 9.0")?this.requiresTimeout=!0:-1!=t.indexOf("safari")&&t.indexOf("chrome")<=-1&&(this.requiresTimeout=!0)},s.prototype._getScriptPath=function(){for(var t=document.getElementsByTagName("script"),e=0;e0)for(var r=0;re.boundingBox.left&&(o=e.boundingBox.left),ne.boundingBox.bottom&&(i=e.boundingBox.top),se.boundingBox.left&&(o=e.boundingBox.left),ne.boundingBox.bottom&&(i=e.boundingBox.top),s.5*this.nodeIndices.length)return void this.zoomExtent(t,!1,i);s=this._getRange(t.nodes);var h=this.nodeIndices.length;o=1==this.constants.smoothCurves?1==this.constants.clustering.enabled&&h>=this.constants.clustering.initialMaxNodes?49.07548/(h+142.05338)+91444e-8:12.662/(h+7.4147)+.0964822:1==this.constants.clustering.enabled&&h>=this.constants.clustering.initialMaxNodes?77.5271985/(h+187.266146)+476710517e-13:30.5062972/(h+19.93597763)+.08413486;var d=Math.min(this.frame.canvas.clientWidth/600,this.frame.canvas.clientHeight/600);o*=d}else{s=this._getRange(t.nodes);var l=1.1*Math.abs(s.maxX-s.minX),c=1.1*Math.abs(s.maxY-s.minY),p=this.frame.canvas.clientWidth/l,u=this.frame.canvas.clientHeight/c;o=u>=p?p:u}o>1&&(o=1);var m=this._findCenter(s);if(0==i){var t={position:m,scale:o,animation:t};this.moveTo(t),this.moving=!0,this.start()}else m.x*=o,m.y*=o,m.x-=.5*this.frame.canvas.clientWidth,m.y-=.5*this.frame.canvas.clientHeight,this._setScale(o),this._setTranslation(-m.x,-m.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._unselectAll(!0),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(1==this.constants.dataManipulation.enabled&&this._createManipulatorBar(),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()):1==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),this.groups.useDefaultGroups=this.constants.useDefaultGroups,t.physics&&(a.mergeOptions(this.constants.physics,t.physics,"barnesHut"),a.mergeOptions(this.constants.physics,t.physics,"repulsion"),t.physics.hierarchicalRepulsion)){this.constants.hierarchicalLayout.enabled=!0,this.constants.physics.hierarchicalRepulsion.enabled=!0,this.constants.physics.barnesHut.enabled=!1;for(e in t.physics.hierarchicalRepulsion)t.physics.hierarchicalRepulsion.hasOwnProperty(e)&&(this.constants.physics.hierarchicalRepulsion[e]=t.physics.hierarchicalRepulsion[e])}if(t.onAdd&&(this.triggerFunctions.add=t.onAdd),t.onEdit&&(this.triggerFunctions.edit=t.onEdit),t.onEditEdge&&(this.triggerFunctions.editEdge=t.onEditEdge),t.onConnect&&(this.triggerFunctions.connect=t.onConnect),t.onDelete&&(this.triggerFunctions.del=t.onDelete),a.mergeOptions(this.constants,t,"smoothCurves"),a.mergeOptions(this.constants,t,"hierarchicalLayout"),a.mergeOptions(this.constants,t,"clustering"),a.mergeOptions(this.constants,t,"navigation"),a.mergeOptions(this.constants,t,"keyboard"),a.mergeOptions(this.constants,t,"dataManipulation"),t.dataManipulation&&(this.editMode=this.constants.dataManipulation.initiallyVisible),t.edges&&(void 0!==t.edges.color&&(a.isString(t.edges.color)?(this.constants.edges.color={},this.constants.edges.color.color=t.edges.color,this.constants.edges.color.highlight=t.edges.color,this.constants.edges.color.hover=t.edges.color):(void 0!==t.edges.color.color&&(this.constants.edges.color.color=t.edges.color.color),void 0!==t.edges.color.highlight&&(this.constants.edges.color.highlight=t.edges.color.highlight),void 0!==t.edges.color.hover&&(this.constants.edges.color.hover=t.edges.color.hover)),this.constants.edges.inheritColor=!1),t.edges.fontColor||void 0!==t.edges.color&&(a.isString(t.edges.color)?this.constants.edges.fontColor=t.edges.color:void 0!==t.edges.color.color&&(this.constants.edges.fontColor=t.edges.color.color))),t.nodes&&t.nodes.color){var s=a.parseColor(t.nodes.color);this.constants.nodes.color.background=s.background,this.constants.nodes.color.border=s.border,this.constants.nodes.color.highlight.background=s.highlight.background,this.constants.nodes.color.highlight.border=s.highlight.border,this.constants.nodes.color.hover.background=s.hover.background,this.constants.nodes.color.hover.border=s.hover.border}if(t.groups)for(var o in t.groups)if(t.groups.hasOwnProperty(o)){var n=t.groups[o];this.groups.add(o,n)}if(t.tooltip){for(e in t.tooltip)t.tooltip.hasOwnProperty(e)&&(this.constants.tooltip[e]=t.tooltip[e]);t.tooltip.color&&(this.constants.tooltip.color=a.parseColor(t.tooltip.color))}if("clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new b(this.frame),this.activator.on("change",this._createKeyBinds.bind(this))):this.activator&&(this.activator.destroy(),delete this.activator)),t.labels)throw new Error('Option "labels" is deprecated. Use options "locale" and "locales" instead.');this._loadPhysicsSystem(),this._loadNavigationControls(),this._loadManipulationSystem(),this._configureSmoothCurves(),this._bindHammer(),this._createKeyBinds(),this._markAllEdgesAsDirty(),this.setSize(this.constants.width,this.constants.height),this.moving=!0,1==this.constants.hierarchicalLayout.enabled&&0==this.initializing&&(this._resetLevels(),this._setupHierarchicalLayout()),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.tabIndex=900,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this._bindHammer()},s.prototype._bindHammer=function(){var t=this;void 0!==this.hammer&&this.hammer.dispose(),this.drag={},this.pinch={},this.hammer=n(this.frame.canvas,{prevent_default:!0}),this.hammer.on("tap",t._onTap.bind(t)),this.hammer.on("doubletap",t._onDoubleTap.bind(t)),this.hammer.on("hold",t._onHold.bind(t)),this.hammer.on("touch",t._onTouch.bind(t)),this.hammer.on("dragstart",t._onDragStart.bind(t)),this.hammer.on("drag",t._onDrag.bind(t)),this.hammer.on("dragend",t._onDragEnd.bind(t)),1==this.constants.zoomable&&(this.hammer.on("mousewheel",t._onMouseWheel.bind(t)),this.hammer.on("DOMMouseScroll",t._onMouseWheel.bind(t)),this.hammer.on("pinch",t._onPinch.bind(t))),this.hammer.on("mousemove",t._onMouseMoveTitle.bind(t)),this.hammerFrame=n(this.frame,{prevent_default:!0}),this.hammerFrame.on("release",t._onRelease.bind(t)),this.containerElement.appendChild(this.frame)},s.prototype._createKeyBinds=function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=r(1==this.constants.keyboard.bindToWindow?{container:window,preventDefault:!1}:{container:this.frame,preventDefault:!1}),this.keycharm.reset(),this.constants.keyboard.enabled&&this.isActive()&&(this.keycharm.bind("up",this._moveUp.bind(t),"keydown"),this.keycharm.bind("up",this._yStopMoving.bind(t),"keyup"),this.keycharm.bind("down",this._moveDown.bind(t),"keydown"),this.keycharm.bind("down",this._yStopMoving.bind(t),"keyup"),this.keycharm.bind("left",this._moveLeft.bind(t),"keydown"),this.keycharm.bind("left",this._xStopMoving.bind(t),"keyup"),this.keycharm.bind("right",this._moveRight.bind(t),"keydown"),this.keycharm.bind("right",this._xStopMoving.bind(t),"keyup"),this.keycharm.bind("=",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("=",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("num+",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("num+",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("num-",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("num-",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("-",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("-",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("[",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("[",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("]",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("]",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("pageup",this._zoomIn.bind(t),"keydown"),this.keycharm.bind("pageup",this._stopZoom.bind(t),"keyup"),this.keycharm.bind("pagedown",this._zoomOut.bind(t),"keydown"),this.keycharm.bind("pagedown",this._stopZoom.bind(t),"keyup")),1==this.constants.dataManipulation.enabled&&(this.keycharm.bind("esc",this._createManipulatorBar.bind(t)),this.keycharm.bind("delete",this._deleteSelected.bind(t)))},s.prototype.destroy=function(){this.start=function(){},this.redraw=function(){},this.timer=!1,this._cleanupPhysicsConfiguration(),this.keycharm.reset(),this.hammer.dispose(),this.off(),this._recursiveDOMDelete(this.containerElement)},s.prototype._recursiveDOMDelete=function(t){for(;1==t.hasChildNodes();)this._recursiveDOMDelete(t.firstChild),t.removeChild(t.firstChild)},s.prototype._getPointer=function(t){return{x:t.pageX-a.getAbsoluteLeft(this.frame.canvas),y:t.pageY-a.getAbsoluteTop(this.frame.canvas)}},s.prototype._onTouch=function(t){(new Date).valueOf()-this.touchTime>100&&(this.drag.pointer=this._getPointer(t.gesture.center),this.drag.pinched=!1,this.pinch.scale=this._getScale(),this.touchTime=(new Date).valueOf(),this._handleTouch(this.drag.pointer))},s.prototype._onDragStart=function(t){this._handleDragStart(t)},s.prototype._handleDragStart=function(t){void 0===this.drag.pointer&&this._onTouch(t);var e=this._getNodeAt(this.drag.pointer);if(this.drag.dragging=!0,this.drag.selection=[],this.drag.translation=this._getTranslation(),this.drag.nodeId=null,this.draggingNodes=!1,null!=e&&1==this.constants.dragNodes){this.draggingNodes=!0,this.drag.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,this.drag.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){if(void 0===this.drag.pointer)return void this._handleDragStart(t);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(t){this.drag.dragging=!1;var e=this.drag.selection;e&&e.length?(e.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),s=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(s=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),0==this.constants.keyboard.bindToWindow&&1==this.constants.keyboard.enabled&&this.frame.focus(),s===!1){var o=this,n=function(){o._checkShowPopup(i)};this.popupTimer&&clearInterval(this.popupTimer),this.drag.dragging||(this.popupTimer=setTimeout(n,this.constants.tooltip.delay))}if(1==this.constants.hover){for(var r in this.hoverObj.edges)this.hoverObj.edges.hasOwnProperty(r)&&(this.hoverObj.edges[r].hover=!1,delete this.hoverObj.edges[r]);var a=this._getNodeAt(i);null==a&&(a=this._getEdgeAt(i)),null!=a&&this._hoverObject(a);for(var d in this.hoverObj.nodes)this.hoverObj.nodes.hasOwnProperty(d)&&(a instanceof f&&a.id!=d||a instanceof g||null==a)&&(this._blurObject(this.hoverObj.nodes[d]),delete this.hoverObj.nodes[d]);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=void 0===this.popupObj?"":this.popupObj.id,o=!1,n="node";if(void 0==this.popupObj){var r=this.nodes,a=[];for(e in r)if(r.hasOwnProperty(e)){var h=r[e];h.isOverlappingWith(i)&&void 0!==h.getTitle()&&a.push(e)}a.length>0&&(this.popupObj=this.nodes[a[a.length-1]],o=!0)}if(void 0===this.popupObj&&0==o){var d=this.edges,l=[];for(e in d)if(d.hasOwnProperty(e)){var c=d[e];c.connected&&void 0!==c.getTitle()&&c.isOverlappingWith(i)&&l.push(e)}l.length>0&&(this.popupObj=this.edges[l[l.length-1]],n="edge")}this.popupObj?this.popupObj.id!=s&&(void 0===this.popup&&(this.popup=new v(this.frame,this.constants.tooltip)),this.popup.popupTargetType=n,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(t.x+3,t.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show()):this.popup&&this.popup.hide()},s.prototype._checkHidePopup=function(t){var e={left:this._XconvertDOMtoCanvas(t.x),top:this._YconvertDOMtoCanvas(t.y),right:this._XconvertDOMtoCanvas(t.x),bottom:this._YconvertDOMtoCanvas(t.y)},i=!1;if("node"==this.popup.popupTargetType){if(i=this.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0){var s=this._getNodeAt(t);i=s.id==this.popup.popupTargetId}}else null===this._getNodeAt(t)&&(i=this.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide())},s.prototype.setSize=function(t,e){var i=!1,s=this.frame.canvas.width,o=this.frame.canvas.height;t!=this.constants.width||e!=this.constants.height||this.frame.style.width!=t||this.frame.style.height!=e?(this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=this.frame.canvas.clientWidth*this.pixelRatio,this.frame.canvas.height=this.frame.canvas.clientHeight*this.pixelRatio,this.constants.width=t,this.constants.height=e,i=!0):(this.frame.canvas.width!=this.frame.canvas.clientWidth*this.pixelRatio&&(this.frame.canvas.width=this.frame.canvas.clientWidth*this.pixelRatio,i=!0),this.frame.canvas.height!=this.frame.canvas.clientHeight*this.pixelRatio&&(this.frame.canvas.height=this.frame.canvas.clientHeight*this.pixelRatio,i=!0)),1==i&&this.emit("resize",{width:this.frame.canvas.width*this.pixelRatio,height:this.frame.canvas.height*this.pixelRatio,oldWidth:s*this.pixelRatio,oldHeight:o*this.pixelRatio})},s.prototype._setNodes=function(t){var e=this.nodesData;if(t instanceof d||t instanceof l)this.nodesData=t;else if(Array.isArray(t))this.nodesData=new d,this.nodesData.add(t);else{if(t)throw new TypeError("Array or DataSet expected");this.nodesData=new d}if(e&&a.forEach(this.nodesListeners,function(t,i){e.off(i,t)}),this.nodes={},this.nodesData){var i=this;a.forEach(this.nodesListeners,function(t,e){i.nodesData.on(e,t)});var s=this.nodesData.getIds();this._addNodes(s)}this._updateSelection()},s.prototype._addNodes=function(t){for(var e,i=this.nodesData._fieldId||null,s=0,o=t.length;o>s;s++){e=t[s];var n=this.nodesData.get(e);i&&(n.id=n[i]);var r=new f(n,this.images,this.groups,this.constants);if(this.nodes[e]=r,!(0!=r.xFixed&&0!=r.yFixed||null!==r.x&&null!==r.y)){var a=1*t.length+10,h=2*Math.PI*Math.random();0==r.xFixed&&(r.x=a*Math.cos(h)),0==r.yFixed&&(r.y=a*Math.sin(h))}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){for(var e=this.nodesData.get(t),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),this._markAllEdgesAsDirty()},s.prototype._markAllEdgesAsDirty=function(){for(var t in this.edges)this.edges[t].colorDirty=!0},s.prototype._removeNodes=function(t){for(var e=this.nodes,i=0,s=t.length;s>i;i++)void 0!==this.selectionObj.nodes[t[i]]&&(this.nodes[t[i]].unselect(),this._removeFromSelection(this.nodes[t[i]]));for(var 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=this.edgesData._fieldId,o=0,n=t.length;n>o;o++){var r=t[o],a=e[r];a&&a.disconnect();var h=i.get(r,{showInternalIds:!0});s&&(h.id=h[s]),e[r]=new g(h,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++)void 0!==this.selectionObj.edges[t[i]]&&(e[t[i]].unselect(),this._removeFromSelection(e[t[i]]));for(var 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,o=0;for(e in t)if(t.hasOwnProperty(e)){var n=t[e].getValue();void 0!==n&&(i=void 0===i?n:Math.min(n,i),s=void 0===s?n:Math.max(n,s),o+=n)}if(void 0!==i&&void 0!==s)for(e in t)t.hasOwnProperty(e)&&t[e].setValueRange(i,s,o)},s.prototype.redraw=function(){this.setSize(this.constants.width,this.constants.height),this._redraw()},s.prototype._requestRedraw=function(t){this.redrawRequested!==!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(this._redraw.bind(this,t),0):window.requestAnimationFrame(this._redraw.bind(this,t,!0)))},s.prototype._redraw=function(t,e){void 0===t&&(t=!1),this.redrawRequested=!1;var i=this.frame.canvas.getContext("2d");i.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var s=this.frame.canvas.clientWidth,o=this.frame.canvas.clientHeight;i.clearRect(0,0,s,o),i.save(),i.translate(this.translation.x,this.translation.y),i.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)},t===!1&&(this._doInAllSectors("_drawAllSectorNodes",i),(0==this.drag.dragging||void 0===this.drag.dragging||0==this.constants.hideEdgesOnDrag)&&this._doInAllSectors("_drawEdges",i)),(0==this.drag.dragging||void 0===this.drag.dragging||0==this.constants.hideNodesOnDrag)&&this._doInAllSectors("_drawNodes",i,!1),t===!1&&1==this.controlNodesActive&&this._doInAllSectors("_drawControlNodes",i),i.restore(),t===!0&&i.clearRect(0,0,s,o)},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._revertPhysicsState=function(){var t=this.nodes;for(var e in t)t.hasOwnProperty(e)&&t[e].revertPosition()},s.prototype._revertPhysicsTick=function(){this._doInAllActiveSectors("_revertPhysicsState"),1==this.constants.smoothCurves.enabled&&1==this.constants.smoothCurves.dynamic&&this._doInSupportSector("_revertPhysicsState")},s.prototype._physicsTick=function(){if(!this.freezeSimulationEnabled&&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;s2*e||1==this.runDoubleSpeed)&&1==this.moving&&(this._physicsTick(),0!=this.renderTime&&(this.runDoubleSpeed=!0))}var i=Date.now();this._redraw(),this.renderTime=Date.now()-i,0==this.requiresTimeout&&this.start()},"undefined"!=typeof window&&(window.requestAnimationFrame=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame),
+s.prototype.start=function(){if(1==this.freezeSimulationEnabled&&(this.moving=!1),1==this.moving||0!=this.xIncrement||0!=this.yIncrement||0!=this.zoomIncrement||1==this.animating)this.timer||(this.timer=1==this.requiresTimeout?window.setTimeout(this._animationStep.bind(this),this.renderTimestep):window.requestAnimationFrame(this._animationStep.bind(this)));else if(this._requestRedraw(),this.stabilizationIterations>1){var t=this,e={iterations:t.stabilizationIterations};this.stabilizationIterations=0,this.startedStabilization=!1,setTimeout(function(){t.emit("stabilized",e)},0)}else this.stabilizationIterations=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.freezeSimulation=function(t){1==t?(this.freezeSimulationEnabled=!0,this.moving=!1):(this.freezeSimulationEnabled=!1,this.moving=!0,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.animating=!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})},s.prototype.getBoundingBox=function(t){return void 0!==this.nodes[t]?this.nodes[t].boundingBox:void 0},s.prototype.getConnectedNodes=function(t){var e=[];if(void 0!==this.nodes[t])for(var i=this.nodes[t],s={nodeId:!0},o=0;oh}return!1},s.prototype._getColor=function(t){var e=this.options.color;if(1==this.options.useGradients){var i,s,n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y);return i=this.from.options.color.highlight.border,s=this.to.options.color.highlight.border,0==this.from.selected&&0==this.to.selected?(i=o.overrideOpacity(this.from.options.color.border,this.options.opacity),s=o.overrideOpacity(this.to.options.color.border,this.options.opacity)):1==this.from.selected&&0==this.to.selected?s=this.to.options.color.border:0==this.from.selected&&1==this.to.selected&&(i=this.from.options.color.border),n.addColorStop(0,i),n.addColorStop(1,s),n}return this.colorDirty===!0&&("to"==this.options.inheritColor?e={highlight:this.to.options.color.highlight.border,hover:this.to.options.color.hover.border,color:o.overrideOpacity(this.from.options.color.border,this.options.opacity)}:("from"==this.options.inheritColor||1==this.options.inheritColor)&&(e={highlight:this.from.options.color.highlight.border,hover:this.from.options.color.hover.border,color:o.overrideOpacity(this.from.options.color.border,this.options.opacity)}),this.options.color=e,this.colorDirty=!1),1==this.selected?e.highlight:1==this.hover?e.hover:e.color},s.prototype._drawLine=function(t){if(t.strokeStyle=this._getColor(t),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(){if(1==this.options.smoothCurves.dynamic&&1==this.options.smoothCurves.enabled)return this.via;if(0==this.options.smoothCurves.enabled)return{x:0,y:0};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);if("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));else if("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}}var o=this.labelDimensions.yLine;t.save(),"horizontal"!=this.options.labelAlignment&&(t.translate(i,o),this._rotateForLabelAlignment(t),i=0,o=0),this._drawLabelRect(t),this._drawLabelText(t,i,o,n,r,a),t.restore()}},s.prototype._rotateForLabelAlignment=function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,s=Math.atan2(e,i);(-1>s&&0>i||s>0&&0>i)&&(s+=Math.PI),t.rotate(s)},s.prototype._drawLabelRect=function(t){if(void 0!==this.options.fontFill&&null!==this.options.fontFill&&"none"!==this.options.fontFill){t.fillStyle=this.options.fontFill;var e=2;"line-center"==this.options.labelAlignment?t.fillRect(.5*-this.labelDimensions.width,.5*-this.labelDimensions.height,this.labelDimensions.width,this.labelDimensions.height):"line-above"==this.options.labelAlignment?t.fillRect(.5*-this.labelDimensions.width,-(this.labelDimensions.height+e),this.labelDimensions.width,this.labelDimensions.height):"line-below"==this.options.labelAlignment?t.fillRect(.5*-this.labelDimensions.width,e,this.labelDimensions.width,this.labelDimensions.height):t.fillRect(this.labelDimensions.left,this.labelDimensions.top,this.labelDimensions.width,this.labelDimensions.height)}},s.prototype._drawLabelText=function(t,e,i,s,o,n){if(t.fillStyle=this.options.fontColor||"black",t.textAlign="center","horizontal"!=this.options.labelAlignment){var r=2;"line-above"==this.options.labelAlignment?(t.textBaseline="alphabetic",i-=2*r):"line-below"==this.options.labelAlignment?(t.textBaseline="hanging",i+=2*r):t.textBaseline="middle"}else t.textBaseline="middle";this.options.fontStrokeWidth>0&&(t.lineWidth=this.options.fontStrokeWidth,t.strokeStyle=this.options.fontStrokeColor,t.lineJoin="round");for(var a=0;o>a;a++)this.options.fontStrokeWidth>0&&t.strokeText(s[a],e,i),t.fillText(s[a],e,i),i+=n},s.prototype._drawDashLine=function(t){t.strokeStyle=this._getColor(t),t.lineWidth=this._getLineWidth();var e=null;if(void 0!==t.setLineDash){t.save();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],t.setLineDash(i),t.lineDashOffset=0,e=this._line(t),t.setLineDash([0]),t.lineDashOffset=0,t.restore()}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),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._pointOnBezier=function(t){var e=this._getViaCoordinates(),i=Math.pow(1-t,2)*this.from.x+2*t*(1-t)*e.x+Math.pow(t,2)*this.to.x,s=Math.pow(1-t,2)*this.from.y+2*t*(1-t)*e.y+Math.pow(t,2)*this.to.y;return{x:i,y:s}},s.prototype._findBorderPosition=function(t,e){var i,s,o,n,r,a=10,h=0,d=0,l=1,c=.2,p=this.to;for(1==t&&(p=this.from);l>=d&&a>h;){var u=.5*(d+l);if(i=this._pointOnBezier(u),s=Math.atan2(p.y-i.y,p.x-i.x),o=p.distanceToBorder(e,s),n=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=o-n,Math.abs(r)r?0==t?d=u:l=u:0==t?l=u:d=u,h++}return i.t=u,i},s.prototype._drawArrow=function(t){t.strokeStyle=this._getColor(t),t.fillStyle=t.strokeStyle,t.lineWidth=this._getLineWidth();var e,i,s;if(this.from!=this.to){if(this._line(t),1==this.options.smoothCurves.enabled){var o=this._getViaCoordinates();s=this._findBorderPosition(!1,t);var n=this._pointOnBezier(Math.max(0,s.t-.1));e=Math.atan2(s.y-n.y,s.x-n.x)}else{e=Math.atan2(this.to.y-this.from.y,this.to.x-this.from.x);var r=this.to.x-this.from.x,a=this.to.y-this.from.y,h=Math.sqrt(r*r+a*a),d=this.to.distanceToBorder(t,e),l=(h-d)/h;s={},s.x=(1-l)*this.from.x+l*this.to.x,s.y=(1-l)*this.from.y+l*this.to.y}if(i=(10+5*this.options.width)*this.options.arrowScaleFactor,t.arrow(s.x,s.y,e,i),t.fill(),t.stroke(),this.label){var c;c=1==this.options.smoothCurves.enabled&&null!=o?this._pointOnBezier(.5):this._pointOnLine(.5),this._label(t,this.label,c.x,c.y)}}else{var p,u,m,f=this.from,g=.25*Math.max(100,this.physics.springLength);f.width||f.resize(t),f.width>f.height?(p=f.x+.5*f.width,u=f.y-g,m={x:p,y:f.y,angle:.9*Math.PI}):(p=f.x+g,u=f.y-.5*f.height,m={x:f.x,y:u,angle:.6*Math.PI}),t.beginPath(),t.arc(p,u,g,0,2*Math.PI,!1),t.stroke();var i=(10+5*this.options.width)*this.options.arrowScaleFactor;t.arrow(m.x,m.y,m.angle,i),t.fill(),t.stroke(),this.label&&(c=this._pointOnCircle(p,u,g,.5),this._label(t,this.label,c.x,c.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)):null!==this.via&&(this.via.x=0,this.via.y=0)},s.prototype._drawControlNodes=function(t){if(1==this.controlNodesEnabled){if(null===this.controlNodes.from&&null===this.controlNodes.to){var e="edgeIdFrom:".concat(this.id),i="edgeIdTo:".concat(this.id),s={nodes:{group:"",radius:7,borderWidth:2,borderWidthSelected:2},physics:{damping:0},clustering:{maxNodeSizeIncrements:0,nodeScaling:{width:0,height:0,radius:0}}};this.controlNodes.from=new n({id:e,shape:"dot",color:{background:"#ff0000",border:"#3c3c3c",highlight:{background:"#07f968"}}},{},{},s),this.controlNodes.to=new n({id:i,shape:"dot",color:{background:"#ff0000",border:"#3c3c3c",highlight:{background:"#07f968"}}},{},{},s)}this.controlNodes.positions={},0==this.controlNodes.from.selected&&(this.controlNodes.positions.from=this.getControlNodeFromPosition(t),this.controlNodes.from.x=this.controlNodes.positions.from.x,this.controlNodes.from.y=this.controlNodes.positions.from.y),0==this.controlNodes.to.selected&&(this.controlNodes.positions.to=this.getControlNodeToPosition(t),this.controlNodes.to.x=this.controlNodes.positions.to.x,this.controlNodes.to.y=this.controlNodes.positions.to.y),this.controlNodes.from.draw(t),this.controlNodes.to.draw(t)}else this.controlNodes={from:null,to:null,positions:{}}},s.prototype._enableControlNodes=function(){this.fromBackup=this.from,this.toBackup=this.to,this.controlNodesEnabled=!0},s.prototype._disableControlNodes=function(){this.fromId=this.from.id,this.toId=this.to.id,this.fromId!=this.fromBackup.id?this.fromBackup.detachEdge(this):this.toId!=this.toBackup.id&&this.toBackup.detachEdge(this),this.fromBackup=null,this.toBackup=null,this.controlNodesEnabled=!1},s.prototype._getSelectedControlNode=function(t,e){var i=this.controlNodes.positions,s=Math.sqrt(Math.pow(t-i.from.x,2)+Math.pow(e-i.from.y,2)),o=Math.sqrt(Math.pow(t-i.to.x,2)+Math.pow(e-i.to.y,2));return 15>s?(this.connectedNode=this.from,this.from=this.controlNodes.from,this.controlNodes.from):15>o?(this.connectedNode=this.to,this.to=this.controlNodes.to,this.controlNodes.to):null},s.prototype._restoreControlNodes=function(){1==this.controlNodes.from.selected?(this.from=this.connectedNode,this.connectedNode=null,this.controlNodes.from.unselect()):1==this.controlNodes.to.selected&&(this.to=this.connectedNode,this.connectedNode=null,this.controlNodes.to.unselect())},s.prototype.getControlNodeFromPosition=function(t){var e;if(1==this.options.smoothCurves.enabled)e=this._findBorderPosition(!0,t);else{var 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;e={},e.x=a*this.from.x+(1-a)*this.to.x,e.y=a*this.from.y+(1-a)*this.to.y}return e},s.prototype.getControlNodeToPosition=function(t){var e;if(1==this.options.smoothCurves.enabled)e=this._findBorderPosition(!1,t);else{var 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.to.distanceToBorder(t,i),a=(n-r)/n;e={},e.x=(1-a)*this.from.x+a*this.to.x,e.y=(1-a)*this.from.y+a*this.to.y}return e},t.exports=s},function(t,e,i){function s(){this.clear(),this.defaultIndex=0,this.groupsArray=[],this.groupIndex=0,this.useDefaultGroups=!0}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"}},{border:"#990000",background:"#EE0000",highlight:{border:"#BB0000",background:"#FF3333"},hover:{border:"#BB0000",background:"#FF3333"}},{border:"#FF6000",background:"#FF6000",highlight:{border:"#FF6000",background:"#FF6000"},hover:{border:"#FF6000",background:"#FF6000"}},{border:"#97C2FC",background:"#2B7CE9",highlight:{border:"#D2E5FF",background:"#2B7CE9"},hover:{border:"#D2E5FF",background:"#2B7CE9"}},{border:"#399605",background:"#255C03",highlight:{border:"#399605",background:"#255C03"},hover:{border:"#399605",background:"#255C03"}},{border:"#B70054",background:"#FF007E",highlight:{border:"#B70054",background:"#FF007E"},hover:{border:"#B70054",background:"#FF007E"}},{border:"#AD85E4",background:"#7C29F0",highlight:{border:"#D3BDF0",background:"#7C29F0"},hover:{border:"#D3BDF0",background:"#7C29F0"}},{border:"#4557FA",background:"#000EA1",highlight:{border:"#6E6EFD",background:"#000EA1"},hover:{border:"#6E6EFD",background:"#000EA1"}},{border:"#FFC0CB",background:"#FD5A77",highlight:{border:"#FFD1D9",background:"#FD5A77"},hover:{border:"#FFD1D9",background:"#FD5A77"}},{border:"#C2FABC",background:"#74D66A",highlight:{border:"#E6FFE3",background:"#74D66A"},hover:{border:"#E6FFE3",background:"#74D66A"}},{border:"#EE0000",background:"#990000",highlight:{border:"#FF3333",background:"#BB0000"},hover:{border:"#FF3333",background:"#BB0000"}}],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)if(this.useDefaultGroups===!1&&this.groupsArray.length>0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,e={},e.color=this.groups[this.groupsArray[i]],this.groups[t]=e}else{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,this.groupsArray.push(t),e},t.exports=s},function(t,e,i){function s(){this.images={},this.imageBroken={},this.callback=void 0}s.prototype.setOnloadCallback=function(t){this.callback=t},s.prototype.load=function(t,e){var i=this.images[t];if(void 0===i){var s=this;i=new Image,i.onload=function(){0==this.width&&(document.body.appendChild(this),this.width=this.offsetWidth,this.height=this.offsetHeight,document.body.removeChild(this)),s.callback&&(s.images[t]=i,s.callback(this))},i.onerror=function(){void 0===e?(console.error("Could not load image:",t),delete this.src,s.callback&&s.callback(this)):s.imageBroken[t]===!0?this.src==e?(console.error("Could not load brokenImage:",e),delete this.src,s.callback&&s.callback(this)):(console.error("Could not load image:",t),this.src=e):(console.error("Could not load image:",t),this.src=e,s.imageBroken[t]=!0)},i.src=t}return i},t.exports=s},function(t,e,i){function s(t,e,i,s){var n=o.selectiveBridgeObject(["nodes"],s);
-},o.getKey=function(t){for(var e in r)if(r.hasOwnProperty(e)){if(1==t.shiftKey&&1==r[e].shift&&t.keyCode==r[e].code)return e;if(0==t.shiftKey&&0==r[e].shift&&t.keyCode==r[e].code)return e;if(t.keyCode==r[e].code&&"shift"==e)return e}return"unknown key, currently not supported"},o.unbind=function(t,e,i){if(void 0===i&&(i="keydown"),void 0===r[t])throw new Error("unsupported key: "+t);if(void 0!==e){var s=[],o=n[i][r[t].code];if(void 0!==o)for(var a=0;a0)for(i in Ei)s=Ei[i],o=e[s],"undefined"!=typeof o&&(t[s]=o);return t}function u(t){p(this,t),this._d=new Date(+t._d),ki===!1&&(ki=!0,e.updateOffset(this),ki=!1)}function m(t){return t instanceof u||null!=t&&a(t,"_isAMomentObject")}function f(t){var e=+t,i=0;return 0!==e&&isFinite(e)&&(i=e>=0?Math.floor(e):Math.ceil(e)),i}function g(t,e,i){var s,o=Math.min(t.length,e.length),n=Math.abs(t.length-e.length),r=0;for(s=0;o>s;s++)(i&&t[s]!==e[s]||!i&&f(t[s])!==f(e[s]))&&r++;return r+n}function v(){}function y(t){return t?t.toLowerCase().replace("_","-"):t}function b(t){for(var e,i,s,o,n=0;n0;){if(s=_(o.slice(0,e).join("-")))return s;if(i&&i.length>=e&&g(o,i,!0)>=e-1)break;e--}n++}return null}function _(e){var i=null;if(!Ni[e]&&"undefined"!=typeof t&&t&&t.exports)try{i=Oi._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),x(i)}catch(s){}return Ni[e]}function x(t,e){var i;return t&&(i="undefined"==typeof e?S(t):w(t,e),i&&(Oi=i)),Oi._abbr}function w(t,e){return null!==e?(e.abbr=t,Ni[t]||(Ni[t]=new v),Ni[t].set(e),x(t),Ni[t]):(delete Ni[t],null)}function S(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Oi;if(!o(t)){if(e=_(t))return e;t=[t]}return b(t)}function D(t,e){var i=t.toLowerCase();Ii[i]=Ii[i+"s"]=Ii[e]=t}function M(t){return"string"==typeof t?Ii[t]||Ii[t.toLowerCase()]:void 0}function C(t){var e,i,s={};for(i in t)a(t,i)&&(e=M(i),e&&(s[e]=t[i]));return s}function T(t,i){return function(s){return null!=s?(E(this,t,s),e.updateOffset(this,i),this):O(this,t)}}function O(t,e){return t._d["get"+(t._isUTC?"UTC":"")+e]()}function E(t,e,i){return t._d["set"+(t._isUTC?"UTC":"")+e](i)}function k(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=M(t),"function"==typeof this[t])return this[t](e);return this}function N(t,e,i){for(var s=""+Math.abs(t),o=t>=0;s.lengthe;e++)s[e]=Pi[s[e]]?Pi[s[e]]:L(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 A(t,e){return t.isValid()?(e=P(e,t.localeData()),Ai[e]||(Ai[e]=z(e)),Ai[e](t)):t.localeData().invalidDate()}function P(t,e){function i(t){return e.longDateFormat(t)||t}var s=5;for(zi.lastIndex=0;s>=0&&zi.test(t);)t=t.replace(zi,i),zi.lastIndex=0,s-=1;return t}function F(t,e,i){Ki[t]="function"==typeof e?e:function(t){return t&&i?i:e}}function R(t,e){return a(Ki,t)?Ki[t](e._strict,e._locale):new RegExp(H(t))}function H(t){return t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,s,o){return e||i||s||o}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function B(t,e){var i,s=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(s=function(t,i){i[e]=f(t)}),i=0;is;s++){if(o=d([2e3,s]),i&&!this._longMonthsParse[s]&&(this._longMonthsParse[s]=new RegExp("^"+this.months(o,"").replace(".","")+"$","i"),this._shortMonthsParse[s]=new RegExp("^"+this.monthsShort(o,"").replace(".","")+"$","i")),i||this._monthsParse[s]||(n="^"+this.months(o,"")+"|^"+this.monthsShort(o,""),this._monthsParse[s]=new RegExp(n.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[s].test(t))return s;if(i&&"MMM"===e&&this._shortMonthsParse[s].test(t))return s;if(!i&&this._monthsParse[s].test(t))return s}}function X(t,e){var i;return"string"==typeof e&&(e=t.localeData().monthsParse(e),"number"!=typeof e)?t:(i=Math.min(t.date(),G(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,i),t)}function q(t){return null!=t?(X(this,t),e.updateOffset(this,!0),this):O(this,"Month")}function Z(){return G(this.year(),this.month())}function Q(t){var e,i=t._a;return i&&-2===t._pf.overflow&&(e=i[ts]<0||i[ts]>11?ts:i[es]<1||i[es]>G(i[Ji],i[ts])?es:i[is]<0||i[is]>24||24===i[is]&&(0!==i[ss]||0!==i[os]||0!==i[ns])?is:i[ss]<0||i[ss]>59?ss:i[os]<0||i[os]>59?os:i[ns]<0||i[ns]>999?ns:-1,t._pf._overflowDayOfYear&&(Ji>e||e>es)&&(e=es),t._pf.overflow=e),t}function K(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function $(t,e){var i=!0;return h(function(){return i&&(K(t),i=!1),e.apply(this,arguments)},e)}function J(t,e){hs[t]||(K(e),hs[t]=!0)}function tt(t){var e,i,s=t._i,o=ds.exec(s);if(o){for(t._pf.iso=!0,e=0,i=ls.length;i>e;e++)if(ls[e][1].exec(s)){t._f=ls[e][0]+(o[6]||" ");break}for(e=0,i=cs.length;i>e;e++)if(cs[e][1].exec(s)){t._f+=cs[e][0];break}s.match(qi)&&(t._f+="Z"),bt(t)}else t._isValid=!1}function et(t){var i=ps.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(tt(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function it(t,e,i,s,o,n,r){var a=new Date(t,e,i,s,o,n,r);return 1970>t&&a.setFullYear(t),a}function st(t){var e=new Date(Date.UTC.apply(null,arguments));return 1970>t&&e.setUTCFullYear(t),e}function ot(t){return nt(t)?366:365}function nt(t){return t%4===0&&t%100!==0||t%400===0}function rt(){return nt(this.year())}function at(t,e,i){var s,o=i-e,n=i-t.day();return n>o&&(n-=7),o-7>n&&(n+=7),s=Ct(t).add(n,"d"),{week:Math.ceil(s.dayOfYear()/7),year:s.year()}}function ht(t){return at(t,this._week.dow,this._week.doy).week}function dt(){return this._week.dow}function lt(){return this._week.doy}function ct(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function pt(t){var e=at(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function ut(t,e,i,s,o){var n,r,a=st(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:ot(t-1)+r}}function mt(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")}function ft(t,e,i){return null!=t?t:null!=e?e:i}function gt(t){var e=new Date;return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}function vt(t){var e,i,s,o,n=[];if(!t._d){for(s=gt(t),t._w&&null==t._a[es]&&null==t._a[ts]&&yt(t),t._dayOfYear&&(o=ft(t._a[Ji],s[Ji]),t._dayOfYear>ot(o)&&(t._pf._overflowDayOfYear=!0),i=st(o,0,t._dayOfYear),t._a[ts]=i.getUTCMonth(),t._a[es]=i.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=n[e]=s[e];for(;7>e;e++)t._a[e]=n[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[is]&&0===t._a[ss]&&0===t._a[os]&&0===t._a[ns]&&(t._nextDay=!0,t._a[is]=0),t._d=(t._useUTC?st:it).apply(null,n),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[is]=24)}}function yt(t){var e,i,s,o,n,r,a;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(n=1,r=4,i=ft(e.GG,t._a[Ji],at(Ct(),1,4).year),s=ft(e.W,1),o=ft(e.E,1)):(n=t._locale._week.dow,r=t._locale._week.doy,i=ft(e.gg,t._a[Ji],at(Ct(),n,r).year),s=ft(e.w,1),null!=e.d?(o=e.d,n>o&&++s):o=null!=e.e?e.e+n:n),a=ut(i,s,o,r,n),t._a[Ji]=a.year,t._dayOfYear=a.dayOfYear}function bt(t){if(t._f===e.ISO_8601)return void tt(t);t._a=[],t._pf.empty=!0;var i,s,o,n,r,a=""+t._i,h=a.length,d=0;for(o=P(t._f,t._locale).match(Li)||[],i=0;i0&&t._pf.unusedInput.push(r),a=a.slice(a.indexOf(s)+s.length),d+=s.length),Pi[n]?(s?t._pf.empty=!1:t._pf.unusedTokens.push(n),W(n,s,t)):t._strict&&!s&&t._pf.unusedTokens.push(n);t._pf.charsLeftOver=h-d,a.length>0&&t._pf.unusedInput.push(a),t._pf.bigHour===!0&&t._a[is]<=12&&(t._pf.bigHour=void 0),t._a[is]=_t(t._locale,t._a[is],t._meridiem),vt(t),Q(t)}function _t(t,e,i){var s;return null==i?e:null!=t.meridiemHour?t.meridiemHour(e,i):null!=t.isPM?(s=t.isPM(i),s&&12>e&&(e+=12),s||12!==e||(e=0),e):e}function xt(t){var e,i,o,n,r;if(0===t._f.length)return t._pf.invalidFormat=!0,void(t._d=new Date(0/0));for(n=0;nr)&&(o=r,i=e));h(t,i||e)}function wt(t){if(!t._d){var e=C(t._i);t._a=[e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],vt(t)}}function St(t){var e,i=t._i,s=t._f;return t._locale=t._locale||S(t._l),null===i||void 0===s&&""===i?c({nullInput:!0}):("string"==typeof i&&(t._i=i=t._locale.preparse(i)),m(i)?new u(Q(i)):(o(s)?xt(t):s?bt(t):Dt(t),e=new u(Q(t)),e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e))}function Dt(t){var i=t._i;void 0===i?t._d=new Date:n(i)?t._d=new Date(+i):"string"==typeof i?et(t):o(i)?(t._a=r(i.slice(0),function(t){return parseInt(t,10)}),vt(t)):"object"==typeof i?wt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Mt(t,e,i,o,n){var r={};return"boolean"==typeof i&&(o=i,i=void 0),r._isAMomentObject=!0,r._useUTC=r._isUTC=n,r._l=i,r._i=t,r._f=e,r._strict=o,r._pf=s(),St(r)}function Ct(t,e,i,s){return Mt(t,e,i,s,!1)}function Tt(t,e){var i,s;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Ct();for(i=e[0],s=1;st&&(t=-t,i="-"),i+N(~~(t/60),2)+e+N(~~t%60,2)})}function Lt(t){var e=(t||"").match(qi)||[],i=e[e.length-1]||[],s=(i+"").match(vs)||["-",0,0],o=+(60*s[1])+f(s[2]);return"+"===s[0]?o:-o}function zt(t,i){var s,o;return i._isUTC?(s=i.clone(),o=(m(t)||n(t)?+t:+Ct(t))-+s,s._d.setTime(+s._d+o),e.updateOffset(s,!1),s):Ct(t).local()}function At(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Pt(t,i){var s,o=this._offset||0;return null!=t?("string"==typeof t&&(t=Lt(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(s=At(this)),this._offset=t,this._isUTC=!0,null!=s&&this.add(s,"m"),o!==t&&(!i||this._changeInProgress?$t(this,Xt(t-o,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?o:At(this)}function Ft(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Rt(t){return this.utcOffset(0,t)}function Ht(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(At(this),"m")),this}function Bt(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Lt(this._i)),this}function Yt(t){return t=t?Ct(t).utcOffset():0,(this.utcOffset()-t)%60===0}function Wt(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Gt(){if(this._a){var t=this._isUTC?d(this._a):Ct(this._a);return this.isValid()&&g(this._a,t.toArray())>0}return!1}function jt(){return!this._isUTC}function Vt(){return this._isUTC}function Ut(){return this._isUTC&&0===this._offset}function Xt(t,e){var i,s,o,n=t,r=null;return Nt(t)?n={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(n={},e?n[e]=t:n.milliseconds=t):(r=ys.exec(t))?(i="-"===r[1]?-1:1,n={y:0,d:f(r[es])*i,h:f(r[is])*i,m:f(r[ss])*i,s:f(r[os])*i,ms:f(r[ns])*i}):(r=bs.exec(t))?(i="-"===r[1]?-1:1,n={y:qt(r[2],i),M:qt(r[3],i),d:qt(r[4],i),h:qt(r[5],i),m:qt(r[6],i),s:qt(r[7],i),w:qt(r[8],i)}):null==n?n={}:"object"==typeof n&&("from"in n||"to"in n)&&(o=Qt(Ct(n.from),Ct(n.to)),n={},n.ms=o.milliseconds,n.M=o.months),s=new kt(n),Nt(t)&&a(t,"_locale")&&(s._locale=t._locale),s}function qt(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function Zt(t,e){var i={milliseconds:0,months:0};return i.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(i.months,"M").isAfter(e)&&--i.months,i.milliseconds=+e-+t.clone().add(i.months,"M"),i}function Qt(t,e){var i;return e=zt(e,t),t.isBefore(e)?i=Zt(t,e):(i=Zt(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i}function Kt(t,e){return function(i,s){var o,n;return null===s||isNaN(+s)||(J(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period)."),n=i,i=s,s=n),i="string"==typeof i?+i:i,o=Xt(i,s),$t(this,o,t),this}}function $t(t,i,s,o){var n=i._milliseconds,r=i._days,a=i._months;o=null==o?!0:o,n&&t._d.setTime(+t._d+n*s),r&&E(t,"Date",O(t,"Date")+r*s),a&&X(t,O(t,"Month")+a*s),o&&e.updateOffset(t,r||a)}function Jt(t){var e=t||Ct(),i=zt(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,Ct(e)))}function te(){return new u(this)}function ee(t,e){var i;return e=M("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Ct(t),+this>+t):(i=m(t)?+t:+Ct(t),i<+this.clone().startOf(e))}function ie(t,e){var i;return e=M("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Ct(t),+t>+this):(i=m(t)?+t:+Ct(t),+this.clone().endOf(e)t?Math.ceil(t):Math.floor(t)}function re(t,e,i){var s,o,n=zt(t,this),r=6e4*(n.utcOffset()-this.utcOffset());return e=M(e),"year"===e||"month"===e||"quarter"===e?(o=ae(this,n),"quarter"===e?o/=3:"year"===e&&(o/=12)):(s=this-n,o="second"===e?s/1e3:"minute"===e?s/6e4:"hour"===e?s/36e5:"day"===e?(s-r)/864e5:"week"===e?(s-r)/6048e5:s),i?o:ne(o)}function ae(t,e){var i,s,o=12*(e.year()-t.year())+(e.month()-t.month()),n=t.clone().add(o,"months");return 0>e-n?(i=t.clone().add(o-1,"months"),s=(e-n)/(n-i)):(i=t.clone().add(o+1,"months"),s=(e-n)/(i-n)),-(o+s)}function he(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function de(){var t=this.clone().utc();return 0e;e++)if(this._weekdaysParse[e]||(i=Ct([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}function Pe(t){var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Ne(t,this.localeData()),this.add(t-e,"d")):e}function Fe(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function Re(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)}function He(t,e){I(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function Be(t,e){return e._meridiemParse}function Ye(t){return"p"===(t+"").toLowerCase().charAt(0)}function We(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function Ge(t){I(0,[t,3],0,"millisecond")}function je(){return this._isUTC?"UTC":""}function Ve(){return this._isUTC?"Coordinated Universal Time":""}function Ue(t){return Ct(1e3*t)}function Xe(){return Ct.apply(null,arguments).parseZone()}function qe(t,e,i){var s=this._calendar[t];return"function"==typeof s?s.call(e,i):s}function Ze(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}function Qe(){return this._invalidDate}function Ke(t){return this._ordinal.replace("%d",t)}function $e(t){return t}function Je(t,e,i,s){var o=this._relativeTime[i];return"function"==typeof o?o(t,e,i,s):o.replace(/%d/i,t)}function ti(t,e){var i=this._relativeTime[t>0?"future":"past"];return"function"==typeof i?i(e):i.replace(/%s/i,e)}function ei(t){var e,i;for(i in t)e=t[i],"function"==typeof e?this[i]=e:this["_"+i]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function ii(t,e,i,s){var o=S(),n=d().set(s,e);return o[i](n,t)}function si(t,e,i,s,o){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return ii(t,e,i,o);var n,r=[];for(n=0;s>n;n++)r[n]=ii(t,n,i,o);return r}function oi(t,e){return si(t,e,"months",12,"month")}function ni(t,e){return si(t,e,"monthsShort",12,"month")}function ri(t,e){return si(t,e,"weekdays",7,"day")}function ai(t,e){return si(t,e,"weekdaysShort",7,"day")}function hi(t,e){return si(t,e,"weekdaysMin",7,"day")}function di(){var t=this._data;return this._milliseconds=Ys(this._milliseconds),this._days=Ys(this._days),this._months=Ys(this._months),t.milliseconds=Ys(t.milliseconds),t.seconds=Ys(t.seconds),t.minutes=Ys(t.minutes),t.hours=Ys(t.hours),t.months=Ys(t.months),t.years=Ys(t.years),this}function li(t,e,i,s){var o=Xt(e,i);return t._milliseconds+=s*o._milliseconds,t._days+=s*o._days,t._months+=s*o._months,t._bubble()}function ci(t,e){return li(this,t,e,1)}function pi(t,e){return li(this,t,e,-1)}function ui(){var t,e,i,s=this._milliseconds,o=this._days,n=this._months,r=this._data,a=0;return r.milliseconds=s%1e3,t=ne(s/1e3),r.seconds=t%60,e=ne(t/60),r.minutes=e%60,i=ne(e/60),r.hours=i%24,o+=ne(i/24),a=ne(mi(o)),o-=ne(fi(a)),n+=ne(o/30),o%=30,a+=ne(n/12),n%=12,r.days=o,r.months=n,r.years=a,this}function mi(t){return 400*t/146097}function fi(t){return 146097*t/400}function gi(t){var e,i,s=this._milliseconds;if(t=M(t),"month"===t||"year"===t)return e=this._days+s/864e5,i=this._months+12*mi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(fi(this._months/12)),t){case"week":return e/7+s/6048e5;case"day":return e+s/864e5;case"hour":return 24*e+s/36e5;case"minute":return 24*e*60+s/6e4;case"second":return 24*e*60*60+s/1e3;case"millisecond":return Math.floor(24*e*60*60*1e3)+s;default:throw new Error("Unknown unit "+t)}}function vi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*f(this._months/12)}function yi(t){return function(){return this.as(t)}}function bi(t){return t=M(t),this[t+"s"]()}function _i(t){return function(){return this._data[t]}}function xi(){return ne(this.days()/7)}function wi(t,e,i,s,o){return o.relativeTime(e||1,!!i,t,s)}function Si(t,e,i){var s=Xt(t).abs(),o=so(s.as("s")),n=so(s.as("m")),r=so(s.as("h")),a=so(s.as("d")),h=so(s.as("M")),d=so(s.as("y")),l=o0,l[4]=i,wi.apply(null,l)}function Di(t,e){return void 0===oo[t]?!1:void 0===e?oo[t]:(oo[t]=e,!0)}function Mi(t){var e=this.localeData(),i=Si(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ci(){var t=no(this.years()),e=no(this.months()),i=no(this.days()),s=no(this.hours()),o=no(this.minutes()),n=no(this.seconds()+this.milliseconds()/1e3),r=this.asSeconds();return r?(0>r?"-":"")+"P"+(t?t+"Y":"")+(e?e+"M":"")+(i?i+"D":"")+(s||o||n?"T":"")+(s?s+"H":"")+(o?o+"M":"")+(n?n+"S":""):"P0D"}var Ti,Oi,Ei=e.momentProperties=[],ki=!1,Ni={},Ii={},Li=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|x|X|zz?|ZZ?|.)/g,zi=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Ai={},Pi={},Fi=/\d/,Ri=/\d\d/,Hi=/\d{3}/,Bi=/\d{4}/,Yi=/[+-]?\d{6}/,Wi=/\d\d?/,Gi=/\d{1,3}/,ji=/\d{1,4}/,Vi=/[+-]?\d{1,6}/,Ui=/\d+/,Xi=/[+-]?\d+/,qi=/Z|[+-]\d\d:?\d\d/gi,Zi=/[+-]?\d+(\.\d{1,3})?/,Qi=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,Ki={},$i={},Ji=0,ts=1,es=2,is=3,ss=4,os=5,ns=6;I("M",["MM",2],"Mo",function(){return this.month()+1}),I("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),I("MMMM",0,0,function(t){return this.localeData().months(this,t)}),D("month","M"),F("M",Wi),F("MM",Wi,Ri),F("MMM",Qi),F("MMMM",Qi),B(["M","MM"],function(t,e){e[ts]=f(t)-1}),B(["MMM","MMMM"],function(t,e,i,s){var o=i._locale.monthsParse(t,s,i._strict);null!=o?e[ts]=o:i._pf.invalidMonth=t});var rs="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),as="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),hs={};e.suppressDeprecationWarnings=!1;var ds=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ls=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],cs=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],ps=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=$("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),I(0,["YY",2],0,function(){return this.year()%100}),I(0,["YYYY",4],0,"year"),I(0,["YYYYY",5],0,"year"),I(0,["YYYYYY",6,!0],0,"year"),D("year","y"),F("Y",Xi),F("YY",Wi,Ri),F("YYYY",ji,Bi),F("YYYYY",Vi,Yi),F("YYYYYY",Vi,Yi),B(["YYYY","YYYYY","YYYYYY"],Ji),B("YY",function(t,i){i[Ji]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(t){return f(t)+(f(t)>68?1900:2e3)};var us=T("FullYear",!1);I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),D("week","w"),D("isoWeek","W"),F("w",Wi),F("ww",Wi,Ri),F("W",Wi),F("WW",Wi,Ri),Y(["w","ww","W","WW"],function(t,e,i,s){e[s.substr(0,1)]=f(t)});var ms={dow:0,doy:6};I("DDD",["DDDD",3],"DDDo","dayOfYear"),D("dayOfYear","DDD"),F("DDD",Gi),F("DDDD",Hi),B(["DDD","DDDD"],function(t,e,i){i._dayOfYear=f(t)}),e.ISO_8601=function(){};var fs=$("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Ct.apply(null,arguments);return this>t?this:t}),gs=$("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Ct.apply(null,arguments);return t>this?this:t});It("Z",":"),It("ZZ",""),F("Z",qi),F("ZZ",qi),B(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=Lt(t)});var vs=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var ys=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,bs=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/,_s=Kt(1,"add"),xs=Kt(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var ws=$("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return void 0===t?this.localeData():this.locale(t)});I(0,["gg",2],0,function(){return this.weekYear()%100}),I(0,["GG",2],0,function(){return this.isoWeekYear()%100}),De("gggg","weekYear"),De("ggggg","weekYear"),De("GGGG","isoWeekYear"),De("GGGGG","isoWeekYear"),D("weekYear","gg"),D("isoWeekYear","GG"),F("G",Xi),F("g",Xi),F("GG",Wi,Ri),F("gg",Wi,Ri),F("GGGG",ji,Bi),F("gggg",ji,Bi),F("GGGGG",Vi,Yi),F("ggggg",Vi,Yi),Y(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,s){e[s.substr(0,2)]=f(t)}),Y(["gg","GG"],function(t,i,s,o){i[o]=e.parseTwoDigitYear(t)}),I("Q",0,0,"quarter"),D("quarter","Q"),F("Q",Fi),B("Q",function(t,e){e[ts]=3*(f(t)-1)}),I("D",["DD",2],"Do","date"),D("date","D"),F("D",Wi),F("DD",Wi,Ri),F("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),B(["D","DD"],es),B("Do",function(t,e){e[es]=f(t.match(Wi)[0],10)});var Ss=T("Date",!0);I("d",0,"do","day"),I("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),I("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),I("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),D("day","d"),D("weekday","e"),D("isoWeekday","E"),F("d",Wi),F("e",Wi),F("E",Wi),F("dd",Qi),F("ddd",Qi),F("dddd",Qi),Y(["dd","ddd","dddd"],function(t,e,i){var s=i._locale.weekdaysParse(t);null!=s?e.d=s:i._pf.invalidWeekday=t}),Y(["d","e","E"],function(t,e,i,s){e[s]=f(t)});var Ds="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Ms="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Cs="Su_Mo_Tu_We_Th_Fr_Sa".split("_");I("H",["HH",2],0,"hour"),I("h",["hh",2],0,function(){return this.hours()%12||12}),He("a",!0),He("A",!1),D("hour","h"),F("a",Be),F("A",Be),F("H",Wi),F("h",Wi),F("HH",Wi,Ri),F("hh",Wi,Ri),B(["H","HH"],is),B(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),B(["h","hh"],function(t,e,i){e[is]=f(t),i._pf.bigHour=!0});var Ts=/[ap]\.?m?\.?/i,Os=T("Hours",!0);I("m",["mm",2],0,"minute"),D("minute","m"),F("m",Wi),F("mm",Wi,Ri),B(["m","mm"],ss);var Es=T("Minutes",!1);I("s",["ss",2],0,"second"),D("second","s"),F("s",Wi),F("ss",Wi,Ri),B(["s","ss"],os);var ks=T("Seconds",!1);I("S",0,0,function(){return~~(this.millisecond()/100)}),I(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),Ge("SSS"),Ge("SSSS"),D("millisecond","ms"),F("S",Gi,Fi),F("SS",Gi,Ri),F("SSS",Gi,Hi),F("SSSS",Ui),B(["S","SS","SSS","SSSS"],function(t,e){e[ns]=f(1e3*("0."+t))});var Ns=T("Milliseconds",!1);I("z",0,0,"zoneAbbr"),I("zz",0,0,"zoneName");var Is=u.prototype;Is.add=_s,Is.calendar=Jt,Is.clone=te,Is.diff=re,Is.endOf=ge,Is.format=le,Is.from=ce,Is.fromNow=pe,Is.get=k,Is.invalidAt=Se,Is.isAfter=ee,Is.isBefore=ie,Is.isBetween=se,Is.isSame=oe,Is.isValid=xe,Is.lang=ws,Is.locale=ue,Is.localeData=me,Is.max=gs,Is.min=fs,Is.parsingFlags=we,Is.set=k,Is.startOf=fe,Is.subtract=xs,Is.toArray=_e,Is.toDate=be,Is.toISOString=de,Is.toJSON=de,Is.toString=he,Is.unix=ye,Is.valueOf=ve,Is.year=us,Is.isLeapYear=rt,Is.weekYear=Ce,Is.isoWeekYear=Te,Is.quarter=Is.quarters=ke,Is.month=q,Is.daysInMonth=Z,Is.week=Is.weeks=ct,Is.isoWeek=Is.isoWeeks=pt,Is.weeksInYear=Ee,Is.isoWeeksInYear=Oe,Is.date=Ss,Is.day=Is.days=Pe,Is.weekday=Fe,Is.isoWeekday=Re,Is.dayOfYear=mt,Is.hour=Is.hours=Os,Is.minute=Is.minutes=Es,Is.second=Is.seconds=ks,Is.millisecond=Is.milliseconds=Ns,Is.utcOffset=Pt,Is.utc=Rt,Is.local=Ht,Is.parseZone=Bt,Is.hasAlignedHourOffset=Yt,Is.isDST=Wt,Is.isDSTShifted=Gt,Is.isLocal=jt,Is.isUtcOffset=Vt,Is.isUtc=Ut,Is.isUTC=Ut,Is.zoneAbbr=je,Is.zoneName=Ve,Is.dates=$("dates accessor is deprecated. Use date instead.",Ss),Is.months=$("months accessor is deprecated. Use month instead",q),Is.years=$("years accessor is deprecated. Use year instead",us),Is.zone=$("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Ft);
+this.options=n.nodes,this.selected=!1,this.hover=!1,this.edges=[],this.dynamicEdges=[],this.reroutedEdges={},this.id=void 0,this.allowedToMoveX=!1,this.allowedToMoveY=!1,this.xFixed=!1,this.yFixed=!1,this.horizontalAlignLeft=!0,this.verticalAlignTop=!0,this.baseRadiusValue=s.nodes.radius,this.radiusFixed=!1,this.level=-1,this.preassignedLevel=!1,this.hierarchyEnumerated=!1,this.labelDimensions={top:0,left:0,width:0,height:0,yLine:0},this.boundingBox={top:0,left:0,right:0,bottom:0},this.imagelist=e,this.grouplist=i,this.fx=0,this.fy=0,this.vx=0,this.vy=0,this.x=null,this.y=null,this.predefinedPosition=!1,this.previousState={vx:0,vy:0,x:0,y:0},this.damping=s.physics.damping,this.fixedData={x:null,y:null},this.setProperties(t,n),this.resetCluster(),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.revertPosition=function(){this.x=this.previousState.x,this.y=this.previousState.y,this.vx=this.previousState.vx,this.vy=this.previousState.vy},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)},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)},s.prototype.setProperties=function(t,e){if(t){var i=["borderWidth","borderWidthSelected","shape","image","brokenImage","radius","fontColor","fontSize","fontFace","fontFill","fontStrokeWidth","fontStrokeColor","group","mass","fontDrawThreshold","scaleFontWithValue","fontSizeMaxVisible","customScalingFunction","iconFontFace","icon","iconColor","iconSize"];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,this.predefinedPosition=!0),void 0!==t.y&&(this.y=t.y,this.predefinedPosition=!0),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 t.group||"string"==typeof t.group&&""!=t.group){var s=this.grouplist.get(t.group);o.deepExtend(this.options,s),this.options.color=o.parseColor(this.options.color)}if(void 0!==t.radius&&(this.baseRadiusValue=this.options.radius),void 0!==t.color&&(this.options.color=o.parseColor(t.color)),void 0!==this.options.image&&""!=this.options.image){if(!this.imagelist)throw"No imagelist provided";this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage)}switch(void 0!==t.allowedToMoveX?(this.xFixed=!t.allowedToMoveX,this.allowedToMoveX=t.allowedToMoveX):void 0!==t.x&&0==this.allowedToMoveX&&(this.xFixed=!0),void 0!==t.allowedToMoveY?(this.yFixed=!t.allowedToMoveY,this.allowedToMoveY=t.allowedToMoveY):void 0!==t.y&&0==this.allowedToMoveY&&(this.yFixed=!0),this.radiusFixed=this.radiusFixed||void 0!==t.radius,("image"===this.options.shape||"circularImage"===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"circularImage":this.draw=this._drawCircularImage,this.resize=this._resizeCircularImage;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;case"icon":this.draw=this._drawIcon,this.resize=this._resizeIcon;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.storeState=function(){this.previousState.x=this.x,this.previousState.y=this.y,this.previousState.vx=this.vx,this.previousState.vy=this.vy},s.prototype.discreteStep=function(t){if(this.storeState(),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.storeState(),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,i){if(!this.radiusFixed&&void 0!==this.value){var s=this.options.customScalingFunction(t,e,i,this.value),o=this.options.radiusMax-this.options.radiusMin;if(1==this.options.scaleFontWithValue){var n=this.options.fontSizeMax-this.options.fontSizeMin;this.options.fontSize=this.options.fontSizeMin+s*n}this.options.radius=this.options.radiusMin+s*o}this.baseRadiusValue=this.options.radius},s.prototype.draw=function(t){throw"Draw method not initialized for node"},s.prototype.resize=function(t){throw"Resize method not initialized for node"},s.prototype.isOverlappingWith=function(t){return this.leftt.left&&this.topt.top},s.prototype._resizeImage=function(t){if(!this.width||!this.height){var e,i;if(this.value){this.options.radius=this.baseRadiusValue;var s=this.imageObj.height/this.imageObj.width;void 0!==s?(e=this.options.radius||this.imageObj.width,i=this.options.radius*s||this.imageObj.height):(e=0,i=0)}else e=this.imageObj.width,i=this.imageObj.height;this.width=e,this.height=i,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-e)}},s.prototype._drawImageAtPosition=function(t){if(0!=this.imageObj.width){if(this.clusterSize>1){var e=this.clusterSize>1?10:0;e*=this.networkScaleInv,e=Math.min(.2*this.width,e),t.globalAlpha=.5,t.drawImage(this.imageObj,this.left-e,this.top-e,this.width+2*e,this.height+2*e)}t.globalAlpha=1,t.drawImage(this.imageObj,this.left,this.top,this.width,this.height)}},s.prototype._drawImageLabel=function(t){var e,i=0;if(this.height){i=this.height/2;var s=this.getTextSize(t);s.lineCount>=1&&(i+=s.height/2,i+=3)}e=this.y+i,this._label(t,this.label,this.x,e,void 0)},s.prototype._drawImage=function(t){this._resizeImage(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._drawImageAtPosition(t),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._drawImageLabel(t),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height)},s.prototype._resizeCircularImage=function(t){if(this.imageObj.src&&this.imageObj.width&&this.imageObj.height)this._swapToImageResizeWhenImageLoaded&&(this.width=0,this.height=0,delete this._swapToImageResizeWhenImageLoaded),this._resizeImage(t);else if(!this.width){var e=2*this.options.radius;this.width=e,this.height=e,this.options.radius+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.options.radius-.5*e,this._swapToImageResizeWhenImageLoaded=!0}},s.prototype._drawCircularImage=function(t){this._resizeCircularImage(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=this.left+this.width/2,i=this.top+this.height/2,s=Math.abs(this.height/2);this._drawRawCircle(t,e,i,s),t.save(),t.circle(this.x,this.y,s),t.stroke(),t.clip(),this._drawImageAtPosition(t),t.restore(),this.boundingBox.top=this.y-this.options.radius,this.boundingBox.left=this.x-this.options.radius,this.boundingBox.right=this.x+this.options.radius,this.boundingBox.bottom=this.y+this.options.radius,this._drawImageLabel(t),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height)},s.prototype._resizeBox=function(t){if(!this.width){var e=5,i=this.getTextSize(t);this.width=i.width+2*e,this.height=i.height+2*e,this.width+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.growthIndicator=this.width-(i.width+2*e)}},s.prototype._drawBox=function(t){this._resizeBox(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.roundRect(this.left-2*t.lineWidth,this.top-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth,this.options.radius),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.roundRect(this.left,this.top,this.width,this.height,this.options.radius),t.fill(),t.stroke(),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,this.y)},s.prototype._resizeDatabase=function(t){if(!this.width){var e=5,i=this.getTextSize(t),s=i.width+2*e;this.width=s,this.height=s,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-s}},s.prototype._drawDatabase=function(t){this._resizeDatabase(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var e=2.5,i=this.options.borderWidth,s=this.options.borderWidthSelected||2*this.options.borderWidth;t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.database(this.x-this.width/2-2*t.lineWidth,this.y-.5*this.height-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.database(this.x-this.width/2,this.y-.5*this.height,this.width,this.height),t.fill(),t.stroke(),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,this.y)},s.prototype._resizeCircle=function(t){if(!this.width){var e=5,i=this.getTextSize(t),s=Math.max(i.width,i.height)+2*e;this.options.radius=s/2,this.width=s,this.height=s,this.options.radius+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.options.radius-.5*s}},s.prototype._drawRawCircle=function(t,e,i,s){var o=2.5,n=this.options.borderWidth,r=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?r:n)+(this.clusterSize>1?o:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.circle(e,i,s+2*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?r:n)+(this.clusterSize>1?o: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,s),t.fill(),t.stroke()},s.prototype._drawCircle=function(t){this._resizeCircle(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._drawRawCircle(t,this.x,this.y,this.options.radius),this.boundingBox.top=this.y-this.options.radius,this.boundingBox.left=this.x-this.options.radius,this.boundingBox.right=this.x+this.options.radius,this.boundingBox.bottom=this.y+this.options.radius,this._label(t,this.label,this.x,this.y)},s.prototype._resizeEllipse=function(t){if(!this.width){var e=this.getTextSize(t);this.width=1.5*e.width,this.height=2*e.height,this.width1&&(t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.ellipse(this.left-2*t.lineWidth,this.top-2*t.lineWidth,this.width+4*t.lineWidth,this.height+4*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?s:i)+(this.clusterSize>1?e:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t.ellipse(this.left,this.top,this.width,this.height),t.fill(),t.stroke(),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,this._label(t,this.label,this.x,this.y)},s.prototype._drawDot=function(t){this._drawShape(t,"circle")},s.prototype._drawTriangle=function(t){this._drawShape(t,"triangle")},s.prototype._drawTriangleDown=function(t){this._drawShape(t,"triangleDown")},s.prototype._drawSquare=function(t){this._drawShape(t,"square")},s.prototype._drawStar=function(t){this._drawShape(t,"star")},s.prototype._resizeShape=function(t){if(!this.width){this.options.radius=this.baseRadiusValue;var e=2*this.options.radius;this.width=e,this.height=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+=.5*Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-e}},s.prototype._drawShape=function(t,e){this._resizeShape(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2;var i=2.5,s=this.options.borderWidth,o=this.options.borderWidthSelected||2*this.options.borderWidth,n=2;switch(e){case"dot":n=2;break;case"square":n=2;break;case"triangle":n=3;break;case"triangleDown":n=3;break;case"star":n=4}t.strokeStyle=this.selected?this.options.color.highlight.border:this.hover?this.options.color.hover.border:this.options.color.border,this.clusterSize>1&&(t.lineWidth=(this.selected?o:s)+(this.clusterSize>1?i:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t[e](this.x,this.y,this.options.radius+n*t.lineWidth),t.stroke()),t.lineWidth=(this.selected?o:s)+(this.clusterSize>1?i:0),t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),t.fillStyle=this.selected?this.options.color.highlight.background:this.hover?this.options.color.hover.background:this.options.color.background,t[e](this.x,this.y,this.options.radius),t.fill(),t.stroke(),this.boundingBox.top=this.y-this.options.radius,this.boundingBox.left=this.x-this.options.radius,this.boundingBox.right=this.x+this.options.radius,this.boundingBox.bottom=this.y+this.options.radius,this.label&&(this._label(t,this.label,this.x,this.y+this.height/2,void 0,"hanging",!0),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height))},s.prototype._resizeText=function(t){if(!this.width){var e=5,i=this.getTextSize(t);this.width=i.width+2*e,this.height=i.height+2*e,this.width+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeWidthFactor,this.height+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeHeightFactor,this.options.radius+=Math.min(this.clusterSize-1,this.maxNodeSizeIncrements)*this.clusterSizeRadiusFactor,this.growthIndicator=this.width-(i.width+2*e)}},s.prototype._drawText=function(t){this._resizeText(t),this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._label(t,this.label,this.x,this.y),this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height},s.prototype._resizeIcon=function(t){if(!this.width){var e=5,i={width:Number(this.options.iconSize),height:Number(this.options.iconSize)};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._drawIcon=function(t){if(this._resizeIcon(t),this.options.iconSize=this.options.iconSize||50,this.left=this.x-this.width/2,this.top=this.y-this.height/2,this._icon(t),this.boundingBox.top=this.y-this.options.iconSize/2,this.boundingBox.left=this.x-this.options.iconSize/2,this.boundingBox.right=this.x+this.options.iconSize/2,this.boundingBox.bottom=this.y+this.options.iconSize/2,this.label){var e=5;this._label(t,this.label,this.x,this.y+this.height/2+e,"top",!0),this.boundingBox.left=Math.min(this.boundingBox.left,this.labelDimensions.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelDimensions.left+this.labelDimensions.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelDimensions.height)}},s.prototype._icon=function(t){var e=Number(this.options.iconSize)*this.networkScale;if(this.options.icon&&e>this.options.fontDrawThreshold-1){var i=Number(this.options.iconSize);t.font=(this.selected?"bold ":"")+i+"px "+this.options.iconFontFace,t.fillStyle=this.options.iconColor||"black",t.textAlign="center",t.textBaseline="middle",t.fillText(this.options.icon,this.x,this.y)}},s.prototype._label=function(t,e,i,s,n,r,a){var h=Number(this.options.fontSize)*this.networkScale;if(e&&h>=this.options.fontDrawThreshold-1){var d=Number(this.options.fontSize);h>=this.options.fontSizeMaxVisible&&(d=Number(this.options.fontSizeMaxVisible)*this.networkScaleInv);var l=this.options.fontColor||"#000000",c=this.options.fontStrokeColor;if(h<=this.options.fontDrawThreshold){var p=Math.max(0,Math.min(1,1-(this.options.fontDrawThreshold-h)));l=o.overrideOpacity(l,p),c=o.overrideOpacity(c,p)}t.font=(this.selected?"bold ":"")+d+"px "+this.options.fontFace;var u=e.split("\n"),m=u.length,f=s+(1-m)/2*d;1==a&&(f=s+(1-m)/(2*d));for(var g=t.measureText(u[0]).width,v=1;m>v;v++){var y=t.measureText(u[v]).width;g=y>g?y:g}var b=d*m,_=i-g/2,x=s-b/2;"hanging"==r&&(x+=.5*d,x+=4,f+=4),this.labelDimensions={top:x,left:_,width:g,height:b,yLine:f},void 0!==this.options.fontFill&&null!==this.options.fontFill&&"none"!==this.options.fontFill&&(t.fillStyle=this.options.fontFill,t.fillRect(_,x,g,b)),t.fillStyle=l,t.textAlign=n||"center",t.textBaseline=r||"middle",this.options.fontStrokeWidth>0&&(t.lineWidth=this.options.fontStrokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var v=0;m>v;v++)this.options.fontStrokeWidth&&t.strokeText(u[v],i,f),t.fillText(u[v],i,f),f+=d}},s.prototype.getTextSize=function(t){if(void 0!==this.label){var e=Number(this.options.fontSize);e*this.networkScale>this.options.fontSizeMaxVisible&&(e=Number(this.options.fontSizeMaxVisible)*this.networkScaleInv),t.font=(this.selected?"bold ":"")+e+"px "+this.options.fontFace;for(var i=this.label.split("\n"),s=(e+4)*i.length,o=0,n=0,r=i.length;r>n;n++)o=Math.max(o,t.measureText(i[n]).width);return{width:o,height:s,lineCount:i.length}}return{width:0,height:0,lineCount: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=h(o.attr,t.node))),i=n.length-1;i>=0;i--){var a=n[i];a.nodes||(a.nodes=[]),-1==a.nodes.indexOf(o)&&a.nodes.push(o)}e.attr&&(o.attr=h(o.attr,e.attr))}function c(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=h({},t.edge);e.attr=h(i,e.attr)}}function p(t,e,i,s,o){var n={from:e,to:i,type:s};return t.edge&&(n.attr=h({},t.edge)),n.attr=h(n.attr||{},o),n}function u(){for(I=C.NULL,N="";" "==k||" "==k||"\n"==k||"\r"==k;)n();do{var t=!1;if("#"==k){for(var e=E-1;" "==O.charAt(e)||" "==O.charAt(e);)e--;if("\n"==O.charAt(e)||""==O.charAt(e)){for(;""!=k&&"\n"!=k;)n();t=!0}}if("/"==k&&"/"==r()){for(;""!=k&&"\n"!=k;)n();t=!0}if("/"==k&&"*"==r()){for(;""!=k;){if("*"==k&&"/"==r()){n(),n();break}n()}t=!0}for(;" "==k||" "==k||"\n"==k||"\r"==k;)n()}while(t);if(""==k)return void(I=C.DELIMITER);var i=k+r();if(T[i])return I=C.DELIMITER,N=i,n(),void n();if(T[k])return I=C.DELIMITER,N=k,void n();if(a(k)||"-"==k){for(N+=k,n();a(k);)N+=k,n();return"false"==N?N=!1:"true"==N?N=!0:isNaN(Number(N))||(N=Number(N)),void(I=C.IDENTIFIER)}if('"'==k){for(n();""!=k&&('"'!=k||'"'==k&&'"'==r());)N+=k,'"'==k&&n(),n();if('"'!=k)throw w('End of string " expected');return n(),void(I=C.IDENTIFIER)}for(I=C.UNKNOWN;""!=k;)N+=k,n();throw new SyntaxError('Syntax error in part "'+S(N,30)+'"')}function m(){var t={};if(o(),u(),"strict"==N&&(t.strict=!0,u()),("graph"==N||"digraph"==N)&&(t.type=N,u()),I==C.IDENTIFIER&&(t.id=N,u()),"{"!=N)throw w("Angle bracket { expected");if(u(),f(t),"}"!=N)throw w("Angle bracket } expected");if(u(),""!==N)throw w("End of file expected");return u(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==N&&"}"!=N;)g(t),";"==N&&u()}function g(t){var e=v(t);if(e)return void _(t,e);var i=y(t);if(!i){if(I!=C.IDENTIFIER)throw w("Identifier expected");var s=N;if(u(),"="==N){if(u(),I!=C.IDENTIFIER)throw w("Identifier expected");t[s]=N,u()}else b(t,s)}}function v(t){var e=null;if("subgraph"==N&&(e={},e.type="subgraph",u(),I==C.IDENTIFIER&&(e.id=N,u())),"{"==N){if(u(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=N)throw w("Angle bracket } expected");u(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function y(t){return"node"==N?(u(),t.node=x(),"node"):"edge"==N?(u(),t.edge=x(),"edge"):"graph"==N?(u(),t.graph=x(),"graph"):null}function b(t,e){var i={id:e},s=x();s&&(i.attr=s),l(t,i),_(t,e)}function _(t,e){for(;"->"==N||"--"==N;){var i,s=N;u();var o=v(t);if(o)i=o;else{if(I!=C.IDENTIFIER)throw w("Identifier or subgraph expected");i=N,l(t,{id:i}),u()}var n=x(),r=p(t,e,i,s,n);c(t,r),e=i}}function x(){for(var t=null;"["==N;){for(u(),t={};""!==N&&"]"!=N;){if(I!=C.IDENTIFIER)throw w("Attribute name expected");var e=N;if(u(),"="!=N)throw w("Equal sign = expected");if(u(),I!=C.IDENTIFIER)throw w("Attribute value expected");var i=N;d(t,e,i),u(),","==N&&u()}if("]"!=N)throw w("Bracket ] expected");u()}return t}function w(t){return new SyntaxError(t+', got "'+S(N,30)+'" (char '+E+")")}function S(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function D(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function M(t){var e=s(t),i={nodes:[],edges:[],options:{}};if(e.nodes&&e.nodes.forEach(function(t){var e={id:t.id,label:String(t.label||t.id)};h(e,t.attr),e.image&&(e.shape="image"),i.nodes.push(e)}),e.edges){var o=function(t){var e={from:t.from,to:t.to};return h(e,t.attr),e.style="->"==t.type?"arrow":"line",e};e.edges.forEach(function(t){var e,s;e=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 e=o(t);i.edges.push(e)}),D(e,s,function(e,s){var n=p(i,e.id,s.id,t.type,t.attr),r=o(n);i.edges.push(r)}),t.to instanceof Object&&t.to.edges&&t.to.edges.forEach(function(t){var e=o(t);i.edges.push(e)})})}return e.attr&&(i.options=e.attr),i}var C={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3},T={"{":!0,"}":!0,"[":!0,"]":!0,";":!0,"=":!0,",":!0,"->":!0,"--":!0},O="",E=0,k="",N="",I=C.NULL,L=/[a-zA-Z_0-9.:#]/;e.parseDOT=s,e.DOTToGraph=M},function(t,e,i){function s(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;r0?Math.max.apply(null,i)+1:1):(this.customBarIds.forEach(function(t){if(t===e)throw new Error("Custom time ID already exists")}),o=e),this.customBarIds.push(o),s=new l(this.body,{showCustomTime:!0,time:n,id:o}),this.components.push(s),this.redraw(),o},s.prototype.removeCustomTime=function(t){var e=this;this.components.forEach(function(i,s,o){i instanceof l&&i.options.id===t&&0!==i.options.id&&(e.customBarIds.splice(e.customBarIds.indexOf(t),1),o.splice(s,1),i.destroy())})},s.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]},s.prototype.clear=function(t){(!t||t.items)&&this.setItems(null),(!t||t.groups)&&this.setGroups(null),(!t||t.options)&&(this.components.forEach(function(t){t.setOptions(t.defaultOptions)}),this.setOptions(this.defaultOptions))},s.prototype.fit=function(t){var e=this._getDataRange();if(null!==e.start||null!==e.end){var i=t&&void 0!==t.animate?t.animate:!0;this.range.setRange(e.start,e.end,i)}},s.prototype._getDataRange=function(){var t=this.getItemRange(),e=t.min,i=t.max;if(null!=e&&null!=i){var s=i.valueOf()-e.valueOf();0>=s&&(s=864e5),e=new Date(e.valueOf()-.05*s),i=new Date(i.valueOf()+.05*s)}return{start:e,end:i}},s.prototype.setWindow=function(t,e,i){var s;if(1==arguments.length){var o=arguments[0];s=void 0!==o.animate?o.animate:!0,this.range.setRange(o.start,o.end,s)}else s=i&&void 0!==i.animate?i.animate:!0,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(){this._redraw()},s.prototype._redraw=function(){var t=!1,e=this.options,i=this.props,s=this.dom;if(s){d.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),h=i.top.height+a+i.bottom.height+o+i.border.top+i.border.bottom;s.root.style.height=r.option.asSize(e.height,h+"px"),i.root.height=s.root.offsetHeight,i.background.height=i.root.height-o;var l=i.root.height-i.top.height-i.bottom.height-o;i.centerContainer.height=l,i.leftContainer.height=l,i.rightContainer.height=i.leftContainer.height,i.root.width=s.root.offsetWidth,i.background.width=i.root.width-n,i.left.width=s.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=s.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var c=i.root.width-i.left.width-i.right.width-n;i.center.width=c,i.centerContainer.width=c,i.top.width=c,i.bottom.width=c,s.background.style.height=i.background.height+"px",s.backgroundVertical.style.height=i.background.height+"px",s.backgroundHorizontal.style.height=i.centerContainer.height+"px",s.centerContainer.style.height=i.centerContainer.height+"px",s.leftContainer.style.height=i.leftContainer.height+"px",s.rightContainer.style.height=i.rightContainer.height+"px",s.background.style.width=i.background.width+"px",s.backgroundVertical.style.width=i.centerContainer.width+"px",s.backgroundHorizontal.style.width=i.background.width+"px",s.centerContainer.style.width=i.center.width+"px",s.top.style.width=i.top.width+"px",s.bottom.style.width=i.bottom.width+"px",s.background.style.left="0",s.background.style.top="0",s.backgroundVertical.style.left=i.left.width+i.border.left+"px",s.backgroundVertical.style.top="0",s.backgroundHorizontal.style.left="0",s.backgroundHorizontal.style.top=i.top.height+"px",s.centerContainer.style.left=i.left.width+"px",s.centerContainer.style.top=i.top.height+"px",s.leftContainer.style.left="0",s.leftContainer.style.top=i.top.height+"px",s.rightContainer.style.left=i.left.width+i.center.width+"px",s.rightContainer.style.top=i.top.height+"px",s.top.style.left=i.left.width+"px",s.top.style.top="0",s.bottom.style.left=i.left.width+"px",s.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var p=this.props.scrollTop;"bottom"==e.orientation&&(p+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),s.center.style.left="0",s.center.style.top=p+"px",s.left.style.left="0",s.left.style.top=p+"px",s.right.style.left="0",s.right.style.top=p+"px";var u=0==this.props.scrollTop?"hidden":"",m=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";if(s.shadowTop.style.visibility=u,s.shadowBottom.style.visibility=m,s.shadowTopLeft.style.visibility=u,s.shadowBottomLeft.style.visibility=m,s.shadowTopRight.style.visibility=u,s.shadowBottomRight.style.visibility=m,this.components.forEach(function(e){t=e.redraw()||t}),t){var f=3;this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTopt[s].y?t[s].y:e,i=i0){var r,a,h=Number(i.svg.style.height.replace("px",""));if(r=o.getSVGElement("path",i.svgElements,i.svg),r.setAttributeNS(null,"class",e.className),void 0!==e.style&&r.setAttributeNS(null,"style",e.style),a=1==e.options.catmullRom.enabled?s._catmullRom(t,e):s._linear(t),1==e.options.shaded.enabled){var d,l=o.getSVGElement("path",i.svgElements,i.svg);d="top"==e.options.shaded.orientation?"M"+t[0].x+",0 "+a+"L"+t[t.length-1].x+",0":"M"+t[0].x+","+h+" "+a+"L"+t[t.length-1].x+","+h,l.setAttributeNS(null,"class",e.className+" fill"),void 0!==e.options.shaded.style&&l.setAttributeNS(null,"style",e.options.shaded.style),l.setAttributeNS(null,"d",d)}r.setAttributeNS(null,"d","M"+a),1==e.options.drawPoints.enabled&&n.draw(t,e,i)}},s._catmullRomUniform=function(t){for(var e,i,s,o,n,r,a=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",h=1/6,d=t.length,l=0;d-1>l;l++)e=0==l?t[0]:t[l-1],i=t[l],s=t[l+1],o=d>l+2?t[l+2]:s,n={x:(-e.x+6*i.x+s.x)*h,y:(-e.y+6*i.y+s.y)*h},r={x:(i.x+6*s.x-o.x)*h,y:(i.y+6*s.y-o.y)*h},a+="C"+n.x+","+n.y+" "+r.x+","+r.y+" "+s.x+","+s.y+" ";return a},s._catmullRom=function(t,e){var i=e.options.catmullRom.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);for(var s,o,n,r,a,h,d,l,c,p,u,m,f,g,v,y,b,_,x,w=Math.round(t[0].x)+","+Math.round(t[0].y)+" ",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&&(n=Math.min(n,Math.abs(c[d-1].x-r))),a=s._getSafeDrawData(n,h,m);else{var g=d+(p[r].amount-p[r].resolved),v=d-(p[r].resolved+1);g0&&(n=Math.min(n,Math.abs(c[v].x-r))),a=s._getSafeDrawData(n,h,m),p[r].resolved+=1,"stack"==h.options.barChart.handleOverlap?(f=p[r].accumulated,p[r].accumulated+=h.zeroPosition-c[d].y):"sideBySide"==h.options.barChart.handleOverlap&&(a.width=a.width/p[r].amount,a.offset+=p[r].resolved*a.width-.5*a.width*(p[r].amount+1),"left"==h.options.barChart.align?a.offset-=.5*a.width:"right"==h.options.barChart.align&&(a.offset+=.5*a.width))}o.drawBar(c[d].x+a.offset,c[d].y-f,a.width,h.zeroPosition-c[d].y,h.className+" bar",i.svgElements,i.svg),1==h.options.drawPoints.enabled&&o.drawPoint(c[d].x+a.offset,c[d].y,h,i.svgElements,i.svg,c[d].label)}},s._getDataIntersections=function(t,e){for(var i,s=0;s0&&(i=Math.min(i,Math.abs(e[s-1].x-e[s].x))),0==i&&(void 0===t[e[s].x]&&(t[e[s].x]={amount:0,resolved:0,accumulated:0}),t[e[s].x].amount+=1)},s._getSafeDrawData=function(t,e,i){var s,o;return t0?(s=i>t?i:t,o=0,"left"==e.options.barChart.align?o-=.5*t:"right"==e.options.barChart.align&&(o+=.5*t)):(s=e.options.barChart.width,o=0,"left"==e.options.barChart.align?o-=.5*e.options.barChart.width:"right"==e.options.barChart.align&&(o+=.5*e.options.barChart.width)),{width:s,offset:o}},s.getStackedBarYRange=function(t,e,i,o,n){if(t.length>0){t.sort(function(t,e){return t.x==e.x?t.groupId-e.groupId:t.x-e.x});var r={};s._getDataIntersections(r,t),e[o]=s._getStackedBarYRange(r,t),e[o].yAxisOrientation=n,i.push(o)}},s._getStackedBarYRange=function(t,e){for(var i,s=e[0].y,o=e[0].y,n=0;ne[n].y?e[n].y:s,o=ot[r].accumulated?t[r].accumulated:s,o=ot[s].y?t[s].y:e,i=is;s++){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){return t?o(t):void 0}function o(t){for(var e in s.prototype)t[e]=s.prototype[e];return t}t.exports=s,s.prototype.on=s.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},s.prototype.once=function(t,e){function i(){s.off(t,i),e.apply(this,arguments)}var s=this;return this._callbacks=this._callbacks||{},i.fn=e,this.on(t,i),this},s.prototype.off=s.prototype.removeListener=s.prototype.removeAllListeners=s.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var i=this._callbacks[t];if(!i)return this;if(1==arguments.length)return delete this._callbacks[t],this;for(var s,o=0;os;++s)i[s].apply(this,e)}return this},s.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},s.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e,i){var s,o,n;!function(i,r){o=[],s=r,n="function"==typeof s?s.apply(e,o):s,!(void 0!==n&&(t.exports=n))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,s=t&&t.container||window,o={},n={keydown:{},keyup:{}},r={};for(e=97;122>=e;e++)r[String.fromCharCode(e)]={code:65+(e-97),shift:!1};for(e=65;90>=e;e++)r[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;9>=e;e++)r[""+e]={code:48+e,shift:!1};for(e=1;12>=e;e++)r["F"+e]={code:111+e,shift:!1};for(e=0;9>=e;e++)r["num"+e]={code:96+e,shift:!1};r["num*"]={code:106,shift:!1},r["num+"]={code:107,shift:!1},r["num-"]={code:109,shift:!1},r["num/"]={code:111,shift:!1},r["num."]={code:110,shift:!1},r.left={code:37,shift:!1},r.up={code:38,shift:!1},r.right={code:39,shift:!1},r.down={code:40,shift:!1},r.space={code:32,shift:!1},r.enter={code:13,shift:!1},r.shift={code:16,shift:void 0},r.esc={code:27,shift:!1},r.backspace={code:8,shift:!1},r.tab={code:9,shift:!1},r.ctrl={code:17,shift:!1},r.alt={code:18,shift:!1},r["delete"]={code:46,shift:!1},r.pageup={code:33,shift:!1},r.pagedown={code:34,shift:!1},r["="]={code:187,shift:!1},r["-"]={code:189,shift:!1},r["]"]={code:221,shift:!1},r["["]={code:219,shift:!1};var a=function(t){d(t,"keydown")},h=function(t){d(t,"keyup")},d=function(t,e){if(void 0!==n[e][t.keyCode]){for(var s=n[e][t.keyCode],o=0;os;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,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 Hut Repulsion Hierarchical ',
+1==i&&t.preventDefault()}};return o.bind=function(t,e,i){if(void 0===i&&(i="keydown"),void 0===r[t])throw new Error("unsupported key: "+t);void 0===n[i][r[t].code]&&(n[i][r[t].code]=[]),n[i][r[t].code].push({fn:e,shift:r[t].shift})},o.bindAll=function(t,e){void 0===e&&(e="keydown");for(var i in r)r.hasOwnProperty(i)&&o.bind(i,t,e)},o.getKey=function(t){for(var e in r)if(r.hasOwnProperty(e)){if(1==t.shiftKey&&1==r[e].shift&&t.keyCode==r[e].code)return e;if(0==t.shiftKey&&0==r[e].shift&&t.keyCode==r[e].code)return e;if(t.keyCode==r[e].code&&"shift"==e)return e}return"unknown key, currently not supported"},o.unbind=function(t,e,i){if(void 0===i&&(i="keydown"),void 0===r[t])throw new Error("unsupported key: "+t);if(void 0!==e){var s=[],o=n[i][r[t].code];if(void 0!==o)for(var a=0;a0)for(i in Ei)s=Ei[i],o=e[s],"undefined"!=typeof o&&(t[s]=o);return t}function u(t){p(this,t),this._d=new Date(+t._d),ki===!1&&(ki=!0,e.updateOffset(this),ki=!1)}function m(t){return t instanceof u||null!=t&&a(t,"_isAMomentObject")}function f(t){var e=+t,i=0;return 0!==e&&isFinite(e)&&(i=e>=0?Math.floor(e):Math.ceil(e)),i}function g(t,e,i){var s,o=Math.min(t.length,e.length),n=Math.abs(t.length-e.length),r=0;for(s=0;o>s;s++)(i&&t[s]!==e[s]||!i&&f(t[s])!==f(e[s]))&&r++;return r+n}function v(){}function y(t){return t?t.toLowerCase().replace("_","-"):t}function b(t){for(var e,i,s,o,n=0;n0;){if(s=_(o.slice(0,e).join("-")))return s;if(i&&i.length>=e&&g(o,i,!0)>=e-1)break;e--}n++}return null}function _(e){var i=null;if(!Ni[e]&&"undefined"!=typeof t&&t&&t.exports)try{i=Oi._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),x(i)}catch(s){}return Ni[e]}function x(t,e){var i;return t&&(i="undefined"==typeof e?S(t):w(t,e),i&&(Oi=i)),Oi._abbr}function w(t,e){return null!==e?(e.abbr=t,Ni[t]||(Ni[t]=new v),Ni[t].set(e),x(t),Ni[t]):(delete Ni[t],null)}function S(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Oi;if(!o(t)){if(e=_(t))return e;t=[t]}return b(t)}function D(t,e){var i=t.toLowerCase();Ii[i]=Ii[i+"s"]=Ii[e]=t}function M(t){return"string"==typeof t?Ii[t]||Ii[t.toLowerCase()]:void 0}function C(t){var e,i,s={};for(i in t)a(t,i)&&(e=M(i),e&&(s[e]=t[i]));return s}function T(t,i){return function(s){return null!=s?(E(this,t,s),e.updateOffset(this,i),this):O(this,t)}}function O(t,e){return t._d["get"+(t._isUTC?"UTC":"")+e]()}function E(t,e,i){return t._d["set"+(t._isUTC?"UTC":"")+e](i)}function k(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=M(t),"function"==typeof this[t])return this[t](e);return this}function N(t,e,i){for(var s=""+Math.abs(t),o=t>=0;s.lengthe;e++)s[e]=Pi[s[e]]?Pi[s[e]]:L(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 A(t,e){return t.isValid()?(e=P(e,t.localeData()),Ai[e]||(Ai[e]=z(e)),Ai[e](t)):t.localeData().invalidDate()}function P(t,e){function i(t){return e.longDateFormat(t)||t}var s=5;for(zi.lastIndex=0;s>=0&&zi.test(t);)t=t.replace(zi,i),zi.lastIndex=0,s-=1;return t}function F(t,e,i){Ki[t]="function"==typeof e?e:function(t){return t&&i?i:e}}function R(t,e){return a(Ki,t)?Ki[t](e._strict,e._locale):new RegExp(H(t))}function H(t){return t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,s,o){return e||i||s||o}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function B(t,e){var i,s=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(s=function(t,i){i[e]=f(t)}),i=0;is;s++){if(o=d([2e3,s]),i&&!this._longMonthsParse[s]&&(this._longMonthsParse[s]=new RegExp("^"+this.months(o,"").replace(".","")+"$","i"),this._shortMonthsParse[s]=new RegExp("^"+this.monthsShort(o,"").replace(".","")+"$","i")),i||this._monthsParse[s]||(n="^"+this.months(o,"")+"|^"+this.monthsShort(o,""),this._monthsParse[s]=new RegExp(n.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[s].test(t))return s;if(i&&"MMM"===e&&this._shortMonthsParse[s].test(t))return s;if(!i&&this._monthsParse[s].test(t))return s}}function X(t,e){var i;return"string"==typeof e&&(e=t.localeData().monthsParse(e),"number"!=typeof e)?t:(i=Math.min(t.date(),G(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,i),t)}function q(t){return null!=t?(X(this,t),e.updateOffset(this,!0),this):O(this,"Month")}function Z(){return G(this.year(),this.month())}function Q(t){var e,i=t._a;return i&&-2===t._pf.overflow&&(e=i[ts]<0||i[ts]>11?ts:i[es]<1||i[es]>G(i[Ji],i[ts])?es:i[is]<0||i[is]>24||24===i[is]&&(0!==i[ss]||0!==i[os]||0!==i[ns])?is:i[ss]<0||i[ss]>59?ss:i[os]<0||i[os]>59?os:i[ns]<0||i[ns]>999?ns:-1,t._pf._overflowDayOfYear&&(Ji>e||e>es)&&(e=es),t._pf.overflow=e),t}function K(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function $(t,e){var i=!0;return h(function(){return i&&(K(t),i=!1),e.apply(this,arguments)},e)}function J(t,e){hs[t]||(K(e),hs[t]=!0)}function tt(t){var e,i,s=t._i,o=ds.exec(s);if(o){for(t._pf.iso=!0,e=0,i=ls.length;i>e;e++)if(ls[e][1].exec(s)){t._f=ls[e][0]+(o[6]||" ");break}for(e=0,i=cs.length;i>e;e++)if(cs[e][1].exec(s)){t._f+=cs[e][0];break}s.match(qi)&&(t._f+="Z"),bt(t)}else t._isValid=!1}function et(t){var i=ps.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(tt(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function it(t,e,i,s,o,n,r){var a=new Date(t,e,i,s,o,n,r);return 1970>t&&a.setFullYear(t),a}function st(t){var e=new Date(Date.UTC.apply(null,arguments));return 1970>t&&e.setUTCFullYear(t),e}function ot(t){return nt(t)?366:365}function nt(t){return t%4===0&&t%100!==0||t%400===0}function rt(){return nt(this.year())}function at(t,e,i){var s,o=i-e,n=i-t.day();return n>o&&(n-=7),o-7>n&&(n+=7),s=Ct(t).add(n,"d"),{week:Math.ceil(s.dayOfYear()/7),year:s.year()}}function ht(t){return at(t,this._week.dow,this._week.doy).week}function dt(){return this._week.dow}function lt(){return this._week.doy}function ct(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function pt(t){var e=at(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function ut(t,e,i,s,o){var n,r,a=st(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:ot(t-1)+r}}function mt(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")}function ft(t,e,i){return null!=t?t:null!=e?e:i}function gt(t){var e=new Date;return t._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()]}function vt(t){var e,i,s,o,n=[];if(!t._d){for(s=gt(t),t._w&&null==t._a[es]&&null==t._a[ts]&&yt(t),t._dayOfYear&&(o=ft(t._a[Ji],s[Ji]),t._dayOfYear>ot(o)&&(t._pf._overflowDayOfYear=!0),i=st(o,0,t._dayOfYear),t._a[ts]=i.getUTCMonth(),t._a[es]=i.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=n[e]=s[e];for(;7>e;e++)t._a[e]=n[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[is]&&0===t._a[ss]&&0===t._a[os]&&0===t._a[ns]&&(t._nextDay=!0,t._a[is]=0),t._d=(t._useUTC?st:it).apply(null,n),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[is]=24)}}function yt(t){var e,i,s,o,n,r,a;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(n=1,r=4,i=ft(e.GG,t._a[Ji],at(Ct(),1,4).year),s=ft(e.W,1),o=ft(e.E,1)):(n=t._locale._week.dow,r=t._locale._week.doy,i=ft(e.gg,t._a[Ji],at(Ct(),n,r).year),s=ft(e.w,1),null!=e.d?(o=e.d,n>o&&++s):o=null!=e.e?e.e+n:n),a=ut(i,s,o,r,n),t._a[Ji]=a.year,t._dayOfYear=a.dayOfYear}function bt(t){if(t._f===e.ISO_8601)return void tt(t);t._a=[],t._pf.empty=!0;var i,s,o,n,r,a=""+t._i,h=a.length,d=0;for(o=P(t._f,t._locale).match(Li)||[],i=0;i0&&t._pf.unusedInput.push(r),a=a.slice(a.indexOf(s)+s.length),d+=s.length),Pi[n]?(s?t._pf.empty=!1:t._pf.unusedTokens.push(n),W(n,s,t)):t._strict&&!s&&t._pf.unusedTokens.push(n);t._pf.charsLeftOver=h-d,a.length>0&&t._pf.unusedInput.push(a),t._pf.bigHour===!0&&t._a[is]<=12&&(t._pf.bigHour=void 0),t._a[is]=_t(t._locale,t._a[is],t._meridiem),vt(t),Q(t)}function _t(t,e,i){var s;return null==i?e:null!=t.meridiemHour?t.meridiemHour(e,i):null!=t.isPM?(s=t.isPM(i),s&&12>e&&(e+=12),s||12!==e||(e=0),e):e}function xt(t){var e,i,o,n,r;if(0===t._f.length)return t._pf.invalidFormat=!0,void(t._d=new Date(0/0));for(n=0;nr)&&(o=r,i=e));h(t,i||e)}function wt(t){if(!t._d){var e=C(t._i);t._a=[e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],vt(t)}}function St(t){var e,i=t._i,s=t._f;return t._locale=t._locale||S(t._l),null===i||void 0===s&&""===i?c({nullInput:!0}):("string"==typeof i&&(t._i=i=t._locale.preparse(i)),m(i)?new u(Q(i)):(o(s)?xt(t):s?bt(t):Dt(t),e=new u(Q(t)),e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e))}function Dt(t){var i=t._i;void 0===i?t._d=new Date:n(i)?t._d=new Date(+i):"string"==typeof i?et(t):o(i)?(t._a=r(i.slice(0),function(t){return parseInt(t,10)}),vt(t)):"object"==typeof i?wt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Mt(t,e,i,o,n){var r={};return"boolean"==typeof i&&(o=i,i=void 0),r._isAMomentObject=!0,r._useUTC=r._isUTC=n,r._l=i,r._i=t,r._f=e,r._strict=o,r._pf=s(),St(r)}function Ct(t,e,i,s){return Mt(t,e,i,s,!1)}function Tt(t,e){var i,s;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Ct();for(i=e[0],s=1;st&&(t=-t,i="-"),i+N(~~(t/60),2)+e+N(~~t%60,2)})}function Lt(t){var e=(t||"").match(qi)||[],i=e[e.length-1]||[],s=(i+"").match(vs)||["-",0,0],o=+(60*s[1])+f(s[2]);return"+"===s[0]?o:-o}function zt(t,i){var s,o;return i._isUTC?(s=i.clone(),o=(m(t)||n(t)?+t:+Ct(t))-+s,s._d.setTime(+s._d+o),e.updateOffset(s,!1),s):Ct(t).local()}function At(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Pt(t,i){var s,o=this._offset||0;return null!=t?("string"==typeof t&&(t=Lt(t)),Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(s=At(this)),this._offset=t,this._isUTC=!0,null!=s&&this.add(s,"m"),o!==t&&(!i||this._changeInProgress?$t(this,Xt(t-o,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?o:At(this)}function Ft(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Rt(t){return this.utcOffset(0,t)}function Ht(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(At(this),"m")),this}function Bt(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Lt(this._i)),this}function Yt(t){return t=t?Ct(t).utcOffset():0,(this.utcOffset()-t)%60===0}function Wt(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Gt(){if(this._a){var t=this._isUTC?d(this._a):Ct(this._a);return this.isValid()&&g(this._a,t.toArray())>0}return!1}function jt(){return!this._isUTC}function Vt(){return this._isUTC}function Ut(){return this._isUTC&&0===this._offset}function Xt(t,e){var i,s,o,n=t,r=null;return Nt(t)?n={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(n={},e?n[e]=t:n.milliseconds=t):(r=ys.exec(t))?(i="-"===r[1]?-1:1,n={y:0,d:f(r[es])*i,h:f(r[is])*i,m:f(r[ss])*i,s:f(r[os])*i,ms:f(r[ns])*i}):(r=bs.exec(t))?(i="-"===r[1]?-1:1,n={y:qt(r[2],i),M:qt(r[3],i),d:qt(r[4],i),h:qt(r[5],i),m:qt(r[6],i),s:qt(r[7],i),w:qt(r[8],i)}):null==n?n={}:"object"==typeof n&&("from"in n||"to"in n)&&(o=Qt(Ct(n.from),Ct(n.to)),n={},n.ms=o.milliseconds,n.M=o.months),s=new kt(n),Nt(t)&&a(t,"_locale")&&(s._locale=t._locale),s}function qt(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function Zt(t,e){var i={milliseconds:0,months:0};return i.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(i.months,"M").isAfter(e)&&--i.months,i.milliseconds=+e-+t.clone().add(i.months,"M"),i}function Qt(t,e){var i;return e=zt(e,t),t.isBefore(e)?i=Zt(t,e):(i=Zt(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i}function Kt(t,e){return function(i,s){var o,n;return null===s||isNaN(+s)||(J(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period)."),n=i,i=s,s=n),i="string"==typeof i?+i:i,o=Xt(i,s),$t(this,o,t),this}}function $t(t,i,s,o){var n=i._milliseconds,r=i._days,a=i._months;o=null==o?!0:o,n&&t._d.setTime(+t._d+n*s),r&&E(t,"Date",O(t,"Date")+r*s),a&&X(t,O(t,"Month")+a*s),o&&e.updateOffset(t,r||a)}function Jt(t){var e=t||Ct(),i=zt(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,Ct(e)))}function te(){return new u(this)}function ee(t,e){var i;return e=M("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Ct(t),+this>+t):(i=m(t)?+t:+Ct(t),i<+this.clone().startOf(e))}function ie(t,e){var i;return e=M("undefined"!=typeof e?e:"millisecond"),"millisecond"===e?(t=m(t)?t:Ct(t),+t>+this):(i=m(t)?+t:+Ct(t),+this.clone().endOf(e)t?Math.ceil(t):Math.floor(t)}function re(t,e,i){var s,o,n=zt(t,this),r=6e4*(n.utcOffset()-this.utcOffset());return e=M(e),"year"===e||"month"===e||"quarter"===e?(o=ae(this,n),"quarter"===e?o/=3:"year"===e&&(o/=12)):(s=this-n,o="second"===e?s/1e3:"minute"===e?s/6e4:"hour"===e?s/36e5:"day"===e?(s-r)/864e5:"week"===e?(s-r)/6048e5:s),i?o:ne(o)}function ae(t,e){var i,s,o=12*(e.year()-t.year())+(e.month()-t.month()),n=t.clone().add(o,"months");return 0>e-n?(i=t.clone().add(o-1,"months"),s=(e-n)/(n-i)):(i=t.clone().add(o+1,"months"),s=(e-n)/(i-n)),-(o+s)}function he(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function de(){var t=this.clone().utc();return 0e;e++)if(this._weekdaysParse[e]||(i=Ct([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}function Pe(t){var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Ne(t,this.localeData()),this.add(t-e,"d")):e}function Fe(t){var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function Re(t){return null==t?this.day()||7:this.day(this.day()%7?t:t-7)}function He(t,e){I(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function Be(t,e){return e._meridiemParse}function Ye(t){return"p"===(t+"").toLowerCase().charAt(0)}function We(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function Ge(t){I(0,[t,3],0,"millisecond")}function je(){return this._isUTC?"UTC":""}function Ve(){return this._isUTC?"Coordinated Universal Time":""}function Ue(t){return Ct(1e3*t)}function Xe(){return Ct.apply(null,arguments).parseZone()}function qe(t,e,i){var s=this._calendar[t];return"function"==typeof s?s.call(e,i):s}function Ze(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}function Qe(){return this._invalidDate}function Ke(t){return this._ordinal.replace("%d",t)}function $e(t){return t}function Je(t,e,i,s){var o=this._relativeTime[i];return"function"==typeof o?o(t,e,i,s):o.replace(/%d/i,t)}function ti(t,e){var i=this._relativeTime[t>0?"future":"past"];return"function"==typeof i?i(e):i.replace(/%s/i,e)}function ei(t){var e,i;for(i in t)e=t[i],"function"==typeof e?this[i]=e:this["_"+i]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function ii(t,e,i,s){var o=S(),n=d().set(s,e);return o[i](n,t)}function si(t,e,i,s,o){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return ii(t,e,i,o);var n,r=[];for(n=0;s>n;n++)r[n]=ii(t,n,i,o);return r}function oi(t,e){return si(t,e,"months",12,"month")}function ni(t,e){return si(t,e,"monthsShort",12,"month")}function ri(t,e){return si(t,e,"weekdays",7,"day")}function ai(t,e){return si(t,e,"weekdaysShort",7,"day")}function hi(t,e){return si(t,e,"weekdaysMin",7,"day")}function di(){var t=this._data;return this._milliseconds=Ys(this._milliseconds),this._days=Ys(this._days),this._months=Ys(this._months),t.milliseconds=Ys(t.milliseconds),t.seconds=Ys(t.seconds),t.minutes=Ys(t.minutes),t.hours=Ys(t.hours),t.months=Ys(t.months),t.years=Ys(t.years),this}function li(t,e,i,s){var o=Xt(e,i);return t._milliseconds+=s*o._milliseconds,t._days+=s*o._days,t._months+=s*o._months,t._bubble()}function ci(t,e){return li(this,t,e,1)}function pi(t,e){return li(this,t,e,-1)}function ui(){var t,e,i,s=this._milliseconds,o=this._days,n=this._months,r=this._data,a=0;return r.milliseconds=s%1e3,t=ne(s/1e3),r.seconds=t%60,e=ne(t/60),r.minutes=e%60,i=ne(e/60),r.hours=i%24,o+=ne(i/24),a=ne(mi(o)),o-=ne(fi(a)),n+=ne(o/30),o%=30,a+=ne(n/12),n%=12,r.days=o,r.months=n,r.years=a,this}function mi(t){return 400*t/146097}function fi(t){return 146097*t/400}function gi(t){var e,i,s=this._milliseconds;if(t=M(t),"month"===t||"year"===t)return e=this._days+s/864e5,i=this._months+12*mi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(fi(this._months/12)),t){case"week":return e/7+s/6048e5;case"day":return e+s/864e5;case"hour":return 24*e+s/36e5;case"minute":return 24*e*60+s/6e4;case"second":return 24*e*60*60+s/1e3;case"millisecond":return Math.floor(24*e*60*60*1e3)+s;default:throw new Error("Unknown unit "+t)}}function vi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*f(this._months/12)}function yi(t){return function(){return this.as(t)}}function bi(t){return t=M(t),this[t+"s"]()}function _i(t){return function(){return this._data[t]}}function xi(){return ne(this.days()/7)}function wi(t,e,i,s,o){return o.relativeTime(e||1,!!i,t,s)}function Si(t,e,i){var s=Xt(t).abs(),o=so(s.as("s")),n=so(s.as("m")),r=so(s.as("h")),a=so(s.as("d")),h=so(s.as("M")),d=so(s.as("y")),l=o0,l[4]=i,wi.apply(null,l)}function Di(t,e){return void 0===oo[t]?!1:void 0===e?oo[t]:(oo[t]=e,!0)}function Mi(t){var e=this.localeData(),i=Si(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ci(){var t=no(this.years()),e=no(this.months()),i=no(this.days()),s=no(this.hours()),o=no(this.minutes()),n=no(this.seconds()+this.milliseconds()/1e3),r=this.asSeconds();return r?(0>r?"-":"")+"P"+(t?t+"Y":"")+(e?e+"M":"")+(i?i+"D":"")+(s||o||n?"T":"")+(s?s+"H":"")+(o?o+"M":"")+(n?n+"S":""):"P0D"}var Ti,Oi,Ei=e.momentProperties=[],ki=!1,Ni={},Ii={},Li=/(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|x|X|zz?|ZZ?|.)/g,zi=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Ai={},Pi={},Fi=/\d/,Ri=/\d\d/,Hi=/\d{3}/,Bi=/\d{4}/,Yi=/[+-]?\d{6}/,Wi=/\d\d?/,Gi=/\d{1,3}/,ji=/\d{1,4}/,Vi=/[+-]?\d{1,6}/,Ui=/\d+/,Xi=/[+-]?\d+/,qi=/Z|[+-]\d\d:?\d\d/gi,Zi=/[+-]?\d+(\.\d{1,3})?/,Qi=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,Ki={},$i={},Ji=0,ts=1,es=2,is=3,ss=4,os=5,ns=6;I("M",["MM",2],"Mo",function(){return this.month()+1}),I("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),I("MMMM",0,0,function(t){return this.localeData().months(this,t)}),D("month","M"),F("M",Wi),F("MM",Wi,Ri),F("MMM",Qi),F("MMMM",Qi),B(["M","MM"],function(t,e){e[ts]=f(t)-1}),B(["MMM","MMMM"],function(t,e,i,s){var o=i._locale.monthsParse(t,s,i._strict);null!=o?e[ts]=o:i._pf.invalidMonth=t});var rs="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),as="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),hs={};e.suppressDeprecationWarnings=!1;var ds=/^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ls=[["YYYYYY-MM-DD",/[+-]\d{6}-\d{2}-\d{2}/],["YYYY-MM-DD",/\d{4}-\d{2}-\d{2}/],["GGGG-[W]WW-E",/\d{4}-W\d{2}-\d/],["GGGG-[W]WW",/\d{4}-W\d{2}/],["YYYY-DDD",/\d{4}-\d{3}/]],cs=[["HH:mm:ss.SSSS",/(T| )\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss",/(T| )\d\d:\d\d:\d\d/],["HH:mm",/(T| )\d\d:\d\d/],["HH",/(T| )\d\d/]],ps=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=$("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),I(0,["YY",2],0,function(){return this.year()%100}),I(0,["YYYY",4],0,"year"),I(0,["YYYYY",5],0,"year"),I(0,["YYYYYY",6,!0],0,"year"),D("year","y"),F("Y",Xi),F("YY",Wi,Ri),F("YYYY",ji,Bi),F("YYYYY",Vi,Yi),F("YYYYYY",Vi,Yi),B(["YYYY","YYYYY","YYYYYY"],Ji),B("YY",function(t,i){i[Ji]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(t){return f(t)+(f(t)>68?1900:2e3)};var us=T("FullYear",!1);I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),D("week","w"),D("isoWeek","W"),F("w",Wi),F("ww",Wi,Ri),F("W",Wi),F("WW",Wi,Ri),Y(["w","ww","W","WW"],function(t,e,i,s){e[s.substr(0,1)]=f(t)});var ms={dow:0,doy:6};I("DDD",["DDDD",3],"DDDo","dayOfYear"),D("dayOfYear","DDD"),F("DDD",Gi),F("DDDD",Hi),B(["DDD","DDDD"],function(t,e,i){i._dayOfYear=f(t)}),e.ISO_8601=function(){};var fs=$("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Ct.apply(null,arguments);return this>t?this:t}),gs=$("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Ct.apply(null,arguments);return t>this?this:t});It("Z",":"),It("ZZ",""),F("Z",qi),F("ZZ",qi),B(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=Lt(t)});var vs=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var ys=/(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,bs=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/,_s=Kt(1,"add"),xs=Kt(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var ws=$("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return void 0===t?this.localeData():this.locale(t)});I(0,["gg",2],0,function(){return this.weekYear()%100}),I(0,["GG",2],0,function(){return this.isoWeekYear()%100}),De("gggg","weekYear"),De("ggggg","weekYear"),De("GGGG","isoWeekYear"),De("GGGGG","isoWeekYear"),D("weekYear","gg"),D("isoWeekYear","GG"),F("G",Xi),F("g",Xi),F("GG",Wi,Ri),F("gg",Wi,Ri),F("GGGG",ji,Bi),F("gggg",ji,Bi),F("GGGGG",Vi,Yi),F("ggggg",Vi,Yi),Y(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,s){e[s.substr(0,2)]=f(t)}),Y(["gg","GG"],function(t,i,s,o){i[o]=e.parseTwoDigitYear(t)}),I("Q",0,0,"quarter"),D("quarter","Q"),F("Q",Fi),B("Q",function(t,e){e[ts]=3*(f(t)-1)}),I("D",["DD",2],"Do","date"),D("date","D"),F("D",Wi),F("DD",Wi,Ri),F("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),B(["D","DD"],es),B("Do",function(t,e){e[es]=f(t.match(Wi)[0],10)});var Ss=T("Date",!0);I("d",0,"do","day"),I("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),I("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),I("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),D("day","d"),D("weekday","e"),D("isoWeekday","E"),F("d",Wi),F("e",Wi),F("E",Wi),F("dd",Qi),F("ddd",Qi),F("dddd",Qi),Y(["dd","ddd","dddd"],function(t,e,i){var s=i._locale.weekdaysParse(t);null!=s?e.d=s:i._pf.invalidWeekday=t}),Y(["d","e","E"],function(t,e,i,s){e[s]=f(t)});var Ds="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Ms="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Cs="Su_Mo_Tu_We_Th_Fr_Sa".split("_");I("H",["HH",2],0,"hour"),I("h",["hh",2],0,function(){return this.hours()%12||12}),He("a",!0),He("A",!1),D("hour","h"),F("a",Be),F("A",Be),F("H",Wi),F("h",Wi),F("HH",Wi,Ri),F("hh",Wi,Ri),B(["H","HH"],is),B(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),B(["h","hh"],function(t,e,i){e[is]=f(t),i._pf.bigHour=!0});var Ts=/[ap]\.?m?\.?/i,Os=T("Hours",!0);I("m",["mm",2],0,"minute"),D("minute","m"),F("m",Wi),F("mm",Wi,Ri),B(["m","mm"],ss);var Es=T("Minutes",!1);I("s",["ss",2],0,"second"),D("second","s"),F("s",Wi),F("ss",Wi,Ri),B(["s","ss"],os);var ks=T("Seconds",!1);I("S",0,0,function(){return~~(this.millisecond()/100)}),I(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),Ge("SSS"),Ge("SSSS"),D("millisecond","ms"),F("S",Gi,Fi),F("SS",Gi,Ri),F("SSS",Gi,Hi),F("SSSS",Ui),B(["S","SS","SSS","SSSS"],function(t,e){e[ns]=f(1e3*("0."+t))});var Ns=T("Milliseconds",!1);I("z",0,0,"zoneAbbr"),I("zz",0,0,"zoneName");var Is=u.prototype;Is.add=_s,Is.calendar=Jt,Is.clone=te,Is.diff=re,Is.endOf=ge,Is.format=le,Is.from=ce,Is.fromNow=pe,Is.get=k,Is.invalidAt=Se,Is.isAfter=ee,Is.isBefore=ie,Is.isBetween=se,Is.isSame=oe,Is.isValid=xe,Is.lang=ws,Is.locale=ue,Is.localeData=me,Is.max=gs,Is.min=fs,Is.parsingFlags=we,Is.set=k,Is.startOf=fe,Is.subtract=xs,Is.toArray=_e,Is.toDate=be,Is.toISOString=de,Is.toJSON=de,Is.toString=he,Is.unix=ye,Is.valueOf=ve,Is.year=us,Is.isLeapYear=rt,Is.weekYear=Ce,Is.isoWeekYear=Te,Is.quarter=Is.quarters=ke,Is.month=q,Is.daysInMonth=Z,Is.week=Is.weeks=ct,Is.isoWeek=Is.isoWeeks=pt,Is.weeksInYear=Ee,Is.isoWeeksInYear=Oe,Is.date=Ss,Is.day=Is.days=Pe,Is.weekday=Fe,Is.isoWeekday=Re,Is.dayOfYear=mt,Is.hour=Is.hours=Os,Is.minute=Is.minutes=Es,Is.second=Is.seconds=ks,Is.millisecond=Is.milliseconds=Ns,Is.utcOffset=Pt,Is.utc=Rt,Is.local=Ht,Is.parseZone=Bt,Is.hasAlignedHourOffset=Yt,Is.isDST=Wt,Is.isDSTShifted=Gt,Is.isLocal=jt,Is.isUtcOffset=Vt,Is.isUtc=Ut,
+Is.isUTC=Ut,Is.zoneAbbr=je,Is.zoneName=Ve,Is.dates=$("dates accessor is deprecated. Use date instead.",Ss),Is.months=$("months accessor is deprecated. Use month instead",q),Is.years=$("years accessor is deprecated. Use year instead",us),Is.zone=$("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Ft);var Ls=Is,zs={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},As={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY LT",LLLL:"dddd, MMMM D, YYYY LT"},Ps="Invalid date",Fs="%d",Rs=/\d{1,2}/,Hs={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"},Bs=v.prototype;Bs._calendar=zs,Bs.calendar=qe,Bs._longDateFormat=As,Bs.longDateFormat=Ze,Bs._invalidDate=Ps,Bs.invalidDate=Qe,Bs._ordinal=Fs,Bs.ordinal=Ke,Bs._ordinalParse=Rs,Bs.preparse=$e,Bs.postformat=$e,Bs._relativeTime=Hs,Bs.relativeTime=Je,Bs.pastFuture=ti,Bs.set=ei,Bs.months=j,Bs._months=rs,Bs.monthsShort=V,Bs._monthsShort=as,Bs.monthsParse=U,Bs.week=ht,Bs._week=ms,Bs.firstDayOfYear=lt,Bs.firstDayOfWeek=dt,Bs.weekdays=Ie,Bs._weekdays=Ds,Bs.weekdaysMin=ze,Bs._weekdaysMin=Cs,Bs.weekdaysShort=Le,Bs._weekdaysShort=Ms,Bs.weekdaysParse=Ae,Bs.isPM=Ye,Bs._meridiemParse=Ts,Bs.meridiem=We,x("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===f(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+i}}),e.lang=$("moment.lang is deprecated. Use moment.locale instead.",x),e.langData=$("moment.langData is deprecated. Use moment.localeData instead.",S);var Ys=Math.abs,Ws=yi("ms"),Gs=yi("s"),js=yi("m"),Vs=yi("h"),Us=yi("d"),Xs=yi("w"),qs=yi("M"),Zs=yi("y"),Qs=_i("milliseconds"),Ks=_i("seconds"),$s=_i("minutes"),Js=_i("hours"),to=_i("days"),eo=_i("months"),io=_i("years"),so=Math.round,oo={s:45,m:45,h:22,d:26,M:11},no=Math.abs,ro=kt.prototype;ro.abs=di,ro.add=ci,ro.subtract=pi,ro.as=gi,ro.asMilliseconds=Ws,ro.asSeconds=Gs,ro.asMinutes=js,ro.asHours=Vs,ro.asDays=Us,ro.asWeeks=Xs,ro.asMonths=qs,ro.asYears=Zs,ro.valueOf=vi,ro._bubble=ui,ro.get=bi,ro.milliseconds=Qs,ro.seconds=Ks,ro.minutes=$s,ro.hours=Js,ro.days=to,ro.weeks=xi,ro.months=eo,ro.years=io,ro.humanize=Mi,ro.toISOString=Ci,ro.toString=Ci,ro.toJSON=Ci,ro.locale=ue,ro.localeData=me,ro.toIsoString=$("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ci),ro.lang=ws,I("X",0,0,"unix"),I("x",0,0,"valueOf"),F("x",Xi),F("X",Zi),B("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),B("x",function(t,e,i){i._d=new Date(f(t))}),e.version="2.10.0",i(Ct),e.fn=Ls,e.min=Ot,e.max=Et,e.utc=d,e.unix=Ue,e.months=oi,e.isDate=n,e.locale=x,e.invalid=c,e.duration=Xt,e.isMoment=m,e.weekdays=ri,e.parseZone=Xe,e.localeData=S,e.isDuration=Nt,e.monthsShort=ni,e.weekdaysMin=hi,e.defineLocale=w,e.weekdaysShort=ai,e.normalizeUnits=M,e.relativeTimeThreshold=Di;var ao=e;return ao})}).call(e,i(71)(t))},function(t,e,i){var s;!function(o,n){function r(){a.READY||(w.determineEventTypes(),x.each(a.gestures,function(t){D.register(t)}),w.onTouch(a.DOCUMENT,v,D.detect),w.onTouch(a.DOCUMENT,y,D.detect),a.READY=!0)}var a=function 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,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 Hut Repulsion Hierarchical ',
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 d;d=document.getElementById("graph_BH_gc"),d.onchange=a.bind(this,"graph_BH_gc",-1,"physics_barnesHut_gravitationalConstant"),d=document.getElementById("graph_BH_cg"),d.onchange=a.bind(this,"graph_BH_cg",1,"physics_centralGravity"),d=document.getElementById("graph_BH_sc"),d.onchange=a.bind(this,"graph_BH_sc",1,"physics_springConstant"),d=document.getElementById("graph_BH_sl"),d.onchange=a.bind(this,"graph_BH_sl",1,"physics_springLength"),d=document.getElementById("graph_BH_damp"),d.onchange=a.bind(this,"graph_BH_damp",1,"physics_damping"),d=document.getElementById("graph_R_nd"),d.onchange=a.bind(this,"graph_R_nd",1,"physics_repulsion_nodeDistance"),d=document.getElementById("graph_R_cg"),d.onchange=a.bind(this,"graph_R_cg",1,"physics_centralGravity"),d=document.getElementById("graph_R_sc"),d.onchange=a.bind(this,"graph_R_sc",1,"physics_springConstant"),d=document.getElementById("graph_R_sl"),d.onchange=a.bind(this,"graph_R_sl",1,"physics_springLength"),d=document.getElementById("graph_R_damp"),d.onchange=a.bind(this,"graph_R_damp",1,"physics_damping"),d=document.getElementById("graph_H_nd"),d.onchange=a.bind(this,"graph_H_nd",1,"physics_hierarchicalRepulsion_nodeDistance"),d=document.getElementById("graph_H_cg"),d.onchange=a.bind(this,"graph_H_cg",1,"physics_centralGravity"),d=document.getElementById("graph_H_sc"),d.onchange=a.bind(this,"graph_H_sc",1,"physics_springConstant"),d=document.getElementById("graph_H_sl"),d.onchange=a.bind(this,"graph_H_sl",1,"physics_springLength"),d=document.getElementById("graph_H_damp"),d.onchange=a.bind(this,"graph_H_damp",1,"physics_damping"),d=document.getElementById("graph_H_direction"),d.onchange=a.bind(this,"graph_H_direction",i,"hierarchicalLayout_direction"),d=document.getElementById("graph_H_levsep"),d.onchange=a.bind(this,"graph_H_levsep",1,"hierarchicalLayout_levelSeparation"),d=document.getElementById("graph_H_nspac"),d.onchange=a.bind(this,"graph_H_nspac",1,"hierarchicalLayout_nodeSpacing");var l=document.getElementById("graph_physicsMethod1"),c=document.getElementById("graph_physicsMethod2"),p=document.getElementById("graph_physicsMethod3");c.checked=!0,this.constants.physics.barnesHut.enabled&&(l.checked=!0),this.constants.hierarchicalLayout.enabled&&(p.checked=!0);var u=document.getElementById("graph_toggleSmooth"),m=document.getElementById("graph_repositionNodes"),f=document.getElementById("graph_generateOptions");u.onclick=s.bind(this),m.onclick=o.bind(this),f.onclick=n.bind(this),u.style.background=1==this.constants.smoothCurves&&0==this.constants.dynamicSmoothCurves?"#A4FF56":"#FF8532",r.apply(this),l.onchange=r.bind(this),c.onchange=r.bind(this),p.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,e,i){e.startWithClustering=function(){this.clusterToFit(this.constants.clustering.initialMaxNodes,!0),this.updateLabels(),1==this.constants.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(),this.forceAggregateHubs(!0),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._updateCalculationNodes(),this.updateLabels();this.moving!=e&&this.start()},e.updateClustersDefault=function(){1==this.constants.clustering.enabled&&1==this.constants.clustering.clusterByZoom&&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,r=this.previousScalethis.scale&&0==t;1==a&&this._collapseSector(),1==a||-1==t?this._formClusters(i):(1==r||1==t)&&(1==i?this._openClusters(e,i):this._openClusters(e,!1)),this._updateNodeIndexList(),this.nodeIndices.length!=n||1!=a&&-1!=t||(this._aggregateHubs(i),this._updateNodeIndexList()),(1==a||-1==t)&&(this.handleChains(),this._updateNodeIndexList()),this.previousScale=this.scale,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.updateLabels(),this._updateCalculationNodes(),this.nodeIndices.length!=i&&(this.clusterSession+=1),(0==t||void 0===t)&&this.moving!=e&&this.start()},e._openClustersBySize=function(){if(1==this.constants.clustering.clusterByZoom)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&&(void 0===s&&(s=!1),e=s||e,t.formationScalei)){var r=n.from,a=n.to;n.to.options.mass>n.from.options.mass&&(r=n.to,a=n.from),1==a.dynamicEdges.length?this._addToCluster(r,a,!1):1==r.dynamicEdges.length&&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.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.dynamicEdges.length>=this.hubThreshold&&0==i||t.dynamicEdges.length==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){var u=[],m={};for(c=0;l>c;c++){p=this.edges[d[c]];var f=this.nodes[p.fromId==t.id?p.toId:p.fromId];void 0===m[f.id]&&(m[f.id]=!0,u.push(f))}for(c=0;c1&&(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.dynamicEdges.length),t+=n.dynamicEdges.length,e+=Math.pow(n.dynamicEdges.length,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].dynamicEdges.length&&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].dynamicEdges.length&&(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),r=i(45);e._clearManipulatorBar=function(){this._recursiveDOMDelete(this.manipulationDiv),this.manipulationDOM={},this._cleanManipulatorHammers(),this._manipulationReleaseOverload=function(){},delete this.sectors.support.nodes.targetNode,delete this.sectors.support.nodes.targetViaNode,this.controlNodesActive=!1,this.freezeSimulation(!1)},e._cleanManipulatorHammers=function(){if(0!=this.manipulationHammers.length){for(var t=0;t1)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;var a=this;this._handleOnDrag=function(t){var e=this._getPointer(t.gesture.center),i=a.edges.connectionEdge;i.to.x=a._XconvertDOMtoCanvas(e.x),i.to.y=a._YconvertDOMtoCanvas(e.y),a._redraw()},this.moving=!0,this.start()}}},e._finishConnect=function(t){if(1==this._getSelectedNodeCount()){var e=this._getPointer(t.gesture.center);this._handleOnDrag=this.cachedFunctions._handleOnDrag,delete this.cachedFunctions._handleOnDrag;var i=this.edges.connectionEdge.fromId;delete this.edges.connectionEdge,delete this.sectors.support.nodes.targetNode,delete this.sectors.support.nodes.targetViaNode;var s=this._getNodeAt(e);null!=s&&(s.clusterSize>1?alert(this.constants.locales[this.constants.locale].createEdgeError):(this._createEdge(i,s.id),this._createManipulatorBar())),this._unselectAll()}},e._addNode=function(){if(this._selectionIsEmpty()&&1==this.editMode){var t=this._pointerToPositionObject(this.pointerPosition),e={id:s.randomUUID(),x:t.left,y:t.top,label:"new",allowedToMoveX:!0,allowedToMoveY:!0};if(this.triggerFunctions.add){if(2!=this.triggerFunctions.add.length)throw new Error("The function for add does not support two arguments (data,callback)");var i=this;this.triggerFunctions.add(e,function(t){i.nodesData.add(t),i._createManipulatorBar(),i.moving=!0,i.start()})}else this.nodesData.add(e),this._createManipulatorBar(),this.moving=!0,this.start()}},e._createEdge=function(t,e){if(1==this.editMode){var i={from:t,to:e};if(this.triggerFunctions.connect){if(2!=this.triggerFunctions.connect.length)throw new Error("The function for connect does not support two arguments (data,callback)");var s=this;this.triggerFunctions.connect(i,function(t){s.edgesData.add(t),s.moving=!0,s.start()})}else this.edgesData.add(i),this.moving=!0,this.start()}},e._editEdge=function(t,e){if(1==this.editMode){var i={id:this.edgeBeingEdited.id,from:t,to:e};if(this.triggerFunctions.editEdge){if(2!=this.triggerFunctions.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");var s=this;this.triggerFunctions.editEdge(i,function(t){s.edgesData.update(t),s.moving=!0,s.start()})}else this.edgesData.update(i),this.moving=!0,this.start()}},e._editNode=function(){if(!this.triggerFunctions.edit||1!=this.editMode)throw new Error("No edit function has been bound to this button");var t=this._getSelectedNode(),e={id:t.id,label:t.label,group:t.options.group,shape:t.options.shape,color:{background:t.options.color.background,border:t.options.color.border,highlight:{background:t.options.color.highlight.background,border:t.options.color.highlight.border}}};if(2!=this.triggerFunctions.edit.length)throw new Error("The function for edit does not support two arguments (data, callback)");var i=this;this.triggerFunctions.edit(e,function(t){i.nodesData.update(t),i._createManipulatorBar(),i.moving=!0,i.start()})},e._deleteSelected=function(){if(!this._selectionIsEmpty()&&1==this.editMode)if(this._clusterInSelection())alert(this.constants.locales[this.constants.locale].deleteClusterError);else{var t=this.getSelectedNodes(),e=this.getSelectedEdges();if(this.triggerFunctions.del){var i=this,s={nodes:t,edges:e};if(2!=this.triggerFunctions.del.length)throw new Error("The function for delete does not support two arguments (data, callback)");this.triggerFunctions.del(s,function(t){i.edgesData.remove(t.edges),i.nodesData.remove(t.nodes),i._unselectAll(),i.moving=!0,i.start()})}else this.edgesData.remove(e),this.nodesData.remove(t),this._unselectAll(),this.moving=!0,this.start()}}},function(t,e,i){var s=(i(1),i(45));e._cleanNavigation=function(){if(0!=this.navigationHammers.length){for(var t=0;t0){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,o,n=0;n1&&s.hierarchyEnumerated===!1&&this._setLevelDirected(s.level,s.edges,s.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(t){throw new Error("Cannot find module '"+t+"'.")}s.keys=function(){return[]},s.resolve=s,t.exports=s,s.id=67},function(t,e,i){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/=Math.max(i,.01*g),s=t*r,o=e*r,a.fx-=s,a.fy-=o,h.fx+=s,h.fy+=o)}}},function(t,e,i){e._calculateNodeForces=function(){var t,e,i,s,o,n,r,a,h,d,l=this.calculationNodes,c=this.calculationNodeIndices,p=this.constants.physics.hierarchicalRepulsion.nodeDistance;for(h=0;hi?-Math.pow(u*i,2)+Math.pow(u*p,2):0,0==i?i=.01:n/=i,s=t*n,o=e*n,r.fx-=s,r.fy-=o,a.fx+=s,a.fy+=o}},e._calculateHierarchicalSpringForces=function(){for(var t,e,i,s,o,n,r,a,h,d=this.edges,l=this.calculationNodes,c=this.calculationNodeIndices,p=0;pn;n++)t=e[i[n]],t.options.mass>0&&(this._getForceContribution(o.root.children.NW,t),this._getForceContribution(o.root.children.NE,t),this._getForceContribution(o.root.children.SW,t),this._getForceContribution(o.root.children.SE,t))}},e._getForceContribution=function(t,e){if(t.childrenCount>0){var i,s,o;if(i=t.centerOfMass.x-e.x,s=t.centerOfMass.y-e.y,o=Math.sqrt(i*i+s*s),o*t.calcSize>this.constants.physics.barnesHut.thetaInverted){0==o&&(o=.1*Math.random(),i=o);var n=this.constants.physics.barnesHut.gravitationalConstant*t.mass*e.options.mass/(o*o*o),r=i*n,a=s*n;e.fx+=r,e.fy+=a}else if(4==t.childrenCount)this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e);else if(t.children.data.id!=e.id){0==o&&(o=.5*Math.random(),i=o);var n=this.constants.physics.barnesHut.gravitationalConstant*t.mass*e.options.mass/(o*o*o),r=i*n,a=s*n;e.fx+=r,e.fy+=a}}},e._formBarnesHutTree=function(t,e){for(var i,s=e.length,o=Number.MAX_VALUE,n=Number.MAX_VALUE,r=-Number.MAX_VALUE,a=-Number.MAX_VALUE,h=0;s>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(o>d&&(o=d),d>r&&(r=d),n>l&&(n=l),l>a&&(a=l))}var c=Math.abs(r-o)-Math.abs(a-n);c>0?(n-=.5*c,a+=.5*c):(o+=.5*c,r-=.5*c);var p=1e-5,u=Math.max(p,Math.abs(r-o)),m=.5*u,f=.5*(o+r),g=.5*(n+a),v={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:f-m,maxX:f+m,minY:g-m,maxY:g+m},size:u,calcSize:1/u,children:{data:null},maxWidth:0,level:0,childrenCount:4}};for(this._splitBranch(v.root),h=0;s>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(v.root,i);this.barnesHutTree=v},e._updateBranchMass=function(t,e){var i=t.mass+e.options.mass,s=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=s,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=s,t.mass=i;var o=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")},e._placeInRegion=function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x==e.x&&t.children[i].children.data.y==e.y?(e.x+=Math.random(),e.y+=Math.random()):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e));break;case 4:this._placeInTree(t.children[i],e)}},e._splitBranch=function(t){var e=null;1==t.childrenCount&&(e=t.children.data,t.mass=0,t.centerOfMass.x=0,t.centerOfMass.y=0),t.childrenCount=4,t.children.data=null,this._insertRegion(t,"NW"),this._insertRegion(t,"NE"),this._insertRegion(t,"SW"),this._insertRegion(t,"SE"),null!=e&&this._placeInTree(t,e)},e._insertRegion=function(t,e){var i,s,o,n,r=.5*t.size;switch(e){case"NW":i=t.range.minX,s=t.range.minX+r,o=t.range.minY,n=t.range.minY+r;break;case"NE":i=t.range.minX+r,s=t.range.maxX,o=t.range.minY,n=t.range.minY+r;break;case"SW":i=t.range.minX,s=t.range.minX+r,o=t.range.minY+r,n=t.range.maxY;break;case"SE":i=t.range.minX+r,s=t.range.maxX,o=t.range.minY+r,n=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:s,minY:o,maxY:n},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}},e._drawTree=function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))},e._drawBranch=function(t,e,i){void 0===i&&(i="#FF0000"),4==t.childrenCount&&(this._drawBranch(t.children.NW,e),this._drawBranch(t.children.NE,e),this._drawBranch(t.children.SE,e),this._drawBranch(t.children.SW,e)),e.strokeStyle=i,e.beginPath(),e.moveTo(t.range.minX,t.range.minY),e.lineTo(t.range.maxX,t.range.minY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.minY),e.lineTo(t.range.maxX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.maxY),e.lineTo(t.range.minX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.minX,t.range.maxY),e.lineTo(t.range.minX,t.range.minY),e.stroke()}},function(t,e,i){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}}])});
+this.manipulationDiv.appendChild(this.manipulationDOM.deleteSpan)),this._bindHammerToDiv(this.manipulationDOM.addNodeSpan,"_createAddNodeToolbar"),this._bindHammerToDiv(this.manipulationDOM.addEdgeSpan,"_createAddEdgeToolbar"),this._bindHammerToDiv(this.closeDiv,"_toggleEditMode"),1==this._getSelectedNodeCount()&&this.triggerFunctions.edit?this._bindHammerToDiv(this.manipulationDOM.editNodeSpan,"_editNode"):1==this._getSelectedEdgeCount()&&0==this._getSelectedNodeCount()&&this._bindHammerToDiv(this.manipulationDOM.editEdgeSpan,"_createEditEdgeToolbar"),0==this._selectionIsEmpty()&&this._bindHammerToDiv(this.manipulationDOM.deleteSpan,"_deleteSelected");var e=this;this.boundFunction=e._createManipulatorBar,this.on("select",this.boundFunction)}else{for(;this.editModeDiv.hasChildNodes();)this.editModeDiv.removeChild(this.editModeDiv.firstChild);this.manipulationDOM.editModeSpan=document.createElement("div"),this.manipulationDOM.editModeSpan.className="network-manipulationUI edit editmode",this.manipulationDOM.editModeLabelSpan=document.createElement("div"),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._bindHammerToDiv(this.manipulationDOM.editModeSpan,"_toggleEditMode")}},e._bindHammerToDiv=function(t,e){var i=r(t,{prevent_default:!0});i.on("touch",this[e].bind(this)),this.manipulationHammers.push(i)},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("div"),this.manipulationDOM.backSpan.className="network-manipulationUI back",this.manipulationDOM.backLabelSpan=document.createElement("div"),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("div"),this.manipulationDOM.descriptionSpan.className="network-manipulationUI none",this.manipulationDOM.descriptionLabelSpan=document.createElement("div"),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._bindHammerToDiv(this.manipulationDOM.backSpan,"_createManipulatorBar");var e=this;this.boundFunction=e._addNode,this.on("select",this.boundFunction)},e._createAddEdgeToolbar=function(){this._clearManipulatorBar(),this._unselectAll(!0),this.freezeSimulation(!0),this.boundFunction&&this.off("select",this.boundFunction);var t=this.constants.locales[this.constants.locale];this._unselectAll(),this.forceAppendSelection=!1,this.blockConnectingEdgeSelection=!0,this.manipulationDOM={},this.manipulationDOM.backSpan=document.createElement("div"),this.manipulationDOM.backSpan.className="network-manipulationUI back",this.manipulationDOM.backLabelSpan=document.createElement("div"),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("div"),this.manipulationDOM.descriptionSpan.className="network-manipulationUI none",this.manipulationDOM.descriptionLabelSpan=document.createElement("div"),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._bindHammerToDiv(this.manipulationDOM.backSpan,"_createManipulatorBar");var e=this;this.boundFunction=e._handleConnect,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.cachedFunctions._handleOnHold=this._handleOnHold,this._handleTouch=this._handleConnect,this._manipulationReleaseOverload=function(){},this._handleOnHold=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("div"),this.manipulationDOM.backSpan.className="network-manipulationUI back",this.manipulationDOM.backLabelSpan=document.createElement("div"),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("div"),this.manipulationDOM.descriptionSpan.className="network-manipulationUI none",this.manipulationDOM.descriptionLabelSpan=document.createElement("div"),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._bindHammerToDiv(this.manipulationDOM.backSpan,"_createManipulatorBar"),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.edgeBeingEdited._restoreControlNodes(),this._editEdge(e.id,this.edgeBeingEdited.to.id),this.edgeBeingEdited.controlNodes.from.unselect()),1==this.edgeBeingEdited.controlNodes.to.selected&&(this.edgeBeingEdited._restoreControlNodes(),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;var a=this;this._handleOnDrag=function(t){var e=this._getPointer(t.gesture.center),i=a.edges.connectionEdge;i.to.x=a._XconvertDOMtoCanvas(e.x),i.to.y=a._YconvertDOMtoCanvas(e.y),a._redraw()},this.moving=!0,this.start()}}},e._finishConnect=function(t){if(1==this._getSelectedNodeCount()){var e=this._getPointer(t.gesture.center);this._handleOnDrag=this.cachedFunctions._handleOnDrag,delete this.cachedFunctions._handleOnDrag;var i=this.edges.connectionEdge.fromId;delete this.edges.connectionEdge,delete this.sectors.support.nodes.targetNode,delete this.sectors.support.nodes.targetViaNode;var s=this._getNodeAt(e);null!=s&&(s.clusterSize>1?alert(this.constants.locales[this.constants.locale].createEdgeError):(this._createEdge(i,s.id),this._createManipulatorBar())),this._unselectAll()}},e._addNode=function(){if(this._selectionIsEmpty()&&1==this.editMode){var t=this._pointerToPositionObject(this.pointerPosition),e={id:s.randomUUID(),x:t.left,y:t.top,label:"new",allowedToMoveX:!0,allowedToMoveY:!0};if(this.triggerFunctions.add){if(2!=this.triggerFunctions.add.length)throw new Error("The function for add does not support two arguments (data,callback)");var i=this;this.triggerFunctions.add(e,function(t){i.nodesData.add(t),i._createManipulatorBar(),i.moving=!0,i.start()})}else this.nodesData.add(e),this._createManipulatorBar(),this.moving=!0,this.start()}},e._createEdge=function(t,e){if(1==this.editMode){var i={from:t,to:e};if(this.triggerFunctions.connect){if(2!=this.triggerFunctions.connect.length)throw new Error("The function for connect does not support two arguments (data,callback)");var s=this;this.triggerFunctions.connect(i,function(t){s.edgesData.add(t),s.moving=!0,s.start()})}else this.edgesData.add(i),this.moving=!0,this.start()}},e._editEdge=function(t,e){if(1==this.editMode){var i={id:this.edgeBeingEdited.id,from:t,to:e};if(this.triggerFunctions.editEdge){if(2!=this.triggerFunctions.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");var s=this;this.triggerFunctions.editEdge(i,function(t){s.edgesData.update(t),s.moving=!0,s.start()})}else this.edgesData.update(i),this.moving=!0,this.start()}},e._editNode=function(){if(!this.triggerFunctions.edit||1!=this.editMode)throw new Error("No edit function has been bound to this button");var t=this._getSelectedNode(),e={id:t.id,label:t.label,group:t.options.group,shape:t.options.shape,color:{background:t.options.color.background,border:t.options.color.border,highlight:{background:t.options.color.highlight.background,border:t.options.color.highlight.border}}};if(2!=this.triggerFunctions.edit.length)throw new Error("The function for edit does not support two arguments (data, callback)");var i=this;this.triggerFunctions.edit(e,function(t){i.nodesData.update(t),i._createManipulatorBar(),i.moving=!0,i.start()})},e._deleteSelected=function(){if(!this._selectionIsEmpty()&&1==this.editMode)if(this._clusterInSelection())alert(this.constants.locales[this.constants.locale].deleteClusterError);else{var t=this.getSelectedNodes(),e=this.getSelectedEdges();if(this.triggerFunctions.del){var i=this,s={nodes:t,edges:e};if(2!=this.triggerFunctions.del.length)throw new Error("The function for delete does not support two arguments (data, callback)");this.triggerFunctions.del(s,function(t){i.edgesData.remove(t.edges),i.nodesData.remove(t.nodes),i._unselectAll(),i.moving=!0,i.start()})}else this.edgesData.remove(e),this.nodesData.remove(t),this._unselectAll(),this.moving=!0,this.start()}}},function(t,e,i){var s=(i(1),i(45));e._cleanNavigation=function(){if(0!=this.navigationHammers.length){for(var t=0;t0){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,o,n=0;n1&&s.hierarchyEnumerated===!1&&this._setLevelDirected(s.level,s.edges,s.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){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/=Math.max(i,.01*g),s=t*r,o=e*r,a.fx-=s,a.fy-=o,h.fx+=s,h.fy+=o)}}},function(t,e,i){e._calculateNodeForces=function(){var t,e,i,s,o,n,r,a,h,d,l=this.calculationNodes,c=this.calculationNodeIndices,p=this.constants.physics.hierarchicalRepulsion.nodeDistance;for(h=0;hi?-Math.pow(u*i,2)+Math.pow(u*p,2):0,0==i?i=.01:n/=i,s=t*n,o=e*n,r.fx-=s,r.fy-=o,a.fx+=s,a.fy+=o}},e._calculateHierarchicalSpringForces=function(){for(var t,e,i,s,o,n,r,a,h,d=this.edges,l=this.calculationNodes,c=this.calculationNodeIndices,p=0;pn;n++)t=e[i[n]],t.options.mass>0&&(this._getForceContribution(o.root.children.NW,t),this._getForceContribution(o.root.children.NE,t),this._getForceContribution(o.root.children.SW,t),this._getForceContribution(o.root.children.SE,t))}},e._getForceContribution=function(t,e){if(t.childrenCount>0){var i,s,o;if(i=t.centerOfMass.x-e.x,s=t.centerOfMass.y-e.y,o=Math.sqrt(i*i+s*s),o*t.calcSize>this.constants.physics.barnesHut.thetaInverted){0==o&&(o=.1*Math.random(),i=o);var n=this.constants.physics.barnesHut.gravitationalConstant*t.mass*e.options.mass/(o*o*o),r=i*n,a=s*n;e.fx+=r,e.fy+=a}else if(4==t.childrenCount)this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e);else if(t.children.data.id!=e.id){0==o&&(o=.5*Math.random(),i=o);var n=this.constants.physics.barnesHut.gravitationalConstant*t.mass*e.options.mass/(o*o*o),r=i*n,a=s*n;e.fx+=r,e.fy+=a}}},e._formBarnesHutTree=function(t,e){for(var i,s=e.length,o=Number.MAX_VALUE,n=Number.MAX_VALUE,r=-Number.MAX_VALUE,a=-Number.MAX_VALUE,h=0;s>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(o>d&&(o=d),d>r&&(r=d),n>l&&(n=l),l>a&&(a=l))}var c=Math.abs(r-o)-Math.abs(a-n);c>0?(n-=.5*c,a+=.5*c):(o+=.5*c,r-=.5*c);var p=1e-5,u=Math.max(p,Math.abs(r-o)),m=.5*u,f=.5*(o+r),g=.5*(n+a),v={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:f-m,maxX:f+m,minY:g-m,maxY:g+m},size:u,calcSize:1/u,children:{data:null},maxWidth:0,level:0,childrenCount:4}};for(this._splitBranch(v.root),h=0;s>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(v.root,i);this.barnesHutTree=v},e._updateBranchMass=function(t,e){var i=t.mass+e.options.mass,s=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=s,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=s,t.mass=i;var o=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")},e._placeInRegion=function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x==e.x&&t.children[i].children.data.y==e.y?(e.x+=Math.random(),e.y+=Math.random()):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e));break;case 4:this._placeInTree(t.children[i],e)}},e._splitBranch=function(t){var e=null;1==t.childrenCount&&(e=t.children.data,t.mass=0,t.centerOfMass.x=0,t.centerOfMass.y=0),t.childrenCount=4,t.children.data=null,this._insertRegion(t,"NW"),this._insertRegion(t,"NE"),this._insertRegion(t,"SW"),this._insertRegion(t,"SE"),null!=e&&this._placeInTree(t,e)},e._insertRegion=function(t,e){var i,s,o,n,r=.5*t.size;switch(e){case"NW":i=t.range.minX,s=t.range.minX+r,o=t.range.minY,n=t.range.minY+r;break;case"NE":i=t.range.minX+r,s=t.range.maxX,o=t.range.minY,n=t.range.minY+r;break;case"SW":i=t.range.minX,s=t.range.minX+r,o=t.range.minY+r,n=t.range.maxY;break;case"SE":i=t.range.minX+r,s=t.range.maxX,o=t.range.minY+r,n=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:s,minY:o,maxY:n},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}},e._drawTree=function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))},e._drawBranch=function(t,e,i){void 0===i&&(i="#FF0000"),4==t.childrenCount&&(this._drawBranch(t.children.NW,e),this._drawBranch(t.children.NE,e),this._drawBranch(t.children.SE,e),this._drawBranch(t.children.SW,e)),e.strokeStyle=i,e.beginPath(),e.moveTo(t.range.minX,t.range.minY),e.lineTo(t.range.maxX,t.range.minY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.minY),e.lineTo(t.range.maxX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.maxY),e.lineTo(t.range.minX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.minX,t.range.maxY),e.lineTo(t.range.minX,t.range.minY),e.stroke()}},function(t,e,i){function s(t){throw new Error("Cannot find module '"+t+"'.")}s.keys=function(){return[]},s.resolve=s,t.exports=s,s.id=70},function(t,e,i){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}}])});
//# sourceMappingURL=vis.map
diff --git a/examples/graph2d/13_localization.html b/examples/graph2d/13_localization.html
index d9a0cf53..3475378d 100644
--- a/examples/graph2d/13_localization.html
+++ b/examples/graph2d/13_localization.html
@@ -28,6 +28,7 @@
en
nl
+ cs
diff --git a/examples/timeline/19_localization.html b/examples/timeline/19_localization.html
index e2624abd..2e48299c 100644
--- a/examples/timeline/19_localization.html
+++ b/examples/timeline/19_localization.html
@@ -24,6 +24,7 @@
en
nl
+ cs
diff --git a/lib/timeline/component/CurrentTime.js b/lib/timeline/component/CurrentTime.js
index 2cbb4f70..13150e21 100644
--- a/lib/timeline/component/CurrentTime.js
+++ b/lib/timeline/component/CurrentTime.js
@@ -88,6 +88,13 @@ CurrentTime.prototype.redraw = function() {
var x = this.body.util.toScreen(now);
var locale = this.options.locales[this.options.locale];
+ if (!locale) {
+ if (!this.warned) {
+ console.log('WARNING: locale "' + this.options.locale + '" not found in vis.js');
+ this.warned = true;
+ }
+ locale = this.options.locales['en']; // fall back on english when not available
+ }
var title = locale.current + ' ' + locale.time + ': ' + moment(now).format('dddd, MMMM Do YYYY, H:mm:ss');
title = title.charAt(0).toUpperCase() + title.substring(1);
diff --git a/lib/timeline/component/CustomTime.js b/lib/timeline/component/CustomTime.js
index eea21450..842e14c8 100644
--- a/lib/timeline/component/CustomTime.js
+++ b/lib/timeline/component/CustomTime.js
@@ -118,6 +118,13 @@ CustomTime.prototype.redraw = function () {
var x = this.body.util.toScreen(this.customTime);
var locale = this.options.locales[this.options.locale];
+ if (!locale) {
+ if (!this.warned) {
+ console.log('WARNING: locale "' + this.options.locale + '" not found in vis.js');
+ this.warned = true;
+ }
+ locale = this.options.locales['en']; // fall back on english when not available
+ }
var title = locale.time + ': ' + moment(this.customTime).format('dddd, MMMM Do YYYY, H:mm:ss');
title = title.charAt(0).toUpperCase() + title.substring(1);
diff --git a/misc/how_to_publish.md b/misc/how_to_publish.md
index 62dced77..676556ae 100644
--- a/misc/how_to_publish.md
+++ b/misc/how_to_publish.md
@@ -56,7 +56,7 @@ This generates the vis.js library in the folder `./dist`.
Verify if it installs the just released version, and verify if it works.
- - Verify within an hour whether vis.js is updated on http://cdnjs.com/
+ - Verify within a day or so whether vis.js is updated on http://cdnjs.com/
## Update website
diff --git a/package.json b/package.json
index 1fa62784..2d5f2954 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "vis",
- "version": "3.12.0",
+ "version": "3.12.1-SNAPSHOT",
"description": "A dynamic, browser-based visualization library.",
"homepage": "http://visjs.org/",
"repository": {